From 332453706aa89ac452055cffda332b1408c80e9a Mon Sep 17 00:00:00 2001 From: Max Linke Date: Thu, 30 Jun 2016 21:45:36 +0200 Subject: [PATCH 001/107] first dcd stumb cython file --- .../MDAnalysis/lib/formats/include/correl.h | 188 +++++ .../lib/formats/include/endianswap.h | 173 ++++ .../MDAnalysis/lib/formats/include/fastio.h | 454 +++++++++++ .../MDAnalysis/lib/formats/include/readdcd.h | 764 ++++++++++++++++++ package/MDAnalysis/lib/formats/libdcd.pyx | 59 ++ 5 files changed, 1638 insertions(+) create mode 100644 package/MDAnalysis/lib/formats/include/correl.h create mode 100644 package/MDAnalysis/lib/formats/include/endianswap.h create mode 100644 package/MDAnalysis/lib/formats/include/fastio.h create mode 100644 package/MDAnalysis/lib/formats/include/readdcd.h create mode 100644 package/MDAnalysis/lib/formats/libdcd.pyx diff --git a/package/MDAnalysis/lib/formats/include/correl.h b/package/MDAnalysis/lib/formats/include/correl.h new file mode 100644 index 00000000000..f3dacb042e7 --- /dev/null +++ b/package/MDAnalysis/lib/formats/include/correl.h @@ -0,0 +1,188 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode:nil; -*- */ +/* vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4 */ +/* + MDAnalysis --- http://mdanalysis.googlecode.com + Copyright (c) 2006-2014 Naveen Michaud-Agrawal, + Elizabeth J. Denning, Oliver Beckstein, + and contributors (see AUTHORS for the full list) + Released under the GNU Public Licence, v2 or any higher version + + Please cite your use of MDAnalysis in published work: + + N. Michaud-Agrawal, E. J. Denning, T. B. Woolf, and + O. Beckstein. MDAnalysis: A Toolkit for the Analysis of + Molecular Dynamics Simulations. J. Comput. Chem. 32 (2011), 2319--2327, + in press. +*/ + +#ifndef CORREL_H +#define CORREL_H + +#include +/* Python.h for 'typedef int Py_intptr_t;' (fixes Issue 19) */ +#include + +static void +copyseries(int frame, char *data, const Py_intptr_t *strides, + const float *tempX, const float *tempY, const float *tempZ, + const char* datacode, int numdata, const int* atomlist, const int* atomcounts, + int lowerb, double* aux) +{ + char code; + int index1 = 0, index2 = 0, index3 = 0, index4 = 0; + double x1, x2, y1, y2, z1, z2, x3, y3, z3, aux1, aux2; + int i = 0, j = 0, atomno = 0; + int dataset = 0; + int stride0, stride1; + + stride0 = strides[0]; + stride1 = strides[1]; + + /* If I eventually switch to using frame,property ordering for timeseries data + stride0 = strides[1]; + stride1 = strides[0]; + */ + + for (i=0;i 0) || (aux2 > 0 && aux1 < 0)) { + aux1 *= -1; + } + // Check if the dihedral has wrapped around 2 pi + aux2 = *(double*)(data + dataset*stride0 + (frame-1)*stride1); + if (fabs(aux1-aux2) > M_PI) { + if (aux1 > 0) { aux1 -= 2*M_PI; } + else { aux1 += 2*M_PI; } + } + *(double*)(data + dataset++*stride0 + frame*stride1) = aux1; + break; + case 'w': + /* dipole orientation of 3-site water: ^ d + index1 = oxygen, index2, index3 = hydrogen | + returns d ,O, + d = rO - (rH1 + rH2)/2 H | H + | + */ + index1 = atomlist[atomno++]-lowerb; // O + index2 = atomlist[atomno++]-lowerb; // H1 + index3 = atomlist[atomno++]-lowerb; // H2 + x1 = tempX[index1] - 0.5*(tempX[index2] + tempX[index3]); // dx + y1 = tempY[index1] - 0.5*(tempY[index2] + tempY[index3]); // dy + z1 = tempZ[index1] - 0.5*(tempZ[index2] + tempZ[index3]); // dz + *(double*)(data + dataset++*stride0 + frame*stride1) = x1; + *(double*)(data + dataset++*stride0 + frame*stride1) = y1; + *(double*)(data + dataset++*stride0 + frame*stride1) = z1; + break; + } + } +} + +// This accounts for periodic boundary conditions +// taken from MMTK +#define distance_vector_2(d, r1, r2, data) \ + { \ + double xh = 0.5*(data)[0]; \ + double yh = 0.5*(data)[1]; \ + double zh = 0.5*(data)[2]; \ + d[0] = r2[0]-r1[0]; \ + if (d[0] > xh) d[0] -= (data)[0]; \ + if (d[0] <= -xh) d[0] += (data)[0]; \ + d[1] = r2[1]-r1[1]; \ + if (d[1] > yh) d[1] -= (data)[1]; \ + if (d[1] <= -yh) d[1] += (data)[1]; \ + d[2] = r2[2]-r1[2]; \ + if (d[2] > zh) d[2] -= (data)[2]; \ + if (d[2] <= -zh) d[2] += (data)[2]; \ + } + +#endif diff --git a/package/MDAnalysis/lib/formats/include/endianswap.h b/package/MDAnalysis/lib/formats/include/endianswap.h new file mode 100644 index 00000000000..6f1ced37483 --- /dev/null +++ b/package/MDAnalysis/lib/formats/include/endianswap.h @@ -0,0 +1,173 @@ +/*************************************************************************** + *cr + *cr (C) Copyright 1995-2003 The Board of Trustees of the + *cr University of Illinois + *cr All Rights Reserved + *cr + ***************************************************************************/ +/*************************************************************************** + * RCS INFORMATION: + * + * $RCSfile: endianswap.h,v $ + * $Author: eamon $ $Locker: $ $State: Exp $ + * $Revision: 1.3 $ $Date: 2004/04/16 15:37:00 $ + * + *************************************************************************** + * DESCRIPTION: + * Byte swapping routines used in various plugins + * There are two versions of each routine, one that's safe to use in + * all cases (but is slow) and one that is only safe to use on memory + * addresses that are aligned to the word size that's being byte-swapped + * but are much much much faster. Use the aligned versions of these + * routines whenever possible. The 'ndata' length count parameters and + * internal loops should be safe to use on huge memory arrays on 64-bit + * machines. + * + ***************************************************************************/ + +#ifndef ENDIAN_SWAP_H +#define ENDIAN_SWAP_H + +/* works on unaligned 2-byte quantities */ +static void swap2_unaligned(void *v, long ndata) { + long i; + char * dataptr = (char *) v; + char tmp; + + for (i = 0; i < ndata-1; i += 2) { + tmp = dataptr[i]; + dataptr[i] = dataptr[i+1]; + dataptr[i+1] = tmp; + } +} + + +/* works on unaligned 4-byte quantities */ +static void swap4_unaligned(void *v, long ndata) { + long i; + char *dataptr; + char tmp; + + dataptr = (char *) v; + for (i=0; i>8)&0xff) | ((*N&0xff)<<8)); + } +} + + +/* Only works with aligned 4-byte quantities, will cause a bus error */ +/* on some platforms if used on unaligned data. */ +static void swap4_aligned(void *v, long ndata) { + int *data = (int *) v; + long i; + int *N; + for (i=0; i>24)&0xff) | ((*N&0xff)<<24) | + ((*N>>8)&0xff00) | ((*N&0xff00)<<8)); + } +} + + +/* Only works with aligned 8-byte quantities, will cause a bus error */ +/* on some platforms if used on unaligned data. */ +static void swap8_aligned(void *v, long ndata) { + /* Use int* internally to prevent bugs caused by some compilers */ + /* and hardware that would potentially load data into an FP reg */ + /* and hose everything, such as the old "jmemcpy()" bug in NAMD */ + int *data = (int *) v; + long i; + int *N; + int t0, t1; + + for (i=0; i>24)&0xff) | ((t0&0xff)<<24) | + ((t0>>8)&0xff00) | ((t0&0xff00)<<8)); + + t1 = N[1]; + t1=(((t1>>24)&0xff) | ((t1&0xff)<<24) | + ((t1>>8)&0xff00) | ((t1&0xff00)<<8)); + + N[0] = t1; + N[1] = t0; + } +} + +#if 0 +/* Other implementations that might be faster in some cases */ + +/* swaps the endianism of an eight byte word. */ +void mdio_swap8(double *i) { + char c; + char *n; + n = (char *) i; + c = n[0]; + n[0] = n[7]; + n[7] = c; + c = n[1]; + n[1] = n[6]; + n[6] = c; + c = n[2]; + n[2] = n[5]; + n[5] = c; + c = n[3]; + n[3] = n[4]; + n[4] = c; +} + +#endif + +#endif + diff --git a/package/MDAnalysis/lib/formats/include/fastio.h b/package/MDAnalysis/lib/formats/include/fastio.h new file mode 100644 index 00000000000..998b5ebd5fb --- /dev/null +++ b/package/MDAnalysis/lib/formats/include/fastio.h @@ -0,0 +1,454 @@ +/*************************************************************************** + *cr + *cr (C) Copyright 1995-2009 The Board of Trustees of the + *cr University of Illinois + *cr All Rights Reserved + *cr + ***************************************************************************/ +/*************************************************************************** + * RCS INFORMATION: + * + * $RCSfile: fastio.h,v $ + * $Author: johns $ $Locker: $ $State: Exp $ + * $Revision: 1.20 $ $Date: 2009/04/29 15:45:29 $ + * + *************************************************************************** + * DESCRIPTION: + * This is a simple abstraction layer for system-dependent I/O calls + * that allow plugins to do binary I/O using the fastest possible method. + * + * This code is intended for use by binary trajectory reader plugins that + * work with multi-gigabyte data sets, reading only binary data. + * + ***************************************************************************/ + +/* Compiling on windows */ +#if defined(_MSC_VER) + +#if 1 +/* use native Windows I/O calls */ +#define FASTIO_NATIVEWIN32 1 + +#include +#include + +typedef HANDLE fio_fd; +typedef LONGLONG fio_size_t; +typedef void * fio_caddr_t; + +typedef struct { + fio_caddr_t iov_base; + int iov_len; +} fio_iovec; + +#define FIO_READ 0x01 +#define FIO_WRITE 0x02 + +#define FIO_SEEK_CUR FILE_CURRENT +#define FIO_SEEK_SET FILE_BEGIN +#define FIO_SEEK_END FILE_END + +static int fio_win32convertfilename(const char *filename, char *newfilename, int maxlen) { + int i; + int len=strlen(filename); + + if ((len + 1) >= maxlen) + return -1; + + for (i=0; i + +typedef FILE * fio_fd; +typedef size_t fio_size_t; /* MSVC doesn't uinversally support ssize_t */ +typedef void * fio_caddr_t; /* MSVC doesn't universally support caddr_t */ + +typedef struct { + fio_caddr_t iov_base; + int iov_len; +} fio_iovec; + +#define FIO_READ 0x01 +#define FIO_WRITE 0x02 + +#define FIO_SEEK_CUR SEEK_CUR +#define FIO_SEEK_SET SEEK_SET +#define FIO_SEEK_END SEEK_END + +static int fio_open(const char *filename, int mode, fio_fd *fd) { + char * modestr; + FILE *fp; + + if (mode == FIO_READ) + modestr = "rb"; + + if (mode == FIO_WRITE) + modestr = "wb"; + + fp = fopen(filename, modestr); + if (fp == NULL) { + return -1; + } else { + *fd = fp; + return 0; + } +} + +static int fio_fclose(fio_fd fd) { + return fclose(fd); +} + +static fio_size_t fio_fread(void *ptr, fio_size_t size, + fio_size_t nitems, fio_fd fd) { + return fread(ptr, size, nitems, fd); +} + +static fio_size_t fio_readv(fio_fd fd, const fio_iovec * iov, int iovcnt) { + int i; + fio_size_t len = 0; + + for (i=0; i +#include +#include +#include + +typedef int fio_fd; +typedef off_t fio_size_t; /* off_t is 64-bits with LFS builds */ + +/* enable use of kernel readv() if available */ +#if defined(__sun) || defined(__APPLE_CC__) || defined(__linux) +#define USE_KERNEL_READV 1 +#endif + +typedef void * fio_caddr_t; + +#if defined(USE_KERNEL_READV) +#include +typedef struct iovec fio_iovec; +#else + +typedef struct { + fio_caddr_t iov_base; + int iov_len; +} fio_iovec; +#endif + + +#define FIO_READ 0x01 +#define FIO_WRITE 0x02 + +#define FIO_SEEK_CUR SEEK_CUR +#define FIO_SEEK_SET SEEK_SET +#define FIO_SEEK_END SEEK_END + +static int fio_open(const char *filename, int mode, fio_fd *fd) { + int nfd; + int oflag = 0; + + if (mode == FIO_READ) + oflag = O_RDONLY; + + if (mode == FIO_WRITE) + oflag = O_WRONLY | O_CREAT | O_TRUNC; + + nfd = open(filename, oflag, 0666); + if (nfd < 0) { + return -1; + } else { + *fd = nfd; + return 0; + } +} + +static int fio_fclose(fio_fd fd) { + return close(fd); +} + +static fio_size_t fio_fread(void *ptr, fio_size_t size, + fio_size_t nitems, fio_fd fd) { + int i; + fio_size_t len = 0; + int cnt = 0; + + for (i=0; i= 0) + return 0; /* success (emulate behavior of fseek) */ + else + return -1; /* failure (emulate behavior of fseek) */ +} + +static fio_size_t fio_ftell(fio_fd fd) { + return lseek(fd, 0, SEEK_CUR); +} + +#endif + + +/* higher level routines that are OS independent */ + +static int fio_write_int32(fio_fd fd, int i) { + return (fio_fwrite(&i, 4, 1, fd) != 1); +} + +static int fio_read_int32(fio_fd fd, int *i) { + return (fio_fread(i, 4, 1, fd) != 1); +} + +static int fio_write_str(fio_fd fd, const char *str) { + int len = strlen(str); + return (fio_fwrite((void *) str, len, 1, fd) != 1); +} + diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h new file mode 100644 index 00000000000..c9d0f9999c9 --- /dev/null +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -0,0 +1,764 @@ +/*************************************************************************** + *cr + *cr (C) Copyright 1995-2003 The Board of Trustees of the + *cr University of Illinois + *cr All Rights Reserved + *cr + ***************************************************************************/ + +/*************************************************************************** + * RCS INFORMATION: + * + * $RCSfile: readdcd.h,v $ + * $Author: johns $ $Locker: $ $State: Exp $ + * $Revision: 1.32 $ $Date: 2004/09/21 20:52:37 $ + * + ***************************************************************************/ + +#ifndef READ_DCD_H +#define READ_DCD_H + +#include +#include +#include +#include +#include "endianswap.h" +#include "fastio.h" + +/* DEFINE ERROR CODES THAT MAY BE RETURNED BY DCD ROUTINES */ +#define DCD_SUCCESS 0 /* No problems */ +#define DCD_EOF -1 /* Normal EOF */ +#define DCD_DNE -2 /* DCD file does not exist */ +#define DCD_OPENFAILED -3 /* Open of DCD file failed */ +#define DCD_BADREAD -4 /* read call on DCD file failed */ +#define DCD_BADEOF -5 /* premature EOF found in DCD file */ +#define DCD_BADFORMAT -6 /* format of DCD file is wrong */ +#define DCD_FILEEXISTS -7 /* output file already exists */ +#define DCD_BADMALLOC -8 /* malloc failed */ + +/* + * Read the header information from a dcd file. + * Input: fd - a file struct opened for binary reading. + * Output: 0 on success, negative error code on failure. + * Side effects: *natoms set to number of atoms per frame + * *nsets set to number of frames in dcd file + * *istart set to starting timestep of dcd file + * *nsavc set to timesteps between dcd saves + * *delta set to value of trajectory timestep + * *nfixed set to number of fixed atoms + * *freeind may be set to heap-allocated space + * *reverse set to one if reverse-endian, zero if not. + * *charmm set to internal code for handling charmm data. + */ +static int read_dcdheader(fio_fd fd, int *natoms, int *nsets, int *istart, int *nsavc, + double *delta, int *nfixed, int **freeind, + float **fixedcoords, int *reverse, int *charmm, + char **remarks, int *len_remarks); + +/* + * Read a dcd timestep from a dcd file + * Input: fd - a file struct opened for binary reading, from which the + * header information has already been read. + * natoms, nfixed, first, *freeind, reverse, charmm - the corresponding + * items as set by read_dcdheader + * first - true if this is the first frame we are reading. + * x, y, z: space for natoms each of floats. + * unitcell - space for six floats to hold the unit cell data. + * Not set if no unit cell data is present. + * Output: 0 on success, negative error code on failure. + * Side effects: x, y, z contain the coordinates for the timestep read. + * unitcell holds unit cell data if present. + */ +static int read_dcdstep(fio_fd fd, int natoms, float *x, float *y, float *z, + float *unitcell, int nfixed, int first, int *freeind, + float *fixedcoords, int reverse, int charmm); + +/* + * Read a subset of a timestep from a dcd file + * Input: fd - a file struct opened for binary reading, from which the + * header information has already been read + * natoms, nfixed, first, *freeind, reverse, charmm - the corresponding + * items as set by read_dcdheader + * first - true if this is the first frame we are reading. + * lowerb, upperb - the range of atoms to read data for + * x, y, z: space for upperb-lowerb+1 each of floats + * unitcell - space for six floats to hold the unit cell data. + * Not set if no unit cell data is present. + * Ouput: 0 on success, negative error code on failure. + * Side effects: x, y, z contain coordinates for the range of atoms + * unitcell holds unit cell data if present. + */ +static int read_dcdsubset(fio_fd fd, int natoms, int lowerb, int upperb, float *x, float *y, float *z, + float *unitcell, int nfixed, int first, int *freeind, + float *fixedcoords, int reverse, int charmm); + +/* + * Skip past a timestep. If there are fixed atoms, this cannot be used with + * the first timestep. + * Input: fd - a file struct from which the header has already been read + * natoms - number of atoms per timestep + * nfixed - number of fixed atoms + * charmm - charmm flags as returned by read_dcdheader + * Output: 0 on success, negative error code on failure. + * Side effects: One timestep will be skipped; fd will be positioned at the + * next timestep. + */ +static int skip_dcdstep(fio_fd fd, int natoms, int nfixed, int charmm, int numstep); + +/* + * clean up dcd data + * Input: nfixed, freeind - elements as returned by read_dcdheader + * Output: None + * Side effects: Space pointed to by freeind is freed if necessary. + */ +static void close_dcd_read(int *freeind, float *fixedcoords); + +/* + * Write a header for a new dcd file + * Input: fd - file struct opened for binary writing + * remarks - string to be put in the remarks section of the header. + * The string will be truncated to 70 characters. + * natoms, istart, nsavc, delta - see comments in read_dcdheader + * Output: 0 on success, negative error code on failure. + * Side effects: Header information is written to the dcd file. + */ +static int write_dcdheader(fio_fd fd, const char *remarks, int natoms, + int istart, int nsavc, double delta, int with_unitcell, + int charmm); + +/* + * Write a timestep to a dcd file + * Input: fd - a file struct for which a dcd header has already been written + * curframe: Count of frames written to this file, starting with 1. + * curstep: Count of timesteps elapsed = istart + curframe * nsavc. + * natoms - number of elements in x, y, z arrays + * x, y, z: pointers to atom coordinates + * Output: 0 on success, negative error code on failure. + * Side effects: coordinates are written to the dcd file. + */ +static int write_dcdstep(fio_fd fd, int curstep, int curframe, + int natoms, const float *x, const float *y, const float *z, + const double *unitcell, int charmm); + + + +#define DCD_IS_CHARMM 0x01 +#define DCD_HAS_4DIMS 0x02 +#define DCD_HAS_EXTRA_BLOCK 0x04 + +/* READ Macro to make porting easier */ +#define READ(fd, buf, size) \ + fio_fread(((void *) buf), (size), 1, (fd)) + + +/* WRITE Macro to make porting easier */ +#define WRITE(fd, buf, size) \ + fio_fwrite(((void *) buf), (size), 1, (fd)) + +/* XXX This is broken - fread never returns -1 */ +#define CHECK_FREAD(X, msg) if (X==-1) \ + { \ + return(DCD_BADREAD); \ + } + +#define CHECK_FEOF(X, msg) if (X==0) \ + { \ + return(DCD_BADEOF); \ + } + +static int read_dcdheader(fio_fd fd, int *N, int *NSET, int *ISTART, + int *NSAVC, double *DELTA, int *NAMNF, + int **FREEINDEXES, float **fixedcoords, int *reverseEndian, + int *charmm, char **remarks, int *len_remarks) +{ + int input_integer; /* buffer space */ + int ret_val; + char hdrbuf[84]; /* char buffer used to store header */ + int NTITLE; + + /* First thing in the file should be an 84 */ + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading first int from dcd file"); + CHECK_FEOF(ret_val, "reading first int from dcd file"); + + /* Check magic number in file header and determine byte order*/ + if (input_integer != 84) { + /* check to see if its merely reversed endianism */ + /* rather than a totally incorrect file magic number */ + swap4_aligned(&input_integer, 1); + + if (input_integer == 84) { + *reverseEndian=1; + } else { + /* not simply reversed endianism, but something rather more evil */ + return DCD_BADFORMAT; + } + } else { + *reverseEndian=0; + } + + /* Buffer the entire header for random access */ + ret_val = READ(fd, hdrbuf, 84); + CHECK_FREAD(ret_val, "buffering header"); + CHECK_FEOF(ret_val, "buffering header"); + + /* Check for the ID string "COORD" */ + if (hdrbuf[0] != 'C' || hdrbuf[1] != 'O' || + hdrbuf[2] != 'R' || hdrbuf[3] != 'D') { + return DCD_BADFORMAT; + } + + /* CHARMm-genereate DCD files set the last integer in the */ + /* header, which is unused by X-PLOR, to its version number. */ + /* Checking if this is nonzero tells us this is a CHARMm file */ + /* and to look for other CHARMm flags. */ + if (*((int *) (hdrbuf + 80)) != 0) { + (*charmm) = DCD_IS_CHARMM; + if (*((int *) (hdrbuf + 44)) != 0) + (*charmm) |= DCD_HAS_EXTRA_BLOCK; + + if (*((int *) (hdrbuf + 48)) == 1) + (*charmm) |= DCD_HAS_4DIMS; + } else { + (*charmm) = 0; + } + + /* Store the number of sets of coordinates (NSET) */ + (*NSET) = *((int *) (hdrbuf + 4)); + if (*reverseEndian) swap4_unaligned(NSET, 1); + + /* Store ISTART, the starting timestep */ + (*ISTART) = *((int *) (hdrbuf + 8)); + if (*reverseEndian) swap4_unaligned(ISTART, 1); + + /* Store NSAVC, the number of timesteps between dcd saves */ + (*NSAVC) = *((int *) (hdrbuf + 12)); + if (*reverseEndian) swap4_unaligned(NSAVC, 1); + + /* Store NAMNF, the number of fixed atoms */ + (*NAMNF) = *((int *) (hdrbuf + 36)); + if (*reverseEndian) swap4_unaligned(NAMNF, 1); + + /* Read in the timestep, DELTA */ + /* Note: DELTA is stored as a double with X-PLOR but as a float with CHARMm */ + if ((*charmm) & DCD_IS_CHARMM) { + float ftmp; + ftmp = *((float *)(hdrbuf+40)); /* is this safe on Alpha? */ + if (*reverseEndian) + swap4_aligned(&ftmp, 1); + + *DELTA = (double)ftmp; + } else { + (*DELTA) = *((double *)(hdrbuf + 40)); + if (*reverseEndian) swap8_unaligned(DELTA, 1); + } + + /* Get the end size of the first block */ + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading second 84 from dcd file"); + CHECK_FEOF(ret_val, "reading second 84 from dcd file"); + if (*reverseEndian) swap4_aligned(&input_integer, 1); + + if (input_integer != 84) { + return DCD_BADFORMAT; + } + + /* Read in the size of the next block */ + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading size of title block"); + CHECK_FEOF(ret_val, "reading size of title block"); + if (*reverseEndian) swap4_aligned(&input_integer, 1); + + if (((input_integer-4) % 80) == 0) { + /* Read NTITLE, the number of 80 character title strings there are */ + ret_val = READ(fd, &NTITLE, sizeof(int)); + CHECK_FREAD(ret_val, "reading NTITLE"); + CHECK_FEOF(ret_val, "reading NTITLE"); + if (*reverseEndian) swap4_aligned(&NTITLE, 1); + *len_remarks = NTITLE*80; + *remarks = (char*)malloc(*len_remarks); + ret_val = fio_fread(*remarks, *len_remarks, 1, fd); + CHECK_FEOF(ret_val, "reading TITLE"); + + /* Get the ending size for this block */ + ret_val = READ(fd, &input_integer, sizeof(int)); + + CHECK_FREAD(ret_val, "reading size of title block"); + CHECK_FEOF(ret_val, "reading size of title block"); + } else { + return DCD_BADFORMAT; + } + + /* Read in an integer '4' */ + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading a '4'"); + CHECK_FEOF(ret_val, "reading a '4'"); + if (*reverseEndian) swap4_aligned(&input_integer, 1); + + if (input_integer != 4) { + return DCD_BADFORMAT; + } + + /* Read in the number of atoms */ + ret_val = READ(fd, N, sizeof(int)); + CHECK_FREAD(ret_val, "reading number of atoms"); + CHECK_FEOF(ret_val, "reading number of atoms"); + if (*reverseEndian) swap4_aligned(N, 1); + + /* Read in an integer '4' */ + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading a '4'"); + CHECK_FEOF(ret_val, "reading a '4'"); + if (*reverseEndian) swap4_aligned(&input_integer, 1); + + if (input_integer != 4) { + return DCD_BADFORMAT; + } + + *FREEINDEXES = NULL; + *fixedcoords = NULL; + if (*NAMNF != 0) { + (*FREEINDEXES) = (int *) calloc(((*N)-(*NAMNF)), sizeof(int)); + if (*FREEINDEXES == NULL) + return DCD_BADMALLOC; + + *fixedcoords = (float *) calloc((*N)*4 - (*NAMNF), sizeof(float)); + if (*fixedcoords == NULL) + return DCD_BADMALLOC; + + /* Read in index array size */ + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading size of index array"); + CHECK_FEOF(ret_val, "reading size of index array"); + if (*reverseEndian) swap4_aligned(&input_integer, 1); + + if (input_integer != ((*N)-(*NAMNF))*4) { + return DCD_BADFORMAT; + } + + ret_val = READ(fd, (*FREEINDEXES), ((*N)-(*NAMNF))*sizeof(int)); + CHECK_FREAD(ret_val, "reading size of index array"); + CHECK_FEOF(ret_val, "reading size of index array"); + + if (*reverseEndian) + swap4_aligned((*FREEINDEXES), ((*N)-(*NAMNF))); + + ret_val = READ(fd, &input_integer, sizeof(int)); + CHECK_FREAD(ret_val, "reading size of index array"); + CHECK_FEOF(ret_val, "reading size of index array"); + if (*reverseEndian) swap4_aligned(&input_integer, 1); + + if (input_integer != ((*N)-(*NAMNF))*4) { + return DCD_BADFORMAT; + } + } + + return DCD_SUCCESS; +} + +static int read_charmm_extrablock(fio_fd fd, int charmm, int reverseEndian, + float *unitcell) { + int i, input_integer; + + if ((charmm & DCD_IS_CHARMM) && (charmm & DCD_HAS_EXTRA_BLOCK)) { + /* Leading integer must be 48 */ + if (fio_fread(&input_integer, sizeof(int), 1, fd) != 1) + return DCD_BADREAD; + if (reverseEndian) swap4_aligned(&input_integer, 1); + if (input_integer == 48) { + double tmp[6]; + if (fio_fread(tmp, 48, 1, fd) != 1) return DCD_BADREAD; + if (reverseEndian) + swap8_aligned(tmp, 6); + for (i=0; i<6; i++) unitcell[i] = (float)tmp[i]; + } else { + /* unrecognized block, just skip it */ + if (fio_fseek(fd, input_integer, FIO_SEEK_CUR)) return DCD_BADREAD; + } + if (fio_fread(&input_integer, sizeof(int), 1, fd) != 1) return DCD_BADREAD; + } + + return DCD_SUCCESS; +} + +static int read_fixed_atoms(fio_fd fd, int N, int num_free, const int *indexes, + int reverseEndian, const float *fixedcoords, + float *freeatoms, float *pos) { + int i, input_integer; + + /* Read leading integer */ + if (fio_fread(&input_integer, sizeof(int), 1, fd) != 1) return DCD_BADREAD; + if (reverseEndian) swap4_aligned(&input_integer, 1); + if (input_integer != 4*num_free) return DCD_BADFORMAT; + + /* Read free atom coordinates */ + if (fio_fread(freeatoms, 4*num_free, 1, fd) != 1) return DCD_BADREAD; + if (reverseEndian) + swap4_aligned(freeatoms, num_free); + + /* Copy fixed and free atom coordinates into position buffer */ + memcpy(pos, fixedcoords, 4*N); + for (i=0; i 1) { + seekoffset *= numsteps; + } + + rc = fio_fseek(fd, seekoffset, FIO_SEEK_CUR); + if (rc == -1) return DCD_BADEOF; + + return DCD_SUCCESS; +} + +static int jump_to_dcdstep(fio_fd fd, int natoms, int nsets, int nfixed, int charmm, int header_size, int step) { + int rc; + if (step > nsets) { + return DCD_BADEOF; + } + // Calculate file offset + off_t extrablocksize, ndims, firstframesize, framesize; + off_t pos; + extrablocksize = charmm & DCD_HAS_EXTRA_BLOCK ? 48 + 8 : 0; + ndims = charmm & DCD_HAS_4DIMS ? 4 : 3; + firstframesize = (natoms+2) * ndims * sizeof(float) + extrablocksize; + framesize = (natoms-nfixed+2) * ndims * sizeof(float) + extrablocksize; + // Use zero indexing + if (step == 0) { + pos = header_size; + } + else { + pos = header_size + firstframesize + framesize * (step-1); + } + rc = fio_fseek(fd, pos, FIO_SEEK_SET); + if (rc == -1) return DCD_BADEOF; + return DCD_SUCCESS; +} + +#define NFILE_POS 8L +#define NSTEP_POS 20L + +static int write_dcdstep(fio_fd fd, int curframe, int curstep, int N, + const float *X, const float *Y, const float *Z, + const double *unitcell, int charmm) { + int out_integer; + + if (charmm) { + /* write out optional unit cell */ + if (unitcell != NULL) { + out_integer = 48; /* 48 bytes (6 doubles) */ + fio_write_int32(fd, out_integer); + WRITE(fd, unitcell, out_integer); + fio_write_int32(fd, out_integer); + } + } + + /* write out coordinates */ + out_integer = N*4; /* N*4 bytes per X/Y/Z array (N floats per array) */ + fio_write_int32(fd, out_integer); + WRITE(fd, X, out_integer); + fio_write_int32(fd, out_integer); + fio_write_int32(fd, out_integer); + WRITE(fd, Y, out_integer); + fio_write_int32(fd, out_integer); + fio_write_int32(fd, out_integer); + WRITE(fd, Z, out_integer); + fio_write_int32(fd, out_integer); + + /* update the DCD header information */ + fio_fseek(fd, NFILE_POS, FIO_SEEK_SET); + fio_write_int32(fd, curframe); + fio_fseek(fd, NSTEP_POS, FIO_SEEK_SET); + fio_write_int32(fd, curstep); + fio_fseek(fd, 0, FIO_SEEK_END); + + return DCD_SUCCESS; +} + +static int write_dcdheader(fio_fd fd, const char *remarks, int N, + int ISTART, int NSAVC, double DELTA, int with_unitcell, + int charmm) { + int out_integer; + float out_float; + char title_string[200]; + time_t cur_time; + struct tm *tmbuf; + char time_str[81]; + + out_integer = 84; + WRITE(fd, (char *) & out_integer, sizeof(int)); + strcpy(title_string, "CORD"); + WRITE(fd, title_string, 4); + fio_write_int32(fd, 0); /* Number of frames in file, none written yet */ + fio_write_int32(fd, ISTART); /* Starting timestep */ + fio_write_int32(fd, NSAVC); /* Timesteps between frames written to the file */ + fio_write_int32(fd, 0); /* Number of timesteps in simulation */ + fio_write_int32(fd, 0); /* NAMD writes NSTEP or ISTART - NSAVC here? */ + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + if (charmm) { + out_float = DELTA; + WRITE(fd, (char *) &out_float, sizeof(float)); + if (with_unitcell) { + fio_write_int32(fd, 1); + } else { + fio_write_int32(fd, 0); + } + } else { + WRITE(fd, (char *) &DELTA, sizeof(double)); + } + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + fio_write_int32(fd, 0); + if (charmm) { + fio_write_int32(fd, 24); /* Pretend to be Charmm version 24 */ + } else { + fio_write_int32(fd, 0); + } + fio_write_int32(fd, 84); + fio_write_int32(fd, 164); + fio_write_int32(fd, 2); + + strncpy(title_string, remarks, 80); + title_string[79] = '\0'; + WRITE(fd, title_string, 80); + + cur_time=time(NULL); + tmbuf=localtime(&cur_time); + strftime(time_str, 80, "REMARKS Created %d %B, %Y at %R", tmbuf); + WRITE(fd, time_str, 80); + + fio_write_int32(fd, 164); + fio_write_int32(fd, 4); + fio_write_int32(fd, N); + fio_write_int32(fd, 4); + + return DCD_SUCCESS; +} + +static void close_dcd_read(int *indexes, float *fixedcoords) { + free(indexes); + free(fixedcoords); +} + +#endif + diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx new file mode 100644 index 00000000000..ed403119a3e --- /dev/null +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -0,0 +1,59 @@ +# -*- Mode: python; tab-width: 4; indent-tabs-mode:nil; coding:utf-8 -*- +# vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4 +# +# MDAnalysis --- http://www.MDAnalysis.org +# Copyright (c) 2006-2015 Naveen Michaud-Agrawal, Elizabeth J. Denning, Oliver +# Beckstein and contributors (see AUTHORS for the full list) +# +# Released under the GNU Public Licence, v2 or any higher version +# +# Please cite your use of MDAnalysis in published work: +# +# N. Michaud-Agrawal, E. J. Denning, T. B. Woolf, and O. Beckstein. +# MDAnalysis: A Toolkit for the Analysis of Molecular Dynamics Simulations. +# J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 +# + +cdef extern from 'include/fastio.h': + ctypedef fio_fd: + static int fio_open(const char *filename, int mode, fio_fd *fd) + static int fio_fclose(fio_fd fd) + +#define FIO_READ 0x01 +#define FIO_WRITE 0x02 + +cdef enum: + FIO_READ = 0x01 + FIO_WRITE = 0x02 + +cdef class DCDFile: + cdef fio_fd fp + cdef readonly fname + cdef int is_open + + def __cinit__(self, fname, mode='r'): + self.fname = fname.encode('utf-8') + self.is_open = False + self.open(self.fname, mode) + + + def __dealloc__(self): + # call a close_dcd_read + self.close() + + def open(self, filename, mode): + # NOTE: to make handling easier lets disallow read/write mode + if mode == 'r': + fio_mode = FIO_READ + elif mode == 'w': + fio_mode = FIO_WRITE + else: + raise IOError("unkown mode '{}', use either r or w".format(mode)) + ok = fio_open(self.fname, fio_mode, self.fp) + if ok != 0: + raise IOError("couldn't open file: {}".format(filename)) + + def close(self): + ok = fio_close(self.fp) + if ok != 0: + raise IOError("couldn't close file: {}".format(self.fname)) From d05d331b55b421eb4acda61280aa3df8ba11223e Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 7 Aug 2016 13:44:57 +0200 Subject: [PATCH 002/107] first working darft of dcd reimplmentation This is a good wirst step --- package/MDAnalysis/lib/formats/libdcd.pyx | 39 ++++++++++++++--------- package/setup.py | 18 ++++++----- 2 files changed, 34 insertions(+), 23 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index ed403119a3e..3b78825c04a 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -14,22 +14,30 @@ # J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 # -cdef extern from 'include/fastio.h': - ctypedef fio_fd: - static int fio_open(const char *filename, int mode, fio_fd *fd) - static int fio_fclose(fio_fd fd) - -#define FIO_READ 0x01 -#define FIO_WRITE 0x02 +IF UNAME_SYSNAME == "Windows": + cdef extern from 'windows.h': + ctypedef HANDLE fio_fd + ctypedef LONGLONG fio_size_t; + ctypedef void * fio_caddr_t; +ELSE: + from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END, FILE + ctypedef FILE * fio_fd; + ctypedef size_t fio_size_t; + ctypedef void * fio_caddr_t; + _whence_vals = {"FIO_SEEK_SET": SEEK_SET, + "FIO_SEEK_CUR": SEEK_CUR, + "FIO_SEEK_END": SEEK_END} cdef enum: FIO_READ = 0x01 FIO_WRITE = 0x02 +cdef extern from 'include/fastio.h': + ctypedef struct fio_iovec: + pass + cdef class DCDFile: cdef fio_fd fp - cdef readonly fname - cdef int is_open def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -49,11 +57,12 @@ cdef class DCDFile: fio_mode = FIO_WRITE else: raise IOError("unkown mode '{}', use either r or w".format(mode)) - ok = fio_open(self.fname, fio_mode, self.fp) - if ok != 0: - raise IOError("couldn't open file: {}".format(filename)) + # ok = fio_open(self.fname, fio_mode, self.fp) + # if ok != 0: + # raise IOError("couldn't open file: {}".format(filename)) def close(self): - ok = fio_close(self.fp) - if ok != 0: - raise IOError("couldn't close file: {}".format(self.fname)) + pass + # ok = fio_close(self.fp) + # if ok != 0: + # raise IOError("couldn't close file: {}".format(self.fname)) diff --git a/package/setup.py b/package/setup.py index 4bae9214790..35e30b2e34b 100755 --- a/package/setup.py +++ b/package/setup.py @@ -298,16 +298,16 @@ def extensions(config): include_dirs = [get_numpy_include] - dcd = MDAExtension('coordinates._dcdmodule', - ['MDAnalysis/coordinates/src/dcd.c'], - include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], + dcd = MDAExtension('lib.formats.libdcd', + ['MDAnalysis/lib/formats/libdcd' + source_suffix], + include_dirs=include_dirs + ['MDAnalysis/lib/formats/include'], define_macros=define_macros, extra_compile_args=extra_compile_args) - dcd_time = MDAExtension('coordinates.dcdtimeseries', - ['MDAnalysis/coordinates/dcdtimeseries' + source_suffix], - include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], - define_macros=define_macros, - extra_compile_args=extra_compile_args) + # dcd_time = MDAExtension('coordinates.dcdtimeseries', + # ['MDAnalysis/coordinates/dcdtimeseries' + source_suffix], + # include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], + # define_macros=define_macros, + # extra_compile_args=extra_compile_args) distances = MDAExtension('lib.c_distances', ['MDAnalysis/lib/c_distances' + source_suffix], include_dirs=include_dirs + ['MDAnalysis/lib/include'], @@ -364,6 +364,8 @@ def extensions(config): transformation, libmdaxdr, util, encore_utils, ap_clustering, spe_dimred] + pre_exts = [dcd, distances, distances_omp, qcprot, + transformation, libmdaxdr, util] cython_generated = [] if use_cython: extensions = cythonize(pre_exts) From 6743c806ede91e4a835c5367cc3667d18e00f858 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 8 Aug 2016 07:31:07 +0200 Subject: [PATCH 003/107] open and close dcd files --- package/MDAnalysis/lib/formats/__init__.py | 3 ++- package/MDAnalysis/lib/formats/libdcd.pyx | 28 ++++++++++------------ 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/package/MDAnalysis/lib/formats/__init__.py b/package/MDAnalysis/lib/formats/__init__.py index 99567c34e1f..e8abc7a2567 100644 --- a/package/MDAnalysis/lib/formats/__init__.py +++ b/package/MDAnalysis/lib/formats/__init__.py @@ -20,5 +20,6 @@ # J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 # from . import libmdaxdr +from . import libdcd -__all__ = ['libmdaxdr'] +__all__ = ['libmdaxdr', 'libdcd'] diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 3b78825c04a..1856aa587df 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -14,16 +14,14 @@ # J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 # +# This is not tested but should serve as an example how to enable windows +# support in the future IF UNAME_SYSNAME == "Windows": cdef extern from 'windows.h': ctypedef HANDLE fio_fd - ctypedef LONGLONG fio_size_t; - ctypedef void * fio_caddr_t; ELSE: from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END, FILE ctypedef FILE * fio_fd; - ctypedef size_t fio_size_t; - ctypedef void * fio_caddr_t; _whence_vals = {"FIO_SEEK_SET": SEEK_SET, "FIO_SEEK_CUR": SEEK_CUR, "FIO_SEEK_END": SEEK_END} @@ -33,11 +31,13 @@ cdef enum: FIO_WRITE = 0x02 cdef extern from 'include/fastio.h': - ctypedef struct fio_iovec: - pass + int fio_open(const char *filename, int mode, fio_fd *fd) + int fio_fclose(fio_fd fd) cdef class DCDFile: cdef fio_fd fp + cdef readonly fname + cdef int is_open def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -46,23 +46,21 @@ cdef class DCDFile: def __dealloc__(self): - # call a close_dcd_read self.close() - def open(self, filename, mode): - # NOTE: to make handling easier lets disallow read/write mode + def open(self, filename, mode='r'): if mode == 'r': fio_mode = FIO_READ elif mode == 'w': fio_mode = FIO_WRITE else: raise IOError("unkown mode '{}', use either r or w".format(mode)) - # ok = fio_open(self.fname, fio_mode, self.fp) - # if ok != 0: - # raise IOError("couldn't open file: {}".format(filename)) + ok = fio_open(self.fname, fio_mode, &self.fp) + if ok != 0: + raise IOError("couldn't open file: {}".format(filename)) def close(self): pass - # ok = fio_close(self.fp) - # if ok != 0: - # raise IOError("couldn't close file: {}".format(self.fname)) + ok = fio_fclose(self.fp) + if ok != 0: + raise IOError("couldn't close file: {}".format(self.fname)) From f3c81daa08bc8c3f57024f6af5ccb5fdde0504ea Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 8 Aug 2016 09:02:50 +0200 Subject: [PATCH 004/107] add context manager support [skip ci] --- package/MDAnalysis/lib/formats/libdcd.pyx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 1856aa587df..c4bb4cfb0e5 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -44,10 +44,19 @@ cdef class DCDFile: self.is_open = False self.open(self.fname, mode) - def __dealloc__(self): self.close() + def __enter__(self): + """Support context manager""" + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + """Support context manager""" + self.close() + # always propagate exceptions forward + return False + def open(self, filename, mode='r'): if mode == 'r': fio_mode = FIO_READ From 3413c09c5b78b2828e524140764b6b242925b4ff Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 8 Aug 2016 09:04:33 +0200 Subject: [PATCH 005/107] remove pass statement --- package/MDAnalysis/lib/formats/libdcd.pyx | 1 - 1 file changed, 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index c4bb4cfb0e5..806c6bb1dc3 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -69,7 +69,6 @@ cdef class DCDFile: raise IOError("couldn't open file: {}".format(filename)) def close(self): - pass ok = fio_fclose(self.fp) if ok != 0: raise IOError("couldn't close file: {}".format(self.fname)) From 690ca547c4864c8aa7f8a5f5c83ae79388175a74 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 8 Aug 2016 09:18:51 +0200 Subject: [PATCH 006/107] correctly handle is_open flag cases [skip ci] --- package/MDAnalysis/lib/formats/libdcd.pyx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 806c6bb1dc3..e85e9c1468b 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -66,9 +66,14 @@ cdef class DCDFile: raise IOError("unkown mode '{}', use either r or w".format(mode)) ok = fio_open(self.fname, fio_mode, &self.fp) if ok != 0: - raise IOError("couldn't open file: {}".format(filename)) + raise IOError("couldn't open file: {}\n" + "ErrorCode: {}".format(self.fname, ok)) + self.is_open = True def close(self): - ok = fio_fclose(self.fp) - if ok != 0: - raise IOError("couldn't close file: {}".format(self.fname)) + if self.is_open: + ok = fio_fclose(self.fp) + self.is_open = False + if ok != 0: + raise IOError("couldn't close file: {}\n" + "ErrorCode: {}".format(self.fname, ok)) From 3de4b4168c3df3167a10fc18b8b9b886ff358c6d Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 9 Aug 2016 07:56:39 +0200 Subject: [PATCH 007/107] start dcd read header stub --- package/MDAnalysis/lib/formats/libdcd.pyx | 64 +++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index e85e9c1468b..d9da15afccb 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -30,15 +30,67 @@ cdef enum: FIO_READ = 0x01 FIO_WRITE = 0x02 +cdef enum: +DCD_ERRORS = { + 0: 'No Problem', + -1: 'Normal EOF', + -2: 'DCD file does not exist', + -3: 'Open of DCD file failed', + -4: 'read call on DCD file failed', + -5: 'premature EOF found in DCD file', + -6: 'format of DCD file is wrong', + -7: 'output file already exiss', + -8: 'malloc failed' +} + + cdef extern from 'include/fastio.h': int fio_open(const char *filename, int mode, fio_fd *fd) int fio_fclose(fio_fd fd) +# need to find a typedef for off_t +# fio_size_t fio_ftell(fio_fd fd) + +cdef extern from 'include/readdcd.h': + int read_dcdheader(fio_fd fd, int *natoms, int *nsets, int *istart, + int *nsavc, double *delta, int *nfixed, int **freeind, + float **fixedcoords, int *reverse, int *charmm, + char **remarks, int *len_remarks) + int read_dcdstep(fio_fd fd, int natoms, float *x, float *y, float *z, + float *unitcell, int nfixed, int first, int *freeind, + float *fixedcoords, int reverse, int charmm) + int read_dcdsubset(fio_fd fd, int natoms, int lowerb, int upperb, float *x, + float *y, float *z, float *unitcell, int nfixed, + int first, int *freeind, float *fixedcoords, int reverse, + int charmm) + int skip_dcdstep(fio_fd fd, int natoms, int nfixed, int charmm, int numstep) + void close_dcd_read(int *freeind, float *fixedcoords) + int write_dcdheader(fio_fd fd, const char *remarks, int natoms, + int istart, int nsavc, double delta, int with_unitcell, + int charmm) + int write_dcdstep(fio_fd fd, int curstep, int curframe, + int natoms, const float *x, const float *y, const float *z, + const double *unitcell, int charmm) + int skip_dcdstep(fio_fd fd, int natoms, int nfixed, int charmm, int numsteps) + cdef class DCDFile: cdef fio_fd fp cdef readonly fname cdef int is_open + cdef int natoms + cdef int nsets + cdef int istart + cdef int nsavc + cdef double delta + cdef int nfixed + cdef int **freeind + cdef float **fixedcords + cdef int reverse + cdef int charmm + cdef char **remarks + cdef int len_remarks + def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') self.is_open = False @@ -77,3 +129,15 @@ cdef class DCDFile: if ok != 0: raise IOError("couldn't close file: {}\n" "ErrorCode: {}".format(self.fname, ok)) + + def read_header(self): + if not self.is_open: + raise RuntimeError("No file open") + + ok = read_dcdheader(self.fd, &self.natoms, &self.nsets, + &self.istart, &self.nsavc, self.delta, + self.nfixed, self.freeind, self.fixedcoords, + self.reverse, *self.reverse, + self.remarks, &self.len_remarks) + if ok != 0: + raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) From 39cf1db15d106d4b21c43f245d7110f862f96995 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 Aug 2016 18:48:54 +0200 Subject: [PATCH 008/107] add include guards for fastio.h --- .../MDAnalysis/lib/formats/include/fastio.h | 66 ++++++++++--------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/fastio.h b/package/MDAnalysis/lib/formats/include/fastio.h index 998b5ebd5fb..4eeda73e21f 100644 --- a/package/MDAnalysis/lib/formats/include/fastio.h +++ b/package/MDAnalysis/lib/formats/include/fastio.h @@ -22,10 +22,13 @@ * ***************************************************************************/ +#ifndef FASTIO_H +#define FASTIO_H + /* Compiling on windows */ #if defined(_MSC_VER) -#if 1 +#if 1 /* use native Windows I/O calls */ #define FASTIO_NATIVEWIN32 1 @@ -51,10 +54,10 @@ typedef struct { static int fio_win32convertfilename(const char *filename, char *newfilename, int maxlen) { int i; int len=strlen(filename); - + if ((len + 1) >= maxlen) return -1; - + for (i=0; i @@ -352,10 +355,10 @@ static int fio_open(const char *filename, int mode, fio_fd *fd) { int nfd; int oflag = 0; - if (mode == FIO_READ) + if (mode == FIO_READ) oflag = O_RDONLY; - if (mode == FIO_WRITE) + if (mode == FIO_WRITE) oflag = O_WRONLY | O_CREAT | O_TRUNC; nfd = open(filename, oflag, 0666); @@ -371,10 +374,10 @@ static int fio_fclose(fio_fd fd) { return close(fd); } -static fio_size_t fio_fread(void *ptr, fio_size_t size, +static fio_size_t fio_fread(void *ptr, fio_size_t size, fio_size_t nitems, fio_fd fd) { int i; - fio_size_t len = 0; + fio_size_t len = 0; int cnt = 0; for (i=0; i= 0) return 0; /* success (emulate behavior of fseek) */ - else + else return -1; /* failure (emulate behavior of fseek) */ } @@ -452,3 +455,4 @@ static int fio_write_str(fio_fd fd, const char *str) { return (fio_fwrite((void *) str, len, 1, fd) != 1); } +#endif // FASTIO_H From 75d883fb27939f18fbddb9e4bbb7d63f20a0e672 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 Aug 2016 19:08:42 +0200 Subject: [PATCH 009/107] read DCD Header and fixes other issue I set by accident --- package/MDAnalysis/lib/formats/libdcd.pyx | 51 +++++++---------------- 1 file changed, 14 insertions(+), 37 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index d9da15afccb..fec875a9ac6 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -14,23 +14,16 @@ # J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 # -# This is not tested but should serve as an example how to enable windows -# support in the future -IF UNAME_SYSNAME == "Windows": - cdef extern from 'windows.h': - ctypedef HANDLE fio_fd -ELSE: - from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END, FILE - ctypedef FILE * fio_fd; - _whence_vals = {"FIO_SEEK_SET": SEEK_SET, - "FIO_SEEK_CUR": SEEK_CUR, - "FIO_SEEK_END": SEEK_END} +from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END +ctypedef int fio_fd; +_whence_vals = {"FIO_SEEK_SET": SEEK_SET, + "FIO_SEEK_CUR": SEEK_CUR, + "FIO_SEEK_END": SEEK_END} cdef enum: FIO_READ = 0x01 FIO_WRITE = 0x02 -cdef enum: DCD_ERRORS = { 0: 'No Problem', -1: 'Normal EOF', @@ -55,40 +48,23 @@ cdef extern from 'include/readdcd.h': int *nsavc, double *delta, int *nfixed, int **freeind, float **fixedcoords, int *reverse, int *charmm, char **remarks, int *len_remarks) - int read_dcdstep(fio_fd fd, int natoms, float *x, float *y, float *z, - float *unitcell, int nfixed, int first, int *freeind, - float *fixedcoords, int reverse, int charmm) - int read_dcdsubset(fio_fd fd, int natoms, int lowerb, int upperb, float *x, - float *y, float *z, float *unitcell, int nfixed, - int first, int *freeind, float *fixedcoords, int reverse, - int charmm) - int skip_dcdstep(fio_fd fd, int natoms, int nfixed, int charmm, int numstep) - void close_dcd_read(int *freeind, float *fixedcoords) - int write_dcdheader(fio_fd fd, const char *remarks, int natoms, - int istart, int nsavc, double delta, int with_unitcell, - int charmm) - int write_dcdstep(fio_fd fd, int curstep, int curframe, - int natoms, const float *x, const float *y, const float *z, - const double *unitcell, int charmm) - int skip_dcdstep(fio_fd fd, int natoms, int nfixed, int charmm, int numsteps) cdef class DCDFile: cdef fio_fd fp cdef readonly fname cdef int is_open - cdef int natoms cdef int nsets cdef int istart cdef int nsavc cdef double delta cdef int nfixed - cdef int **freeind - cdef float **fixedcords + cdef int *freeind + cdef float *fixedcoords cdef int reverse cdef int charmm - cdef char **remarks + cdef char *remarks cdef int len_remarks def __cinit__(self, fname, mode='r'): @@ -134,10 +110,11 @@ cdef class DCDFile: if not self.is_open: raise RuntimeError("No file open") - ok = read_dcdheader(self.fd, &self.natoms, &self.nsets, - &self.istart, &self.nsavc, self.delta, - self.nfixed, self.freeind, self.fixedcoords, - self.reverse, *self.reverse, - self.remarks, &self.len_remarks) + ok = read_dcdheader(self.fp, &self.natoms, &self.nsets, &self.istart, + &self.nsavc, &self.delta, &self.nfixed, &self.freeind, + &self.fixedcoords, &self.reverse, + &self.charmm, &self.remarks, &self.len_remarks) if ok != 0: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) + + print(self.natoms) From ee4958f3d7ec421fcf5e5f78a654de33fd197121 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Thu, 1 Sep 2016 18:37:20 +0200 Subject: [PATCH 010/107] free memory when closing --- package/MDAnalysis/lib/formats/libdcd.pyx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index fec875a9ac6..2e0a508a41d 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -48,6 +48,7 @@ cdef extern from 'include/readdcd.h': int *nsavc, double *delta, int *nfixed, int **freeind, float **fixedcoords, int *reverse, int *charmm, char **remarks, int *len_remarks) + void close_dcd_read(int *freeind, float *fixedcoords); cdef class DCDFile: @@ -100,6 +101,11 @@ cdef class DCDFile: def close(self): if self.is_open: + print("closing", self.freeind == NULL, self.fixedcoords == NULL) + if self.freeind != NULL: + print("freeing memory") + close_dcd_read(self.freeind, self.fixedcoords); + ok = fio_fclose(self.fp) self.is_open = False if ok != 0: From ac0e1fcc667433449a99f904ede9e3dfa55e57fa Mon Sep 17 00:00:00 2001 From: Max Linke Date: Thu, 1 Sep 2016 19:13:02 +0200 Subject: [PATCH 011/107] remarks handling --- package/MDAnalysis/lib/formats/libdcd.pyx | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 2e0a508a41d..547e09c2f86 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -20,6 +20,9 @@ _whence_vals = {"FIO_SEEK_SET": SEEK_SET, "FIO_SEEK_CUR": SEEK_CUR, "FIO_SEEK_END": SEEK_END} +from libc.stdint cimport uintptr_t +from libc.stdlib cimport free + cdef enum: FIO_READ = 0x01 FIO_WRITE = 0x02 @@ -65,8 +68,6 @@ cdef class DCDFile: cdef float *fixedcoords cdef int reverse cdef int charmm - cdef char *remarks - cdef int len_remarks def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -101,9 +102,7 @@ cdef class DCDFile: def close(self): if self.is_open: - print("closing", self.freeind == NULL, self.fixedcoords == NULL) if self.freeind != NULL: - print("freeing memory") close_dcd_read(self.freeind, self.fixedcoords); ok = fio_fclose(self.fp) @@ -116,11 +115,18 @@ cdef class DCDFile: if not self.is_open: raise RuntimeError("No file open") + cdef char *remarks + cdef int len_remarks + + print("reading", self.freeind, self.fixedcoords == NULL) ok = read_dcdheader(self.fp, &self.natoms, &self.nsets, &self.istart, &self.nsavc, &self.delta, &self.nfixed, &self.freeind, &self.fixedcoords, &self.reverse, - &self.charmm, &self.remarks, &self.len_remarks) + &self.charmm, &remarks, &len_remarks) + print("reading", self.freeind, self.fixedcoords == NULL) if ok != 0: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) + if remarks != NULL: + free(remarks) print(self.natoms) From 0fdf996a86a3205e6643715abc7ef58a56326d71 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 3 Sep 2016 18:17:19 +0200 Subject: [PATCH 012/107] comment all the things --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 547e09c2f86..d6e64a1794c 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -102,6 +102,8 @@ cdef class DCDFile: def close(self): if self.is_open: + # In case there are fixed atoms we should free the memory again. + # Both pointers are guaranted to be non NULL if either one is. if self.freeind != NULL: close_dcd_read(self.freeind, self.fixedcoords); From 44cdc5d96fde02b7d978e1c42e4e405127232687 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 21:22:06 +0200 Subject: [PATCH 013/107] convert remarks to python strings --- package/MDAnalysis/lib/formats/libdcd.pyx | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index d6e64a1794c..c93e2403973 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -117,18 +117,20 @@ cdef class DCDFile: if not self.is_open: raise RuntimeError("No file open") - cdef char *remarks - cdef int len_remarks + cdef char* c_remarks + cdef int len_remarks = 0 - print("reading", self.freeind, self.fixedcoords == NULL) ok = read_dcdheader(self.fp, &self.natoms, &self.nsets, &self.istart, &self.nsavc, &self.delta, &self.nfixed, &self.freeind, &self.fixedcoords, &self.reverse, - &self.charmm, &remarks, &len_remarks) - print("reading", self.freeind, self.fixedcoords == NULL) + &self.charmm, &c_remarks, &len_remarks) if ok != 0: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) - if remarks != NULL: - free(remarks) + if c_remarks != NULL: + py_remarks = c_remarks[:len_remarks] + free(c_remarks) + else: + py_remarks = "" print(self.natoms) + return py_remarks From 82b23176a7cb3f90c511fd68c81a0ad0d76e31ef Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 21:27:41 +0200 Subject: [PATCH 014/107] make n_atoms public in dcd --- package/MDAnalysis/lib/formats/libdcd.pyx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index c93e2403973..43882a5a36e 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -47,7 +47,7 @@ cdef extern from 'include/fastio.h': # fio_size_t fio_ftell(fio_fd fd) cdef extern from 'include/readdcd.h': - int read_dcdheader(fio_fd fd, int *natoms, int *nsets, int *istart, + int read_dcdheader(fio_fd fd, int *n_atoms, int *nsets, int *istart, int *nsavc, double *delta, int *nfixed, int **freeind, float **fixedcoords, int *reverse, int *charmm, char **remarks, int *len_remarks) @@ -58,7 +58,7 @@ cdef class DCDFile: cdef fio_fd fp cdef readonly fname cdef int is_open - cdef int natoms + cdef readonly int n_atoms cdef int nsets cdef int istart cdef int nsavc @@ -71,6 +71,7 @@ cdef class DCDFile: def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') + self.n_atoms = 0 self.is_open = False self.open(self.fname, mode) @@ -120,17 +121,17 @@ cdef class DCDFile: cdef char* c_remarks cdef int len_remarks = 0 - ok = read_dcdheader(self.fp, &self.natoms, &self.nsets, &self.istart, + ok = read_dcdheader(self.fp, &self.n_atoms, &self.nsets, &self.istart, &self.nsavc, &self.delta, &self.nfixed, &self.freeind, &self.fixedcoords, &self.reverse, &self.charmm, &c_remarks, &len_remarks) if ok != 0: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) + if c_remarks != NULL: py_remarks = c_remarks[:len_remarks] free(c_remarks) else: py_remarks = "" - print(self.natoms) return py_remarks From a53263f0e6c9dabd2276a970d2f31fe665afa8eb Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 21:46:23 +0200 Subject: [PATCH 015/107] make delta public --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 43882a5a36e..5ab1bcf1b7a 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -62,7 +62,7 @@ cdef class DCDFile: cdef int nsets cdef int istart cdef int nsavc - cdef double delta + cdef readonly double delta cdef int nfixed cdef int *freeind cdef float *fixedcoords From 4e6f7263d16a7a245499110833f436fa07d35a58 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 22:06:24 +0200 Subject: [PATCH 016/107] make more stuff public --- package/MDAnalysis/lib/formats/libdcd.pyx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 5ab1bcf1b7a..142b2578570 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -60,10 +60,10 @@ cdef class DCDFile: cdef int is_open cdef readonly int n_atoms cdef int nsets - cdef int istart - cdef int nsavc + cdef readonly int istart + cdef readonly int nsavc cdef readonly double delta - cdef int nfixed + cdef readonly int nfixed cdef int *freeind cdef float *fixedcoords cdef int reverse From 807d21ac8503a4e6c14de5b3e3880da192f4d43e Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 22:11:14 +0200 Subject: [PATCH 017/107] periodic property --- package/MDAnalysis/lib/formats/libdcd.pyx | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 142b2578570..e32e7ecb1cc 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -27,6 +27,11 @@ cdef enum: FIO_READ = 0x01 FIO_WRITE = 0x02 +cdef enum: + DCD_IS_CHARMM = 0x01 + DCD_HAS_4DIMS = 0x02 + DCD_HAS_EXTRA_BLOCK = 0x04 + DCD_ERRORS = { 0: 'No Problem', -1: 'Normal EOF', @@ -134,4 +139,10 @@ cdef class DCDFile: else: py_remarks = "" + return py_remarks + + @property + def periodic(self): + return bool((self.charmm & DCD_IS_CHARMM) and + (self.charmm & DCD_HAS_EXTRA_BLOCK)) From 8c2065a26445244b03255059bae378461e8f0ad7 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 22:40:30 +0200 Subject: [PATCH 018/107] estimate number of frames --- package/MDAnalysis/lib/formats/libdcd.pyx | 34 ++++++++++++++++++++--- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index e32e7ecb1cc..291471d0b22 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -14,12 +14,22 @@ # J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 # +from os import path + from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END -ctypedef int fio_fd; _whence_vals = {"FIO_SEEK_SET": SEEK_SET, "FIO_SEEK_CUR": SEEK_CUR, "FIO_SEEK_END": SEEK_END} +# Tell cython about the off_t type. It doesn't need to match exactly what is +# defined since we don't expose it to python but the cython compiler needs to +# know about it. +cdef extern from 'sys/types.h': + ctypedef int off_t + +ctypedef int fio_fd; +ctypedef off_t fio_size_t + from libc.stdint cimport uintptr_t from libc.stdlib cimport free @@ -44,12 +54,10 @@ DCD_ERRORS = { -8: 'malloc failed' } - cdef extern from 'include/fastio.h': int fio_open(const char *filename, int mode, fio_fd *fd) int fio_fclose(fio_fd fd) -# need to find a typedef for off_t -# fio_size_t fio_ftell(fio_fd fd) + fio_size_t fio_ftell(fio_fd fd) cdef extern from 'include/readdcd.h': int read_dcdheader(fio_fd fd, int *n_atoms, int *nsets, int *istart, @@ -73,6 +81,8 @@ cdef class DCDFile: cdef float *fixedcoords cdef int reverse cdef int charmm + cdef readonly int n_dims + cdef readonly int n_frames def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -139,9 +149,25 @@ cdef class DCDFile: else: py_remarks = "" + self.n_dims = 3 if not self.charmm & DCD_HAS_4DIMS else 4 + self.n_frames = self._estimate_n_frames() return py_remarks + def _estimate_n_frames(self): + extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 + firstframesize = self.n_atoms + 2 * self.n_dims * sizeof(float) + extrablocksize + framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + + extrablocksize) + filesize = path.getsize(self.fname) + # It's safe to use ftell, even though ftell returns a long, because the + # header size is < 4GB. + header_size = fio_ftell(self.fp) + # TODO: check that nframessize is larger then 0, the c-implementation + # used to do that. + nframessize = filesize - header_size - firstframesize + return nframessize / framesize + 1 + @property def periodic(self): return bool((self.charmm & DCD_IS_CHARMM) and From 75adf21c0d758b1d13d641567e983538baecdf59 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 1 Oct 2016 23:10:32 +0200 Subject: [PATCH 019/107] work on read_next_frame --- package/MDAnalysis/lib/formats/libdcd.pyx | 45 +++++++++++++++++++++-- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 291471d0b22..f35682d4479 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -16,6 +16,8 @@ from os import path +cimport numpy as np + from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END _whence_vals = {"FIO_SEEK_SET": SEEK_SET, "FIO_SEEK_CUR": SEEK_CUR, @@ -30,6 +32,9 @@ cdef extern from 'sys/types.h': ctypedef int fio_fd; ctypedef off_t fio_size_t +ctypedef np.float32_t DTYPE_t +DTYPE = np.float32 + from libc.stdint cimport uintptr_t from libc.stdlib cimport free @@ -62,9 +67,13 @@ cdef extern from 'include/fastio.h': cdef extern from 'include/readdcd.h': int read_dcdheader(fio_fd fd, int *n_atoms, int *nsets, int *istart, int *nsavc, double *delta, int *nfixed, int **freeind, - float **fixedcoords, int *reverse, int *charmm, + float **fixedcoords, int *reverse_endian, int *charmm, char **remarks, int *len_remarks) - void close_dcd_read(int *freeind, float *fixedcoords); + void close_dcd_read(int *freeind, float *fixedcoords) + int read_dcdstep(fio_fd fd, int n_atoms, float *X, float *Y, float *Z, + float *unitcell, int num_fixed, + int first, int *indexes, float *fixedcoords, + int reverse_endian, int charmm) cdef class DCDFile: @@ -79,10 +88,11 @@ cdef class DCDFile: cdef readonly int nfixed cdef int *freeind cdef float *fixedcoords - cdef int reverse + cdef int reverse_endian cdef int charmm cdef readonly int n_dims cdef readonly int n_frames + cdef bint b_read_header def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -115,6 +125,7 @@ cdef class DCDFile: raise IOError("couldn't open file: {}\n" "ErrorCode: {}".format(self.fname, ok)) self.is_open = True + self.read_header = False def close(self): if self.is_open: @@ -138,7 +149,7 @@ cdef class DCDFile: ok = read_dcdheader(self.fp, &self.n_atoms, &self.nsets, &self.istart, &self.nsavc, &self.delta, &self.nfixed, &self.freeind, - &self.fixedcoords, &self.reverse, + &self.fixedcoords, &self.reverse_endian, &self.charmm, &c_remarks, &len_remarks) if ok != 0: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) @@ -152,6 +163,7 @@ cdef class DCDFile: self.n_dims = 3 if not self.charmm & DCD_HAS_4DIMS else 4 self.n_frames = self._estimate_n_frames() + self.read_header = True return py_remarks def _estimate_n_frames(self): @@ -172,3 +184,28 @@ cdef class DCDFile: def periodic(self): return bool((self.charmm & DCD_IS_CHARMM) and (self.charmm & DCD_HAS_EXTRA_BLOCK)) + + + def _read_next_frame(self): + if not self.is_open: + raise RuntimeError("No file open") + if not self.read_header: + raise IOError("didn't read DCD header before reading frame") + + cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=DTYPE, + order='F') + cdef np.ndarray dimensions = np.empty(6, dtype=DTYPE) + + cdef DTYPE_t[::1] x = xyz[:, 0] + cdef DTYPE_t[::1] y = xyz[:, 1] + cdef DTYPE_t[::1] z = xyz[:, 2] + + ok = read_dcdstep(self.fp, self.n_atoms, &x[0], + &y[0], &z[0], + dimensions.data, self.nfixed, self.first, + self.freeind, self.fixedcoords, + self.reverse_endian, self.charmm) + if ok != 0: + raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) + + return xyz From 82f46e68bb2305e3dc7c6ec15670d09ac4ff3898 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 4 Oct 2016 07:59:07 +0200 Subject: [PATCH 020/107] improve reading API --- package/MDAnalysis/lib/formats/libdcd.pyx | 26 +++++++++++++++++------ 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index f35682d4479..7089feef540 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -15,9 +15,12 @@ # from os import path +import numpy as np +from collections import namedtuple cimport numpy as np + from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END _whence_vals = {"FIO_SEEK_SET": SEEK_SET, "FIO_SEEK_CUR": SEEK_CUR, @@ -75,6 +78,7 @@ cdef extern from 'include/readdcd.h': int first, int *indexes, float *fixedcoords, int reverse_endian, int charmm) +DCDFrame = namedtuple('DCDFrame', 'x unitcell') cdef class DCDFile: cdef fio_fd fp @@ -93,6 +97,8 @@ cdef class DCDFile: cdef readonly int n_dims cdef readonly int n_frames cdef bint b_read_header + cdef int current_frame + cdef readonly remarks def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -125,7 +131,8 @@ cdef class DCDFile: raise IOError("couldn't open file: {}\n" "ErrorCode: {}".format(self.fname, ok)) self.is_open = True - self.read_header = False + self.current_frame = 0 + self.remarks = self._read_header() def close(self): if self.is_open: @@ -140,7 +147,8 @@ cdef class DCDFile: raise IOError("couldn't close file: {}\n" "ErrorCode: {}".format(self.fname, ok)) - def read_header(self): + + def _read_header(self): if not self.is_open: raise RuntimeError("No file open") @@ -162,8 +170,8 @@ cdef class DCDFile: self.n_dims = 3 if not self.charmm & DCD_HAS_4DIMS else 4 self.n_frames = self._estimate_n_frames() + self.b_read_header = True - self.read_header = True return py_remarks def _estimate_n_frames(self): @@ -186,10 +194,10 @@ cdef class DCDFile: (self.charmm & DCD_HAS_EXTRA_BLOCK)) - def _read_next_frame(self): + def read(self): if not self.is_open: raise RuntimeError("No file open") - if not self.read_header: + if not self.b_read_header: raise IOError("didn't read DCD header before reading frame") cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=DTYPE, @@ -200,12 +208,16 @@ cdef class DCDFile: cdef DTYPE_t[::1] y = xyz[:, 1] cdef DTYPE_t[::1] z = xyz[:, 2] + first_frame = self.current_frame == 0 + ok = read_dcdstep(self.fp, self.n_atoms, &x[0], &y[0], &z[0], - dimensions.data, self.nfixed, self.first, + dimensions.data, self.nfixed, first_frame, self.freeind, self.fixedcoords, self.reverse_endian, self.charmm) if ok != 0: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) - return xyz + self.current_frame += 1 + + return DCDFrame(xyz, dimensions) From 10f1ea6bb6d0e7b1e3edf80c927aa0f720185841 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 4 Oct 2016 08:07:59 +0200 Subject: [PATCH 021/107] finish reading and iteration protocol --- package/MDAnalysis/lib/formats/libdcd.pyx | 46 ++++++++++++++++++++--- 1 file changed, 40 insertions(+), 6 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 7089feef540..39a75b3bc11 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -94,11 +94,13 @@ cdef class DCDFile: cdef float *fixedcoords cdef int reverse_endian cdef int charmm + cdef str mode cdef readonly int n_dims cdef readonly int n_frames cdef bint b_read_header cdef int current_frame cdef readonly remarks + cdef int reached_eof def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -119,13 +121,36 @@ cdef class DCDFile: # always propagate exceptions forward return False + def __iter__(self): + self.close() + self.open(self.fname, self.mode) + return self + + def __next__(self): + if self.reached_eof: + raise StopIteration + return self.read() + + def __len__(self): + if not self.is_open: + raise RuntimeError('No file currently opened') + return self.n_frames + + def tell(self): + return self.current_frame + def open(self, filename, mode='r'): + if self.is_open: + self.close() + if mode == 'r': fio_mode = FIO_READ elif mode == 'w': fio_mode = FIO_WRITE else: raise IOError("unkown mode '{}', use either r or w".format(mode)) + self.mode = mode + ok = fio_open(self.fname, fio_mode, &self.fp) if ok != 0: raise IOError("couldn't open file: {}\n" @@ -133,6 +158,7 @@ cdef class DCDFile: self.is_open = True self.current_frame = 0 self.remarks = self._read_header() + self.reached_eof = False def close(self): if self.is_open: @@ -195,14 +221,17 @@ cdef class DCDFile: def read(self): + if self.reached_eof: + raise RuntimeError('Reached last frame in TRR, seek to 0') if not self.is_open: raise RuntimeError("No file open") - if not self.b_read_header: - raise IOError("didn't read DCD header before reading frame") + if self.mode != 'r': + raise RuntimeError('File opened in mode: {}. Reading only allow ' + 'in mode "r"'.format('self.mode')) cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=DTYPE, order='F') - cdef np.ndarray dimensions = np.empty(6, dtype=DTYPE) + cdef np.ndarray unitcell = np.empty(6, dtype=DTYPE) cdef DTYPE_t[::1] x = xyz[:, 0] cdef DTYPE_t[::1] y = xyz[:, 1] @@ -212,12 +241,17 @@ cdef class DCDFile: ok = read_dcdstep(self.fp, self.n_atoms, &x[0], &y[0], &z[0], - dimensions.data, self.nfixed, first_frame, + unitcell.data, self.nfixed, first_frame, self.freeind, self.fixedcoords, self.reverse_endian, self.charmm) - if ok != 0: + if ok != 0 and ok != -4: raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) + # we couldn't read any more frames. + if ok == -4: + self.reached_eof = True + raise StopIteration + self.current_frame += 1 - return DCDFrame(xyz, dimensions) + return DCDFrame(xyz, unitcell) From f9e9d73584a97e53bd5d20f5e4c5c07332df4e17 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 4 Oct 2016 08:21:53 +0200 Subject: [PATCH 022/107] add seek support --- package/MDAnalysis/lib/formats/libdcd.pyx | 53 ++++++++++++++++++++--- 1 file changed, 47 insertions(+), 6 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 39a75b3bc11..d07dfb1c80d 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -66,6 +66,7 @@ cdef extern from 'include/fastio.h': int fio_open(const char *filename, int mode, fio_fd *fd) int fio_fclose(fio_fd fd) fio_size_t fio_ftell(fio_fd fd) + fio_size_t fio_fseek(fio_fd fd, fio_size_t offset, int whence) cdef extern from 'include/readdcd.h': int read_dcdheader(fio_fd fd, int *n_atoms, int *nsets, int *istart, @@ -101,6 +102,9 @@ cdef class DCDFile: cdef int current_frame cdef readonly remarks cdef int reached_eof + cdef int firstframesize + cdef int framesize + cdef int header_size def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -198,21 +202,25 @@ cdef class DCDFile: self.n_frames = self._estimate_n_frames() self.b_read_header = True + # make sure fixed atoms have been read + self.read() + self.seek(0) + return py_remarks def _estimate_n_frames(self): extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 - firstframesize = self.n_atoms + 2 * self.n_dims * sizeof(float) + extrablocksize - framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + - extrablocksize) + self.firstframesize = self.n_atoms + 2 * self.n_dims * sizeof(float) + extrablocksize + self.framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + + extrablocksize) filesize = path.getsize(self.fname) # It's safe to use ftell, even though ftell returns a long, because the # header size is < 4GB. - header_size = fio_ftell(self.fp) + self.header_size = fio_ftell(self.fp) # TODO: check that nframessize is larger then 0, the c-implementation # used to do that. - nframessize = filesize - header_size - firstframesize - return nframessize / framesize + 1 + nframessize = filesize - self.header_size - self.firstframesize + return nframessize / self.framesize + 1 @property def periodic(self): @@ -255,3 +263,36 @@ cdef class DCDFile: self.current_frame += 1 return DCDFrame(xyz, unitcell) + + def seek(self, frame): + """Seek to Frame. + + Please note that this function will generate internal file offsets if + they haven't been set before. For large file this means the first seek + can be very slow. Later seeks will be very fast. + + Parameters + ---------- + frame : int + seek the file to given frame + + Raises + ------ + IOError + If you seek for more frames than are available or if the + seek fails (the low-level system error is reported). + """ + if frame >= self.n_frames: + raise IOError('Trying to seek over max number of frames') + self.reached_eof = False + + cdef fio_size_t offset + if frame == 0: + offset = self.header_size + else: + offset = self.header_size + self.firstframesize + self.framesize * (frame - 1) + + ok = fio_fseek(self.fp, offset, _whence_vals["FIO_SEEK_SET"]) + if ok != 0: + raise IOError("DCD seek failed with system errno={}".format(ok)) + self.current_frame = frame From f67121db48a305224d7f3cbf7e0071edd2abff8c Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 21 Oct 2016 16:45:15 +0100 Subject: [PATCH 023/107] TST: Added first draft of testing module for new Cython-based DCD file handling interface. --- .../MDAnalysisTests/formats/test_libdcd.py | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 testsuite/MDAnalysisTests/formats/test_libdcd.py diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py new file mode 100644 index 00000000000..0b7357de306 --- /dev/null +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -0,0 +1,53 @@ +from __future__ import print_function + +from nose.tools import raises +from numpy.testing import assert_equal, assert_array_equal +from numpy.testing import assert_array_almost_equal +from numpy.testing import assert_almost_equal + +from MDAnalysis.lib.formats.libdcd import DCDFile +from MDAnalysisTests.datafiles import DCD + +from unittest import TestCase +from MDAnalysisTests.tempdir import run_in_tempdir +import numpy as np + +class DCDReadFrameTest(TestCase): + + def setUp(self): + self.dcdfile = DCDFile(DCD) + + def tearDown(self): + del self.dcdfile + + def test_read_coords(self): + # confirm shape of coordinate data against result from previous + # MDAnalysis implementation of DCD file handling + dcd_frame = self.dcdfile.read() + xyz = dcd_frame[0] + assert_equal(xyz.shape, (3341, 3)) + + def test_read_unit_cell(self): + # confirm unit cell read against result from previous + # MDAnalysis implementation of DCD file handling + dcd_frame = self.dcdfile.read() + unitcell = dcd_frame[1] + expected = np.array([ 0., 0., 0., 90., 90., 90.], + dtype=np.float32) + assert_equal(unitcell, expected) + + def test_seek_over_max(self): + # should raise IOError if beyond 98th frame + with self.assertRaises(IOError): + self.dcdfile.seek(102) + + def test_seek_normal(self): + # frame seek within range is tested + new_frame = 91 + self.dcdfile.seek(new_frame) + assert_equal(self.dcdfile.current_frame, new_frame) + + def test_seek_negative(self): + # frame seek with negative number + with self.assertRaises(IOError): + self.dcdfile.seek(-78) From 00d2d4ece224d16c34a6d8dd79e8eb4d9d037c88 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sun, 23 Oct 2016 18:13:14 +0100 Subject: [PATCH 024/107] TST: All libdcd unit tests now pass, except one related to unit cell dimensions. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 0b7357de306..4e407b888a6 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -45,7 +45,7 @@ def test_seek_normal(self): # frame seek within range is tested new_frame = 91 self.dcdfile.seek(new_frame) - assert_equal(self.dcdfile.current_frame, new_frame) + assert_equal(self.dcdfile.tell(), new_frame) def test_seek_negative(self): # frame seek with negative number From 254d18c932e21d406aa620577767bff815f1a02c Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sun, 23 Oct 2016 18:53:39 +0100 Subject: [PATCH 025/107] TST: Added several more unit tests to test_libdcd.py. --- .../MDAnalysisTests/formats/test_libdcd.py | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 4e407b888a6..19550237677 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -51,3 +51,51 @@ def test_seek_negative(self): # frame seek with negative number with self.assertRaises(IOError): self.dcdfile.seek(-78) + + def test_iteration(self): + self.dcdfile.__next__() + self.dcdfile.__next__() + self.dcdfile.__next__() + expected_frame = 3 + assert_equal(self.dcdfile.tell(), expected_frame) + + def test_zero_based_frames(self): + expected_frame = 0 + assert_equal(self.dcdfile.tell(), expected_frame) + + def test_length_traj(self): + expected = 98 + assert_equal(len(self.dcdfile), expected) + + def test_context_manager(self): + frame = 22 + with self.dcdfile as f: + f.seek(frame) + assert_equal(f.tell(), frame) + + @raises(ValueError) + def test_open_wrong_mode(self): + DCDFile('foo', 'e') + + @raises(IOError) + def test_raise_not_existing(self): + DCDFile('foo') + + def test_n_atoms(self): + assert_equal(self.dcdfile.n_atoms, 3341) + + @raises(RuntimeError) + @run_in_tempdir() + def test_read_write_mode_file(self): + with DCDFile('foo', 'w') as f: + f.read() + + @raises(RuntimeError) + def test_read_closed(self): + self.dcdfile.close() + self.dcdfile.read() + + def test_iteration_2(self): + with self.dcdfile as f: + for frame in f: + pass From f0e190ab59eac6ad5fa3c10d1a3c8fe4ff769b69 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Mon, 24 Oct 2016 16:26:44 +0100 Subject: [PATCH 026/107] TST: updated unit tests to reflect appropriate Error raising for test_read_write_mode_file and test_open_wrong_mode. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 19550237677..1e7cbf11c11 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -73,7 +73,7 @@ def test_context_manager(self): f.seek(frame) assert_equal(f.tell(), frame) - @raises(ValueError) + @raises(IOError) def test_open_wrong_mode(self): DCDFile('foo', 'e') @@ -84,7 +84,7 @@ def test_raise_not_existing(self): def test_n_atoms(self): assert_equal(self.dcdfile.n_atoms, 3341) - @raises(RuntimeError) + @raises(IOError) @run_in_tempdir() def test_read_write_mode_file(self): with DCDFile('foo', 'w') as f: From 488b69dcfe8b659271a37fbd8976dcdee973bc75 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Tue, 10 Jan 2017 16:05:52 -0700 Subject: [PATCH 027/107] ENH: rebase against develop / handle merge conflicts / remove old DCD imports from package. --- package/MDAnalysis/coordinates/__init__.py | 10 ---------- package/setup.py | 5 +---- 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/package/MDAnalysis/coordinates/__init__.py b/package/MDAnalysis/coordinates/__init__.py index bbd9eff047c..9f85d4893b8 100644 --- a/package/MDAnalysis/coordinates/__init__.py +++ b/package/MDAnalysis/coordinates/__init__.py @@ -720,13 +720,3 @@ class can choose an appropriate reader automatically. from . import memory from . import MMTF from . import null - - -try: - from . import DCD - from . import LAMMPS -except ImportError as e: - # The import is expected to fail under Python 3. - # It should not fail on Python 2, however. - if six.PY2: - raise e diff --git a/package/setup.py b/package/setup.py index 35e30b2e34b..22f9ce26f02 100755 --- a/package/setup.py +++ b/package/setup.py @@ -360,12 +360,9 @@ def extensions(config): include_dirs = include_dirs+['MDAnalysis/analysis/encore/dimensionality_reduction/include'], libraries=["m"], extra_compile_args=["-O3", "-ffast-math","-std=c99"]) - pre_exts = [dcd, dcd_time, distances, distances_omp, qcprot, + pre_exts = [dcd, distances, distances_omp, qcprot, transformation, libmdaxdr, util, encore_utils, ap_clustering, spe_dimred] - - pre_exts = [dcd, distances, distances_omp, qcprot, - transformation, libmdaxdr, util] cython_generated = [] if use_cython: extensions = cythonize(pre_exts) From 575319e2d0f04f7f766ec3c1998443dc740fab72 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Tue, 10 Jan 2017 17:52:12 -0700 Subject: [PATCH 028/107] ENH: Very early draft of DCD header writing Cython code and very crude associated unit test. --- package/MDAnalysis/lib/formats/libdcd.pyx | 17 +++++++++++++++++ .../MDAnalysisTests/formats/test_libdcd.py | 9 +++++++++ 2 files changed, 26 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index d07dfb1c80d..bd3d7429d17 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -78,6 +78,9 @@ cdef extern from 'include/readdcd.h': float *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, int reverse_endian, int charmm) + int write_dcdheader(fio_fd fd, const char *remarks, int natoms, + int istart, int nsavc, double delta, int with_unitcell, + int charmm); DCDFrame = namedtuple('DCDFrame', 'x unitcell') @@ -296,3 +299,17 @@ cdef class DCDFile: if ok != 0: raise IOError("DCD seek failed with system errno={}".format(ok)) self.current_frame = frame + + def _write_header(self): + if not self.is_open: + raise RuntimeError("No file open") + + cdef char c_remarks + cdef int len_remarks = 0 + cdef int with_unitcell = 1 + + ok = write_dcdheader(self.fp, &c_remarks, self.n_atoms, self.istart, + self.nsavc, self.delta, with_unitcell, + self.charmm) + if ok != 0: + raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 1e7cbf11c11..c4a0550dc7c 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -99,3 +99,12 @@ def test_iteration_2(self): with self.dcdfile as f: for frame in f: pass + +class DCDWriteHeaderTest(TestCase): + + def setUp(self): + self.dcdfile = DCDFile(DCD) + + @run_in_tempdir() + def test_write_header(self): + self.dcdfile._write_header() From 2b2d3540985a85f1412748073adb62c16eb6ec89 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Wed, 11 Jan 2017 16:13:55 -0700 Subject: [PATCH 029/107] ENH: libdcd.pyx now avoids file overwriting and handles writing more robustly for _write_header. --- package/MDAnalysis/lib/formats/libdcd.pyx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index bd3d7429d17..8bbfb6f9476 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -113,6 +113,9 @@ cdef class DCDFile: self.fname = fname.encode('utf-8') self.n_atoms = 0 self.is_open = False + if path.isfile(self.fname) and mode == 'w': + raise RuntimeError('''Aborting -- attempted to overwrite an + existing file path.''') self.open(self.fname, mode) def __dealloc__(self): @@ -164,7 +167,8 @@ cdef class DCDFile: "ErrorCode: {}".format(self.fname, ok)) self.is_open = True self.current_frame = 0 - self.remarks = self._read_header() + if self.mode == 'r': + self.remarks = self._read_header() self.reached_eof = False def close(self): @@ -301,9 +305,13 @@ cdef class DCDFile: self.current_frame = frame def _write_header(self): + if not self.is_open: raise RuntimeError("No file open") + if not self.mode=='w': + raise IOError("Incorrect file mode for writing.") + cdef char c_remarks cdef int len_remarks = 0 cdef int with_unitcell = 1 From 72dcdb6efd03f83117ac4c5c3045481aa8c17172 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Wed, 11 Jan 2017 16:17:45 -0700 Subject: [PATCH 030/107] ENH: Updated DCD unit tests to accommodate improvement to DCD file header writing. --- .../MDAnalysisTests/formats/test_libdcd.py | 38 +++++++++++++++++-- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index c4a0550dc7c..8c38c37cd05 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -10,7 +10,9 @@ from unittest import TestCase from MDAnalysisTests.tempdir import run_in_tempdir +from MDAnalysisTests import tempdir import numpy as np +import os class DCDReadFrameTest(TestCase): @@ -84,7 +86,7 @@ def test_raise_not_existing(self): def test_n_atoms(self): assert_equal(self.dcdfile.n_atoms, 3341) - @raises(IOError) + @raises(RuntimeError) @run_in_tempdir() def test_read_write_mode_file(self): with DCDFile('foo', 'w') as f: @@ -103,8 +105,36 @@ def test_iteration_2(self): class DCDWriteHeaderTest(TestCase): def setUp(self): - self.dcdfile = DCDFile(DCD) + self.tmpdir = tempdir.TempDir() + self.testfile = self.tmpdir.name + '/test.dcd' + self.dcdfile = DCDFile(self.testfile, 'w') + self.dcdfile_r = DCDFile(DCD, 'r') - @run_in_tempdir() - def test_write_header(self): + def tearDown(self): + try: + os.unlink(self.testfile) + except OSError: + pass + del self.tmpdir + + def test_write_header_crude(self): + # test that _write_header() can produce a very crude + # header for a new / empty file self.dcdfile._write_header() + self.dcdfile.close() + + # we're not actually asserting anything, yet + # run with: nosetests test_libdcd.py --nocapture + # to see printed output from nose + with open(self.testfile, "rb") as f: + for element in f: + print(element) + + def test_write_header_mode_sensitivy(self): + # an exception should be raised on any attempt to use + # _write_header with a DCDFile object in 'r' mode + with self.assertRaises(IOError): + self.dcdfile_r._write_header() + + + From 364769a49b3e26912d01edc327c2e08f5866efae Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sat, 14 Jan 2017 09:06:34 -0700 Subject: [PATCH 031/107] ENH: restored DCD-related import checking in MDAnalysis/coordinates/__init__.py after upstream python 3 fixes. --- package/MDAnalysis/coordinates/__init__.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/package/MDAnalysis/coordinates/__init__.py b/package/MDAnalysis/coordinates/__init__.py index 9f85d4893b8..bbd9eff047c 100644 --- a/package/MDAnalysis/coordinates/__init__.py +++ b/package/MDAnalysis/coordinates/__init__.py @@ -720,3 +720,13 @@ class can choose an appropriate reader automatically. from . import memory from . import MMTF from . import null + + +try: + from . import DCD + from . import LAMMPS +except ImportError as e: + # The import is expected to fail under Python 3. + # It should not fail on Python 2, however. + if six.PY2: + raise e From cb0ac047bdd64a44d87830d73c418743e0b83787 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sat, 14 Jan 2017 16:05:41 -0700 Subject: [PATCH 032/107] ENH: Replaced all usage of RuntimeError exception with IOError in libdcd.pyx, for consistency with MDA codebase. --- package/MDAnalysis/lib/formats/libdcd.pyx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 8bbfb6f9476..9021ece52a4 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -114,7 +114,7 @@ cdef class DCDFile: self.n_atoms = 0 self.is_open = False if path.isfile(self.fname) and mode == 'w': - raise RuntimeError('''Aborting -- attempted to overwrite an + raise IOError('''Aborting -- attempted to overwrite an existing file path.''') self.open(self.fname, mode) @@ -143,7 +143,7 @@ cdef class DCDFile: def __len__(self): if not self.is_open: - raise RuntimeError('No file currently opened') + raise IOError('No file currently opened') return self.n_frames def tell(self): @@ -187,7 +187,7 @@ cdef class DCDFile: def _read_header(self): if not self.is_open: - raise RuntimeError("No file open") + raise IOError("No file open") cdef char* c_remarks cdef int len_remarks = 0 @@ -237,11 +237,11 @@ cdef class DCDFile: def read(self): if self.reached_eof: - raise RuntimeError('Reached last frame in TRR, seek to 0') + raise IOError('Reached last frame in TRR, seek to 0') if not self.is_open: - raise RuntimeError("No file open") + raise IOError("No file open") if self.mode != 'r': - raise RuntimeError('File opened in mode: {}. Reading only allow ' + raise IOError('File opened in mode: {}. Reading only allow ' 'in mode "r"'.format('self.mode')) cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=DTYPE, @@ -307,7 +307,7 @@ cdef class DCDFile: def _write_header(self): if not self.is_open: - raise RuntimeError("No file open") + raise IOError("No file open") if not self.mode=='w': raise IOError("Incorrect file mode for writing.") From 41e67082471531eb668ef1c8cb31f796f63eda84 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sat, 14 Jan 2017 16:06:50 -0700 Subject: [PATCH 033/107] ENH: test_libdcd.py now correctly expects IOError instead of RuntimeError from libdcd. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 8c38c37cd05..3da0cc7d9a4 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -86,13 +86,13 @@ def test_raise_not_existing(self): def test_n_atoms(self): assert_equal(self.dcdfile.n_atoms, 3341) - @raises(RuntimeError) + @raises(IOError) @run_in_tempdir() def test_read_write_mode_file(self): with DCDFile('foo', 'w') as f: f.read() - @raises(RuntimeError) + @raises(IOError) def test_read_closed(self): self.dcdfile.close() self.dcdfile.read() From 6009d2769065eee7196eee10c3b42784ad19aa26 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sat, 14 Jan 2017 16:08:27 -0700 Subject: [PATCH 034/107] ENH: added py3 compatibility for block_import. --- testsuite/MDAnalysisTests/util.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/testsuite/MDAnalysisTests/util.py b/testsuite/MDAnalysisTests/util.py index 38578503a72..c3e15015b18 100644 --- a/testsuite/MDAnalysisTests/util.py +++ b/testsuite/MDAnalysisTests/util.py @@ -36,10 +36,12 @@ from contextlib import contextmanager from functools import wraps import importlib -import mock +try: + import mock +except ImportError: # python 3 + from unittest import mock import os - def block_import(package): """Block import of a given package From 4ab5ba7fbcebb21dc73a14f1df3f3ccc553b9713 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 16 Jan 2017 13:03:59 +0100 Subject: [PATCH 035/107] compile _dcdmodule again This will help to pass travis tests during development. --- package/setup.py | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/package/setup.py b/package/setup.py index 22f9ce26f02..30776eacece 100755 --- a/package/setup.py +++ b/package/setup.py @@ -298,16 +298,21 @@ def extensions(config): include_dirs = [get_numpy_include] - dcd = MDAExtension('lib.formats.libdcd', - ['MDAnalysis/lib/formats/libdcd' + source_suffix], - include_dirs=include_dirs + ['MDAnalysis/lib/formats/include'], + dcd = MDAExtension('coordinates._dcdmodule', + ['MDAnalysis/coordinates/src/dcd.c' + source_suffix], + include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], define_macros=define_macros, extra_compile_args=extra_compile_args) - # dcd_time = MDAExtension('coordinates.dcdtimeseries', - # ['MDAnalysis/coordinates/dcdtimeseries' + source_suffix], - # include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], - # define_macros=define_macros, - # extra_compile_args=extra_compile_args) + libdcd = MDAExtension('lib.formats.libdcd', + ['MDAnalysis/lib/formats/libdcd' + source_suffix], + include_dirs=include_dirs + ['MDAnalysis/lib/formats/include'], + define_macros=define_macros, + extra_compile_args=extra_compile_args) + dcd_time = MDAExtension('coordinates.dcdtimeseries', + ['MDAnalysis/coordinates/dcdtimeseries' + source_suffix], + include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], + define_macros=define_macros, + extra_compile_args=extra_compile_args) distances = MDAExtension('lib.c_distances', ['MDAnalysis/lib/c_distances' + source_suffix], include_dirs=include_dirs + ['MDAnalysis/lib/include'], @@ -360,9 +365,9 @@ def extensions(config): include_dirs = include_dirs+['MDAnalysis/analysis/encore/dimensionality_reduction/include'], libraries=["m"], extra_compile_args=["-O3", "-ffast-math","-std=c99"]) - pre_exts = [dcd, distances, distances_omp, qcprot, - transformation, libmdaxdr, util, encore_utils, - ap_clustering, spe_dimred] + pre_exts = [dcd, libdcd, dcd_time, distances, distances_omp, qcprot, + transformation, libmdaxdr, util, encore_utils, + ap_clustering, spe_dimred] cython_generated = [] if use_cython: extensions = cythonize(pre_exts) From d584884e97acd625dd6c734ef90e55c93ab80c99 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 16 Jan 2017 13:18:38 +0100 Subject: [PATCH 036/107] correct source suffix --- package/setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/setup.py b/package/setup.py index 30776eacece..23b380bbdd6 100755 --- a/package/setup.py +++ b/package/setup.py @@ -299,7 +299,7 @@ def extensions(config): include_dirs = [get_numpy_include] dcd = MDAExtension('coordinates._dcdmodule', - ['MDAnalysis/coordinates/src/dcd.c' + source_suffix], + ['MDAnalysis/coordinates/src/dcd.c'], include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], define_macros=define_macros, extra_compile_args=extra_compile_args) From 72c1007c327c933fbe9a51d6a94c0c9a489d56a2 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sat, 28 Jan 2017 19:31:05 -0700 Subject: [PATCH 037/107] ENH: New DCD reading code now appears to handle unit cell information properly. All tests in test_libdcd.py pass in python 2.7 and 3.5. --- .../MDAnalysis/lib/formats/include/readdcd.h | 26 +++++++++++++++++++ package/MDAnalysis/lib/formats/libdcd.pyx | 22 +++++++++++++++- 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index c9d0f9999c9..91bd2938055 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -431,6 +431,9 @@ static int read_dcdsubset(fio_fd fd, int N, int lowerb, int upperb, float *X, fl //int ret_val; /* Return value from read */ fio_size_t seekpos; int input_integer; + float alpha, beta, gamma; + unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; + unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; if ((num_fixed==0) || first) { int rc, range; @@ -496,6 +499,29 @@ static int read_dcdsubset(fio_fd fd, int N, int lowerb, int upperb, float *X, fl } else { return DCD_BADFORMAT; } + if (unitcell[1] >= -1.0 && unitcell[1] <= 1.0 && + unitcell[3] >= -1.0 && unitcell[3] <= 1.0 && + unitcell[4] >= -1.0 && unitcell[4] <= 1.0) { + /* This file was generated by Charmm, or by NAMD > 2.5, with the angle */ + /* cosines of the periodic cell angles written to the DCD file. */ + /* This formulation improves rounding behavior for orthogonal cells */ + /* so that the angles end up at precisely 90 degrees, unlike acos(). */ + /* (changed in MDAnalysis 0.9.0 to have NAMD ordering of the angles; */ + /* see Issue 187) */ + alpha = 90.0 - asin(unitcell[4]) * 90.0 / M_PI_2; + beta = 90.0 - asin(unitcell[3]) * 90.0 / M_PI_2; + gamma = 90.0 - asin(unitcell[1]) * 90.0 / M_PI_2; + } else { + /* This file was likely generated by NAMD 2.5 and the periodic cell */ + /* angles are specified in degrees rather than angle cosines. */ + alpha = unitcell[4]; + beta = unitcell[3]; + gamma = unitcell[1]; + } + unitcell[4] = alpha; + unitcell[3] = beta; + unitcell[1] = gamma; + return DCD_SUCCESS; } diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 9021ece52a4..376f4723063 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -17,6 +17,7 @@ from os import path import numpy as np from collections import namedtuple +from MDAnalysis.lib.mdamath import triclinic_box cimport numpy as np @@ -78,6 +79,11 @@ cdef extern from 'include/readdcd.h': float *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, int reverse_endian, int charmm) + int read_dcdsubset(fio_fd fd, int n_atoms, int lowerb, int upperb, + float *X, float *Y, float *Z, + float *unitcell, int num_fixed, + int first, int *indexes, float *fixedcoords, + int reverse_endian, int charmm) int write_dcdheader(fio_fd fd, const char *remarks, int natoms, int istart, int nsavc, double delta, int with_unitcell, int charmm); @@ -254,7 +260,11 @@ cdef class DCDFile: first_frame = self.current_frame == 0 - ok = read_dcdstep(self.fp, self.n_atoms, &x[0], + cdef int lowerb = 0 + cdef int upperb = self.n_atoms - 1 + + ok = read_dcdsubset(self.fp, self.n_atoms, lowerb, upperb, + &x[0], &y[0], &z[0], unitcell.data, self.nfixed, first_frame, self.freeind, self.fixedcoords, @@ -269,6 +279,16 @@ cdef class DCDFile: self.current_frame += 1 + _ts_order = [0, 2, 5, 4, 3, 1] + uc = np.take(unitcell, _ts_order) + if np.any(uc < 0.) or np.any(uc[3:] > 180.): + # might be new CHARMM: box matrix vectors + H = unitcell + e1, e2, e3 = H[[0,1,3]], H[[1,2,4]], H[[3,4,5]] + uc = triclinic_box(e1, e2, e3) + + unitcell = uc + return DCDFrame(xyz, unitcell) def seek(self, frame): From 15ad4a3d671389f1b035d4ae4d9e91764e02cbe8 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sun, 29 Jan 2017 19:29:32 -0700 Subject: [PATCH 038/107] ENH: Fixed an IOError message in libdcd.pyx that referred to TRR files instead of DCD files. --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 376f4723063..b755749d708 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -243,7 +243,7 @@ cdef class DCDFile: def read(self): if self.reached_eof: - raise IOError('Reached last frame in TRR, seek to 0') + raise IOError('Reached last frame in DCD, seek to 0') if not self.is_open: raise IOError("No file open") if self.mode != 'r': From 03bd8f9ca64663652fa4db31b8ca2ac5b5cbff28 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Sun, 29 Jan 2017 19:51:21 -0700 Subject: [PATCH 039/107] ENH: DCDFile now has an early draft of the write() method & there's a crude associated initial unit test. --- package/MDAnalysis/lib/formats/libdcd.pyx | 9 +++++++++ .../MDAnalysisTests/formats/test_libdcd.py | 20 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index b755749d708..695a4267abe 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -341,3 +341,12 @@ cdef class DCDFile: self.charmm) if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) + + def write(self): + if not self.is_open: + raise IOError("No file open") + if self.mode != 'w': + raise IOError('File opened in mode: {}. Writing only allowed ' + 'in mode "w"'.format('self.mode')) + + diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 3da0cc7d9a4..99db42532c6 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -138,3 +138,23 @@ def test_write_header_mode_sensitivy(self): +class DCDWriteTest(TestCase): + + def setUp(self): + self.tmpdir = tempdir.TempDir() + self.testfile = self.tmpdir.name + '/test.dcd' + self.dcdfile = DCDFile(self.testfile, 'w') + self.dcdfile_r = DCDFile(DCD, 'r') + + def tearDown(self): + try: + os.unlink(self.testfile) + except OSError: + pass + del self.tmpdir + + def test_write_mode(self): + # ensure that writing of DCD files only occurs with properly + # opened files + with self.assertRaises(IOError): + self.dcdfile_r.write() From f513c1a56ea61fbe56c45cc088279914e21a34cf Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Wed, 1 Feb 2017 17:45:27 -0700 Subject: [PATCH 040/107] ENH: added additional arguments and docstring to write method of DCDFile, based on the write method in libmdaxdr.pyx. --- package/MDAnalysis/lib/formats/libdcd.pyx | 24 ++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 695a4267abe..80f9b0fec9b 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -342,7 +342,29 @@ cdef class DCDFile: if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) - def write(self): + def write(self, xyz, velocity, forces, box, int step, float time, + float _lambda, int natoms): + """write one frame into DCD file. + + Parameters + ---------- + xyz : ndarray, shape=(n_atoms, 3) + cartesion coordinates + box : ndarray, shape=(3, 3) + Box vectors for this frame + step : int + current step number, 1 indexed + time : float + current time + _lambda : float + current lambda value + natoms : int + number of atoms in frame + + Raises + ------ + IOError + """ if not self.is_open: raise IOError("No file open") if self.mode != 'w': From 904a94e4289316c273bf921b322ce04de6196c50 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 2 Feb 2017 09:02:42 -0700 Subject: [PATCH 041/107] ENH: The write method of DCDFile now calls the header writing code first, as required. Also, fixed a unit test to account for the recently increased number of arguments accepted by the write method of DCDFile. --- package/MDAnalysis/lib/formats/libdcd.pyx | 7 +++++++ testsuite/MDAnalysisTests/formats/test_libdcd.py | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 80f9b0fec9b..84250189169 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -371,4 +371,11 @@ cdef class DCDFile: raise IOError('File opened in mode: {}. Writing only allowed ' 'in mode "w"'.format('self.mode')) + # prerequisite is a file struct for which the dcd header data + # has already been written + self._write_header() + #ok = write_dcdstep(self.fp, int curstep, int curframe, + #self.n_atoms, &x[0], + # &y[0], &z[0], + # unitcell.data, self.charmm) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 99db42532c6..4d1eed4039c 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -157,4 +157,5 @@ def test_write_mode(self): # ensure that writing of DCD files only occurs with properly # opened files with self.assertRaises(IOError): - self.dcdfile_r.write() + self.dcdfile_r.write(0, 0, 0, 0, 2, 2.5, + 0.3, 100) From 7c666c5566cfe9e21df92340f30688ae9a2276e7 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 2 Feb 2017 15:10:43 -0700 Subject: [PATCH 042/107] ENH: DCDFile unit tests updated to reflect the fact that the write method can now be called with various arguments, without raising an exception (though the actual DCDFile that is written is not quite right yet). --- .../MDAnalysisTests/formats/test_libdcd.py | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 4d1eed4039c..f30737e3599 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -6,9 +6,10 @@ from numpy.testing import assert_almost_equal from MDAnalysis.lib.formats.libdcd import DCDFile -from MDAnalysisTests.datafiles import DCD +from MDAnalysisTests.datafiles import PSF, DCD from unittest import TestCase +import MDAnalysis from MDAnalysisTests.tempdir import run_in_tempdir from MDAnalysisTests import tempdir import numpy as np @@ -145,6 +146,7 @@ def setUp(self): self.testfile = self.tmpdir.name + '/test.dcd' self.dcdfile = DCDFile(self.testfile, 'w') self.dcdfile_r = DCDFile(DCD, 'r') + self.traj = MDAnalysis.Universe(PSF, DCD).trajectory def tearDown(self): try: @@ -152,10 +154,22 @@ def tearDown(self): except OSError: pass del self.tmpdir + del self.traj def test_write_mode(self): # ensure that writing of DCD files only occurs with properly # opened files with self.assertRaises(IOError): - self.dcdfile_r.write(0, 0, 0, 0, 2, 2.5, - 0.3, 100) + self.dcdfile_r.write(np.zeros((3,3)), np.zeros(6, dtype=np.float32), + 0, 0.0, 330, 0) + + def test_write_dcd(self): + with self.dcdfile_r as f_in, self.dcdfile as f_out: + for frame in f_in: + frame = frame._asdict() + f_out.write(xyz=frame['x'], + box=frame['unitcell'], + step=0, + time=0.0, + natoms=frame['x'].shape[0], + charmm=0) From 5ea62c49e60cadf90d9934ed86358c7cb874d2ff Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 2 Feb 2017 15:13:25 -0700 Subject: [PATCH 043/107] ENH: DCDFile write method arguments now accepting python input, though the C-level method is temporarily disabled. --- package/MDAnalysis/lib/formats/libdcd.pyx | 26 +++++++++++++++++------ 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 84250189169..642801e3cbc 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -20,6 +20,7 @@ from collections import namedtuple from MDAnalysis.lib.mdamath import triclinic_box cimport numpy as np +ctypedef np.float32_t DTYPE_T from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END @@ -37,6 +38,7 @@ ctypedef int fio_fd; ctypedef off_t fio_size_t ctypedef np.float32_t DTYPE_t +ctypedef np.float64_t DTYPE_t2 DTYPE = np.float32 from libc.stdint cimport uintptr_t @@ -87,6 +89,9 @@ cdef extern from 'include/readdcd.h': int write_dcdheader(fio_fd fd, const char *remarks, int natoms, int istart, int nsavc, double delta, int with_unitcell, int charmm); + int write_dcdstep(fio_fd fd, int curstep, int curframe, + int natoms, const float *x, const float *y, const float *z, + const double *unitcell, int charmm); DCDFrame = namedtuple('DCDFrame', 'x unitcell') @@ -342,8 +347,7 @@ cdef class DCDFile: if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) - def write(self, xyz, velocity, forces, box, int step, float time, - float _lambda, int natoms): + def write(self, xyz, float [:] box, int step, float time, int natoms, int charmm): """write one frame into DCD file. Parameters @@ -356,8 +360,6 @@ cdef class DCDFile: current step number, 1 indexed time : float current time - _lambda : float - current lambda value natoms : int number of atoms in frame @@ -371,11 +373,21 @@ cdef class DCDFile: raise IOError('File opened in mode: {}. Writing only allowed ' 'in mode "w"'.format('self.mode')) + #cdef double [:,:] unitcell = box + cdef DTYPE_t[::1] x = xyz[:, 0] + cdef DTYPE_t[::1] y = xyz[:, 1] + cdef DTYPE_t[::1] z = xyz[:, 2] + # prerequisite is a file struct for which the dcd header data # has already been written self._write_header() + - #ok = write_dcdstep(self.fp, int curstep, int curframe, + if self.current_frame == 0: + self.n_atoms = xyz.shape[0] + #self.box = box + + #ok = write_dcdstep(self.fp, step, self.current_frame, #self.n_atoms, &x[0], - # &y[0], &z[0], - # unitcell.data, self.charmm) + # &y[1], &z[2], + # &box, charmm) From 41cf9aac045982bcdc158b9a5d3dc2e86e560447 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 2 Feb 2017 17:45:29 -0700 Subject: [PATCH 044/107] ENH: Reactivated the write_dcdstep C code in the write method of DCDFile. A unit test modification confirms that a binary output file is produced by the latter, although it is not yet a proper DCD file as DCDFile can't read it back in. --- package/MDAnalysis/lib/formats/libdcd.pyx | 8 ++++---- testsuite/MDAnalysisTests/formats/test_libdcd.py | 5 +++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 642801e3cbc..86a5fae0700 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -387,7 +387,7 @@ cdef class DCDFile: self.n_atoms = xyz.shape[0] #self.box = box - #ok = write_dcdstep(self.fp, step, self.current_frame, - #self.n_atoms, &x[0], - # &y[1], &z[2], - # &box, charmm) + ok = write_dcdstep(self.fp, step, self.current_frame, + self.n_atoms, &x[0], + &y[1], &z[2], + &box[0], charmm) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index f30737e3599..785252dcc43 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -173,3 +173,8 @@ def test_write_dcd(self): time=0.0, natoms=frame['x'].shape[0], charmm=0) + + with open(self.testfile, "rb") as f: + for element in f: + print(element) + From cd9c3769b77139c083b425b1b08a1bef5e899025 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 07:50:24 -0700 Subject: [PATCH 045/107] ENH: Initial cleanup of ctypedef statements in libdcd.pyx based on reviewer comments in PR#1155. --- package/MDAnalysis/lib/formats/libdcd.pyx | 29 +++++++++++------------ 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 86a5fae0700..598c235fa1a 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -20,7 +20,6 @@ from collections import namedtuple from MDAnalysis.lib.mdamath import triclinic_box cimport numpy as np -ctypedef np.float32_t DTYPE_T from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END @@ -37,8 +36,8 @@ cdef extern from 'sys/types.h': ctypedef int fio_fd; ctypedef off_t fio_size_t -ctypedef np.float32_t DTYPE_t -ctypedef np.float64_t DTYPE_t2 +ctypedef np.float32_t FLOAT_T +ctypedef np.float64_t DOUBLE_T DTYPE = np.float32 from libc.stdint cimport uintptr_t @@ -259,9 +258,9 @@ cdef class DCDFile: order='F') cdef np.ndarray unitcell = np.empty(6, dtype=DTYPE) - cdef DTYPE_t[::1] x = xyz[:, 0] - cdef DTYPE_t[::1] y = xyz[:, 1] - cdef DTYPE_t[::1] z = xyz[:, 2] + cdef FLOAT_T[::1] x = xyz[:, 0] + cdef FLOAT_T[::1] y = xyz[:, 1] + cdef FLOAT_T[::1] z = xyz[:, 2] first_frame = self.current_frame == 0 @@ -269,9 +268,9 @@ cdef class DCDFile: cdef int upperb = self.n_atoms - 1 ok = read_dcdsubset(self.fp, self.n_atoms, lowerb, upperb, - &x[0], - &y[0], &z[0], - unitcell.data, self.nfixed, first_frame, + &x[0], + &y[0], &z[0], + unitcell.data, self.nfixed, first_frame, self.freeind, self.fixedcoords, self.reverse_endian, self.charmm) if ok != 0 and ok != -4: @@ -374,9 +373,9 @@ cdef class DCDFile: 'in mode "w"'.format('self.mode')) #cdef double [:,:] unitcell = box - cdef DTYPE_t[::1] x = xyz[:, 0] - cdef DTYPE_t[::1] y = xyz[:, 1] - cdef DTYPE_t[::1] z = xyz[:, 2] + cdef FLOAT_T[::1] x = xyz[:, 0] + cdef FLOAT_T[::1] y = xyz[:, 1] + cdef FLOAT_T[::1] z = xyz[:, 2] # prerequisite is a file struct for which the dcd header data # has already been written @@ -388,6 +387,6 @@ cdef class DCDFile: #self.box = box ok = write_dcdstep(self.fp, step, self.current_frame, - self.n_atoms, &x[0], - &y[1], &z[2], - &box[0], charmm) + self.n_atoms, &x[0], + &y[1], &z[2], + &box[0], charmm) From 0081bed599bf63b45de863fd3c2b3e9f2e3df8ed Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 08:11:34 -0700 Subject: [PATCH 046/107] ENH: The DCDFile write method now requires the double type for box and unit tests have been adjusted accordingly, based on reviewer comments in PR#1155. --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 +- testsuite/MDAnalysisTests/formats/test_libdcd.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 598c235fa1a..daca9c11156 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -346,7 +346,7 @@ cdef class DCDFile: if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) - def write(self, xyz, float [:] box, int step, float time, int natoms, int charmm): + def write(self, xyz, double [:] box, int step, float time, int natoms, int charmm): """write one frame into DCD file. Parameters diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 785252dcc43..77691cf2839 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -160,7 +160,7 @@ def test_write_mode(self): # ensure that writing of DCD files only occurs with properly # opened files with self.assertRaises(IOError): - self.dcdfile_r.write(np.zeros((3,3)), np.zeros(6, dtype=np.float32), + self.dcdfile_r.write(np.zeros((3,3)), np.zeros(6, dtype=np.float64), 0, 0.0, 330, 0) def test_write_dcd(self): @@ -168,7 +168,7 @@ def test_write_dcd(self): for frame in f_in: frame = frame._asdict() f_out.write(xyz=frame['x'], - box=frame['unitcell'], + box=frame['unitcell'].astype(np.float64), step=0, time=0.0, natoms=frame['x'].shape[0], From 766f09cede73e843530ee8114253610e67700227 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 09:41:37 -0700 Subject: [PATCH 047/107] ENH: Expanded the DCDFile header writing capabilities. --- package/MDAnalysis/lib/formats/libdcd.pyx | 16 +++++++++----- .../MDAnalysisTests/formats/test_libdcd.py | 22 ++++++++++++++----- 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index daca9c11156..025c1f63b7a 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -328,7 +328,8 @@ cdef class DCDFile: raise IOError("DCD seek failed with system errno={}".format(ok)) self.current_frame = frame - def _write_header(self): + def _write_header(self, str remarks, int n_atoms, int starting_step, + int ts_between_saves, double time_step): if not self.is_open: raise IOError("No file open") @@ -336,17 +337,18 @@ cdef class DCDFile: if not self.mode=='w': raise IOError("Incorrect file mode for writing.") - cdef char c_remarks + #cdef char c_remarks cdef int len_remarks = 0 cdef int with_unitcell = 1 - ok = write_dcdheader(self.fp, &c_remarks, self.n_atoms, self.istart, - self.nsavc, self.delta, with_unitcell, + ok = write_dcdheader(self.fp, remarks, n_atoms, starting_step, + ts_between_saves, time_step, with_unitcell, self.charmm) if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) - def write(self, xyz, double [:] box, int step, float time, int natoms, int charmm): + def write(self, xyz, double [:] box, int step, float time, int natoms, + int ts_between_saves, int charmm, double time_step): """write one frame into DCD file. Parameters @@ -379,7 +381,9 @@ cdef class DCDFile: # prerequisite is a file struct for which the dcd header data # has already been written - self._write_header() + self._write_header(remarks='', n_atoms=xyz.shape[0], starting_step=step, + ts_between_saves=ts_between_saves, + time_step=time_step) if self.current_frame == 0: diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 77691cf2839..50af1e5ca0f 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -121,7 +121,9 @@ def tearDown(self): def test_write_header_crude(self): # test that _write_header() can produce a very crude # header for a new / empty file - self.dcdfile._write_header() + self.dcdfile._write_header(remarks='Crazy!', n_atoms=22, + starting_step=12, ts_between_saves=10, + time_step=0.02) self.dcdfile.close() # we're not actually asserting anything, yet @@ -135,7 +137,9 @@ def test_write_header_mode_sensitivy(self): # an exception should be raised on any attempt to use # _write_header with a DCDFile object in 'r' mode with self.assertRaises(IOError): - self.dcdfile_r._write_header() + self.dcdfile_r._write_header(remarks='Crazy!', n_atoms=22, + starting_step=12, ts_between_saves=10, + time_step=0.02) @@ -160,8 +164,14 @@ def test_write_mode(self): # ensure that writing of DCD files only occurs with properly # opened files with self.assertRaises(IOError): - self.dcdfile_r.write(np.zeros((3,3)), np.zeros(6, dtype=np.float64), - 0, 0.0, 330, 0) + self.dcdfile_r.write(xyz=np.zeros((3,3)), + box=np.zeros(6, dtype=np.float64), + step=0, + time=0.0, + natoms=330, + charmm=0, + time_step=22.2, + ts_between_saves=3) def test_write_dcd(self): with self.dcdfile_r as f_in, self.dcdfile as f_out: @@ -172,7 +182,9 @@ def test_write_dcd(self): step=0, time=0.0, natoms=frame['x'].shape[0], - charmm=0) + charmm=0, + time_step=10.3, + ts_between_saves=5) with open(self.testfile, "rb") as f: for element in f: From 94812b9dfb31a2fb96167c4d711bb35d02542d40 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 10:46:06 -0700 Subject: [PATCH 048/107] ENH: Added more unit tests for DCDFile write() method. --- .../MDAnalysisTests/formats/test_libdcd.py | 49 +++++++++++++------ 1 file changed, 33 insertions(+), 16 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 50af1e5ca0f..d6742f1109e 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -152,6 +152,19 @@ def setUp(self): self.dcdfile_r = DCDFile(DCD, 'r') self.traj = MDAnalysis.Universe(PSF, DCD).trajectory + with self.dcdfile_r as f_in, self.dcdfile as f_out: + for frame in f_in: + frame = frame._asdict() + f_out.write(xyz=frame['x'], + box=frame['unitcell'].astype(np.float64), + step=0, + time=0.0, + natoms=frame['x'].shape[0], + charmm=0, + time_step=10.3, + ts_between_saves=5) + + def tearDown(self): try: os.unlink(self.testfile) @@ -173,20 +186,24 @@ def test_write_mode(self): time_step=22.2, ts_between_saves=3) - def test_write_dcd(self): - with self.dcdfile_r as f_in, self.dcdfile as f_out: - for frame in f_in: - frame = frame._asdict() - f_out.write(xyz=frame['x'], - box=frame['unitcell'].astype(np.float64), - step=0, - time=0.0, - natoms=frame['x'].shape[0], - charmm=0, - time_step=10.3, - ts_between_saves=5) + def test_written_dcd_coordinate_data_shape(self): + # written coord shape should match for all frames + expected = (3341, 3) + with DCDFile(self.testfile) as f: + for frame in f: + xyz = f.read()[0] + assert_equal(xyz.shape, expected) - with open(self.testfile, "rb") as f: - for element in f: - print(element) - + def test_written_unit_cell(self): + # written unit cell dimensions should match for all frames + expected = np.array([ 0., 0., 0., 90., 90., 90.], + dtype=np.float32) + with DCDFile(self.testfile) as f: + for frame in f: + unitcell = f.read()[1] + assert_equal(unitcell, expected) + + def test_written_num_frames(self): + expected = 98 + with DCDFile(self.testfile) as f: + assert_equal(len(f), expected) From 1ca6661758c973860ac024b32da98dd440e94230 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Fri, 3 Feb 2017 17:03:54 +0100 Subject: [PATCH 049/107] use consistent double dimensions --- package/MDAnalysis/lib/formats/include/readdcd.h | 12 ++++++------ package/MDAnalysis/lib/formats/libdcd.pyx | 13 +++++++------ 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index 91bd2938055..f1c521d72fa 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -70,7 +70,7 @@ static int read_dcdheader(fio_fd fd, int *natoms, int *nsets, int *istart, int * * unitcell holds unit cell data if present. */ static int read_dcdstep(fio_fd fd, int natoms, float *x, float *y, float *z, - float *unitcell, int nfixed, int first, int *freeind, + double *unitcell, int nfixed, int first, int *freeind, float *fixedcoords, int reverse, int charmm); /* @@ -89,7 +89,7 @@ static int read_dcdstep(fio_fd fd, int natoms, float *x, float *y, float *z, * unitcell holds unit cell data if present. */ static int read_dcdsubset(fio_fd fd, int natoms, int lowerb, int upperb, float *x, float *y, float *z, - float *unitcell, int nfixed, int first, int *freeind, + double *unitcell, int nfixed, int first, int *freeind, float *fixedcoords, int reverse, int charmm); /* @@ -357,7 +357,7 @@ static int read_dcdheader(fio_fd fd, int *N, int *NSET, int *ISTART, } static int read_charmm_extrablock(fio_fd fd, int charmm, int reverseEndian, - float *unitcell) { + double *unitcell) { int i, input_integer; if ((charmm & DCD_IS_CHARMM) && (charmm & DCD_HAS_EXTRA_BLOCK)) { @@ -370,7 +370,7 @@ static int read_charmm_extrablock(fio_fd fd, int charmm, int reverseEndian, if (fio_fread(tmp, 48, 1, fd) != 1) return DCD_BADREAD; if (reverseEndian) swap8_aligned(tmp, 6); - for (i=0; i<6; i++) unitcell[i] = (float)tmp[i]; + for (i=0; i<6; i++) unitcell[i] = tmp[i]; } else { /* unrecognized block, just skip it */ if (fio_fseek(fd, input_integer, FIO_SEEK_CUR)) return DCD_BADREAD; @@ -426,7 +426,7 @@ static int read_charmm_4dim(fio_fd fd, int charmm, int reverseEndian) { /* XXX This is completely broken for fixed coordinates */ static int read_dcdsubset(fio_fd fd, int N, int lowerb, int upperb, float *X, float *Y, float *Z, - float *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, + double *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, int reverseEndian, int charmm) { //int ret_val; /* Return value from read */ fio_size_t seekpos; @@ -526,7 +526,7 @@ static int read_dcdsubset(fio_fd fd, int N, int lowerb, int upperb, float *X, fl } static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, - float *unitcell, int num_fixed, + double *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, int reverseEndian, int charmm) { int ret_val; /* Return value from read */ diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 025c1f63b7a..8fa15720ebf 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -38,7 +38,8 @@ ctypedef off_t fio_size_t ctypedef np.float32_t FLOAT_T ctypedef np.float64_t DOUBLE_T -DTYPE = np.float32 +FLOAT = np.float32 +DOUBLE = np.float64 from libc.stdint cimport uintptr_t from libc.stdlib cimport free @@ -77,12 +78,12 @@ cdef extern from 'include/readdcd.h': char **remarks, int *len_remarks) void close_dcd_read(int *freeind, float *fixedcoords) int read_dcdstep(fio_fd fd, int n_atoms, float *X, float *Y, float *Z, - float *unitcell, int num_fixed, + double *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, int reverse_endian, int charmm) int read_dcdsubset(fio_fd fd, int n_atoms, int lowerb, int upperb, float *X, float *Y, float *Z, - float *unitcell, int num_fixed, + double *unitcell, int num_fixed, int first, int *indexes, float *fixedcoords, int reverse_endian, int charmm) int write_dcdheader(fio_fd fd, const char *remarks, int natoms, @@ -254,9 +255,9 @@ cdef class DCDFile: raise IOError('File opened in mode: {}. Reading only allow ' 'in mode "r"'.format('self.mode')) - cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=DTYPE, + cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=FLOAT, order='F') - cdef np.ndarray unitcell = np.empty(6, dtype=DTYPE) + cdef np.ndarray unitcell = np.empty(6, dtype=DOUBLE) cdef FLOAT_T[::1] x = xyz[:, 0] cdef FLOAT_T[::1] y = xyz[:, 1] @@ -270,7 +271,7 @@ cdef class DCDFile: ok = read_dcdsubset(self.fp, self.n_atoms, lowerb, upperb, &x[0], &y[0], &z[0], - unitcell.data, self.nfixed, first_frame, + unitcell.data, self.nfixed, first_frame, self.freeind, self.fixedcoords, self.reverse_endian, self.charmm) if ok != 0 and ok != -4: From 61f982826d4225a92354fabf4dac57a830d59ab9 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 11:41:48 -0700 Subject: [PATCH 050/107] ENH: Added 2 new unit tests for DCDFile writing behaviour. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index d6742f1109e..288695a9806 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -207,3 +207,16 @@ def test_written_num_frames(self): expected = 98 with DCDFile(self.testfile) as f: assert_equal(len(f), expected) + + def test_written_seek(self): + # ensure that we can seek properly on written DCD file + new_frame = 91 + with DCDFile(self.testfile) as f: + f.seek(new_frame) + assert_equal(f.tell(), new_frame) + + def test_written_zero_based_frames(self): + # ensure that the first written DCD frame is 0 + expected_frame = 0 + with DCDFile(self.testfile) as f: + assert_equal(f.tell(), expected_frame) From 078d7065dafa431ade3dc7ecc2fba37037274537 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 14:08:55 -0700 Subject: [PATCH 051/107] ENH: Added initial code to allow REMARKS section of DCD file written by DCDFile to be user-controlled. Currently, the title and time fields from the C-header file seem to get intermingled in the .remarks property of the DCDFile read back in. --- package/MDAnalysis/lib/formats/libdcd.pyx | 4 ++-- testsuite/MDAnalysisTests/formats/test_libdcd.py | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 8fa15720ebf..b41193354b7 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -349,7 +349,7 @@ cdef class DCDFile: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) def write(self, xyz, double [:] box, int step, float time, int natoms, - int ts_between_saves, int charmm, double time_step): + int ts_between_saves, int charmm, double time_step, str remarks): """write one frame into DCD file. Parameters @@ -382,7 +382,7 @@ cdef class DCDFile: # prerequisite is a file struct for which the dcd header data # has already been written - self._write_header(remarks='', n_atoms=xyz.shape[0], starting_step=step, + self._write_header(remarks=remarks, n_atoms=xyz.shape[0], starting_step=step, ts_between_saves=ts_between_saves, time_step=time_step) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 288695a9806..54c14a07cda 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -161,8 +161,9 @@ def setUp(self): time=0.0, natoms=frame['x'].shape[0], charmm=0, - time_step=10.3, - ts_between_saves=5) + time_step=f_in.delta, + ts_between_saves=5, + remarks=f_in.remarks) def tearDown(self): @@ -184,7 +185,8 @@ def test_write_mode(self): natoms=330, charmm=0, time_step=22.2, - ts_between_saves=3) + ts_between_saves=3, + remarks='') def test_written_dcd_coordinate_data_shape(self): # written coord shape should match for all frames @@ -220,3 +222,10 @@ def test_written_zero_based_frames(self): expected_frame = 0 with DCDFile(self.testfile) as f: assert_equal(f.tell(), expected_frame) + + def test_written_remarks(self): + # ensure that the REMARKS field *can be* preserved exactly + # in the written DCD file + expected = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' + with DCDFile(self.testfile) as f: + assert_equal(f.remarks, expected) From 0e91cc5a62c7074b49ec09b721820def8d3a7edb Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 14:34:39 -0700 Subject: [PATCH 052/107] ENH: General cleanup of DCDFile write() method arguments in code proper and unit tests. --- package/MDAnalysis/lib/formats/libdcd.pyx | 3 +-- testsuite/MDAnalysisTests/formats/test_libdcd.py | 6 ++---- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index b41193354b7..f326728411f 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -348,7 +348,7 @@ cdef class DCDFile: if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) - def write(self, xyz, double [:] box, int step, float time, int natoms, + def write(self, xyz, double [:] box, int step, int natoms, int ts_between_saves, int charmm, double time_step, str remarks): """write one frame into DCD file. @@ -389,7 +389,6 @@ cdef class DCDFile: if self.current_frame == 0: self.n_atoms = xyz.shape[0] - #self.box = box ok = write_dcdstep(self.fp, step, self.current_frame, self.n_atoms, &x[0], diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 54c14a07cda..4169c4dfe66 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -157,12 +157,11 @@ def setUp(self): frame = frame._asdict() f_out.write(xyz=frame['x'], box=frame['unitcell'].astype(np.float64), - step=0, - time=0.0, + step=f_in.istart, natoms=frame['x'].shape[0], charmm=0, time_step=f_in.delta, - ts_between_saves=5, + ts_between_saves=f_in.nsavc, remarks=f_in.remarks) @@ -181,7 +180,6 @@ def test_write_mode(self): self.dcdfile_r.write(xyz=np.zeros((3,3)), box=np.zeros(6, dtype=np.float64), step=0, - time=0.0, natoms=330, charmm=0, time_step=22.2, From 24414506df5e5f2012c16f232e3e3034bcb0ba9b Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 3 Feb 2017 16:27:50 -0700 Subject: [PATCH 053/107] ENH: Removed an extraneous variable from the setUp of DCDWriteTest. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 4169c4dfe66..49fd7ee6ec3 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -150,9 +150,9 @@ def setUp(self): self.testfile = self.tmpdir.name + '/test.dcd' self.dcdfile = DCDFile(self.testfile, 'w') self.dcdfile_r = DCDFile(DCD, 'r') - self.traj = MDAnalysis.Universe(PSF, DCD).trajectory with self.dcdfile_r as f_in, self.dcdfile as f_out: + print('remarks:', f_in.remarks.decode()) for frame in f_in: frame = frame._asdict() f_out.write(xyz=frame['x'], @@ -171,7 +171,6 @@ def tearDown(self): except OSError: pass del self.tmpdir - del self.traj def test_write_mode(self): # ensure that writing of DCD files only occurs with properly From 5fd4a84bf0886972f65b4947d2fb2a110b2defe6 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Tue, 7 Feb 2017 15:51:52 -0700 Subject: [PATCH 054/107] ENH: python 2/3 string handling compatiblity fixes for DCDFile. --- package/MDAnalysis/lib/formats/libdcd.pyx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index f326728411f..f36f10867be 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -18,6 +18,7 @@ from os import path import numpy as np from collections import namedtuple from MDAnalysis.lib.mdamath import triclinic_box +import six cimport numpy as np @@ -329,7 +330,7 @@ cdef class DCDFile: raise IOError("DCD seek failed with system errno={}".format(ok)) self.current_frame = frame - def _write_header(self, str remarks, int n_atoms, int starting_step, + def _write_header(self, remarks, int n_atoms, int starting_step, int ts_between_saves, double time_step): if not self.is_open: @@ -342,6 +343,9 @@ cdef class DCDFile: cdef int len_remarks = 0 cdef int with_unitcell = 1 + if isinstance(remarks, six.string_types): + remarks = bytearray(remarks, 'ascii') + ok = write_dcdheader(self.fp, remarks, n_atoms, starting_step, ts_between_saves, time_step, with_unitcell, self.charmm) @@ -349,7 +353,7 @@ cdef class DCDFile: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) def write(self, xyz, double [:] box, int step, int natoms, - int ts_between_saves, int charmm, double time_step, str remarks): + int ts_between_saves, int charmm, double time_step, remarks): """write one frame into DCD file. Parameters From bfe3895083a114516d77fa51e3c4498445c52b38 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Wed, 8 Feb 2017 14:28:27 -0700 Subject: [PATCH 055/107] ENH: DCDFile writing of REMARKS section has been adjusted to allow specification of a properly formatted string up to 160 chars in length. --- package/MDAnalysis/lib/formats/include/readdcd.h | 14 ++++---------- testsuite/MDAnalysisTests/formats/test_libdcd.py | 8 ++++++-- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index f1c521d72fa..2c3e015aa73 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -718,10 +718,9 @@ static int write_dcdheader(fio_fd fd, const char *remarks, int N, int charmm) { int out_integer; float out_float; - char title_string[200]; + char title_string[281]; time_t cur_time; struct tm *tmbuf; - char time_str[81]; out_integer = 84; WRITE(fd, (char *) & out_integer, sizeof(int)); @@ -764,14 +763,9 @@ static int write_dcdheader(fio_fd fd, const char *remarks, int N, fio_write_int32(fd, 164); fio_write_int32(fd, 2); - strncpy(title_string, remarks, 80); - title_string[79] = '\0'; - WRITE(fd, title_string, 80); - - cur_time=time(NULL); - tmbuf=localtime(&cur_time); - strftime(time_str, 80, "REMARKS Created %d %B, %Y at %R", tmbuf); - WRITE(fd, time_str, 80); + strncpy(title_string, remarks, 281); + title_string[160] = '\0'; + WRITE(fd, title_string, 160); fio_write_int32(fd, 164); fio_write_int32(fd, 4); diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 49fd7ee6ec3..69d612a353d 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -152,7 +152,7 @@ def setUp(self): self.dcdfile_r = DCDFile(DCD, 'r') with self.dcdfile_r as f_in, self.dcdfile as f_out: - print('remarks:', f_in.remarks.decode()) + print('remarks read from input:', f_in.remarks.decode()) for frame in f_in: frame = frame._asdict() f_out.write(xyz=frame['x'], @@ -223,6 +223,10 @@ def test_written_zero_based_frames(self): def test_written_remarks(self): # ensure that the REMARKS field *can be* preserved exactly # in the written DCD file + # currently, capped at writing / matching + # the first 160 characters expected = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' with DCDFile(self.testfile) as f: - assert_equal(f.remarks, expected) + print('len(expected):', len(expected)) + print('len(f.remarks):', len(f.remarks)) + assert_equal(f.remarks.decode(), expected[:160]) From e1b17ef4f68b0f7720d979c5239b4f469f5d6103 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 9 Feb 2017 10:12:44 -0700 Subject: [PATCH 056/107] ENH: Added 3 new writing-related tests for the new DCDFile object. --- .../MDAnalysisTests/formats/test_libdcd.py | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 69d612a353d..6b69f6ba012 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -230,3 +230,24 @@ def test_written_remarks(self): print('len(expected):', len(expected)) print('len(f.remarks):', len(f.remarks)) assert_equal(f.remarks.decode(), expected[:160]) + + def test_written_nsavc(self): + # ensure that nsavc, the timesteps between frames written + # to file, is preserved in the written DCD file + expected = self.dcdfile_r.nsavc + actual = DCDFile(self.testfile).nsavc + assert_equal(actual, expected) + + def test_written_istart(self): + # ensure that istart, the starting timestep, is preserved + # in the written DCD file + expected = self.dcdfile_r.istart + actual = DCDFile(self.testfile).istart + assert_equal(actual, expected) + + def test_written_delta(self): + # ensure that delta, the trajectory timestep, is preserved in + # the written DCD file + expected = self.dcdfile_r.delta + actual = DCDFile(self.testfile).delta + assert_equal(actual, expected) From 78537bc1707a310d39adc237cd977c4ea2e3c4ac Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 9 Feb 2017 11:31:40 -0700 Subject: [PATCH 057/107] ENH: The number of 80 character title strings written by default to new DCD files has been increased to 3, allowing exact preservation of the remarks section from the MDA test DCD file when writing. --- package/MDAnalysis/lib/formats/include/readdcd.h | 10 +++++----- testsuite/MDAnalysisTests/formats/test_libdcd.py | 5 +---- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index 2c3e015aa73..cc20759f2ac 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -718,7 +718,7 @@ static int write_dcdheader(fio_fd fd, const char *remarks, int N, int charmm) { int out_integer; float out_float; - char title_string[281]; + char title_string[241]; time_t cur_time; struct tm *tmbuf; @@ -761,11 +761,11 @@ static int write_dcdheader(fio_fd fd, const char *remarks, int N, } fio_write_int32(fd, 84); fio_write_int32(fd, 164); - fio_write_int32(fd, 2); + fio_write_int32(fd, 3); /* the number of 80 character title strings */ - strncpy(title_string, remarks, 281); - title_string[160] = '\0'; - WRITE(fd, title_string, 160); + strncpy(title_string, remarks, 241); + title_string[240] = '\0'; + WRITE(fd, title_string, 240); fio_write_int32(fd, 164); fio_write_int32(fd, 4); diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 6b69f6ba012..c96a1ca7fa2 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -152,7 +152,6 @@ def setUp(self): self.dcdfile_r = DCDFile(DCD, 'r') with self.dcdfile_r as f_in, self.dcdfile as f_out: - print('remarks read from input:', f_in.remarks.decode()) for frame in f_in: frame = frame._asdict() f_out.write(xyz=frame['x'], @@ -223,13 +222,11 @@ def test_written_zero_based_frames(self): def test_written_remarks(self): # ensure that the REMARKS field *can be* preserved exactly # in the written DCD file - # currently, capped at writing / matching - # the first 160 characters expected = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' with DCDFile(self.testfile) as f: print('len(expected):', len(expected)) print('len(f.remarks):', len(f.remarks)) - assert_equal(f.remarks.decode(), expected[:160]) + assert_equal(f.remarks.decode(), expected) def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written From 92d00ae17d2ae11afc80dbe9f9a73af1bcdc0264 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 10 Feb 2017 13:39:06 -0700 Subject: [PATCH 058/107] ENH: DCDFile self.n_frames property is now determined by physical iteration instead of byte accounting. --- package/MDAnalysis/lib/formats/libdcd.pyx | 24 +++++++++++------------ 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index f36f10867be..db6c18736da 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -218,7 +218,7 @@ cdef class DCDFile: py_remarks = "" self.n_dims = 3 if not self.charmm & DCD_HAS_4DIMS else 4 - self.n_frames = self._estimate_n_frames() + self._estimate_n_frames() self.b_read_header = True # make sure fixed atoms have been read @@ -228,18 +228,13 @@ cdef class DCDFile: return py_remarks def _estimate_n_frames(self): - extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 - self.firstframesize = self.n_atoms + 2 * self.n_dims * sizeof(float) + extrablocksize - self.framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + - extrablocksize) - filesize = path.getsize(self.fname) - # It's safe to use ftell, even though ftell returns a long, because the - # header size is < 4GB. - self.header_size = fio_ftell(self.fp) - # TODO: check that nframessize is larger then 0, the c-implementation - # used to do that. - nframessize = filesize - self.header_size - self.firstframesize - return nframessize / self.framesize + 1 + while 1: + try: + self.read() + except StopIteration: + self.n_frames = self.current_frame + self.seek(0) + break @property def periodic(self): @@ -315,6 +310,9 @@ cdef class DCDFile: If you seek for more frames than are available or if the seek fails (the low-level system error is reported). """ + if frame < 0: + raise IOError('Attempted seek with frame < 0') + if frame >= self.n_frames: raise IOError('Trying to seek over max number of frames') self.reached_eof = False From a7bac17b14884de53c483033bc39a05cdd5fd692 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 10 Feb 2017 17:46:12 -0700 Subject: [PATCH 059/107] ENH: reverting frame count changes in DCDFile. --- package/MDAnalysis/lib/formats/libdcd.pyx | 24 ++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index db6c18736da..f36f10867be 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -218,7 +218,7 @@ cdef class DCDFile: py_remarks = "" self.n_dims = 3 if not self.charmm & DCD_HAS_4DIMS else 4 - self._estimate_n_frames() + self.n_frames = self._estimate_n_frames() self.b_read_header = True # make sure fixed atoms have been read @@ -228,13 +228,18 @@ cdef class DCDFile: return py_remarks def _estimate_n_frames(self): - while 1: - try: - self.read() - except StopIteration: - self.n_frames = self.current_frame - self.seek(0) - break + extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 + self.firstframesize = self.n_atoms + 2 * self.n_dims * sizeof(float) + extrablocksize + self.framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + + extrablocksize) + filesize = path.getsize(self.fname) + # It's safe to use ftell, even though ftell returns a long, because the + # header size is < 4GB. + self.header_size = fio_ftell(self.fp) + # TODO: check that nframessize is larger then 0, the c-implementation + # used to do that. + nframessize = filesize - self.header_size - self.firstframesize + return nframessize / self.framesize + 1 @property def periodic(self): @@ -310,9 +315,6 @@ cdef class DCDFile: If you seek for more frames than are available or if the seek fails (the low-level system error is reported). """ - if frame < 0: - raise IOError('Attempted seek with frame < 0') - if frame >= self.n_frames: raise IOError('Trying to seek over max number of frames') self.reached_eof = False From 03b0d31a20356244f0902655685dc4ff6f81b7f9 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 10 Feb 2017 18:01:30 -0700 Subject: [PATCH 060/107] ENH: the DCDFile firstframesize property has been patched to the apparently correct arithmetic. --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index f36f10867be..5049892a3d4 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -229,7 +229,7 @@ cdef class DCDFile: def _estimate_n_frames(self): extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 - self.firstframesize = self.n_atoms + 2 * self.n_dims * sizeof(float) + extrablocksize + self.firstframesize = (self.n_atoms + 2) * self.n_dims * sizeof(float) + extrablocksize self.framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + extrablocksize) filesize = path.getsize(self.fname) From 54de1d1d699a4466abedaea3e46c7e1cc29ed3c5 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Mon, 13 Feb 2017 09:31:57 -0700 Subject: [PATCH 061/107] ENH: Added unit tests for DCD file byte striding arithmetic; exposed corresponding DCDFile class instance attributes where necessary. --- package/MDAnalysis/lib/formats/libdcd.pyx | 6 ++-- .../MDAnalysisTests/formats/test_libdcd.py | 33 +++++++++++++++++++ 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 5049892a3d4..3fd8e6a8a58 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -117,9 +117,9 @@ cdef class DCDFile: cdef int current_frame cdef readonly remarks cdef int reached_eof - cdef int firstframesize - cdef int framesize - cdef int header_size + cdef readonly int firstframesize + cdef readonly int framesize + cdef readonly int header_size def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index c96a1ca7fa2..8410b4ea878 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -248,3 +248,36 @@ def test_written_delta(self): expected = self.dcdfile_r.delta actual = DCDFile(self.testfile).delta assert_equal(actual, expected) + +class DCDByteArithmeticTest(TestCase): + + def setUp(self): + self.dcdfile = DCDFile(DCD, 'r') + self.filesize = os.path.getsize(DCD) + + def test_relative_frame_sizes(self): + # the first frame of a DCD file should always be >= in size + # to subsequent frames, as the first frame contains the same + # atoms + (optional) fixed atoms + first_frame_size = self.dcdfile.firstframesize + general_frame_size = self.dcdfile.framesize + self.assertGreaterEqual(first_frame_size, general_frame_size) + + def test_file_size_breakdown(self): + # the size of a DCD file is equivalent to the sum of the header + # size, first frame size, and (N - 1 frames) * size per general + # frame + expected = self.filesize + actual = self.dcdfile.header_size + self.dcdfile.firstframesize + \ + ((self.dcdfile.n_frames - 1) * self.dcdfile.framesize) + assert_equal(actual, expected) + + def test_nframessize_int(self): + # require that the (nframessize / framesize) value used by DCDFile + # is an integer (because nframessize / framesize + 1 = total frames, + # which must also be an int) + nframessize = self.filesize - self.dcdfile.header_size - \ + self.dcdfile.firstframesize + self.assertTrue(float(nframessize) % float(self.dcdfile.framesize) == 0) + + From f95e87b36236f88bcd0ce2424025cfe6328309c9 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Mon, 13 Feb 2017 11:52:46 -0700 Subject: [PATCH 062/107] ENH: Added unit tests for NAMD-format DCD file input to DCDFile. Minor adjustments to code to handle new format. One unit test currently fails -- writing the NAMD-formatted REMARKS section to a new DCD file. --- package/MDAnalysis/lib/formats/libdcd.pyx | 5 +- .../MDAnalysisTests/formats/test_libdcd.py | 125 ++++++++++++++---- 2 files changed, 102 insertions(+), 28 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 3fd8e6a8a58..a98b4a9936c 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -344,7 +344,10 @@ cdef class DCDFile: cdef int with_unitcell = 1 if isinstance(remarks, six.string_types): - remarks = bytearray(remarks, 'ascii') + try: + remarks = bytearray(remarks, 'ascii') + except UnicodeDecodeError: + remarks = bytearray(remarks) ok = write_dcdheader(self.fp, remarks, n_atoms, starting_step, ts_between_saves, time_step, with_unitcell, diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 8410b4ea878..79bca24790e 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -6,7 +6,8 @@ from numpy.testing import assert_almost_equal from MDAnalysis.lib.formats.libdcd import DCDFile -from MDAnalysisTests.datafiles import PSF, DCD +from MDAnalysisTests.datafiles import (PSF, DCD, DCD_NAMD_TRICLINIC, + PSF_NAMD_TRICLINIC) from unittest import TestCase import MDAnalysis @@ -19,6 +20,11 @@ class DCDReadFrameTest(TestCase): def setUp(self): self.dcdfile = DCDFile(DCD) + self.natoms = 3341 + self.traj_length = 98 + self.new_frame = 91 + self.context_frame = 22 + self.num_iters = 3 def tearDown(self): del self.dcdfile @@ -28,7 +34,7 @@ def test_read_coords(self): # MDAnalysis implementation of DCD file handling dcd_frame = self.dcdfile.read() xyz = dcd_frame[0] - assert_equal(xyz.shape, (3341, 3)) + assert_equal(xyz.shape, (self.natoms, 3)) def test_read_unit_cell(self): # confirm unit cell read against result from previous @@ -46,9 +52,8 @@ def test_seek_over_max(self): def test_seek_normal(self): # frame seek within range is tested - new_frame = 91 - self.dcdfile.seek(new_frame) - assert_equal(self.dcdfile.tell(), new_frame) + self.dcdfile.seek(self.new_frame) + assert_equal(self.dcdfile.tell(), self.new_frame) def test_seek_negative(self): # frame seek with negative number @@ -56,25 +61,26 @@ def test_seek_negative(self): self.dcdfile.seek(-78) def test_iteration(self): - self.dcdfile.__next__() - self.dcdfile.__next__() - self.dcdfile.__next__() - expected_frame = 3 - assert_equal(self.dcdfile.tell(), expected_frame) + expected = 0 + while self.num_iters > 0: + self.dcdfile.__next__() + self.num_iters -= 1 + expected += 1 + + assert_equal(self.dcdfile.tell(), expected) def test_zero_based_frames(self): expected_frame = 0 assert_equal(self.dcdfile.tell(), expected_frame) def test_length_traj(self): - expected = 98 + expected = self.traj_length assert_equal(len(self.dcdfile), expected) def test_context_manager(self): - frame = 22 with self.dcdfile as f: - f.seek(frame) - assert_equal(f.tell(), frame) + f.seek(self.context_frame) + assert_equal(f.tell(), self.context_frame) @raises(IOError) def test_open_wrong_mode(self): @@ -85,7 +91,7 @@ def test_raise_not_existing(self): DCDFile('foo') def test_n_atoms(self): - assert_equal(self.dcdfile.n_atoms, 3341) + assert_equal(self.dcdfile.n_atoms, self.natoms) @raises(IOError) @run_in_tempdir() @@ -150,6 +156,10 @@ def setUp(self): self.testfile = self.tmpdir.name + '/test.dcd' self.dcdfile = DCDFile(self.testfile, 'w') self.dcdfile_r = DCDFile(DCD, 'r') + self.natoms = 3341 + self.expected_frames = 98 + self.seek_frame = 91 + self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' with self.dcdfile_r as f_in, self.dcdfile as f_out: for frame in f_in: @@ -186,9 +196,13 @@ def test_write_mode(self): def test_written_dcd_coordinate_data_shape(self): # written coord shape should match for all frames - expected = (3341, 3) + expected = (self.natoms, 3) with DCDFile(self.testfile) as f: - for frame in f: + if f.n_frames > 1: + for frame in f: + xyz = f.read()[0] + assert_equal(xyz.shape, expected) + else: xyz = f.read()[0] assert_equal(xyz.shape, expected) @@ -197,21 +211,23 @@ def test_written_unit_cell(self): expected = np.array([ 0., 0., 0., 90., 90., 90.], dtype=np.float32) with DCDFile(self.testfile) as f: - for frame in f: + if f.n_frames > 1: + for frame in f: + unitcell = f.read()[1] + assert_equal(unitcell, expected) + else: unitcell = f.read()[1] assert_equal(unitcell, expected) def test_written_num_frames(self): - expected = 98 with DCDFile(self.testfile) as f: - assert_equal(len(f), expected) + assert_equal(len(f), self.expected_frames) def test_written_seek(self): # ensure that we can seek properly on written DCD file - new_frame = 91 with DCDFile(self.testfile) as f: - f.seek(new_frame) - assert_equal(f.tell(), new_frame) + f.seek(self.seek_frame) + assert_equal(f.tell(), self.seek_frame) def test_written_zero_based_frames(self): # ensure that the first written DCD frame is 0 @@ -222,11 +238,10 @@ def test_written_zero_based_frames(self): def test_written_remarks(self): # ensure that the REMARKS field *can be* preserved exactly # in the written DCD file - expected = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' with DCDFile(self.testfile) as f: - print('len(expected):', len(expected)) - print('len(f.remarks):', len(f.remarks)) - assert_equal(f.remarks.decode(), expected) + print('remarks before decode:', f.remarks) + print('remarks after decode:', f.remarks) + assert_equal(f.remarks.decode(), self.expected_remarks) def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written @@ -281,3 +296,59 @@ def test_nframessize_int(self): self.assertTrue(float(nframessize) % float(self.dcdfile.framesize) == 0) +class DCDByteArithmeticTestNAMD(DCDByteArithmeticTest, TestCase): + # repeat byte arithmetic tests for NAMD format DCD + + def setUp(self): + self.dcdfile = DCDFile(DCD_NAMD_TRICLINIC, 'r') + self.filesize = os.path.getsize(DCD_NAMD_TRICLINIC) + + +class DCDWriteTestNAMD(DCDWriteTest, TestCase): + # repeat writing tests for NAMD format DCD + + def setUp(self): + self.tmpdir = tempdir.TempDir() + self.testfile = self.tmpdir.name + '/test.dcd' + self.dcdfile = DCDFile(self.testfile, 'w') + self.dcdfile_r = DCDFile(DCD_NAMD_TRICLINIC, 'r') + self.natoms = 5545 + self.expected_frames = 1 + self.seek_frame = 0 + self.expected_remarks = '''Created by DCD + plugin\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00REMARKS + Created 06 July, 2014 at + 17:29\x00\x00\xd0Y5\x14\xff~\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00CORD\x03\x00\x00\x00,\x01\x00\x00\xe8\x03\x00\x00\xe8\x03\x00\x00\xe0\x93\x04\x00''' + + with self.dcdfile_r as f_in, self.dcdfile as f_out: + print('NAMD remarks:', f_in.remarks) + for frame in f_in: + frame = frame._asdict() + f_out.write(xyz=frame['x'], + box=frame['unitcell'].astype(np.float64), + step=f_in.istart, + natoms=frame['x'].shape[0], + charmm=0, + time_step=f_in.delta, + ts_between_saves=f_in.nsavc, + remarks=f_in.remarks) + +class DCDWriteHeaderTestNAMD(DCDWriteHeaderTest, TestCase): + # repeat header writing tests for NAMD format DCD + + def setUp(self): + self.tmpdir = tempdir.TempDir() + self.testfile = self.tmpdir.name + '/test.dcd' + self.dcdfile = DCDFile(self.testfile, 'w') + self.dcdfile_r = DCDFile(DCD_NAMD_TRICLINIC, 'r') + +class DCDReadFrameTestNAMD(DCDReadFrameTest, TestCase): + # repeat frame reading tests for NAMD format DCD + + def setUp(self): + self.dcdfile = DCDFile(DCD_NAMD_TRICLINIC) + self.natoms = 5545 + self.traj_length = 1 + self.new_frame = 0 + self.context_frame = 0 + self.num_iters = 0 From b04d3522020f0a420f29ac72ce12b54254dbbd9d Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 9 Mar 2017 13:44:26 -0700 Subject: [PATCH 063/107] ENH: Added more thorough / correct unit test code for header remarks section string handling in test_libdcd.py, and removed extraneous debug print statements. --- .../MDAnalysisTests/formats/test_libdcd.py | 26 ++++++++++++------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 79bca24790e..e36271f4bf2 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -25,10 +25,23 @@ def setUp(self): self.new_frame = 91 self.context_frame = 22 self.num_iters = 3 + self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' def tearDown(self): del self.dcdfile + def test_header_remarks(self): + # confirm correct header remarks section reading + with self.dcdfile as f: + list_chars = [] + for element in f.remarks: + list_chars.append(element) + + list_chars = [] + for element in self.expected_remarks: + list_chars.append(element) + self.assertEqual(len(f.remarks), len(self.expected_remarks)) + def test_read_coords(self): # confirm shape of coordinate data against result from previous # MDAnalysis implementation of DCD file handling @@ -239,9 +252,7 @@ def test_written_remarks(self): # ensure that the REMARKS field *can be* preserved exactly # in the written DCD file with DCDFile(self.testfile) as f: - print('remarks before decode:', f.remarks) - print('remarks after decode:', f.remarks) - assert_equal(f.remarks.decode(), self.expected_remarks) + assert_equal(f.remarks, self.expected_remarks) def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written @@ -315,15 +326,9 @@ def setUp(self): self.natoms = 5545 self.expected_frames = 1 self.seek_frame = 0 - self.expected_remarks = '''Created by DCD - plugin\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00REMARKS - Created 06 July, 2014 at - 17:29\x00\x00\xd0Y5\x14\xff~\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00CORD\x03\x00\x00\x00,\x01\x00\x00\xe8\x03\x00\x00\xe8\x03\x00\x00\xe0\x93\x04\x00''' + self.expected_remarks = '''Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,''' with self.dcdfile_r as f_in, self.dcdfile as f_out: - print('NAMD remarks:', f_in.remarks) - for frame in f_in: - frame = frame._asdict() f_out.write(xyz=frame['x'], box=frame['unitcell'].astype(np.float64), step=f_in.istart, @@ -352,3 +357,4 @@ def setUp(self): self.new_frame = 0 self.context_frame = 0 self.num_iters = 0 + self.expected_remarks = 'Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,' From 8663bbb8369de1894ca3accce505ed30f393bec6 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 9 Mar 2017 13:51:05 -0700 Subject: [PATCH 064/107] ENH: patched minor error from accidental deletion in test suite for new DCD code. --- .../MDAnalysisTests/formats/test_libdcd.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index e36271f4bf2..cef8a952717 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -329,14 +329,16 @@ def setUp(self): self.expected_remarks = '''Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,''' with self.dcdfile_r as f_in, self.dcdfile as f_out: - f_out.write(xyz=frame['x'], - box=frame['unitcell'].astype(np.float64), - step=f_in.istart, - natoms=frame['x'].shape[0], - charmm=0, - time_step=f_in.delta, - ts_between_saves=f_in.nsavc, - remarks=f_in.remarks) + for frame in f_in: + frame = frame._asdict() + f_out.write(xyz=frame['x'], + box=frame['unitcell'].astype(np.float64), + step=f_in.istart, + natoms=frame['x'].shape[0], + charmm=0, + time_step=f_in.delta, + ts_between_saves=f_in.nsavc, + remarks=f_in.remarks) class DCDWriteHeaderTestNAMD(DCDWriteHeaderTest, TestCase): # repeat header writing tests for NAMD format DCD From 37ad4b88644e6f1ccfcb115bc3c076e855c547a3 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 9 Mar 2017 13:55:15 -0700 Subject: [PATCH 065/107] ENH: Added proper DCDFile remarks / header string handling -- all unit tests now pass in python 2.7 & 3.5 --- package/MDAnalysis/lib/formats/include/readdcd.h | 3 +-- package/MDAnalysis/lib/formats/libdcd.pyx | 11 +++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index cc20759f2ac..3888c51f81a 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -763,8 +763,7 @@ static int write_dcdheader(fio_fd fd, const char *remarks, int N, fio_write_int32(fd, 164); fio_write_int32(fd, 3); /* the number of 80 character title strings */ - strncpy(title_string, remarks, 241); - title_string[240] = '\0'; + strncpy(title_string, remarks, 240); WRITE(fd, title_string, 240); fio_write_int32(fd, 164); diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index a98b4a9936c..eb841ec9d19 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -19,6 +19,8 @@ import numpy as np from collections import namedtuple from MDAnalysis.lib.mdamath import triclinic_box import six +import string +import sys cimport numpy as np @@ -225,6 +227,15 @@ cdef class DCDFile: self.read() self.seek(0) + if sys.version_info[0] < 3: + py_remarks = unicode(py_remarks, 'ascii', "ignore") + py_remarks = str(py_remarks.encode('ascii', 'ignore')) + else: + if isinstance(py_remarks, bytes): + py_remarks = py_remarks.decode('ascii', 'ignore') + + py_remarks = "".join(s for s in py_remarks if s in string.printable) + return py_remarks def _estimate_n_frames(self): From 70e33f3f4a732d93b6d73e55848e65608ff0c12d Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 16 Mar 2017 17:21:58 -0600 Subject: [PATCH 066/107] DCDFile variables that are testing-only / implementation details are now prefixed with an underscore in response to comments in PR#1155. --- package/MDAnalysis/lib/formats/libdcd.pyx | 20 +++++++++---------- .../MDAnalysisTests/formats/test_libdcd.py | 20 +++++++++---------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index eb841ec9d19..3c2cd59ffa9 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -119,9 +119,9 @@ cdef class DCDFile: cdef int current_frame cdef readonly remarks cdef int reached_eof - cdef readonly int firstframesize - cdef readonly int framesize - cdef readonly int header_size + cdef readonly int _firstframesize + cdef readonly int _framesize + cdef readonly int _header_size def __cinit__(self, fname, mode='r'): self.fname = fname.encode('utf-8') @@ -240,17 +240,17 @@ cdef class DCDFile: def _estimate_n_frames(self): extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 - self.firstframesize = (self.n_atoms + 2) * self.n_dims * sizeof(float) + extrablocksize - self.framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + + self._firstframesize = (self.n_atoms + 2) * self.n_dims * sizeof(float) + extrablocksize + self._framesize = ((self.n_atoms - self.nfixed + 2) * self.n_dims * sizeof(float) + extrablocksize) filesize = path.getsize(self.fname) # It's safe to use ftell, even though ftell returns a long, because the # header size is < 4GB. - self.header_size = fio_ftell(self.fp) + self._header_size = fio_ftell(self.fp) # TODO: check that nframessize is larger then 0, the c-implementation # used to do that. - nframessize = filesize - self.header_size - self.firstframesize - return nframessize / self.framesize + 1 + nframessize = filesize - self._header_size - self._firstframesize + return nframessize / self._framesize + 1 @property def periodic(self): @@ -332,9 +332,9 @@ cdef class DCDFile: cdef fio_size_t offset if frame == 0: - offset = self.header_size + offset = self._header_size else: - offset = self.header_size + self.firstframesize + self.framesize * (frame - 1) + offset = self._header_size + self._firstframesize + self._framesize * (frame - 1) ok = fio_fseek(self.fp, offset, _whence_vals["FIO_SEEK_SET"]) if ok != 0: diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index cef8a952717..9d4dc026be1 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -279,32 +279,32 @@ class DCDByteArithmeticTest(TestCase): def setUp(self): self.dcdfile = DCDFile(DCD, 'r') - self.filesize = os.path.getsize(DCD) + self._filesize = os.path.getsize(DCD) def test_relative_frame_sizes(self): # the first frame of a DCD file should always be >= in size # to subsequent frames, as the first frame contains the same # atoms + (optional) fixed atoms - first_frame_size = self.dcdfile.firstframesize - general_frame_size = self.dcdfile.framesize + first_frame_size = self.dcdfile._firstframesize + general_frame_size = self.dcdfile._framesize self.assertGreaterEqual(first_frame_size, general_frame_size) def test_file_size_breakdown(self): # the size of a DCD file is equivalent to the sum of the header # size, first frame size, and (N - 1 frames) * size per general # frame - expected = self.filesize - actual = self.dcdfile.header_size + self.dcdfile.firstframesize + \ - ((self.dcdfile.n_frames - 1) * self.dcdfile.framesize) + expected = self._filesize + actual = self.dcdfile._header_size + self.dcdfile._firstframesize + \ + ((self.dcdfile.n_frames - 1) * self.dcdfile._framesize) assert_equal(actual, expected) def test_nframessize_int(self): # require that the (nframessize / framesize) value used by DCDFile # is an integer (because nframessize / framesize + 1 = total frames, # which must also be an int) - nframessize = self.filesize - self.dcdfile.header_size - \ - self.dcdfile.firstframesize - self.assertTrue(float(nframessize) % float(self.dcdfile.framesize) == 0) + nframessize = self._filesize - self.dcdfile._header_size - \ + self.dcdfile._firstframesize + self.assertTrue(float(nframessize) % float(self.dcdfile._framesize) == 0) class DCDByteArithmeticTestNAMD(DCDByteArithmeticTest, TestCase): @@ -312,7 +312,7 @@ class DCDByteArithmeticTestNAMD(DCDByteArithmeticTest, TestCase): def setUp(self): self.dcdfile = DCDFile(DCD_NAMD_TRICLINIC, 'r') - self.filesize = os.path.getsize(DCD_NAMD_TRICLINIC) + self._filesize = os.path.getsize(DCD_NAMD_TRICLINIC) class DCDWriteTestNAMD(DCDWriteTest, TestCase): From 381ec464f3f239b827cb1bd3e2355aecb6e7aadd Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 16 Mar 2017 17:30:54 -0600 Subject: [PATCH 067/107] Replaced a standard library assertion with a numpy assertion in the libdcd test suite, based on reviewer feedback in PR#1155. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 9d4dc026be1..a93b4d7979f 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -40,7 +40,7 @@ def test_header_remarks(self): list_chars = [] for element in self.expected_remarks: list_chars.append(element) - self.assertEqual(len(f.remarks), len(self.expected_remarks)) + assert_equal(len(f.remarks), len(self.expected_remarks)) def test_read_coords(self): # confirm shape of coordinate data against result from previous From 2aa069c6258f384602802f2b444929360d2724d5 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 16 Mar 2017 17:38:08 -0600 Subject: [PATCH 068/107] DCDFile now allows overwriting, based on feedback in PR#1155. --- package/MDAnalysis/lib/formats/libdcd.pyx | 3 --- 1 file changed, 3 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 3c2cd59ffa9..c7adceef102 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -127,9 +127,6 @@ cdef class DCDFile: self.fname = fname.encode('utf-8') self.n_atoms = 0 self.is_open = False - if path.isfile(self.fname) and mode == 'w': - raise IOError('''Aborting -- attempted to overwrite an - existing file path.''') self.open(self.fname, mode) def __dealloc__(self): From 70a7194203d97dabe569de57c39c35d3df11bf8a Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 16 Mar 2017 17:55:43 -0600 Subject: [PATCH 069/107] current_frame variable is now updated in write method of DCDFile. --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index c7adceef102..c577a7678bc 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -409,3 +409,5 @@ cdef class DCDFile: self.n_atoms, &x[0], &y[1], &z[2], &box[0], charmm) + + self.current_frame += 1 From 4ba09d7b0a2bc12d15634a781e9b4c9b920357cb Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Thu, 20 Apr 2017 17:14:25 -0600 Subject: [PATCH 070/107] Removed spurious header writing; fixed an issue in write() method of DCDFile such that single-frame NAMD DCD trajectory writing exactly reproduces the coordinates from the input file. --- package/MDAnalysis/lib/formats/libdcd.pyx | 12 ++--- .../MDAnalysisTests/formats/test_libdcd.py | 44 +++++++++++++++++-- 2 files changed, 45 insertions(+), 11 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index c577a7678bc..a74b126beea 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -395,19 +395,15 @@ cdef class DCDFile: cdef FLOAT_T[::1] y = xyz[:, 1] cdef FLOAT_T[::1] z = xyz[:, 2] - # prerequisite is a file struct for which the dcd header data - # has already been written - self._write_header(remarks=remarks, n_atoms=xyz.shape[0], starting_step=step, - ts_between_saves=ts_between_saves, - time_step=time_step) - - if self.current_frame == 0: + self._write_header(remarks=remarks, n_atoms=xyz.shape[0], starting_step=step, + ts_between_saves=ts_between_saves, + time_step=time_step) self.n_atoms = xyz.shape[0] ok = write_dcdstep(self.fp, step, self.current_frame, self.n_atoms, &x[0], - &y[1], &z[2], + &y[0], &z[0], &box[0], charmm) self.current_frame += 1 diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index a93b4d7979f..3549fd117d1 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -167,8 +167,9 @@ class DCDWriteTest(TestCase): def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' + self.readfile = DCD self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(DCD, 'r') + self.dcdfile_r = DCDFile(self.readfile, 'r') self.natoms = 3341 self.expected_frames = 98 self.seek_frame = 91 @@ -186,7 +187,6 @@ def setUp(self): ts_between_saves=f_in.nsavc, remarks=f_in.remarks) - def tearDown(self): try: os.unlink(self.testfile) @@ -275,6 +275,43 @@ def test_written_delta(self): actual = DCDFile(self.testfile).delta assert_equal(actual, expected) + def test_coord_match(self): + # ensure that all coordinates match in each frame for the + # written DCD file relative to original + test = DCDFile(self.testfile) + ref = DCDFile(self.readfile) + + if test.n_frames > 1: + for frame in test: + written_coords = test.read()[0] + ref_coords = ref.read()[0] + assert_equal(written_coords, ref_coords) + else: + written_coords = test.read()[0] + ref_coords = ref.read()[0] + assert_equal(written_coords, ref_coords) + + +class DCDByteArithmeticTest(TestCase): + + def setUp(self): + self.dcdfile = DCDFile(DCD, 'r') + self._filesize = os.path.getsize(DCD) + + def test_relative_frame_sizes(self): + # the first frame of a DCD file should always be >= in size + # to subsequent frames, as the first frame contains the same + # atoms + (optional) fixed atoms + first_frame_size = self.dcdfile._firstframesize + general_frame_size = self.dcdfile._framesize + + for frame in test: + print('frame iteration') + written_coords = test.read()[0] + print('after test read') + ref_coords = ref.read()[0] + assert_equal(written_coords, ref_coords) + class DCDByteArithmeticTest(TestCase): def setUp(self): @@ -322,7 +359,8 @@ def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(DCD_NAMD_TRICLINIC, 'r') + self.readfile = DCD_NAMD_TRICLINIC + self.dcdfile_r = DCDFile(self.readfile, 'r') self.natoms = 5545 self.expected_frames = 1 self.seek_frame = 0 From c3747a52707f9cc2387a608ac4e9f7775ad4533a Mon Sep 17 00:00:00 2001 From: Date: Thu, 20 Apr 2017 19:32:12 -0600 Subject: [PATCH 071/107] Patched issue with frame iteration in test_coord_match -- all unit tests now pass. --- .../MDAnalysisTests/formats/test_libdcd.py | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 3549fd117d1..149363bc437 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -280,17 +280,12 @@ def test_coord_match(self): # written DCD file relative to original test = DCDFile(self.testfile) ref = DCDFile(self.readfile) - - if test.n_frames > 1: - for frame in test: - written_coords = test.read()[0] - ref_coords = ref.read()[0] - assert_equal(written_coords, ref_coords) - else: - written_coords = test.read()[0] - ref_coords = ref.read()[0] - assert_equal(written_coords, ref_coords) - + curr_frame = 0 + while curr_frame < test.n_frames: + written_coords = test.read()[0] + ref_coords = ref.read()[0] + curr_frame += 1 + assert_equal(written_coords, ref_coords) class DCDByteArithmeticTest(TestCase): From 866787910bb29357cfb109eeffe4f860361e1465 Mon Sep 17 00:00:00 2001 From: Date: Thu, 20 Apr 2017 22:34:02 -0600 Subject: [PATCH 072/107] Attempted formatting fixes in test_libdcd.py. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 149363bc437..0c55ed1cd97 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -1,4 +1,5 @@ from __future__ import print_function +from __future__ import absolute_import from nose.tools import raises from numpy.testing import assert_equal, assert_array_equal @@ -280,12 +281,12 @@ def test_coord_match(self): # written DCD file relative to original test = DCDFile(self.testfile) ref = DCDFile(self.readfile) - curr_frame = 0 - while curr_frame < test.n_frames: - written_coords = test.read()[0] - ref_coords = ref.read()[0] - curr_frame += 1 - assert_equal(written_coords, ref_coords) + curr_frame = 0 + while curr_frame < test.n_frames: + written_coords = test.read()[0] + ref_coords = ref.read()[0] + curr_frame += 1 + assert_equal(written_coords, ref_coords) class DCDByteArithmeticTest(TestCase): From be6d451dbc453aefd93d270e407da8e6d7c84cd7 Mon Sep 17 00:00:00 2001 From: Tyler Reddy Date: Fri, 21 Apr 2017 16:01:39 -0600 Subject: [PATCH 073/107] Added unit test test_read_coord_values, and associated testing data, for DCDFile reading fidelity. --- .../data/legacy_DCD_NAMD_coords.p | 28 +++++++++++++ .../data/legacy_DCD_adk_coords.p | 39 +++++++++++++++++++ testsuite/MDAnalysisTests/datafiles.py | 6 +++ .../MDAnalysisTests/formats/test_libdcd.py | 25 +++++++++++- 4 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p create mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.p diff --git a/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p b/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p new file mode 100644 index 00000000000..3a866f3ee4f --- /dev/null +++ b/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p @@ -0,0 +1,28 @@ +(lp1 +cnumpy.core.multiarray +_reconstruct +p2 +(cnumpy +ndarray +p3 +(I0 +tS'b' +tRp4 +(I1 +(I5545 +I3 +tcnumpy +dtype +p5 +(S'f4' +I0 +I1 +tRp6 +(I3 +S'<' +NNNI-1 +I-1 +I0 +tbI00 +S'm\xc2B\xc1fL\x8b\xc1\x94d\x00\xc1d\xbeH\xc1\x07\xd8e\xc1\xf2\x0b\xce\xc0\xdf61\xc1\x0b\x83\x84\xc1\x9d&\xd3\xc0\xb9\x913\xc1\x961q\xc1\x9b*\xeb\xc0R^\x1f\xc1`\xecc\xc1\x1eZ\xd3\xc0\xe8\xe5\r\xc1\xfd\x03l\xc1bX\x02\xc1\xd7xN\xc1G\xb1S\xc1\x895\x00\xc1\xdd\x9a\x10\xc1\xdf\x86\x8f\xc1\rZ\xf5\xc0E\x8d\xfd\xc0\x1e\xb9\x8d\xc1\xdaa\x03\xc1\x7fZ\xf0\xc0\xe4\x80z\xc1Z\x16\xfd\xc0\x9e\x13\xce\xc0|\xf6\x8d\xc1\x9dK\x01\xc1\xd2,\xc2\xc0\x89\x04\x98\xc1\x84\xc8\xe1\xc0\x973\x98\xc0D\x8d\x8b\xc1\x18\xe4\xfe\xc0\xdc\x06"\xc1f\xdc\x8b\xc1\xfd\xe0\xde\xc0\xea\x94\xd6\xc0\xff\xc2m\xc1\xf7\x95\xd1\xc0[d\xb2\xc0p\xe8^\xc1\x02e\xc7\xc0\xb0nx\xc0\x0f/\x86\xc1\xbb\xb3\xc9\xc0\xa6\xa8n\xc05\xecw\xc1vu\xe4\xc0\xa5\x97\xfa\xbf/\x9d_\xc10\xc9\xbc\xc0b\xba\xa0\xbf*\xb0n\xc1Gk\xf9\xc0\x9b1\xa5\xc0i\xc0Y\xc1\x9c\x0e\x00\xc1\xa4\xc7\xcd\xbf{\xdd\x8f\xc1\xc7-\xee\xc0\x12\xf7u\xbe5p\x8d\xc1Yc\x08\xc1\x95cJ>\xc6\xe6~\xc1J\xce\x03\xc1\xd0I\xa8?\xeeX\x8f\xc1\x84\x11\xfc\xc0J`\xb5?\xa7\xe8\x98\xc1#\xff\xe6\xc0\xc2\x85B@\x9a)\x8b\xc1\xf4+\x00\xc1\xf7uG\xc0\xd9\x92\x8a\xc1T\xec\xf0\xc0\xe5\x99K?\x92}q\xc1\x01\xda\xd9\xc0}\xb9\x17@s\xeef\xc1\xdb\x8f\xd0\xc0$0k@\xc1m\x86\xc1\xe4\x1f\xc7\xc0\x86\x87\x83@\xed"x\xc1\x9dl\xec\xc0\xbf\x0f\xa7@\x7fde\xc1x\xbf\xc4\xc0.\xa3\xc8@!\x82m\xc1\x10\xe0\x01\xc1\x01\t\x12@<\xa1V\xc1&\x8a\x00\xc1_\xc1\xc0@\xc5\xd7\x8f\xc1\xed\xde\xee\xc0\xe3\xb9\xe5@\xfc\xd1\x8e\xc1; \x08\xc1\x16\x8c\xf0@\x9bk\x80\xc1\xc5\x91\x01\xc1\x1c\x9d\x0cA\xdb\xfb\x8e\xc1-B\xfd\xc0\xee\x90\x0eA\x8dr\x9b\xc1\xfd=\xe5\xc0\xd5X&A\xe44\x8a\xc1Wl\xfd\xc0J!\x91@\x7fj\x8a\xc1\xd8\xe9\xe7\xc0\xdb\xe8\x06A\xf2kn\xc1h-\xce\xc0\xdaF\x1cAJ\xbfc\xc1^\x81\xcb\xc0R\xbc1A\x06\xce\x86\xc1\x0c\xda\xc5\xc0l\xda0A6\x8ao\xc1\xbd?\xe5\xc0\xad\x8cLA\xaa}d\xc1\xc7\x93\xc4\xc0\x18\x83WAP\xd3m\xc1\x92!\x03\xc1G\x19\x1bA=tY\xc1\x15\x12\x01\xc1\xf8\x85\x80\xc1\xcf\xd0/\xc1+)\x08\xc1\xf1\x0c\x85\xc1\xad\xe6\xf8\xc0\x0eX\xd0\xc0\xd5\x92o\xc1\xc1\xea)\xc1\x0f)\xd2\xc0\xda\x8bp\xc1D\xba\t\xc1\x02\x18\xe4\xc0\xb3\x96T\xc1\x08\x81\xf8\xc0\x00\xc6\xca\xc0\xac\x95O\xc12\xb0\x03\xc1\x1a\xcf\xfe\xc0\x9c\x06\x86\xc1\xf7\x96\xd3\xc00\x7f\xf3\xc0C\x0cH\xc1\xa9\x1e7\xc1\xab*\x01\xc1k\x99=\xc1\x1c\xed$\xc1C\xe3\x08\xc1\xaa)0\xc1\xf2\xc0\r\xc11\x13\xe4\xc0\x19\x11#\xc1\xcc);\xc1\xf8\x1a\x03\xc1\x08\xae\x18\xc1\x9cvM\xc1G\x96\xd5\xc0\xfc\xa5\x07\xc1c\xd03\xc1\xceV\xfa\xc0x\xaeY\xc1\x9f\\6\xc1\xa3E\xcd\xc0*\xaa\'\xc1\xd5\x0f\n\xc1k\x9e\x04\xc1\rB\x1c\xc1$l\x02\xc1\x0cC\xd3\xc0\xac\xc2\xf5\xc0\xc5\xc7*\xc1\xfa7\xb5\xc0\xf8\xe1\xf2\xc0\x13\x93\x18\xc1\x16\xe9\xe3\xc0i\xa0\x06\xc1\xacX\xed\xc0\xf34\xfd\xc0M\xeb\xac\xc0\xbdkA\xc1g\x06\xf4\xc0\x82_\x80\xc0Y(;\xc1+a\x05\xc1\x0c\xce\x15\xc0G\xd1?\xc11\xff\xf7\xc0CH\x10\xc0,\x9f^\xc1\x03\xe3\xdd\xc0B9\xc8\xc0\x13\xc2,\xc1\x99>\xe1\xc0\x03x\x16@\x9c\xcf@\xc1C\xb1\x00\xc1\x1df\x86@7\xf69\xc1\xdc\xb9\x07\xc1Xs\xa4@1\xd2<\xc1j\x92\xe2\xc0#\x05\xb2@P+U\xc1\xf4\x05\xfa\xc0\xfb\\\xd6@\xc4\x013\xc1\xdc\xc6\x01\xc1&\xbb\xdc?E\xe24\xc1\xca\xc1\xd4\xc07P\xd6@"\x84,\xc1C\xc4\xc2\xc0\x0f$\x03A\xf7\xd0\x10\xc1m\x17\xdb\xc0@/\x16A\xadq\x03\xc1:\x99\xa7\xc0V\xcd\x1dA\x9b8\x05\xc1\x88\x03\xfd\xc0\xa0\x0c\x1eApW9\xc1\xd0\xbb\xef\xc0\xba\x002AJ\xae<\xc1\x17\xa7\x03\xc1R\x143Ay7\x16\xc1W\xe2\xf9\xc0\x8c\x9bGA\xd3\x8b9\xc1:\x0e\x01\xc1\x17IJA\xfc\xcfM\xc1qj\xd2\xc0\xfb\x82\\A\xcb\x8e3\xc1M\x8f\xf8\xc0\x1e6\tA\xf7b3\xc14\x81\xd8\xc0\x85\xe9CA\x9c\xb4\x04\xc1#n\xdc\xc0\xe7\xf1SA\x06\xbf\xf8\xc0\xa6\xe0\xc1\xc04~kA\x95\xe2\'\xc15\xab\xc8\xc0*\xf7kA\x0b\x0e\x07\xc1\x14g\xe9\xc0\x02\t\x83Al5\xf1\xc0\x06M\xd3\xc0\xe4\xc5\x88A\x11O\x04\xc1\xf7\xab\x07\xc1\xbe\xdaVA+\xc0\xe2\xc0;\xb5\x01\xc1\x87\xfa\x9b\xc1\x14\xe7\x86\xc01\x1c\x03\xc1\x8fI\x9f\xc1\xb7q\xa3\xbf\x82\x1a\xcd\xc0\x17\xa2\x95\xc18o|\xc0\xa1\xcf\xcb\xc0C\xea\x95\xc1\x98\xfb\x03\xc0E;\xf0\xc0\xe3P\x8b\xc1\xc6\x8c\xb9\xbf\xa8\x0e\xd1\xc0\xd9S\x83\xc1-\x0f\xe8\xbfB\xdb\xfd\xc0\xa6C\xa2\xc1Y\xf9o\xbe\xc4\xb4\xf8\xc0}g\x82\xc1A0\xa7\xc0\xfcH\xf9\xc0\'\xc5y\xc1\x8fBu\xc0q\x12\x08\xc1\xd1\xb1p\xc1\x98\x8e*\xc0#s\xf5\xc0F\x90_\xc1\x9d\xd5\xa5\xc0\x0et\xf3\xc0j\xd8W\xc1D\xdc\xd6\xc04\x10\xd9\xc0A\x84B\xc1?\x08\x8d\xc09E\xf9\xc0\xa8\x9d\x8b\xc1\x14\x93\x99\xc0E]\xcd\xc0\xe0\xd4d\xc1\xa0\xe8\x00\xc0\x16\xcf\xce\xc0o\x82T\xc1W\xedC\xbf\xb0\xa2\xc5\xc0d\xb5B\xc1\xec\xf0\x87\xc0\xec{\xa9\xc0\xebW@\xc1\x81\xb8\x1f\xc0yB\xd5\xc0a9O\xc1\xf59\xf2=\xab\xdc\x03\xc1\x8dh&\xc16\xee\x95\xc0\x9d\xae\xd8\xc0\xdd\xb4\x0fAS\xd3\xd6\xc0\x08\xaf\xd8\xc0#\x81+A\x82\x99s\xc0\xb7\xad\x06\xc1qm\xa0A\xd9w\xa2\xbf\xfc\xe5\xcd\xc0\xec^\xa9A+\xc2\xd2\xbf?S\x01\xc1\x80y\x89AK7\xc7\xbe\x92\x0f\x02\xc1qR\x9f\xc1\x8eH\x9a?mq\xfb\xc0o\x8f\x99\xc1\xdb\x9e"@\xbdA\x08\xc1:\xe0\x95\xc1\x97\xeaf@R\r\xf5\xc0kO\x8d\xc1\xfd\xde\xad?\xbf\xbe\x02\xc1\xff\xba\x88\xc1r1\x80>`\xf7\xd0\xc0\xad@}\xc1Z\x1f\xf8?\xd7\xeb\xf2\xc0\x96\xa0\xaa\xc1\xceM\xe2?f\xf9\xd8\xc0\xe2\xd9\x8c\xc1\xdbd\x96@\x930\xec\xc0\xa6\xbc\x82\xc1i\xba\xa0@\x81\xee\xc8\xc0\xfc\xb5e\xc1\x94\t*@\x85[\xbd\xc0\xb4\x03q\xc1\x0c\x05|@\xb2\xb2\xed\xc0\xdb@W\xc1q\xd5\xb2@8\t\xdb\xc0\xf0\x87M\xc1\x80\xa6\x99@\x1b\xf0\x02\xc1\x90\xf0\x84\xc1\x19\x16\xc6@\xb6a\xfd\xc0klL\xc1\x03\xf8\xa3?\x1d\xc7\xdc\xc0\xce\xd1@\xc1\xf7Z\x10@.@\x06\xc1b\xbd1\xc1\x0c"\x80@\xc8\x0c\xfe\xc0Vth\xc1J\xe4\x01@\x94p\xee\xc0]\xc2*\xc1\x93@~@#\x07\xce\xc0\xdc\xc2=Ax\xb9\t@Z_\x08\xc1\x9d\x8a9A\xd7\x01\x82@.<\xf8\xc0\x13/LA\x0b\xf9s?S\x9e\xf3\xc0s\xa9KA\x85\x92\x9f\xbesX\xe2\xc0\x81\x92cA\xfd\x11\x03@\x80\xa3\x00\xc1DFPAC]\xa2@[\xac\xec\xc0c\xd3TAM\xbe\x9f@o\x83\xc3\xc0/,mA\xd5\x0f\x13@O\xb4\xcc\xc0\xbfUvA\x04e\x87@\xce\xd2\xee\xc0\xc7\xf6\x84A\x92\x16\xa5@\x90\x85\xd2\xc0\x02\x0c\x8aA\x89\xd9\x94@\xdb\x1c\x04\xc1V\x14WA\xef\x17\xd6@\xd0*\xfc\xc0fG\x8bA\xda\xe4\x9b?\xee5\xfb\xc0\xd2\xb1\x97A\x84\xd5\x07@\xebA\x05\xc1y@\x94A\x08\xe6a@\x8d\x19\xfd\xc0P\x96\x9fA\xad\x01\xac?~\xd1\xfc\xc0\x00 \xa2AB*\xaa=Q\x97\xce\xc0\xabY\x81A\xf9\r\xe7?\x15,\xd5\xc0\xe9\xfd\x9cAA\xa4\x95@\x1a\n\xf2\xc0\xd8\x0e\x82\xc1\x18\x05\xfb@\xe7\x87\xf6\xc0\x08\x9el\xc1\x90\x02\x08A\xa3\xc7\x0b\xc1$+p\xc1\xc6\x19%A\xfd\xa4\xf5\xc0F\x04\\\xc1\x15|\xed@p\x95\xde\xc0\xc3\x90R\xc1\t\x06\xe9@x\x9b\x01\xc1{\xf1B\xc1R\x0f\x0cA\xd5\xfe\x00\xc1\xe9M\x89\xc1\xc5.\x01A\xaf-\xd0\xc0\x9a\xef_\xc1Z(/A\xfb\xfd\xc3\xc0\x9a9N\xc1\xd7\x7fAA4\xa9\xc4\xc0\xe9\xe17\xc1\xd7\xba\x0cA\x90\x07\xae\xc0\x8a\xfa9\xc1\xd9)/AY\x8c\xe1\xc0\xa1\x01\x14\xc1\x91\t>A\xfd\xe7\xc8\xc0)\x91\x0c\xc12-4A\xdeo\x07\xc1B\x07K\xc1\xfe\x0eOA\xa5\x05\x02\xc1v\x87\r\xc1Q\xac\xf9@\xe3\x80\xfc\xc0x\xe7\x00\xc1y\x82\x1bA\xb4\x13\t\xc1\xa8\xfb\xf1\xc0\x8e\n+A\x94\xcc\xe9\xc0\xe2\x97#\xc1\x82V\x0bA\x9a\x03\xe2\xc0F\xd4\xcb\xc0\xb0\x176A\x1e\n\xf7\xc0\x07\xaf\xb2\xc0K)5Ac\xea\xc8\xc0\xff\x8d\x86\xc0\x11\xb35A9\xf5\xe6\xc03\xf8\x12\xc0\x90SHA\xb88\xd4\xc0bE\x0f\xc0QT1A\x7f\xbf\x01\xc1\xeb=\xaa\xc0\xfb,OA^}\xfb\xc0R\x0f\x8b?\xb1\x900A\xdfc\xd1\xc0/#(@\xbamIAv\xbd\xac\xc0\xf5\xfb~@*\xb48A\xde\x98\xe6\xc0p\x93\xc1@\x128\xc0\x8bA\x87_\xd8\xc0Ra\x0f\xc1\x97\xd4\x8fA\xbaB\xce\xc0\xba\xdd\xef\xc0\'\x02|Ao\xa4\xce\xc0\xd1\xda\xe7\xc0\x1f\x01\x8aA{2\xe4\xc0\x9a=\xc5\xc0\xeb7\x8eA-y\xcd\xc0\xc2\xc9\xa6\xc0lZ\x8eA\xce\xe1\x04\xc1\xb6\xda\x11\xc1\x1fv\x99A\xd6K\x03\xc1H1\xa5\xc0B\x8diA\xf0,\x02\xc13wk\xc0\x8bH{A"Q\x08\xc1\xee\xb2{\xc0\xfc4\x86A\x8cL\xf6\xc0D\x07\x14\xc0\x88\xbf`A\x80\xe8\xe4\xc07\xab\xfc\xbf\x99\x11`A\x92\x8b\x05\xc1\xa9kd\xbfB\xd5uA\xcb\x11\x01\xc1I$\xc8\xc0\xc1\x06gAhH\xd3\xc05\t5\xc0k\x8e\x8bAF\x98\xcc\xc0\xd9\xd7\xda\xbffs\x93A\xb1\xee\xc6\xc0!\xafD\xbe-\xeatA\x17\x15\xc2\xc0s\x8a\xee\xbdH{\x8aA\x0b\xdb\xe2\xc0\xf9R\xcb?\x11\x9f\x90AP\xcf\xd1\xc0\xf9!8@\xec=\x8eAd\x1e\x01\xc1Et\xcb\xbf\x91\xbe\x9aAz1\x08\xc1s\xbd\x1e@\xe5\xd6iAw%\xef\xc0\x9fGR@l=\x82AF}\n\xc1fzu@\xf4\xb4\x86Ac\xa3\xf6\xc0\xcc\xee\xa7@\xebbiAX\xca\xfa\xc0\xd8I\xae@\xf2\x8aTAGk\xd7\xc0\xa9B\xde@\xb5\x82wA\xd2n\xfb\xc0I5\x8c?\xc0\xb4mAWg\xe1\xc0Y~\x97@Ui\x8cAHl\xd2\xc0\xeb\xb1\xba@:\xf3\x91A\xfa\xf7\xc8\xc0\xe0p\xf2@O\x06zAo?\xc3\xc0\xcf\x95\xf0@|\x1f\x89A\xe1g\xe0\xc0\x11\x1d\x12A\xa2\xe1\x8eA\xb7\xa6\xc2\xc0\x19\xcc\x1cA\x87n\x8dA\xdcT\xfa\xc0{\xc8\xbb@\xbb\xd4\x9aAi\xa1\x06\xc1\xd9\xac!A\xda\x0fiA\xe6p\x00\xc1d3=AO=wA!\xad\x05\xc1\xd5b1A\x88\x8e\x84A\xfe\xee\xfd\xc0\x88uFA\xa4:fA\t\x9e\xf7\xc0<\xc4MA{\x1aLAA\xf1\xdf\xc0~f\nA\xc0OjA4R\xdb\xc0o\xc9AAn\xac\x8bA\xa5z\xe1\xc0\xbe\xd6\xef\x86\xc1\xa1(\xa3\xc0Y=\x9b=\xc2,v\xc1VJ\x99\xc0z\xf0\xc0?\xaed\x8f\xc1E\x9f\xa0\xc0\xf1\x00\xb8?\xb0\x10\x97\xc1\xfd\xb3w\xc0\xf4\x10=@\xcb\x15\x8c\xc1w\xcb\xa5\xc0F\x9b\x06\xc0\xb37\x8d\xc1S7\x9d\xc0Eu\x0b\xc0,\x10L\xc1\x9f#D\xc0.Q\xa8\xbf>>.\xc1\xbaT\xa1\xc0\x05\x15\xa7\xc0O\x1e7\xc1\xe9A\x80\xc0v\xe3q>\x84\x02,\xc1r\xc7c\xc0\n\x1d\xca?\xf0o5\xc1\xe6\xa9\x80\xc00\xd1I@\x8e\x8d7\xc1)\x82\x9f\xc0t\x96\xa4@\xe7\x82:\xc1{7\xa7\xc0.\x05\xa8@\xedMJ\xc1a\xa1P\xc0P\xb9\xdd@+z.\xc1Z\x1d\x98\xc0\x9a\xa6\xf8?\xe373\xc1H\xa5\x9d\xc0#F\x92@|\xae\n\xc1\x19\xe9h\xc0-\x9a\xb8@(e\x00\xc1\xee>%\xc0\xf3Z\xef@&\xc9&\xc1\x9f\xbeF\xc0\xe1w\xd3@h\xcd\x08\xc1Q\xb5t\xc0\xc6\xe4\x10A\xf1\xfc\xf7\xc0cMu\xc0"\x9e\x12A\x8d\xe3\xf2\xc0\xc9\x80\xcf\xc0\xba\xad\x1dA\xd3R=\xc1\xc3\xfd\xa1\xc0\x84{:A\xa2\x05.\xc1TV\x9f\xc0jb.A\xefR\x0e\xc1\xaf\x0c\x9c\xc0\x91\xe3FA\xf4j<\xc1\x01h\x98\xc0lCLA\xb8\x01I\xc13if\xc0\xa5\'[A\x99\xa91\xc1\xcdS\xab\xc04\x10\x12A\x87,4\xc1~O|\xc0\xcd\xda@A&\xde\n\xc1aU_\xc0M\x1cYAQ\xfa\x03\xc1\x19Xo\xc0\xf9\xa0nA\x10\x9e$\xc1t\x0eY\xc0\xc7>rAU\xb1\t\xc1\xe2Bo\xc0|\xa2\x82A\x8eE\xea\xc0G\x1b`\xc0\x94H\x87A\xfb\xad\x00\xc1\xc4\xa2\xa1\xc0\xe4\x80XA\xcf&\xe4\xc0\x15\xc3\xa0\xc0\xc7\xce\x9a\xc1\xba\xdf\x88\xc0\x8b\xef\x9e\xc0l\xd8\x9f\xc1P,\xa6\xbf\x0f\xe6j\xc0P\xdd\x93\xc1|\x11z\xc0pB\\\xc0U\x10\x97\xc1s\x9b\x13\xc0=fo\xc0\xd2\x18\x89\xc12\t\x87\xbf\xcc\x94b\xc0s\xe7\x83\xc1\x11.\xd7\xbf\xf3O\xa2\xc0J\x9f\xa0\xc1\x85\x85\xe4\xbc\x94\x9d\xa1\xc0\xf6\xb0\x83\xc1\xc7\x1c\xaa\xc0\xb9\r\x97\xc0\x92\xb9y\xc1\xc7\xdc\x8c\xc0\x90<\x9f\xc0=\x8au\xc1F\xf1\x15\xc0\xe1\xec\xa2\xc0\xd3\xecU\xc1\x1e\x98\xa2\xc0\xaa\xb6\x9d\xc0\x88\xafY\xc1m\x08\xce\xc0\xf5\xbdb\xc0\x1a86\xc1O\xbex\xc0\xdb\x01\xcb\xc0\xfc\x13\x89\xc1\xed\x87\x96\xc0<\x8cy\xc0-\xb2e\xc1\xf7r\x12\xc0\xb9\xd0e\xc0\xed\x06P\xc1\x9a\xfd\xb2\xbf\xc0`G\xc0\x9a\xf77\xc1]\xf3\x82\xc0\xd4mw\xc0z\xc23\xc1\xb4\x88\xce\xbf\xcd\xddx\xc0\xff\x14\x1c\xc1\x84\xacZ\xbf\xc86C\xc0\x8c K\xc1\xa8\xdee\xbfs\'\x98\xc0\x13\xe3\x19\xc1]"\xa0\xc0[4\x80\xc0\x10#\x14\xc1\xddz\xa8\xc0F\x17\xa6\xc0Ap\rA\n\x0e\xb9\xc07\xc5\x81\xc0\xa6}\x0eA\n\xa0\xa9\xc0\x0b\xd6\xa9\xc00\xea*A\xd1\xfey\xc0%}\xa2\xc0V\x11 A\xaf\xd7a\xbf\xb8\xcfj\xc0\x8c\xa6"A9\x98\x80\xc0\x8b\xe8)\xc0\xae\r7A[\xc8.\xc0\x89\xb3\x80\xc0/\x96KAP(\x85\xbf+nn\xc0X\xa3_A\x05\xe0\xe2\xbf\xfce\xab\xc0\x054WA\xca\xeb\xa8\xc0X\x84\xab\xc0r\xb7xA\xcc|\x82\xc0E\xc1\xa3\xc0^\x1anA\xd8,0\xc0\xa9\xd7\x97\xc0\x18\x1b\x81Ai~\x9f\xc0\xc0\x01\x9c\xc0&\xfd\x84Aca\xbc\xc0\xf8p\x80\xc0\xf0\x15\x8dAK\xc5\x87\xc0\x90\xa2\xa9\xc0[JLA\xd21\xa3\xc0\x1e\xf8d\xc0\xb3_|A\xd1z\xe4\xbf\xf1\x90|\xc0\x84\xe7\x87A\xea\xa5\xaf\xbf\xf0"^\xc0>\xf0\x94A\xfb5d\xc0\xd4\xb0s\xc0\xeb\xdf\x94AVN\xe2\xbf\xbb;p\xc0\xebZ\xa0A\x85\x17\xa1\xbf\xef5Z\xc0\xdf\x9b\xa7A[\xb1\xdb\xbf\x07w\xa6\xc0\\]\x88A=O\x08\xbf>z\xaa\xc07\xe2\xa0\xc1\xd5 \xba?\xa5A\x9f\xc0\x01\xcd\x92\xc1*\xf1\xef?\xa4:\xa4\xc0\xb8\xa6\x93\xc1F\x86q@\x17(\xa5\xc0\x16\xfd\x88\xc1\x87\x96\xa3?\xa0G\x92\xc0MP\x87\xc1e;\x0f?\x8cI\x83\xc0O \x80\xc1\x99\xd9\xeb?KN\xab\xc0\xe6D\xa6\xc1P_\xd6?Z\x1a`\xc0\x02\x7f\x8e\xc17:\x8a@\xd8Ck\xc0\xfa\xfc\x82\xc1\xffK\xa2@L#n\xc0\xf5\xeam\xc1\x1a\xfc7@\x07\xdc{\xc0\x8c\x9bg\xc1\xca\xe1\x9b@:\xe1u\xc0\xa5\xdaN\xc1I\xdb\x99@\x9e\xe7\x14\xc0=\x11F\xc1de\x9d@\xbd\x8f\x9e\xc0\xc0C\x83\xc1\x1fe\xc5@0H\xa4\xc0\xc0FM\xc1J\xae\xbc?2&\xab\xc0a\xa7.\xc1\xfe\x08)@FM\x9e\xc0\xc8\x9e"\xc1\xc8D~@\xe6lm\xc0J\xd2\x19\xc1\xb8\xa0\x88?\xd3^\x86\xc0\x92\xd3 \xc1\xe3$)?\x84\xc5g\xc0HqW\xc1t\xe1\xca?,\xa7N\xc0a\xd4+\xc1\xa3y\x86@\xc5f\x9c\xc0\xf2w\x15\xc1\x1a-\xa7@\xf2\x1e]\xc0W\xe3\x0b\xc1E\xe3\xd6@$\xf9\xa1\xc0\x9az\x10A\x00\xd5\xae@\xdc\x18f\xc0\x1f\xbe\x1fA+\xe7\x8f@\xcf%\x9f\xc0\x98\xbe3A\x15\x1a\x13@zs\xa6\xc0\x8bM8A\xbab\x84@.l\x9f\xc0\x07\xfaIA\x1aU~?(\x0f\xad\xc0\t\xf5LA\x88\x9d}?\xd8q{\xc0.$dAL1\x06@X\x96\xa6\xc0\xe0\xf6@AV\xbd\x95@\xfe\xf8G\xc0\xd7\xf2ZAg\xe6\xa0@\xdb\xdfx\xc0\x83\x08tAM\x18#@z\xf9Y\xc0\xc7;uA\xf2!\x87@5\xb8x\xc0\xb9D\x83A\xbb\xf9\xa8@a\xa0v\xc0W\xa7\x88A\xec\r\x94@\x93\x8a\xa9\xc0\x057ZA\xd0.\xcb@X\x9c\xbc\xc0`\x97\x89AL\x87\xa0?e_\xa2\xc03\xbe\x95A\xc16\xf5?\x8f\xe4\xa0\xc0\xca\xc1\x94A\x1d\x82u@&\x9d\xa9\xc0\xa4/\xa0A\xb3\x9f\x8c?\xc9\xa5\x95\xc0R\xa3\x9fA\xc5\xd2j>\x90\x8dl\xc0\xb8\xa9\x84A\xca\xf1\xcb?{\xe1u\xc0\x06r\x9aA\xe3\x97\x88@z\x14u\xc0tq\x83\xc1f\x85\xf7@#A\x93\xc0\x9d\xbbu\xc1\xcfB\x11A\x8a\xe9\x9d\xc0\xb3=m\xc1\xa6P%A\x91s\x9b\xc0\xdb\xccV\xc1O$\x01A%\x18\xa5\xc0\xcb\x14R\xc1\x9e\xfd\xce@\xfe\x8du\xc0\x1117\xc1\xc9\xb2\x15A\xad\xc2\xdd\xc0(B\x89\xc1Zo\x01A\xa52]\xc0~\x1ab\xc1\x02\x9f+A\n\xc6i\xc0\x1b\xccN\xc1\x95\xb78A\x87G/\xc0\x1c\xf0/\xc1\xe7\xce\rAp\x01v\xc0\x06\n)A\x8e0\x82\xc0\x17\x86\x9f>\x88\xf7)A\xf6\xe6\xb2\xc0M\xe0\x1c@(\xe7=A*cs\xc0\xe7hz@\x15D\x12A\xc9\x1eC\xc0a\xab\x84@8\xed&A\x10\x19w\xc0$\x06\xaf@_7;A\xee\xb3]\xc0\x8f\x19\xb6@\xc9\x865A5B\x9d\xc0\xfa\x80\x14@\x8c\x00:A\x15\xdd\xcc\xc0Sn\x04A\x8c8\x07A\xdf.\xa1\xc0\xed[\xf3@}{%A\x92\xbc\xa8\xc0R\xd6\x12A\xe4\xfa\xed@{X~\xc0J\xf6\x14A\x85\xee\xd5@X\xac\xa5\xc0\x99\xed\'A\xa7u\x06A6o\xae\xc0\xacs\xa2@E\x12\x03A\xa4>s\xc0\xb8\xe7\x07A_\xb90Ar:a\xc0\x1c5\x1eAn\xbb4A\xb1n\x80\xc0nA/Af\x05\x07A}{B\xc0\xc0p6AI-\'A\xae\xc2i\xc0\xf1\x92FA\x82\xf9:A\x9f\xf4\\\xc0\x9a\x15ZA\x0b\x812A$\x18\xa7\xc0y\xcc\x13A\xc8JMA\xb2o\xae\xc0+\x01XA\x1bw\xf2@\xf9J\x98\xc0d\x02iA3d\tA\xc3\x1a\xa6\xc02OmA/)&A5\x0c\xa3\xc0\xed\x16\x85A\xd3w\xf3@)\xf9\xae\xc0\x92\x97\x84A$C\xd8@\xbf\xab{\xc0\xddkIAZ\xfa\x02A\x1d\xe4z\xc00\x03yA\xad8+AK\x07h\xc0|\x13K\xc1\x9d\xbddA\xe4\xe0\xa9\xc0\x02\xa0-\xc1b vA(\xee\xa4\xc0\xadR3\xc1\xadY\x86A\xdf\xdb\x9e\xc0\x19\x88\x1a\xc1\xa3\xf1eA~\xb0\x9c\xc0w\xa0\x1d\xc1zj\\AG\xact\xc0\r\xcd\x03\xc1\xd2OrA\xec7\xa1\xc0h\nT\xc1\x96ShA\xbe\xa6j\xc0\xccr%\xc1w$\x8bA\x99\x9ds\xc0L\xa1\x10\xc1G\x8b\x8fA%|d\xc0"\xaf\xe6\xc0^:xA\xe0e]\xc0U\x80\xf9\xc0\xce\x95\x8aA\x97\xb3k\xc07\xc7\xbe\xc0\x06\xaf\x90Ag\xbah\xc0\tx\xa4\xc0D\xa5\x8bA\xfe\xa8\x9e\xc0<<\x10\xc1S\xbe\x96A\xf5\x9d\xa2\xc0\xf4\xc8\xa6\xc0\xdb\x8bdA\x1c\xf0\x93\xc0+\x0f\x8f\xc0\x92\xf2sA\xe5\x02\xa6\xc0\x06\xd4s\xc0\xd1\x86\x86A\x12\xb6\xa5\xc0\x86#\x08\xc0\x1aTeATJ\xae\xc0S\xb8\x07\xc0B WA\x92\x8bh\xc0\x92\x19d\xbe\xc6\xecwA\xdd\xae\xab\xc0\x0f\xb7\xc5\xc0\xf0\x9cgA\xe5\xdfr\xc0\xca\xf7B\xc0|\xb7\x88A\xd9\x1e}\xc0J%\xb7\xbf\x05\x12\x8fAH\xb3E\xc0\xea\xa3\\\xbc1\x13~A\xb6\x89r\xc0\xac\xd5\x85>;\x1a\x8cA\x8b2l\xc0\xad\xc4\xcb?\x89C\x90Ar$j\xc0\xdb%,@MK\x8cA\x1b`\xa0\xc0\xdb\xe2\xb3\xbf\'\x9c\x95A\xa0\x80\x9e\xc0Y\x18\x1c@]\x81^ARC\x9c\xc0\x81J\x8a@\xd9\rvA\xec0\xa0\xc0\xee\xfed@E\xce\x86A\xe9<\x97\xc0\x98\xcf\xb7@\x99\xe6fA\x80O\xa1\xc0\xf5\xac\xb1@\xe1\x07WAk+f\xc0w\xee\xd9@w\xc6sA\xb2V\xa5\xc0\xb9\xb3\xc1?>{lA\xcb\x07Y\xc0\xe70\x91@\xbe\xa2\x88A\x8b\x99p\xc0\x16\xba\xbb@O%\x8fAnVH\xc0\xf7\xf0\xf5@\\\x87yA4{^\xc0\x15\x8d\xe9@@\x0e\x8cA&\xecf\xc0\r\xfd\x0fA\xdbR\x90A\x80\xdag\xc0\xe9 A\xdcz\x8bA0\\\xa3\xc0\xddY\xbf@\xc0g\x96AV\x1c\x9e\xc0\x89,\x1aA\xf2\xb7aA\x88\xa4\xa4\xc0T\xef*A\xc8\xdbmAz/\xa4\xc0\xbc\xc83A\r\xae\x85A\x8eD\x9f\xc0-\xbaJAQ\x01bA\xd9Y\xa7\xc0\xef\xc6GA\x89\xc9SAE\x15\x83\xc0OT\x10AZ\xcdhA\xc0Fg\xc0\x84\x0f?A+\xf8\x88A\xe5\xa1q\xc0\x13\xc1<\xc1\xa5\x90\x87\xc1/\n\x0c\xc0M\x1aM\xc1}\xefb\xc1r\x82\x0f\xbf\xb553\xc1\xef\xd4\x84\xc1"\x93\xf1\xbe\xac\x931\xc1P\x06s\xc1s2T\xbf\x14\xd9\x1c\xc1E\x99`\xc1o\'\x01\xbf1\xa6\x0f\xc1\xbc\x03i\xc1\x14X$\xc0*WI\xc1\xcc\xb1R\xc1;v!\xc0%\x8e\x0f\xc1|\xaf\x8f\xc1\xeem\x03\xc0\xb1\x02\xef\xc0\xe0\xf0\x88\xc1\xf7\x13\x0e\xc0\x04\xc7\xf3\xc06\xf3x\xc1\xe4\xd9\xf6\xbf\xdb\xd5\xbd\xc0A\x1a\x90\xc1\xbf\xb6\xf8\xbf\x89\x16\xc1\xc0Q\x8f\x98\xc1c\xb6k\xbf\xe41\x92\xc07\x17\x8b\xc1\xc6j\x1a\xc0\n\x16"\xc1\x12\xbf\x8b\xc1\xee\x8e7\xbfA\xf0\xdb\xc0\xb9\xcfs\xc1\x92\xe7\x1e\xbf\x1dv\xa7\xc0\xba\xafd\xc1\xea\xe9*\xbfB%\x82\xc0:b\x86\xc1\x80\xc4\x16\xbf\xd4:j\xc0t\x06x\xc1\x1eFH\xbfT\x8e\x1d\xc0\xca\xbbe\xc1\xed\x10\xbd\xbeQ\xb5\xc0\xbfjdj\xc1D\xa4\x08\xc0e\xad\xad\xc0\xb4\x7fV\xc1\x14\x0e \xc0;F\xce\xbf\xc5]\x90\xc1\x8c0\xee\xbf\x99\x84\xb2\xbe\xd5\x8e\x8a\xc1A\xa0\r\xc0,]\xb9\xbd.!y\xc1\\,\xf9\xbf\xe5\xa9\xba?.B\x8e\xc1\xd4\xdb\x08\xc0n\x84\xc6?\xe4[\x97\xc1\x08\xf1{\xbf\x89\x8cH@#\xcb\x89\xc1\xcd\xb3\x18\xc0\xf6\x06 \xc0\x84\x0e\x8d\xc1H\xefo\xbf2\xb9\x10?r\xb7r\xc1Iy \xbf0\xd9\x11@\xedvf\xc1x\xd1\x1a\xbf.\x8cm@\x97\x0f\x86\xc1\xa2\x8f\x1a\xbfJ\xfc~@<\xb3p\xc1\x02LB\xbfv\xd4\xa5@\xe4\xb6a\xc1\xf0\xcdf\xbe\x18\x90\xbd@/_i\xc1\x90\x8f\xe8\xbf>E\x0e@~\xb3X\xc1\x833\xfc\xbfY=\xc0@\xb5\xf0\x8f\xc1H\xaa\xd8\xbf\xa1\xe8\xed@?\xfc\x8a\xc15\x87\t\xc0\xddi\xea@`]w\xc1\xdb\xa6\x07\xc0/\xe1\x0bA#\x0c\x8f\xc1\xdc\xcc\xf7\xbfL\xf2\rA\xf4e\x98\xc1\x92\xdbR\xbf\x95\x06%A\x96\x14\x8a\xc1d\x16\x16\xc0\x85|\xa1@\xba?\x8c\xc1f\xe96\xbf\xa7\x8d\x05A\xdael\xc1e\x96\x1a\xbf\xce\xbd\x1dA%\x91c\xc1\xb2\x17\n\xbf%83As\xd0\x85\xc1\xa0\x9f\x13\xbfN\xcf,AF\xd4r\xc1\x85k \xbf\xc6nJAE\xa8c\xc1xS!\xbf\x8b#WAP\x87i\xc1\x03\x01\x19\xc0\xe6\x92\x18A\xc6\x03T\xc1\x1c\xbe\x13\xc0\x17\x81~\xc1M\x94.\xc1m\x0c$\xc0\xbev\x82\xc1\x17\xf2\xf1\xc0\xffu\x0f\xbf\xc2&l\xc1\x91\xaf&\xc1\xbe\xeb\x81\xbf\xcf\xaet\xc13\xbe\x04\xc1\xea\xd9@\xbfh\xbcV\xc1\xb9\xd4\xf1\xc0\xd7\xf3\xd8\xbew\tH\xc1\x10\x1e\x00\xc1\xdf\xa3.\xc0di\x85\xc1\xe6\xbb\xd1\xc0\x99h\xf4\xbf\xf6\x1eM\xc1\xe6%8\xc1\xab|\n\xc0\xde\x823\xc1\xa9\xc3!\xc19 \x1c\xc0\x14\xc8-\xc1fm\x0c\xc1\x10\xec\x9a\xbf\x9ds\x18\xc1_P:\xc1\x98\t\x1a\xc0\x8f.\x18\xc1&\x9fG\xc1F\x9d\x7f\xbfo\xe2\x00\xc1\xd5\xb8,\xc1\xcf}\x08\xc0\x8f\xdfY\xc14\x9e0\xc1\xa7A\xfb\xbeO\x9e1\xc1q\x05\x0e\xc1\x05f\x11\xc0\xaa$\x11\xc1\xe0\x8d\xf5\xc0"\x1fP\xbf\x91\xbf\xf4\xc0m\x9f"\xc1yXU\xbe\xa7m\xe8\xc0#\xc5\x17\xc1\t6T\xbf~\xa2\xc6\xc0o\x1f\x03\xc1\x93\x9d\xa3=\xce&\xb0\xc0#k\x02\xc1\x80\xa1\xdd\xbf\x03\xfa\x0e\xc1\xd7\xc6\xfd\xc0\xe6wh\xc0\xb7\x97\xa5\xc0\x0f\xb9>\xc16\x1c\xfa\xbf\x8f\x00\x84\xc0\x9929\xc1a\x8d\x15\xc0?\x8fe\xc0\xc9e\x15\xc1\xe9=\xfd\xbf\xd9\x11\x16\xc0):9\xc1\xbbe\x01\xc0YV\x0c\xc0U\x93K\xc1\xc5\x94a\xbf\x81"m\xbf\x06\xac6\xc16\x92\x02\xc0\x91\xd5\xc7\xc0\xc6\xf44\xc1\xe3\xbcN\xbf\xed5U\xc0|\x94\x0e\xc1E\x051\xbf\xb5%\xc1\xbdP\xa8\'\xc1\x0e\xbeg>\x07\xc80\xbe\xfbj\x14\xc1FJc\xbfHb/@s\r\x07\xc1\x98\xed8\xc0N\xb4\x10@\xda<6\xc1/S\xe5\xbf]\xb8\x89@\xf756\xc1\xfa\x13\x06\xc0CA\x84@\xde\xf0\x16\xc1\x87\t\xf1\xbf\xfbm\xa5@\x0c\x079\xc1t\xf3\xcd\xbf\xf1Z\xaa@\xd9=Q\xc1\xe0_m\xbf\xa6k\xd1@\x88\xd06\xc1\x9f\xd0"\xc0A9\xaa?\xcap8\xc1\xd1\x1d;\xbf\xb0\xe2s@\xf2y\x0f\xc1\x80Q\xe7\xbd~\x16\xbe@.\xd4\x00\xc1\xa0n\xda\xbeh\x98\xea@\x0c\xb2(\xc1>01\xbf^\xf7\x04Av\xe7\x05\xc1K\xe0Q\xbf*\x11\x16A\xf4B\x00\xc1bP2?\x95*\x1eA\x9e\x1f\x02\xc1\x16u\xf3\xbf\x8a\xc2\xc6@G\x84\xe0\xc0\xf6\x86%\xc0#\xdf\x1aAum9\xc1@\x03\xff\xbf\xf0\xec-A\xdd\xcb\'\xc1\n=\x00\xc0JD8A#\x9e\x16\xc1\xb4\xa7\xce\xbff\xa5JA\xe7U:\xc1S\xe1\xf2\xbf\x12>KA\x8e\xf0G\xc1]\x92\x13\xbfGqaAB\xa71\xc1\xbe\xd4\x03\xc0\x94\xe9\x10AC\xb23\xc1\xbb\x95\xfa\xbe\x00\xc9?A\x13V\x08\xc1K\xf4\x9d\xbf$?TA\xf5\xe0\xf8\xc0\x8aj\xb0\xbe\xbe\xeelA{\xd8"\xc18\x14\xb5\xbe\x94MmA*\x90\x08\xc1\x8c\xbbB\xbf\x8dp\x81A2\x8a\xf5\xc0\x00\xd3`\xbfr\x1f\x88A\xcd\xad\x01\xc1Z\xe4\x06\xc0UJRAS%\xdd\xc0\x80\xec%\xc0\x05\xc5\x9a\xc1EI\x8c\xc0\xc9\x9c!\xc0\xb4h\x9f\xc1\x91n\x93\xbfT\xa5\xf3\xbeL\x08\x95\xc1\x1c+r\xc0\xf2\xce>\xbf\x1b)\x95\xc1\xae\xc5\xdd\xbf.PT\xbf\x17e\x8a\xc1\x9cY\xa0\xbfp#\xb5\xbe\xb3\xbf\x82\xc1O\x13\xe0\xbf\x98P\n\xc0\xb0\xfe\xa0\xc1\x9fN\x8e\xbe\xcc\xa4\x1b\xc0`\x93\x82\xc1\xe9\xa5\xa2\xc0\xee\xda\xf5\xbf\xce\x85i\xc1\xa8\x0f\x81\xc0Y\xf3\x05\xc0==p\xc1\xaa\xe7$\xc0\xb5n\xed\xbfd\xcf^\xc1\xc7O\xa9\xc0\xd4\xe9\xda\xbf\x9f6S\xc1\x0eE\xbd\xc0d\\\xaf\xbf\t\x0bE\xc1\x9a\x8f\x93\xc0\x7f\x08\xfb\xbf\x87\xde\x8b\xc14|\x95\xc0\x03\xa4\x1e\xbf\x19wf\xc1\xf8a\x16\xc0\xdf/\x0b\xbfp\xc6N\xc1\xab\xa7\xa8\xbf\x86\xcee\xbfq\x02=\xc1C\xa9\x84\xc0\x80dK?I\x1d5\xc1\x05?9\xc0F\xabW\xbf\xb6\x19\x1f\xc1\x02\xbb\xb1\xbf,]\t\xbf\x9e\xb4\x19\xc1\x9b\xee\xfc\xbf\x13i0\xc0\x95QS\xc1e\x85\x86\xbc1e\x1b\xc02\xff\x10\xc1\x8f8\xb2\xc0\xef\xcc\x12\xc0\xe3\xa5\xb9\xc0\xc3\xd7\xd5\xc0\x9b@V\xbf\xcc]%\xc1\x84U\x97\xc0/\xa6`\xbf\x94\x12\x14A&\x7f\xa1\xc0\xbfF\x19\xc0\xc9\xa6\x15Al(\xd4\xc0\x0cXj\xbf\xe3\x962A,\x1dq\xc0v\xefo\xc0C1\nA\x8e\xcb\xd9\xbf\xad{\x86\xbf\x88\xae\x18AP\x91\xa9\xbf\xfd\xd5\x19?\xfa%3A\x0b0|\xc01\x81m\xbf4\xb65A8\x89\xdd\xbf\xa8P^\xbf\x1b#MAJ\xb5\x8d\xbfH\xce\xda\xbe\x88\xc1XAe\x8f\xeb\xbf3\xe0\x0b\xc0\x08\x14\x1dA1\xb5Y\xbfH=\xee\xbf\x18\xe0MA\xa9\xc4\xa2\xc0\x1b<\xa7\xbf\x00!fA\\\xeb\x93\xc0U\xe6\x14\xc0\x89\xfanA\xdfI \xc0\x0b\xc2\x0e\xc0\x15,\x81A\x99\x7f\xa4\xc0J\xbb\x0f\xc0\xf2\xb0\x83Ad\xd8\xc5\xc0~\xe6\xe8\xbe\xd8\xaf\x8dA\xfc.\x8a\xc0\x90/\x13\xc0\xee\x9cOAqr\xa7\xc0\xa6\x1e\x0c\xc0\x9c\xf8zA\xfc\x1f\x04\xc0\x82;Q\xbfO\xd3\x87A\xb8]\xb2\xbf\x19\x17(\xbfCI\x94A\xe43g\xc0%\xd2\x0e\xbf\xc6L\x92A\xe0@$\xc0"\x8eZ\xbf\xb0\xd9\x9eAn\x16\x93\xbf\x9bA \xbf{\xb0\xa7A\x01\xcd\xd4\xbf3/\x0e\xc0\x8c%\x88Ap\xbc\xcb\xbd\x83N\x11\xc0\xa0\xe9\x9f\xc1\xf7G\xb1?F\xe9\xf8\xbf\xcdl\x96\xc1\xa8}\x1d@O\x00\x0b\xc0bs\x94\xc1\x0c\xdeo@v\x00\xe9\xbfG\xaa\x89\xc1\x86Q\x9f?\x96\x9e\t\xc0\x06\x01\x89\xc1K\xa6\xc8>hVH\xbf\xb3\x04{\xc1p\xca\x0c@\xa6\x94\x01\xc0Tf\xa8\xc1\xa2\xae\xe3?e\x98U\xbf-\xb3\x8d\xc1\xf9\xc5\x8a@Ogq\xbfv_\x83\xc10\x0c\xa4@\xbc\xb9+\xbf\xf0\x17m\xc1\xad\x80\x1c@\x97\tu=\xef\xfaw\xc1\xca>q@f\xe1^\xbf\xa1ER\xc1\x14y\xac@\xb9\xc7_\xbf\xe8\xd9N\xc1\xa3\x84\xaa@\x89\x87t\xc0\xe1)\x82\xc1\xf8\xa6\xba@\xf8\xc2\x04\xc0\x1b\xdfM\xc1\x8f\xaa\x8c?\xb3\xd6t\xbf\xb3mC\xc1\x9d\x10\xdb?\xd2\xd9\x0e\xc0K;2\xc1\xd4\x16z@1\x8d\x01\xc0\x92\xe9#\xc1\xf4\xc5q?\x93b\x02\xc0L\xea\x1a\xc1\xf5V-?\xd8\x98\x14\xbe=\x96_\xc1\x9bE\xdc?\x85\xfb\x9d\xbf-)"\xc1Iz\x95@\x12\xac\r\xbf\x92C\t\xc1\xaa\xb4\xaa@\xe6,9?X\xbf\x05\xc1\x15J\x9c@n\x9b\x18\xbf3\x8c\x10\xc1#M\xcb@\x95\xeb\xf7\xbf\xe4\x86\x06AC\xbb\x95@\x90\x990\xbf\xb4\t\x11A\nK\xa8@\xf58\xf1=\xb9\x8d$A7k\x9c@\xcd\x0c\x0e\xc0\xa6#\xc4@\x0fP\xd4@^o4\xc0$\xd1\x1fA\x9a\x07\xeb?9\xee\xf4\xbf\x89"BA\xbc6\x10@\x98\xa3\x18\xc0\xd6 g\xbf\xd9M`A\xc2\x12\xf3?C\xbc%\xc0\x82\x88\x13A\xe7p\xbc?zV\x13\xbfG\xa6AAR\x8e\x92@\xfd\x9d\x9d\xbf\xc2\x90ZAVf\xa4@`;\xc2\xbeI\xd2oA\x12*.@\x85n_\xbf\xe1\xd4lA\xeb\xc9\x91@\x1a\x80P\xbf\x1bH\x82AK{\xa1@3\xa0\x1c\xbfr\xd7\x89A\xe4@\x97@\x95\xe5\x1c\xc0\xef\x03WA\xd0\xd4\xbf@\x1dv\x03\xc0)\xc2\x88A\x9f\xce\x9d?\xbc<\x0b\xc0\xbf\x81\x93At\x00#@R\xe6\t\xc0LT\x94AgB}@\x93\xbd\xec\xbf\xc5S\x9fA\xb6\x19\x95?\xb5\xa0\xf5\xbfz9\x9fA\xd1^\xc3>\xdc\x8bF\xbf\xa37\x84A\xce2\xcd?\xd9\xd4Y\xbf"\xfd\x9aA-\xb8\x8d@\xb3\x86\x86\xbf\xcc\x82\x81\xc1\xf9}\xf1@\xbe\xfc\x00\xc0\x07\xe8d\xc1\xe7\xca\x03A\xbe\xcf\n\xc0(\xecj\xc1\xed\xe1+AD\x0c\xe9\xbf\x05\\T\xc1\xadD\xe0@\t\x92\x94\xbf\xe0`S\xc1\x9b\xf8\xf8@\xb8\xff\xfd\xbf/g?\xc1\xf9\x92\x08Ad\x1e\x0e\xc0d\xe0\x88\xc1A\x15\x03A\xef\x93/\xbf\xc4\x82e\xc1/?(A\xf9\x98\x99\xbe[pP\xc1\xbb7>A\xf5I\x0b\xbf1\x805\xc1\x99\xd7\x0cA4\\\x9d>\x7f\xb2.\xc1\x19U"A\xb3Z_\xbf\xe2i\x18\xc1\x10\x1fBA\xa3\xe1\x16\xbf\xe9r\r\xc13\xab5A\x13\x0e3\xc0\xd6\xd5K\xc13\xffPA\x08j\x1f\xc0x\xe7\n\xc1)7\x02A\x17\xc0\r\xc0\n\xb8\xed\xc0$,\x18Az\x0b\x15\xc0\x0b\xab\xf7\xc0\xf8\xb5&A\xe1{\xf4\xbfs8\xc2\xc05l\xfe@\xf0}\n\xc0jO\xc3\xc0\x1eE\xec@4\xb0)\xbf\x9f\r\x8d\xc0}}\nAz\xd6\xfe\xbf\xf8B\x1e\xc1_\xf0\x01AAYp\xbf\xb3\x12\xd9\xc0\xa1\xe62A\xae*\xa6\xbf\x14\x9a\xa0\xc0\xf0\xa8;A\xc2\x0f0\xbf?\xd2\x7f\xc0\xc30\x18A\x8ee\xb1\xbe<\x88\x8b\xc0\rq0A \x13\x84\xbf\xe4\x17\x12\xc0:s9Am\xeal\xbf\xbf0\x0f\xc0]f:A\xee\x12]\xc0\x15\xcc\xa7\xc0\xffSGAhH\r\xc0\xf4\x14\x82\xbe\x81\x1a)A\xde\xd3\x1d\xc0ww@@\xb7\x86\x10A\xcd.(\xc0s\x1e*\xc0u!\x07A\x9di\x95\xbf\xd7\xc4\x8b?Q\x8e1A4$k\xbf>\x9b\x1d@\xb0\x93AA3\xf3\x19?\x17\x0f\x87@\x15`\x15AfN.\xbf=\x82q@\xbd]5A\x98\x95B\xbf\x88\x84\xb0@r9:A\xec\xd2R\xbf\xa1\xa5\xcd@\xf6N8A\xa3\xcd*\xc0\xa9\x12\x1b@\xde\xccJA\xf9f\t\xc0\x08\xbe\xba@(\xad\x02A\xe1+\x08\xc0%E\xec@\xc4\xa5\x16A\x0f\r\x11\xc0u\x0f\xee@\xe7\xa4%A\xcc\xf0\xcd\xbf\xd8\x01\x11A\xe7e\xfb@\x83\xe4\x01\xc0q\x00\x16A\xa6\x9e\xd6@\xfb\xf3!\xbf5k.A\xd8\x9b\x10A\xf3\xac\xfd\xbfhY\xb7@\xd5c\xfc@+\xb9Q\xbf\x8b\x91\x07A\x9ch0A\xb7\xa4\xa9\xbf\xb2!\x19A\x05\x99:A\x9f\r\x84\xbe\xcf\x8e6A\x1e5\x10A+d@\xbf\xf5\x19.Ag\x93.AY\x8cR\xbfx\xb6IA4\t:A,Q*\xbfC\x81XA\xf5s2AT\x07\x17\xc0\xd5E\x18A\xad\x02LA\xeb<\x1a\xc0\x01}YA\x01L\xf3@\x1a\xe8\t\xc0\x15yxA\x8e\xb8\x07A\x1e\xfa\x17\xc0l-kAsh$A\x0b\xc3\x16\xc0\xd8\xdb\x81A\x06\x95\xf5@\x98\xd2\xf9\xbf\rp\x84AEd\xd2@\xd8\xcdb\xbf2QOA7\xdd\x01A\x19\xf1`\xbf\xf0-zA\xf8\x88,ASqb\xbf\x02\xb4H\xc1vYcA@C\xdc\xbf\xa2\x0e:\xc1\x08\xe3rA6\xff\x0b\xc0T$1\xc1K\x9e\x85A\xf4\xb9\x04\xc0\xc7\xc0\x1a\xc1d\x8dfAj\xf5\xfe\xbf>g\x1a\xc1\xdeG\\A\xe3v\xfe\xbe\xd7\xe8\x03\xc1\xeb\xa5qA\xa4\xe4\x0c\xc0f\xb0_\xc1\xad^lA6>m\xbf\x13\xa1\'\xc1\x94\xaa\x8bAH4h\xbfm\xd5\x10\xc1\xa5A\x90A\xc0o%\xbf\x16\xd7\xea\xc0\xdc%|A\xfd\xa61\xbf\xd4\x8c\xeb\xc0\xb60\x8aA\x9dN>\xbf\xf7w\xc4\xc029\x90A\xd6\x11\x15\xbf\xbd\xdc\x9d\xc0\x0f\xf1\x8cA]\xdc\x1a\xc0\xce\xda\x0f\xc1F\xa0\x97A\xb4R\x1a\xc04\'\xaa\xc0n\x8edA\x82\x03\t\xc0\xd5\xb4G\xc0;&tA\xf3j\x1d\xc0e\x81^\xc0\xd0\x15\x87A\xa9\x1f\x0b\xc0\xc0\xbb\xfd\xbf\xdf\x1e]A\xa1g\xa8\xbf\xa3\xbd\t\xc0\xde\xdd^A\x82\x0c\x1e\xc0G5\xa9\xbe\n\x8cnA\x86\xa9-\xc0\x89\xcf\xbf\xc0=\xe7jA\xd0\x00K\xbf\xe1\xd3D\xc0o\x97\x89A\xe5Z\x0c\xbf\xc7M\xb8\xbfG\xaa\x8eA%\x8cg\xbf%uK\xbce\xb3qA\xdf\xc5\xb0\xbe\x1ct\xaa>K\xb1\x85A)kL\xbf\xa7u\xbb?`-\x8fA\x04a\x16\xbf\x9a\xcb\x1d@\tA\x8dA\x8d\x01\x05\xc0\xda{\xb9\xbf\xc6U\x99AC@\x1e\xc0Nj&@\xd1\xd1hA\x98\xcb\xf0\xbf\t\xde{@]\xaciAF\xe7\t\xc0\xde?z@\x84j\x85A\rL\xe6\xbf\xa7\x8e\xac@\xbdifA\x14\xca\xf1\xbf\tl\xac@\xa5\x8dTAFw\x1a\xbf\xee\xa5\xd4@ !oA@ \x08\xc0\x1c\xd4\xa6?O\xf3fA$!\x8a\xbf\xe1\xde\x8e@#\x97\x8aA 4\xc8\xbe\xc2-\xb7@\x8dL\x8fA<\xb8<\xbf8)\xef@:\x97xAWP\x0e\xbf2V\xf7@\x88\xdf\x89Aq\xfc0\xbfw`\x10A\xcc\'\x90A\x82p#\xbf\xe0C\x1dA!\xfb\x8bA\x03\x92\x15\xc0\r~\xb6@0N\x9aA\xa7J\x15\xc0H\x8c\x1aA\x01GcA\xcd(\xfa\xbf\xeb\xc34A\xc65pA,A\x11\xc0f\xfe0AO\xea\x84A\xfa\x7f\x04\xc0,^HAM\tbAuC\xe5\xbf`\x85JA\xf1\x88RAG\xa7(\xbfn\xb9\x0bA\\\x1ekA\x94X0\xbfys>A\x018\x89AR\xc6\x82\xbf\x85\x99?\xc18\xcf\x89\xc1#\xa09?\x85\xd6I\xc1\x11\xb4`\xc16Q*@i^2\xc1\x10\x82\x87\xc1\xf6h#@\xdf\x959\xc1\xef/t\xc1\xb20\n@\xdaj\x1d\xc1\x1aV_\xc1x\x08\x0f@\xf0X\r\xc1\x8a\xb5i\xc1\x91GF?_\xe1H\xc1\xdc\x85O\xc1t\x7f\x13?\x95V\x0f\xc1V\x80\x8f\xc1\xd3\x15m? \xcc\xea\xc0\x06\xee\x88\xc1\x9aGQ?\xadi\xf3\xc0B\x11|\xc1\xab\x88p?^\xe4\xc1\xc0\x87\xf8\x8f\xc1\xb6\x1cl?\xdb\x89\xc3\xc0\xd8\x96\x96\xc1\xb1%\x06@\xf3i\x95\xc0\x12C\x8a\xc1=>A?\xb2\x80\x1f\xc1\x1cv\x8b\xc1\xe3M\x11@8n\xdc\xc0\xfaao\xc12\x9f\xeb?\xe5\xbb\xb0\xc0\xe6Gh\xc1U@\x1c@\x87hp\xc0\xb6\xd2\x85\xc1&.\x15@\x9dS\x8a\xc0\xe9\xc1s\xc1\x95\xb4\x0b@\xa8\x7f\x1e\xc0\x7f\x9fc\xc1\xbc\xbf\x08@#\xbb\xa6\xbf\xcd\xe0k\xc1\xa6\xe5,?]\xb9\xaf\xc0\xc3\xfcW\xc1Z\x94%?s\x10\xb6\xbf\x15\x99\x90\xc1\x06^O?\xf5\xa2\x9e>\xdf\x06\x8b\xc1\x08i:?p=8\xbe4.{\xc1\xcd\x92L?Kf\xbc?\xa7/\x91\xc1E,i?\xc8n\xbf?n~\x97\xc1I\x7f\n@p\xbc7@q6\x8c\xc1v\x9e2?\xc5\x0c"\xc0\xfb/\x8d\xc1\x19\xb8\xf1?\xbc\xf3%?\xef\x06r\xc1\xdc\xef\x02@\x17\xae\xf6?z\xd6f\xc1\x00\x9d\x13@"\x91q@A\xc6\x85\xc1\x13\xdc\x0c@\xf8\x81Z@\xf3yv\xc1t5\t@\xe2W\xa4@#\x10b\xc1\x05#\x10@\'\x0b\xc7@B\xdai\xc1\x8b_"?\xa5\x18\x08@LEY\xc1\x92\x1c\xd8>\xba\xf8\xbe@\t\xdc\x8e\xc1\x8a\xa5\x87?5\xdc\xed@\xbe\x18\x86\xc1\x9c?U?.\xa5\xec@o]u\xc1Ij~?e\xfe\x0eATU\x8f\xc1\xac\x01\x82?\xd0\xd6\x0eAz\xe8\x94\xc1\xaeV\xf8?\xd6M%A\x93\x01\x8a\xc1q\x83Y?\xe56\xa5@\xfd\x1e\x8c\xc1:X\xf9?\xd5M\x04A\xc1Em\xc1\x10\x00\x0c@(\xa1\x19Ak\xdbb\xc1\xbf\xf3\x17@\xd8\xe53A\x95\xf5\x84\xc1\xc6N\x1a@\x8b\xd25A\xd5\x1co\xc1\xb2\t\x12@\x06\xb6KA\xbf\xc4]\xc1\xd7\x9a7@\x00!TAi\x03i\xc1/\xa8\x85?\xf6\xa5\x1bA\x1a\x89U\xc1\x1b\xc2\x1c?(\xf5x\xc1\xdf\x9e,\xc1R\x84\x14?c\x96\x82\xc1\xe1\x9d\xf9\xc09\x91\x16@\xa3\x8fk\xc1\x1e\t)\xc1\x14Z\x1f@\xbe\tl\xc1\xb7{\x10\xc17\x11\t@\'\x06V\xc1q\xb0\x02\xc1\xc6\xc9\x14@o\xffR\xc1\xad\xd6\x00\xc1\xf4\xa5N?W\xb2\x81\xc1\x04\x95\xd3\xc0\x05[X?\xce\x02K\xc1\x9c*>\xc1\xb27>?\xe3\xc34\xc1K\n7\xc1\x0bF\xed>\x97\xa24\xc1\xab\x1a\x12\xc1\xd2u ?\x1e=\x1a\xc1\xe1\x178\xc12JK?\xf6\x8f\x1a\xc1\xb3\xe5E\xc1\xe6\x07\x08@\xf6_\x07\xc1\xb3M2\xc1\x86\xfc\xcd>;\xb1V\xc12\xb85\xc1[\xb4\xd5?\xa2\xab"\xc1\x9d\xdd\x04\xc1\xa9n\x02@\xc5\xef\x10\xc1\xbb\x93\xda\xc0\x0f\x11Q@\xf00\xeb\xc0\xb3\xbe&\xc1\x15\x82\x1c@\xdc>\x08\xc1\x93\x18\t\xc1\xad&\t@\xd1/\xc4\xc0[\xb2\x04\xc1\xb8\x18\x14@c\xff\xaa\xc0\xf9\xdc\xfb\xc0{Y,>i\xb3\x11\xc1!\xb6\xd7\xc0\xac\x87/?\xf9\x8a\xad\xc0\xf1\xb1=\xc1\xb0\x172?;\xd6\x82\xc0\x83g,\xc1K\xb9.?)t}\xc0\x08.\x14\xc1\xb2\xe8\x83?\x88\x86\'\xc0R~>\xc1\x0b29y)\xc1\xdd5!@\xc5\x80.@\xcb(\n\xc1\x9f5R?\x95\xcb\xf1?\xb5\xa1<\xc1\x8e\xac\x8e?\xc9~^@\x1d\xc9)\xc1@\xee\x7f?\xd9\xf8y@Vv\x0c\xc1\x8d\xe7\x1c@\xea\x82\xa0@3\xa2=\xc1O\x04v?\xee\x95\x9e@M\x04E\xc1z\xa9\r@\x1d2\xd7@1F-\xc16\xba\x8c?\x83\xb7\xed?J\xc56\xc1\xd6p!@=?]@\x96"\x0e\xc1)\xf0\xa0?_J\xab@\xca\x8c\xfb\xc02f @\xb13\xf7@~\xb42\xc1Et@@\x92\xe5\xe0@g\xb1\x16\xc1A\xa6\x07@i\x06\x10A\xf1\xda\xf4\xc0\xca6\x0e@\x9bT\x14A\x84\x00\xf5\xc0\xc6\xacH\xbf\x17\xb6\xc1@Yt\xf2\xc0=\xd7\r?\xfa\x8b\x1bA62<\xc1\xd7\x98\x89?\x05\x8d4AT\x106\xc10[c?\xb5\xbe/A\xd4\xae\x10\xc1\x88`b?6ZIA\xf8\xb25\xc1\xa4\xee\x8f?\xd6\xc3LAt\xaeF\xc1B\xeb\xf9?H\xca_A\xd5\xb30\xc1#;F?~\x7f\x0eAY}4\xc1\xe3\xe4\xed?\xc1\xd3AA\xb4\x94\x06\xc1\x9c\xc9\x19@\xd2g_A(\xba\xf7\xc0\x0e\xec\x1b@\xf1\tqA\xaf\xdf#\xc1\x95{\x0c@\x99\xb4tA\xba\x02\x03\xc1\xdb\x8b\x0e@s\x9f\x83A\x11k\xef\xc03\xf3(@\xb7\xa2\x88A7`\x00\xc1\x8e\xf3`?\x0epWA\x0f\xcf\xe5\xc0\xf1\x89\x8b?\xb6b\x9a\xc1~~\x85\xc0\x8c\xe5\x14?\xae;\xa0\xc1\x9fU\xbb\xbf\xc0\xdf\x0c@\x86\x8f\x94\xc1\xd8y\x80\xc0AQ3@U\xee\x94\xc1\x1f\xeb \xc0\x874\n@\xffn\x8a\xc1/\xf4\xad\xbfYP\x14@\xa8\xe6\x82\xc1F\xc9\xe9\xbf\xe8\xb9E?\xae+\xa1\xc1\x90\x9c\xc0\xbd@\xc6H?\xe9}\x82\xc1\xf5Q\xa7\xc0Y\x10\x94?9pu\xc13\xf1\x88\xc0\xf0Tm?\nOu\xc1\xbbJ+\xc0\x84\x1e\x92?\'\xf7Q\xc1\x18\x92\x9e\xc0\xc0\xab\x82?&0V\xc1u\xfc\xc6\xc0\x04\xd8\x1d@9b4\xc1\x7f\xa1\x8c\xc0\xe6\xe0\xc8\xbe\xf2h\x8c\xc1\x99s\x9c\xc0\xe3\xa3\xf3?\xb4\x0fe\xc1\xad\xce\x0b\xc0D\xce\xe1?sVY\xc1,\xc0\xb7\xbf6\xc2P@u\xf83\xc1\x914z\xc0\xe6\x1c\n@;d>\xc1\xb0\xc3\xae\xbf\xbbq\x01@|\xa7\x1c\xc1\xe5V\x8f\xbf\xb9J\x1a@\xe0\xc5\x13\xc1i\t\xc3\xbf\x13\x9a\x02>\x03\xf7N\xc1\xa3lG\xbf\xbf\x02\xad?\xffg\x14\xc1\x88\t\x98\xc0\x8b\x17\x0e@\xbf&\x04\xc1k\x89\x96\xc0i\x14+?\xf4`\xbe\xc0\xb9\x10\xd2\xc0w\x0e+@\xb18\x0b\xc1\xd5\xb1\x98\xc0\t\x05J?\xdf\x10\x05A\xae\x93\x99\xc06\xdd\x0f?\x87|\x0eA\xb7\x97\xc7\xc0R\xae\x02@\xb0W\nA\x11o\xa2\xc0\xc4\x8dY?\x01\xb4\'A\xc1\xc1\x8b\xc02\x19P?\x9d?\x1eA6\x9b\x8a\xbfv\xac\x0c@\x16\x1d/AU\xa1\x95\xc0\x15WJ@\xa3\xa8=A\xde\xea9\xc0cB\x04@52OA\xf1\x18\xa9\xbf\xc3O\x07@Q\x83^A\xe2w\x05\xc0{9\x17?W\x82\x19A\x03\xc7y\xbfX\x10B\xbe\'\xa5VA\xa9<\xb0\xc0!\xa0\'?\x15\xe9rA\xb2`\x89\xc0\xa6\xd6F?EKpAg,)\xc0}\xe0S?\xa4\xbc\x80A\xa1\xf6\x9f\xc0\x87eR?\x956\x84A\xa9X\xbb\xc0\xec"\xbe?9\xca\x8cA\xfd\xb3\x92\xc0\x81\xc7\xaa>\'\nGAl\xb9\x9d\xc0s\x03\xf2?\x8f\xc9|A\x01.\xfd\xbf\xda\x19\x07@>H\x88A@\x96\xa3\xbf\xc5M!@\x0f\xf5\x93A\x94\x96h\xc0\x05\xbd\x12@o>\x93A\xe89\x03\xc0\xc6\x90\x0c@\x1d\x94\x9fA\x94e\x8f\xbf\xf6\xe9\x15@\xd2Q\xa8Aaa\xc2\xbf<;/?\xcb\xef\x87A\xd2\xd1\x18\xbe\xda\xd1!?\x037\x9f\xc179\xb5?*\tG?s\'\x93\xc1\xcd\x06\xec?\xe2\x0e/?EB\x95\xc1\x81I\x81@\xd1\xd0&?Sd\x8a\xc1\xa7\n\x94?8\xea\x8a?\x89\xc4\x87\xc1\xdc\xeah>wd\x13@\x94\x0e\x82\xc1\x1a~\xdb?\x01?7?\xa0\xb0\xa4\xc1(\x82\xc8?~\x08\x06@,\x88\x8f\xc1\xa5\xe6\x8b@\xde\xe8\xf3?\xab\xac\x83\xc1\x88`\xa1@\x06e\x0f@F\xa1r\xc1\xc5B.@U\xf5\r@\x83:g\xc1k@\xa1@\xa3l\xe9?\xd0gN\xc1\x0f\x16\xb0@%+Q@\xfb\xaaE\xc1\xfe\xce\x97@\xdf\xd1f?\x07\x84\x7f\xc1\xe7\xa3\xb5@\xc9@\xeb>\xccxR\xc10"\xbf?f\xadD?p?&\xc1\xa6$\x1d@|nR?\x85\x9b\x1d\xc1^0\x82@r\xb1\x10@|\x03\x19\xc1\xd8\'"?\xc9N\x1c@hf\x19\xc1\xbe<\x97?\xa4>}?\xae\xab\t\xc1\xfa_\xd3?\x0b\xa4\x08?:\xa9U\xc1\xc5\x92\xd8?Q\x18,@[\xae3\xc1Y\x1b\x80@\xd7%\xa4?\xda\xf1\x12\xc1\x9ez\xa2@4c.@\xacy\x1b\xc1\xf7\x89\xbf@\xb8\xfb/\xbe\xdb\x83\x12Ah\r\xaf@\xd1\xfe\x18@\xcd\xdb\'A\xc2\xc2\x98@\x1f\xfc5?lr\xc2@\xd0\x8d\xd4@\x1fa&?\xfcX\x1bA\xf6e|?\xb6Bj?\x03\x9d7A\xcbG\xf2?\x9a.;?\xe6h7A\x9e\xcbs@\x9f.3?\xa4\xdfLA\xf5\x93Z?,\xb64?d\x00KA\xbf\xd1\xda>\xce\x1d\x10@\x0f\x9abA\xe8\x99\xf5?g\x97\t?\xa7\x99\x0cA;\xeb\xee?\x89\xd1\xb6?\xc4\xb7?A(\xda~@w\xb0\x03@\x8a\x1eVA|;\xa0@~|\t@w\xc3rA\x05\xe8\x19@\x9c\n\x1b@\'4sA@\xb7t@\xd5\xa6\x02@\xfeL\x83Au8\xa0@\xbe\x84\x18@o\x9e\x89A\x83\x0e\x95@\xd6\xf0V?CJVA|\xa6\xcc@\xa1\x165?\xef\x1c\x89A}T\xa9?Q\x0b}?Z\x99\x93A\xf8k\x01@t\xe8B?\xae\xbc\x93A\xbf\x85{@/EE?\x0b\xcb\x9fA\xfa>\xab?U+W?\x12"\xa1A\xc6\x0cA=\xdb\xb5\x08@\x91\x19\x81Al$\xd2?=t\xec?\xf9\xff\x9bA\xb7V\x89@p\x83\r@\x00\xfa\x81\xc1v\xc9\xfc@\xc1c\x88?H\xa0s\xc17G\x11A\xf5\xbb1?\xaaOo\xc1\xa8\xc6$A+\xe1t?\x0b\xd6O\xc1\x19\xd7\xf8@\xeb]=?2\'T\xc1\xfc\xb2\xde@\xbd\'\x01@_\x854\xc13\x92\x15A\xd9\x7fK\xbf\x81X\x89\xc1\xda\x02\x02AZ\x7f\x17@\x95Fa\xc1\x17\xd1&A\x83\x9d\x01@\x85\xacM\xc1\x8f\xd7:A\xd5x&@\xfc 0\xc1=\xc6\x10Ah\xd5\x05@\xa8\xb44\xc1~\x1e8A@\xdf\xff?D\xcb\x1c\xc1\xf0\x0b>A\xc9B\x1e@Y\xb3\x0b\xc1`p6Am\x85g?\xeb\xb5I\xc1V\xd8EA\xb2*9?8H\x12\xc1\xde\xf8\xf4@\x9a\x0f\x85?Z&\xf4\xc0L=\x08Ae\x161?E~\xe6\xc0B\x9e&AX\xed=?.@\xc5\xc0\x19\x13\x01AS\x95G?rc\xc3\xc0\x19/\xe6@}\x19\xd8?F?\x93\xc0\rV\x0cA\x1c\xa0\xf2>\x94.\x16\xc1HL\x00A\x07\x12\x1f@{\xd1\xdd\xc0\x0c\xd52A\x17\xcc\xec?>t\xab\xc0G$:A\xca\xe4\x11@\x15\xe0x\xc0)\xb8\x16A\xfd\t\x15@\xa5`O\xc0O\x1d9A\xce\xd0\x00@\xf4\x19\xc8\xbfkO1A\xd9sJ@\x05w\x8b\xbf~\x1f4Ac\xc3\xf3>n\x9c\xac\xc0\xd6\xffMAUP\x15?\x12\xb1\x03>\x10j\x14Ad5\x02?\x9d\xe7X?CG)A\xf9\xdb\xfb?$\x05U@9\xf3\x0bA\xa9!6>U\x9a;\xc0RK\x04A\xcc \x14@~#\x1b>\x9e%$A_\xfd6?\xd5c\x18@\x07;;A\xf5\xba\xf7?\xce\xcf\x86@\x00\xee\x0bAS\x16\x11@Y{\x9b@d*1A\x1a\x90\x0b@\xd3w\xb5@9\x92DA\xaa\x7fA@\xa1\xfe\xbb@\xff37A\xda\x15\x8d?z\xec\xf8?\xdf%?A`\xf3\x1f\xbf\x1f[\xb0@\xbe\xb8\xfc@}"\x0e@\xbc\xcb\xee@\xb1\xdb\x04A\'XG?P\xc6\xfb@\xe9\x9f$AV\xd2K?\x12\x82\x13A\xe6\xd0\xf5@\x18\xc1l?\x18L\x0fA6\\\xe9@\x93\x1a @I\'-A\xbd\xe5\x08A\xa7\xd1\xe8>i\xdf\xba@:\x07\xf2@i\xe3\x94??\xf0\x00A\xe2(*A/\x91\x0b@b\xe8\x19A:\xdb9A\xfam\r@\x95\xc99A\xb4\x14\x11A\xbd\xc0\x15@w|:A@\xf8$Ac\xed\x07@g\xc7KAx\xd97A\x81`\x16@\xb6\xe1UA\xbe\x173A\t\x10\x15?\xf3\xad\x19AG\x11OA\xdbvF?\x98G\\Aqa\xf8@\xd7\xa3X?x\x06lA\x01f\x11Ab\xa6\t?\x8b\xabpA\xb8\x01&A\xf7W6?\x9e\xfa\x83At\xeb\xf4@\\Qa?^7\x83A\xc5\n\xce@&\x93\t@\xca\x1bMA\xdf\xc7\x01A\xf1\xce\xe7?\x1fI|A\xb8}+A\x0c9\x08@>\xb9K\xc1X\x17cA\x98\xd4b?5\xa6/\xc12FuA(eb?G\x052\xc1\x0e\xfb\x84A\xc0\xd0\x82?\xa6C\x1e\xc1\x92-dA`\x1e|?6\x04\x1c\xc1\xcblXAs{\r@FR\x02\xc1C\x18tAU\xde\x1a?\xab\x90W\xc1\xbd\xcbiA\xf5\x86\x06@\xac\x92%\xc1\x1d\x0e\x8cAL\xa4\xfd?Y\xa2\x10\xc1~p\x8fA\xd7\xef\x1a@d\x02\xea\xc0\x97%xA\xffR\x0c@M\xa3\xf1\xc0\x1c\xab\x89A\xfe\x96\x11@i=\xc2\xc0V\xce\x8fAAF\x14@!\x10\x9d\xc0N\x10\x8cA\xdb\xc6\x13?\x05\x7f\x13\xc1|~\x98A\xcc\xa2\x15?bH\xa5\xc0\xe9\x83bA\x99\x86T?IDn\xc0\x87\xcazAa{\x18?{\xd0\x80\xc0\xe2{\x86A\xbeU>?\xc85\x0c\xc0\xfcNeAS)\x0b?1\xde\x12\xc0\x1eBSA\x81-\xf7?B\x9f\x14\xbf\x9d\xactA\xce\xe3z?=\x83\xbd\xc0-1jA^\x04\xfc?\xf7\x10G\xc0\xc3"\x8bAc\xb4\xcc?\xc0\xb9\xeb\xbf\\d\x8fA\x98\x0f+@\xfb\x04\x00\xbfK\xb6zA\xa6\xda\x18@\xf6\xca\xd4\xbd\x01\xae\x89A\xe3\xd5\x07@\xfc(\xcc?4I\x8fAC\xe5\x1e@Ax\x12@\xf5\xb3\x8aA\xa1\xb28?X:\xc6\xbf]\x1c\x96Ad\xa2e?F\xd4\x14@s\xa9_Ai!L?\x8a\xf5\x80@\xe1\xd9rA\xc8\xff\x82?\xc2\x90a@\x161\x85A\xe4\x00\x96?\xff\x8f\xa6@SDhA5\x1c\x97?\xc5P\xae@VFVA\xaf\xda\xdc?l\xe6\xd6@\xb3\xaetAE}T?\xc6\xe2\xa4?\x1d\x9ajA\xd4p\x17@~v\x93@b\xfd\x8bAF\xd8\x0c@i\x13\xb3@\x1fw\x90A\xb7\x145@\xa7\xb4\xf1@\xba,zA~y\x07@\x9f\xa8\xe1@\x94?\x8bA\\\xe4\x06@\xbd{\x0eA\xe6x\x90Ak\xf2\x0c@R\x88\x1eA\x99\xbd\x8bA\xc2\x85\'?D|\xc0@F\x8f\x95A|eU?\xa8K\x1aA\x0b\xd0dA*\x07B?\x05-0A`DrA\xe9vZ?Z\x932A\xacF\x86A)\\v?TXIAE\xa6cA\x04\rL?&\xceHA\x90CSA\xad$\xf8?\xca\xd8\rA],jA\x08\xdc\x05@R\xd1\x96\xc1z\x8f\x9e@E\x81\x96\xc0\xb7\xe8\x8b\xc1\xc3\xfac@\xbd\xa2\x1c\xc1\x82J\x8d\xc1\xdd\x02\xa4@"\xe7\xd5\xc0\xed\xaen\xc1\x11\\\xac@\xd3\x03\xa4\xc0\x89\xc1f\xc1p~\xa7@wcl\xc0!)\x84\xc10\x92\xa1@t2e\xc0\xca\x1co\xc1I\x8e\x9f@2"\x14\xc0\xbd{g\xc1\x9b1\xa0@\x1b\x06\xb2\xbf\xb9\x00i\xc1\xe6|Y@\xdc\x9b\xab\xc0Y8V\xc1\r\x8fU@Q\xd5\xd1\xbf[\xb1\x8f\xc1\x85p{@\xd4\xa8\x86\xbe\x10\xd5\x89\xc1\x0fYe@\x0e\xec\x91\xbe\x80\xdf{\xc1l\xe9p@\xaa\xbb\xb8?\x980\x90\xc1\xbe\x8dr@7\x00\xb8?_\xb3\x95\xc1\xfe0\xa2@\x1a\xb8G@{0\x89\xc1y\xeaY@\x14C(\xc0\x95\xc1\x8c\xc1\xc4k\xa1@\x8c\x8fB?L\xbdo\xc1\xbbl\xa4@\xa8O\x03@&\xccg\xc12\x06\xa2@\x0b\xdbt@\xfb\xa7\x85\xc1g:\x9f@\xbc\xe2]@\xd8.s\xc1z\xda\xa2@[\xdd\xa1@v\\g\xc1_\xed\xa3@iI\xc1@2\x93h\xc1XKh@s\xd5\t@\xa9d[\xc1\xadFW@y\xed\xc0@\x91\xd1\x90\xc1\xd2Qx@\xa3\xb9\xea@\xc0\x0e\x8a\xc1\xab\x08t@\xef\xe4\xe8@\xd0;|\xc1\xc9\t\x83@\n\x01\nA\x8bg\x8f\xc1\x1e\xe8v@\x00F\x0eAu\x97\x99\xc1\x95\xe0\xa2@\x0fi%A\x92x\x89\xc1Q\xc5k@p\x1a\x9b@\xbe\xf8\x8d\xc1\xfd\xcf\xa2@9\xee\x02A\xe0\xe0n\xc1\xf0\r\xa1@\nd\x1fA\x1a\x98d\xc1o\x06\xa6@\xc8\xa3-A;\x12\x86\xc1x\xc1\xa3@\x14\xed)Ae\x0cv\xc1\xbb\x19\xa7@J\xb0IA\xbf\x08d\xc1\x10J\xa4@)\x07YA\xf0\x06h\xc1V\x99V@v\xbe\x1aAC\xee\\\xc1o\xafX@\x16\xefw\xc1\xd0\x14-\xc1qwi@\x0f\x03\x81\xc1\xc5u\xf9\xc0\x92\xa0\xa0@P7m\xc130 \xc1\xea?\xa8@T}r\xc1\x96?\n\xc1nS\xa4@\xc2\x82Z\xc1x\xa2\xfb\xc0\xc3a\xa4@\x8a[M\xc1\xef\xb2\xfa\xc0\xdd\x95E@B\xbb\x82\xc1(\xac\xda\xc0\\~s@Y\x06E\xc1\xac76\xc1\xa9\xc9x@\xdd(5\xc1\x7f}1\xc11\xfc]@\x1f\x877\xc1\xd7\x9b\x13\xc1\x88E\x7f@t\xcf\x1b\xc1\x8e\xa48\xc1}9u@\xebU\x18\xc1\xa2\xbcL\xc1\x823\xa6@>a\x06\xc1\xcc\x9a.\xc1\xe6\x84b@D\x0cZ\xc1\x1aR3\xc1`\x8d\xab@\xd7,*\xc1\x89\xd4\x08\xc1\xf2\x12\xaa@\x00\xb2\x0c\xc1RY\xe8\xc0w\xcc\xa6@d\x96\xf1\xc0\x01\xae\'\xc1u\x10\x9c@\xfe\x84\x00\xc1T\x9e\x13\xc1\xd1J\xa4@\x17\x9c\xa9\xc0H\xad\xfe\xc0\xba\x0e`@K\x86\x13\xc1\x06\xcb\xf9\xc0\x9aO"@\xf8\xc0\xa9\xc0\xebj8\xc1\xc8\x84v@\x98\xeb\x89\xc0\xb0\x908\xc1)\'d@\xa5\x1d\x7f\xc0\x85\x83\x18\xc1\xb8\x91u@\x120+\xc0\xc27:\xc1\x15 t@`]\x13\xc0\xc6\xa8L\xc1d\x0e\x9b@E\x1d\x83\xbf\xa4\xb65\xc1\xac\xd6Q@:\xea\xc5\xc0\x85A6\xc1\x99u\xa3@\x88\xce\xc8[\x05\x9c@\xc0\xb1x\xc1\xcf|\x00@\x0c]_@\xf3\xad\xa7\xc1\x80\xc8\xce?z\xc2\xa7@&\xfc\x8c\xc1\xc7\x9e\x95@\xb85\xa4@2\xb4\x81\xc1\x0bZ\xa3@k\xa1\x9d@\xd7Ko\xc1\xd6_9@\xd7\xf1\xa1@\x10\x15r\xc1j\xb4\x8b@5a\x9e@<^W\xc1\xd3#\xa5@\x94\x11\xa1@\xa9\x85L\xc1\x88*\x9a@\xab/\x14@\x83\x1a\x82\xc1\xb5\x82\xb7@\xe9FQ@\x08\x83N\xc1\xb8\xa7J??,\x91@\x98\xa6@\xc1\t!\x0b@]Y]@\xb8\x1a1\xc1)W\x87@\xac\xa8y@T_%\xc1\x02\xd8d?K\xa3i@\xf0\xbeV\xc1\xe1x\x02@\x01\xd1\x99@\xad\xa3,\xc1l\x06r@B\xcb\xad@\x0cA\x0e\xc1\xcc\xb7\xb0@\xfd\xa4\xc3@\xe8}\x11\xc1\x13\xee\xd2@z[|@\xaav\x15A\xccd\xb3@iO\xab@\xf7\xf1%AN\x13\x99@\xeb\x06`@\xae\x06\x1fA\xbe\x8a\xaa?\x91\x07l@{\x039AB\x10\xc9?\xeb\xa2m@M\x155A\xec\xd4S@]\x0cy@\xee\x86TAr\xa8\x91?\x07\x1cv@\'\x90NAk\xbd\xc4>\x06\xc8\x97@\x1fAeA\x01F\x01@\xc1\x9eO@o*@AE\xe3\x87@\xc9a\x9b@d\xe1XAJ9\x9e@\xda\x03\x9c@\x18\xd3lA\xa1j7@|\xb6\xa1@\x1d\x9clA\xe8J\x93@\x9b\xa0\x9e@i\x95\x83A#"\xa2@\xae\xa6\x9e@L\xb6\x89A\x1d\xac\x98@0\xf8P@\x04\xc3TA\xee-\xc2@\xa7\xd1X@@\xa0\x8bA\x81M\x9d?y\x99t@\x1a\xc6\x96A8\x95"@e\x92j@\xa5\xbc\x94A\x12\xf7z@\xbbU{@\x1c\xb6\x9fA\xe8\xe6\xa1?\xcd*z@\x0c9\xa1A\xc5&L>\x9c\xbd\xa3@5\xc1\x83A\xbf\xd4\xd3?\xd3\xc7\xaa@\xa3\xd3\x9bA\x03.\x85@8\x02\xad@\xfc\xc7\x7f\xc1\xbf|\xf9@;\xbex@\xf6\xdae\xc1WV\x07A\xda i@\xf2\xe9h\xc1o\x95 AvA\x83@\xfc\xeaV\xc1\xef\xd7\xf1@\xe2\x15{@\xde\x16V\xc1\x07M\xe3@\xae[\xbc@pG7\xc1J\xb4\nAM\x1cd@\xb0\xd2\x87\xc1\t\xd8\x00A\x03\xe5\x9f@}Hc\xc13\xff)A\x8f]\xa2@\xb5\xf4H\xc1\x8fA8A\x88\'\x9c@[q1\xc1;\xf3\x11A\x03\xa3\xaa@\xf1\x9e5\xc1\xb3|%A\xfa\xde\x9e@\x04\x07\x1d\xc13\xa07A\xc2g\x9f@ \x18\x0f\xc1n\x985A\x996J@9HL\xc16 IA\x90zf@\xc4\x81\x00\xc1by\x01AT[\x86@\x0f\xb2\xfc\xc0\x87\x1f\x11A}\x14d@\xa28\xec\xc0\x1f\xd9&A\xeb\x95}@\xa2\xfc\xc3\xc0\xb8Z\x03Aq/\x7f@fr\x90\xc0B\xa0\tAvmT@\xa2\xfa\x1d\xc1*S\xff@\x88\xe4\x94@\x00K\xd6\xc0\xa7o0A\xd6\xee\xa5@\x12.\xa8\xc0\x1f\xabBA\xcch\xa5@\x7f\x08{\xc0\x0c\xa33A\x04\x89\xa2@\x07\xe0\xf9\xbf\x0f\x909A\x976\x9e@\x18Q\xf7\xbf\x88\xad\xb3\xb7@\xa3\x92\x04A6\xf6j@!=\x02A\xf7\x7f\x10A\x8a\nn@\xd95\xf0@\xe6\xc8\'A7\x1e\x86@\x02\xd2\x13A\xa3M\xf3@l\xd0\x80@:\xba\nA\x97\x87\xf1@~\xc4\x99@K\xcf)A8f\nARbf@\xad\xe3\tA\r\xd1,A\xbd\xfe\x9e@\x88\xd7 A;Y9A\x9e\xb1\x9e@/\xb76A\x8at\x0fA\xb3\xf5\xa3@HK2A\x93\xfa-A@@\xa2@\xc1\xb4HA\xfd88A(p\xa5@\xd3\xfbYA\xc8r5AU\xfcU@\x0bA\x18A\xc3\x9fKA\xd2S_@7\x84[A[\xa1\x00A\xa61l@\xfb\xa8rA\xcdv\rANz`@\xaa\xb5oAZ\r A3\x9fu@\xf8h\x81A\x94s\xf7@"\xf6u@SW\x83A\x9f\xdd\xd6@D7\xa2@\xa3\xd4KA$c\xfd@\x89\x9c\xa1@MXxA\xbc}-A\x93}\xa2@\x89\xdeH\xc1\xbb\x07cA\xc8\xb2x@Iy6\xc1\x82NpA\x0c\xa6o@kS2\xc1M\xe4\x84A\xfd\xe1|@\xa3\xa0\x1e\xc1\x97weA\x999v@\xe01\x18\xc1\x13\xebVA\xdb\xc5\xa8@\xcbC\x01\xc1D\x12pA\x8cQ`@%\x99W\xc1\xce%gAZ+\x9f@\x01\xf4%\xc1\xee\x02\x8bA\x18u\xa9@\xc6\x8b\t\xc1\x9e\x10\x8fA\xe1m\xa6@\xdb4\xed\xc0\xf5\x99yANr\xa2@\xad\xfe\xed\xc0k\x8a\x89AY\x8c\xa4@~\x1c\xbd\xc0b\xef\x8fA\xfaX\xa6@\x85r\xad\xc0\xfe\xd3\x8dA\x13\xc9R@\xe6x\x0f\xc1\xe8\xcc\x97A\x13\x02l@\xf4&\xa1\xc0~reA\x11&\x85@\x03\x97q\xc0\xdewrA\x8cPa@/\xcdp\xc0\xa8\xbd\x87A\x9a\x02l@\xeaE\n\xc0\xe5)eA5\t|@z\n\x05\xc0\xbc\x00XA\x91\xf9\xad@Y\xb0&\xbf\x9e\x8doA\xbf\xbaI@\x8a\x03\xcd\xc0?\rnA\t\xfe\xa5@\x9e\x154\xc0\x04\x03\x89A\xa4\xe8\xb0@\x7f\x9e\xa1\xbf.\x97\x8eAf\xe1\xa4@\x10\n\xdb\xbc\xe1_|A\xccH\xa7@\x88g\x97\xbd\x9f\x89\x8bA%\x86\xa8@\xc1\x1d\xc6?\x9a\x98\x90A\xdct\xa4@\xae\x00\x1d@\xa2H\x8cA\xe2p}@\xcc!\xba\xbf|\xb5\x97A3]m@V\xad\xfb?@\xa7eAD\x80\x9a@\x17\xc7D@\x97\x95lA2\x8bw@\xbf\xbaw@\xcf\xcd\x83Auj\x82@\xfe\xea\xb0@\xef,aAA-\x80@\xf1\x96\x9f@G\x8eZA\x08\x8a\xb7@;\xb2\xe0@oXsA7\x02_@YA\xca?e\xeaeA\x03c\x83@\x02\xdd\x8b@\xb2~\x87AD\xe9\xab@9\xde\xbe@C\xaf\x8eA\x8e\x03\xa4@\x9a\xfe\xeb@\xebhzA\xa6.\xa6@\xfa\xeb\xfd@R\xd0\x86A\xc2l\xa0@H\x13\rA\xc9\xbf\x8dA,\xc5\xa5@\x03\xf3\x1bA\x12\xe0\x8cA\xa5\xdae@9\x1f\xb9@\\\xd4\x96A\xec\x92f@[d!A}kdA\x03(|@\xaf\xc76A\x10\xc3jA\xa2Rm@\x10\x8f/A<|\x85A}Hw@7\xbcGA0^bA\xa6f\x81@\xb7rLAXFRA]J\xa2@\xf3B\x0cA\xf7NfA)\xdc\xa3@\xf27@A\x1d\x81\x8bAJ)\xa4@\xc4<:\xc1\nE\x89\xc1\x1f\xec\xc7@\xc7CG\xc1\xa0\xefd\xc17\t\x03Ae\xec0\xc1Qc\x85\xc1\x15V\x02A\xb5q4\xc1\x83\x8bo\xc1\x9d\x92\x01A\xe2\x07\x1e\xc1\xe5\xfdf\xc1r\xe5\x00A\xb7a\x11\xc1\xad\xa5e\xc1\xa2\xeb\xc4@K\xf2J\xc16\x96W\xc1\x9c\xe6\xc4@\xfc\x11\n\xc1~\x03\x90\xc1\xe6^\xe1@\xe0\x0f\xf1\xc0\xa3\x18\x8a\xc1\x8a0\xdd@~\x1d\xf7\xc0E4y\xc1\xd3Y\xda@\xc8[\xbe\xc0Z\x8b\x91\xc1o\xd5\xe0@\xd8:\xc4\xc0N`\x9a\xc1\x1d\xb3\x00A\xf8u\x8a\xc0\x03\xcb\x8a\xc1/U\xc7@-\x9a\x1b\xc10\xce\x8d\xc1O\x92\xf0@\x9f\xae\xd6\xc0^\xads\xc1\xdc\x8e\xf4@\x0e\xd0\xa0\xc0A\xe0d\xc1\xd4\xf3\x01A\x00\xf0s\xc0.m\x87\xc1\xb9\xe1\x02A\x0f4i\xc0\xd5~v\xc1^,\x01A\xa9=\x1f\xc0\xb4\xa6g\xc1\xddT\x04A\xcd$\xcd\xbf3:i\xc1\xcb\xe9\xcc@wb\xa9\xc0\x82\xbc\\\xc1\xaf\x1e\xbf@\x8c\x86\xc3\xbf\x97\xa3\x92\xc1\x0e\xc4\xe8@0n\x9e;\xe4\xd5\x8a\xc1\x8a{\xd4@m\xcd\x8f\xbe\r\xe3{\xc1\xcfB\xe0@mc\xcf?\xd7\xe9\x8e\xc1\xb9B\xdb@\x17]\xc5?I\xd1\x97\xc1\x07\xce\xfb@\xc8.J@*\xf4\x8a\xc1aw\xcc@\xc3X(\xc0\x80\xb0\x8d\xc1\x88\xf2\xf5@\xca\x93I?\x15Hq\xc1\x03\xab\xfa@\xd0\xef\x1a@\xea\xbed\xc1\xb5\xb1\x05A\xf6\xa9y@\x96\xba\x85\xc1\xc7\x8e\x02AnT|@\x90\x8ew\xc1\xc6\x97\x01A6\xa3\x9b@+\xb4d\xc11g\x03A\\,\xc0@d\x03i\xc1\xf3\xc2\xcc@\x81\'\x0b@B*`\xc1\xef\x94\xca@^=\xc6@\xbb\xd5\x90\xc1\xca\x16\xec@&\x1d\xeb@\xf0\xc1\x8e\xc1G,\xdd@R\x04\xf1@\x0f\xdc\x7f\xc15d\xed@\x14\xa3\x0fAF\xfc\x8e\xc1\xf9\xde\xe6@A\xaa\x12A\xa6/\x98\xc1b\xbf\xfa@\xdaq&A\xffV\x8a\xc1\x01\xb2\xc9@d\'\x9e@v4\x8f\xc1\xe6\xbc\xf0@\xe9\x9b\xff@0\xe3p\xc1\xd7\x0f\xef@\xe9\x8f\x1dA\x96Ch\xc1\x84v\x06AD\x9d2A6\x02\x85\xc1\xc2\x9b\x04A\x11M3A\xfc\xe5o\xc1\x9f\xcc\x02A\xf2CHAe\'d\xc1\x8a\x08\x07A/\x08RA\xcc\x88f\xc1\xcdd\xcf@D"\x18A\x19\xcd[\xc1U\xd6\xc5@\xf97w\xc1\x13r-\xc1\xc6\xc2\xcb@\x18\xc9\x84\xc1\xea\x97\xfb\xc0\x99Y\x03A\x84_m\xc1\n\x92!\xc1\xc5v\x05A\xd0\xd7n\xc1\n#\x02\xc1R\xdf\x00AZ\xe3]\xc1e\xb4\x06\xc1\x12\x07\nA\xfa\xd2L\xc1\xa1\xd8\x01\xc1\xfc\xf0\xd5@\xd5\x88\x82\xc1\xe1\xd5\xd3\xc0\xe2\x7f\xd4@h\xcbG\xc1\x1a\x1a<\xc1\xeb-\xe4@\xd3m6\xc1\xce\x15*\xc1\xceG\xdb@\x85\xcf/\xc1\x99\x8e\x16\xc1\x08\xfe\xf6@Hf\x1b\xc1Fa7\xc1F\xd0\xe5@-\x82\x19\xc1\x15BL\xc1\xe3\xa0\xf0@\x91\x89\xff\xc0V\x9a*\xc1\xc2U\xc2@\xf2\xabX\xc1\xd5\xf16\xc1\xf8\xc2\xef@\xd5\xab-\xc1\xc4\x1a\x04\xc1\xd9\xe3\xe5@\x01\x00\x11\xc1\xc3\xcc\x00\xc1<\x08\x07AD\x00\xea\xc0L\xd6+\xc1\x97\xe5\x01A\xf0\x95\xed\xc0\xd7\xb3\r\xc1\x9a?\x01A\xbb\xf1\x0e\xc1>\x83\xe7\xc0\x89\xd5\xd0@_I\xab\xc0g\xd8A\xc1k\xdd\xe8@\x14;w\xc0l\x005\xc1\xe4\x10\xd9@Z &\xc0q\xd2:\xc1\xbd\xc9\xd6@\x9a\x1d\r\xc0"7M\xc1\x87\xa8\xf3@\xf7#d\xbf\x0e\xeb0\xc1\x81\xd4\xc8@\x8c}\xbc\xc0U\xd71\xc1\xd23\xea@\xd5\x80\x06@?\x99F\xc1\xb6\xbe\xd7@\x1a9p@\x1e$3\xc1-\x88\xdb@|\xff\xb1@\x90l9\xc1\x07\xff\xe6@H\xc4\xa8@\xee\xa7K\xc1-\xb1\xf3@\xd8\x04\xe0@\xf3\xd6"\xc1\xf0\xf4\xca@\xd2\xca\x07@\xd4\xe6/\xc1\xa8\x14\xed@\x01\x96\xf4@\xc7\xba+\xc1LH\x07AE\x01\xe9@\xd0\xff\x0e\xc1\x93]\x01A\xb1~\x15A\xc2&\x01\xc1@\xe5\xff@Y\x0c\x0cA4t\xfc\xc0d\x08\xaf@!I\x16A\x0c\xc4@\xc1\x86]\xfb@nw0As{5\xc1\x98k\xdf@\x0e/2Aq\xa9\x0e\xc1j\x03\xe5@\x81\xddGA|\xd4;\xc1K\x8c\x03A1\tKA\xc3~H\xc14-\xf5@\xf6b`Ae\xd2-\xc1\xe9\\\xcf@\xdb}\x10A\r\x036\xc1F\x8a\xf3@\xe6\xafIA\x07\xb1\x04\xc1j\xb6\x02A\xf3\xcf_As\x1f\xfd\xc0bI\x05A\xab\xedoA\xd9\\%\xc1\x9aB\x05A\xf9FdA\xf2\x99\r\xc1\xb2\xb7\x04A,`\x81A\xc4_\xf8\xc0 \xe1\x03A\xc1l\x88A|\xde\xff\xc0S\x9a\xcd@$&UA\x8c\xa1\xd5\xc0\xa2\x1e\xd4@C\xba\x97\xc1\xd8\x91\x83\xc0\xabR\xcd@\xe1\n\xa2\xc1\x1d\x15\x96\xbf\x1e\xbd\x01A\xe62\x95\xc1\x94\xc3b\xc0\xe0\xf1\x04A\x04?\x97\xc1/\xd3\x01\xc0\xc6_\x00A\xc0\x15\x8b\xc1t\xef\xa9\xbf\x13\x00\x00A\xfa\xae\x84\xc1\xd5\xf3\x86\xbf+ \xba@yn\xa1\xc1aho\xbe\xa14\xca@\xa88\x82\xc1\xfb_\x9d\xc0;\xda\x03AR\xedt\xc1\xf7\xcdp\xc0\x1f\x87\xe0@\x04Av\xc1~\xe3\x0b\xc0\xb7\x06\xfa@jeP\xc1\xfc?\xa4\xc0\x12]\xe0@2\xb2X\xc1\n\xe7\xd7\xc0\xc4\x15\x02Ai\x86.\xc1Aiq\xc0\x04\xc8\xaa@T\xd1\x89\xc1w\xf3\x9a\xc0\xb1\xd3\xee@\xa8\xe2e\xc1\xdaD\x15\xc0~q\xf7@\xbdKN\xc1{\xdb\x9a\xbf\xf4\x91\x06A\xda\x018\xc1\xe5\x95\x81\xc0}f\x02A8k:\xc1\xc6\xa4\xc0\xb8\xc8\xe7@\xdc\xb5\x80A\xb0\xb6\xd8\xbf9\xc4\xf7@>y\x8cA\xe0\xf4\xa1\xbf\x07\x1c\x07A\xc1T\x96AH\xa7f\xc0?o\x05A\xc3 \x94An\xd8\x02\xc0\xdbk\x00A\x05\\\x9fAa\xe1\x95\xbfr\xd4\x00AQ\xb4\xa4A\xb0\xfa\xc8\xbf\xb4d\xca@Va\x86A"\xc3\xab\xbe\xe6H\xcc@\\e\x9f\xc1a\xcd\xa3?\xc9d\xee@.S\x96\xc1s.\x11@:\xa4\xdd@\ry\x95\xc1\x1an|@\xad)\xe3@\xfcF\x8b\xc1I\xe9\xc7?\xf1\x94\xe9@\x04\x04\x87\xc1\x9c\xc3\x04?\x07M\xe8@\x04\xadx\xc1\xc7G\x0f@\x1a\xf8\xc2@\xd4\xce\xa8\xc1\x95\xba\xeb?\x18\xf9\xfb@=b\x8d\xc1g(\x97@p1\xef@\xe8\x8e\x82\xc1\x94\xb7\xa3@>\x10\x04A\'\x9do\xc1u\x9c>@(\xb2\x02A\x17\xedr\xc1\xeeU\x8c@F\r\xfc@\x05SZ\xc1\xee"\xa2@\xc5\x8d\x08A\xee\x87M\xc1e\n\x9b@\xde&\xd1@\xd2\xc7\x82\xc1P\x04\xb9@\t\x03\xc5@\xa6\xe3O\xc1\xcc\n\x85?\xa1\xd6\xe4@\x89c9\xc1\xdb\xc1(@pu\xd6@d\xe19\xc1\xe9 \x8b@sV\xfa@\xa5\x03^\xc1I\x0b\xee?\xa5\xb0\xf5@\x84\xc4,\xc1\xac2[@&\xd1\xed@\x1fY\x19\xc1\t\x12\xc7@\x0f\x8a\xba@>\xa0#A[\xd9\x98@\xa6\x9f\xcb@\xa6J@A^H\x06@p_\xdb@\x9d\xcb8A[bf@\xdbh\xdb@\xa3uSA\x9e\xdb\xcc?d\x14\xe3@9\x10GA\x1a[\xc9>\x8c\xe4\xf4@\xe9\x0bnA\xf3Q\x0e@\xeb+\xc9@\x85\xef=As7\x96@f\xf4\xf0@\xaee\\AE\xe1\xa8@\x85\xcd\x02At\xe2qA\xe0+,@<\xbd\x02Am\xd7sA\xa7\xc7\x8a@\xe8\x94\xfc@\xf7\xf7\x83A\x13 \xa2@\xcc\xe6\x01A\xee/\x88A5\xa7\x9c@:\xa4\xca@\x07\xf6SAy\xac\xc2@\xdec\xbb@@\xd3\x8aAV\xfb\xba?\xaa\x8d\x01A\xd4\xca\x94A^\x9f\x05@t"\xd6@\x0f\xa2\x94A\xc7nk@>x\xed@\xbe\xe2\xa0A\x9d\x95\xb4?E;\xe9@Z\x1f\xa2A{ac>\xc4z\xf3@N\xee\x84A\xbe\x97\xb9?\xa55\xdd@\xf5~\x9cA\xdd8\x8b@\x91+\xfc@\xdf\x0b\x83\xc1m\xe6\xf5@:(\xed@\xfd\x18s\xc1\xa7\x15\x06A\xb8\xc8\xda@\xaf\x0bp\xc1\x93\x93$Ac\xf5\xe7@\xdb5U\xc1\x12Y\xfd@\x7f}\xea@s\xa6V\xc1.\xff\xdc@\x05\x9d\xf4@t\xf2@\xbc\xfb!A4\xc97A\x9e\xd9\x03A\x9a\xbb2A7Y\x11A)\x8d\xfe@+n;Aj\xf0\'A\xb3\xa7\x00A\x18\xcdHA\xdb\x94:A\xa8+\x00A\xf5\xf7SA\xabu6A&\x81\xc4@t\x9a\x18A XFA\xac\xdd\xc8@\x94\x03[Al\xef\xf4@g\xa1\xf3@u#pA\xcdK\tA\xc0[\xd7@\x02imA~\x1b\'A\xe4\x16\xda@\xf8\x8a\x83Ay\x9e\xfb@/\x10\xe3@\x1bx\x85A\x89H\xd3@\xb5\x15\xee@\xbd`LAi^\x05A\xdbN\xfa@$\xa5zA4./A \x7f\xf2@\x8d\xc3J\xc1\x01\xc4bA\x0fX\xe2@\xde\xe82\xc1\x86EoA>\x92\xdd@\r\x083\xc1\xf9M\x85A\xbfO\xde@AJ \xc1\xdf\x8agA6\x14\xde@\xa0\xe6\x1a\xc1Q\x1fWAU\xb5\xf3@1\x19\x05\xc1\x96\xa1lA)\x1f\xca@\xa1e[\xc1C\xe4lA\xd1\x9b\xfa@,\x86&\xc1\x1c;\x8bA\xfaW\xf2@M\xfe\x10\xc1^$\x8eA\xcdK\x02A(\xf0\xf4\xc0\xde\x08~A)\x9a\x03AxC\xeb\xc0]\x95\x89A\xbe\xf3\x03A\x13h\xc6\xc0\x94\x89\x91A\xf6\x1d\x05Aw\xc0\x9a\xc0\xde\xb3\x8aA:\x05\xd3@\x13\xac\x0f\xc1\xd0\x8e\x95Aq\xf5\xc7@\x15\x15\xa6\xc0\xd2\x1c_AD\xac\xda@\xb7\xa7d\xc0\x9e{uA5\x9f\xd9@;Tq\xc0\xe4\xd0\x84A\x08\xea\xff@q\xd8\x1e\xc0\x05$gA_\x99\xff@4\xad\x08\xc0\x97hVA\xe2\xdc\xeb@\x06\x9b2\xbf\xc0\xd0nAI\x8c\xd3@\xddV\xca\xc0\xb7\xe9jAc\xb3\xf9@\x962P\xc0IW\x8bA\xf3i\xe9@\xa9}\xa0\xbf\x13\x87\x8fA\x06a\x05A\xa2u\x95\xbeEz}A\xf0\xfd\x04A#{\x0e?\xb2:\x87A\x17\xdc\x01Ap\x16\xd8?pu\x92APJ\x05A\x12\x10\x07@\xd5+\x8eA\xc5s\xca@\xde\x1b\xc0\xbf\x97\xee\x94Au\x8a\xcb@mA\x05@s\xd6[A\xbfN\xe3@/\x19\x92@E@mA\xd6t\xdc@\xa9fn@\x05\xff\x85A-\x86\xe8@ey\xbb@u9bA\xdd`\x00A?\x89\xa3@\x02\xdb[Au\xe2\xec@\xddL\xda@\xd0\x99mA\x8c*\xd3@\x8f\x18\x85?\xbd$rA\x173\x00A\x8bK\x90@\xa1\x05\x88AZ\xca\xf1@\xe6u\xc3@\x18\xa9\x8eA;P\x07A\x1a\x8a\xf3@\xab\xb2{A*\x88\x06A\x16i\xf2@\x84%\x8aA\xef\x01\x00A\x98\x96\x0eA\xfd\xd7\x8fA\x92R\x06AJ\x17\x1aA\xd9S\x8dA\xc6q\xcb@L%\xbd@\x8c\x86\x95A\xb5\xbc\xcd@m\x89\x1eA\x05&gA\x11\x9b\xe1@\xa6N/AoCtA#j\xd7@-F1A\xe1\x18\x86A\xfa\x80\xe4@9\xfdJAo\x82bA\xc8\xb2\xe7@\xd6\xfbMAG\xa3SA\xfc\x0e\xf4@Kf\rA/9gA\x7f\x05\xf2@\xa8/=AB\x99\x89A\xeb\xae\xeb@\xd5\xc8\xf4\xc1\xe7{d?@tj\xc1\x18~\xf8\xc16t\xd8?\x802p\xc1\x92x\xf9\xc1\xf7\xafd>\x04\x9eo\xc1\xc0-%\xc2~dP\xc1\xb8\x9c(\xc1>\xa5#\xc2\xa6\xc0P\xc1\xb3\x85\x1a\xc1\xf2i"\xc2\xdf\xb4J\xc1q\x862\xc1\xac\x8b\xdb@\xcaO(\xc0\xb3\x83y\xc05\xbb\xd0@\xfc\xb5\xe0\xbf#\xfap\xc0M \xd8@\xf4\x01H\xc0\xa0QF\xc0\x8e^R\xc2\xdf^\x0bBK\xe1\x9b\xc1\xf3JP\xc2\x84\xd3\x0cB_\xc7\x95\xc1-\xfcR\xc2J\x14\x0eB\x15W\xa0\xc1S\xa4\x0e\xc2\xd29(\xc2\xf3\xb4\xecA\xc0H\x12\xc2\x92\x9d)\xc2\r\x8f\xeeA\xe0\xb5\x0c\xc2v\x02)\xc2t\x0f\xf2A9\x86\x12\xc1Z\x13\x7f\xc2QJ\x83Bu4\x12\xc1% {\xc2u\xe1\x82B\xb1#\t\xc1X[\x7f\xc2L\xd7\x84Blm/BD\x0c9\xc1z\xb4eB"S/Bk\x8dE\xc1B\x14hBN{.B\xc6$-\xc1\x97\xf2gBn\x9f\xf2\xc1\xf7\x86K\xc2\x064\xc4A\x84\x04\xef\xc1\x15WH\xc2\':\xc4AX\xa9\xf9\xc1%5J\xc2`\xb1\xc5A-\x9c\xf7A\xbc{Q\xc0\xd7[\x8dBF5\xf1A\x94\x14G\xc0\xc4`\x8eB\xaea\xf6A\xe3\xb2E\xc0w\x86\x8bB\xdc\x04\xbd@\xea\xcf\xc8\xc1\xf5\xe3RAf<\xd1@\xc4\x17\xc4\xc1Q\xebWA\x84\r\xcb@\xe2\x9e\xcb\xc1~\x07GA\x18:]\xbek\xfb\xa1\xc1\x0e\xbf\x91\xc1\xff\x1a\'?\xce\x93\x9f\xc1\x9d(\x92\xc1c\x14J\xbf\xaeF\x9f\xc1\xa5\x9f\x97\xc1\xd1 \xbcA>\x08\x97B\x98\xf4\xc4A\xda\xb6\xbaA}N\x98B\xbdl\xbfAW.\xbeA\xb4U\x95BG&\xc1A\xaa\xa1\xb5A\x1c\x94\xeb@\xbe\xd0Y\xc1\xc3\t\xbdA\x912\xea@\xea)V\xc1\xd3\x84\xb3A\x02\xb0\x02A\x89ZR\xc1\xa4\xe2\x07\xc1l\x99R\xc0\xd5`\x01AD1\xf8\xc0]\x07,\xc0\xa7M\x00A\x8bP\x0f\xc1\x15\xa8J\xc0-\xeb\x0eA\x1c6\x14B&\xc1\xdbA2\xc6\x15A\x08J\x15Br\x83\xdbA\x89S#A0=\x14B1q\xe3AKf\x12A1\xb4\xc3B\xe4\xdf\x95\xc1G\xe1\x80A\xea\xd8\xc4B\x04T\x9c\xc1rB~AW\xcf\xc3B\xaf~\x96\xc1\x00m\x88A\xf6\xfa\x18\xc1\x90\xe7R\xc29&\xe7\xc1\x94Z\x11\xc1\xc7\xd0O\xc2`w\xe4\xc1|3&\xc1V\x06S\xc2\xf7\xe8\xe2\xc1\xe4rv\xbfj\xc9\x17Bsj\xa1B1\x9e\xda\xbf\x06\xcf\x18B+\x8e\xa2B\xe0\x04\xaf\xbeqj\x16B8\xdb\xa2BO\xce\x06\xc2)\x03F\xc2\x06$\'\xc1Z\xd3\x05\xc2\x19\xc4C\xc2\x0e\xb0\x1a\xc1(\x12\x08\xc2!sI\xc2\\\xf0!\xc1\xab/\x95A\xcf\xdd\xc6\xc19z\xe0A\xe4@\x9cA\xdd\x9a\xc5\xc1r@\xe3A3\xbd\x91A\xf36\xc0\xc1\xe2\x8c\xe2A\xf8\x1f\xd9\xc1\x8f\xb6\xe6\xc1xGqB3\xa6\xd2\xc1\xe0p\xea\xc1\x1c=qB\x88\xb1\xd7\xc1\xb0\xbf\xe0\xc1\xef\xe2sBqmq\xc1\xf5\xe0\xc2@Z\x19\x87A\x82nm\xc19\x9e\xd1@\xb0\xed\x8dA\xfe\xbfx\xc1\xc4\xce\xa8@\x1b\x93\x89AG\\KA\xde\x9e\x1bB\x80\xef\xd4B\x9c\x96HA\x94#\x18B\xc1\xab\xd5B\x98lAA@\x8dF\xc0T\xff\xf9@n\xc9HA\x82\xe7\x1e@|-\x02A\xf3c\xdd\xc0*\xca\x03@%\xab\xf4@\x0e[\xc5\xc0*6\x18@zD\x12A\xc7\xb4\xd4\xc0\xd0\xb6\x07B\xfd\x82\xbaA3\x91\rB3<\nB\xceR\xc0A\x13N\x0eBk\x05\x06B\x0f\xa3\xb8A\xd4\xc2\x10B\xd8\x0f\xa2@\x9cQ\x1dB\xce\x15\x13A\x9a7\x9f@\x8a\xe5\x1fB\xdaR\x1eAF$\xb3@\xa7\xe8\x1aBu\xc0\x1bA\xdf!\x0f\xc0z\xbc0?8\xde\xc6?\x180\xbc\xbfl\xa8x>i2\x02@]\xc23\xc0X\x89\x8a?\x17\x80\n@\xe7\x81VA\x7f`\xadA\xa8\x10LA;XaA\x15\x8c\xa9A[xCA\xc0\x1c^Ak\xec\xb2Aj}TA\xd9o\xe2A\xc8\xe3n\xc2}.YB_\x0e\xdeA\xe4\xf7l\xc2\x9e\x8cVB\xb0\xe1\xe1Aw\x01m\xc2qu\\B\x19d\x1eB(mU\xc1\xbc>\xa0B\xe4\xf1\x1cB\xf8\xd0H\xc1\xbeH\xa1B#\x07\x1dB\xcd\x8a`\xc1\xc1Q\xa1B @\xc2\xc1\xed\x94\x83\xc2%\xa7yB\xc6\xfd\xc9\xc1\x04\xd8\x83\xc21\xd9yB\xe5\xf3\xbf\xc11\xb7\x82\xc2\xf3r|B\x91\x11\x15B\x8a\x0b\xc1\xc1\xf4\xe43\xc0\x07\xc0\x18B]\x8f\xbf\xc10\xfe\x1d\xc0\xf0\xf8\x12BZi\xc3\xc1\xc0\x8d\x00\xc0\xac\x82\x95\xc1\xc2\x1f\xf1\xc0nq\\B\xe9\xa8\x92\xc1-\xa7\xd8\xc0\x9b\xbc^B`\xfc\x98\xc1\xe7/\x00\xc1]s_B\xc1\xd7\x96\xc0{6M\xc1\xf2\xfa\xdbA->w\xc0}\xc0N\xc1\xa2\xaf\xdfAJb\xa8\xc0\xff\x9fT\xc1\xea.\xe1A\xf3\xa3\xa6@?\xb5\x04@\xcd\xdb\xf6A}\xcf\xb0@\x08\n5@[5\xfbA\xea\xef\x93@\xdd\xcb\xdd?\xe0\xf0\xfcA\x9d\t\xca\xc0\xcd\x01\xaeA\x8fH\n\xc2\xa3A\xe9\xc0\xad\xcf\xafA\xfb@\n\xc2y\x17\xbe\xc0|\x8c\xb1A\xd8\x1a\x07\xc2SO\xc5@\x8e\x1f\x1f\xc2\xe3\xf6\x01B\xe7\xd3\xa6@Yu\x1e\xc2\x0f\r\x02B\xf1\x06\xc8@\xef\xd7!\xc2\xe1\xc6\x04B\xe2\xc7\x89\xc0\x88=\xc9\xbfT\x96\xd9\xc1m\x80\xa3\xc0\x8d\xa8\x07\xc0\x94e\xd8\xc1w\xe7h\xc0\x0e\x9c\n\xc0\xb9\n\xd8\xc1\x1a;\x1c\xc2\xd1\xf5fA\x9c\xa7\x07A)\x15\x1e\xc2\xbcD_A\xa0\xb5\x12A\x01\xaf\x1b\xc2\xb8EtA\t\xbd\x0fA\x93\xf0\x12\xbc\x8b\x04\x05\xc2Z1aB\x11\x9dV\xbe\xae\xe8\x05\xc2\x95\reB:\xc7\xe4>\xc0|\x01\xc2\xbdraB}<\xa8\xc1\r\xa0\xbd\xc1\x89@\xe3A$\xc2\xab\xc1-g\xc4\xc1W\x12\xe1Af\x10\xa8\xc1\xb7\xbd\xbd\xc1\xcd\xe8\xeaA\x1b;\x82\xc1\x96\xe5DBj\nW\xc1lV\x83\xc1\xe1}CBO?H\xc1\xccNw\xc1\xe4\xcdFBliV\xc1"r\xda\xc1R\xa6\xb4Ay,(B\x90\x82\xda\xc1\xe2\x18\xbcA\xbfS)B\xc2\x12\xdd\xc1\xb6?\xb1A\x80T+BA\xabK\xc2F\xde\x1dB\xfa\xe0\x82B\xe3cN\xc2\xff\xf7\x1eBMS\x84B37L\xc2\xee\xf0 Bf\xc8\x81B\xa3rgA}}\xb5\xc1\xd6K\xc9\xc1\x8e\x06nA%\xa7\xb6\xc1\x80-\xc3\xc1N\xc2sA\xc3\xc1\xb2\xc1\xf1\xaf\xcd\xc1\xfc\xb4\xf0A\x96\x0e\xf9\xc1R\x0b\xeeA\xc5S\xf8A\xaf\x83\xfb\xc1\xf4\xba\xeeAh\x10\xf1A%E\xf1\xc1\x02\xca\xecA6\\\xffAT&\x81AVw+B\xaes\xfcA\xc9\x15\x84AC\xa0.Bi&\x03B\xec\xb0}A\xf2\xca,B\x9a\xe0\xac\xc0\x1d\xa7\xd6\xc1@5\xfbA\xba@\x92\xc0?g\xda\xc1ca\xfcA\xf2\xf8\xba\xc0\xa1?\xd9\xc1a\xf9\x00B\xe8\xcf\'\xbf)\xe6\xc0\xc0\x1f_,\xc1;\xe4\xac\xbf\xac\x08\xc5\xc0\xcc\xff \xc1Jn\xe8\xbe\xb3B\xa4\xc0U\x91-\xc1\xcb\x7f\xc0A\x85\xa7\xf0\xc1uw\x89B\x12\x13\xc6A\x1b\r\xf6\xc1\xc3~\x89B\x19\xa2\xbdAQ\x1d\xf2\xc1\xf6(\x8bB\xees\x07\xc2\xab\x82\x89\xc1[}\xc9\xc1\xdf\xd5\x05\xc2\x15$\x83\xc1P\x10\xc6\xc1\x91\x1b\x0b\xc2\xd2;\x8a\xc1/\x81\xc5\xc1\xbd.\xb7\xc0\x84}\xe7?\xe9:0\xc2\x97a\xd3\xc0\xef\xef\xf2?\x1fp.\xc2uu\xa3\xc0\x9cp\x00@\x18\xf5,\xc2\xa8E\x11\xc1\xc6\xfc\x07\xc2\xfd\x88\xcbA]\xa3\x11\xc1\xd4\xa7\x06\xc2\x7f\xab\xd2A\xdd~ \xc1F\xa1\x08\xc2\x8f\x83\xcaA\x9d\xee\x81\xc0W\xb9P\xc1\x9b\xdb1\xc1\x0b{\x88\xc0.&G\xc17\xa6&\xc1\x9e\x84\x84\xc0\xd8\xf4F\xc1\xc9\x0f>\xc1\x8d \xf1A\xb8\x15g\xc1\x93\xbboB\xa5\xbd\xf1A~\'k\xc1\xd7\x89sB\xf6y\xeeA\xfa\xaaY\xc1\xfc\xe9oB\xe1\x01\xd6\xc1\xf1\x00\xb8\xc1\xb3\xfa,B\xd4\xc6\xd3\xc1\xdd"\xbb\xc1\xc0o0B\xdf\x0c\xdb\xc1\x87\xe9\xb2\xc1\xdfH.ByS/A\xcd\x1f\xc9\xc12\x87\xbf\xc1\xfe")AB\x92\xc2\xc1U\xe9\xc1\xc1p\')A\xfb\'\xcb\xc1\xe9\x9d\xb8\xc1\xbc\xc0AB\xb7\xb63\xc2d\xec\x9cAddDBi\x042\xc2}\xa5\xa1A6\xdf?B\x9d\xfb5\xc21p\xa1A\xf04\x0bB\xc0y%B\xc6.\x81\xc1\x18$\x0cB\xa7\x89(B]\xb6x\xc1\xe9\xcf\x0bB\xdc\xb7&B\xd1{\x88\xc1\xc8\x89\xf7A;?\xc7A\x9cdKB\x96$\xfcA\x95g\xc2A\xc9\xf4LB\xb6\x03\xf7A>\x92\xcdA\xb9\xf2MBk\xffIB\xca\xd8\x0b\xc2\xeel\x9eB\x8c\xf6JBR\xf9\x0c\xc2n?\xa0B\xe7\x0cMB?\x91\t\xc2\x8e%\x9eBo\x0e\xd7A3\xdea\xc2d\\]A\x02"\xd5A\x1e3b\xc2h#lA\xd0\xd4\xdeA\xd8\x7fa\xc2\x1d`^A\xd1\xeb0BIgE\xc2\xd0V\xfbAk\x0b0BO\xf4H\xc2\x1d\xc2\xfcA\xc1\xb74BbyE\xc2M\x93\xf9A\xae0+B\xef@\xa0A+\x0f\xa1AC]*B\xf4f\xa2A\xf2\x19\x9aA\xe2 /B\x9d%\x9fA}\xf9\xa0A\x00\xb2\xc7\xbf\x83\xea\xd9@\x01\x0e\rAn0\xf9\xbf\x95U\xd2@U&\x1bA\xa0n\x84\xbf[m\xf3@\xe65\x10A2\xb8\xea\xc1\xe0\x0b\xa6B\x16\x9f\x97A\xfe9\xed\xc1\xf2\xc4\xa6B\x8c\xa7\x9eAy\x18\xec\xc1\x91$\xa4B1\x14\x99A\x91\xd8kB\x04\xa1-B\xe7[BA\x11GlB\x7f\x1a-BLhQA\x13\xf8kBn\xb01B\x11R@A\xbe}\xc3A\xf1\x19L@[\xc2)A\xf4\xcd\xbfAU\xc3\x13@M\xb2*AY\x14\xc4A\xedP`@J\xd68AZ@\xafAU\xa8\xd7\xbf\x80\x89\x86\xc1n\x80\xa9A\xd5\xa9\x86\xbf\xc5\x0e\x87\xc1\xa9#\xb1A\xf5 \xfa\xbf*;\x8d\xc1\x8b\\\xe6AJ\x05\xb4\xc1\xeac9Bp\xc1\xeaAnc\xb5\xc1~\x85n\x1f3\xc2nz\x1aB?U<\xc1\xb8r\xb1\xc1\xc6\x04!A1T>\xc1!,\xb8\xc14\xa4\'A\x04\xc55\xc1\xfcE\xad\xc1\xea|,Avp\xbe@\x1a\x84\xa1\xc1s\xf5\xacA\x89\xce\xbf@\xf7\x00\xa4\xc1\x0b\x07\xb4AB}\xdf@\xe8d\xa0\xc1\xa8\xcf\xabA\xb9\xfavA\x87y\xf7\xc1\x03N\x88A\x05YoA8\xd6\xf6\xc1\x05X\x8eA\xfa\xc7\x80A_v\xf2\xc1\xf6\x9b\x88A\x16v\x15B\xb3\x8a\x87@\xd8\x8c\x8fB\xd4\xdf\x15B\x18\xe0T@\xd8\xcc\x8fBp\xf1\x18B7\xd7\x8f@\xc5<\x8fB#2\xaeA\x06\xd8\xd4\xc1Q\xa1\x8fA\x9an\xabA}\xde\xd6\xc1\x0ch\x88A\xf6\x91\xabA\xc0[\xcd\xc1kq\x8fA\xedK+A\xc9.\x13\xc0\xc8\xf3\xe4A5R5AD\xd0=\xc0\xb9\xa8\xe4A\xfa\x96&A\xc3\x00\x1d\xc0-\x07\xecA\xdfL\x05B9\xd0\xa1\xc1\x06n\x8fA\xa0\xd9\x07BP\xd0\x9d\xc15\x98\x94Amg\x04B\x85\x9a\xa7\xc1\xf8@\x93A\xb0.\xa0A"_k\xc1\x18\xce\x02\xc2\xdf\xeb\x9cA\xc6\xd0_\xc1\xae\xbb\x00\xc2KX\x9aA\xa3\xf7v\xc1\xb2%\x03\xc2<\x80\xb4\xc0!1\xbf\xc0\x87\x9e\x8dA\xe5=\xae\xc0\xd6\xee\xb8\xc0V\xed\x94AB\xbd\xab\xc0\xb2c\xdc\xc0H#\x8eA}\xdd\xfcA]C\xc9>\xa4&\xc3A\xd5^\xf9A\'\xfdc?\x0e\xf2\xbdA\x86\\\xf8A\xd3\xb1\xe2>\xd9\xbc\xc9AM\xef\xdd@"\xa6\xaf\xbc\xb8\x032A\x8d2\xef@\xbb\xcf\xe2>\x99\x941\x8eB\x1d^\xf9\xc0\x08\x00\xd9\xbf{/\x91B\x8f\xc2\x83\xc0g\x0f\x90@\xf76\x10\xc1\x06\xb1X\xc0\t\xac\x87@\x16\xa1\x07\xc1w\xe3\x9b\xc0*1\x90@\x7f\x9f\x06\xc1rA\x02\x87a\xc2\x95m\x7fA4\x18JA\x95J_\xc2\xdc\xef\x82A;\xf32A\x8fK_\xc22\x19yA\xe7\xe47A\xf67$B\x0f\xc8\xefA\xf5*BAU)#B\xd6\xc8\xeaA\xa3\xab,A\xc6\xed#B-\xe3\xeaAuq\xb2\xc0\x80\xa7\xa2\xc1\xce\xd8\x80A-\xab\xa2\xc0f\xd2\x9e\xc1!*\x86A\xd0\x81\xb6\xc0\xa6\xbe\xa8\xc1Q\xce\x84A")\xbeA\xab\xc8b\xc1+:\xf3A\xcc\x91\xbdA\xcb\xbdp\xc1\xbf\x1e\xf7A\x00\xe5\xc4A\xc8\xd5e\xc1\x9c@\xeeA\xc4\x9e&A\xae\xcf(\xc2\xcdf\x83B\x17\xbf2Ai(+\xc2d\xce\x82BA\xc3"A\'\xd5*\xc2\xfc\xee\x84B3\x9a\xdfA\xa9fL\xc1g(|B\x8a`\xe1A\x15?N\xc1\xd7\xe5\x7fB\xd9L\xdeA`6[\xc1\xea\xadzB\x93\xc9\x1eB\xfdd\xc5\xc1\xdf;DB\xaa\x9c\x1bByd\xc3\xc1\xaekFBa\xb9 BaA\xc8\xc1$%GB\x86\xf5\xff\xc1\t\xcal?\x1fc\xbbA\x97\x07\x03\xc2\xf3\xf3\xaa?\x04\xb4\xbfA\x1f\xdf\xfa\xc1\x19\x90:?\x8f\xeb\xc0A\x94\x97\xd4\xc1\xda\xc2\xf0A\xa5\xfe\x85Bj\xcf\xda\xc1\xc1_\xf3AD\x0c\x87B\xdf\x8c\xce\xc1q\xab\xf5A=\x83\x86B=Y\xdfA\x1ck!B\xfbzWA>\x9d\xdaA\x96\xe5"BR\x96bA\r-\xe6A\x82\x13#B;\xd8YA\xb6\xeblA\x13.y\xc06\xea\xb3\xc1\xd6\xc7kA\x8cj\x8d\xc0I\xd5\xad\xc11\xd3jA\xc5ZD\xc09R\xb1\xc1$\xa6\x1bB\xbc\xc7\xc8A\x12\xd2\x90B\xf9I\x1eB\xcbH\xceA]\xb1\x90Bg"\x19B\x18\x87\xcdA\xd4\xc3\x91B]\xf7\xd3\xc1\xac\x11\x9b\xc1;\xd5x@\x17\xad\xd3\xc1$\xe2\x9d\xc1P\xb6\x99@\x0f\xbf\xd5\xc1VS\x93\xc1\xc0w\x83@\xe2\x8a2B1\x94\x16A\n\xff2\xc1\xdbC6B\xd5\x9b\x13A\x1c^/\xc1\x98A2B4\x80%AmV0\xc1\xb1B\x7fB\xad\x85\xdb\xc0\x9c\xef\x99B\xa3\t|BF\xa1\xcf\xc0\xcc\xae\x9aBq\xdb\x80B\x05\xad\xd1\xc0\xe3Q\x9bB\xa5b\x91\xc1\x88X\xb5\xc1d9f\xc1\xc8\xb5\x92\xc1\xa0w\xb5\xc1\x054W\xc1\r\x13\x99\xc1\x97w\xb7\xc1\xec\xa0j\xc1b\xcd\xc2A~\x00!A{8\x94A\xba!\xc4A\x94\x98\x11A)`\x92ADm\xc5Aj\xb0(A\x8b\x1c\x8eA\x97\x1b_\xc27\xd5cB\xfb\xa3+A\xfc\'_\xc2K\xc6eB\xce\x9d9A\xa9\xd4[\xc2W\x83aB\x11\x01.A\x1d\xf2 A\x85\xad\xbc\xc0\xe5\x90OA\xf1\x82$A}\x8c\xdb\xc0\xb8\xbeOA\xffj*A\xb9\xd7\xb3\xc0\xaa\xdfZA\x8cL\xb8\xc1\xdb\xbe\xa2\xc1`\xba\x99B\xe9\x1d\xb9\xc1Z\xd5\xa9\xc1\x01\x8c\x9aB\x00N\xba\xc1\r\\\x9d\xc1I\x14\x9bB\t\xd8:?J\xfe\xda?O\x1b\x8a\xc1\xcfV\xaa?\x88+g?\x08\x02\x8b\xc1\xaa\x0b\xd1>ym\xda?.\x14\x83\xc1#\xea\xfb\xc0\xb4\xd8lB\x15\x17\x80B\xd7\xed\xe2\xc0\xfc\xfbnB\xf6\xd3\x7fB\x9b\x01\xfe\xc025jB$;}B\x16\x1e\xdb>\xda\xceLBKq A\x1e\xe9\x11\xbe^UKB\x0f7+A\xc7RP?o\xebOB\x03Z)A\xd1\xb6\xda\xbf*A\'\xc2yZ\xb0A\x02\xc9\x13\xc0\x0f\x9d)\xc2\xd5\xf0\xacA\x045\x8c\xbf\xb6\xbe&\xc2\x9b\xf6\xa9A\xc6w\xd2A\xab,\x80A\xa9z,B">\xcdA\xc8o\x81A\x17y/Bf^\xd8A\xa2\xe8\x7fA\x01\xd7.B\xa4\x16\x16A\x8c\x1b\x0c@\xe3]\xdbA.K\tA\xea\xda\x0f@\xeb\xf7\xd5A\x9e\xf3\rA\x18a#@m\xc3\xe1A/CjA\xb4\xf8\xcb\xc0tT-AE\x08aAg\xd4\xda\xc0[\xb47A\xb9tpA\x039\xb5\xc0(\xe85A!\xafcB\xb7w\xc5\xc1\xd9\x99\xecA3\xd6eBs1\xbf\xc1\xdd\xca\xedAcvdB\xe5\x0f\xc9\xc1|\xd5\xf2A\xfc\x0f\xa0?\x8b\x87\'>\x06\x15!B\x8b0\x84?\\M\x11\xbf\xf0\xd1"BvN\xe3?\'#\x1c?\xa7\'$B\x87\xb9\x8d\xc1\'*\rB\x95QlA\xa7r\x88\xc1\xf4\x83\x0cB\xf7_wA\x9b\x18\x94\xc1\x97I\x0eB\x17\xd3uA\xc6H\x8a\xc2U\x7f\xa6\xc00\xd0%B\xee\xb8\x89\xc2\xbe\xcf\xb8\xc0#\xd6(B_:\x8a\xc2\x024\x89\xc0`\xf8&B\x8b `A\xa61\x1b\xc1WN\xc2A\x89\xd8VA\xf3\xe4\x0e\xc1\xec\xf1\xc3A\x9a\xacaA\xb4\xd4\x1a\xc1\xdf\xbe\xbaA\xf1u\rB\xc2\xc5\x92As\x92\xeaAX\xda\x0bB+\xa0\x8cA\x1bT\xedA\x1b\x1e\x0eB\x1aa\x97Am\xa1\xf0A\xf4\x02\x99A\xb0/\x06\xc2W\xbc\x83\xc2\x9bn\x98AP\x00\n\xc2r\xeb\x83\xc2\xb5\x94\x9fA\xa6\x83\x05\xc2~\xae\x82\xc2\xd0\xfb\x81B@A)\xc2YQ\xc2@\xbd\x1d\x82B D,\xc29\x87\xd3@\x94<\x81B\xbaP&\xc2-\xef\xd1@&|HBy\xf7\xee\xc1\x1eV\x9c\xc1\x93\xc8HB]\xe2\xec\xc1\xfd\x00\x95\xc1S0LB7\xb5\xee\xc1\xd5\xbf\x9d\xc1\xcf\x97PB\x18\xac\xa9\xc1\xd5\x829Af\x03TB\xa0\xff\xaa\xc1[>@A\xa3\xf1MB\x07\xf3\xaa\xc1"\x92DAf*\xa5\xc1\xf7\xea\xb2\xbf-\x83\x82A\xbd$\xa9\xc18\xdb/\xbf\xde|~A\xd4\x92\xa7\xc1\xf5=\xae\xbf\xa7\x80\x89A\xbe\x7f\xf6\xc1\x9aJ\x0b\xc1\x97\xad?\xc1\xd0y\xf7\xc1|\x85\x00\xc1L\t3\xc1\x07u\xef\xc1\x82\x82\x12\xc1\xb7M<\xc1\xf0k\xa7\xc1]\x95WA\x87o\xb7\xc1\xc0\xeb\xa0\xc1\x8clYAeX\xbb\xc1\x81K\xa5\xc1\x06\x81RAV&\xb0\xc1\x9c\xc8\x82\xc0\xdb\x8a\xae@\x1f<\x81@\tlf\xc0B0\xb5@a\xc4\x99@\\\x06\x95\xc0Oh\x98@%S\x8d@UB\x05B\xdc\xee\xdaAJ\x1cqB\x1b\x88\x01B\xe8\x9e\xdbA\xaa{rBx?\x07Bl\\\xdcA&QtB\x1c*\xbd?O\x0c\x8c\xc2\xf2\xcf,B\x8c\xda^?\xec\xe0\x8c\xc2\x1a\x81/BQ\xfe\x00@\xf2\xe4\x8a\xc2\x9c8/B~\xd2\nAO\x08\x9c\xc1\xcb%\xaaA\xfe\x98\x0cA\xe7\x7f\x94\xc1UW\xa7A\x9ba\x15A\x1d\xe9\x9c\xc1\x02\x1c\xb0A\x93\x07\x97\xc1,\xcb\x8a\xc1o;HAR\x1c\x93\xc1\xfe\x9b\x87\xc1x\x8bTA\x1d\xfa\x9a\xc1\xb9\x90\x90\xc1\x85\xf3OA\x08.k\xc21\xf4\x16\xc2^v\xbfA~\xe8i\xc2Y>\x13\xc2\x0b\x98\xbfA\x97Hj\xc2\xbe-\x18\xc2=\x1d\xc6A5l\xb6A\xc7G\x10\xc1\xb0\x18Z\xc1*\xef\xbbAv\x7f\x12\xc1\x13L~\x1eB\t\xb0\\BW2\xe0\xbeW\x12\x1cB\xfa\xbd^BC\x8e\'?\x1eV\x1fB\x89\xe4_B\xb3\x16\x01\xc1TD\t@4\xf4\xcb\xc1\xaa<\x07\xc1\xdc\xc87@$e\xc7\xc1\xf8s\x05\xc1q\x8d\xaa?\xd4\xef\xc8\xc1\xed\x16\xed\xc1\xa7\xd3u\xc1\x84\x8b\x0cB\xc4\xba\xed\xc1\x9f\x06{\xc1\xaf\x17\x10B \xe3\xed\xc1\xe5Lf\xc1\xc7\x13\rB<\r\x89A;\x0cc\xbf\xb5\xa7fA?\x1a\x8fA\x96\r\x84\xbe\xcc\x8ceA\x08\x8a\x85A\xe8\xff\x01\xbfC\\qA\x88\xbaqB\x12J\x7f\xc03=rB\xc0\xa2oB\xac\xf1\x92\xc0\xd1 pB\x159qB\xa6\x08\x8a\xc0\x84\xd9uB\xbc\x8b\xe5\xbfx\'\x0fB\xa9\xaeoB\x86\x8a\xdd\xbf\xce\xf6\rB\x15\tsBH\x95%\xc0\x81\xea\x0cBq\xa0nB\xdb*\xaf\xc1\x14Z\x1bB9\xc6gB\x9a\xf5\xa9\xc1\x80\x06\x1eBbagBW\xbb\xaf\xc1\xa2\x84\x1bB}\x08lB\xefp\x1dB~\xc9\xccAf\xc1\xbc\xc0\xd4\xbe\x1cB5`\xcdA+\x94\x9e\xc0\xa7v!B\x0eB\xcdA\xcf\x8d\xbe\xc0\xcf\x87\x84\xc1`v\x81\xc2\xc6W\xa3A;\x84~\xc1\x07\x08\x82\xc2\xd8\xa3\x9eAGC\x82\xc1#\x88\x82\xc2\xb38\xa9A\xcaC\xe3A\x92\xda\x9cA\x99l\x03CR\x1c\xe6A/&\x9dA7X\x04C:\xb1\xdbA\xba\xbb\x9aA\x86\x9a\x03C\x85\xa1\x1d@\x91iA\xc2\x8d\x1a\x9eB^\xddK@\x9ct@\xc2\x81n\x9fB\x05\xda\xe2?\xa9\x8e?\xc2\x99\xbc\x9eB\x0cT,@v~\xc0\xc0w70B\xed8!@\xbb~\xab\xc0\xc1\x033Bu\xe0#@\xb7U\xde\xc0\x18P2B\x86\x94?B\xff\xa0\xaf@\xedS\x8dAO#BB\xc3x\xc1@yX\x89A\xaa\xc9=B\x88\x0b\xc2@\x08\xd4\x92A3\x18\x1fB\xe6\xd4NAG\xd1fBl\x83!B\xcd(KA0\xefcBu\xc0\x1cB\xe9EAAc1gBp\xd4\xa4A\x11\xa2\x07\xc2\xf7\xcb\x08B\xa4\x95\xa5A\xa7\xc1\x06\xc2K\xae\x0cB\x8d\xa9\xaaAQ\xc4\x05\xc2\xc7\x00\x07B\x84\xb6\x9c@63\xe0\xc1\x1d\xb3\x9dA\xaf\xb9\xaa@\x97\xa1\xe0\xc1\x0f\x11\xa5A\xf8\r\xb3@\x10\xc6\xe3\xc1 \xae\x98A\x9b\x85U?\xbde\xc0\xc1M\xe4\x08B\xdd\xd4p?\x0b%\xc4\xc1\xfc\x7f\x0cB\xd8>\x95\xbd\xfa\x89\xc2\xc1\xac\x06\x08B_te\xc1\x8f\xa9\x9fA\xd8\xb1\xf0\xc2\x846f\xc1BS\xa7A\x95L\xf1\xc2\x86OV\xc1Ab\x9eAP?\xf0\xc2\x9e\xb4\x0eB/\xe0\xff\xbf\x06,5A\xaf_\x0eB\xa6\xc2\x1b\xc0\x00\x8bBA\x9e\xaf\x0eB\xcc\xb9\x89\xbf\xc9\x9c9A\x8bE\xde@\xe1~V\xc2\x11\x82\x83\xc2\x9c|\xe6@\x85\xdbY\xc2y]\x84\xc2\xbfY\xfa@\xe3\xbaT\xc2y_\x83\xc2\xfe\xf2\x12\xc2\xbe\xe52\xc1: \xa5\xc2s\xa5\x14\xc2o\xf5%\xc1\xa24\xa5\xc2&\x83\x13\xc2\xdfD6\xc1;)\xa3\xc2W\xca\x81B0\xf3K\xc1\xc6\xd5\xb5\xc1{r\x82BRaY\xc1\x9d|\xb6\xc1G?\x81B.nL\xc1`j\xae\xc1\x1e\xf3\x98A\xea\x82\xce\xc0\xaba\xb8A\x9e\x04\x9dA\xc8\xc7\xb2\xc0\x92\xb5\xb8A\xed\x88\x9cAe\x9f\xde\xc0Q\xf3\xbdA\xb1Z\x15AR\xb6\x82\xc1\x8b\x0ebA+\xff\rA\x13\xc7\x80\xc1V~oA\x84@\nA;\xa6\x86\xc1\x92=\\A\xd8\xb4\x87A}f\x0f\xc2\xf7h\xe9A\x05\xeb\x8bA\xd0\x03\x0c\xc2=Y\xe7Agr\x8dA5\x02\x12\xc2\xdb\xd8\xebA\x91\xbe\xc6A \xa9\x0c\xc1/&\xebA"\xfa\xbfA<\xb3\t\xc1Qd\xefA^\x95\xcbA\xe0>\x08\xc1\xba\x0c\xf1A\x87\xb3\x84?\xdcM\xcf\xc1\xd07\xf4A\xd2\\\xf6?^\xb9\xcd\xc1[\x9e\xf1A\x1d\xf8\x9a?\xde\xfd\xd3\xc1\x164\xfaA\x96\x1c\xd5A\xe4 \xc2A(\x08nA\xd6\x12\xcfA\r\x81\xbeA&\xferAHV\xdaA\x0c\t\xc0A\xb8\x03wA\x96\xd6#\xc0b+\n\xc2\xffZ\xa8\xc1\xd5\x80#\xc0\x96\xcd\x08\xc2\xda!\xa1\xc1\xaa|Q\xc0P\xa8\x0c\xc2\x02\x16\xa9\xc1\xa1\x80\x8a\xc0z\xe0YA\x03f$A\x8d\xe3\x94\xc0:l\x8b\xc0i\xa3WA_\xd63A\xa8\xf8\x17B\xb6\x9e\x15\xc2,\xf1\xe2A\xa8\x00\x16B\x8a\xe7\x15\xc2T\xb2\xe9A\xd0\x7f\x15B+\x8d\x16\xc2\xc1/\xddA\xf7\xef$@\xbe\r\x0b\xc2\x02\xd2d\xc2\xa1\x86$@\xfe\x8e\t\xc2\x8e\x01a\xc2\xa1\xfc:@#\x9b\x0e\xc2[\x16d\xc2.>\xefA\xaa\x1c\xc4\xc19\xfb\xf0\xc1\xadd\xf0A|?\xcb\xc1\xa4\xb9\xed\xc1\xce\xf2\xe7A\xd9m\xc5\xc1t\xe8\xf3\xc1V\x83\xa4\xc1\xefi\x84\xc1e\x8b\'A\x1d~\x9e\xc1\xc2\x93\x88\xc1|\x8c,A\xa18\xa3\xc1T\x0e{\xc1i\xdf/AxI\xa1\xc1T\x8a:\xc1\x8ev\xe6AK\xd4\x9d\xc1\x16f4\xc1\x9c\xbb\xecA"\x98\x9c\xc1\xdf\xc2E\xc1KB\xe5A\xe7q\xbfA\xd0\xc9\x90\xc1\x8a:\x06\xc2(\x7f\xc4A\x96\x91\x96\xc1sg\x05\xc2\xf2\xae\xc2A\xb7a\x8a\xc1\xb5\xc3\x04\xc2\xe9I\x8e@\xfd\t\xa5\xc1o"\xf7Au\xa4|@\xc0C\x9e\xc1g-\xf8AT\x97\x87@\xe5\xcd\xa8\xc1\\\xad\xfdA\xa4\xa0\x8d@a\xf3\xb0@:\xcd\xbd\xc1\xaf\xf1\x95@{\x80\xbb@9o\xb6\xc1\x01jg@7\xd7\xa1@\xfb\xdb\xbc\xc1\r\xd5h\xc0<\xa6\x0b@E\xd1\x1aB`\x9b_\xc0\x9f\xd1\x13@o\xb4\x1eB\xac\xbb\x80\xc0n\xbc@@\x9d\x16\x1aB\xa1V\xfcA\xfa\x81\x01A^y\x03Bv\xa6\xf5A8P\x08A\xe1\xe6\x02B\xb0{\x00B\xa5\xd2\nA\xa2\xbb\x05B\r\xe1!\xbf\xe8\x8b\xca\xbec\xe5K\xc2\xbf(k\xbf\xb2\xc1\xbd\xbea$H\xc2\x8c\x10\x99>\xe1\x0e\x93\xbe%\rK\xc2_\xc8\x8aA\xfc\xd6;\xc10b\xb3A\x13\x11\x91A\x1c\xffC\xc1U\x1f\xb6A\x95Y\x88A-|4\xc1\x8f\xb5\xb9A*\xb8<\xc2\x98\xc2r?\x12\x1c]B\x04G9\xc2\x0et\xef>\xf5\x00^B\x99\x81>\xc2L\xa0\x89?\xf1\xbf`BUW\x1bAY\x8c\xdcA\x8e}\xa2A\xee\x94\x0eAp"\xe0Atd\xa0AZ\x95\x1bAMg\xddA\x04r\xaaA\xae\x00\x85@\xfe\xbf\x92\xc1\x81\xc6\xa4A\x8e\xc7X@\xf9\x8c\x97\xc1\x8c\x1d\xa4A\xc2i\x99@\x10\xce\x97\xc1^\xd0\xa7A53XBr\xd4\xf5A\x93m\xbf\xc1`WVB}\xa7\xf9A\xe1N\xc5\xc1-|UB\x11l\xf0A\xd4%\xbd\xc1\xee\x8bQB\xaa\xdeg\xc1\xb1\xa7zAIYUBO\x9cj\xc1\x1f\x03xAZIQB\xa1\xf2\\\xc1Q\x15\x82A\xb7\xce\xf2\xc0U$\xc0A\\\x8c\xe7A\r\x94\x07\xc1\x08\xd5\xc3A\x8fb\xe6A\r0\xfe\xc0\x87}\xb9Ap~\xeaAq\xf58@\xb9\x980\xc1\x90?\x80A\x98\xa9M@E\xea-\xc1\xa8\x81qA\xef5]@\x12\x14&\xc1\xe04\x84A\x0c\x9a8@\x9f\x15\x97\xc0\xf4P\xa1\xc1\xa2\xfdE@V0\xa6\xc0\xfd\x19\x9b\xc1\x99\x16\r@\x87\xd4\xa6\xc0d\xba\xa4\xc1U\xd8yAa\xeb\xee\xc1FE$A\xd3k\x7fA\xc1\x11\xf5\xc1\x9b,,A\xb61rA\xdc\x90\xea\xc1\xc9\x15.A\x17\xeb\x11AY\tOB\x94\x16\xe6A\x8d\xde\x19A\x86\x8bQBn\xfa\xe9A!\xb0\x13A\x18\xffKB\x81\xe8\xeaAo\xc2(B\xe5\xaa\xbf\xbeD\xe9\x98B\xb2\xb7*B\x05\x90\x9b\xbf\x9c8\x99B\xbb\xbc&BOT\x8b\xbe\xd8\x8c\x9aB#\xbb\xa4@\xf0\x95m\xc1\x93v\xa5A [\xa9@\xe9\xd7t\xc1*=\xacA\xa6v\xb0@\x98*_\xc1\xf3N\xa6Ao\x03\xe2\xc1V9\x1bB\x15\x01+A\xa1\x83\xe8\xc1\xe7U\x1bBCJ3A\x91w\xde\xc1\xafY\x1eB\xf9O0A\x1c\xf5\xd7\xc0\x1d\xf1\xee?\xdb\xfcc\xc2g\x1e\xd0\xc0\x82\xac0@\xb5bd\xc2\xe8\xf8\xc3\xc0\xf2\xde\xc3?$`a\xc2\x83\xd9q\xc1\x16\x90NA\xd0S.\xc1\xd4 n\xc1\xc7\xe1QAx\xaf\x1f\xc1\xcc\xc9g\xc1\x94pDA\xc1\xe81\xc1\xef\xc4\x91B\xa71\xdeA\x1e\x0f\x01\xc2\xe6C\x91B\xccH\xe1A\xeb:\xfb\xc1\x14"\x90B\xe9\x15\xdaA\xd6\x12\x02\xc2]\xb4u@\x89\t\xad@T\xfb"\xc2\x8b\x1a\x80@\x8a\x9d\x93@\xb7\xd2 \xc2\xf2[M@F\x89\xbe@\xf7\xbb \xc2\x1d\x17\xa8A\x00zuA\xb0\x8b}A\x01k\xa9A\x98\xebkA_\x83\x84A\x18\x14\xa6A\x1c\x97\x7fAU\x03\x84A\'\xdd\x08B\x1e\xe3|AyV4\xc2`\'\tBy\xc2\x84AK\xe71\xc2\xa7)\x08B`\xe0rA\xea\xb11\xc2\x8a\x05oB\x11\x19>AL\x8f\xdaA-\x89lB\xf3y:A\x9bu\xe0A\x0eDrBc\x9aCA\xd9\x7f\xdeA.\x8aMB\x9dX\x0bB-\xeeJAS\xc8JB.\\\tB\x8e\xceRA]\xb7PB\xbb\xa9\tB\xfbUNA\xbd\xb8\x9e@\xc6)\xab@!M>A\x96\xb9\x8b@\xba\xe2\xb2@(YJA\xb7\x92\xb9@t\x1f\xba@\xfe\xe7BA\x9f\xcekB\x85\x04\xbdA\xe1\xcb\xaaA6DoB\xbf$\xb9A\x99\xb0\xaaA\x08\x88iB\x00\x12\xb8Ai\xb7\xa8A\x03\xb7\x80\xc1@\x83\x17\xc2\xb3\\\xe6\xc1\xac\x9a\x83\xc1\xd1#\x19\xc2\x8e\xb7\xdf\xc1"j\x86\xc1@\xc8\x17\xc2\xcb{\xeb\xc1:x\x05@3\xa3\xe3\xc1v\x0b\xa5A\xa2y\xe5?\xc5_\xdc\xc1\xf7q\xa6A\xe2v\xa0?\xca*\xe7\xc1\x1d\x7f\xa5A\xd2\xaf\x0eB\xbbqd\xc1\xe8\x93kB\x06\xc8\x11B\x00\xa2a\xc1\\\xe0mB\x93=\rB\xe6\xbbq\xc1\x8aPlB3k&\xc1\xfe|DA\xa5\xe1\xd5\xc2\xc8\x87"\xc1o\xc4LA\x13j\xd4\xc2\xce\xb31\xc1j\x8c;A^\x05\xd5\xc2\x1c\x87)\xc1e\xe7\xc2\xc2\x1eI\xd4\xc1\xad|\x1f\xc1\xe2\xb2\xc2\xc2>N\xd9\xc1\x10\xca$\xc1Eb\xc4\xc2\xe8N\xd0\xc1@\xe9\x89\xc1\xc5h\x00A;\xa4\x87A\xf3\x81\x88\xc1\x1er\x00A\x11\x19\x8fA\x98W\x83\xc1\x94W\xfa@\xcc\xe1\x84A\x18\xf3\xd3A\xe6\xbe\xc2@k\xab%A\xe9\x07\xdaA\xe21\xd4@\xa3\xc4)Ap\xf6\xd2A5\x0b\xb0@\x0fd1A\x01\x02^\xc1M\xe7\x80A\xce\x94pBzTV\xc1\xeb\xe1\x80AACmB\x9dJb\xc1\xe73\x88A\x8e\x94pB\x7f\xd0\x1eB\xfc\x1a\x8fAU\x07MB\xad\xf6 B\x88\xb4\x91A9\xffOB\xe2!\x1bB2\xbf\x8fA\xcdhNB5\xd9fBf\xf9\x12B\n\xf6\xab@\xf9\xcdcB"\xf0\x10BC\xd3\xb2@Z\x8bhB\xb1\x04\x14B\xb6\'\xc9@S\xf8\x96B\x0e\x8b7\xc2\x9d]\x03B D\x98BCV7\xc2\xe6\xae\x05Bu[\x95B*\xe75\xc2\x87Y\x05BmS\x10B\xeaw\x88@\xe2 AW\xaa\tB/\xf9pA\xa9\xa7AA\x19=\x0cBj\x0f A\xcf\xa9\x86A\x89\xeb\x06B\x83\xd3(AXa\x8dA!\xc5\x06B\xb3\x1d(A\x05\xf5\x81A<\x0e\x05BWV\x07B\xf4{\x9e\xc1\xd4\x11\xfd@\xd6\xc7\x07BC\xf3\x98\xc1\xd0\x9d\tAq\xa5\x06B\xc1>\xa5\xc1\r\xbe\x05A\xeb\x84O@n&\xedA\x02%\x1aBF\x08r@d\xe0\xedA\xf2\x8d\x1dB\xc3{\x1d@\xc3\xc8\xe8A\xc3\x9b\x1bB\xbe\x9d\x16B\x05\xdb B\xb5\xab\x9dB=b\x16B!\x87!B\x85\xa0\x9fB\xbd\x7f\x18B\x1f0\x1dB\x11\x9c\x9dB\x1f{\xab\xc0\xbf\x82^?\x07<\x0bB{\xe0\xb9\xc0*\xf8\xb0??.\x0eB\x06m\x93\xc0f\xad,?\xda \rB\xa5\xb8{A&\xa6\xe9A\xben3Ah\xd0\x83A>\x85\xeaAl\t>A\xff\xb7pA\xfaq\xedA\xdf/;Ae\xc6\x01A\x7f\'\x0cB\x93\xfbIB\xff`\x04A\xf4\xef\nB\x05\xddMB9\xad\xe4@B\xec\x0cB\xae\xc3JB}\xc0\x06B.\x1c\x1b\xc0\xfc\xff{B\x1d\xe0\tBB\xe3=\xc0\x87\xdf{B5\xe5\x05B\xce\x95\x0b\xc0\x88\xe1\x7fB\x04\xf3\xe2\xc1@\xd9\x85\xc0{\x84\xb8\xc1\xd9e\xdc\xc1/\xd3p\xc0\xac\xce\xb5\xc1\x9a\x8b\xe8\xc1hW{\xc0\xdf~\xb3\xc1m6L@\xc7\xf9\xd3\xc1\xbb\xea\x02\xc2\x81\xa8~@\xaa\xbf\xcf\xc1\xf2\x08\x02\xc2L\x81A@\xb81\xd7\xc1\xe43\xfe\xc1\xb3\x8f\x1cB\x89g\xf8\xc1\xd5\xaf\x8dB\xdb\x1d\x1bB\xbb\xec\xf4\xc1\xcei\x8fB\x94Y B\x1d\xaf\xfa\xc1\xdfI\x8eB\x98ip\xc0\xda\xae\xaa\xc0P\xdbEBc\xb8^\xc0\x97\xa6\xab\xc0]\x83IB\xac#\x94\xc0\x0b\xb8\xb8\xc0#$FB\xe3\xb9\x17B\x83,\xd6\xc0\x9f\x89\xf9AN\x8b\x18Bp9\xed\xc0\x13\xbe\xf4A8\xc2\x16B \x84\xdf\xc0-3\x00B\x00\x016\xc2D\xa3)B[K\x8c\xc1\x15[2\xc2\xca\xba(Bh\x7f\x8e\xc1Et6\xc2\xd6\x89-B\x18t\x8e\xc13f\xa9ATR9\xc1\xea\x83\x9dA\xc8\xc4\xa3A3\xc25\xc1{\x9e\x98AN\xcb\xa8A\x08\xe3H\xc1\xbb\xc9\x9dA\x15\x16\xd2A\xd4hq\xc1\x91\xe5\xa6B\xaa\xcf\xcaA\xfa\x1dr\xc1\x92\x8d\xa6B\x06\xc9\xd1A\xc6}m\xc1q\xd1\xa8B\x9d\xba\xc3A-\x8d\xbeA\\*\xe3\xc1\xa1\x05\xc2Au:\xbbA=k\xdc\xc1\x0co\xc0A\xeb\xd0\xc5A\x1b\x13\xe2\xc1\xc6h\x0bB\x1fAM\xc2\xf3tZ\xc1\xeeu\x0cB\xa1\xc6J\xc2\xd9\x19P\xc1\xa9[\x08B\x10.O\xc2\x9eSS\xc1\x85\xe9\xfc\xc1\x8dA?\xc2\xbf\x19\t\xc21\x94\x01\xc2\x88v@\xc2S\x08\x08\xc2\xd0i\xf9\xc1\\\x97=\xc2\xb6\xe1\x05\xc2\xd4\xea\x01A\xaa\x8b\xa9\xc1s^`Bw\x7f\xec@\xb2\xb5\xa7\xc1\xbdZbBV<\x0fA.\xb9\xab\xc1\x14\x99bB\xad\xc69\xc2\x8fH\xf0\xc0\xa3\xb1H\xc1\x9bC8\xc2\xca\x8c\xd5\xc0N\xbeK\xc1n\xf26\xc2l(\x00\xc1F*A\xc1\x97\xce\x17Bu\xe2U\xc2\xc19\x91A\x9aa\x16BW(Y\xc2\x833\x94A\xe6\x85\x1bB4\xa5V\xc2\x8d\xe9\x8fA\x99\xf0\x9e\xc0z\xc1WA\xa2#\x82A\x02B\x93\xc0\xc1\x9dRA\x10\xbe\x88A\xe1\x1a\x8c\xc0@+cA\xa1O\x80A\xb8\xa6\xd9\xc1%\x13\x88\xc1^L\xe5@\xdc\x96\xdc\xc1\t\xa0\x8c\xc1\xc0=\xfd@2\x93\xd4\xc1\x88\xdb\x83\xc1:\xe9\xf3@\xdd\xae)A.X\x94@\x0b\x03cAy\x1b"A9e\xa1@\xb2\x9eoA\x16B8A\xd7\xa7\x96@\xde+gA\xc1=\x05\xbf*\x13AA\xf0C\xcfB\xb0s\xbe>*F*\xc2\xb6\x98<\xc2U\xe6\x8fB\x99\xba.B\x16\xf0\xc4A;\x04\xffA7\xa7,B\xf5\xe0\xc0A6B\x02B\x9d\xa11B+\r\xc0A\'\xc6\xfdAc\xd6\'BHmbA\x04\x96\x02A6\\$BF\x04[A\xcb\x0b\x04A\xf08)Bz{fA\x02\xd3\x10Az\xcf\xe2\xc0\x92\x9e\xfe@\x15SmB?\xdd\xd1\xc0c\x8b\xe4@y\x8enB\xf7l\xf9\xc0?\xa1\xff@\xa6#pB\x94\xb2\x04Aa&\x18\xc2"\x82\xf7A\xbej\x11A\xf2O\x19\xc2\x06\x85\xfbA<\xc8\xf4@\x82\x03\x1a\xc2\xc3F\xfbA\x7f\xfb\xe4A\x87\x19\x9e\xc2 \x1d\xfa\xc1\x9aq\xe3A5\xa3\x9c\xc2\x87/\xf5\xc1\xc0E\xebA\xdb\xdf\x9e\xc2\xaa\x8d\xf6\xc1\xad\x16U\xc1\xfd\xbd\xca>\xc6x\xfdAa\xa4I\xc1T\xde\x1f?`\xf5\x00B\xb0\xfbP\xc1\xe7\x1d(?\x1f\xcd\xf5A;\x8fEB\xe3\xf3\x16\xc2@\x1f\x80\xc2\x96\xa6EB\x96\xb9\x1a\xc29W\x80\xc2\xab\x1fIB\x13\xa4\x15\xc2\x93g\x80\xc2\xf8mgA\xcd\x84X\xc2\xa0\x9e\xa4\xc1\xa2\x88tA\x1c\x8eW\xc2\xd1\x98\xa1\xc1\x92kjA\xdf\xf3[\xc23\xc2\xa7\xc1\xb5\xa2\'?\x1a\xc4^\xc0B\xcf\xfbB\x80\xb3\x85?\x84\xdc8\xc0\x8a<\xfdB\x1a\x03\xb6=\x1e\x14\x82\xc0\x92\xe2\xfcB\xe4\x0b\xa8@|\xe3\xfcA\xeb\xc8\xc8A\xb4\xdd\xad@\x14\xaf\xf7A\xa4[\xceA\x1bq\xc4@\xafH\x00B\xcf\x90\xc8A\\y\x0eB\xcft\x18\xc1,\xc5\xbeA\xf3\xff\x10B\xb9\x99\x19\xc1\x10\xe9\xb8A\x92M\x10B\x04\xbf\x0f\xc1\xc7\x1f\xc4AiN}\xc1\x1f:B\xc2\x04\xa5\x91A}Wp\xc1\xbf|D\xc2\xe5\x14\x92A\x8c0\x80\xc1\x87\x83A\xc2\xd8E\x99A\x12\xd8\x02A\x12\x11\'B\xd9cH\xc1\x93\xeb\xf5@\x99\xfb&B\x1b\x14;\xc1&\xf5\x06A\xdbx#B\xa5\x03L\xc1\xbc\xa9\x81A\n\x9c\xaf\xc1\x90=^B\xe5v\x86A\xa2z\xb1\xc1\xf1\xd4`B\xa0y{AU\xbe\xa9\xc1\x19\xee_B\xe8\xcf\x11BZ\x0c1\xc2\x0b\x08\x91B\x95`\x10B\xc1\xaa-\xc2\x86\xc5\x90B_i\x14B\x1fx0\xc2\xe9L\x92B\x14\x90(\xc2\xc1\xd2M\xc0\xff\x95\x81B\xf5\x16*\xc2\xb3FU\xc04r\x83B/\x06&\xc2\xa4&"\xc0Q\x9e\x81B\x03\xcduA\xe6|\x04\xc2\x97\x86\xe9A\x1aF~A\xad\x99\x01\xc2\xbb\xd5\xe6AJduA\x92K\x07\xc2n\xee\xe3Af\xa6\x03\xc2P\x8aMB\xbdE\xa3?\xd4\x08\x00\xc2R~LB\x08j\xc7?\xd4\xbf\x05\xc2\x13\xccLB\xda\xf2\x03@\xf8LuB\xbe7\x7fA\x96\x0e1A\xd7$xB^\x1c\x83A\xd5\xf39A^ErB{\xf2{A7];A7\x069B\xc9\x7f\x9b\xc1x\xda\\A\xc5E:B\xee.\xa2\xc1*VVA\xf8g7BH\xa0\x9d\xc1\x9f6jA\x02\x11\x8b\xc0\x8a\xa0}B1\xb6\xc6A\xb7\xe2m\xc0\x80:\x80BU\xb4\xc5A\xbbS\x94\xc0\x97\x05~B\x15f\xceA\xce-\xefA\x8c\xa8\x1fA\x15"u\xc1@\xc4\xeaA\xd3\xc1\x1eAP\xb0g\xc1es\xebA\xcf8+A\x9ag~\xc1Y\x9c\x83B\xac\xbf\x80\xc1\xd6\xf2\xf4\xc1\x00\x18\x84BzBu\xc1\xda\xe0\xf0\xc1`u\x84B\xa0\x89\x86\xc1\x18\x8f\xf0\xc1\x86.\x06B\x03C\xf0@\xab5{B\x002\x04B;;\xfc@\x17}xB\x97\xe7\x03B\xdd\x07\xf2@\x05>~B\xc1\x88wN\xbf\xce\xe1\xe8\xc1\x18\x1aRAb\xd0\x1c\xbf\xde\xa4\xea\xc1\xdf\xd7aAGo?\xbfH\xff\xe0\xc1\x8diRA\x85\xdc\xefAm\xe8\x03\xc1.\x0eZAo_\xf5A\xda\x95\t\xc1b\xd8bAWI\xecAu\x19\xef\xc0\xfd\xb8`A\xbd"\x01\xc2\xfb)i\xc1\xfc~\x91B\x88T\xfd\xc1Z\xbdg\xc1d\xf0\x92B\x1f\x8f\xff\xc1\xe3\xc0u\xc1\xf4}\x90Be\xa5-A\x8eA\xd7\xf3\xd2A\x14\xb0\xff@\xc1WNA\xbc\xc3v\xc1\xadZnAV\xbf\x8cBE\x19u\xc1\xa0\x05vA_\x14\x8bBn(i\xc1v\'oA\x00\x97\x8dB\x16 \t\xc2\xdc\xba\x7f\xc2\x7f\x1a|@F\xbc\x0b\xc2`X\x80\xc2\xd77\x92@\x9c\xa3\x08\xc2w\xf1{\xc28\x8b\x86@p9\xd3@\x9e\x18\x18\xc2\\\xd5(\xc1q\xe0\xd1@ I\x1b\xc2\xba\xba1\xc1k(\xc9@\x124\x19\xc2\x05\xac\x1b\xc1\x04\xfe^A\xb4\xb9\xd7A\xb8\xc2fA\x01M_A\xa34\xdeA\x17jnA%\xfdVA\xb4v\xd2A/\x94oA\xeb@\x8fA\x8e*\x83\xc1\xf6y\xddAp&\x8aAH\xf5\x87\xc11S\xe0AM\x94\x8cAr\xf1w\xc1\xc3\x9c\xdfA{tGA\x07U\xe5@\x88I~A8\x9dFA\xb6\xa3\xcd@\x1f\x8b\x84A\x1c\x18JA\xabl\xd3@\xc6/qA\xb0\xab/\xc0o\xdfDA\xde\x98c\xc1\xfcbh\xc0#\xc5HA\x0fmd\xc1d:\x1a\xc0t\x9dJA\xdf\x11>\xc1\x0e\xb21A\x99\xeb\xb0B}|P\xc1\x91,5AD\x8d>A\xd4\xdbh\xc1\xae\x1e\xf8A+\x96LAw\xdel\xc1z~\xf5AS\xf3@AL\x98j\xc1\xb8\x90\xffAB\xc7MB\x84s\xa6\xbfCj\x97\xc1\x10\xfaOB\x0f\x11R\xbf\xdcV\x92\xc1h!KBV\x13\xc3\xbf\xf1M\x91\xc1K\xe85B{-\xd0\xc1\xdaH\xcbA\xcd\x133B\x11P\xcb\xc1\xc6\xc2\xcdA\xfe\xed7B\x0b2\xd1\xc1U\x7f\xd1A\x0f\x1d\xd2\xc0}bf\xc1\xb85IA\xec\xbb\xdc\xc0J\xc9Z\xc1\x87\xd1QA\xb4\xce\xb9\xc0|Oj\xc1\xf3\xe1QA;/\x80\xc0\xfe\x88\xf0Ax\x99\rB\xb9<\x95\xc0JK\xf3A,\x16\x10B\xad\xc8P\xc0>K\xefA\xdf\xe2\x0fBv\x9d\x06A4\xac\xb3\xc1h\xde\xbbA\xe3j\x03A\xe7\x9c\xac\xc1\x1c\xa4\xbeA\x9dK\x0eA2\x8c\xb6\xc1\xf7\x8f\xc1A\xd6R\xbc@\xca\xd7\xb7\xc1\x0c\x03}A\xeb\xfd\xb2@\xab\xcf\xb9\xc1\xc5_\x85A\x83\x92\xcf@<"\xbd\xc1r[xAY.\x88\xc0p\x93\xef@\x0cAfA8Z\x82\xc0\x11\x04\xf6@\x08vuA\xb0\xdb\xa1\xc0h\x8d\x00AB\xdcbA\x8bh(\xc2)\x9a\xd0A\xd5\x8d\x88B\x0e\xc8*\xc2a\xf4\xd5A\xd4\x89\x88B\xa2~\'\xc2\xb3e\xcfA\x99[\x8aB\xfc\xe4\xd6Avz\xb5\xc1tC\xc0A"\x9b\xd5A\x04\xff\xb5\xc1\xd5\xb7\xc7A1\x8e\xdeAo\xca\xb8\xc1\xee\xe5\xbeA\xa0\xf2\x0fB\x04\x1a\xc8\xc1\xafuD@\xfe\x17\rB\x9c\xea\xc9\xc1\xbb\x7fi@\xb7T\x12BX)\xc3\xc1\x9akc@\xf4\xefA\xc2\x8b\xc5\xff\xc1/Q2A\xd3\x15D\xc2k9\xfc\xc1\x98\xad;A\x19\xd2>\xc2\xebn\xfb\xc1Lk2A}\xde\x1f@\x1eEH\xc2\xa1N\xddBO\x95\x1e@\xed\xb2F\xc2\xaf\x0f\xdfB\x14\x9d\x01@\xeb\xccK\xc2ct\xddB\xc6$<@\xbe\xd7\x15\xc2\xf9\xc2\x16\xc2"\x902@\xfe:\x19\xc2\xfe\x8d\x15\xc2\x9f\x14i@eN\x14\xc2\xb9\x94\x14\xc2\xdb\xff:B\x04\xe4\xd2\xc0\xf9\xfe\xac\xc1\xc6\x0e>B\xe4?\xd9\xc0mW\xa8\xc1\xc0.;B\x01\xa7\xe6\xc0\xf3\xf3\xb1\xc1\xa32\xf6A:\x8d"By\x1e\xaeA:\xdd\xf0A3\x04%B4E\xb1A+\xc5\xfcA\x16\xb3$B\xbc\xfe\xaeA\xc9<\xc1p\xbeuBE\x88\xac\xc1{I=\xc1\xbassBdR\xa4\xc1\x1f\xffJ\xc1\x86B\x06\xc2h\xf2xA\x15o#\xc2\xa2\xb7\x02\xc2Z!{AF\x00"\xc2\xe4E\x08\xc2\xcb\x9fvA\xea\x14 \xc2\x04fi\xc2\x16Cm\xc1\xf5\xf8k\xc1\xc5ae\xc2\x9a7p\xc1\xb8\xaeg\xc1\xb3\\j\xc2\xc3\xd2e\xc1\xb1S`\xc1O_BBp\xa6\xb2\xc1\x91\xda\x04B\xa9~?B\xe4n\xb7\xc1\x02$\x04B)\x83@B\xdf-\xac\xc1\x9e-\x05B\x9a\xeboB\x80\x84\x0e\xc2VI0A!^qB4\x18\x10\xc2\n\xa1=A\xfd"pB\xfc\x02\x0b\xc2\\L4A\xfa\x86:B\xae/\'A\x0eZ@A-g7B&3 AJ\xc69A\x98\x95;BR\x9c\x1cAX\x19JAN\xce\x86B\xaeJ&\xc1\x8e\xa9\x95Br\xc7\x85B\xa2\xa70\xc1\xde\x81\x96BpY\x88BUl&\xc1\xe7\x9b\x96B@q\x1bA)\xc0\xe7\xbf\x15)\x04\xc2\x06\x1c&A\x1e\xe3\x8b\xbfP\x03\x04\xc2\xd5\xb4\x1dA\x91\xc1\x0f\xc0\x8fy\x00\xc2\xc4&.\xc1$.\t\xc2\x8cW\x90A\x0c<9\xc1_m\x0b\xc2[\xfd\x8dA&\xdc-\xc1\x99M\n\xc2l\xf8\x97A\x90C(BN\x0b\x18BN}ZA\x1c\x98*B\xfe\xcb\x18B\xc7$NA\xc5\xda)Bh\xff\x14B\xc9\xe8`A\x978\x1eB|K\xcc\xbf\x97\xe4\x91\xc1\x16\x10\x1bB\x8a=\xe3\xbf\xfen\x8d\xc15\xf1 B\xac"\x0c\xc0\xab\x83\x8f\xc1P\x08\xdb@\xf0\x9ewB\x02v\xdbA\xed\x9f\xf1@U.yB\xcaE\xd7A\xbc\x02\xe7@RHxB7w\xe2A\xbe\xf3PB\xef5\xe5A\x93A^\r\xf4\xc0\xe4\x08\x07\xc2\xec\xbc(\xc2\x8ah\xc0\xc1\x88\xac\x0eB\xa5<*\xc2\xfdX\xbc\xc1\xe2\x04\x12B\xc5\xb3(\xc2&\xc6\xc7\xc1K\xae\x0fB/\xe6\x08\xc0\x0c\x8ba\xc2\x80C\x97A\xbdl\n\xc0\x0e\xdf_\xc2\xfc"\x9eA\xe9{\x9e\xbf\x0f\xebb\xc2\x88\xe4\x96A\x15\xe7\xf9An\xf6\xa4?b\xa4\x89\xc1\xbe4\x00B\x19\xfc\x86?\x1dR\x8d\xc1\xf5\x1d\xf5A\xd7\xff\x1e?/\x86\x8a\xc1\x12ep@9\xd9\x0fB\x1eT.B\xc0AX@*q\rB\n\x1c1BEz\x81@u\xcb\x12B\xef\x900B\x16l\x8b\xbfq_\x10\xc2\xad\x19\x14B(\xa1\x89\xbeK:\x12\xc2\x04\x7f\x15B`\xe5\xe4\xbf\x84\xbc\x10\xc2\xa8\xcc\x16B\xd9\xdf\nB5\xd2\xa5\xc1HR\xe8\xc1p\x03\x0eB\x90Q\xa4\xc1\xce\x8a\xe4\xc1,\xf5\x07B\xebJ\xa2\xc1\xdd\xf9\xe3\xc1\'\xca\xdf\xc1G\x92G\xc2I\xcd\xd9@\xcfa\xe4\xc1\xf7\xa5E\xc2lN\xef@=\xc5\xd8\xc1\xa0\xcbG\xc2\x1e\xfb\xe5@\xc2\xdb\x1eB\x9d\x93\x1c\xc1\n\xcd\x1fAkO B\xf6\x8e\x14\xc1\xf9%,A\xe9$!By\xe1(\xc1\xc5T\x1fA\x02\x07\x98\xc1\xe6a\xfc\xc1$\xd2\xb9A\x7f\xb0\x9e\xc1Z\x10\xfe\xc1\xda[\xb5A\xd9f\x94\xc1\xe9\xa5\x01\xc2if\xbaA\xa82\xec\xc1\xab\xeaAB\xa3\x9c\xfeA\x0e\x10\xee\xc1zn>B\xb2\x1e\x01B8\xdf\xe5\xc1\x12IAB6\xf3\xfaA\r\x02\xa9A\x1b*\x97?\x9a7\xdfA\xc8\x85\xa9A:>\n@g}\xdfA\xfc\xdb\xadA\x953[?N{\xe4A\x8eh\x0f\xc15\xcaKAro\x00BJ\xc7\x19\xc1\x1eb?A\xd3 \x00B\xe2\xc2\x06\xc1|,HA\xc9\x84\x03B\x1fd\x14\xc2\x98\xce\xbeA\x96k\\B\xcf\x90\x15\xc2\\\xdb\xc5A\x9c\x13]B\x85{\x16\xc2\xb8\xbf\xbaA\x9c&_B\x99\xd3\x89A\xe7\x12\x05\xc2<\x19\xacA\x01J\x84A\x06\xf3\x03\xc2\xd2\xcb\xb0A\xb3\x92\x8eA*O\x06\xc2\xc2\xe3\xb1A\x87u\x1eB\x93\xa3eA\xa6\xcf\xecBr\x9e\x1aB\xbc\xfegA\x94:\xedBQT B\xf4@sA\x8cW\xecBF\x9c\x13A\xaf\xf6yA2\xa2\xa5A5\x0e A\xc7P\x82AT)\xa5A\xfbb\x10A\x7f\xaczAA6\xadA\x85\xe5\x85\xc01\xac\x0f\xc2\x9c\xd1\xf3A\xb7\x13a\xc0N\x1c\x0e\xc2\xd3l\xf7A\xe2\xc5{\xc0\t\xa9\x13\xc2k0\xf3Ak\x9f\x84\xc1J\xd7\x80\xc2kVoB\x15\x97\x89\xc1)\x80\x81\xc2\xac\xa4lBu\xea\x87\xc1\x9c\x98~\xc27\xc0pBoQ\x12\xc2\xcfF\t\xc0,\x86\xa0A\x17\xe9\x0e\xc2\xda\xf5\xde\xbf\xb8\x87\xa1A\t\xd9\x13\xc2\x02\xd9\x0f\xc0\x0fD\xa7A\x1c\xa4\x16@\x8d\xd0\x92B\xbe\xa4IA\xaa\x02\xe5?\xb4:\x91BM\xdcIA\x97\xb6K@3H\x92B\x8d\xffPA\xe3\x13\xa2\xc1\xfdB\x0c\xc2\\\x9e\x82B\xed)\xa5\xc1O\xd2\x0e\xc2l\x97\x83B\x16\x8a\xa5\xc1Mi\t\xc2wk\x83B\xb0\xf4:A\x81S\xf6@\n\xac\xbbA!:0A\x0e>\xee@\x1d\xef\xc0A\x90\xc5HA\xcf\xc7\xef@\xd6\x16\xbfA\xda\xce@\xc0[\xa30\xc2KT9B\x99\xa4~\xc0\xd8\xc21\xc2\x85\x85:B\x8a\xa5*\xc0{w2\xc2\xd0\x82\xed+\xc8\xbf\rePAmL\x96\xbf?7\xed\xbf\x94\x04\\Aom\xca\xc1\x7fV\x8dAC\x93\xa4A\x8a\xc2\xca\xc1A\x90\x8bA\xda+\xacA\xf2\xdf\xc9\xc1\xcbX\x95A\x02_\xa4A?r\x9cAw\xe8x\xc2\x0f\xe4\xc1AG\xe0\xa0A3?{\xc2\x1b8\xc7A\xfa\xa4\x9eA\xce\xcey\xc2db\xbaA\x9f\xa61B\xf9\xd6\x1c\xc2\xb4\x86\xb4A\xbca3B\xa4\x8f\x1d\xc24S\xbbAy\xc52B\xae\x95\x1f\xc2G\x1c\xb0A\xaf\x18.B\xc2z\xfdA\xc0\xf5eB\xfeq+B\x8e\x89\x00B\x88\xfbcB}\xa3-B;\xc0\x00B\x94\'iBy\x160AQ\xf7H@?\xcb\xd7\xc1\xfc\x1c4A\xe3\xa4"@\xff\x92\xd2\xc1\x13\x04 AJ\xa6F@\xf2\xba\xd7\xc1[c!B\xb2\xf0\xe4@\x83)\xfdAV\xac B\xf0\x07\xcd@4J\xf8A\xc7\xf0\x1dBO\xcc\xe2@&$\x00B\xa2I\'\xc1x\x99"\xc2\x16\xe1\xa4A5\xf3(\xc1\xac+ \xc2\xb4 \xabA2\xe0.\xc1\xe6\xa0%\xc2\xde<\xa7A)\'\x86?\xd9\x91\x87A1\x89q\xc1P$\xd1>\x0f)\x8dAI\x85n\xc1K\xa9a?\xe3\xe3\x82A<\xcfd\xc1\x84\x02jADA&@\xaf\xf7\x87B\x03flA2\xfe_@<\xcc\x88B\xee\xb0\\A\x0cz%@\x11\x04\x87BN\xe1)A\xa4\x08\xef\xc1\xb0\x92\xa6Ab\xb91A_R\xf2\xc1\xcf\x98\xa0A\xb0Q-A\xff\xa5\xf4\xc1#\x01\xacAR\x8a\x1eBjU\\\xc1C\x13\xa6@\xef\x18\x1cBe\xc9Q\xc1W\x05\xb1@\x8cm BF\x9f\\\xc1\xac\x92\xc0@##!B\x83t/Bf{\x93AO<\x1fBj\xa12B\x8d\xa6\x92A\x83\xf7\x1dBd\xee,B\x00\xbc\x94A\x9dx_\xc2*r#\xc2Y\xe6\x08\xc2\x19w^BI`\x9f?:\xb5\x0b\xc2\xa6\x9c\x0c\xc2\xb0\x90\x0b@\x89\xbd0\xc1\xb1\xf2\n\xc2\xf70\xff?\'\xb9$\xc1|\xe4\t\xc2\xe0.\r@\x11\xc8:\xc1\xd2\xb5*\xc2?L\xc4A\x91&\x1cA\xe8\x84-\xc2-\x01\xcaAO\xf0\x1dAl\t+\xc2\xc1\xd3\xbfA\xe6\xd0)A\x08\xdf\x11@\xb8\x1c\xd7\xbf\xa0v\xbaAH\x9b\x0e@\xd7m\'\xc0\x8d@\xbcA\xa7b6@\x11e\xdd\xbfj\x08\xb4Ai\xfd\x0bBO\x01K\xc2\xcc\xe4\x0c\xc2^\xec\x0eB\xaaJH\xc26\xc1\r\xc2\xf7C\x0cB9\xfbK\xc2\xfe\x1e\t\xc2:\xf7gA\xc2\xb1\x9e\xbf\xd8>\x95A\x835kA\x01#\xdf\xbf\xbed\x8fAi\xf4sA\xde\xde\xa5\xbf\\\x92\x99A\xe4\xa8\xa5\xc0\x80\xea\x89B\xbb\xfe\xe0\xc0L\xd4\xba\xc0\xa5~\x88B\xcf5\xde\xc0i;\x91\xc0`\xc0\x89B\xf5\xf7\xc6\xc0g\xa2\x01B\xf1M\x01\xc2\x93\x08\xee\xc1x\xe5\xffA\xa6>\xfd\xc1\xb4\xbc\xe9\xc1\x9a\xac\x02B\xce\x19\xff\xc1\xc4R\xf4\xc1\xc4J\x0e\xc1\x06\xb3\xe6\xc0a\x9c\xd8A\x87\xdb\x05\xc1\xa1\x84\xe0\xc0\xb3\xcb\xdeAd\x91\x17\xc1\xb7w\xfe\xc0\xf7%\xdbA1\xa7\xaaA\xd28(\xc2\xfd/\x98\xc1O(\xabAp4(\xc2\x8d\x01\x91\xc1/\xa4\xaaA1\x9e$\xc2\x1c^\x9b\xc1A\xb3\xa1B\x9e?R\xc2\xa7E\xfa\xc1\xde\xe3\xa2B\xc7\x11P\xc2\xa2\x05\xf6\xc1V\x14\xa0B\xb5\xf2O\xc2\x023\xfb\xc14tg\xc1\x0e\xf1\x1f\xc2\x0653A6\x01n\xc1]w\x1c\xc2\xf4B7A\xf3\x92g\xc1e+"\xc2;}@A\xdd\xba\x13BG{\x8b\xc2\xf5\xd3YABl\x16Br\xd8\x8c\xc2\x08\x97VA\xb1\xd2\x10B\x9aq\x8c\xc2D\xd5aAX\x1a\x01B\x83\x7f\xbbAx\xd9\xabA\x8c\x10\x00BE6\xbcAh\xc0\xb3A\x13\xac\xfcAPk\xb6A\x1c\x02\xa9A\xa8\x12*B\xd8Xq\xc1I\xb0\xb5\xc1\x01\x1d-B[\xbfx\xc1(I\xb8\xc1\xafE*B4\xddt\xc1T\x10\xae\xc1g\x0f\xbc\xc1K\x95>\xc2\xba\x0f\xd9A\x91\xc8\xb7\xc1\x12\x84;\xc2`\x80\xd7A\xe0\xff\xbd\xc1\xd7\xd5=\xc2\x00X\xe0A\xdf\x16\xdbAs\xc4-\xc1\x91\xf2\xa8\xc1f\xeb\xdeA^? \xc1\x08\xda\xa8\xc1\xfd\x1e\xd9A\xfd\xde-\xc1Qn\xa1\xc1XN>\xc2;\x9d\x8b\xc1\xde\xa6\x8bB\x1a\xf5<\xc2\xe9\xdb\x91\xc1\xca[\x8cBN\x9d;\xc2\x00\xe7\x86\xc1\xe4\xe9\x8bB\\\xab\xa8\xc1\xa3\xb6\x99\xc1\x89\xc5\x8b\xc2\x05\xa9\xa7\xc19\xe3\x92\xc1\x05\xf6\x8a\xc2g\x95\xa1\xc1\xc0\x97\x9b\xc1\x16e\x8c\xc2\x89\x03\xf6@\x80\x8d\xcaA\xb3\xc3\\B\xf29\xef@\x0e\xdf\xc3A\x94\xe2]BA\x0e\xde@\x1d\xa7\xceAN\x87]B\xa1\xfaJA\xc3\xdb\xb0Ah\xc0\x90A\xdc\xfdVA\x86\x1e\xb2A\xe7\x19\x8bA\x0c\xdePA\xd8\xc1\xb0AB\x1e\x98A6\x1e\x1f\xc1\xebG#B\x03O\xcfB\xc0H&\xc1\x12\x8c!B+\xcc\xd0B\x88Y\x10\xc1Y*#B\x17\xc0\xcfBS\x18r\xc1\xbf"\x8aB\xc5w\nB\xec\xe3e\xc1\xd7P\x8aB\xb6-\x08B\xdb\xf4k\xc1t\xa6\x89B\xc9\xd8\rB\xc3NSB\x95|\x98A\x13\xea\xc7\xc1t8UB\x8ad\x93A\xa7\xbb\xcb\xc1i\xa3RB\x8f \x94A^j\xc1\xc1\xc8\x1c\x9c@\xc0\xfe\xec\xc1\x0e\x95!\xc1A^\xad@l\xe8\xee\xc1\xac\x8a\x14\xc1\x17\x9e}@\xad\x82\xec\xc1\xba\x01\x1b\xc1\xe3i^@\xd0\\\xed\xc0D\xf0\xe4\xc1`U&@z\x89\xf9\xc0\xe2\xb1\xe3\xc1S8\x80@\xfd\\\xf9\xc0\x1b\xd1\xde\xc1V\xcf\x89\xc1\xca\xea\xd0A\x07\x93\x9cA\xcb\xe8\x88\xc1,\xe9\xccA]T\xa3A\xe2\xab\x84\xc1\xfa\xd5\xcdA\x86\xe8\x97A\xac\xe6\xc4A\'l\x83A\xb5B\x06B!\x06\xcaAg\xbb\x83A\xfcJ\tB\x05\x01\xbeANb\x80A\xdb\xe9\x07B\xde\x96\x90\xc0B\xd1\xf4\xc1\x82eYB]O\xa4\xc0\xa6\x85\xef\xc1xjZB\xe50r\xc0\xa2\xa1\xf3\xc1K\xe9[B\xa9\x92\x0fBG\x99\x9cA\xa9\xc21\xc2\x03\\\rB$\xb3\xa0AY7/\xc2\xe2\n\x13B\x0f0\x9cA\xb360\xc2Qj\x1cB)&V\xc1\xed6\x8aB\xa6\xef\x1eB\x13\x8e_\xc1zP\x89B\x107\x1aB\xa1\x9f_\xc1\xe7W\x8bB\xe71\x8dB=\x94\xb4\xbf$\xd9\xfa@c6\x8dB\x14\xf7x\xbf\x19\xa0\x0bA\x01\x03\x8dB\x93(\x18\xc0\x19\x9b\x00Aj\xbd\x10B\xf4\xcd\x83\xc1\xd5w\x10A\x07G\x0eB\x8c\xc2\x89\xc1d\x8a\x14A\xc6\xae\x12BY\xee\x82\xc1#\xdb\x1cA\xa7\xf2\x9b@xPLA\x93u\xbaA_\x12\x87@\xb5\xbfIAx~\xb4A\xff\xac\x8e@8\xf5WA\xef\xdf\xbdA\xd9P\xc9\xc1\x8ed\xe2\xc1\x1e9\x8fB\x95\x06\xd1\xc1\xa7\xcb\xe0\xc1L\xdd\x8fB\xe2\xb6\xc7\xc1\xa98\xe7\xc1\xe8\xcc\x90B\xdd\xeaa\xc1#&\x96\xc2\x0b\xdf\xb3\xc1\x00\x82V\xc1:N\x95\xc2\xb6n\xb1\xc1%+i\xc1B*\x96\xc2\x82\x94\xac\xc1\xa9\xef\x0b\xc2/\x88\xd2\xc1m\x08\x02\xc2\x87\xe2\r\xc2$\xff\xd2\xc1V\xd3\xfc\xc1"^\x0b\xc2\x174\xda\xc1\xa0\x05\x03\xc2h)\xbe\xbe/\x80\n\xc2<\x93Y@\xd2\x0f\x84\xbf_L\x0c\xc2\xcaJ}@\x1f#B\xbe\rK\x07\xc2|*|@k!\xfcA\x92m\xcc\xc0\x863>A\x19\x9f\xf5A\xc1\x19\xc0\xc0e\x0fDA\xd0\xd2\xfeAj\xe4\xd9\xc059KA3t"\xc2]\x19\xe6\xc1{\xaet\xc1\x1c\xbe$\xc2y\x08\xe8\xc1\x91\xe5h\xc1,(!\xc2w"\xdf\xc1\xc0\xfdo\xc1\x0e+\x7f\xc1u\x14>@\xea\xd5xBZ\xf6\x83\xc1e\xc8B@~\x96uBE\xef\x81\xc1`\xe9\t@\xf4@zB\x91\x02\xca@&B\xe9AO\x02\x9bB\n\x03\xcc@a{\xebA5\xf9\x9cB[X\xdc@\x92\x04\xefAMB\x9aBi\x00\xdbAC1tB\xe2\n\x8aA\xf2\\\xdfA5\xdepB\x02\xb0\x89ANV\xd5A\x1f\xe6rB\x8b\x8b\x8eA\x81\xad>B\xc1\x9a\x0e\xc1\xe1\x0c`\xc1\x12CAB\x15U\x11\xc1\xf1\xbbT\xc1\xf9[>Bo\xd2\xfd\xc0\xee8^\xc1>?\x1fB\xf3\xcb\xd5A\x83\x80PA\xa7\x9c\x1fB#X\xddA\xb4\xd4OAX\xf2\x1eBO\xae\xd4A\xf6\xf6_A\xbe\xb8H\xc0\x91\xd8\x8e@\xe6U\x91A\xba9S\xc0\xba\xf9d@T\x08\x95A\xa0\xa4q\xc0\xad\xbd\x9f@%6\x95A\xe8t\xbf\xc0\xb97\x0b\xc2\xbd\xd3\xa5A\xf9I\xc0\xc0^*\x0c\xc2\x9f\xf9\x9dA\xfb\xda\xdd\xc0\xca\x92\n\xc2\xc2\x9c\xa8A:\x8cz\xc1\xa9\x06\x18A|w\x7f\xc1UW|\xc1\xb9\xfb\x07A\x17\x8e~\xc1\xbd\xf4\x80\xc1\t\n\x1dAb"q\xc1\xd73\xa9A\xdc\x80:\xc2\xca\xc7\x87A\x8f@\xadA\x9c\xe5;\xc2W\x04\x8eA\xd0\xbf\xa9A\xb9\xba6\xc2\xe9\xaa\x89A\xde\xbf]B+\xc3Z@\xe2\x8a\xa4AA\xb1YB\xdesY@\xbe\xd4\xa2A\x86u]B\xee\xc2M@\xbb#\xacA\x86\xdf%B\xb5\xdb|A+\x00\xdaA\x00\xb4(B`OyA\xb4/\xdeA5\x1f&B\xc6-\x86A:\xf2\xd8A\x8b\xc2\xc3\xbfU\x18_A\x12\xfd\xc7\xc1\x0c\xc4\xe8\xbf\x8b\xe7YA!\x02\xc1\xc1mv\x81\xbfi\xcbkA\xba\xc4\xc5\xc1\x11A\xcb\xc1\x11\xbby\xc1\xc9\x9b\xe9A\xf5_\xd0\xc1\xac\xf6o\xc1b\x11\xedA\x14\xaa\xc5\xc1\xca\x14y\xc1\x1e?\xefA\xcc\x04\x01B\x0b\x83V\xc1\xf9\x9baA\x8f\x9f\x04B$JO\xc1\xfc{dA\x90\x80\xfbA\xddzN\xc1\xad\xd2eADv\xdc@m{\x9e\xc1\xe5D\xefA\xf1\n\xf2@XH\x9d\xc1\xb2\xdb\xf4A\xfe\x86\xc1@4\x16\x9e\xc1\xa8{\xf3A9\x95[B<\x94\xf7A\xd0\xb0\x07B\xe3\xaf[Bm~\xf5A\xf9l\x0bB\xdd\x11\\B\x1de\xffA\xda\x0b\x08B\x13\x90|\xc1\x83\x82\xe9@\xcd\xeb)Av\xeex\xc1\x02\xe3\xdd@\xe8o7AWzs\xc1\x12\x8c\x01A\xb8_(A\xaf\x85(\xc2\xcb>/\xc0\x19\x044A\xe8\x02(\xc2h\x82e\xc0b :A\x0e\x19(\xc2=\x98\x0e\xc0l\xc3@A\xb2e\x9aA\xdc\xe9\xfb@\x8b\xce\xa0AI\x90\x96A\xbb.\xee@\xefT\xa6A\xe0\x06\x98A.0\rAa\xc5\x9fA\xb2E-A,|&\xc2\x1a\x10\xc5A\x0cb"A\xe7\xcb#\xc2l\xb7\xc3A\xb5k,A\x8fJ&\xc2,\xb9\xccA\xbb\xab\nB\xed<\xdd\xc1\xbd\xa2\x03\xc1F\xa1\x0cB\xb1\xda\xe0\xc1x\xd2\xef\xc01\x85\x08B+p\xd7\xc1\xb3\xd3\xf9\xc0\x1d\xe1\xaaA\xb6\xad\xd0A%\xb8\xb9AT\x8b\xb1A\xeem\xcdAw\x1e\xbbA\xe1/\xa6A\xd0\x12\xcaA\\/\xb8A\xea-\xabA7H-A\x03\xde\xc8B\xd2@\xa9A\xd3\xaa\x1eA;\xd1\xc8B[*\xacA.d/A\xa4\xdf\xcaB\x84\xb6\x00B\x89\x02+\xc14&\xb1@\xfem\x02Btr)\xc1\xef\xce\xcb@\x96z\xfaA\xf8\x8c)\xc1+k\xba@>\xaeWB\xb8o\xe0@\x99\x98\xd5A\xdeqYB=\x10\xe9@aA\xdcAO\xe7WB\x8d\x89\xc1@9z\xd6A,\xb4\xc6A\xb6\x8c\x01B\x91g(A\xb6\xae\xbfA\x0b\xef\x02B\xa6\xfc,A\x18~\xcbA\x1b<\x02BM%4A?\xf7\xcc@\xffw\xea\xc1\xc8\xd4\x86\xc1\xa0!\xb2@f\x83\xea\xc1\x8c\xce\x83\xc1^\xe7\xdb@\xfd\'\xe7\xc1\xad\xa0\x80\xc1\xd2\xd3\x10\xc1\x93\x07\x16B;\x13\xa0\xc1\xff\xc3\r\xc1\x05\x08\x13B\x80<\x9b\xc1\x0b\x0b\x1f\xc1\x93#\x15B\xbf\xca\xa2\xc1\x00>\xb6A\xcbb\x8bA\xd2\xd3\xa0B\x9cL\xb3A`\x16\x85An\xeb\xa1B\x02\x92\xbbA\x92\x87\x8dA\xac\x0f\xa2B\xa2\xbf\x02Bm@>\xc2\xa3\x06\x7fBP1\x01BH\xf1Bx\x8a\xae\xc1\xfe\xbd\xb9\xc1\xabp\xf1B\xaa \xa3\xc1\x00\xfd\xbb\xc1\x9b\x94\xf2B;\xd5\x9e\xc1\xe28[\xc15\xdd\xceB`k\x9c\xc1\xa2\xeeZ\xc1\xa1\x06\xcdB:.\x9c\xc1ZMi\xc1\x12e\xcfB\xd8\xcd\xdf\xc1\xae=)\xc2\xd8y\x92A{X\xe7\xc1\x9d\xff\'\xc2\x95\xd7\x93A~Y\xde\xc1\x8fb,\xc2\xde\xed\x96A\x1f\x1f\x08\xc2G\xa5\xe8\xc1\x878\rB\xd4X\t\xc2\xbcd\xe5\xc1\x8e\xbb\x10Bqn\x05\xc2\xf2?\xe4\xc1!\xf7\x0bBw\xd7\x18\xbe\xd44\x8d\xbf\x8f\xd2\xaf\xc1\xaa\x85L?\xe5\xa3\xa9\xbf\xd7\xdd\xad\xc1\xec\x93A\xbf\xf7\'\xf4\xbf0\x0e\xb0\xc1\xcd\x16\xaeA\xa4e\x16\xc2\xf6\x02\x9bB\xa6 \xb3A\xd2\x80\x18\xc2\xb5\x02\x9cBo\xd0\xb0AQ\xee\x12\xc2\xdfz\x9bB\x00 \xd4\xc1\xc2P\xecA$\xa2eBe\x0c\xcd\xc1\x17\xa7\xecA\xe9!gB\xf0\x0f\xd6\xc1u\x87\xf3A\x12\xbbfB\x19\\\xe1\xc1e\xa0\xf3@\x96\xae\x9cB\x7f\xf3\xdf\xc1(e\xef@\xe3v\x9eB\x83\x15\xdc\xc1\xc8i\x04A4\x0e\x9cB\x1fP\xd9A,\xc0\xbfA\xd3\xa1\xabBB\xa0\xdeAC\x97\xc4A\xaaG\xacB\x98>\xd7A>(\xbcA;;\xadBVT\x03BvM\x82\xc16\x9emB\x04w\x04B\r{\x81\xc1\x9e\x1bqB2U\x01B^1w\xc1>LmB\xc9\x13\xcc@\x0e01\xc2\xd7$\xc4\xc1\xd1\xde\xcf@\xdaW1\xc2r\xd0\xbc\xc1\xa1\xf2\xb3@`c3\xc2\xd7\xc0\xc4\xc14r\x9f@r\xe4\x02\xc1\r2_A\x82\x99\x8e@\xef\x0c\xfa\xc0\xd3\x9ejA\xc8\xc0\xb2@\xd3T\r\xc1\xf7GfAh~\xf9A\x9e1mAA+^B`$\xf5A\x99\x87vA\xe9!`B*\xa3\xf6A\xae\xdb^A*\x96^B&\xd9\x92A\xd646\xc2\xde\x02\xdeA\xd4\x06\x94ASC9\xc2JS\xe2AyX\x8bA\x9506\xc2\xc7\xd5\xdcA\xf2\xac\xb7\xc0\xed\x07\x99\xc1\xbcj9AW\x17\xaa\xc0\x8b\xc5\x92\xc1/\xeb?A\xbe;\xcd\xc02\xb3\x9a\xc1nICA\x94\x12\x8f?\xef\r\r\xc0\xf1|\'Br\x1a2?K\xb2\xd6\xbf\xb1,*B%a\xe3?\x90\xa4.\xc0\x8d@\xb3\xc8\x8cA;]\xf5A\xac\xef\x9fAx?\x9aB\xd3R\xfbAd\x02\x9eA\xe0d\x9bB\xc2\x81\xf1A\x8b\xcd\xa3A\xb6\xbd\x9bBt\xd5P\xc0|n\x02A\rXM\xc2\xfa\xb2\'\xc0R\x02\xf4@s\xf1J\xc2\x19\xe5A\xc0\x15\x12\x10A\xdflL\xc2\x81\x06.\xc0\xb8\xf7,A\xb3G\x84AV\xd5j\xc0%\xd1-Ae\x02\x86A\xec\xb2\x17\xc0t91A\xb6\x0c\x8bA( \x84AXC\xebA\x14\xa7\xb4A\xb1\x0f\x82A7\xbd\xf2A\xb62\xb7A$\xf3\x87A\xf5\xa5\xe8A>\x07\xbaAc)\xb3A\x82\xbb\xf2A\xc1\xf5\xafA\xde\xdf\xb2A\xb5\xcd\xefA\x84Y\xb7A-\xec\xb9A\x0e\x9f\xf5AU\xb1\xafA\x93b\xc4@\x94\xbf\xe4\xc0\xb9\x93\x16B\x1e|\xe4@\xf5\x92\xe6\xc0\x8e\x03\x17B\x86\x14\xbb@f\xad\xd7\xc0\xcc\xfe\x19Bdu\xb3A;\xf8\x8eA\xd6\xcfbB\xb0\x1f\xb2AP\x94\x87A% bBc\x0b\xb8A\xc44\x8fA\xab\xb4eB]\xb19A\xd0\xeb\xcb@A\xbb\tB\x88U+A\xcd:\xbf@\xb86\nBD<:AP\x19\xd9@\xe5v\rB\xa9\xa1\xf1Aq\xc0\x15\xc1\xbe%\xb4A^\x0c\xf2A/\x12\x1c\xc1\xa1\x0f\xbbAQ\x16\xefA\x0e\xa0\x08\xc1 u\xb6A\x07 \x18B\xd3k\x8a\xc1IF\x96@^-\x1aBX\xf8\x87\xc1\xaf\xee\xb1@\xc1G\x16B\xd7z\x8f\xc1I/\xa6@\x04X8\xc1\x0f\x1a\x91\xc1\xea\x94{B\rxD\xc1\xd92\x91\xc1\x9fp}B\x8f\xcc4\xc1[1\x98\xc1\xfeX|B\xf5.+\xc1\x93&\xe2\xc1\xdd\xb8\xc3A\x89\x07-\xc1\xa2H\xdb\xc18\x8f\xc7AN\x0e \xc1\x1b\xc8\xe4\xc1\xba\xd4\xc7A\x00_\xca\xbf\xa26\x19B\x01\x96$BoK\xc3\xbf\xb2\xa8\x16Bil\'B\x93d\x8c\xbf\x86\x93\x1cB\xb83&Bo\x96J\xbfo\xa6,\xc2\x83\xcc\xf8AD\x1e\x99<\x84m+\xc2y\n\xfbAY\xa7\xb4\xbf\xbax+\xc2\x1e4\xfeA3\xc3\x99?P\x92\x06\xc0\xfa\x96\xf3?\xe5@\xf8>\xb1\xef\xfe\xbf\xd8\xeb&@\xea1\x02@\x0fY\x0b\xc0\xa1\x05\x1a@\x18n\xf0A\x92N\x02A\x1dT\xfb\xc1\xfa\xdd\xedA|\x12\x02A&7\x01\xc2\xc6\xbd\xf6A6\xe7\xf8@\xfb2\xfd\xc1\xe3\xaa\x8dB\x8c\x1d\x14B\r9\x8e\xc1KU\x8cB\x96N\x13B\xee\xac\x89\xc1a\x93\x8dB\x92\xde\x10B\x1f\xba\x92\xc1\n\xc7q\xc0n\xf5\x13\xc0\x15OA\xc3\xf9[AA\xeb\x8d\xc1\x9a1UA\xf3OcA\x9d\xf2\x87\xc1>\\@A7\xe9ZA\xec\xd6\x8b\xc1\xde\xf2J\xbf\xdb\xb7\xc5\xc1Ei\x8bB\xbfQ)\xbfn\xc2\xc1\xc1"\xd3\x89B\xfd\x8c\xa9\xbdG\xca\xca\xc1\xa4_\x8bB~+\xf6\xc11\xc8F\xc1\x91\xce\x07By\xf7\xf7\xc1\r\xda7\xc1.5\tB\x90\x17\xf8\xc1d\x19P\xc1\xaa\x93\nB\x1b\xb6\x9cA\xb1\x00$BI\xf5\x9a\xc1\xaa\xf1\xa0AL\xe6 B\xb1\xc3\x98\xc1\xa0\xd3\xa0A5\x1b\'BXE\x98\xc1#\xa5\x15B\xab\xc1\x87A\x8e\'#B\xfb\xfd\x13B#\x93\x8cA\xdcg%B\xce\xcf\x14Btn\x80A\xe6\xd0$B\xdf"\xd0ApU\xcf\xc1\xf1\xe7\xbd\xc1\x99\x83\xd4AKy\xd4\xc1\xb2!\xc1\xc1z\x93\xd3A\xacH\xc9\xc1\xbf\'\xba\xc1\xe9\xed\x81B\\\x83\xdaA\xbf\xfb\xc5\xc1\x1e\xcf\x80B:\x0b\xd6A\xf7\xdf\xc0\xc1\xc9\xa1\x81B\xd0\xfd\xe1A9\x95\xc4\xc1\xa2\xc6\xd1A\xa2\x8d\x14B\x8b\xba\xc8\xc1\\\x04\xccAk\xf2\x16B\xdbk\xca\xc1\xa6\xf1\xd4A7\xff\x15Bm\x11\xc3\xc1_\xac\xb0\xc1\xd01\x00\xc2!\xf20A]h\xb0\xc1\x94\xb4\xf8\xc1\xa2\xb60A\xae\x1e\xaf\xc1.^\x01\xc2\x95\xcc@A\x1f\xa0\xd7An\xfb\xa7\xc13\xd8\x98\xc0\x0c\x84\xd5A\x9d\xd0\xa7\xc1$vs\xc0\xaf\x93\xdeA\x0c\x17\xa5\xc1\xe1\xb1\x97\xc0\xbf\xb6\x86@\x91\x9ek\xc2\xd0\xab/\xc1\x1dIq@\t l\xc2\x90@"\xc1\xe9\xa4\x9b@\x83\xbbn\xc2\x1b\x95/\xc1\xdf\xa2\xcbA?"\xa3A\x9d2\x91B\xc2\xa7\xcdA\'\n\x9eA\xa7\xb7\x92BG\x01\xcaA\x92\xca\xa9A\x98\xf3\x91B\xeat\x00A\xa5\xe6\x0e?\xec\xd5\xf4\xc1\xb2\xbb\x04A\xb1\xdd!?\x0ce\xed\xc1\xef \x0eAOY\x1f> \xd1\xf6\xc1he\xdf@$q\x95\xc1q\xa8\x05B\xf6e\xf2@\x9d\xaa\x8f\xc1\x91\xac\x04B\xea\xe3\xd2@!\xb9\x93\xc1:\x1e\tB\xf7\xafJB\x9f\x112\xc0fF\xbdA\x8e\xc6JB0<\xf9\xbf\n0\xc2A\x10\xeeMByuJ\xc0\xb5c\xbfA^M\x1dB\xd8\xe5\xbb\xc0\x1c\x16\xdbBz\x9f\x1bB\xd9\xae\xab\xc0p[\xdcB\xe4E\x1fB\xc6\xe0\xd0\xc0(\x05\xdcB\xfa\xa2\x0c\xc0\xb4_\xbdA(\xb7\x8a\xc1\x11?\xcd\xbf\x8f\x8a\xc0A\xd9\xf6\x8f\xc1\x84\x94\x12\xc0}&\xb6A:\xe5\x8d\xc1s\xe6\xff\xc1|TZ\xc2\x1c\xf6\x87A\xfd\xc3\xfb\xc1?fW\xc2/\x02\x8cA\x831\x00\xc2\xda\xef\\\xc2\x00\x15\x8eA\xad\x02\xc8\xbf\x06e\x98\xc1!\xa5oA\xc4\xebb\xbf\x86\xb6\x96\xc1\'SyA\xeb\x19\x1b\xc0"\xf3\x95\xc1\xc7\xfevA\xf23o\xc0n\xa2\x03\xc2\xaa-\xa9\xbd\x07F\x88\xc0V}\x00\xc2\xe8:\xbd<\xbb>V\xc0\xd8\x94\x03\xc2\x07\xffI?X\x1e\x9cB\xdd\x1d\x19\xc2\x0fB\x08\xc2\x7f\xe8\x9bB\xe4\xdb\x15\xc2y5\x06\xc2\xcf\x15\x9eB\xc2\x14\x1a\xc2\xe2X\x08\xc2]v\xc5A\xee\n\x7f\xc1\xec\xa6\x85BX\xb9\xbdA\xc0\xcc\x81\xc1\xdf\xac\x85B\x83\xf4\xc7A\xcbo\x80\xc1\xf4k\x87B\xbf\xc1,@\x04J\x12\xc1\xfa]\xdcA\x8a>-@\xb6\xd4\x02\xc1\xeb\x8e\xddA\x98<\xe0?\xa8E\x16\xc13\xa5\xdbAf\xc6\xd1AV\xb0\x91\xc0\x9d\xf5\x8cB\xd4\xc7\xcdA\x90m\xab\xc0\x8e\x8d\x8dB\xbe#\xd8Az\xb2\x94\xc0\x01\'\x8eB\x80#\x9aA\xf40\x18\xc1( \xbbA\xc1\r\x9aA\xbbA\x1e\xc1\xd90\xb4A\xd2\xcd\xa1A\xcew\x19\xc1(m\xbdAr8\x11BX%\x1b\xc2\xb48\x90A\x93#\x12B7\xb9\x1e\xc2\xd3\xb9\x8dA\x9bt\rB\xec%\x1b\xc2Q\xb4\x90A\xc0Y\xa0?\xc8\xae\x0f\xc13\xe7sB\xd2\x7f\xb6>\xd4R\x0e\xc1&TuB\xa3\x9f\xc7?\xec\x19\x1c\xc1\xf8\xcduB\xc7\xcf@BI\x83\xef\xc1a\xff\xe0Ac\xfb=B5\xa6\xee\xc1n\x82\xe6A\xad\xb1CB\x80\xd0\xeb\xc1\x89$\xe4A\xcc?WB\xf4\xd5\x03\xc2a\xba\xe9\xc1\xbb\x10[B\xc6\xbd\x03\xc2a\xdb\xe7\xc1\r\xe0UB\x9e,\x00\xc2\xe4^\xe8\xc1\xcf\x9d\xbe?\xccP\x88\xc2\x90\xe2\xecA\xa8q9?\xcc\xea\x87\xc2\xbb5\xf1AF\'\xdc?\x1e\xfe\x89\xc2k\xda\xeeA\'\xca\x81\xc0\xb1\xa9\x83\xc2(\x0b\xa0A\xca\x9f\x91\xc0\x15K\x85\xc2kt\xa1A\x86\xf6V\xc05\xe5\x83\xc2\x04\xc8\xa4A\xf9[\xeaAu\x18\xdb\xc1\xd1\x9b(A=\x91\xeaA\x04\xf6\xdc\xc1\x8b\xa07AF\xcc\xe6A\x94\xb8\xe0\xc1\xe3\xfb!A\xcf\x96\x07\xc2\x95\xd9 \xc1\xa8\xb3\xacA\xa0\xc0\x06\xc2l\xbe\x15\xc1\xb0\xe8\xb1A\xcf<\x0b\xc2\xa5\x10\x1f\xc1$0\xaeA\xe7\xc8\xf6AW\xa8m\xc2\x14?^\xc2M/\xfbA<\nk\xc22\x00\\\xc2{\xcd\xf2A\xe9\xb1o\xc2\xc3\xa5[\xc2P\xfa*B\xbe\xeft\xc2\xc5\x99_\xc1^;(B\xcc\xf1w\xc2\xb8\x81\\\xc1\x9c\x89*B(\xf0r\xc2\xfccR\xc1\x97\xab\x85A]&MA\xb6^\xfbA\x8d\x05\x8cAI=EAs\xbf\xf9A\x1d&\x84A\x1e\x9bJA~\x8b\x01B]\x9f4B\xd2\x1ac\xc0\xb3\xb4]A)\xb25BJy[\xc01SNA\x1f\xbb6B\xa4\x893\xc0\x02`dA\x06\xd8\x04\xc2\x13m\x0f\xc2\xc7\x1eV\xc1\xa3\xb0\x02\xc2"\xba\r\xc2\xfb\xa3_\xc1\xb8>\x06\xc2gr\x12\xc2\x89&^\xc1\xcf\xbd\xd5A\x1dLj\xc2\xb6\x11\xb9BU\xca\xdbA\xc8\x07i\xc2\x7fK\xbaBf\x06\xd5A5\xeam\xc2m\x8f\xb9Bj\xabkBhV\r\xc2\xd91EB\x17viB\xe9\x05\x0f\xc2\x8cWHB\x93\xb8nB\x14o\x0c\xc2\x1e\xa4GB\x15uS@5\xa2lA_mNA\xce\xdc}@\x84\'vA$RQA\xa43R@\x87\x01gA\xeaR\\API\x0fB\xd2J\x07\xc1\x07MlB\xd8\xf8\x0eB\xca\xe6\xf2\xc0"\x88nB\x92,\x0fB\xa2\x0e\x11\xc1\x89eoB\x9d\xca\x01\xc1\x93c\x19\xc2\xed\xe4\tB1\x05\xf7\xc0\xb3\xc3\x1a\xc2\x9f\x1f\rBFr\x02\xc1\x9bN\x15\xc2\xfa\xa5\nB\xe1p#\xc2\xaeM\x17@\xfa\xdcnB\xb5\xe4$\xc2.\x89\x07@\x17\xa8kBd\xcc%\xc2\x02_\x06@\x83\xaaqBx~\x1eAl\x80\x05@\xdb\xfe\x12Aw\xf4,A\x7fz\xd2?{\x18\x17AY\xb5\x17A\x11k\x07@\xb5>!A\xcfs\x15B4GT\xc2N\x0c\x83\xc0X5\x14B\xcfoS\xc2\xe6iO\xc0\x17\xb5\x18B\xb06V\xc2\xf8\xf6s\xc0\xcb\x9c\xbc\xc1\xe8o\x1a\xc2\xb0T\xe0A+\xfb\xbd\xc1\xdcC\x1d\xc2\xcd\xa9\xe5Ae\xb3\xb4\xc1\xf6O\x1a\xc2U<\xe0A\xf9K\xa0@B\xce\xf7\xc1\xf6X\xa3B\xfe\xf2\x82@P\x8f\xf5\xc1\x87\xf1\xa3B\xdc\x9d\xa6@\x00r\xfb\xc1M\x02\xa5B\xd5r\x12B\xd8e\xe5\xc1\x17@aB1O\x11B\x10\x8c\xec\xc1-\xc8aB\x8c\x8f\x0fB\x80\xa1\xe0\xc1\xfa\x11bB\xbeK\x96? :\xd9?\xcc\xb2KAe\x1a\x03?\x16\x05\x00@\xa2LVA\xd3\xa4\xe5?;N\x9e?o\xcaRAp\x80\x9f\xc0\x11~\x98\xc1\xc6\x9f\xd2AO\xe2\xbd\xc089\x9b\xc1\xb0\xac\xd0A\x91\xd5\x91\xc0%\xa6\x9f\xc1y \xd4Aci\x80AA\x05|\xc1\x1f\xf1\xa3A-\xab\x84A\xa6\xf1\x82\xc1D=\xa8A\x9d\xe0qA\x82Y~\xc1\x1f\xa6\xa6A(44\xc1\xd6Y\xfa\xc1\x94\x94\x93B\xb7\xb80\xc1[\x95\xfe\xc1l,\x95B\xe4(\'\xc1\x8c\x80\xf9\xc1\xd2w\x92B\x9b\x1d\x17A\xf2P\xdb\xc1\xf6\xda\xbdA8\xb4\x1eA\x99\x0f\xdf\xc1\xb5s\xb8A\xc7\x1b\x10A,,\xd5\xc1=\x10\xbbA\x0e\xae\x03B\x06\xb6\xca\xc10\xf2\xe4\xc19\x1e\x02B\xb7\xbb\xcd\xc1#\xa7\xde\xc1\xf5\x7f\x00B\x1c+\xc7\xc1\xba\xad\xe7\xc1\n\xf7\x07\xc2tE\xd7\xc1Hd\xf2A3\xb8\n\xc2g\xce\xd3\xc1\x1eE\xf6A\x9f\x7f\x07\xc2\x90@\xde\xc1\x90x\xf5A]\x9e\xfdAnE\xeb\xbfy\x97\xb8A\xea\x98\x00B\'l\x83\xbf\xb8o\xb9AR\x1d\x01B\xe3\x81\x11\xc0\xb2\xda\xb3A8n \xc2jB\x02B\xf9\xc2\xb4A\x8f\xf0\x1c\xc2\xb8\xdf\x02B\xbc\xa1\xb1A\xf4\xcb\x1f\xc2\xe1B\x02B\x9aS\xbcA\x1c\xa9\xe0\xc02\xde$\xc1i+\xa1A;\r\xd4\xc0\xb9\xe4\x16\xc1Y\x80\xa0A\x1aF\xd2\xc09\x80(\xc1T\t\xa7A:-\x88A\x95\xde\x03Ae,\xeaA\xe6F\x84A\xb1\xe7\x0fA\x9f\x12\xedA\xf9\xd1\x8eA\xa2\xcb\x02A>/\xedA\x80\xdc\x81B\x15\xa7\xda\xbc\xde5KB!\xa1\x81B\xda\x1a\xc4>_\xc9NB\xe9\xa9\x82B\x98\xd9T\xbf^;LBl\x95\x12\xc0\x90U\x07\xc21CK\xc1N4\x0c\xc0\xe3\xb6\x03\xc2\x1c\xedG\xc1\xdb\x98\xf8\xbf#R\t\xc2\x94\xb4?\xc1\x80u\x9aA9\n\x98\xc1\xf8\xb1\x9bA0\xc7\x9eAJ\xe6\x96\xc1\xd1\xda\xa1A\xbf\xeb\x98A\xb9\x1f\x91\xc1\x8ar\x9aA\xb5O\x04\xc2\xabZ\x81Atd\x81B5S\x01\xc2\x01\xd3\x86A\x12\x95\x81B\x12\xa7\x02\xc2HKuA\xf8\x8e\x81B\xbab\xd0A\x03\x95\x8e\xc0\xa4\x80QAFY\xd1A\xfa\x08\x85\xc0\x9f\xaf_A"h\xc9A\x0b\xb8\x9c\xc0C\xebRANz\x1dB\'\x02\x91\xc2R\xbe\x04B\xd4=!B\xa7\xcf\x91\xc2\x9f\xed\x04B\x98N\x1cBK\x9b\x92\xc2$\x00\x03By\xce\x8fB\xf5\xf9\x9a\xbf\x0fc\x11B*\x1c\x90Bw)D\xbf\x8b\x9e\x14BJ\x95\x8eB\x94\xcb\xea\xbf\xe5\xeb\x12Bp\xfebAsjX\xc2\x17\x86rBiqgA\x140X\xc2\xc0\xdbnB&8kA9\x94U\xc2\x0e/tBO\x1a\xc7A\xa6\x8e\x17\xc2\x0b\x7f\x02BV\xac\xc3AZ\x1d\x15\xc2\x05\xdc\x00B7Q\xceAL\xa7\x16\xc2\xc5\x13\x01B\xb8\xf6=A\x80\r<@\x06\xf5\xc7A\xa6\xa7;A}Q7@\xa0N\xc0A3\xbbIA9\tN@\x9f\xba\xcaA\ny\xdd?\xf1\x88W\xbf.:\xc5\xc1\x98\x81-@Ju\x91\xbf\xc6v\xc3\xc1L\x8f\xcf?\x91\x07*\xbe\x98\xaa\xbf\xc1z\x13\xab\xc1\x0ct\xcc\xc1WPxA%\x9f\xad\xc1\xd3\xf3\xc7\xc1\xc7\xad\x81A\xfa\x85\xa3\xc1\x88P\xcd\xc1\x02\x0c}A\xc9\x1b\x87\xc1\xb1\xe7\x12A\x8e\xf2\x9cB\xf1\x08\x87\xc1\x1f\x12\x03A\x01&\x9dB\x1a\x8a\x84\xc1\xadV\x1aA\x8f\\\x9eB\x88)\xd3@Tt2\xc2\x07D\x1aAh\x84\xe4@\x0420\xc2M\xe5"A\x02\x08\xd1@\x0f\x8e5\xc2\x88.!A\xa5<\x13\xc2\xd9J|\xc2p\xc8\x87BA\xe5\x15\xc2f\xea|\xc2\xd8=\x89BN\xc2\x0f\xc2R\xb2}\xc2\xc8\x8a\x88B+u\x99?D\x8b\x91@\x1a\x07\xb3\xc2\xe9|\xb3?\xaa\x9c\xab@\x91\xf6\xb1\xc2\x9e\x84\x18?\xeb\xbb\x81@\xdc\xda\xb1\xc2\xf1\xba\xbfA{\x16\xee\xc1\n\x18\\B\xfe\x03\xc1AKn\xe8\xc1\x80\xd8^BB\n\xbbA3\x9e\xf2\xc1\x01$^B\xa0\xd9\x81B\xcd\xb2)\xc2Q\xed\xd7\xc1R\xbb\x81BS\x9d-\xc2w\xed\xd5\xc1\x95\xfc\x82B\x1e\x82(\xc2\x0c\x12\xd2\xc1\xcd\x87\xecA\xcc{\x88A\x86\xf0\xa7\xc1\\\xe1\xf0A\xd3\x8d\x8dA\x0f\x17\xa4\xc1\xbf\x96\xf1A\xfe\x0f\x83A\xd7\xd7\xaa\xc1\x9az\r\xc1\xcf+\xec\xbfH.\xa7B?O\x1a\xc1\x12}\xf7\xbf\xe1\t\xa8B\x7f\xea\x03\xc1\xc3#\xd7\xbf\xff\xc1\xa8B\xf5\x84\xf0\xc0\xae\xf8\x17\xc2\x8d\xa4\x16Bko\xe1\xc0\xf0@\x15\xc2\x86\xd8\x18B\xdb\xa5\xf3\xc02\x13\x1b\xc2X\xcb\x18B\xc0\xfb\xbd\xc1\xe0"*\xc2E\xaeGA\x8a\x93\xc2\xc1\xbc\x08,\xc2\xef\x0bQA\xf7j\xb8\xc1\xd3u)\xc2\xce`QA\xd4\xd6\x89\xc1 \x87~\xc2d\x07\xf3B\xecY\x82\xc1\x19\x06\x7f\xc2\xc4\x12\xf3B\xac\x0b\x8c\xc1kX\x80\xc2Y\x98\xf1B\x07\xb6k?U}\x14\xc2\xf9\x92\xb3A\xddFl?q\xbc\x15\xc2\'\xcd\xbaA\xa94\xe1=\xf4/\x16\xc2h\xc2\xafAN\x1a\x86\xc1\x80(\x82>\x1d5\xe3A\x90a\x87\xc1\xd6S\x1d?\x97\xce\xdcA\xd6\xb0\x8c\xc1\x01\xdfU\xbe\xfa\xde\xe3A\xb7\x1f\xf9AF\xa4\x1e\xc0\xd6\x1d\x8aA\xa4\xcc\xf8AxC@\xc0\x04\x01\x90Ae\x9c\xfeA3\x93\xef\xbfV\xdc\x8bA\xbd8\xcb\xc1W\x8fJ\xc2\xc3\xb1\x05B\xc5\xcd\xd1\xc1\xb0\xc5J\xc2M\x13\x07Bp2\xc7\xc1k\x02M\xc2H\x9c\x07BVc\x01A\xf7g\xe6\xc1d\xe2\x9aB(b\xf5@\x86\x10\xe2\xc1\x8f!\x9cB\x9f\x94\x04Ao3\xed\xc1\'\xbb\x9bB\xcfJoA\xff\xb9\\@\xc5X\xce\xc1\xd5\xd0bA{\n9@g\xdb\xce\xc1C\xf3iA\x0c"\x8b@\xea`\xce\xc16\x84\x95B\xb4\x0b\xb3\xc1\x0b\xbd\x89\xc1T\x08\x95B\x94^\xb8\xc1\x9f\x1e\x84\xc1\xae\x08\x96BX4\xb8\xc1\x91-\x8f\xc1\xabV\x88\xc0\x12\xc8`B\x0e\xb6\xe7A\x96v\x80\xc0\xb8\xa8bB@\xda\xedA\xed\xd3q\xc0\\j]B\x8e\xde\xe8A\xa7f\x8d\xc0z\x89W\xc2F\xc1\x8f\xc2;U\x98Aw\xf9\x03\xc2\xa0\xcc!\xc2!\x8bz\xc0\xce.rBX\x9d \xc2%\xa1\x99\xc0O\x82qBD- \xc2\x8eto\xc0&\x9buB\xd1\x15\xacA\xcf\x96\xb7@G\xe9\xa5A\x13b\xa6AE\x8f\xa9@\x8f\x1b\xa2A\x9f\x18\xadAb<\xa3@\x96:\xabAg\xce+\xc2\x8b|\xa6A\xea\x1df\xc1\x01W*\xc2RO\x9fA\x02yf\xc1\xfb\x04*\xc2\xfe\x91\xa9As\xd6Z\xc1\xfa\x90l@\x17\xfe\x06\xc2\x0f\x908B\xbc=b@\x90Z\x05\xc2j#@\xf6\xd8\xedAt\xe0\xd7@"\x9d\xc1?\xaa\xbd\xefA\x0bN\xdd@l\x85T\xc1L(\x1b\xc1\xabQ\xae\xc14\xb8P\xc17\x86\x1c\xc1\xdb\x9d\xa6\xc1c\xf9]\xc13#&\xc1\x89F\xaf\xc1\xe6\xc8\xcaA\xf3\x82\xe9\xc1\xfa\x8e\xd6A\xda\xf2\xcbAL\x8d\xe9\xc1\x0c\xe2\xddAB\x1a\xd0A\xb7\xf6\xe3\xc1e\x89\xd4A\xb4\xd9!\xc2b\x9c\xc5\xc0\x97~&\xc1\x99\xf0$\xc2\xcbN\xd6\xc0\xae\xdd"\xc11)\x1f\xc2.\t\xc7\xc0\xc0\xcd\x1a\xc1[\x897@SG\x1c\xc2\xa6,ZA\x88\xf6\t@\xf0\x96\x1c\xc2\x92AdAv\x1cQ@.\xba\x1f\xc2\\\xebYA\x9d\xab\xc5A\xf74\xc7A*e\xd9B\xfd\x93\xcbA"&\xc9AF\x17\xd8BM\xc0\xbfA\xa1V\xc4A\x02?\xd8B\xf9W\x1aBW\x83\x95Aw\x19\xbb\xc0\xbc\x95\x1cB`u\x99AD\xd9\xa6\xc0K\'\x18B\x1f\xb4\x91A^\xf3\xa6\xc03\xa1\nAV\xe8\xe2A\xf4\x88\xfbAA\xe0\xfc@\x85\xd6\xdeA\x02\x97\xfeA\xa1\xca\x0fA\x97\xd5\xe6A\xb2V\x00B\xd1o\x8f\xbeg;\xea?\xd46&\xc0\\\x1c\x06\xbf25\xdd?\xe9A\xde\xbf:q\x08?c\x99\x0e@\xf5t\x1d\xc0<\xc6\x05Bi&\nB\xfc\x0egA\x81\xe6\x07B&\x8a\rB7\xf4gAQ\xac\x07Bd\xc6\x07B\xb4\x1apA\x14p\x0e\xbe|YT\xc1^C]\xc2\x04\xbe\x9d\xbe\xfcvU\xc11XY\xc2\x1b;A\xbf\x90mH\xc1\xb4c^\xc2ee\xe5@\x1e\xee6@\x18\xfd\x17A\xebu\xfd@\xce\xb8V@\xa3\x16\x1cA;\x8d\xd9@\xb4\x02 @ \xb5$A\x11\x19;A_h\xba\xc1v\xdf\x8aB\x9ekGA\xdfJ\xbf\xc1t\xaa\x8aB\x95\x08\x17B\xa3q9\xc1\x82\xe8/\xc1R\xc1\x17B%\x8a*\xc1P?&\xc1r\xe7\x17B{\xf6A\xc1ASK\xc2\xcf\x90\x01@o\xaa(\xc1\xaeBH\xc2=\t$@\xed*%\xc1\xc35M\xc2uX\xe4?\xeaI\x1a\xc1STR\x0bA\x90\xf0\xf9A\xc8i\x8dB\xc70\x01A\xdc\x82\x01B)\xfe\x8eB\xb2\x8f\xfe\xc0+\t\x97\xc0H\x8f\xe5Af\xb5\x01\xc1S>\x8c\xc0\xd2\x18\xedA\x17\xbb\xfb\xc0\x08\x8d|\xc0+\xd4\xe0A`D\x1eB\t\x16I\xc2*\xceqB?\xb9\x1eB\xabZJ\xc2\xb1juB1r\x1cBl\xfeE\xc2\xac\xd1rBC\xd8\xec\xc1\x98\xb6\xc2\xc1\xe5V\xebA\xfe3\xf1\xc1\xad\xea\xc8\xc1\xd6M\xe9A\x0c\xe1\xee\xc1\xb3\xea\xc1\xc1_\x11\xf3ABN\xd5AN4\xe0A\x15\\\x98A\xa5&\xdaA\x89;\xdaA\xea$\x97A\xb7\x02\xd5An\xe4\xe3A_\xf0\x91A\x83\xc21\xc0\'\xc8\x0f\xc2a\xd1!\xc1\x8ex\x02\xc0\x97B\x10\xc26X\x18\xc1\xb5\x8dX\xc0\x88i\r\xc2\x8b,\x1a\xc1(\x06\xac\xc0\xa4\xbc\xfdAS\xb8\xc5A5Q\xc9\xc0\xd5\x01\xfcA\x93U\xc6A\xff\xbd\x9d\xc0\xca\xf5\xf9A\xc1\x97\xcbArf\xb0\xc1g\xb4\xb0\xc0:H\n\xc2yG\xb7\xc1mp\xae\xc0\xad\x97\x08\xc2\xdeA\xad\xc1\x01\xcd\x95\xc0K\x19\t\xc2"\xd8\x9fBq\xa6\x06\xc2Y\xd3\x8eB\xe6\xd9\xa0B\xd0\x1c\x05\xc2\xdeH\x8dB\x96\xcf\xa0B\xc9\xcd\t\xc2\xc5\xa5\x8fB\xd7\xc1\x0eB\x91\xf2\x92@d=\xacA\xd9\x1e\x0fB\xcc2\x83@\x0b\xaf\xb2A&\xdb\x11B\x89x\x89@\xe7x\xa8A\xfa\'\xef\xc1V\x95\x9f\xc1\x80@\xc8B%\r\xf5\xc19s\xa4\xc1\xac9\xc8B\xb8]\xef\xc1b.\x9c\xc1\x07\xfe\xc9B\xe7\'\xd6?~H\x11\xc2l\xbd&@\xbb\xa1\xdd?\xb9\x8e\x13\xc2\x15rX@\x94\xfd\x98?\xa6\x0c\x0e\xc2\xf9\xf4B@$\xe9\xfe\xc1\xc3\xd5\xb4A!\x17\xb5@\xed\xf9\xf7\xc1l\xde\xb2A\xe7\xe1\xbf@\xfa|\x01\xc2\xc8\t\xb6A_1\xcf@x\x17\x91@\x9c\x05B\xc1#\xeez\xc1\x94\xb0f@f.<\xc1\x8c/|\xc1)\xbc\x8f@\r\xadO\xc1[\xe7\x80\xc18O\xdbA\xc1\xb5\x85\xc1\x16\xe8\xfd\xc0O\xdd\xd8A6`\x81\xc13\xaf\xe3\xc0\xd5\xaf\xe0A\xfc\r\x8b\xc1\xd0U\xf1\xc0A\x1c\xa8\xc0\xef\xf9h@\xef\x98.Bs#\xb5\xc0#\x91D@\x82{1B\x1f\xec\x92\xc0X\xac\x85@\x1d{0B-\x06jA]\xc8\x0c\xc2yp\x97B\x89\x00ZAe\xe8\x0c\xc2#\xe1\x97B:\xc1kA.|\t\xc2\x01b\x96B\xe7\xa4\x8d\xc1\xdf\x1c\x0b\xc1\x8c\xebLA\x91m\x94\xc1j\xa7\x04\xc1\x0e\x86NA\xe0)\x8a\xc1\xe8t\x01\xc1KDTA?\xdf/B_\x8d\xb9\xc0?,wB\x1f\xd2-B\xf7W\xcd\xc0Y\xb4yBg\xa3-BGB\xb2\xc0O@tB\xe6\xdd.B\xda^\xeb@\xff\\\x95B\xd8\x80.B\x03\xe7\xd2@\xf7i\x96B:\xe8+B/\xe0\xfe@\x95\x12\x96B"{\xdc\xc1\xdf\xf2\xda\xc0\x98\xe6\x83A\xf91\xd5\xc1\'\x81\xdd\xc0\xd0\xc1\x80A\xd9@\xe1\xc1\xc2\xf3\xca\xc0=+}A]\x1a\tB\xd4|]B;\xfa[B\xd7\xe3\nB\xb0\x95ZBT\xdb]B\xf0\xf2\x06BH\xbe^B\xe4\xba^B\xaa\x8f*Ai\xf0\\\xc1\xf5\x14iB\xc2(#AQ\xd8f\xc1\xad#kBN\xab2A\xa7sV\xc1\x86\xf6kB,\xdf\x85@\x1f\xd9\x86\xc2\nX\xeaAktP@\xd2\xe8\x86\xc2L\xca\xebA$\x8c\x8d@\xe1w\x87\xc2\xdf\xa2\xf1A\xfe\x00\x1aB\xd4\x171\xc0\xc1LWAy\x98\x1bBdXN\xc0\xd3\xd0dA1\t\x18B"\x89\x03\xc0\xf6\xb1]A\x1c\xcc\xcbA\x95o\xc8\xc1f~F\xc1\x1dl\xcaAr\x85\xcd\xc1v\x14<\xc1\xb7\xe2\xd0A\xf5\x92\xc3\xc1\xac(>\xc1\xe6p\x1aB\xba\x08\xf1\xbf\x05(\xc0A\xc9\x8b\x1cB\x0f)\xb2\xbf%\x1b\xc5A\x96\x01\x17B\x90S\xe1\xbf\xfe\xf6\xc2A\xf2\x1b\xb4@\x1d\xa3t\xc2\x9em.A\xd5\xdf\xae@\xe0\x16r\xc2Wq9A\x98\x85\xc7@\xe7ew\xc2!\x8a5A\xf0\xcb\x1bAuj\xde\xc0\xb5\x87\xe0A1d(A\x16\x14\xf0\xc0\xe4\xf5\xe0AHN\x11A\xea\xe0\xe9\xc0\x9d6\xe5AFhaA\xc1J\xc9\xc1\x11\xbd\xf5A\xf69qAS\xe3\xc9\xc1\xe7i\xf6AE\x14]A\xb2?\xc4\xc10\xe8\xfbA\x14D\xf3A\xc9\x91\x9eA\xcf\x87\x0fAq\xf0\xf4A]\xf7\x96AE{\x10A\x05Z\xf3Az\xd4\x9fA\x1c\x19\x1fA\xc5L\x8bA\x7f@\xf2A\xbcY\x90AYZ\x90Ar\x0f\xeeA\x89\x07\x8cAy/\x84A\xfaq\xefA:\xbf\x8eAM\xb7\x15B\x19\x99\x05\xc2\x11\x80\xc1A\xe8^\x19B\xbak\x06\xc2\x7f\x02\xc1ALj\x15B\xa2\t\x05\xc2\xb7\xf4\xc8A\xa3I\xbb\xc0\xe9\xcd\xb7\xbf 5d>\xc6O\xc7\xc0\xdd\x06\x88\xbfEF\x87?\x998\xa1\xc0{#\xf3\xbf\x95Y\xf3>\xbfoZB}\xe7T\xc1\x08\xe9\xc8A\xdf\x82[B0kM\xc1\x9b\xad\xc2A\xaf\xab]B?GQ\xc1\x94\x1f\xcdA\xab\xd2\x08B\xb0)g\xc1\x01\xa3\x01A\xdc\x94\x0bB\xafik\xc1L_\x0cA_\xa7\x07B\xa1\xd8Y\xc1\x8c\'\x07A\\\xdbLBm\xae?\xc27\x89\x05\xc2\x9f\xfcNBx\xae=\xc2\x01F\x03\xc2\x19iIB\xd2\xc9>\xc2\x01\x08\x04\xc2 \xf3\x83\xc0L\x12$\xc2\xf6\xb0(BwE{\xc0\xc5\xc2!\xc2Du+B\x84m\x87\xc0\t=\'\xc2L\x97*B\xc5\xd3-\xc0\xbf\x94\x0cA\\\x0c4\xc1\x02\x1f\xf3\xbf\xc8@\x0eAl\x90+\xc1\xa1\xca`\xc0nl\x08AY\xad(\xc1DZ\x94\xc0\x1e\xf3>A\xbd5\x8cB\xf2\xb8v\xc0)c?Al>\x8dB\x9e<\xad\xc0I\xde=A$p\x8dB\x1e\xed\xa1?\xa9\xb4V\xc2A\xa0\x81\xc2\x99m\xe1?\xf9\xfeY\xc2\xa7\x84\x81\xc2\x96\xd0\xfc?v\xd2T\xc2-l\x82\xc2\x88\xdbKA\xa3\x19r\xc0\x9a\xe3\x07B\x8b\xc0FA\xe2_\x83\xc0\xcfl\x0bBXQGA\x9c\xfa4\xc0HD\x08B\x9bX*B\n\x10\xc2A\x10A\x17A\x0eS-Bz\x12\xc4AQ\xca A\xcc\xf6&B\x85\xd9\xc3A\x07m\x1eAsE\xbc\xc1\x89 (\xc1\x8b \x85A\xfaR\xb7\xc1\xc083\xc1\x8a\xdc\x82AF\xbd\xb7\xc1\x94S\x1e\xc16\xf4\x88A\x87\xffY\xc1+\xbd\x8d\xc0)(\\B\x82\\^\xc1\xb3Zd\xc0\xac\t]B\xdf\xd4]\xc1\xb6\t\x9f\xc0\xf7*_Biu\x13B\xafz\x88\xc0:\xde9\xc1Q\xa7\x0fB\xb3\xc2\x87\xc0\xafA3\xc1gF\x14B\x94\xcb\xa5\xc0\xa3":\xc1q\x1b\xedA\x90\x7f\x89\xc1`\xcb\xf1\xc1\xfd\xb6\xe8AAu\x87\xc1&\xc1\xeb\xc1m_\xf2AnB\x8d\xc1\xa2\x9c\xed\xc17 \x1bB\xea\xd6\xee\xc1\xcc-\xbaA+M\x17BQ\x1f\xf1\xc1\xc4\xf5\xb9A>\xab\x1bB7j\xec\xc17\xbc\xc1A\x15\xa4\x8a@<\xf9-B\x1d\xbc\x8d\xbf\xdc\xa3\x7f@\xe5\xbf,B\xe3\xbeM\xbe_O\xa1@*\xec0B_\xb4\\\xbfm\xf2\xc7A\xfb\x96\xda\xc1\x05\xb6\x06Bn\x0c\xc3A~\x81\xdb\xc1!\xc4\tBY\xa9\xceA]\xc5\xda\xc1\x989\x08B\xb2t\x0eA\x9f\xa1H\xc2cJ\x88B\x969\x0bA\xb9\xaeI\xc2\x04!\x8aB\xce\xf4\x15A\x9fBE\xc2\xa2f\x88B\x8eY\xc7A\x83\x86&A\xa4\xc1\xb3A\x1d\xe5\xc4A\xa3j\x19A\xca\xa6\xb7A\x1cT\xceA\x92\xd4)A\x05\xb4\xb6A\x8d\'\xb0\xc1+\xd8\xd5A;\xf3\x90\xc1\xaf\x15\xaa\xc1\xf42\xd7A\x9f\xe8\x8b\xc1n>\xb4\xc1\x13~\xdcA\x0f\xb5\x8f\xc1\xcc\xf8\xe3AQ\xec+\xc2\x13\xb1\x8c\xc1\xb6\x81\xeaAA)-\xc2N\x96\x8e\xc1f\xb8\xe4A\xd3\x02-\xc2\x13\xa6\x84\xc1\x10\xa4\x10BO\x948\xc0\x85\x1f\xd4B\x8f\x03\x11By\xaep\xc0\x8e\xb9\xd3B\xae-\x0eBm\xd6*\xc0\xaf\xde\xd2B\xaf8QB\x96jp\xc1t\xf8\xcb\xc1\x17yOB-3n\xc1\x9f\xa3\xd2\xc1\xc8\x8fNB\xb9tl\xc1Nm\xc7\xc1\xa6\x94a>\xae\xb5GB\xbb\xde\x9fB."w?$iGB\x7f\x05\xa1BT\xf9\xf4\xbeU\xf6FB\x9b3\xa1Bn\x1a\xfc\xc1e\xb9\xa6\xbf\xb4#mBw\xdd\xfd\xc1{[,\xbfP\xe6oB8"\xf4\xc1\x0cg\x9e\xbfR/mB\xc9\xef\x94@\x85\x90\xd9\xc0d\xb0\xb3A\x96\xaa\xab@\x0f\xfc\xd1\xc0\xf1e\xb8A\x97\xc5y@#\xab\xcc\xc0\x9d\xa2\xb6A6C\x8fA\x06\xfa!B\xc2l\xdd\xc1JY\x92A\xca\xfd\x1fB\x9aQ\xd7\xc1\xf9%\x91A_z\x1fBU;\xe3\xc1T\xf0\x86\xbf]\xc1\xc8\xc1Z\r\xe0\xc1\xe7\'\x10\xbf\xe0\xbc\xc8\xc1\xcca\xd9\xc1\xfd\xc7\x8c\xbf\xc8\x91\xc1\xc1\x8d\xe2\xe1\xc1\x9f \xbaA\xcf+\xc3\xc1\xc0\x1bNAa3\xc2A\x9a\xeb\xc3\xc1|%OA\r\x0b\xb8A\x88R\xca\xc1-\xa7PA\x9a\x92\xee\xbfw\xd0~A\xc3f\x07\xc2\x0c\xc5\x9f\xbf\xcf\xb9sA\xd4\xbb\x05\xc2\xa9n\x19\xc0T;\x82A>q\x04\xc2\x1c\xda\x02A\xa7\xf4{\xc1\xb3\xdd\x83A\xdd\xdd\xef@\x12\x11x\xc1\\\xd8\x88AX\x1d\x0bA\x1e\xfa\x83\xc1w\xa3\x87A\x93#*\xc2\xf2\x9b\x14\xc2\x8ebuB9\xff,\xc2\x1e\x99\x14\xc2\xca\xe7wB\xe7\xb6(\xc2\x8a(\x18\xc2\x10\x15uB\xcc\x9bRBT\x86\x0b\xc2\xdb\xb7\xa1A\xf9\\QB4M\x0e\xc2u\x85\xa6A7\xb3OBd\xd9\n\xc2\x16\xcf\x9cAc\xe9=B6\x86\xf5\xc1A\xf4\xa2AlH@BD\xf4\xf8\xc1i\xe1\xa7A \xad:B\xa4\x9d\xf8\xc1\x08\xa2\xa5As#\xeb\xbfK\x1a\xe5\xc0o\xa1\xa5\xc1>s\x03\xc0\xa0u\x01\xc1\xfe\xb0\xa6\xc1\xac\xbfg\xbf\xd4\x94\xe3\xc0\x11\xb9\xa3\xc1\x1e\xe2/B\xdf\xee\x98@v\xdd\x91B\x1a\xbd0B\xa1T\xa4@\xd1\x8c\x93B0F2B\x9f\xbf\x80@\x0e\xa7\x91B\xf6F\x84A\x1c\x1c`\xc1\xa5\xfe\xe5B\x06\x8a\x8bAld]\xc1j\x8d\xe5B\xbb\x00\x85A\xfe4b\xc1\xf0\xbf\xe7B*\xe8\x07B\x00P*AUD\x06\xc2\xb3\x91\x06B\xd6\xfe\x1aATn\x05\xc2m\x1b\x08B\xad20A\xd8\xca\x02\xc2\xba1\x19B5\xb6%B\xa7A\xe1\xc1\x0b\xc5\x1aB\xbd\x1a"BQ\xe7\xe2\xc1\xe8^\x17B\x87\x04&B\x02=\xe7\xc1\x89,\xa0B\xc2\x05\x95\xc2D\x8b\xdeAy7\x9fB\x18\xad\x96\xc2\x81\xda\xdaAR\xf9\xa0B\x80\xc7\x95\xc2\x97\xfb\xe4A\x93rGBh\x91\xa4\xc1E \xa5A\xbayFB2\xcb\x9d\xc1s\x01\xa6A\xdb\xeeIB>u\xa6\xc1\xe2\x0c\xabA\xda\xaa\x99A\x17\xb3\x90A\x8c\xf9\xafA\x97\xe6\x97A\xea\xd4\x8eAj\xf5\xb6A\x90w\x98A\r\xac\x97Alz\xb0A#)\xd1A\xcf\xa8\x1f\xc2\x08\xd8\x8cB\xa5\xd1\xcaA\xfb\xcd\x1d\xc2:\x9f\x8cB#|\xceA\n\xf9"\xc2\x96T\x8dB\xb39\x19B\xcd\x90(\xc1\x8f\x04\x99B\xf3\xe6\x19BI\xfa$\xc1\xc2\xed\x9aB.\xb2\x18B\xbf\x1e8\xc1U\xf3\x98B\x8c\xe5\x05A\xeaM\xb1\xc1B5\x8eA~\'\x11A\r\x98\xb1\xc1`\xd3\x88A\xf8\x94\tA\xe3\xc9\xb7\xc1\xce\x9c\x92A:\x1bOB\x8e\x89S\xc2 ^\x93B4\xfbRB\xceYT\xc2\xd4\x8b\x93B\x7fgOB\xefIP\xc2\xb4s\x92B\xa1{\xd5?\xe5\x8c\x00\xc1\xab\xd7ZA\x13Y\x0c@\x99\x15\xe9\xc0M\x89^A\xf7Z\xd9?\xb98\x08\xc1\xfcgiA\xbcZ\x98?4\xaa\x96\xc1<>1\xc1\xb1K\xba?\xbbY\x96\xc1\x9b\xa6?\xc1q\x15\xf8?\x83\x14\x93\xc1\xbfk*\xc1\xfe4\x0fB\xf0J\xf6\xc1\xef\xd1\x99BbB\x12B\x12\xbb\xfa\xc1\xc9}\x9aB&\xb1\x0eBtH\xf2\xc1\x15z\x9bB\x00\x93z@RUm\xc0\x9b\xed\x94@\x03\x91^@\xb9\x96\x88\xc0X\xfe\xa9@\xc22\x8c@PYE\xc0\xa7\x17\xa9@\x1c\x8f\xf8@\xe6\xd9\xfe\xbf\x82\x99\x89A\x80\r\nADM\xdb\xbf\x9e\x03\x87A4\xbd\xe7@Mu\x94\xbf\xc8H\x89A\xbe\xa2\x87\xc0\x98\x87;\xc0[7\xf1A\xea\xb9\x8a\xc0\x0c\xf0\xf9\xbfA<\xf1ABB\x89\xc0\xdb\x1eL\xc0\xc9\x9d\xf8A\x8buaB40iB\xdb5\x95BGKeB\x855iBF\x8b\x94B:QaBE\xfckB\xf2\x95\x96B\xd6]\x07By\xcbBB\xeb\xbb\x04A\xb4\x10\x06B\x18bCB\xdf&\x13AR9\x08B\xe1\xf0>B\xa9\xca\x04A<\xa9\n\xc1KL@B\x9c9\x04B\x1a9\x03\xc1B5AB8\x80\x07B\x1fB\x04\xc1\x06\xe6A\xee\xa8\xb4AT<\xdf\xc0\xd7foB\xf2\x16\xb2A\ne\xf2\xc0\xb9drBP\x8a\xaeA\xec\xc3\xde\xc0\x10\rmB\x91F\x99A#\x87H\xc1W\xe6\xc5Al\xa1\x9dAf\xc6A\xc1\x05\xef\xbfA\x82O\x9eAz_G\xc1\xf2\xfe\xcbA\xb8\xb9)>\x082\x15A\xfb\x12K\xc1\xf4\x1f\x88?\xd3\xbb\x19A\xc4\xf2G\xc1\xde6K\xbe\xd2\x10\x0eA\x87\x19?\xc1\xfd"\x0c?\x19\xf0\rBd\x91\xcbA_1\xa2?\xdf$\rB\xe3\xcd\xcfA\xf0\x98\x89>\xaa\x02\x11Bm\x9b\xcfA\x8a\x16\x02B\x96\x92\x99\xc2\xadp\xf2A\x91i\x00B?\xca\x9a\xc2\x9ci\xf7A\xcd\xae\xfeA\xd3\xb8\x98\xc2\xe6/\xedA.S\xd3A(\xab\x7fA-\xca!\xc2\x1d9\xd9AO\xd8yA\xbe\x95\x1f\xc2 \xac\xd0A\x9bQ\x85AJ@\x1f\xc2rs0\xc0V"\xaa\xc0|5\t\xc1\xa0\xd6\x1c\xc0\x80S\x91\xc0\xffO\x02\xc1B{$\xc0uI\xc1\xc0\xb1\n\xfc\xc0\xa0\xfaw\xc0\xfe\xcaSA\x06!\x96Ai*\x8a\xc0\x0e\xb4IA0\x8c\x9aA&\xa8>\xc0\xeeh\xc3\xa3\xc0\xbe\x1a\xbbA\xbd\xfbw\xbe\x94\xd9\x8f\xc0\xbf\x7f\xbeA\xc0\xd8\xad\xbe\xfa\x97\xae\xc0S\x93\xb5A\xdb\x8d B\x9ab\x83A\x16w\x0bB\xaf\xd8\x1fB7\xfe\x89A\xb3F\rB\xbc\xad\x1fB^\xd6{A\x04\x0b\x0eB\xe1.\xbdAD\xd4\xde@\xa5e\x8eB\xcc\xee\xc2Akd\xf1@\x1c\x02\x8eB\xcb\xb2\xbaA\xd2G\xe8@G1\x90B\xe7 GB/\x80MA\x8d\xcd\xbcA\x977GB6\xeeRA\x1d+\xc4A\x7f\xc0JB8\xbdKA\xc9(\xbbA\x94\xe7\x85A\x0b%)\xc2\xbfQ\x08\xc2\xbcy\x7fA\xf5\xc7&\xc2\x02\xa0\x08\xc2}\x13\x88A\x16p)\xc2\xa7\x8e\x04\xc2\xdakP\xc1x\xe6\x11\xc1\x7f\xce\xe8\xc1>\xdaQ\xc10( \xc1\xfa\xe0\xe6\xc1y\x16C\xc1\x99G\x11\xc1\xe8\xd6\xec\xc1R\x0c\xce~?BC\xafQB\x0c\xbc\x8e?\xb1\x82=Bc\xe3SB\xdd\xa74\xbdK\x00ABh\x1fTB\xe5\xea\x97A2\x06\x83\xc2]\xf8\xfc\xc1\x02\x14\x94Aa\xe2\x82\xc2X+\xf6\xc1\x8c\xd5\x9eA1M\x82\xc2m\xdc\xf9\xc1{\xba2B\x04s\xbb\xbd%\xb5\x08B\t\xbc2B!tH=\xaby\x0cB\xe0~1B\xab\xe5A?[\xe0\x07B\xcf\xf2\xceA|\xe2\xfc\xc1\xc8)\x08B\x87\xc9\xd2A\x980\xf7\xc1\x85K\nB\x88$\xcaA\x90h\xff\xc1*\xc9\nB\x1f\x07\xe1@b\x9e\x05\xc2\xdf\xaf\xf1@\x8b\x1d\xfe@\xfcU\x05\xc2\xd1\x87\xfd@\xf7_\xd1@m\x85\x04\xc2\x98\x9c\x05Ax\x15\xca\xc12`\x86\xc1\x10\xd7\x9fB\xdf\xa1\xca\xc1\x93$\x87\xc1&\xf6\xa1B\xcdm\xcf\xc1:\x07\x8c\xc1}L\x9fB\xe9\xcd\x07B!\x9dz\xc0\xc0S\xfdA\x89\x9a\tB\xb6\xa8\x82\xc0\x144\x02B\xffe\x07Bc\x0e\x99\xc0&\x1e\xfaA\x02+)BHz\xfbA\xbd.\x97A\x01\x92&B\x1d\xc1\xf5A\xde\x00\x98A4\x01(B-\x8a\x00BW\xdc\x9cA\x13~\x05B\x83\xd3\xcbA\xcc\xf6!\xc2\x8b\xf9\x07B\x80\x1b\xd2A\xae\x15"\xc2\xa3\xf0\x03B[\x9c\xccA\xb0\x93\x1e\xc2\x9c|.?\x9eo\xad\xc0\x8b\x88JA\xd1\xc0\x87\xbe\xa0\x17\xae\xc0^\xeeJA\x9a\xa6s?h:\xc2\xc0s\xf2UA\xce\x16\xaaA\xc6\x85\t\xc2QX\x8f\xc2[{\xa6A\xa5\x14\x07\xc2\xf3\x1a\x8e\xc2H}\xa5Ad\x8e\x0c\xc2\xb8\x04\x8f\xc2zv8B?fi\xc2\xf8N\xe9A\xf0\xf78Bc\xcdf\xc2\xd1Z\xefAE\xb34B\x01&j\xc2\t\xf0\xe9A\x88\x12"?\x916\xbd\xc1\x11\x93\x03\xc2I\x7f\xc7?B\x81\xbf\xc1\xe2\x19\x03\xc2Y\x8b\x89>6\x8f\xbc\xc1\xa06\x00\xc2TIp\xc0*\x18\xa5\xc0\x15\x94\xc4\xc1\x94\x1e|\xc0\xea\x1c\xc1\xc0p\xad\xc1\xc1@\xba6\xc0Be\xa4\xc0Qh\xc4\xc1\xf5\x8a\x9aA\xd7\xe6I\xc2LR\xfcA\xd2\xcc\x9aA\xc0\xc0G\xc2\xd3f\x01BV\xbc\xa1A\xce\xddI\xc2I\xccA\'\xbc\xe0AM\xe2e\xc2\xd2\xe1\xd3A\x89\x8e\xe4A\xe0~f\xc2n\x90\xc8A\x8e\xf6\xeeA\xc8TL@\xfe\xe4\xcaA\x83>\xebA<\xb4\x80@m\xa6\xccAD\x91\xeeAHaR@f\xc0\xc2A|\x06}@\'\xe2\xb2\xc0\x1c\x13jB\x1b\xaa\x9b@\xe2\x95\xb2\xc0gYjB\x10\x1ci@\xcd\x86\xad\xc0t\xbfmBh\xb4\x8cA\xa4<\x0e\xc1\x9a\x12gB\xc9C\x92A*\xf1\x13\xc1\xa0\xb4dB\x9aK\x8fAKJ\x0f\xc1h\x0fkB\x9b\xea\xb7A>\xbb$B\x92%\tB3\xcc\xb3A\xbc<%B\x90\x99\x0cB\x0fC\xbcA\x14\xb4!BI\x19\nB\xa1\x9b5\xc2-J\x13B=\xf5\xf5Aps3\xc28V\x16B\xfe\xd4\xf8A\x06\xb63\xc2{\xfd\x11B\tp\xefA[w4\xc0Q\x0e\xb6\xc1.\xf8nB\xb4E3\xc0\x01B\xb3\xc1\xb0NrBn\xc2\xf1\xbf\xafj\xb5\xc1\x90\x03nB\xa8\xe4ZB{C\x8a@\x1fv\xdfA\x0e\xd0^B\xd3\xe2\x85@X\x86\xe0A\xda\xb0ZB\xc1\xdb\x81@ma\xd8ASU\x1bB\x8fv\xa3\xc1\x1f\xdc\xe6>\x80e\x1dB0\x91\x9f\xc1?\xfd\x86?\x19\x0b\x1bB\xc3Y\xaa\xc1\xb4Sp?\xfcs\x01Be12\xc2\xfe$\xe6A\x80\x83\xfcA\xdc+3\xc2O\x0e\xeaA\xd6A\x04Bt\x994\xc2L\xd4\xe8A\x024\x99\xc0b\x07\x1eB\xfd\xefzBdQ\x8f\xc0(e\x1aB1bzB\xce.\xa5\xc0\xe2\x94\x1eB\x93\x7f~B\xa1q\x89>G\xe1F\xc0\x8a9\x07B\n\x8c\'?\x9arK\xc0\x95\xe0\nBKJ\xcd\xbe\x14\xbf\x1e\xc0,\x13\x08B\xfb\x1fX\xc2\xe3(\x86A\xda\x84b\xc1ZYV\xc2\xb0\xb3\x8aA\xeb\xd5l\xc14\x80U\xc2\xff\x93\x85A\xafzX\xc1\xa41\xccA\xe1\xed\x83\xc1\x1a\x18*B\t\xe0\xc9A\xa8X\x80\xc1\x80w-B\x18\x0f\xcfA\x15\xf1\x89\xc1\n\x13,B\xa4Y\xacA\\z\x90\xc1=\xe0zA\x8c\xe8\xa9A\xae\xc3\x94\xc1,\x98\x83A\xa8\xa4\xa7A\x8f;\x8a\xc1\xe53~A\xed\x88\xd8Bs\x15]\xc1=Y\x9a\xc2\xa3\xa3\xd8B>?N\xc1\xe8\xf9\x99\xc2B\x95\xd9BtQb\xc1K\xd5\x98\xc2\xb2\x9d-\xc2IE\x9c\xc2\xd6ohB\x14\x120\xc2\\\x91\x9d\xc2"\xf0gB\x8ef.\xc2 \xf4\x9a\xc2]eeB\x88{\x0eA(\xf3\xac@\x14t\x81A\x01N\x0eA/\x01\x9d@\xa1\x0b\x88A\xcc3\x08A\xe0\x1c\xc9@\xadn\x82A67\x0bA\x87CI\xbfLX\x11Ag\xfc\x18A\x03wm\xbfN\xde\x18AU\x08\x02A\xf5\x99\x18\xbf\x02)\x1eA\xc4\xec8Bo\x9c\xcf\xc1\xc4\xb7\x02B7&6B\x9es\xd0\xc1%\xaf\x05B0\x897B0\xb6\xd3\xc1a\xd4\xffAV\xbc\xcfA\xc2\x8f\x07?\xf8\xb6\xeaA\x8c,\xd4A\xddKs\xbe\x16\x95\xebA\x8eV\xd4A\xac\xed\xa2?\x1e\xde\xe9A\x982A@\xb2\x14\xbe\xc0\x9f\x88/Atv=@;\xc5\xa7\xc0\xb9\x889A[\xb7&@\x8bZ\xd7\xc0V\xc66AG\x06NA\xde\xd7\\\xc2\xb9\x84\x9bB\xe6eTAFY`\xc2\xe2\xa4\x9bBj\x19ZA:\x85Z\xc2\xe8Y\x9bBT3\x94At\x9e\xdcA\xdd\xbc~Bq\xf9\x98A3\x02\xdeA\xa9\xfe{BH\x1d\x94A\xed\xdb\xe2AqZ\x80B!\xbd\xedA\xa1\xdd\xe3\xc0&?\x07B\xbeS\xf2A\x81\xf5\xfc\xc0\xc2>\x08BB\xd9\xebA\xed\xed\xd8\xc0\x02\xea\nBs\xe3\x0eAL\xab\xaaA\xcf\xe9$A\xdcz\x19A\xc6\x87\xadA\xd9\xf2.A<\x82\x02A#\xb4\xadAZ\x14*A\xca\xdf\xae\xc0\x9e\x84\x83\xc1\xdf\x13\x92BE:\x95\xc0\x02f\x85\xc1G!\x91B\xd3\xdb\xa3\xc0js}\xc1Un\x93B\x9bo\x05B\xa8\xe5b\xc1\xb3\xc5$B3\xb0\x02B\xa3\x19j\xc1\x96\xb3&B\xef_\x08B\xc0\xb5a\xc1!\x0b\'B\xf2u\xbeB\xd0@\xabA\x0c\x82\xb9Aj>\xbdB\xb6\xf0\xa5A)T\xb8A\xb1\x8f\xbdBu\n\xb1A\xa3I\xb5A\xd29\xc4\xc1\x83}\xa1A+\x1bOB\x0e\xc5\xc1\xc1\x16\x0c\xa7A\xb3\x84QBW\x9a\xc3\xc1\x84\x03\x9cA+\x90QBo\xb8\x10Ao\xb0\x8a\xc0\xd8X^B\xf2$\x13AC\x9a]\xc0\x17\xfd_B\xdfH\x12A\xd4\xee\x9d\xc0\x13haBj\x81\x02\xc2\xc7<\x8e\xc1\x98\x1c\x96B\r<\x01\xc2\x0ec\x90\xc1r\xde\x97B\xa4\x12\x06\xc2A8\x8c\xc1\xb9c\x96B`\x824\xc0\xef\x06\xfbAp\xcfyBeH^\xc0`x\xf9AE\xe5|B\xddc\t\xc0\x9e\r\xf6A\x1b\xdczB\'\xe9\x16B\xc3~\x08Bj\xd4\xecA\x90\x8b\x18B\x19\x88\x06Boj\xf2A\x0b8\x18BB\x18\x0cB6u\xeeA\x90\x9biBbOU\xc0\xe0x\xf6Aw\xc2iB&\xb8c\xc0\xbb\xd0\xfdA\x11RiB\xc0&\x16\xc0Y\xb4\xf6AT\xa8\xb5A!\x92\x17A\xcb/\xf5B\xec\xcf\xb2A\xe8\x91\'Azt\xf5B\xcf@\xbcA\x81\xcd\x18A\x91\x14\xf6B\xccH\xd7A\r\xd5\xefA\xfc\n\x86AA\xa2\xdbA\x85T\xf6A\xf3\xf7\x82A_\x88\xd4A4\x98\xf2A\x8d\x81\x8cAr\xd1\x9bA\xd3*\x19Bf\xdb\x04B\x13\xc8\x96A\xc3\xe2\x1bBF\xa3\x05B\xf8\xe6\xa1A\xab:\x1bB\xf4\x82\x03B\x0f3\xdfA\xe3Q\xbf@7b\xf5A\xb4 \xe4A\xfb#\xd3@N\xc5\xf1A\xb2g\xdaAq\xd2\xb7@vL\xefA\x933\xc5\xc1\x8a^\xc6\xc1\xff\x0f\rB\x91e\xc6\xc1\xbez\xcb\xc1\x89\xd1\x0fB\x0f\x9e\xc1\xc1\xa0c\xc0\xc19\xd8\x0eB\xa0/\x9dAS\xa4\xfa\xc1\x12\xc8\x89A\x82\x80\xa3A8\x87\xf7\xc1]2\x87A.\xa6\x9cA<\xbd\xf7\xc1\xb1[\x91AvH\xd3\xbf\xaeo\xc7\xc0E\xe0o\xbf\xf5iw\xbf_\xa2\xd4\xc0W\xf9\x9b\xbe\xaa\xa5\x14\xc07\xb8\xbc\xc0\xf9\xa9\x94\xbe\xae\x00\x03A\x93\xa2\xfb\xc0;\xe0\x03\xc2\x93Q\x03A~\xd8\xf8\xc0-\xe2\xff\xc1\xfa\x82\x0cA\xf3T\n\xc1s|\x04\xc2e\x9b\xe5A\x97\xa7\xa8\xc1\xeealA\x89\xfb\xe8A\xc4\xef\xa5\xc1\x8d\xd9xAe\xd2\xe0A\x12\x00\xae\xc1;6rA\xb8\x80\x98B7+\x89\xc1I\xf5{BT\x87\x97B\xcd+\x87\xc1\xa0\xde~B~B\x9aBb\xd7\x85\xc1\x8d\xeb{B\x1fk\xaeA\xb7\xd7J\xc1\x93\'\x9eB\xc0\xa0\xa9A\xcb\xd4G\xc1\xb2\xb9\x9fB`\xf0\xb3A\x8cMS\xc1\xf1\xc7\x9eB\x19i;Bs\x06\xbd@\xbb{\x91B5}\xb9\xc0\xc14\xe7@G/>\xc1z;^A\x9f\xcf\xc5\xc1\xbd\xfb~A\x8fGTA\xb1E\xc7\xc1\xc2\xcbrA\\\x96lA\x1cS\xc6\xc1qcxAi\x8f.B\xcb\x03\x89BV\xa9\x98Bk\x1f+B|:\x88B3\xd9\x98B2r0B\xb7\x81\x87B\x1f\x00\x98BT>\xb0\xc1P\xeaCA\xb3>!\xc1?\xdb\xb6\xc1NnGA\xc3\xc6\x18\xc1\xb5l\xab\xc1T\xb6BA\xd6"\x16\xc1\xd0HT\xc1k\x19\x0bA\x04O3\xc1c]\\\xc1-\xfd\tA#\x81$\xc1\x9dwF\xc1B\x9d\x04Atr/\xc1Iu\xe5@\x87TlA\xa9`Y\xc1\xad\x88\xf7@\xf8\xb2rA\xaa\x82c\xc1\x84\xb3\xdd@\xbe\x02^A"\xba^\xc1)\xd9tA\xcaz_?A\x1c\x7fAY\x1d}A\xf2\xe5t>\xe4\x03\x84A\x00\xe3eA\x1a\xc0%?\xf3a\x82A\n\xe33B\xe9\xe5\xedA\xac\r\x92A\xef\xdf5B\x8cy\xe9Ac\xb7\x97A\xa0\xeb1B\xd3H\xf1A|\xae\x97A\xcao\x1dB\xf2\xdc\x8c\xc2\xdf\n\xb5\xc1\xe4\xd7\x1fB\x93-\x8d\xc2\xdc\x8a\xae\xc1\xf9#\x1bB J\x8b\xc2{r\xb2\xc1J\xd0bB\xe0\xdb\xc5A^\x044\xc1\xacybB(`\xc0A?\xae(\xc1\xd0\x05cB\xb4\xb8\xc1A\x9e-A\xc1-\xa7nB\xf1_]\xc0we\x15B\x8a\xf0kB\xb0\xdc4\xc0W%\x16B\xcc\'qBF\xadL\xc0\xa8\x1c\x18Bb3bBli\xa3\xc0\r\x9b\x96\xc1T\x7f`BP+\x8f\xc0\x19b\x92\xc1)\xe0cBv1\xb8\xc0\xd8\xf5\x90\xc1c\x07\xcf\xc1\x15\xe2\\>\xd6\x9a\xe5\xc1;\x8c\xca\xc1>\x10l?\xf5\x1a\xe2\xc1\xb6\xd6\xce\xc1\xce7\xea>%\xfc\xec\xc11,P\xc1\xddQ\xaf\xc1\x7f/\xd6\xc1\xfa\x87S\xc1U}\xb3\xc1\xfe\xf2\xdc\xc1&\xeeB\xc1E\xba\xab\xc1\xe5\xea\xd7\xc1<\x83j\xc2\x16\x0b\x89@H\xc9\x15B\x9c\xb7m\xc28\xdbp@\xf7\xc7\x16B\x88Yj\xc2\x1a!\x9f@~=\x18B\xe4\x97#B\xafo\xce\xc0J\xa6]\xc2i! B"\xd6\xcb\xc0m\x05_\xc2\xf2{"B\x08\x8b\xd3\xc0\xee\xe7Y\xc2\xbcJ\x0cA\xb2 \x0f\xc0\xb3|\xa6B\xf8\r\x17Alz:\xc0hb\xa6B\xe1\xcd\x02A\x96\xa5\x1e\xc0\xd7\xe7\xa7B}?\'\xc1L\x89\x1c\xc2\xd7\xebyBZ\x82\x1a\xc1&\xda\x1a\xc2\x15gxB\x1c~#\xc1\xe4h \xc2\xc9\xabzB\x0e=\x96\xc17Xo?\xa1\xd3\xb0\xc1\x83\xf7\x97\xc1\xc1Uk>\xbbE\xb5\xc1\x07\xff\x94\xc1\xecV\n?\xb7\xcc\xa9\xc1y\\\xe9A\xf1cTB\x08\x0e7\xc2\xf7\x0b\xe6A\x17\xe6PB\xd7\x056\xc2\xf5(\xedA\xbf\x83UB\xc1\xcc3\xc2\x1a\xbe\t@@<\x8d\xc0\x1e\x9c\x1dBJ\x92\xbb?\x0c\xfcx\xc0\xb2h\x1fBF\xd0\x15@\xf8\xf9\xa0\xc0Cn B\x9f\x89\xa0\xc1s\xd1\xa1\xc2\xe5t\x03ByS\xa7\xc1u\xf2\xa1\xc2,\xf0\x01B\x87S\xa1\xc1\xf2e\xa2\xc2\x8f\xa1\x06B\xa4\x1a\xe9A\x15\x1c\xba\xc1^\n\xc5\xc0\xd3\xb8\xe8A\xeb \xbc\xc1\x00\xde\xa8\xc0:O\xebA\xe5\x9f\xb2\xc1\xb1\xf6\xc0\xc0>\x0f]@\xed\xe2\x0b\xc2\xab\xc5\xceA\x02\xd5G@J\x96\x0f\xc2\xdf\x8d\xcfA\xe1,-@\xf9I\t\xc2x\xc2\xcfA-\xe3&@x\x03\t@\xf2D\xcb\xc1E\xbb/@G\xe66@\x0f\x81\xc6\xc1\x1aX\xe2?]:\xea?ob\xc8\xc1\xa3\x8e\x17@g\xb9\xff\xc1\xacc\xcc@\xe2\xbb\x04@-}\xfe\xc1\xc9G\xe9@4b>@m\r\x03\xc2\xf4\xb7\xcd@\x8a\x8cmB\xe7(xA\xd0*\xf2AK\xc0lB\xc8o~Ai\x0b\xebA$\xc5mBzf\x82A5Y\xf6AF=\xf9Ak\xc8\x1e\xc1&\x00\xf4A\x0c$\xfcA\xfd\xb7$\xc1\\\xdf\xf9A2\x12\xf9A\x85\x80\x10\xc1\xc9\xe4\xf5A\x04.\xd8A\x9e\x8a\xd2A\xc1\xe7\x8dB\x04h\xdfA\nu\xd1A\xd9o\x8eB\xf5\x98\xd4A\xdc\x17\xccA\x94\xaf\x8eB\x8dT\xf4A\xcd\xe7E\xc2e\xe8\x80B\x8a\x14\xf1A\x15\xf8C\xc2\x08Y\x82B\x92\x82\xf5Ak\xa6I\xc2\x88\xae\x81B\x01\xa7gA\xf5F\x0c\xc1\xeb\xee\xc2\xc11\x85lA\xe2\x13\x1a\xc1\x1c\x04\xc1\xc1"MuA\xb0\x8d\x05\xc1a\xa4\xc3\xc11\xe7\xa2AN\x84\xf0\xc0\'\x14\xceA\xaf\x98\xa5At\x84\x04\xc1ov\xd2AV\x83\x9bA\x11+\xee\xc01\xb9\xd1A\xd4\xd2\xcd\xc0{U\xe5A.\x17\x1d\xc1~\xe2\xae\xc0>\x81\xe4A\x8c\xe2\x19\xc1 \xc1\xd9\xc0\xb9,\xe5A\xad\xeb\r\xc1\xd2w\x15\xc2\x81\xb3\x8a@\x06\x8e\xb5A\xf4\\\x15\xc2\x84\xcf\x91@z\xe1\xadA\xe7\xe6\x16\xc2\xd0\xcc\xa2@\xa9^\xb9AW6\xfc\xc1z\xaf(Bc\xf1\x05B\xb91\xfe\xc1\xff\xac&B\x10\xfc\x02B \xd4\x00\xc2\x87L+B\x19\x84\x06B\x00Dp\xc1\xfc\xb4 \xc2\xd1\x11\x06B\xfa\x96l\xc1\xf7_ \xc2\xebp\x02B\xb2\x9aa\xc1Kf!\xc2w\x8c\x07B\xeet\xd1A\xa1\x025\xc1\xae\xaa=A\xc9J\xcaAj\x9f/\xc1C\x1d;AO.\xd2A\xba\xfa2\xc1\x82\xd2MA\xa0u5B{\x9eX\xc1 \xa6_B(93B\xdbQV\xc1\xb4\xd0bBl/8B[\xbfL\xc1\x1e\x07`B\xb3\xed\\A\x8d\x0b8\xc2\x05\xf0\xdfA\xfd5gA>D5\xc2)\x10\xe1A^^`A\xca\x86:\xc2\xee\xf3\xe5A\xf4\x87\xc1\xbd\x8fp\x8b\xc1\xb3\x07[B|\xc3:?\xdas\x8c\xc1\n\xa8\\B\xfct\xd9\xbe\x85\x98\x85\xc1\x1fi]B\xf4c\x1b@>\n!\xc1\xcb9\x98A\xdf\xcc\x1c@\xc8*-\xc1\x13n\x93A\x9ct\x10@\xa5\x9c&\xc1XL\x9fA\xd9\xf0\xcc@vR$\xc0\x87\x0bXBG\x0e\xe0@C\xd5\xf1\xbf\xbeJXB8c\xbd@\xae[*\xc0\x9ar[B\x90\x13\t\xc1.\xc4\xdd\xbe\x18\x85\xfcAgd\x02\xc1\x0f\x15\x9c>\xa1\x05\x00B+?\x07\xc19\xae\x97\xbfO\xad\x00BJ\xe1\'B\xd0\xd0;B\xee\x87&\xc1\xbed)B\xd0/?Bf\x10+\xc1\x80\x88%B\x1a\xc6\x85\x11\xcb@#\xbc\xceA\xc6\x0fV?\xb6\xd4\xc6@\t\x1c\xd6A\xc5\x14\xd0\xbe\x1e?\xd8@5t\xcfA\xe5M,B\x9c\x8f[Avj\xbdA\x92\x12.B\xf4=hAY\x06\xc0A\xcf`*B#\xbfUA\x19\xee\xc3A\xca\xe4\xffA\x02_\xd3A\xb9\r\x92BC\x8f\x01B\xbf\xf4\xcfA\xe5\x8d\x93B\x8cY\xf8A\xb3"\xd2A\xb3a\x92B(\x84\xddA\x06\x01_A\xd7p%B#e\xdbAZ}mA\xd5\xaa&B}\x80\xe1A\xf7\xeeZA\xc2\xb9(B01\x8bAH\t\xe5\xc1\x0f\x11\xbe\xc1\xb2 \x8cAa\xb6\xde\xc1W\xfb\xb9\xc1V!\x8cA\xa5b\xea\xc1\x92a\xb8\xc1*\x8c\xcbA\xb5\x0c)\xc2\x18\x8c\x04B\xd0%\xcdA\x196,\xc2j\xc2\x06B\xea\xac\xcaA\x82\x8d*\xc2(\xea\x00BH\x8b!BGy+Av\x05\x1a\xc1\xe5\x1e$B|\x19,A\x96\xd3\x0e\xc1\x143\x1eB\xe9N-A\x01\x06\x13\xc1.\x19\x0bB\xd6\x81\xcdA\x9cy9Bn\xa0\x07B\xf1\x81\xd0A\x17\x90:B\x99.\x0cB\xf5q\xc9A&\x93\xfd\x02B\x96yzB#\xba^\xc0\xe8\xd3\x05B\x07 vBT\xb2\x8a\xc0O\xf0\x03B\xfdx\x9f\xc0\xb4q\xf2A\xf5\x9f\x18\xc2!!\xb2\xc0Jp\xecA|\x01\x18\xc2\x97\xfb\x8b\xc0\xea0\xf2A\xb37\x15\xc2^$\xf9\xc1\xe9:\x89\xc1[\x9b\xe9\xc0u\x12\xf4\xc1=\x87\x88\xc1\xc5\xc2\xd0\xc0M\xe5\xfe\xc1\xc4\x0f\x84\xc1\x87\xa3\xe4\xc0\xd2Q\x84AuD\x07\xc2\'X\x04B\xf9\x84\x80A\x1b\xd0\t\xc2.3\x02B$\xb0\x86A\x9b\x07\x05\xc2\x04\xa2\x01B\x0b\xe9\x1c\xc1\xd1pfA\x07\xa7\x8e\xc2H\x1a)\xc1RIcA\x99\x95\x8d\xc2:&\x15\xc1\xdd\xc2mA\x9a,\x8d\xc2\x1d\xf0\xa0\xc1\x1e\xc3\x82\xc1\x81\x04\x9dB\x91\xd4\x9a\xc1\x0f]\x87\xc1\xdb\xcf\x9cBiy\xa4\xc1\x1bJ\x86\xc1\xe1u\x9eB9\x11\xb9A\x9dX\xb8@\xff\xb4\x05\xc2\x9f\xd5\xb6Al\xb5\xa3@V\x0e\x03\xc2>\xcd\xb3AD\x1a\xd1@|\xfc\x05\xc2f\x0b|\xc1L9\xc7\xc0O\x191A;\t\x85\xc16]\xc5\xc0\xc4<7A\xe1=t\xc1\x80(\xce\xc0\xa5\x01>A\xd8M\xadA0:\xe8@\x153\xd0B\xeb\\\xb2A\x9d\xe1\xe8@N\xa4\xd1BX\xad\xacA\xa7G\x02A\xf2L\xcfBv\x10\x8aB\xd6\xa6\xd2A\x84\x0c%A\xcf\xaf\x88B\x11\x9c\xd7A\xd1k)A\xe1\xf2\x89B\x14\x90\xcdAmT1A\x950vAF\xd3%\xc0\xee\xc6\xdcA\xa9\x94{A\xb6\xbf\xd6\xbft\xe6\xdcA\n"qA\xda\x9f/\xc0G\xd7\xe3A\xf7N\x1a\xc1\x02\xb0\xc8\xc1\xb1%\x99\xc2\xec\xcf%\xc1\x8e\x99\xcb\xc1\x82<\x9a\xc2Zq\x1d\xc1\xa3\x15\xcc\xc1\xf3p\x97\xc2J\x1a\xffAvp\xa5\xc1G\xf4\x97BI\x04\xfdA"\x18\xa8\xc1^\xba\x99Bt\xb8\xfcA\xbej\x9d\xc1\x07\x17\x98B\xa9}\x8fB\xf4GD\xc1~\xf7\x07\xc2\xf8\xc5\x8dB\xe8\xff;\xc1\x9e\xe9\x07\xc2\xf3\xd0\x8fB\xc47K\xc1YX\x04\xc2;Uw\xc1s\xf8;?pI\n\xc2\n\xac\x83\xc1\xa2[f?\x9c\x9a\n\xc2%\x80s\xc1\xbb<\x89?a\xea\x06\xc2J\xd3b\xc1R:&B\xb5\xa5L\xc1\xb0mV\xc1\xdf\xb2$B\x9d\x06F\xc1;8`\xc16\xe9)B\xe0\xfcH\xc1O\x94\xcdAo\xfd\x0b?\xeb\xde\xbcAd\xf1\xcdA\xfe\x9c\xa3\xbe\xeb\r\xc1A\x0cE\xd4A\xf0\xb5u?>\xa9\xbeA#\xa6\xfaA\xf7\xc3\x8cB/\xa4\xb3\xc1\x92x\xf9AJ\xac\x8eB[\x00\xb2\xc1\xac~\xfdA\x0e4\x8cB\xeb\xc7\xac\xc1\xeb\xca\x82\xc0\xca\x8b\x00\xbe\x9dj\x16B2\xdbs\xc0\xfb\xb9\x13?$\x1b\x19B\x8a\xe1l\xc0\xbb\xcc@\xbf\x84\xb6\x18B\x87aY\xc2\x19\xe2\xce\xc1\xe7b\tB\xcb\xc8U\xc2p\xe3\xd1\xc1\x98\x99\x08B\x89!Y\xc2\xfdw\xce\xc1\xbbE\rB\xcd0jB0\xb0*\xc0L\xfbPAj\x90lB\xdfK^\xc0\xb5\xc0OA\xd1\xaehB\x1c\xd5+\xc0D_^AH?\x0c\xd8\xc1\x8b[Y\xc0\xf6\x95\x02B0]\xe1\xc1\x0f\x13w\xc0#\xc3\x05B\xe6k\xcbA\x17\\a\xc2T\x83\x89B_/\xc7A;\xcac\xc2^r\x8aB\xa9\xad\xcdA\xeb\xcbc\xc2;\x1b\x88B\x86\xf8\xe1\xc1\x076\x9dAt9\xa6A\xa2\x1c\xe8\xc1\x18\x99\xa1A\x96>\xa4A\xf0\xd5\xe3\xc1\xd1X\x9bA@+\xadA\x9b\x14\xa9\xc0|j\x1fB\x1c\xd0\xf1@7\x16\xbf\xc07\x98\x1cB\x96\xdd\xf6@\x10\x92\x93\xc0\xd3\x88\x1eB\xc00\x05A\x9e\xd3\xa8\xc0iY\xb2\xc1\x80\x93\xb0A\xb9>\xc2\xc0\xd8\xf3\xb0\xc1\xf0O\xb4A\xbb\x82\x99\xc04\x86\xb7\xc1\x9e\x06\xb5Al\xf4\x03\xc2\xd2T\x9e\xc1\xab\xf20B"z\x05\xc2\xbfa\xa2\xc1\xe0\x8f3Bk\x83\x00\xc2]\xd9\x9b\xc1\x1a~2B\x1a\xdd \xc1m\xf4\xf5\xc1\xd5fYA\xbbo \xc16\xb8\xf5\xc1\xa6\xd0hACI\'\xc1\xfam\xfc\xc1\xac0WA\xbe\xf5\x16A5\xb5\x89B\x1d\\\xa3A\x1ad\x0eA\x97\x0b\x8aBl\xbc\xa9Av\x87\x0cAn\xb2\x88B\x86\xa4\x9fA\xf6\xdf\xfd\xbfbJ%\xc2\xccS\x16B\xf7\x9a\xb5\xbf\xd9\xe4%\xc2;\xa1\x19Bu\xbc#\xc0\x06\xfe!\xc2\xa5\x86\x17Bz\xd1\xf2ABT\x81\xc1var\xc0\xc1I\xf1A\xc2\xdd\x83\xc1\xd3w6\xc0Ix\xfaAq;~\xc1\x8a\xc7q\xc0\xfen1\xc2k\xde\xc0\xc1\x1eJ\x08B.R3\xc2\xa6\x11\xc1\xc1\xe2\xa3\x0bB\x9f\xc3-\xc2\xfe\xee\xc0\xc1o\x80\tB\x140\x85B\x0e\n\xdb\xc1I\xd5\xbcA\xe1\xea\x86B\x13h\xdc\xc1\x89\xbb\xbfA\x88\xd4\x83B\x04"\xdd\xc1\x15\x9e\xc2A\x857\xbdA\xd9\xda\xb3\xc1\xea\xf1\xe9\xc1d\x1c\xbcA\x04o\xb2\xc1\xcc\x1f\xe2\xc1\xe1|\xb8A\xe7\x05\xba\xc1n\x18\xeb\xc1\x11L\x9a\xc0j\xe8\x8a@J\xba\xff\xc1#\xd6\xac\xc0~\xc5\x9b@\x9d"\xfb\xc1\x95\xf9\x81\xc0\x8c\xa0\x86@y\xa2\xfa\xc1\x07\xaa\x94A\xe2\xba\xa3\xc2,>b\xc1\x07\x8e\x94A\x87\xc9\xa1\xc2\x0bsg\xc1\x88\xef\x92A\xd9\xc7\xa4\xc2\xe7+o\xc1\xfd\xa3\x9aA]\x89\xd4@\x8dG\x90B\xbf\xda\x94A\x16{\xeb@\xc1\x85\x90B\x91\xf4\xa0A\x16u\xe3@\x87\r\x91B\x19\xfe\x7f\xc0\xe3\x1d\x9d@\xc9\xbb\x1cB\x92\xf5[\xc0}\xaf\x97@}\x9f\x1fBV`\x9c\xc0\xa2H\x9e@\x02\xf1\x1dB*\xa5\x9aA\xb3\xae0\xc2#\xe7vB\x0b\xf3\x97A\xa5\xa4.\xc2*\xd4sB\xfa\x96\x94A\xfa\xb02\xc28\xfcwB\xaa\xa6\x0eB\x04\xaf,\xc1\xb1\xa9EB\xd3\x13\x0fB]s5\xc1szHBr\x17\x0fB$\x05\x1d\xc1\x8bXGBm\x07@\xc1\x19Q"\xc2F\x89\xedA\x8b\xa0A\xc1S\x1f#\xc2\xba\x01\xf5A :1\xc1+\xb1"\xc2\xeb\xc8\xebA\xce\x0f+\xc2w\xa3(\xc2\x05\xd0\xb8A\xf0[)\xc2\x9b\x07,\xc2=,\xb9Av1.\xc2\xeeC*\xc2\x1a\xa9\xbbA\x14\x8d>B*\xee}\xc2\xa5\xbb\x86A\xa0u=B5\xa0\x7f\xc2\x8b\xad\x8dA\xae\x11ABq\x1e{\xc2\xf3\x99\x89A\xce\x1a~\xc0G\xb1a\xc21B`\xc1\xfc5d\xc0\xd5L^\xc2\xebge\xc1;=\x8a\xc0i\x95`\xc2\xd7rS\xc1o\xd3h\xc1\\\x0e\x9b\xc1\xa1\xd0\xe6A\x90\xaag\xc1\x18q\x9f\xc1p\x0b\xedA\x94\xaf_\xc199\x95\xc1P\x92\xe7A\xf7L\xfe@\x96*\x0eB)x\x87B\xe2\x89\xed@\xe3\x9e\x0fB\x9a\xf1\x88Bim\x02A\xf6r\nB\xef\xda\x87Bz\\\xa4@\xe8\x0c;\xc0\xc7\xec`BH\x00\xb2@\xf8\xc2\x15\xc0\x90\xcccB\xde\xe8\xa4@\xac\xdaq\xc0\x9eUbB\xe7\x82\xe8@\xdfJ\xe0\xc1|v\x8dAw\x14\xf8@5\xdc\xe0\xc1\xb5_\x87A\xd0\x92\xd6@\x8a\x8f\xda\xc1a\x89\x8bA\xe1\xd9\x99\xc1\x80\xf6#\xc2d\x19\xb6A\x0cB\x9f\xc1\xbd\x12&\xc2\xc7\x15\xb3A\xea\x8d\x9c\xc1\x96\x1c#\xc2\x90M\xbdA\xeaW\xc9\xc0\xd7t\xde\xc10\x9b^B\xf3!\xdc\xc0^\x90\xdb\xc1\xce\xcb`BfB\xcc\xc0R\x02\xe6\xc1}\xa4_BRI\xd0A8\xd94\xc1\xc5K\xbb\xc1p\x15\xd1A\xc9\x90;\xc1\xe0\x19\xb4\xc1)1\xd1A\xfd\xd1$\xc1\xb0\xd5\xb9\xc1"]\x88B#\xcfQ\xc2]\xa2g\xc1Pv\x86B\xaa\x98P\xc2\rBg\xc1P9\x89B\xb5hO\xc2\x1c\x9b]\xc1\xed\x8d#A\xb3\x8e\xccA\x83=\x9cBb\xf4%A\xcf\x89\xd1A]\x9b\x9dB\x14\xea\x1fA\xaem\xd1A\xb3\xd4\x9aB\x10\xff\xd1\xbf\xd1\xbeQ\xc0\xb6M6B\xa3\xd7\xaa\xbfg\x0e\x86\xc0\xf5\x147BN!\xab\xbf\xbbV7\xc0\x8dm9B\x80F\x9aA\xea_?\xc2\xac\tpAK7\x9bA\xfeW<\xc2C\x12xA\xdeh\xa0A4:?\xc2q\x99A\x95\xa6\xdfA\xbah\x81A\x07Z\x9cAR\xfaRB\x19\xda\xdd\xc0\x98\x86\xffA\xcb3SB\xc3e\xc0\xc0\x8eJ\xfeA\xdb\xf9UB\x13*\xe5\xc0\x80\x00\x02B\xac XB\xab\xcc*\xc1}\x8d\xe3A\xe6\xb0XB\x18L\x1c\xc1\x81:\xe1A\x01\xe1YB\xf2\x07,\xc1~h\xeaA\xe0}8\xc1\x8e7\xe5\xc1^\xb3kB\xd5\r:\xc1J\xd3\xeb\xc1\xe9\xb0iB\x17a+\xc1\x85\xb8\xe6\xc1\xfd\xa5mB\x8c4\xef\xc1\x92\x92\x9e\xc0\xea_[B\xce\x92\xe9\xc1\xc0\x99\x89\xc0\xd7%\\B\x81\x14\xf2\xc1J#\x9f\xc05\xd5^BV\x1d\x8aA\xe32}AZD\x91B\xb5W\x90A\x00~\x82A\x86\x7f\x91Bd\x17\x89A\xa2\xfbwA\xfa \x93BY\x03\xb0@B\xa6\x06\xc1\x86\x13(A\xf5,\x97@y\x9d\x0b\xc11\xe30A\t"\xc5@\x80T\x0e\xc1\xe6%/A\xa2\x90\xb8@\x1d\xd2\x19BC\x1b\x8fA4\xd6\xbb@\xa0\xa1\x1dB2\x9c\x8eA\x16\x8a\xac@\x9f\xcb\x19B-\xb3\x96AQ_\xf2A\xf1\x17\xa5@\xdc%\x03\xc2\xdf\x15\xf0A\x83Y\xa6@y\x11\xff\xc1\xc7\x0f\xf1A\x1dm\xc3@\xfd\x19\x04\xc2\x97\x17\x17B\xa8\xa7\x89\xc1\xb6I\xe6?\x9d\xda\x14B\x91\x94\x83\xc1;;\xf5?\xbaS\x18B\x1b\t\x8b\xc1\x91C3@J\xd6\xe9\xc1&\xfb\x94\xc1\x80\x97\xbaA\xee\xf4\xef\xc1\x98\xd2\x98\xc1q\x0b\xbdA\xa1\'\xe6\xc1\x19{\x93\xc1W\xa9\xc0A\x03!\xcb\xc0-30\xc2\xdcz\xbf@+U\xcf\xc0fr3\xc2\xf4\xf3\xcd@B.\xcc\xc0\xb0t-\xc2*\x07\xd5@>\xb7?A@I4\xc2\xa4\x1e\x94AU\xc4EAT82\xc2q\xc3\x8eA\xa1Z0Ar\xd62\xc2A\x8e\x94A\xd4\xc5\xc1\xc0\xa4{\x87@\x9f\xe5;B-\xd5\xae\xc0\x96\xfb\xa1@\x1b\xb6;B\xed{\xbe\xc0N\xa6\x81@\xf4\x9c?B\xf1\x18\x9bA0r\x01\xc1l\x0c\x82Bf\x01\x9bA.:\xf7\xc0\xec\xe5\x83B!X\xa2A\\T\xfc\xc0\x9ec\x81B\xd1\xed|\xc0C\xc5=\xc2\xc7\xc8\x89B\xe9\x86n\xc0\x9fe:\xc2\x98"\x89B:\x88\x85\xc0\xc1\x86?\xc2\x928\x88B\xe6\xbb\x82\xc0\x91D\xbd\xc1\x8ba\xc0Ad}t\xc0\xfa9\xc4\xc1k\xf2\xc0A\xa0\x14\x9c\xc0\x8aR\xbc\xc1\xaf\xee\xc4A\xcfk\xcb\xc1\x88\r\xd0\xc1/Zi\xc1q\x05\xcf\xc1\x16\xe6\xca\xc1E\x8ds\xc1\xc2\x99\xcb\xc1\x91w\xcc\xc1\x9eq[\xc16\xb1\x15\xc2\xa7\xcd\x94A\xe9\xddDA\xcd\x93\x19\xc2\xa9\x8f\x94A\x0b\x1cFAH\xd6\x14\xc2\xdb\xd5\x8fA\xe0\xaaQA1\xcb\x86A)\xb4\xd1A*\x06j\xc1\x12$\x8dA\xf2\x8d\xcfA\n\xbda\xc1\xb5\x9e\x82A\x97P\xd5A\xb6:_\xc1\xbd\xca\xd3A\x05\x95Q\xc1\xf3\x1b\x13A\xfb\xa3\xd8A\x82\xebI\xc1\x08*\x1bA}L\xcdAW\x8dP\xc1\xe6\xb1\x1aA5\xce\x04B\x97\xfd\xdeA.y\x13B\x87\x14\x02B+1\xdcA!\xf3\x15BDL\x06B;\x18\xe5A\xa9~\x15B\xf2\x1btA\x10\xc0\x1bB\xdd%\x9e\xc2U0rA\xb7\x1a\x18B<\x9e\x9d\xc28\xb0rA2\x81\x1dB7r\x9c\xc2}\x11\xc5@\xc3:*BV\x11E@\xdd~\xab@q\xfc\'B\x84@X@E=\xc8@\xfa\x0b,B\x81\x06}@\xba\x88SA\xd0\xe0C\xc0sbtB\x1ciKA\xa4\xc3o\xc0CTvBIlaA\x99hR\xc0\x06@uB\xcc_\xde\xc1\x8f\x02\xb1\xc1\xccw\xc2A\xf9\xeb\xe4\xc1T\xcc\xb3\xc1VO\xc5A\xfa\xea\xd9\xc1A.\xb7\xc1\x0e\xaf\xc1A\xa0s\xe1@lj\x10\xc0\x17\xfa\xedA\xe0N\xd7@\x00\xae\x1d\xc0\xe8\x1e\xf5A\xc6_\xf5@\xbf\xe1\xc3\xbf\x11\xa2\xefA\xfcP\xafA&g\xca\xc0\x92\xd2,\xc1\x9a\x91\xabAi\x03\xca\xc01\x9a\x1f\xc1eA\xb4A-F\xb0\xc0Z7,\xc1\x99\x181\xc1\xa1*\x11\xc1\xe9A\xf0A?\x000\xc1"\x93\x01\xc1c)\xf1A?<-\xc1\xf7\x7f\x17\xc1z\x10\xf7Ay,\x1a\xc1\x9b3\xb2\xc0\xa3\xbc\xb4AhL\r\xc1\xa0>\xa5\xc0\x8e\x9b\xb1A\xc7\x90\x18\xc1\x85s\xb2\xc0\xd4\x99\xbcA}a\xa9A\x10\xce\x80\xc2\xf3\xd1\x8aBN\x90\xa9A\x8d\xd2\x80\xc2c\xf4\x88B\x81\x04\xb0A\xba9\x80\xc2\x04\x88\x8bB\xc6\xebZA\xa7Y\x89\xc2\xb9\x1c\xbe\xc1\x01_dA\xa1\xf0\x88\xc2\xe9T\xb8\xc1\x1f\xfaeAQ\xa7\x89\xc2\x8b\xd7\xc3\xc1\x97\xc5\xd2@\xa4\x89\xf3\xc1Q\x91\x95Ap\x1c\xe7@P\xa4\xf9\xc1\x1b\xe9\x95A\x94\xb3\xe5@\n{\xed\xc1\x8d\xe4\x95A\xd2\x1b\xb5A\xfa\x9f\x8dB!-\xc7A\xea\xff\xb6A\x9a\x1b\x8dB\x0f9\xceA\x1b\xb8\xadA\xa2\xa5\x8dB9\x97\xc7Ac\xec\xd4@\xaa\xd3`\xc2\xba\x0c\x9bA\xad\x87\xbd@-\x89`\xc2\xb3\x83\x9fA\x91r\xe9@h\x0e^\xc2\x15D\x9eA\xc7\xf66B\x95\xf4\x01\xc2zu}A\xf0\xc75B\x9b3\x00\xc2\x86p\x85AB39B\xec\xd6\x04\xc2H \x81A\x99D\xfeAQ\xc2\xc3A\x13\xe2\xa3B\x0b\xd2\xfdA\xa1+\xc9A\xf8O\xa5B\xdd\n\xfdA\x013\xbdA\x07\xda\xa4Bi]pA\x04\xbc\xec\xc1`\x9b\xbaAj(pA[_\xf4\xc1\x11\xac\xbcA\x82\x11gA`{\xe8\xc1\x04b\xbfA\x883\x0bB\xf7\xc4\xcf\xc1\xcer\xe4A)(\nBd\x02\xd6\xc1{y\xe8A\xd8\xc2\x07Bj\t\xcf\xc1\x17}\xe1A\xb5l>A0\n\x17\xc2rd\xd6A\x01y4A\xcf\x1d\x14\xc2\x99\xca\xd4AO\x835A\xda\x8a\x19\xc2R\xec\xd9A\xfd\xe9\xb6A\xf3\xb7*\xc2\xfa\xf1pB\xe0\x85\xbbA\x88\x06+\xc2\xd2%tB\x0c\x10\xb5A\xc3x.\xc22qpB\x0c\x12v\xc1\xbaz\xb2\xc1\x86\xadC\xc1\nO{\xc1 \xd1\xb8\xc1\xb5\xacK\xc1p6\x82\xc1\x17\x82\xb1\xc1\x80c;\xc1b\x8c\x03B\x94\x16\xadA\x0b}\xb0>Xh\x06B\xbd\xfe\xacAP\xe1\x86?\x05\xba\x00B`\x8f\xa9A\xbd\x954?s\xef\x0eB\xfc\xc2\xcf\xc0D\xd4\xb8\xc1na\x0eB\xa4\x14\xca\xc0\xa7\x10\xc0\xc1\xcc\xb3\rB\xcd\xa5\xb4\xc0\xb9\xbb\xb4\xc1m"\x96AZ\xa3\r\xc2M\x91\x9bB\xab\x04\x9dA:\xec\x0b\xc22\x05\x9cBj\x02\x90A)\xb4\x0b\xc2"Q\x9cB\xa8\xe2\x00BR\x1e\x1f\xc1\xb9I!A\x94\t\x02Bvt"\xc1a:0A\x8b\xfc\xf9Af\xa7\x1d\xc1R\xc1 A\xf0,I@\xd6-\x1eB\xece\x03B\xe3fp@qh\x1cB\xeeE\x05B\xfd8\x17@\xb5\xa9\x1eB#\xad\x05BS\xd0\x06B\xda]\xc3\xc1\xce\xc9\x1dA\x1c\xa2\x04BVX\xbe\xc1\x9a\r%A\xd6\x80\x06B\x9d\xa9\xc8\xc1\xe4\xc6)A##\'A\xfc\x93\x89\xc1E^\xf6A\xb1\xe0 A\x83A\x83\xc1\r\r\xf8A\xd9\x9f\x1aA$\xc3\x8e\xc1c\x9e\xf6A[\x9a\x97Av2{B9:-\xc1\x06!\x9cA\x8d\xe6}B\xf7C2\xc1 \xd1\x99A|w{B\xc3\xa8\x1e\xc1qLsB\xa7?\xe0\xc1\xde\xf5\x08B\xc3\xb1tB\xb3D\xe4\xc1\x06#\x0cB\x07~sB\xd7\xaf\xd8\xc1$\x8b\nB\xbf^\xc0A\xa0!\xa2Ao\x8eLB7\x9f\xbbAIg\xa7A\x89~NBR<\xc7A\x80\x9b\xa0A~\x06OBe\x94fA>\x9d\x1c\xc2\xe8\x1e%\xc1\x17\x03gA\xde\xa8\x1d\xc2\x99\xe1\x15\xc1Z\xf9VA \xf6\x1c\xc20B\'\xc12\xf8yB\xb3Y\xe6A\x05\x1b\x01Bu\xe3vB\xc5\xbd\xe6A\x9br\x03B\xfe\xa6{Bh\xa7\xedAA\xa8\x01B\x13P\x00\xc1b\x10\xe1\xc0\xc9\xc4\x87A\xf4n\x00\xc1C\xb7\xc4\xc0\x94=\x85A\x1e\x96\xe9\xc0\xd3V\xdd\xc0\x1e`\x8cA\x12E\x8fB\x7f\xda)\xc2Pe8B\xa5\x14\x91B+?+\xc2\xe2\xf98B_\x81\x8eB\x03\xb6)\xc29\xbc;BF\xb3\x83\xc2\xdf\xc29A\x1b\xfc\xd4Af[\x84\xc2\r\xd1-A\xe2&\xd9AW\xb2\x83\xc2\xaa\xebEA\x16\xff\xd9A\x13\xf4PBV\xfa\x1f\xc2\xf7LsB\xd7\xfdMB\x02\xf2!\xc2\x07\xb8tB\xef\x98OBY\x94\x1c\xc22dsB\x1cAbA\xc7Y\xeb@S\xece\xc2\xf3\xb6fAu]\x03Ab\xe1g\xc2\x96\xafoA\x90\x0b\xe0@\x10\xd2d\xc2W\x89\'B]\xcc9\xc1\xe6X\x86\xc2g!)BO\xb10\xc1\xd6\xcc\x87\xc2\xe0U&B\xbf\x18E\xc1\xc8y\x87\xc2\x9d\x8a\x04B\xa7\x83\x08\xc2\xc5\xb34Aj\x9f\x03B\xe9\xe4\x04\xc2kY7A\xf1\xcb\x02B\xe4]\n\xc2\xe8y?A{Z\xb8\xc1\xcb\xb3-\xc2\xfd<\x9bB%b\xb5\xc1\x07\xcb.\xc2k\x00\x9dB\xd5G\xbf\xc1\x0c+/\xc2a4\x9bB7\xb3\x03A%\x02\x9c\xc1\xd5\xf3\xc1A\xf7\xe8\xed@9\xfe\x9a\xc12x\xc6A\x07\xa7\rA\xa4\xf0\x96\xc1RQ\xc4A\xb8:QB\x967\x98\xc1rY\xbfA\x1fHQB\x99_\x9d\xc1_\xd6\xb8A4\xfdOB\xbf2\x91\xc1\xaa9\xbdAM_\x12\xc1\xfa\x81\x97\xc1\xf7o\xbc\xc1\x10\xa9\x08\xc1\xe81\x95\xc1\x84\xe2\xb6\xc1\x1e\xbc\x0e\xc19X\x92\xc1\xdb\x96\xc2\xc1\xa0\xa3\x1bB\xaft\x8d?\xea\xd1\x80\xc2\xad\xad\x18B\xd2J\x15?\xbb^\x80\xc2\x8dM\x1aB7\x16\xe2?\xfa\xef\x81\xc2\x1fyc\xc2L@\x85A\xaaqwAF\x0cg\xc2i\xd6\x81A|\x8cvA\x8e\x8ca\xc2jP\x80As\xbfoA\x19\xd4\xacA$\x86R?C\xd9jBo\xe9\xb0A\x03-R?&\x04nBe\x1c\xb2A\xf7\xd6\x91?EdhBrHz=\t4\xffA)\xa7\xa4\xc2\x03\xd7\x07>\x138\xf8A\xa0\xf6\xa3\xc2k\xbe^>f\xa6\x01B\x01\x16\xa3\xc2\xe3\xc0\xbd\xc1\xa3\t\xe6A\x1f\x00-ARC\xbc\xc1D\xfe\xecA5\xfd1A\xf7\x1a\xbd\xc1\x11\xa7\xe0A*\xff7A\x11\xc4\xf0A\x11\xb7\xaeA\xca\x8e\xa5A\xfb\x92\xeaA\x10\x1c\xb3A\xb2\xde\xa5A\x0cO\xf0A\x84\x13\xabA$\xff\xabA\xac\xcd\x1aBh\x85\xa7Asj\xf5\xc0\xaf\x1b\x18B\xb7\xc5\xacA\xcf\x11\xf3\xc0\x8e\xf8\x19B\xfd\xcb\xa2A]u\xde\xc0\xa6E\x99\xc0\xb7\xed\x0f\xc1\x935\xe1\xc1C\x83y\xc0=\x91\x13\xc1\x95b\xe1\xc1^\xb8\x99\xc0\xbb\x83\x08\xc1#Y\xda\xc1\xe2\xb6\t\xc2P\xc6\xcfA6\x87\xab\xc0\xb4\x08\t\xc2|\xc3\xd2A\xd0\xf8\x8d\xc0Qg\x08\xc2Ia\xc8A\xef\xad\xa5\xc0\x8d\xe81B\x8b\xccS\xc0L\x83\xe9Bt\x12.B0\x88A\xc0\xc6\xf2\xe9B\xf8\xa63BX\x11\x1e\xc0*\xae\xe9B\xbe[\xe7@uc\x1fB\xe9\x84C\xc2"\xb0\xd6@\xb9\xb2"B\x1d7B\xc2\x11p\xdd@\xa0}\x1dB\xe8T@\xc2O~\x19B\xc6\xed\xafA\xe1c4A\xebL\x19B(\x9f\xaeA~#DA,:\x19B0\xe7\xb7A\xd9\x8f4A\xf3\x1f\x05B\x82\xf8\x06\xc2\xd0\x9d\xd0\xc1\xdc\xed\x02B\xaee\x05\xc2\x0f\xda\xcb\xc1\x05r\x05B\xe5\x18\x04\xc2-q\xd5\xc1\x91\x1a\tAh\x14\x14\xc2*H\xa6B\xaf&\nA\xbc\xc1\x10\xc2\xbf\x05\xa7B\xbe\x11\x01A\xba\xec\x15\xc2\x00\xab\xa7B\xdfg\x82\xc2n}\x03\xc25\xde\x94A\x16E\x84\xc2\x06\xc7\x02\xc2\xbc2\x92A\x1f\xa3\x82\xc2hm\x02\xc2\x1a>\x9cAi\x15\xe5A\xaco\x9a\xc1\x1f\x1c\x84Bx\xf5\xe6A\x96\x89\x9e\xc1\x00\x9d\x85B\xe3\x82\xe7A\x8d\x01\x9f\xc1\xe8\xc6\x82B\xdc\xeb\x02BQ\xf7\x8cA\x99\x16\xe1A\x86{\x01B\xc9M\x88A\xcd\x89\xe6A\xcf%\x05B%\xe9\x90A\xbbT\xe6A6\xca\xe3\xc0\x90\x15\x17B\x015>A\xfcN\xe1\xc0\r\xc4\x19BE\x96IA\x8ej\xf4\xc0\x92W\x14Br\xb7EA\xcb\n\x9a@\x86\xa4\xb9@\xe9\x87WB\xfc\x89\x9e@\x07\xd4\xb6@\xb6*[B0\xee\x8b@N\xf1\xd4@Z\x80WB\x08\xbb\x17A\x9ae\xa3\xbe\x16\xbc\x10B\xe2\xfb\x13A\xcfR\xe9>\xcf\xf4\x12BPB\x16A\xf1\x9dn\xbf\xf5\x82\x13B\x02\xa7\xf3@\x91\xa4!\xbf\x9d\xcb\x91\xc1w\xf8\xf3@\x14>\xc5\xbe\x9c\x03\x8a\xc1\xaa\xa6\xd8@2\xc3\x84\xbf\x17\xe5\x92\xc1\xf2\\Q\xc0{l\x9c\xc1\x0fm$A/\xf3u\xc0\xe4\r\x97\xc1\xd0\x9a+A\xb4\x070\xc0\x06(\x9e\xc1\xc3t0A\xcc\x8ceB\xab\x1b\xdc@\xc5:\x8fB\xd2\xcchB\x03\x82\xdc@6H\x90B\xad\x85eB\xf7\x17\xf9@wk\x8eB\xfac\xe7\xc0\xb3fc\xbe1\xe58\xc2\xbbG\xd1\xc0c\xc4T\xbfZ\x157\xc2\t\x89\xf8\xc0\xda\xec\xd0=\x18\xfc5\xc2a\xa0.\xc1:\x94\x01B\xb2\x85"A\x9b*3\xc1\xec\x88\xfbAl\xb4%A\x81\x80/\xc1\xfd\x83\x03B&\xa4/AdOI\xc2\xa6\x8e \xc2\x9d\xfc\xc4A\xbbCF\xc2\x08\x9d!\xc2\xd74\xc0A@tH\xc2\xc7\xf3"\xc2\x9eK\xcaAh\x96=@r\xde\xaa\xc0\x89\xbd\xc2\xc1V\x9eE@\x970\xc1\xc0\'\xe9\xbd\xc1\xec\xa5\x10@A\xf2\xb4\xc03\xdb\xc7\xc1I\x0b,B\x93\x1a&\xc2\xb8\x9a\xf4A\x8f\xc9,B<\x00(\xc2\xf4\xe8\xfbA\xdf\xa0/B(\xa2%\xc2\xd7\xae\xf1A\xc1\xdd\x93Al-\x13@"\xf8\xafA0u\x8cA\x8cQ\x07@\xf2\r\xb0A\xbf\x1b\x96A\x94\xfd!@\xeej\xa9A\xfd\x9f\x7fB4\xba\xf0AYX\x06A`\xf6}B)\x1b\xf2A\xcaV\x13At\xc5\x80B\x02\xea\xeaA)]\x0bAC\x8e\xa8AL{]\xc2\xb5\xd0_\xc2R\xc4\xaeA3l\\\xc2X\x92a\xc2\xf7\x18\xabA\x88\xcf]\xc2\x96H\\\xc2\t\xa6`\xc0\xae\xac,\xc0OrCB::\x81\xc0\xb0\x1d\x1b\xc0%\xccFB\xe4\x8e>\xc0\x07\xb2Z\xc0\xd7\xddDB\xfb\xbelBe\xa9\x0c\xc2\xea\xe6\x13\xc2>(lB@\x8c\n\xc2[\xe2\x10\xc2~InB\x10\xc6\x0f\xc2\x06\x1b\x12\xc2k\xb4\xfb\xbf\x9d\x16\x81@\x88\xee\xebA\x80\xc7\xf7\xbfe\x9e\x86@\x83\xc5\xf3A\x99m3\xc0\x91\x9fl@\x9e\xb0\xeaAg\xab\xfaA~\xcc.A/oJB\xd2\x97\xfeA\xf2y+AB\x98MB\x02\xf8\xf3A\xefO3A_%LB\x82T\x02B_\xf3\xc6@\xb8)Y\xc1\xa8\x8f\x04B\xccC\xce@j4L\xc1\x00 \xfeA\xda\xc5\xc0@\x057S\xc1\xdbH5B6;\x1d\xc1\xbd\xcf^\xc2tN3B\xfe\xf4\'\xc1J\xd5\\\xc2f&7Btb\'\xc1\xfc\x15a\xc2\xfc\xa8\xa5A\x14\x15\x0b\xc2X\xb80A+\xdd\xa3A\x92\xc3\x0b\xc2\xa7+@A\x04h\xacA\xb1\xc7\t\xc2,\xb33A}\x8d\x8cA\x07\x17vAS\xc0\xf3A\xb5J\x8aA\x86\xe2hA\xa7\xa2\xf6A\x04w\x8fAq\xb2|A<\xea\xf9A\xd1\x0b"B\xa4X\x1cA\x97\x12\xc7\xc1\xf6\xa5\x1fB,J#A\xa3\xdf\xcb\xc19\x7f\x1fB\xb4q\x19A\xce^\xc2\xc1y0W\xc1\x98P\r\xc2\x01\x9a\x81A\xc4\xb9S\xc1b\x94\t\xc2_U\x80A\xc6\xf9e\xc1\x9e=\r\xc2\xd5(\x83A\x9ct\x13B\xa7S\xa3\xc1\xb2\x07+@\xf4b\x17B\xfe\x80\xa3\xc1q\x890@\x1d"\x12B\xb6%\xa6\xc1Saa@\xa4-\xf4A\xac\x9d\x02@\xaa\x82\x9b\xc2\xc2#\xf9A\xf1o\xd8?\xb8$\x9a\xc2.\xa4\xf3A@\xa6?@\x00@\x9b\xc2\xd5\'\xabA1\x90,B\x1d\x8e\xceB\x16\xa3\xb2A"\x02,B7\xa3\xceB\x90A\xabA\xb0Y0B%\x17\xcfBc\xfdxB5\xc1GBD\x03\x92BB\xa9|B\x13\x14GB\x1c>\x92B\xab>wB\x10\x15EB\xbc;\x93B\xf0\x81\x85\xc1\x0b\xd5\xad@\xb42\xebB\x0c\xfd\x8c\xc1\x08@\xab@J\xc2\xebB\xff\xc3\x83\xc1\x1b\xd1\xc4@\x80X\xecB\xb3E\rBhh\xc6\xc1\xbc\xfe\x0bB\x15\x9f\x0cB\xf9?\xcb\xc1\xdb\xa1\x0eB\x80\xa9\x0bBS\xb3\xbf\xc1(y\rB\x02GAA\xf5\x9e\xbeA\xd6\xcc\xc5AM\xb0NAf\x97\xbaA\xb4>\xc4A f=Ak\xfc\xbfA\x8e\xf9\xbeA7\xec\x1a@\xff\xf6\x0b\xc0\x0b\xd7\xdb\xc0\xfdM\r@\x01\xf3J\xc0B\xa6\xdb\xc0U\xb0\r@\x83\xf7\x03\xc0\x12\xa1\xbd\xc0\xdf\xa7$B\x01\x15\x83\xc1\xe3\xa2\xa8@\x0b\xba%B,$\x89\xc1K2\xbb@$\xff!BXi~\xc1\xbaK\xbd@\xb4\x80\xf3@\x97\xca&\xc1\x9d-r\xc2\'\xaf\xd7@\xf5\xcd#\xc1\x94\x07q\xc2\x89\xc2\x00A\x8dB,\xc1k\x16o\xc2Z\xb2\x14AE\xe9\x9f@\x9d\x8b\x9fB7\xaf\x0bAG&\xa5@\xce\x05\xa1Bu\x1d\x11A\xe6=\x80@-K\x9fBr(\x90B\x0e\xb0\xc2A\xdcr\xfa\xc1\xa6\xc0\x90B}8\xbeA\xccN\x00\xc2\x11\x17\x90B\xf1\x95\xbdAR\xbc\xf4\xc1\xd5\xbdbB\xa4\xd6E\xbfd\x16\xc2\x91\xe9\x9dBIb\x10A\xce\x17\x16\xc2\xda\xbb\x9dB\x11Y\xbaA\'\xf3\xca\xc1]\xbe\xf0Ao\xeb\xb8A~\x12\xc4\xc1\xa6?\xeeA\xd47\xc0A\'p\xc9\xc1,\xf6\xf5A\r\xb1\xec@\x97\x83\xa8\xc0a\xa1D\xc1X\x99\xd0@\x94\xd1\xb7\xc0\x84&B\xc1\xc9\r\xf4@\x81H\x9a\xc0\xa6E7\xc1\xd6\xb5\r\xc2\xa7=^\xc1T\x18;B\x9a\x80\x0f\xc2\xb6qS\xc1\x004=B_e\x0b\xc2D\xacd\xc1w\x91=BQ\x07\x9fA\'m\xdb\xc0\xe5s^A\n\xa3\xa2A\'\xcf\xce\xc0g[QA\xe2\r\x98A8\x89\xe3\xc0\xb0\xc0XAE\xd5\x92Au\x83\xb5@\xf6\x1b\xfcA\xddd\x90ABr\xb5@\x07]\xf5AK~\x99A\x82\xaa\xa7@V\xd2\xfaA\xad\xb2\xaeA\xd0\x80\x8bA\x88\x9c\xa7\xc1\x13\x07\xacAk\x9a\x92A\xceC\xa4\xc1\xbb\x10\xabA#\xdd\x85A_\xd2\xa3\xc1\x94\xb4\x8bB\xe5 \x1eB`\xe5\x8b\xc1Q\x9f\x8cB5\xc0\x1aB\xb57\x8d\xc1\x89Y\x8bB\x86\x9b\x1dB\xf2`\x84\xc1\x8a2\xc3@\xea"\x17\xc2\xa8<\xe5AL\xbe\xd7@\xa1\xa8\x15\xc2\xb6\xe2\xeaA\xe2\xeb\xb7@b\xf3\x19\xc2\n\xc7\xe9A\xc8\xcd\x1bB\xcc9\xc7\xc1\x1fw\x0bB\xdc\xf2\x19BiA\xc2\xc1H\xc5\rB\x19\xd0\x1eB\t\xac\xc6\xc1\nf\rBX\xac\tB\xdc\xc1\xad\xc1\xc4\x01\xf9A\x11]\x06By\xe7\xaa\xc1T@\xf7Aa@\nB\xecc\xae\xc1)S\x00B\xd2\x1d\xf4\xbf\xb0G\x94@\xd3K\xd6A\xddI\xb2\xbf\x97j\xaa@rW\xd9A\xb00\xbb\xbfG\xaar@X\xed\xd8A\xab\xc7\xd5A\x93^\x8d\xc1@;\xaaBr\x9e\xd3ASw\x89\xc1\x8b\xc6\xabB\x0c.\xdcA\x12\x1d\x8e\xc1\xa1"\xabBS\x8a\xa6Ao\\nAl^N\xc16\x9f\xadA\xcf-hA1\x82I\xc1f\x13\xa5A\x03\x05vA\x19\xf0@\xc1a\x17\x80A[\x16\x97A\xe6\xdcUA\x9c\xb6\x7fA\xa00\x90A\xe7\xcf[A\xe6\x18tA\xef\xe0\x95A\xbe\xaeKA\xa2\xe5[\xc1\xc4m\x17B\xdc\xd0\x85\xc1\xc4\x89S\xc1\xde\xd3\x14BP\x96\x81\xc1\xfb/U\xc1\x90}\x1aB+^\x83\xc1.F\xa3\xc1\x98\xba\xf2A\xb0\x7fLA\xbc\xdd\xa7\xc1\xd2q\xf8Ac8HAM\x93\xa7\xc1\xfe\t\xf2A\xef\xebYA \xfc\xcb@\x1b\xbc\xcf\xc1\xfc6\xcfA\x05y\xc0@`F\xd2\xc1\xa9]\xd5A\xc8K\xb6@\xc4\x8a\xcd\xc1\x04e\xcaA \xcf\x12B}\xc2]\xc2\x8e]\x1fB\xfbU\x13BT\x01[\xc2\xb1\xb9!B\xb9\xac\x11Bw\xe1`\xc2\xe2\x82!Ba|}@v\xb91\xc0\xdf9\x07B\x00\x91\x8f@\x8e\x8bD\xc0\x06d\nB\xbd\x0fE@5\x05\x1a\xc0\xf3\x82\x08B\xc7\x11\x0f@\x17\x18\xd8@\x98nAA\xf8\xf8%@|u\xf6@t\xeaAA6!\x1a@\xae\x0f\xcf@2\x92PA\x03\xa9\xef\xc1#\xbd:@\xa4SjA\x83\xfe\xf3\xc1\xc1\x0bm@\xc5\x8bnA\xecW\xf1\xc1\\\xd65@e\xec[As\xc0\xba\xc1g\x99\xef\xc1,\xf8\\Ac\x85\xb7\xc1\x1aW\xec\xc1\x9a\x95OA\xd0\x8c\xbb\xc1\xd3\xf3\xf6\xc1\x17\x84YA\xd4)\x0bB\x9cUO\xc1\xa0\xf0\x83B\xe8\x0b\nB>]C\xc1\xbe2\x85B\xaaG\tBn(\\\xc1\xc7~\x84BiH\xa3B\xbf\x01;B\xca\x11bA;\xe8\xa3B@\x8d>B\xb1L`A\xdfK\xa2B\x86:;B\xc7\xe5nA\t\x1e\x91B\xc5\x07.\xc2;!\xde\xc1\xb9\x96\x8fB\t\xcf,\xc2\xcb\x9b\xe2\xc1\x10\x8e\x92B\xfdO-\xc2\xaev\xe3\xc1\x1c\xff_Ag\xe4\xe8A\xf0\x9a\x1f\xc1\xb4\x83iA\xcb\xe7\xe2A\xa7\xe8#\xc1v\x97cA\xc3\xd8\xe8A\x1c\xf6\x0f\xc1W\xf5\x8b@!\x04\x9bA\xbc\xdbmB\xf6[y@\xc0!\xa2A\x80mmB\xab`\xa8@\xd9\xac\x9cA-tmBe ABk3\xd7\xc0N\t\xcbA\xafp>B\x1f_\xcd\xc0\xb7\x86\xd0A\x9dqCB\x00\r\xbe\xc0-\xaf\xcaAf\x02`@\x96\xb7\x05\xc2At\xeaA\x95m-@%~\x04\xc2\n\xc4\xeeA\xe06i@m\r\t\xc2\x0ei\xeeA\x86\\\x08B\x8e8GB[\xa7\xa7\xc0\xbe\x94\x05B\xe8\nGBp\x8f\x92\xc0\xcbh\x0bB\xbenGB\x11\xad\x92\xc0M~rB\x92\xe7\x03\xc2\x88l\xbdAO\xd4rB\t\xde\x01\xc2F\xb4\xc3AX\xd9nB)^\x03\xc2m\x81\xbbAD\xac\x06\xc2\xc5Pt\xc2\xfdEE\xc2\xf9\xf2\x04\xc2\x87\xa1r\xc2n-B\xc20\xb7\t\xc2\\\xeft\xc2\x90[C\xc2\xb7?;\xc0Z\x12\xf4?\xc3\xe7*\xbfOg\x18\xc0=\xae\xd7?T\xc2\x10=83n\xc0o\xa6\x01@\xa3fq\xbeV\xdcqA\xfe\xd6s\xc1O\x01?\xc1\x98PwA\xce\x07{\xc1\x06\x05L\xc1\xdf\xf0}A\x8b%w\xc1\nE4\xc1\x82\x049Au\xec\x8a\xc1\xe3\x05\x87\xc2\xf1\x9d)A\x00\xde\x8c\xc1rj\x87\xc2\xf3\x1b=A\x11\xae\x91\xc1\xda0\x86\xc25?\x88\xc1\xb2\xb5z\xc2\x1b!\xe0A\x87\x8c\x86\xc1\xc0\xc9z\xc2\x1d\xa1\xd8ABX\x89\xc1$\xbcv\xc2f\xe8\xe0A>\x97\xcfA@\xa4\t\xc2\x9dh\x8bA*\xce\xcfAcO\x0b\xc2[\x1b\x84A\xa1\xdd\xc9A\x8bY\x0b\xc2V\x8a\x8eA\x9e\xf2\x8aA\xcfU\x1d\xc26Q\x98B\xea\x07\x92A\x9fC\x1c\xc2#]\x98By\xd6\x8bA\x8cE!\xc2\xe3\xd9\x98B\xad\xd0Z\xc0\xfa\x96\xe2\xc1\xb9Q.A[\xa1\x8c\xc0\xd6\x06\xe0\xc1\xdad-A\xca\x9dJ\xc0\xe6\x87\xe0\xc1\xad\xa1z\xb9@%\xbcK\xc1\x9f{\xf1\xc1{\x03\xdd\xc1\xbbg>\xc1\xcb,\xf5\xc1\x8b \xdc\xc1\xf1\x90H\xc1\xf9\r\xea\xc1\xfd\x0f\xde\xc1\xe3\xf3\x07B\xd0`\x95\xc2\xd52\x83A0G\x07BI\xd5\x94\xc2\x0fj\x8aA\xf2\xa0\x0bB\xc3-\x95\xc2A\xec\x83A\xc15\x89@\xc0\xe3\xcf\xc1\x1e\x96\x07BR\xe5\x92@\xb0=\xd6\xc1\xb0\xa7\tB\x9dzw@\xc8\xdc\xcb\xc1x)\nBK\x1d\x89A\xc8|\x1c\xc2\x0b)\x90\xc2\xa93\x88A0o\x1c\xc2\x18>\x8e\xc2\x18a\x8bA\xe9E \xc2Kl\x90\xc2\xe2\xff\x16BN7\xdd\xc1\x15$V\xc2\xa2\xb2\x19B\x88\xea\xd8\xc1\xc2-T\xc2\x8b\xb1\x14B\x83\xbd\xdf\xc1j\xfcR\xc2b\xb6\x81\xc1)\xf96B6\xe0jB^p}\xc1Lu5B\xb40nB\x99\x0b\x89\xc1\xe798B{\xdakB\xf3wnA\xfejN\xc2\x84\x0c+A\xd6;qA\x02\xd4P\xc2\xd8m7A\x99\xb6yA\xe7\x95K\xc28\xf7,A\xab\x05\xef@\x9c\xd5\r\xc1@{\x88Br\xc4\xf1@\xb9\xb3\x0e\xc1\x9el\x8aB\'\xb1\xd3@\x198\x15\xc1\xa3\x1b\x88B{\xdeSA\xe3\xa6\\\xc1\xd7\x1b\x07B\xad\xce^A\x1d\x1bc\xc1R<\x05B;\xb1XA\xfe\x8b^\xc1[\x00\x0bB\x0f\xdc\xb2\xc1\xdb?&B\x0c\x92\x9f\xc2\xbf@\xba\xc1\xbfA5\x03Z=\x00\x8b\xef@\xa5\xa0\xbaA;\xed\xb0@o\x1c\x0b\xc2\xbc\xbe\x9bB\x93 \xaf@\x86\xc4\x07\xc2\xe8\x9a\x9cB\x11\x8c\xa7@z[\r\xc2\xf29\x9dB\xbaj\xbd\xc0\xc0R\x8d\xc2\xd9\xfd\xd7@|@\xb0\xc0&\xb2\x8b\xc2\xba\xf1\xdf@\xcb\xbd\xc5\xc0\xb5\x1a\x8e\xc2Y\xde\xf3@8\x03\x96A\xb6p~@\x1a[fB\xc4\xb1\x95A<>\x94@jocB\x80\x9f\x97A\xbd\x06\x92@\x89\x8ciB<\xbe\x11B3h6\xc0\xa3\x80\xc8\xc1\xd8\xbe\x10B\x86z\x02\xc0\r>\xc4\xc1)q\x13Bq\x00]\xc0\xe33\xc3\xc1]\xf2\xc6Ah\x0f]\xc2\x85\xc0\r\xc1\x08\x84\xceAA\xea\\\xc2\x96\xb4\x0b\xc1!,\xc5A\xc8$_\xc2^\x03\x02\xc1\x80\xb0)\xc2\x97zxA\xc4\xff*AZ\'&\xc2qGsAy\xa9*A4\x0c+\xc2\x11\xaauA\xb4-9A1e\rBH\x02\x83\xc1\x03J+B\xeaF\rB\xd6\x88y\xc1\x00b-B\xae\x89\rB\xefb\x88\xc1\x8f).B\xaf\xb4\xcaA\nq\xe4@\x8d9W\xc1\x08\xde\xc8AU\x1d\xdc@`PI\xc1\xd5\xcc\xd2A\xa7\x8b\xe7@\\\rW\xc1\\\x00\x16A\xe3\xdd"A\xdb\xac\xf7\xc1\x9c\xcc\x19A)u/A\x97\x97\xfb\xc1 \x86\x1dA&}\'A\x98t\xf1\xc1\xaf$L\xbf\xd2\x99\xf7@\x83\xa9=\xc0\xcf\x8b\x11\xbe\rL\xe7@\xe4\xaa\x18\xc0(a\xc8\xbfY\x8d\xf4@^\xbc\x18\xc0\x8d\x1f\x19\xc2xN\x16\xc2N\x16\x93AZ\xa5\x19\xc2\x86\x87\x12\xc2F\xc6\x91A\xf6\x9c\x15\xc2\x7f\xd4\x16\xc2;\xd5\x96A\xc3\xc0\x86\xc0\xef\xea|\xbf~\xbc\xdeA\xfd\xbd\x83\xc0\xef\xfd\xa0\xbf\xdaF\xd7A\xc1\x87h\xc0+\x1a\xca\xbfV\xd5\xe2A\xa8\xc15\xc2 a\xeaA\x92\x83\xdeA\x92\xe95\xc2\xf5\xaf\xe8A\xb1p\xe6A}\x9d6\xc2\xed)\xe3A\xa9\x1d\xdbA\xe6\x17c\xc0p\xc4\x03B~\x96PB\xb6cN\xc0\xb3r\x01B$\xccSB\xaf\x1d\x89\xc08\x8a\x05B5\x98RB_\x8b\xb0@\xe9\xf4\x11\xc1C\x98\xddAC5\xaa@\x18\xba\t\xc1w\xe5\xe3A&n\x93@\xfd\xdf\x15\xc1\xda\xc4\xdaA\xa2\xcd,B;\x13\xa0\xc1u\xb4\xbaAx\x93+Bb\x97\xa3\xc1?&\xb4A\xed\xcd)B\xc7\x8e\x9b\xc1\x1d6\xbcA\xd8\x07&BU\x1aD\xc2&W\xf0Acg%B!\xdbG\xc2\xf1c\xf2Axd%B@\x1cB\xc2\xb5\xa5\xf6A\n\xf2W\xc1+\xfb\x91A\xda\'\x8eBF\x01^\xc1c\xf8\x95A\xd8\xb0\x8fB\x13/a\xc1\xc9\xe5\x94A\xf2\xac\x8cB\xb7\xe1\xa8A\xd7\xb6\xbf\xc1\r\t\x85B\x17\xd4\xa7A1\xe2\xc2\xc1\xb56\x83B\xff/\xafA[\xaa\xc3\xc1\x08\x7f\x85B\x02\xe2\x18B#\xffWA\xd1\x93\x1eB\xe6\xca\x16B\xc5\x83bA{~ B\x80P\x19B\xa58NA\xf7\xb1!B\x10\xdd\x92\xc1z:\x18\xc2\xf8\x1f\x8eA\xdf\xe8\x94\xc1\xba$\x1b\xc2\x1b\xa5\x92A\x13\xa6\x92\xc1\xbb&\x15\xc2U>\x93Awv\xbdA%\x97\x05\xc1\xa6\xbb\x98A.\x9c\xb9A{2\xf6\xc0\xb8/\x9dA>\xc2\xbcA0B\xfb\xc0\x0cO\x92A\xc0@0B\xadx\xd8\xc1zj\xf8A\x90\x00-B\x9d\x88\xd6\xc1\x1e\x02\xfbA\xbeb/B8\xe9\xdf\xc1\x85\xb1\xf6A\x08\xc9\xacA\xa9\x98\rAH\xdd\xa7A\xf3\xca\xa7A\xb7_\x03A@N\xa4A\xca\x06\xa9A\x10\xa8\x14A6\xd3\xadA\x8fy\x1cAn\xa9\x81=\x0ec"\xc36\xd5\rB\xc9\xba~?\xb93\'\xc3)i\xbcA,\xa3(B>4\xce\xc2\xf5&\xd2A?\xcd\xc6\xc1"^R\xc3L\x86\x9aB\xac\x01\x1f\xc1B8U\xc3\xb8U\xb4A\xce\xb0\x17\xc2E\xcb\x80\xc3\xea\xa8\xa4\xc1\xa1\xc0D\xc0h\n\x9d\xc2\x96\xc2\x82A\xcb\xbe(\xc2\x1a\xdd\xd6\xc3\xebfA\xc1\xb7\xa9\xc6\xc1S\xba\xf5\xc21\xfcpAGk\x8e\xc2\x121T\xc3A\xca\x08A>\xaa\x80\xc1\x9d\xe7\x11\xc3\xba\xbe4B\xf9#\x8d\xc2Q\x93\xbe\xc3\xef|\xf5\xbd\xc6#\xd6A\xa4\xf9S\xc3!\xdc\x83\xc1\x84!&\xc2D*\xaa\xc3\x80\x9f\xf8@\xa2RK@3C\xc0\xc3DW\xfe@\xa5JMBR\xf6T\xc3\x9f\x98$B8\x9cW\xc2\xf6J\x90\xc31\x03\xce\xc0\xc5\x11\x8a\xbf\xb5\x86\xaf\xc3\xca\xd0lA*y\x96\xc1\x1c](\xc3\xb1\x81`A\xc0\x9f\x12\xc0e\xc4T\xc3\x1e{@B\x89GT\xc1tWt\xc3\x144\x04\xc2\x8b\xdd&\xc2z\xbd\xbe\xc3\x08\xe2$\xc1\xf1\xb5\x04\xc1\xb6\xe9\x95\xc3#\xe6\xdfA\xf2[\x0f\xc2C\xd2\x11\xc3Ii\xceA|\xa9l\xc1cy\xfe\xc3w\xad\x96\xc1\x1e\x98`@c\xb4n\xc3\x92f\xdc\xbf\x1eI\x1d\xc1\xafB\x94\xc3\x9d\x0f\x04\xc1>\xe18\xc1\x9f\xc9\xaa\xc3\xb2\xb7xAE[f\xc23\xd0\xcb\xc2\x8c\x88\x1eBe\xb5S@\xadu\xf6\xc2fd\x14B\xd0G"\xc1\xcc\x0c|\xc3\xf0\x0e\x86\xc1\'\x953\xc2g\xa3\xab\xc3\xe2\xeb\xe8AJM\xf4\xc1a\x0f\x81\xc3\x14\x80\xa0\xc0b\xc1\x02\xc1\xa5V\x1f\xc3~\x8a#A\xff\x11\x93\xc0\xe2\x00\xd7\xc3&\x98-@\xcf\x1cTA3\x14\xed\xc2\x91\xdd\x1a\xc1\x1e\x00\xf7\xc1S\xab\xaa\xc3i\xc5\x07A\xd2\x02\xb2AP(\x92\xc3\x80\x03\x11B%\xda\x1b\xc2v\xb4\x8f\xc3Fu\xacA\x8aj\x81\xc1\xbew\xea\xc3\x95\x7f\xa8A)\x83\xf8@U\xa0\x9d\xc2\x19\xf3\xe3AeU\xb6@\x8f\xceK\xc3Q\x124Bbq\x83\xc1{6J\xc3{\xe88B.&\x13\xbf\xf6\xd2\x16\xc3\x98\xc5E\xc2p\xa5s\xc1Cv\x80\xc3Mf7\xbf\xc4n\xba\xc0\xf8`x\xc3=/9\xc2yz\xbf\xc1\x19+M\xc3G\xbf\x9aAH9\x1b\xc1_\tU\xc3\xdax\'B[U\x03BY\x87\x02\xc4\xbc\xa8NB\xa7\xb2\x81A\x9c\xa2\xa7\xc3\x16\x9bj\xc1\xf9tO\xc1\x1f\xab(C|\xeez@v\xe1\xe5\xc0\x1a\x92\xadC\x8aWiAp \xa6@\x10\xaf\xf8B\xe3\xcepB8\xf2#@\x1f\x0czC\x16k"B$u\x86\xc1A\x91\x0bD\xf9\xb2\x16\xc1\x8f>\xf0\xc1q)\x90C\xc7K\xdf\xc0\xec\xa5\xc0A\xa2u\x96C\x07;\x1aB\x16\x00\x80\xc1\xd3\x97\xaaC\xb1\xa2C\xc1\x87{\x16\xc2q\x95\xb9C\x16\xc8\x82B\xa6\xbd\x0b\xc2\xc7N\xceCh\x97{\xc1\x8e\xc51\xc2l(\xd2CEZCB=\xef\x14\xc0\x9e\xe8\xadC0\xa4\x14B\xee\xebG\xc2+b\x19Cc1nB\xaa\xc4\n\xc1\xd4+\xe7C\x04\x10"B\x17\xcd\x15\xc2[\xd8\xc0C\x01\xcb.\xc1\xd0%$A\x19\x8d\x9fBm\x92\xca@/\xb2\x90Abe\xd2C\xbd\x1c\x12B\xf1\x9c8\xc2\xf4\x9e\xa5C\xc8\xb89B\xb5\xf7V?\xdcn~Cwy?B>=\x8b\xc2\'\xc2\xecC\xf3COA\x04\n[A\xb9\x8a\xd2C\xf4\xc0u\xc0\xd57\x9cA\x98\xe5\xadC\xda\x89\x89\xc1\x112O\xc2\x17x\xbaC\xc0\x06\xebA\x82\x9a\x00A\x9ft\xffC\x91\xcc>A\x95\xe4\r\xc1\xc0\x84\x16D\xd6\xae$B\x86% \xc1\x10\xce\xbfC\xd7\xd8?B\xcf\x9e\x9cA\xd1\x8a\x0cD\xa1\xf3\x81@\xaf\xd3g\xc1\xbf3\xf1C[\xa9\x92\xc1\xd1\x87\xcd\xc1~ \x81CVo=\xc2\x8cA\x86A\xb1B\xd3C\xcb\x05\x1fA\x0b\xd3.Ad\xf7\xadC\n\xa1rA\xda\\\xef>\xa7L\x0eDk\xd3\x86A\x99\x17+\xc2?.\xeaCU\x9d\x9e\xbd`U\xb5\xc1\xc9Z\xaaC\xb8\xcf\xcd\xc1\x96k\xdc\xbf\xed\xc7\x0bB\x1f\x91\x8dA\x12\xb9\x8d\xc1\x80\xbb\xd8C\x0f\xfa#B\xfd\xe2\xb8\xc1H\xa2\xffC(\xfa\x85B@\xa8\xaa\xc1\xdee\x81C\xf2\xfe\xd5A\x86bUA*\xbd\x99C\x8f\xb7\xf6@n\xefP\xc1co\xc4C*\xa8^\xc1\xfdb\x85A\xf7\xcb(C\xe4\xeb\x13AqOV\xc1\x93\xd1\x90C\x17\xbf\x95A\xbe\xb4\x8f\xc1\xf2\xf6\xadC\x88\xc4)Abi\x99@\x8b\t\xedC\xf6W.B\xa5\xb0_BE\x15\x0bD\x8aw\xcbA\x05\xeb\xb8\xbfs\x13\x1aD\xa6\xc7\xceA\xaf\xff\x00\xc2IX\x19C!01B\xa8\xedw@\xect\xc4C\xed\xf9\x1d\xc1\x0e+\xfc\xc0\x88\xb0\xd3C\xdb\xcf]\xc0\xdc\xbb\xb9A:i\x1c\xc1' +tba. \ No newline at end of file diff --git a/testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.p b/testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.p new file mode 100644 index 00000000000..f4ba898fa27 --- /dev/null +++ b/testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.p @@ -0,0 +1,39 @@ +(lp1 +cnumpy.core.multiarray +_reconstruct +p2 +(cnumpy +ndarray +p3 +(I0 +tS'b' +tRp4 +(I1 +(I3341 +I3 +tcnumpy +dtype +p5 +(S'f4' +I0 +I1 +tRp6 +(I3 +S'<' +NNNI-1 +I-1 +I0 +tbI00 +S'@\x9bOAI\xe7\x08Ae\xa7\x0c\xc1B\xb3ZA\x9f\xd0\x01A\x05\x88\x01\xc1R\x15SA<\xce\x18A\x1f}\x10\xc1\x98\x9dPA\xa5\x11\x00A\x85\xcf\x1a\xc1\x04\xa39AI)\x07A\xce\x9c\x01\xc1\x987\xf2\xc0\r8\x83A\\\xa24@\xf3\xe7\xcc\xc0c\x14\x86A\xa3%~@\\\xdb\xbb\xc0\xb6\xe1\x81A\xc8\xb1\x9a@\xb2\x04\xbf\xc0\xb8\xe1\x8bA\x1f\xf0\x80@YP\xa8\xc0\x9dS\x88A\xab\xd0\xdd?\xe6f\xc4\xc0\xc9%\x88A\xa7\x91\x8f?Y6\xdc\xc0\xc4\\\x8eA\x8d@\xe2?\xe7\xd5\xb1\xc0\x85C0A;=\xa3@\x86|\x9b\xc0E\xd0:A\x12\xf5\xb6@\\$\x80\xc0\x01X\x1cA\x89@\x92@\x11_\x92\xc0n5\x14A\x89\xe4\x80@\xd1\xfc\xa7\xc0:\x1a\x10A\xed}\x9f@\xe3sY\xc0\x19\x89\x1aA\x8b8\xaf@U\x0f-\xc0\x06,\xfd@\x1fp\xc0@n\xdas\xc0\x8e\xd0\xe9@\xa0X\xaf@\xff\x18\x94\xc0\x18d\xdd@\x8f\xa9\xcc@X\xee,\xc0\x03U\xf4@5\x0f\xd7@\x8c\xcf\xeb\xbf+\xbb\xc8@\xb0e\xb0@\xc1v\x18\xc0\xa3\x98\xc8@\xd6/\xe7@\x97\xbcE\xc0y\xab\x08A<\xb0\xe6@\xd1\xf5\x8f\xc0\xb7\xe8\x0eAV\xd6\xde@h\x9d\xb1\xc0\x84\x13\x15Al\x15\xf3@\xb9\xc5z\xc0\x1c\x84\xf3@\x9dU\x06A\x04\xea\x99\xc0\x99\x01\xea@\xf0q\rA\x19\x1ey\xc0\xe8Y\xd6@\xf1\x9e\xfd@\xe9\xc3\xa7\xc0\xe8\xd1\x02A<\xe9\x12Aj\x98\xaa\xc0\xc3\x98\x07A\x11\x1er@\x9d#-\xc0\x86\xb7\x00A*\x9d5@\x97^Y\xc0\xe3*\x06AJ\xb4r@\x1f/\xab\xbf\x1d\xfe\x0eA\x99\xe8\x90@\x01\xe2z\xbfE0\xf8@u\x1e6@\x85]\xfc\xbeN\x13\xe9@\x8ev\x04@\xeeK\x8d\xbf\xe9\xfd\nA+\x17\x0b@)\xd9\x0b?\xa2\xa9\x15A\xd3\xd7>@\x95!g?\x8f\xfd\x00A\x85^\xc5?/U\xe5?\xd1\x99\xe8@o\xc9;?c\x13\xc1?\xfc\x17\xf7@\x1a\xbb\x15@j\x12\x1d@\x81\xdb\rA\x1e\x9d{?#\xe8\x18@\x1f\xa9\x18A\x1b7\x94?\xa0c\xa3\xbe\xa2\x90\x1eA\xe6\xdc\xd4?\x80x\xa0\xbf\x03\xd6\x0eA\xda\x0f\xbe>\t\x91*\xbf\xbd\xd4*A\x92\x0b#?\x81\x08\xe2>\x06\x1d\'A\xdfA0>[w\xba?\x9e.3A\'\xc4\xc4?\x0b\x8cM?\xff,5A\x1a\xaf\xb3\xbc\x17$i\xbe\xc8Q\xd5@<\x93b@\x16\x98\xbe>\x93\x0e\xde@\xa7\xaa\x8f@J\x96\x8c?\xc5\xba\xad@\xf8A>@\x01\x17\xa3>#\xa6\xa8@\x04\xd4\t@\xcb\xf8w\xbeoO\x8a@\x17\xe3W@\xca\xb5\x92?\xa6\xb2\x91@H\x90\x8d@\xc7%\xb6?0V@@c"S@{\x82\xc7>j&\x11@\xbf\x0fn@T\x8e\x8b?\xa4\xba-@)\x90\x12@#\x06Q>H\xa02@8j\x86@\x8c\x86g\xbfO\xa7g@\x1e-\x80@\x8c\xfd\xd3\xbf\x0c\x93\xbc?\x82ps@\xdf\xcd\xd3\xbf\xd8\xfd\x11?d\x12\x8b@~D\x9a\xbf*e\xa3?*\xe0/@\xa9:\xbf\xbf\xf2\t\xd1?Y\x88\x80@\xbf4/\xc0\xbf\n0@SO\xb4@*\x1e\xe6\xbec\xach@\xd6\xbc\xbd@\xb3\x00\xf9=\xbe\xa9\xed?0\x88\xb6@\xa5\'\x1a>^\xb7(@\x92\xc6\xce@~\'\x9a\xbf\x84\x9d\x83@-\xe5+@\xcby!@"\x0eS@\x90\x7f\xe5?\xd7\x08.@\xf2\xad\x9a@J:F@\x8f\xc6c@LO\xaf@\xf2qz@K\xcc]@[\xeb\x99@\xddn\x1f@\x0b\x10\x9c@\xeeR\x91@.\x10\xb8?\x05+\x99@\x139\xc7@He)@\x8d\xe2\xac@}\xeb\xcd@\xf3dn@8_\xaf@\x9cZ\xdb@\xe1l\x14@\x03>\x93@\xedz\xd0@P8\x07@v\xc8\xda@du\xbd@7p)@\xbef\xf3@\xc5V\xc6@\x88K\x18?\xb6\xca\xda@+*\xd5@\xe6\x10\xee=\xbfu\xbf@V\x92\xa3@=>\r?\xcf\xb4\xda@\xbd\x9f\xcc@*\x9c\xbe=\xbbJ\xfa@\xfe\xf5\xff@\x0b\xca\x0e@\xc2.\xe5@\xce\x15\x04A\x9f;U@+X\xdf@i\x0e\x08A\xca?\xc0?\x9e{\xcd@>F\x03A\xd5\xb6\xf7?6\x8b\x03A\xd5\xb5f@\xe4\x92F@\'\xb4\xb8@\xad\t\'@\xfa\xb1b@\xa8Z\xa6@h\xa6k@s H@A]\xe4@\xc3\x86\x8e@\x17o,@\x7f\x07\xf1@;\x0b$@\xe34i@\x82\x04\xff@\n>\x0c@\xe3K\x8e@\xc5\xd4\xed@S\xd0<@\xc46|@\xb0<\x0fA\\\\\xbb?N*-@\n\xa0\x02AU\x06\xc0?\x89K\xcd?\xc2!\xf2@\xce\x87\xd4>[LH@\xa1\xa1\x0eA\x8b\xdc\xf2>\xe4\xec\x82@i\x9e\x13A\xdf\xbf?\xbfl\xfb\x15@\x9f\x8d\x16A\x08\xa0\xb0\xbe:k\xc0?\xc0\x06\x1eA\xc20\xd0\xbf9\xb2F@t\xa7&A\x91f\x0f\xc0\x01\x84}@\xdd\xc4\x1fA\x04\x9c\x8e\xbf\xc7\x1aV@F\xda5A\x03(\x1a\xc0D \x16@\xf0M-A\x0f1\xca\xbf\x06V\xd6?\xc4\xb3\x04A\x87#\xc7\xbf\xbe{\x0c@\xbef\xe6@le\t\xc0\x00<\xd6>*\x7f\x06A\xe5S\x19\xc0\xbe)P\xbe\xc5\x1c\x1bAJ\xb3T\xc0\x8atI>Pr"A\xe7)\xc2\xbfY,m=\x0b?&A\xaa\xec*\xc0\xa5\xb4\xe1\xbeQ\xa3\xe9@V+\xe8\xbf\x81\xe8\x06\xbfV&\xd4@\xdd\xa5G\xc0\xee}\xe3\xbf\xd0)\xfe@\x17\xd5-\xc0\xd6\x00-\xc0&\xd3\xee@\xabF\x88\xc0\xa6g\xe4\xbf\xae\x98\x00Ah\x9f\x1e\xc0\x15\xcb\xdb\xbf\x9b&\x15A\x00\xb7H\xc0L\xe2\x1b\xc0\xeb_!A\xc4m\xbe\xbf_E\x08\xc0P\xc0\x13A\xdbWs\xc0Ofw>\x9d\x80\xd0@vI]\xc0}\x87\x06?\x198\xab@?\x87\x9f\xc02\x8e\x17?\xben\xe2@$\n\xa5\xc0rX\xe3>\xd6v\x01A3Z\xc1\xc0\x02K\x10\xc0X\xaf\xfe?\xd2\xa0\x80?(\xc7\x82\xbf\xd4!*@\xd0u$@:\x16\xf5\xbfff2@ nM@\x05\x80\x80\xbe\x85{_@\x1f\xa13@g0S\xbe\xaa\xb8\xa3?\xed\x96+@\x80\x1eF?S\xf8\x01@P\x0c/=r3D?\x0b\xfc\x82@\xf3\'W?O\x07\x9c\xbd\x13\xa4\x84@ihj\xbfyy\xd8>\xa5\xa3\x91@\x9dY\t?/E\xeb?\xd6\x03\x9c@\x1a\xb3\xa5?D\xf1\x1e@\xb4S\x8f@=\x81i?\xea\xf5\xc3?YF\xba@\xfe\xd4\x93\xbe\xe3\x1b\x1d@\xf9b\xa5@Y$-\xc0\xf9\xf4\x83@\x87\xa3N\xbf8e\x13\xc0.\xb8\x9e@Y\x1b\xc9\xbf\xa1\xb8b\xc0\xfe\x1aF@ \x17\x95\xbf\xe3\xcef\xc0\x98d\x16@r\x02\x1e\xbf\xd1\xbc\x82\xc0\xf5!?@~\xb5 \xc0\x15\x99\x96\xc0\xb51\t@\xb8\x8d\'\xc0\xb1\xdeQ\xc0.\x117@\xfc\xffI\xc0\xb1\xd1\x9b\xc0\xab\x92\x85@\x89\x17E\xc0\xb1\x16\xa4\xc0 \x81\x8a@p\x99\x89\xc0Q@\xab\xc0\x08\xd7\x9e@(M\x06\xc0\nZ\xaa\xc0~\xc3\x96@\xf5\x81\x91\xbf\x17P\xc1\xc0\x19\x1b\xc8@\xff\t\x14\xc0}\xb8\xd6\xc0\x1e\xd0\xbf@\xb9)I\xc0s\xf3\xdb\xc0\x81\xd7\xd3@xr\x88\xbf\x8e\xcc\xc3\xc0^d\xd8@\x80\xa1\x85\xbeI\x81\xfb\xc0\xdd\x08\xb4@\x82F8\xbf\x11R\x06\xc1\xe3\xd0\xad@Js\xc5\xbf\xdb\x06\xf5\xc0\xc3\xbf\xff@\x95=\x9b\xbf\xf9\xbb\x02\xc1\xbd<\xfd@_;\x0c\xc0\x92\x96\xe0\xc0K\x13\x0eA\x81\x92\x84\xbf\xef\xa2\x07\xc1\xd9,\xfe@[W\xd0\xbe\x1b\xca\xa2\xc0\x9aw\xed@j\x884\xc0\xd0E\xa8\xc0W\x0b\xfb@Qu|\xc0,\xb2}\xc0\xe6G\xf4@\xd4\xcc\x05\xc0p6t\xc05B\xe4@\x82\xe0\x9a\xbf\xe3P:\xc0\xf0\xe6\x07A\xc6:\x1f\xc0\xb3\xf8D\xc0\xca:.A\xf5\xe7\x0c\xbf:\xf9\x88\xc0\xcc\n/A\x0eY\xf0\xbe\xcd\xce\x11\xc0\xab\xbf\xbf\xd0?A\x12(\x86\xbfY&\x08\xc0\xa0\xde\x01A\xcbWp\xc0\xe0t\xe7\xbf\xd7\x1a\x0eA\x08\x1f\x93\xc0\xeb\x04\xe1\xbf=\x9e\xda@xfx\xc0\x9b\xc6\x05\xc0\xe0*\xc4@\xd5oQ\xc0\xc9\xcfv\xbft\x99\xc5@o9\x9e\xc0I \x01>\xe0\xbe\xcb@\x1d\x17\x9b\xc0\x08n\x9f\xbf\xd9\xdb\x95@mc\x9c\xc0\x17E\x0f\xc0\xd2\xec\x90@\x1a\x86\xa6\xc0Kl\x91\xbf-U\x87@F\\|\xc0-,\x06\xbf-\xde\x86@\xf0\xf7\xb2\xc0,9\xa5\xbf\xa1[\xd2@\xeci\xca\xc0{\xba\xda\xbe/\xb3\xd7@{\xca\xe5\xc04E#\xc0\xff+\xda@\x89(\xd3\xc0\x1a\x87M\xc0\xe7\x88\xd8@\x02X\xbc\xc0\xa3LB\xc0\x17\xc2\xe5@c\xc7\xfc\xc0C\xbc6\xc0Z\x1a\xcf@\xcb1\x0b\xc1\x8f\xb4\x91\xc0\xf3J\xef@\xa9\xfc\xf7\xc0\xbe\x07\xa2\xc0\x1b@\xfa@\xa2\x07\x0b\xc1\xc8:\x95\xc0_\x94\x03Ap\xe9\xdb\xc0\xcdu\xad\xc0M\xb0\xc8@\xb9\x13\xe7\xc0\'&\xac\xc0\xd5&\xc2@\x99\x11\xc5\xc0\xb1\x19\xa1\xc0\x86\xf9\xaa@\x84A\xf5\xc0!4\xdc\xc0\xfc\x80\xc9@\x13u\xf7\xc0El\xed\xc0XN\xab@\xfc!\x05\xc1\xeaO\xf2\xc0)/\xee@~Z\xf2\xc0\x18\xa9\x07\xc1\x16\xb9\xee@vN\xfc\xc0\xe8c\xe3\xc0-\x90\x02Akj\xe0\xc0}\x95\x12\xc0N\x95\x07A\x854\x07\xc14t\x04\xc0\x9af\tAkS\x1a\xc146\x06\xc0B\xcb\x18A&\xa0\xf3\xc0\xees\x19\xc0w\xc5\x16A\xf3\x04\xd5\xc0\xee\xe9\xbc\xbf\xf7\xf6,A\xb7@\x00\xc1\xfc\x1f\xe0\xbf5\xa90A\x8ah\x10\xc1a\x7f\xfe\xbfLQ>A\xef\xf0\xe2\xc0\x0b\x900\xc0A\xa67A\xf3\'\xcf\xc0\xd1<\x1d\xc0\x83\xaeKA}\x80\xf5\xc0\xc9\xf0{\xbf\xfc\x1eIAL\x00\xc6\xc0p\t\t\xbeo\x9fYA\xbeG\xd3\xc0\x1d\x9b\x1d\xbe\x9f1^A\xf9\x92\xf4\xc0\xb9\xb8l?\xc3\xf0`A\x1cY\xb8\xc0\xa2@\xd1?\xad\xe3lAK@\xc4\xc0\t\x1c\x86?\x10\xa4YAW[\x8e\xc0\x97C\xe5?\xc8\x13^A\xa6\x12m\xc0\xc7\xf3Y\xbfoLBAuP\x9b\xc0\xf6a\xd2\xbf\x91,7A\x93\xc3\x93\xc0\xd4\xae\r>\xf8\xa3JA\x06R\x80\xc0\x9a\xb3}>\x05yCA^>>\xc0\xa7\xa9\x0f>h\x13+A\xe0\xd5\xfe\xc0\xc3*L?\xea\xc97AMt\t\xc1\xfa\x1a.?wO\x1bA\x0c\xe1\xe7\xc0\x0ea\x08>\xa7q\x12AGT\xd4\xc0c\xf1\x07@\xca\x89\x16AtK\xea\xc0=[/@7\xac$A8N\xe7\xc0g\xe4"@\xa2U\tA D\xc2\xc0_\x1c\xff?"|\xf2@\xd8\xbb\xc1\xc0\xa1\xe1\x81@#[\x04A\xd7\x1e\xc8\xc0n\xf3\x92@\x93i\x12A\x06\xcc\xd4\xc01(\x87@\x9e\xdb\xef@\x90\x05\xe0\xc0l~\x8e@\x1d\xc9\xff@a\xbd\xa8\xc0\xf5\x05\x11@~\xbe\x15Av\xb0\x99\xc0S\x8d\x92?)\x15\x1bA\xd5\x84\x97\xc0$\x0b8@\x04\xb4#A\xbe\x88\x99\xc0\xda\x86\x1c@\x86\xff\x07A\x10&a\xc0\xd9C]@\xbe\xd2\x01A\xcc\xd5Q\xc0z\x81\xec?\x17\x9f\xf3@8\xd9l\xc0\xf9\x0e\x05@,\x90\x12A_\xe9*\xc0Ed\x1f@\xad\x19\rA\xcf\xa3\n\xc1\xd66`@\xb3\xce\x12A0@\x14\xc1\x1aH\xc0?\xd3\x1c\x00A\nO\x12\xc14R0?\x1cG\xfa@Y\x15\t\xc1\xb4\x88\xc7?J\x07\xef@\xd7\xd1\'\xc1\xc3S&@\xe4\x0c\xe5@\xff^-\xc1\x193\x17?\xfe\x1b\xc6@DK*\xc1\xf1\xa4\xbd\xbe\x02A\xce@\xa9g$\xc1\xcd\x13y?\xb1\xf5\xb1@\x0b\xe0\x1d\xc1\x80\xb7)?\x96=\xad@\xc3\xb0>\xc1\xb7<\xd9?q\xab\xa4@\x91\xafB\xc1\x855)>\xaf\'\xbe@\xa2\xe1K\xc1\xeb\xec?\xbd%\xaan@\xd5\x1c<\xc1bU\xd4\xbf.N\x88@D\x93.\xc1\x01\xbf\x1e\xc0\x11(c@\xad$1\xc1\x86\x16\xfb\xbf\xc2O\xa8@\x18\xcf4\xc15I\xd3\xbf;\x1c\x8d@\xe1Q\x1d\xc1\xb2\x97\x96?GL\x07A\x10\xe09\xc1\x16\x00\xc8?\x9e\xfb\x03A\'5L\xc1\xa7\xf4\xc7>\x82\x80\x18A\x1d\x8f4\xc1\x8c\x13\x8a\xbc9\x82\x1bA\x85M&\xc1\xb8w\xcd=\x1b\x8e)A\xfcDD\xc1ISA\xbe\x1a\xba"A\t\xb1S\xc1\xa0<\x81\xbfI\x946A}S9\xc1\xc9JF\xbf\xf1\xe96A_\xab\'\xc19u\xfd\xbff\xec,A}d;\xc14G\xae\xbf4\xcdMA\x1f\xfd>\xc1\xa4@\r\xc0\x96\x97LA\x9b%K\xc1tx\xef\xbe\x01EVA\x02\xabF\xc1\x1fd\xe1\xbf%\xa9[A\xf9!,\xc1\x0c\xda4\xc0\x16\xc2VA\xd5\x13"\xc1\x12\xb0\x8b\xbfu9kAb\x93&\xc1\xc5\xe8\xa4?":9Ao\xadI\xc1\x94S\xe5?\xd6\xa1:A`\xf7[\xc1\xc3\xb4\xdb?\x87\xf7CA\xf5\x078\xc1Sg\x99?\xf5\x9f?A9\x97)\xc1\r\x02/@AySA\x06q8\xc1\x19\xc8 @ \xff]A\xe04F\xc1\xe4\xa0)@UKbA\xaa<$\xc1$\x88G@\x1a7ZA\xbel\x16\xc1-\xd1\xd0?4\x9efA\xf5* \xc1\xd6\xdd\\@lzxAI\xc1%\xc1\xfe\x0f6@\x10\x0b\x81A\xb6z1\xc1\x99\xb1\x8f@\x90\xc0tA\x1d\xdf+\xc1\xe2\x92_@\x14\xcc\x81A^\xe8\x10\xc1\x83\x93k@\xb8\xa2wA\x80?\x04\xc1\x94, @\x8cO\x85A\xf0\x8a\r\xc1\xc8e\x93@9l\x8aA\xcc\xa9\x12\xc1\xc5~\x89@-r\x8fA\xe9\xc1\x1f\xc1Y_\xb2@\x1e\xbd\x86A\xb4\xf8\x14\xc1H\x11\x96@\xb2*\x91At\'\xfc\xc0"7\xa4@z\xb9\x8cAK\x92\xe5\xc0\x85Eo@\xfa\xf4\x93AI\x97\xf2\xc0\xa5\xb9\xab@\x83\xf2\x96Ah\x01\x02\xc1v\xf8\x84@Y\xb7JA\xfa\x8d<\xc1\xdd\xde\x9d@xDTA\x9d\xe5H\xc1\x89\xd8\x90@\x7f\xcc8A+\xa01\xc1\xf1\xc5t@\x8031A\xb2S)\xc1h\xd8\xbe@K\x801AQ\x1e3\xc1\xaf\xbd\xd4@\x9e1?A\\e7\xc1p\x0c\xd4@w\x9f+A\x13\x8e\x1d\xc1\xe09\xf6@\x10\xde)AH\xcf\x1e\xc1]`\xc9@\x11\xaf\x1cA]\xfb\x14\xc1\xb7\xa3\xcc@T>>A\x93\xb8\r\xc1\xc4\x14\xe3@i\x17QAS\xf0\x0e\xc1\xba\x96\xfb@\xd9\xbcQAs\x06\x1b\xc1\xf9\x88\xda@\xf6SaA\x1c\xe3\xfe\xc0\xc4\n\xec@\xb0soAC\x91\xfa\xc0@\xf4\xb5@M\x84^A\xefe\xe3\xc0iY\xaa@\xfaRlA9\xb2\xc1\xc0V0\xb7@6\x80zA\xca\x8c\xc6\xc0\x90\xb8\xab@\x85\x90;A8\x94\xfe\xc0\xeb\x1f\x9a@\xf8},A\x01r\xfe\xc0\x18\xa5\x9d@M\x8bKA{\xf3\xe3\xc0\xcc\xfe\x7f@\xd5\x0cKA\xf8\x86\xd4\xc0\x9b\xb0\xc6@<\x96 A\x02TD\xc1\xea\x8f\xeb@\x06l\x1bA\xe8HI\xc1\x94w\xa4@\x11\xc0\x18AFHN\xc1\xaf7\x89@h\xa3 A\xd14I\xc1\x93\xe6\xa2@\x8f\xe4\x08A\xe6\xa1_\xc1\x8b)\xb6@\xb7\x8b\x0eA\xd3Yk\xc1*5\x82@\xbf\xd1\x06A\x07\x1cd\xc1|\xb9\xb0@_\xe8\xe5@\xa07Y\xc1\x9f\xe0\xc5@1Q\xcd@d\\d\xc1\xdd\xfc\xa3@\x8aY\xd6@\x10\x97E\xc1\x1d\xf7\x8c@\x9aT\xe7@\xbc<>\xc1\x0e\x9a\xb8@5\xdd\xb0@\xbf\xa9;\xc1\r\x18\xcf@\x92\xce\xa2@\xc5#F\xc1|X\xd5@C\xc9\xbc@\xfa\xb1(\xc1`j\xe0@I\x01\xa0@\xc9\xed\x1f\xc1x\xb6\xfd@%H\xd5@\xf2H/\xc1\x0eT\xf6@\xf0W\xf8@-\xfe0\xc1\x0e\x0f\x05AaM\xcd@\xaeI?\xc1/1\x0cA\xbd\x05\xd4@\xfd\xb3#\xc1\x12l\xbd@\x94\xe7\xd8@\x17U\x18\xc1,\xe6\xa4@\x14\xa0\xc5@\x08?\x0f\xc1\xce\x8d\xab@\xdfB\xf3@J\xed\x1f\xc1R\xa7\xdb@\x84\x85\xeb@\x1b\xd4\x05\xc1\x1b8\xf3@\xa8g\x00AV\x02\r\xc1\xe0\xd0\xed@\xbc\xa9\xd1@O#\xfc\xc0f\xdf\xc8@q\xf7\xfb@\x93\x8c\xf2\xc0\x8ea\x96@\xd9\x84\x8f@]\xad6\xc1\xce\xb8\xde\x08\xc1\x1b\xe4\x9b>\x19\x01\x0c@m\xe9\x05\xc19_\xc2>+Ty?ZC\xd0\xc0\x81sz?\x9b\xfc\xe1?Yd\xc0\xc0\xd2;\'?J\xb3\x90;|\xf8\xc5\xc0\xad?\x8c\xbf\xd1\x8f\x96?\xe3#\xc5\xc0\x12\x15\xdf\xbf\x82\xdc\xfa?\xf83\xdb\xc0\xc3b\xd2\xbf)x\xe8>6\x03\xa6\xc0\xd6\xf2(\xc0\xde\xd8\xe0>\x81X\xa1\xc0\xb6&\x8e\xbf@5\xa5\xbc\x0b\xad\x90\xc0!\x02\x0b@\xe3\xf0,\xbf]W\t\xc1\xd1\x99\xaf?\xc9<\xc6\xbf\xa2\xf0\x0e\xc1\xb0\xc1S@E\x05\x88\xbfa\x9b\xfe\xc0)\xd0~@E\xe4\xb2\xbeI\xed\xfa\xc0\xa1\x87e@V\xd7\x1c\xc0mU\xf3\xc0c\x9eI@.\x1c?\xc0L\xf2\x06\xc1\xa4\x0e\xa3@?i5\xc0b\x8c\xef\xc0I\xb1\xb1@\xf6_\x0b\xc0\xf0\xb1\xd7\xc08\\\xab@\x03t\x88\xc0 \x02\xe1\xc0\x1d\x16\xa5@\xc4N\x9e\xc0\xa4|\xfa\xc0\xc1f\x94@}M\x92\xc0\xb2\xa5\xc7\xc0O\xe7\xcb@\xfc\xe9\x8b\xc0\x9cr\xd4\xc0R\x8b\xb8@\xd9y!\xc0R\xea\x0b\xc1\xd3\x0e\xb5@\xb6\xfe\xbc\xbf\xd9\x15\x12\xc1\x95\xa3\xa8@f\x05H\xc0ov\x17\xc1<=\xe8@\x02\\8\xc0]G\x0c\xc1\x12=\xef@\xa9.|\xc0A\x96\x08\xc1\x94\xfc\xf9@\xd3\x0f\x0c\xc0\xb1F\x00\xc1\xdc)\xf3@I%%\xc0;\xca\x1c\xc1\xe2\xa04@\x9b\xec+\xc0\x91[\xc9\xc0\xa0\rW@\x15\x85.\xc0\x93\xde\xa4\xc0G\xe5\xb8?sC9\xc0\xf4\xc9\xcc\xc0\x1cA\x91?!\xe6<\xc0\x92\x15\xea\xc0t\x97(?6R\xd9\xb4\xc0\xb8Z\xac\xc0=\x1e\xe7?\xb4?\x9d\xc00\xfdx\xc0a\x1c\x1b@p\x1a\x85\xc0\xceLg\xc0\xeb\xe1\x08@pd\xc7\xc0\xb3\x17X\xc0y\xbe\x10@,\xb7\xdd\xc0\xc2\x88\x87\xc0\xe5\xe4\\@\x16\xe9\xc5\xc0\xde9 \xc0_\x88p@\xae\x1a\xe5\xc0\xdb<\t\xc0\xd7\x84S@\xc0|\xab\xc0u\x19\xaf\xbf\xa0\xc6L@\xe9\xea\x8c\xc0W\xcf\xc5\xbf\xfaU\x90@3\x87\xb1\xc0\xef\xdfW\xc0\xceH\x85@0/\x8f\xc0\xe5\x86_\xc0\xc5\xaf\x92@AP\xc5\xc0\x8a\x01\x88\xc0\xed\x18\xaf@\xcap\xb1\xc0NL/\xc0*]\x82?q\xc8\xd7\xc0!R\x1f\xc0\xc2\x9d\x9d?\xe0\x16\xf7\xc0\xba{\xe8\xbf_\xd9+\xbe/\xcf\xc4\xc0\xbd\xfb"\xc0\xea\xa0\xa1\xbe-4\xaa\xc0\x7f\xb2A\xc0\xc1\xcb\xaf\xbfDx\xda\xc0\x0e\xdd\xff\xbf\xcf\x0e\xee\xbf\xdey\xc9\xc0\xe0\xca\x92\xbf_n\x99\xbf\x8c\xd3\xf9\xc0F\xb2\xd2\xbf_8\x1c\xc0\xc4&\xe4\xc0\x01\xd8?\xc0\x18\x121\xc0\xe2=\x04\xc1y\x07S\xc09\xb2C\xc0&U\xc4\xc0\x9a\x08h\xc0%R4\xc02\'\xa6\xc0\xfc\xf6]\xc0\x0c\x15\x83\xc03\xd8\xc9\xc0\x15v\x92\xc0\xab\x06\x98\xc0\xe4_\xe3\xc0\x01\xdd\x89\xc0<\xaa\xa2\xc0\xec\xa7\xa3\xc0c\x04\x92\xc0\xbaX\xb8\xc0#\xd7\xa1\xc0\x12m\xae\xc0\x0f\xa2\x91\xc0\x1f\x9b\x86\xc0\xe6)\x8f\xc0}\xb7\xc2\xc0\xb5n\xa6\xc0+\xd4V\xc0\xfa\xca\xdf\xc0\x1f\x1e\xc4\xc0\xa1\xdf^\xc0\xd2\xa9\xc0\xc0\xbdm\x8d\xc0\\)\x18\xc0"\nl\xc0\x80\xa3\xd2\xc0\xdf\xc2\xbf\xc0-\xb2\x8d\xc0\xc43\xdd\xc0\x8e\xc3\xdb\xc0a\xc5\x15\xc0-$\xd5\xc0\xf4M\xc9\xc08x\xd3\xbfxS\xca\xc0f\x1d\xb6\xc0\x99@\xea\xbf\x87\x19\xed\xc0\x82\xd0\xef\xc0x\x89\'\xc0D\x84\xea\xc0\x8f,\x04\xc1\xfc\xb7\x12\xbf\x92\x86\xdf\xc0\x08\x18\x02\xc1\x897\x0b\xbe\xecq\xf8\xc0\x18\xfc\x0c\xc1\xa3\xe7\xfb=\xf2\x04\xdd\xc0]l\xe7\xc0\xad\xa4\x1c\xbf\xb1\xe3\xb5\xc0s\xa5\r\xc1(HC\xbf4\xdd\x9c\xc0n\x14\x00\xc1K\xd8\xc4\xbf+1\xb4\xc0\xc1\x1f\x18\xc1\xc7\xce7?\xa7\x93\xa7\xc0\xe0$\x1e\xc1\xe8p\x05@J:\xc6\xc0\x1f\xec\x10\xc1$c\x02@0x\xe9\xc0\x10<\x12\xc1\x1d\xae\x0b@\xab\x89\xbe\xc0\xbb.\x00\xc1M\xa2C@.0\xbd\xc0\xcc\xd6\x18\xc1\x96s\xdf\xbf\xe1U\x0e\xc1\x00\xd7\xe3\xc0\r`\xe8\xbf[\x14\x1c\xc1\x0cH\x00\xc1$\x9d\xe5\xbf\\\xa6\x14\xc1\xf3\x96\xbb\xc06\'\xd3\xbf\xe7\x91\n\xc1\xad\x88\xa4\xc0\x04q\x00\xc0T\xe7*\xc1\xf2T\xaf\xc0#J\xc4\xbf\x8f\xe84\xc10\x7f\xc6\xc0\xabV\xca\xbf\xae\xe5/\xc1\x16\x8b\x81\xc0\xa0\xa9\xe7\xbf\x08$A\xc1&kx\xc0\x03o\x12\xc0y\xe6&\xc1;\x8cV\xc0\xcf@\x1d\xbeZs+\xc1\xdekl\xc0\xdf"y=\xfaX\x19\xc1\xada}\xc0\xfb\xbb\x86=o\xaf.\xc1\xb7\xbb\x0c\xc0\x9bK\x1c\xbeVt?\xc1Q\xef\xff\xbf\x85|$\xbfu\xa8$\xc1\xde\xa9\xce\xbf\xf2<\x8e?\x0e\x08*\xc1d\xeb\xea\xbf\x9f/R?\x92^7\xc1\xa0\xfd\x8d\xc0\xa2\xfdH?\xe3\xfa0\xc1\x85\xce\xae\xc0\xb9\xf5+?L\x8fH\xc1\x9d\x86\x8f\xc0\xcd\x14\xe7?Hz3\xc1\x0e\xea\x81\xc0\xc28\\\xc0\xa9:0\xc1r{\xb2\xc0\xb7\xbbu\xc0\xab\xe2@\xc1\xd7\xe4\xc4\xc0<\xa9\x8b\xc0\xbd\x86 \xc1\xe2@\xa9\xc0\n\xc4\x80\xc0\x88~\x14\xc1]\xc6\x98\xc0\x0e\x85\xb8\xc0\xaf\x9f!\xc1\xd3F\xb6\xc0\x1c\xc0\xc1\xc0>\xdc1\xc1BF\xb6\xc0K\xdb\xd3\xc0T%\x15\xc1C\xd8\x95\xc0\xaa\xea\xf5\xc0/\x08\x19\xc1Zt\x99\xc0q!\xd0\xc0\xdff\x03\xc1\r\xd4\x95\xc0\\\xe2\xc6\xc0\x05\xbe\x1c\xc1w\xf2M\xc0\x83.\xa7\xc0\xe0\xda\x14\xc1<\x80E\xc0\x08I\xc1\xc0\x14\x9e.\xc1\x1a\xeaJ\xc0\\\xa7\xe1\xc0\xb7\xf7\x14\xc1\\G\x01\xc0\xfd\x17\xdc\xc0\x85\x8e\x1f\xc1\xf0\x08\x8c\xbf|\xce\x01\xc1\xc3\x8f\x16\xc1\xef^\x13\xc0\xc9V\xd9\xc0v\xd2\xfc\xc0+\x00\xd7\xbfv,\xd7\xc0\x06\x06\xe5\xc0\x9c\xf8\x1b\xc0\xe8\xca\xd0\xc0\xbf\x91\xed\xc01\xef\xed\xbe\xddM\xd3\xc0\xdc\xcd\x03\xc1i\xee\x1b?{3\xdc\xc0\xbff\x12\xc1O\x94\xd7>\x0c?\xde\xc0{\xfe\xf9\xc0\xa9\xa0\xc7?\xfd\xd7\xc4\xc07\xb7\xc5\xc0\'\x12)\xbe\xd0\xef\xd1\xc0Zr\xba\xc0\xe1z-?(\xb1\xc6\xc0\xac\xc3\xb2\xc0\x1b\x05\x86\xbf\xa9 \xc0\xc0\xc3\xa1\x1a\xc1\xffS\xe5\xc0\xec\x91\xe4\xc00\x8d\x15\xc1.U\xf2\xc0\xa5\xfe\x9d\xc0,\xcd\x1b\xc1\xf5\x19\x00\xc1|\x0b\x80\xc0\xb9@\x1b\xc1,\xc8\xf5\xc0!\xae\x9f\xc08\xe6\x1d\xc1\xf6\x83\x17\xc1\xe28\xbf\xc0F\xb8\x1a\xc1\xf8%\x1b\xc1\x07\xdd\x89\xc0P\xa7\x0b\xc1f\x97!\xc1\xc0xM\xc0::\r\xc1\x9c\xff"\xc1\xd4[\x94\xc0\xc0\x17\xf8\xc0\xcb\xd0\x1a\xc1\x98\xb6\x92\xc0\xbd\xfe\x0c\xc1JI2\xc13b\x8f\xc0\x82G2\xc1eF\x1f\xc1:/\x9e\xc0\x1cX=\xc1~S.\xc1\x1b\xfcZ\xc0\x95.;\xc1pT\x14\xc1\x11\xa1?\xc0\xaa\xe51\xc1&x\t\xc1\xce\x8a?\xc0\xb8\x08R\xc1+E\x19\xc1=\xd7?\xc0\\\x04R\xc1\xc9g*\xc1\x91v\xc0\xbfN\xddU\xc1\xb1u\x11\xc1j\xc3\xc1\xbfM@[\xc1hn\x00\xc1|\x9cE\xbfx\x06J\xc1tZ\x16\xc1\xd3\xb3\x9e\xbf[(d\xc1W\xf9\x19\xc1\xad\x1e\x82\xc0\xe0Kc\xc18.\x12\xc1\xc4_\x86\xc0V\xces\xc1\x1b\xdc\x1c\xc1N\xe7\x99\xc0c\xfe^\xc1&g\x00\xc1\xdb\xe0\x8e\xc0-\x06R\xc1^\xc6\xed\xc0\xb1\xa4\xbd\xc01\xdfj\xc1\x8c\xfc\xf3\xc0\xff@\xb6\xc0\xed\x94{\xc1\x07\n\xf8\xc0\xb0"\xc9\xc0?\xeaf\xc1\xefx\xc4\xc0X-\xc7\xc0\xdb\xd7U\xc1\x19]\xbd\xc0Ml\xf5\xc0\x14\xfan\xc1\xfd\x1d\xba\xc0\x18#\xff\xc0\xb6u\x7f\xc1q\x8d\xc4\xc0\xb8\xbb\x08\xc1\xec_e\xc1Yz\xc7\xc0\xbb\x93\xfa\xc0+\xebm\xc1\xc4\xa5\x97\xc0\x95\x1b\xa6\xc0\x98\xffs\xc1\xc2k\xab\xc0\xe8X\x86\xc0:\x83m\xc1\xf1\xfd\xaf\xc0z\xb3\xa7\xc02P\x82\xc1\x8e\xf1\xb2\xc0\x8b:\xaf\xc0\xa8\xc7r\xc1\xfa\xa7\x88\xc0\xf9\xcd\xe1\xc0\x03\x84f\xc1\x1ex\t\xc1\xcej\xf9\xc0\x87\xd8t\xc1\xb3\xdb\x0f\xc1\xba\xe6\xe8\xc0^\xe8R\xc1L\x12\x11\xc1B\x1d\xd6\xc0\xd4NG\xc1\x8a\x8f\x0b\xc1d\x86\x07\xc1\xe3\xb4L\xc1\x8b\xac\x1e\xc1_Y\x15\xc1]\x99T\xc1\xcb|\x19\xc1\xe7\xda\x08\xc1\xbe\xa23\xc1\xfb\xba\x1b\xc1\'V\xf9\xc0\xaf\x80+\xc1\xb2;$\xc1\x81;\x06\xc1\xa6Z0\xc1\x0by\n\xc1\xfe\xd7\x1c\xc1\x9c]&\xc1\x0e\xa8!\xc1\x04\x8d+\xc1\xa7[0\xc1\x9f\xf7\x1d\xc1BA\x1f\xc1)\'#\xc1y\xe93\xc16\xaf\x1e\xc1\x1e\xf2\x10\xc1\x915\x15\xc1\xcb&\x19\xc1\x10w\x11\xc1\x9a\x94\x04\xc1]^0\xc1\x99G\r\xc1\xbb\x8c\x15\xc1us\x12\xc1\xa3\xab\xfc\xc0\x1e\xca\x1f\xc19q\x18\xc1\x18\xb8\xf7\xc0|\x840\xc1\xc6i\x02\xc1 \x98\x03\xc1J\r \xc1\x905\x15\xc1\x1dU\xd5\xc0l\x15\x13\xc1\x9f^\x15\xc1\r\xea\xbd\xc0/3\x1f\xc1\xa9\xff\x07\xc1@\x88\xcf\xc0\x9a\x9b\t\xc1-\xfe#\xc1\xbb?\xd4\xc0eQ\x0b\xc1\x9b\xf2\x03\xc1\xc7\x8dQ\xc18\xd86\xc1\xb8R\n\xc1\x11\xb8E\xc1\xd8\x16F\xc1.Z\xf3\xc0/\xbad\xc1\xef\xc2:\xc1\xfdQ\xee\xc0\x0c\xefl\xc1@\xc1,\xc1B\xc9\xe6\xc0\x1c8m\xc1\xa3\x9bO\xc1\x1aB\x03\xc1q\x1al\xc1,\xcbX\xc1\x1c\x8b\xc4\xc0\xf3\xc2`\xc1*\x82\\\xc1\xbc\x87\xcf\xc0k\x98P\xc1\x93{a\xc1K\xcf\xbb\xc0\x9eel\xc1\xba\xb1k\xc1};\x9d\xc0\x9d\xd1^\xc1\xcc\x8eP\xc1\x0e\xb5\xa4\xc0R)W\xc1\x9d\x90C\xc1\xd2\xf9\xd9\xc0c \x82\xc1\x10(M\xc1\x8e\xdb\xe0\xc0\xf0\x7f\x89\xc1jYZ\xc1J8\xc2\xc0\xe5\x9b\x84\xc1\x07\xd0:\xc1\x9c\xc8\xb8\xc0\xdal~\xc1a`1\xc1\xb9\x18\xb0\xc0\xe1\x1b\x8f\xc1\xb0\xd26\xc1\x8dL\xc2\xc0o\xfe\x94\xc1\xec^?\xc1\xac\x81\xac\xc0\xa5\xcb\x8f\xc1A\xbf$\xc1[\x10\x85\xc0\xb2_\x90\xc1I\xc5@\xc1\xf1\x9cu\xc08S\x98\xc1\x19\xdbI\xc1\xe0\xccP\xc0\xb6\x8d\x88\xc1\xee\xcd<\xc1:\xc5]\xc0\x1e\xbe\x81\xc1x!4\xc1i\'\xf0\xbf\xd7#\x88\xc1i\xd6D\xc1\xec\x8f\xee\xbf\xc3Q\x8c\xc1V\xd8S\xc10X\xaa\xbf\xb3\xfey\xc1J\xccF\xc1\xa1\x1bT\xbeE]|\xc1\x1dsH\xc1B\xc1\xc8\xbf\xab\x89o\xc1UA9\xc1\xd7\x97\xe3\xbf\xbf\xfdo\xc1\x06bY\xc1\xa7\xe5\x1f\xc0^\x9ee\xc1\xe0\xeaW\xc1ef\x88\xbf=\xd3\x8d\xc1 f4\xc1\xfdW\x85\xbfWv\x8a\xc1\xe2\xde!\xc1\xba\xf2\xd2\xbe\xc0x\x96\xc1\xf2\xb1;\xc1\xe1L\x00\xbf\x9cH\x98\xc1\xed\xcfJ\xc1a0[>\xa1\xaf\x9e\xc1_Q.\xc1\xff?&\xbf/\x05\xa2\xc1\xdb$\'\xc1\xbd\xe0x?a#\xa7\xc1!\x06<\xc1\x87-\xf6?\xebt\xa3\xc1\xcc\x96B\xc1\x90\xd0\xc0>d\t\xaa\xc1tmJ\xc1m\x18\xa0?\xe0\xb1\xb1\xc1&\x130\xc1\x9f\x98\x04@\x8d\x87\xb0\xc1\xecn$\xc1XA\xc7?\x06\xba\xb7\xc1a\xf7;\xc1\xe3@\x0e>K2\xb6\xc1\xfaB#\xc1\xea\x1a/\xbf6\xb0\xbb\xc1\xa7\xb3-\xc13\xfb\xc8\xbd\xe4\xe0\xb4\xc1_\x89\x0f\xc1\xb1Y\x8c?\x84\xde\x9a\xc1\x12\xed\x1a\xc1[\x07 ?RQ\x9b\xc1<\xe8\x08\xc1\xf1\x95\x12@\xe5\x0e\x96\xc1\xb5\n\x1e\xc1\xcd92@\xea2\x96\xc1\xc4\xa4+\xc1\xef)F@Y\x98\x90\xc1\xed>\x0e\xc1(\x8dS@M\xae\x95\xc1_t\xff\xc0\x10]\x8b@>1\x8d\xc1\xf9\x05\x19\xc1Y\xad\x89@C\xe9\x87\xc1\xd3\xc3\'\xc1\x03\x9e\x9b@1\x81\x94\xc1\x95T\x1f\xc1e}\xb1@\xe7$\x88\xc1\xb3\xc1\n\xc1tN\xa4@$J\x81\xc1\xc2\x1a\x01\xc1\x11f\xc3@\x84\xf2\x8f\xc1\xff}\xf3\xc0\xc9\xa6\xc7@\xc4\xfb\x97\xc1~\x03\xff\xc0\xdd\xaa\xb2@\x11/\x90\xc1\xa1\xa5\xd3\xc0e\x07\xe5@\xbb\xea\x8d\xc1a\xde\xed\xc0\x82{\xd4@\x82\xed\x83\xc14\xa8\x19\xc1\x1d\x0e\xcc@v\x84}\xc1\r\xd3\'\xc1\xb0\x1d\xe7@\x0cI\x8b\xc1d\x8d\x1f\xc1\xe3A\xec@\x7fZ~\xc1\x0f\xea\x0f\xc1G\x9a @\x94\xed\x85\xc1;A\x06\xc1\x1b\xeb,@V\xadz\xc1\xd6\t\x0e\xc1\x8b/\xbc?\x8e\xd2\x86\xc1\x03\xee\xef\xc0m\x99\xa8?\x8c;\x8e\xc1r\x05\xe3\xc0\x9fK\x0f?o/|\xc1\xde\xe1\xe2\xc0\xdd\xc0\xe6>.\xccq\xc1A\xa9\xfd\xc0s\xaf\x8f?A\xa1t\xc1T!\xc9\xc0\x14\x957\xbf\xb3\xe8\x81\xc1\x95\xea\xcf\xc0?\xa4\x9e\xbf\xba\x91y\xc1nS\xb1\xc0PK\xa9\xbf\xbd\\\x8a\xc1\xfcE\xe2\xc0\xdeeg\xbf|\x9e\x8d\xc1\xc5\x10\xfd\xc0,\xa8*\xc0\x8b\xec\x8d\xc1p\xdc\xd4\xc0\xff-O\xc0\xe5\xa7\x86\xc1\xa1.\xd0\xc0\xed\xb2W\xc0\x82\xda\x92\xc1\xec(\xfa\xc0B\x98T\xc0\xf7"\x8e\xc1.j\x0c\xc18\xa2\x8e\xc0\x1c\xf3\x92\xc1\x08\xbc\xf1\xc0\xdb\xe1<\xc0\x02e\x9e\xc1\xb5S\x02\xc1%\x87\x18\xc0\xe1\r\xa2\xc1/\xfd\xe9\xc0\xd5\xfb\x0b\xc0\xa4\x07\x9d\xc1\xc7\xd1\x0e\xc1C\x05\x7f\xc0\xd8\x16\xa6\xc1\xd5=\r\xc1x\xe2\x94\xc08\x9c\xa0\xc1\x0cC\x16\xc1\x0e\xe1\x90\xc0\xe4\x8d\xaa\xc1F\xb9\xff\xc0.\xec]\xc0a(\xae\xc16\xbe\x1d\xc11\xba4\xc0@A\xa9\xc1\xe8\xbb)\xc1\x8fU\x8a\xc0\x8d\xfa\xb1\xc1y\xca\'\xc12[*\xc0N\x95\xb6\xc1c%\x15\xc1\xb3\x12H\xc0\xbd\x8f\xba\xc1\x92\xd5\x08\xc1>y\xe0\xbf[\r\xb3\xc1\xa4(\x0f\xc1\xe8o\r\xc0lV\xbb\xc1\x05\x03!\xc1\x7f\x8c,\xc0a\x02\x94\xc1\xe50\xab\xc0E\xf9r\xc0\xe4a\x96\xc1\x1c\x8f\x99\xc0v\x15\xc2\xbf:\xf2\x95\xc1\xaa\x8c\x98\xc0\x0b5;\xbf\x87\xad\x94\xc1\xa4\xd7\xab\xc0\xa9)\xa2\xbf\xec$\x9a\xc1\xb1\xf8\\\xc0w*\x01\xc0h\x9b\x9f\xc1\xf4\xc1M\xc0E\xcb\x1d>\xa4\x92\x9e\xc1\t\x87J\xc0lR\x8a>\\9\xa2\xc1Y\x80\x0c\xc0\xe8\xc6X?%\xea\x97\xc1\xc5\x04N\xc0\xb7\xf4D?\x87B\xa7\xc1\xb0\n\x82\xc0\xf9\xfa\xa5>+,\xb0\xc14i\x81\xc0\xc0\x14\xe6?\x19\xc2\xa7\xc1\xeb\xabr\xc0\xeeK\x84?\x99\xfe\xa3\xc1\xb6~\xb1\xc0\x81B\x91?\x8a\x87\x9a\xc1o\x1a\xb9\xc0\xc2Uv?\xfd\xe4\xab\xc1`#\xcf\xc0\xed\xebu?\xc6J\xa9\xc1\xed\xe8\xed\xc00A\x82?\xf35\xb3\xc1\xd9\xd0\xc6\xc0%*\xca\xbf\xf6E\x91\xc1\xc5\xea\x1c\xc0>\x9e\xee\xbfp\x16\x94\xc1\xc3\xf0\xa5\xbf!\x05\xcd\xbf\xb6\xf4\x86\xc1q\xc25\xc0U7\xbc\xbf\x95#\x84\xc1\xe3Yq\xc0z?\xf9\xbf\xc0\xd2|\xc1\xad\x9b\xf3\xbfV\xc8\xb6\xbfWW\x80\xc1\xbe^o\xbf\x98\x17\x9c\xbf\xf2\x9fh\xc1Z\x98\x19\xc0\xdbq\xa2\xbfMgg\xc1\xbc\xae`\xc0\x04=N\xberfi\xc1\xad\xfa\xff\xbfy\xe1\xd2\xbfe5[\xc1\xc1\xa7\xf9\xbf[}^\xc0\x93\xb2z\xc1l\xf9\xe4\xbf\x8b\x9a\x81\xc0\x980i\xc1^u\xe1\xbf\x7f\x05\x87\xc0e`\x86\xc1\xda\xd9\xda\xbf\x12\xa0q\xc0\xa5\x8e\x8d\xc1\xa8Z\xdd\xbf\x84y\xb2\xc0\xd7\xe3\x85\xc1\xa2f\x93\xbfp\xbe\xc0\xc0$_|\xc1\xe2w\xb3\xbf\x19\xc7\xcc\xc0?\x99\x8e\xc1\x87\x07\xf4\xbf\x06\x04\xbe\xc0\xa5h\x96\xc1\x05\x9f\xc7\xbfC|\xc3\xc0Nr\x8e\xc1o\xbbA\xc0l\xf6\xfd\xc0\x8fo\x8e\xc1$\xd0\xda\xbf\x13\x98\x06\xc1\xf8\'\x87\xc1{\xa5\x05\xc0_W\x02\xc1\x03\xed\x8d\xc1\x96\xd1\x16\xbfqY\n\xc1_\x18\x98\xc1_\xb8\x18\xc0i\x04\xfe\xc0\xf6\x05\x9f\xc1\xd3\xd3!\xc0\xe8\xb3\r\xc1\xbe&\x95\xc1\xc3\x88[\xc0c \xc1\xd2\x81\x9a\xc1\xaf\xc9\xdd\xbf\xb4\xbc(\xc1+\xba\xa1\xc1?\xf8\x01\xc0\xb2!-\xc1\x01\xe6\x94\xc1\xf1\xd1\x00\xc0\xb3F\x1d\xc1\x00s\x9b\xc1\xc1\x18|\xbe\xdb\xc7\x0c\xc1\xb5m\x9d\xc1v\xd4\xc7\xbd\x94\xe6&\xc1\xbf\xe3\xa0\xc1\xdb\xaeq>\xf6\xb6\x1d\xc1\xa0E\x94\xc1\xa7\xbf\x85>\x0c?\xb3\xc0\x98\x16\x87\xc1\xbe\xab\x9c>\x03$\xb6\xc0\x9ex~\xc1^@\x84?\xe01\xb3\xc0Vv\x91\xc1 \xf5K?\x06:\xb4\xc0\xf9\xa5\x97\xc1\x1b\x98E>\xe1=\xc3\xc0\xfe"\x94\xc1\x02R\x08@\xa8\xa7\xe2\xc0?\xc9\x90\xc1\xe0!\x0f@\xb1+\xc7\xc0\xde\\\xa0\xc10\xe5\x16@r\x85\xcf\xc0\x1dP\xa2\xc1d\x02[@1\xe3\xab\xc0\xd9S\xa5\xc1\x87\x98\xfe?\xb4#\xed\xc0\xc6*\xa3\xc1\x1d,\xb6?\xa78\x07\xc1\xcaa\xa6\xc1\x01"\x00@\xc3\xb8\xea\xc0j\xf9\xa1\xc1\x90\xd4>>\xa5\x1a\xae\xc0~\x82\x8e\xc1\xae\xc4P@td\xc3\xc0^\xa8\x8a\xc1@\xe0\x83@.\xae\x85\xc0\x06\xca\x8c\xc1U\xb1K@\t\xa5g\xc0\xc8[\x90\xc1\xd9[\x1e@\x11\xd4W\xc0\xfe\xd1\x86\xc1\x89\xca\x86@\xfa\xbd[\xc0b`\x8a\xc1\x1b\xb2\xa4@\x0c\x86\xf6\xbfP.\x85\xc1\x88rr@\xc7\xcc\xe4\xbf\xdd\xfb|\xc1\xeb`@@\xd0\xd0\x83\xbf\xe4\xc0\x81\xc1?e\xa0@I\x87\x8d\xbfO\xe3\x87\xc1\xf6\xa5\xb9@_K\xbc\xbf\xd2\x8at\xc1\x0b\x89\xaf@\xab\'\x0b=\x14\xa7\x7f\xc1\xfa+\x9a@\x19\x0b\xb6\xbfk\x13\x8f\xc1\xb3\x80@@\x97`\xf8\xbf\xac\x8f\x8f\xc1\xc7z\xfe?\x9f\x7f\xc7\xbf\xa5\t\x96\xc1;Km@.@\xef\x049\x96\xc1\xa1\xcf\xf0?\x9c@|\xc0\xa1Mw\xc1\xc6\\\x8f@ \\\x82\xc0\t\xb6o\xc1\x98\xa1\xb2@\xf1$\x8d\xc0\xed!l\xc1:3Z@)#\x8d\xc0\xf7\x84t\xc1\xf0d#@\xe4,\xa3\xc0\x1e\xf2W\xc1\xa2\x88Y@\xe5z\x97\xc0W\xb4M\xc1\xa8T\x85@\xd1\x11\x9f\xc0\xf4\xd2K\xc1\xf1I\x02@6e\xbb\xc0X\xf9@\xc18T\xff?\xcbT\xa2\xc0\x8d\xbaW\xc1M\x04\x96?\xb5\xd8j\xc0h6?\xc1O\xf2\xf9?\x8a\x99:\xc0\xfe\xa9L\xc1$\xf9\xec?x~R\xc0\r^:\xc1\xde\x00B@\xf6\xa4_\xc0\x19\x04*\xc1-\x1fG?q\xc3x\xc0\x91C9\xc1\xde\xbf3\xbf\xd7\x01\xa0\xc0\xb5\x08>\xc1\x93\xad5\xbf\x99\xe5H\xc0\x19\x8eF\xc1S\xc4R\xbf\x06\x82m\xc0\xcd\xd0.\xc1\xeb\x97\xd0\xbf\x8f\x9b\xd2\xc0\x1f\x8aY\xc1\x0c\xb4f@\x82V\xe4\xc0\x1c\x1aJ\xc1\xd9s\x85@F`\xe7\xc0\xedlk\xc1\xbf\x94I@\xbdN\xdc\xc0\xac\xc6v\xc1O\xea\'@\xbd5\n\xc1$\xd0n\xc1\\!]@6\x80\x12\xc1\x08\x17`\xc1\x0e\xc1Hl\x08A+\t\xd1\xc0\x99^7\xc1)\x8d\xd9@Qi\x9e\xc0(\x80A\xc19\x11\xfe@!\x1c\x96\xc0\x83R4\xc1Y\xe0\x0cA\xaa\x94\x82\xc0\xa0\xbeM\xc1[\xbe\xe8@\xc29\x8a\xc0\t\xfdW\xc1\xcbN\xd0@\x80E+\xc0\xeaRM\xc1\xe8\xb9\xf4@t\xac \xc0?U@\xc1\x9d\xc6\x05A\x93\xfa\x08\xc0EYc\xc1\xf7\x8b\x03Ay\xc8\x87\xbf5s_\xc1\xa9\x15\x08A\x7f\x95\x08\xc0\x9d\xd1q\xc1+\xe2\xef@wI;\xc0\xfa\xa1i\xc1J\xe7\x18Av\xc5z\xc0\x11,m\xc1\xf7\xca\x13A\x0bBE\xc0\xea1\\\xc1\x86\x8c$A\x00e\x10\xc0\xebr{\xc1\x0c\x02$A\xf6\x9b\xec\xbf\x00\x8b\x83\xc1b~\x19A\xd1dF\xc0\xa6\x85\x81\xc1\x1e\x8a,A\x8f\xec\xaf\xbf\x0f\xa9r\xc1S\x0f6A\x0c\x0b|\xbfA)\x80\xc1I\xc6@A/E\x01\xc0\xbf\xa8g\xc1\xb5\x86;\xc1\x1f\xd1\xba@\xd84\x1f> 5/\xc1\xb0\xf3\xa3@K\xbc\xe1?\x92\x862\xc1\xac\x9b\xd2@1\xca#@/\xc4.\xc15\x06\xbc@\xbd\xbb\x07@\xa31?\xc1\x15\xe5\xea@w\x18\xca?\xba\x93\x1d\xc1\xd7\x02\xec@D=w?\xe6v#\xc1r\x91\x02AI\xee8@\x1e\x98\x15\xc1\x840\x00Al\x8al@%\x00\x10\xc1x\xb7\xeb@$TY@\x9a\xb2$\xc1B\xbc\x07A!\xf4-@\xddW\n\xc1O\xe9\rA-UL?\x8c\x17\x0c\xc1*\xab\xd5@Fj7\xbeD\xb1\x12\xc1\xf6 \xcf@\xdfS\x9d?\xf2\x08\x06\xc1\xd1K\xb7@\xab\xac\x15?\x04\x86\xfe\xc0.t\xea@\xb1Sm?\xa82O\xc1\xf9\x02\xa2@\xb8w\xa7?\xea,a\xc1\x93#\xb4@\xe9\x15^?H-M\xc1\x90@m@\x7f!\xa6>\xbcbA\xc1\xa3zT@4\x7f\xb9?\xa7\xd2\\\xc1\xccQ0@z\xf8y?b l\xc1\x7f\x031@t\x12\x9f?[\x9cV\xc1B\x12\xa2?\xd5l\x03@\xbeYJ\xc1Z\xe3{?\xf1h\xbc?\xc2\x12j\xc1e\xec\x92>.K\x84?\xdeBz\xc1ud\xd3>\x1d\xbf&@2\xd3l\xc1n$\xa1>\xfd\xcd\x95?\xe2\x9ed\xc1\xcf\x0c?\xbf\xab\x85h\xbe\xcd\xa2N\xc1\xbce\x9f?\xc0\xea\xc3\xbeIM?\xc1NR\xe7?)\xb7a\xbf\xba\xfbZ\xc1>\xc4\xd3?]p\x00\xbf\xd3\x93J\xc1\xcd\xb8B>\xb3\xa2<@\xb4C_\xc1\x91dB@\x0e\xa2b@\xdd\xf1P\xc1\x1e\x1aj@\x8f\x91`@<\xb1r\xc1Z\xf3.@\xa2I8@\x95\t}\xc1\xd4]\x14@\x17R\x9c@\xfbxx\xc1\xef\x85D@\x89:\xa2@-ss\xc1fo\x81@!\xe7\xa0@g7\x88\xc1-\x86?@\xc9\xa7\xc2@\xe35\x8b\xc1\xf1\xe3@@?\x06\x8b@\xf9\x10\x8d\xc1\x9f~\xec?\x8d\xae\xa1@H\xeb\x8e\xc1M\xce\x9c?\x11*\x8c@k\xe9\x8d\xc1K\n\x87@7\xacQ@\xe9\x85\x8b\xc10\x14\x89@C\xb9\xa0@\x1d[\x8c\xc1\xa25\xa4@@\x1a\x8c@\xc9\xe8\x96\xc1#\x1b\x81@\xa0u\xbf@X8o\xc1\xa6\xbd\x11@\x11/\xbc@\x91ke\xc1e8\x9a?\x83)\xe8@\xc5\xcao\xc1`\x035@\x13\xd7\xf0@BMt\xc1\xb6"m@\xef\x87\x06A\x86Dd\xc1\x07\xde\x13@\x90\xde\x00A5\xf7S\xc1\x8e\xfc\x0f@\xa5~\x17A\xe9tg\xc1c\x84Y@\x83\xea$AB\xce_\xc1\xcb\xc97@\xec]\x1cA\xa6Ix\xc1c\x87_@R\xa3\x11A\xa4\x89]\xc1\x815\x97@Kl\x18A\xd0\x12K\xc1\x84\xce\xa2@\xce\x9c\x05Aq\xc9h\xc1\xebY\xae@\xa8Y\x0eA\x92\xc8j\xc1\x1e\xe0h?9<\x13A\x87\r\\\xc1\x99\x13X>]\x05\x0eA,\r\x7f\xc1\xd1\x13\xfa>y\xf1\x08A\xf3\x81\x85\xc1\x10\xd9\x8a?f\xfc\x15A\n\x11\x83\xc1\xa1\xabV\xbf9{#A\xb0\xc7}\xc1\xbc\xf7\x8d\xbfy`\x1aAn\x17\x8f\xc1\xfa\x8bt\xbf\r!%AM\xfc\x91\xc1"\xe0\x0f\xbe*<"A\xcfd\x90\xc1\xa3\x08\xf9\xbf`v\x06Aoh\x96\xc1\x9f\xc4E\xbft\xd8\nAh\xe2\x9e\xc1\xe8mE\xbf\x00?\xf6@4\x16\x95\xc1\'_\xcf\xbf\x00\xdf\xef@\x80\x17\x94\xc1\xfc\xda\xdc>:\xd3\xff@.\x02\x94\xc1\'x\xc9?J\xb2\xc8@\xdc\xa3\x92\xc13F\x87>\xce\x03\x06A~\xe2\x7f\xc1\x87M\xfc\xbf9\x9d\x0eA\x86\xfbw\xc1\x0f\t>\xc0W\xc4\xe1@!o\x80\xc1\xaf\x82\xe6\xbf\xd3\x01\xd5@0\x83\x84\xc1T\xfb~\xbfg\x97\xc2@\x9b\xd2z\xc1\xd2\x873\xc0~\x9d\xce@\x1b\xf9\x80\xc1\xc1\x8co\xc0;\x0b\x95@\xc1\xb7\x81\xc1y\x0c\x14\xc0\x8a\xf3\x88@P/|\xc1\x92+\xac\xbf\xd3\x80\x99@<\x99\x8a\xc17u\n\xc0\x9c%X@\x12k\x80\xc1\xe0\xf6N\xc0\x1dgL@\xfe\xb0n\xc1n7[\xc0\xa4\x01c@A\x9d\x85\xc1\x18\xc1\x92\xc07\x1di@6k\x8e\xc1\xcdq\x94\xc0`\x12\x90@\x86j\x83\xc1V\r\xa4\xc0d\xaf/@\x89,\x83\xc1\xd4\xbb\xa8\xc0\xb9\xa7\x06@\x0f\x01\x85\xc1\x0c\xdf-\xc0\x99B\xec?\xbe0\x82\xc1\xfdM\xd6\xbfQ;\xff?\x0b\xb3\x8d\xc1\xaeJ(\xc0\xa5\xcc\xa9?T\xba\x82\xc13\xbeb\xc0\xaa\xcc\xc0@\xb4\xbdb\xc1XaC\xc0\x0f\xe1\xb8@\xac\x85[\xc1\xd0T\x83\xc0\x1d!\xc9@\x86[W\xc1\xb3i\xfa\xbf}\xc5\xd6@\xc6\xcb_\xc1\xa5\xb0\x9e\xbf\x07\x94\xc3@\xe9\xa7@\xc1\x84:\xff\xbf\x0e\xe7\xa6@}E<\xc1\x97\xb0&\xc0\xe9,\xbb@\'\xb08\xc1\xd1,\x11\xbfQ\xd6\xd1@c\x02@\xc1\xc5r\xfc=\xac\xfd\xbb@\xc6H \xc1\xf4\xa2\xf3\xbelN\xac@\xbf\xbe\x18\xc1I\xc9\xa4\xbf\xd3^\xdc@\x01\xdf\x1a\xc1!c\xfd\xbe\x8ad\xaa@\xab\x00\x1b\xc1|+\xda>\\\x99\x8c@\x9dx?\xc1\xa2l]\xbe\x99\x86\x88@\xd7$P\xc1b\xed\xae\xbe<\x9br@&\xaa7\xc1\tzy\xbf1\xc9\x80@\x0eW9\xc1seB?\xe2\xa4\xea@\xc6\xdb4\xc1\xb1\x9e$\xc0\x00\xb2\xe6@\xe5\xda\'\xc1[\xc0]\xc0\x0f@\x08A\x80q<\xc1f\xd0\x13\xc0%b\x08A\xa8\x00G\xc1/;\xcd\xbf\xd5\x1d\x1dA\xdf\xf62\xc1k\x151\xc0Q\x9e\x1bA\xd5$"\xc1\xd0E+\xc0h\xa80A\xa9K:\xc1\xbe\xb5\xf9\xbfs\xb9/A\xfeYK\xc1[\x1f\xef\xbf]\x87DAk!2\xc1\x12{&\xc0#OCAE\x83\x1f\xc1\xeb\xe2)\xc0\xec\x02FA\xb7\xf48\xc1\xa1\x0ch\xc0\x18\x1dSA\xef\xc26\xc1\xc8(\xf2\xbf#\xb6-A-\x801\xc1^s\x17\xbf.6\x1eA\xf5\xbe5\xc1{F\xd1\xbd%\xc90A$\xf6\x1f\xc1\xf0\x9f4\xbfM\x1d=A\xbda;\xc1\xa0\xdd\xde>Ea\xc1\'u\xe1\xc0\\\xa7\x11A\t<3\xc1\xd0\x12\x01\xc1]t\xee@\xbd\xbe<\xc18\xd8\xd3\xc0\r\xa1\xe1@\x9fXC\xc1\xa92\xba\xc0\xe4%\xd1@\xfc\x81-\xc1\xdf\xfa\xe6\xc0\xea\xee\xcf@\x1a\x081\xc1d \x04\xc1\xcd\xe2\xa3@y\xe4/\xc1t\xf2\xcf\xc0T\xef\x91@\xd7\x14"\xc1)\xbd\xd9\xc0\x11\x9a\xaa@\\\x91/\xc1\xf5\x91\xad\xc0\xb6\xa9\x90@\x91\xd9E\xc1\x00\xb6\xdd\xc0T\xc7\xa8@D\x16R\xc1@\xd3\xd0\xc0LBM@\x02YL\xc1\x85\xa9\xc7\xc0=5\x17@o\xb7B\xc1\xe6U\xd6\xc0\xa0\x95O@`\x99K\xc1W-\xa3\xc0\xf6\xc6G@\xe8\xbb]\xc1K\x80\xd0\xc0\xccf\x89@B\x85H\xc1\x0e:\x07\xc1\x82\x80\xa7@\xea\xe1I\xc1\'5\x10\xc1\xc9\x82q@\x88_9\xc1\xbdU\x0c\xc1\x9f\xa8h@\x86\xa7V\xc1\xf7I\t\xc1\xe5\x0b\xdb@\x15\x04\x16\xc1\x9a\x8e\xe5\xc0\n\x16\xce@\xff\x0b\n\xc1\xd0\xc8\x00\xc1\xcf\x0c\xf3@r\xf4\x0f\xc1\xf4o\xc1\xc0\xa8\xa4\xfc@z\xf9\x19\xc1oG\xac\xc0@\x19\x04A\x18\x88\xf6\xc0\x03\xd6\xbf\xc0\x92\x1f\xef@6&\xdd\xc0\x8db\xc5\xc0\xdd\x90\x0cA\xb8m\xec\xc0f \x94\xc0\xe8}\x15A\xb5;\x04\xc1u\x81\x88\xc0(\x1b\x1aA\xf2\xed\xc3\xc0c\xae\x91\xc00}\x12A\xaa\xcd\xa9\xc0\xb7v\xa4\xc0"\xc8*A4n\xc5\xc0E0\xa0\xc0c\xa0\x1bAhQ\xbe\xc0\xaf\xf5]\xc0\x01\x88\xf1@\x9c\x9b\xe7\xc0B\xc2j\xc0g\xc1\xe7@\xc7\x82\x03\xc1\x99.K\xc0|\x8a\xd6@\xf3_\xdb\xc02i\x86\xc0\xc7\xbd\xfb@\xb4\x0c\xd2\xc0N\x919\xc0}\x8f\x15A\xfb\xce\xeb\xc0\xcbi\xe0\xc0\xe4<\x14A]\x8d\xca\xc0mn\xf4\xc0\x12`&A*\x87\x03\xc1\x96\xb4\xe2\xc0\x95\x08&A\xf5\x10\x12\xc1\xc7\xfe\xd4\xc0\xe6\x079A\xceq\xfa\xc06\xe3\xfc\xc05W:A<\n\xd9\xc0"\xae\xfe\xc0BGMA\xe4H\x05\xc1=\x08\xe5\xc0\x93s\\Ag\xf7\x02\xc1\xe9\xa1\xf7\xc0\xf0\xecKAh\x9c\x17\xc1\x88\x81\xe3\xc0XHRAu"\xfc\xc0\xb4/\xb5\xc0\x1fUAAeQ\xfc\xc05\xaa\xa6\xc0\xbe\xd4WA\x1a^\xda\xc0I\xc9\xb5\xc0\x8a\xa9_A\x95\x0c\x0c\xc1\xdf\x8e\x99\xc0\xf8\x15YA\x02%\x1d\xc1A\xf5\x9e\xc0\x063^A\x9c\x06\x04\xc1k\xbfw\xc0Q\xe0vA\xbe\x88\r\xc1\x11\x96\xa6\xc0`\xc7\x7fA\xf4\xfb\xfd\xc0D\xd0\xac\xc0\xb8zwA\x95\xa5\x18\xc1\x14\x1b\xc5\xc0\xe2\xad\x80A\x87\xe6\x18\xc1\x89\xf2\x83\xc0\x99d{A\x03\xf7(\xc1\x93\x05}\xc0\x06\xa8}A\xea-\x10\xc1\xd9\x17R\xc0\x87\x15\x89A \xf9\x19\xc1N}\x84\xc0\x9089A||\x05\xc1Z\xb0\x15\xc1X\x10CA\xb6\x90\xf5\xc0_\x07"\xc1K\xdd-A\xd9\x84\x17\xc1\xfcy\x1b\xc1\xf9\x0e\'A\xc5\xdf \xc1\xc6\xc7\x10\xc1\x88\x94*A\xcd\xb0\x1c\xc1\x80\xda2\xc1\xa2C9AP\x82\x17\xc1\n\xfd:\xc1\xa0\x1b$AT\xf63\xc1\xc2\xc65\xc1,\x0f\x1dA\xb3\xbd5\xc18\x80F\xc1\xb8b\x17Ai\xa57\xc1c\x8d(\xc1\xa4\xa58A \xcdA\xc1\xb113\xc1\x84\xe3EAn\x03;\xc1\xb1\x91;\xc1\x97\xef6A\xde\xb3R\xc1\xce\xe99\xc1%\x7fBA{\xadD\xc1\xd3\xab\x1c\xc1\xef5TAX\xaa;\xc1\xdd\xc6\x17\xc1\xbe\xcc9A9\xc6Q\xc1rk\x0f\xc1l.\x19AC\xae\x0c\xc1\xb5l;\xc1k\xfb\x19A\xdf>\t\xc1\xd3\xbbN\xc1\xfcr\x0bA\xdb\xf7\x02\xc1\xec~.\xc1*\x08\nA}R\x06\xc1h\x96\x1e\xc1\xb0\x99\xfe@\x11\x1a\xe0\xc0\x12\xe76\xc1p\xb3\xf0@\x1e\x05\xeb\xc0\xbc\x9cF\xc1Tp\xd8@h\xeb\xd9\xc0\xcfK&\xc1\xf0P\xe8@\x8d\x01\xd5\xc0\xc9\xfd\x16\xc1\x8e\x84\xc8@\x0b\xb3\xf7\xc0\xf0\x8c$\xc13C\xbb@\x1bN\xb3\xc0&\x00,\xc1\xb4\x9c\xcd@\x0er\x96\xc0\xe9\x83*\xc1[\x9e\xa0@\xe8\x17\xb1\xc0\x04\x8d\x1f\xc1/\x81\xa7@\xa0\x1f\xb7\xc0\xd1\x12C\xc1\xa3\x03\x94@q\xa7\xd4\xc0G\x06F\xc1$/\xc3@\x1aV\xb8\xc0BPN\xc1\xd9\xf9\x8b@\xbb\x10\x90\xc0\xd8\x95H\xc1\x16\x90Y@\x83^\x8b\xc0\x18\x9aE\xc1\xbb\x05\x9c@\x93\xc7`\xc0\xa5\xe9U\xc1\xa4>\xc5@\xdc}^\xc0\xce\xbf[\xc1\x9cp\xd9@\xf6\xb4\x83\xc0\r9U\xc1Xv\xcf@Bh1\xc0\x1b\xc9f\xc1:\x95\x82@xv"\xc0f?\\\xc1l\x10I@\xc6\x8c(\xc0\xc6ja\xc1\x16p\x94@*V\xf0\xbfu\x1ce\xc1\xb0,\rA\x9a\xd7\xb6\xc0\x9bv:\xc1\x08W\nAn\xbf\x9a\xc0\xdbsH\xc1\xb4\xbc\x1dA\xac\xc3\xb0\xc0\xacK-\xc1\x0cU A\xf3\xcf\xc6\xc0\xf9\x0e"\xc1\xeex-A\xa7\xaf\x8e\xc0/\xd90\xc1\xc8\xc1$A\xd1\x8bh\xc0\xbe-7\xc1&\x8d9A\x06\x8b\x84\xc0K\xef\x1b\xc1\xdffAA\xfbQ\xa2\xc0\xa4#\x17\xc1c\xe0JAjnF\xc0\t\xc1 \xc1\xc6@DA\xd8%\x17\xc0)G,\xc1~\x0bXA \xa5e\xc0GN(\xc1\xf0@PA\x056!\xc0\xfe\xb2\x11\xc1@\xd0*A\xf4\xbc`\xc0\xd3R\n\xc1\x86D\x1cA\xd2\xc7\x81\xc0t=\n\xc1\xc4\xc4%A\x10\x83 \xc0c\x89\x11\xc1?\xe33A(\x14S\xc0\x91\r\xe7\xc0\xc5AEA\x83\xa5R\xc06\xb9\xe6\xc0j".Ab\x19\x87\xc0}\xce\xd2\xc0\x8eA.AT?\x16\xc0,\xd0\xd7\xc0\xfe?;AE(\x9b\xc0\xc0\x02D\xc1 \xf4DA\x1c\xb2~\xc0\x84&M\xc1r\xe9;A\xd8\x01\xc2\xc0\x8d\x85K\xc1\'\x9d6A\x05\x9c\xd8\xc0\x19\x96A\xc1\x00\xe4FA\xbd\xe1\xc8\xc0\xf0\xfe_\xc1\xb9|VA8M\xb7\xc0\x0bL`\xc1@\xf4OAN\x95\xf7\xc09u`\xc1N\x8fCA.\xa4\x07\xc1|Ya\xc1H\xd0\\A\x9ao\xfa\xc0z*S\xc1\xa7\x18ZA\x08\xf0\xfa\xc0\xb8\x96n\xc1\xb9D9A\xdf\xb7\xbb\xc0\x1e\x16s\xc1`\xfc3A\x9c\xad\xd4\xc0h}\x80\xc1b\x153A\x9b\xa5\x93\xc0\xff\xf8u\xc1\x0327A\x10\x19}\xc0\xf9\x85j\xc1\xae\x04%A\xf70\x82\xc0%I\x83\xc1j\x90&A\x01e\x93\xc0\xf1x\x8a\xc1-\xb6\x0bAk\xdd\x83\xc0P\x86\x80\xc1\xcb\x1a\x05A\xe3\x80K\xc0\xe9k\x82\xc1\xc3\x19\x0bA\xb2,\x82\xc0\x12\xd2n\xc1\'\x90\xfb@\xb1\xc7\xa6\xc0\xaeC\x85\xc1\xcdK\x03A\x99\xab\xb5\xc09\xac\x8c\xc1K\x95\xdc@\xfe\xcf\x96\xc01\xd2\x86\xc1\xf4\xd6\xf1@\x8e\xbf\xc9\xc0\x1a\xbcy\xc1\xacB\xce@GM\xcb\xc0H\xaaq\xc1@J\tA\x80\x99\xe4\xc0A]u\xc1\xf0\xb4\tA\x03_\xf3\xc0\x98Lg\xc1\xd6\x83\x16Af\x0c\xdf\xc0z\xb2}\xc1\x96N)A\x8c\xe3(\xc0O\xe9\x85\xc1\xe6\x9e2A\xb8\x1c\xef\xbfd\x1c\x80\xc1\xdd7"A\xa3\xdf\x17\xc0\xac\xed\x8f\xc1_I\x1bA\xd7@F\xc0e\x11\x94\xc1\xa1!$A\x1f\x80\x83\xbf9Z\x95\xc19\xfe4A\x9c\xf7[\xbf\r\x9a\x97\xc1\xb5i\x15Ae\xea\x8b\xbf\xcd\xcf\x9f\xc1+\xc5\x07A\xf0\xde\xd7\xbe\x1e\xc9\x9e\xc1\xd7"\x0eA@\xa0\x05\xc0\x91S\xa1\xc1\x98\x9c"A\xfc"\x1f\xbf\xd4\xb4\xa9\xc1e$\x18A((\xd9\xbe\xd4\x9f\xb0\xc1\xf0\xbc.AT\t\xae\xbf\xda\xff\xac\xc1\xd0M-A\x07\x8b/?w?\xa8\xc1\x93\xe5#A\x047\xed?\x9d\xbc\xa9\xc1!&AA\x9e:\x1b?\x877\xa7\xc1\xc2K\x1dA\x01\xb8+>\xcd1\x8e\xc1\xc7\xb8(AFw\x97?\xd0\xde\x8c\xc12\xf3\tAc\x9e\xcb=X\x9d\x89\xc1\x83$\x00A\r\x139\xbf\x8f\x06\x8a\xc1\xee^\x00A\xeb\xa2\x9b?\x10;\x83\xc1v\x1f\x02A\x19\xde\x08@\xd0\xb4\x87\xc18\xcf\xcf@\xa7\x93F?\xc2}\x82\xc1\xc5\xff\xc2@S\xb1\x1d?V\xd2\x8a\xc1\xad\xa2\xbd@k\xf0\xcd?\xfc\x05|\xc1s\x81\xc5@\xbc\x17\x03\xbf4\x05y\xc1x\x8a\x9f@\x00\xe2\x13\xbf\x92\xfcr\xc1\x92J\xde@\xb6\xe8\xb8\xbf\x90\xb2v\xc1K\x04\rA\'\xfa\xc1?:Sr\xc1\xd4\xc6\x11A\\[*@\x1f\xeek\xc1\x8d\x13\x13AwW\xc8>>\x1eh\xc1\x87\xb5\x0eA\xba\x03\xf4\xbe\xdd\x1dm\xc1\xb4\x9c\x1fAM\xb6\xd9>\xb0\x11T\xc1\xba(\x17A\x92\x9e|?[wI\xc1$\xca Ak\x9d\x82\xbfa^L\xc1x\xd7,A\xeb)\x99\xbf\x8dC?\xc1\xeb\x86\'A\x82\xae\xc8\xbf\x14$[\xc1\xef\xfb\x06A\xe8\x1a\xd8\xbfF\x01C\xc1\xe8\xd7\xfa@\xb8\xee\xbc\xbf\xa3\x1dV\xc1c76A\x8c\xa7{?_.W\xc1G.@A=n\xb0?.4G\xc1\x7f3?A\rl\x83?\xce\xc2j\xc1qZ5A\xa7\xff4?\xa4^v\xc1EBSAC\xd4\xdc?\x9e\x9bo\xc1RS_A\xd5=\x97?\xf0\x90e\xc1\x112[A\xe5\xf6\xcf?\xc1X\x83\xc1\x07\xe5SA9\xd2??\x82|\x87\xc1\x84bmA+\xce\xb6?\x00\r\x83\xc1\xc0\x9aXA\x1e\x0c8@\xde\xfa\x89\xc1K\x17bA\\\x86k@fk\x86\xc1>\x18GA\x8fSH@\xafG\x89\xc1?\x15`A\x83e4@\xc8-\x96\xc1\x9f\xfcWA\x8f\xd2\xf3?\xdc\x89\x99\xc1}\x92qA?\xcd5@\xda\xad\x98\xc1\x07\x1cVA\x10\xd5\x82@\xb0L\x9a\xc1\x88\x90SA\xab\x96\x9b@%\x1a\x95\xc1\xf64GA\x83~\x84@\xd8\x00\xa2\xc1\x98\xdbEA\xe7\xa2P@A\x92\xa9\xc1\x89QKA\n\xe1\x18@j\x1d\xa8\xc1aR6A\xe32B@"\xa8\xab\xc1??8A\x05}\xa2@}#\xa1\xc1S\xc54A*\xb3\xb0@\xf2\xfd\x99\xc1\xf9;/A\xfb\x88\xa2@c\x91\xa7\xc1.{TAD\xffJ@ \x96f\xc1\xa7beA\xb3Re@\xf8\x01^\xc1\x85xBA\xa6\x95~@F\xe9g\xc1\xb4m6A\n\xf2^@\xbe\x13n\xc1\xc8;@A\x9d\xf3\xae@7Lf\xc1G\xc8OA\xa4S\xbe@\xc0,j\xc1\xe6"-A\xbe\xe7\xbd@\xeb\xfdr\xc1\xfb},A\x19\xd3\xe0@\x8b\x17t\xc1\x00\xc9\x1eA\xc9\x03\xb2@u#i\xc1H\x8e-A\x1d\x90\xac@\xc7\x96\x84\xc1%\x02:A\xfe\x82\xb7@N\xa0\x8b\xc1.\x0b\x1eA5\xea\x8f@R\xd3\x86\xc1\x1d\t\x1fA\x8e\x82\x87@\xf1%\x8e\xc1\x16^\x16A\xa2\xec\x81@\xb4\x96\x80\xc1\x90;=A\xb5g\xb7@\x9b\x7fN\xc1\\\xafGA\xb0\xa7\xd1@\xce@D\xc1\xd1\xf4/A\x8f\x9d\x9b@\x9b\x11E\xc1\xfa\x13(Ad@\x89@?\xccO\xc1\xfd,1Af\x1d\x8f@\xa8\xe6.\xc1\x14\xc10A\xa2\xb4\xaa@\xde\xeb$\xc1\xb0\xa2?A\x95\x11x@\x19\x80/\xc1\xf1\xf9\x1eA5\x08i@h\xf3*\xc1\x86\xde\x13A tN@\xda\xdd9\xc1`s\x1aA\x9e\x0fY@\xdd\xd4\x16\xc1\xeb\x86"A\xe60x@T]\x0b\xc1(k\x07A\x1aV$@\xdb\xfa\x11\xc1*&\xf7@f\x804@\x01\xd3\x1d\xc1W\x8e\x0cA\xd1\x17\x8b?\x89\xf6\x10\xc1o\x00\x11A\xaf\xbeI?0\x9a!\xc1\x02\x15\xff@\x9e`\xe0>x\xa9\x0b\xc1\xbaW!A\x02;R?TY\x05\xc1\\\xd94A!\xb7\x1d?L\xeb\x0f\xc1\xe8-4A\xcf\xad#?Qz!\xc1\x82LHA\xf5\xe5\xa5>\t\xfe\x04\xc1\x04aVA\xf1\xa2\xa5=\x90p\r\xc1A\nFA#|U>L\x19\xde\xc0,\xe2SA\xfaMY\xbd\xc5\x90\xcd\xc0\x9e@"A\xd9\xf1n?\x8a\x01\xdc\xc0P\xc8\x13A\xd0\xd2\x9a?AK\xca\xc0=^3A\\\x1e\xc5>\x1e.\xc6\xc0M\x902A\xfd\x86+>7G\xa5\xc0*P\xfa@\xfe/A@&\xa3\xf7\xc0\x8ey\x06A\xa2\x13m@\x06\x94\xdb\xc0\x9c]\xd1@\x92u(@Q\xbc\xf0\xc0X2\xbe@\x8d\r\x0e@\x1b:\x03\xc1^\r\xbb@\x08\x9f6@\x9a\x93\xc8\xc0S\x8a\xcd@\xf9\xf6b@\xfc7\xb4\xc0\xe8\x14\x92@\x8byg@I\x1d\xd3\xc0\xf3\x7fy@9\xd0A@,\xd4\xe7\xc0\xd3\x8e\x9d@\xaa\xe9\x92@)h\xe5\xc0\x0b\x15n@\x16l}@\xe42\xae\xc0p5]@G}@@[T\xa0\xc0\xd2\x18\x89@\xc9\xf5\x9b@\xe6w\x8c\xc0\t\x9a\x9a@\xc5|\xb5@%\x9c\x9d\xc0\x7f\xfd\x9f@\x9el\x8b@2\xb6n\xc0\xbe\xa9X@sa\xab@e\tq\xc0}\xa8\x19@\x07\xbf\x90@\x9a\t\xc0\xc0\xfa\x97\xed?U\xf2j@\xc2\x88\xd1\xc0\xbeD\x1e@q\xaf\xab@\xd8\xe2\xd6\xc0\xa2n\xda?\xd1)\x9d@\xe4g\xa5\xc0]\x00\xb3@%O\xcb?2\x9c\xb2\xc0\r\x05\x98@7\xd3M?u*\xc2\xc0r\xdd\xc8@\xc7\xc9\x9b?\x9f\xa9\x90\xc0nQ\xe2@p\x1f\xd8?\xae\x0c\x83\xc0,\xa3\xbc@\x8d\xd45<\x85fq\xc0\xfe\xd3\xae@\xe9IA\xbf\x04\xa6\x8b\xc0\xdeC\xe4@\xbe\x06(\xbfC;H\xc0\xd7d\xdc@\x0f\xb4\xaf\xbf\xf3\xc2\x11\xc0\xa3h\xf2@\xed\xba\x84>\xbeF)\xc0B\xcd\x00A_\x9a\xb7\xbfB\xe0}\xc0\x7f\xe0\x03A\x9e\x19v\xbf\x87\xd9\x9e\xc0\xe8\xfa\x16AJ:\xbe\xbf\x98\xd9[\xc0|\xc2\x17AX\x1e\x03\xc0\xdc\xaf\x1e\xc0\xd2c\x1fA(\x07\x05\xbf\x8e\xf5S\xc0~\xe7 A\xd8\xa1\x01\xc0\xd5\x8e\x87\xc0\xa3F\xf3@\xd4;;\xc0\x05\x87\x85\xc0\xb6@\xd3@0fD\xc0\x9fL\x92\xc0{\xc8\xf4@\x0e(d\xc0A\xd3I\xc0d-\x05A\xba\xffR\xc02R\x9d\xc0\x00]\x9b@\x9b\xdd\x93>\xf0,/\xc0_d\xa3@\xda\xc8s?&\x96\xd9\xbf\xc9&k@Y\xfe\x8f\xbeK\x96=\xc0"\xc8i@\xe0\xcaT\xbf\x7f\x8co\xc02# @\x1a\xd0\xab\xbe~\x1e\n\xc0\xa7\xf4&@\x00\xa2\xe7>\x185\xb7\xbf3\xad\xa2?\x08\x8e\xa6\xbc\xa90B\xc0\x08-\xa8?\xfay\xf2\xbe}{\x83\xc0\xc9s\xa6?\xb6v\x88?\xa1FS\xc0<\'#\xbd\t\xd3\x82\xbe1\x86\x17\xc0\xee\xa0\x84\xbe\xb9\xf6\xc9>\xea\xb8\xa7\xbf\xd2\xc9^\xbf\x19\x85\x8f\xbf\xfd\xc62\xc0Kk\x16@\xad\x86\xcf\xbf-\x9f\xac\xbf\x8bn\x1f@WF.\xc0\xe8D\xe5\xbf\xe2X\x14@\xee\xd9\xbc\xbf*\xe93<\x81\xa0\x18@N\xc0\x17\xbf?\xcd\xca>c\x97\x0f@w\xf6\'\xc0\xad\x08c?u\xcc\xc4?\xf8vS\xc0\x1e\xdd\xc9>\xbf\xf9\x00@\x1e9\x0e\xc0xG\xf1?9.]@\xdb\x9e]\xc0\xed\x1d\x90?\x17\x13X@\x8c\xfa\x93\xc0\x11\xe0\xb8?YD\x94@eu6\xc0!\xd6\x88?\x8f:\x97@Z\xd4\xf6\xbf\x1e4C?:\xe5\xbb@>\x08h\xc0\xbaS\x8c?M,\xb6@\x8a]\x93\xc0v\x1a\xd0?\x8bp\xcc@\x97\x19r\xc0o\xb9\xa8\xbe\xfc\x9f\xd7@8\xe52\xc0\x88u/\xbf)\x0c\xb1@_s\x84\xc0)wd\xbfn\xfc\xed@k#\x9b\xc0uG\x00\xbf6\xbe\x0bA\x1e~\x92\xc0\xcbvh\xbfD\xd1\x12A\xcf\tb\xc0\xc5\xd1k\xbfD\x15\x1bA\xa7\x8b\xb2\xc0\x9d\xc9l\xbf\xc6^*A\xb2\xc2\xa8\xc0\xeb\xae\x93\xbfC\\\x16A\xbe(\xdd\xc0\xa2!\x19\xbfMw#A&\xcd\xf5\xc0\xcf\x13 \xbf\x9e\xbc\xe4@ y\xc5\xc0):\t\xbe\x91+\xc7@\x00\xfd\xcf\xc0k\x95\x96>\xd8\x1b\x01A\x85a\xe7\xc0`k\x04\xbem\xc0\xfa@5\xae\x02\xc1\xec\x97\xb8>^\r\xdb@\x7f21\xc0\x93\xaf\xf9?\x11F\xd5@\xce\xa0\xc6\xbf,\x9f\x02@\x9bQ\xfd@\x02vS\xc0\xfe\xd1 @\xd3v\x11A_\xef\x1c\xc0\xee\xd13@\x19\xc9\rA\xb2e\xea\xbf\x04"m@2\x9e\x13A\xe7N\xe2\xbf\xea\xa6\x02@vW\x02A\x11i\x96\xc0\x1c+6@F8\x01A>>\xac\xc0\x92y\x00@F=\x18A\xc8 \x96\xc0x?b@#8!A;j\xb4\xc0\x04\xe7V@/B\x16A%H\x91\xc0)\xcf\x93@\x97\x02$Ai\xefY\xc0\xcc^C@z\x02/A$nO\xc0}"v@\x98\x00.A\xc6\xbcf\xc0\xca\x86\x0c@(\xa3\xe4@X(\xa4\xc0jaz@2\xc6\xcd@\x8a\x16\x89\xc0\x0f\xd1\x8f@\xe2\x05\xe1@g6\xcd\xc0\xed*\x87@\xf4\xc6\xef@\xbe\x8e\xe4\xc0\x15"l@\x9a\xdc\xc5@\xe2\xeb\xdd\xc0\xf21\xaa@\xc1\x91\xad@\xfe\x07\xc6\xc0\xd9Y\xb4@$\x95\xab@F\xf6\x03\xc1\x88o\x9e@\xc3L\xa6@]\xcc\r\xc15\x03\xba@\xc8r\xbc@hi\x0e\xc1\xa8t\x85@F\xb7|@8\x93\xf9\xc0\x83\xc9\x8c@\xb0\x00_@\x94-\xe2\xc0\xd7\xd1\xa1@\x8c\x87R@\x00{\x0b\xc11\xb7\x8c@\x07P{@\x8dO\xe5\xc00i?@&\xd0\x98@\xf4\'\xcf\xc0\xf4"2@\x88\xe3G@\xb3\xf2\xcd\xc0\x0fYE@\x8c\xcbc@R:\x03\xc1\xdbw\xf6?\x83[\x89@ \x0f\x0f\xc1\xc5F\xea?)(-@:\xd0\x00\xc1F\xadu?\xa1\x8d\x02@\x07D\xdd\xc0)3n? \x88\x1c@\x9f(\xc2\xc0\xab\xde\xad?\xb7\x8e\xac?\xb0\xff\xda\xc0V\xe1]>\xcc\x15!@\x17\x96\x10\xc1\x9b{F=Sr@@\xeb\xdd\x1e\xc1QPq=\x93\xde\xfd?\xf3_\t\xc1\xb3\xf4G\xbf\x84\xb9\xdc@\x02\x8c\xe4\xc0.\x9e\xd3@m\xa8\xce@|)\xd7\xc0\xcep\xf5@\x95\x9e\xff@\x15\x05\xfa\xc0\x9f\xb8\xd1@3p\x05A\xd4\xee\x03\xc1\x82\x98\xb6@Ki\x0cA:\xa7\x04\xc1\xebT\xf4@J\xf3\x06AHs\x01\xc1\xd0P\nA#\xde\x0eAu\xaf\x1c\xc1\x05\xd4\xec@\xc1\xdb\x1aA\xde\x9c#\xc1N\x82\x01A\xda\x1c\x16AHl!\xc1\xda\xbd\xc1@\xdc!\x14AQ\xaf0\xc1\xfe\x19\xbe@~U\xf1@\xffU(\xc1\x86\xaf\xf4@\xac5\xd8@\x1f,$\xc1\xb9\x8d\xdd@*\xd2\xe2@\xa4{&\xc1%\xd7\nA\xbe\x9c\xf6@\xd5\xdc8\xc1r\x98\xef@\xf9o"A\xe8`\xf4\xc0N\x9e\xee@w\x9a&A\xaf6\xd9\xc0\xb6W\xd3@\xc8\x9e2A\xbe\x88\x00\xc1\x03C\x04AK\xb2.A\xf2m\n\xc1e%\x10A\xf3\xd5HA\x16{\xf4\xc0K\xbc\x01A\xd7LGAD*\xd2\xc0S\xda\xfc@\xb2\x12UA\x84\xaa\xfa\xc0\xd3\n\x17AE\xf8ZA*\xdf\x0e\xc1m\xfc\x18A\xc9\x9bjA\x16o\xe2\xc0\xd5\x85\x16AiekAS\xe2\xbf\xc0\xa9\t\x14A]\xebsAu\'\xf4\xc0?\xf1\nA\x1a\xcbqA\x0e\xa8\xe8\xc0\x96\xa5&A\xaf\xdbGAF\xe8\xeb\xc0\t\xdd*A\xfeKTA\xa1\xc1\xf0\xc0\x89W8Ao\r8A\x07"\x00\xc1c\xb2.A\x1d\x9a@A\x0c\x16\xbc\xc0/\xc7*A\xc7\xf62A\',\xbc\xc0\xaak\x1eA\xc3MMA\x86\xa2\xa5\xc0\xd19&A\xef\x97:A\x9dd\xb1\xc0\x1ee;AF\xc9TA\xe1\xd3\x03\xc1\xa8\x0e\xdd@[\x17_A\x84\x80\xf2\xc04\xae\xc4@\x8b\xdcQA\x11\x99\x18\xc1\x05\xa2\xd3@\xf3QMA\x80V*\xc1\xa3\xae\xf0@\xd7\xb5=A\x1d\xc71\xc1\xa5x\xed@\x8a\xd2QA"\xfb&\xc1\x8b\xc7\tA\xe4\x06_A\xd7\x90 \xc1\x87\x8b\xaf@[\x98nA\xeb\xf5\x1a\xc1\xc0\xb0\xaf@hv\\A5O8\xc18\xea\xb1@XCjAX/B\xc1\xa7\xad\xa2@;\x86MA\xea,=\xc1\x17\x83\xa1@<#\\AA\\<\xc1x.\xe1@A\xedRAu\\L\xc1\x9e\xe4\xe8@\x85\xdblA\xca\x81<\xc1eD\xef@\x1b\x89XA\xdcv\x18\xc1F\x0c\x83@\xaf\xa5eA\xeaG\x17\xc1B0L@\xd8\xdbDA#\xd9\x10\xc1g\x17\x81@\xf0o\x8aA\x15\x18\xd8\xc0\xcd\xdcZ@6\xf1\x8eAc\x1a\xbe\xc0\x16\x8cU@a\x10\x8fA\xc5\x10\xf7\xc0\xe6\xe3\x8d@x\x9a\x97AFK\x01\xc1M#\x88@\xaf6\x89A\x83\x13\t\xc18\x88\x91@\x85]\x90A\xc4G\xdd\xc0\xcfC\xb7@\xecQ\x98A\xd0i\xc2\xc0\xbd\xfd\xb8@bb\x89An\xf4\xe3\xc0\xd8\xb0\xd4@g\xec\x8aA=&\xef\xc0\r\xd6\x02@\'\xae\x92A8\xe6\xed\xc0\xcfu\xa4?h\xb2\x82A\\\x1c\x03\xc1\x9e\xcc\xd8?\xa1gwA\xc7\x05\x04\xc1\xe99\x0c@\xceQ\x82Am2\x0e\xc1x\xb9\xdb>8R\x8aA\xbe\xc3\x12\xc1\n\x1a/=*\xeeuA\xb7\xb5"\xc1\x9e~\x02?B\xc5dA\xf61\x1e\xc1\xd4$\xa7>X\x07xA\xcb\x92+\xc1\xe6\xb3\xbf?\xc9{yA\x04\x16/\xc1\rm\xb2\xbek\x8c|A`\x07\x00\xc1y\xef2\xbf\xbaVuAgm\x07\xc1\x87\r\xdc\xbf$\x1a~A\x13\xaf\xd5\xc0\xb0\x90\x08\xbf\xcf\x06\x81A\x9f\x8f\xcc\xc0\xd8\x00\xc4>P\xe0\x7fA\x9d\xdd\xb6\xc0\xc6\xab\xce\xbf\x08\\yA\xc0Q\xc4\xc0\xccO\x1f\xc0i\xf7rA\xcd`\x8e\xc06\xd3\xa1\xbf\x16|wA\x9a\xcaa\xc0\xdf\xcc\xee\xbf)\x8bvAdd\x83\xc0\x8d \x85\xbe\x7f\xe4YA\x9a\xd0\x97\xc0\x18)\xa7\xbf\x9d\xcbWA\x95\xa2\xb4\xc0\x9e\xc0#\xbf\xc4\x87SAk\xde\x9e\xc0\\\xa6\x12\xc0\xb4~IA\x86\xdcZ\xc0`\x0c"\xbf=\xdaMA\x19r\x19\xc0\xa7v\x04\xc0\\\x9fLAa\x9b=\xc0\xcc\xe5B\xc0\x06H]A\x1c\x9d\xe9\xbf4\xed\xee\xbf6\xc5@A\xf9\xe1\xce\xbf\x87\xba\xfd\xbfw\xd6\x8bA\xf57\xa8\xc0\x19I\xe8\xbf8\x91\x8eA\xf2\xfc\x93\xc0\xd1z1\xc0:\x19\x93A\xff\x92\xb1\xc0\x01\xfd_\xbf \xb9\x91A)\xb1\xc5\xc0Z\xb4(\xbe"\xf2\x9cA\xc5S\x99\xc0B\xf6Y\xbf\xdd5\x9dA\xc9\x1cy\xc0\x88\xd2\xb6\xbf{\xed\x9fA\x03\xcd\x8b\xc0\x8d\xf0\t?\xedf\xa8A\xf0B\x7f\xc0\xf1\x07\xe2>G=\xa0AH9\xa6\xc0\x9b\x94\xa0?f\xa7\x98AF/P\xc0\x7f\x85\x81?z\xc4\x8fA6\x8e[\xc0\xbc\xfbS?\xd1\x1e\x9aA\x8c$\x1c\xc0Bb\xb9>\xbc9\x99A\xf6\xce@\xc0x\x8c"@\xa6K\x95A\xcf\x88x\xc0\xab\xaaD@9\x17\x94A;u\x05\xc0=*/@\x94\xf2\xa3A\x9b\x15,\xc0u\xc6J@\xcb\x9f\xa7A\xf8|\xf0\xbf\n\xa5+@ \xba\xa9A2\x0bg\xc08\xe4B@\xdd\x94\xa1A\xdb\x9d\x19\xc0\x9d\x8e\x92@\xce\xe1\xa7A\x82\xcb\x18\xc0\xf4\xf8\xa6@\xb0\xa0\x9aA\xf0\xf29\xc0\xeb\x9c\x9e@\xdc\x95\x9fA\x82\xda\xb7\xbf\xc3\xc2\x90@\xf3\x80\xa6A\xdd\xae\xb2\xc0\xde\x06\xbf\xbf\xdb-\xafAZ\xd8\xa2\xc0\xba\x1e\xd9\xbf\x9e\xfd\xa5A\x7f\n\xdb\xc0\x89\xb7\xef\xbf\xacR\xa0A\xbd1\xf0\xc0F\x03\xd7\xbf\xdax\xadA\xa6:\xed\xc0\x80\xa15\xc0\x8f\x92\xb5AS\xd7\xe5\xc0D\x1c$\xc0\x17E\xacAz\xb5\x0f\xc1\xb9\x870\xc0\xc5\x93\xb2A\x93\x98\x14\xc1\xbf\xd4\x06\xc0i\x1b\xaeA%H\x19\xc1M[l\xc0\xf6\xff\xa1A\x8aj\x18\xc1\xf6\xfd\x08\xc0p\xf7\x9fA\xdcS\x0f\xc1\xf5\xa8\x9d\xbf\xfev\xa3A\xaf:)\xc1\x13$\xf5\xbf\x9d\xe3\x97A\x08\xf4\x16\xc1\x9aFC\xc0\xd2\x84\x94A\xc4\xf0&\xc1\xbf\x80p\xc0\x992\x93A\xb4\xd0\x04\xc1\x86%F\xc0e~\xabA\xfe\xaf\xdd\xc0b"\x86\xc0`\x1e\xb3A\xe7\x19\xcf\xc0$\xe0\x99\xc0\xfe\xf5\xa1AHp\xdd\xc0\xf4)\x97\xc0\xf6m\x9cAf1\xe9\xc0\xca\xaf\x81\xc0(\xdd\x9fA7\xd3\xcf\xc0]\xfa\xc1\xc0\xd8O\xa6A\xbe\x0b\xd8\xc0t\xad\xd6\xc0\x06\x8f\x95Ai;\xe6\xc0\xa1\x03\xd4\xc0\x83e\x8fA?/\xdc\xc08\xb7\xbc\xc0t\x1c\x95Ak\x8e\x05\xc1\xab\xe2\xd4\xc0\r\xed\x92A\xef\x95\xde\xc07\xfd\xf4\xc0\x9b\x9d\x9eA\xa0\xe4\x9e\xc0\xdc\xd8\xc5\xc0\xbc\x18\x9aA\x86\x1f\x90\xc0KC\xe4\xc0\xcf\x93\xa3A$!\x86\xc0\xa7!\xaa\xc0\xcc\xdd\xa6A(5\x96\xc0y\x03\x8f\xc0\xb8\x9d\xa5A\xfb\xc31\xc06\x94\xae\xc0\xcd\xef\xa7A\xd6. \xc0#\xe6\xcd\xc0\xc2\xa3\xabA\xf2\xfe*\xc0\xd5\xaf\x95\xc0E~\x9cA|\x84\xe8\xbf\x9d\xd3\xa1\xc0\xd0M\x9bAD\x95B\xbf\xec\n\xb5\xc0\xf0|\x94A\x04\x18\x0e\xc0\x00,\x8a\xc0!\xc9\x94A)dF\xc0\x98\xf8p\xc0\x05u\x8aA=\xd2\xbe\xbf2\x19\x87\xc0\xa4\x8f\x8aA8.5\xbf\xe2\x9d\x9d\xc0p\x84\x81A%\xfd\x15\xc0\xd09\x94\xc0\x1e-}A\x9a\xf26\xc0\'\xe9n\xc0\xaf\xbbpA\xd5\x10\xb6\xbfu\x0f\xa3\xc0\xff\x00vA\xc5I3\xbf\xdf\xaf\xbb\xc0\\\xb8kAw\x84a\xbf\xa2H\x86\xc0z\x9fbAG\xad\x00\xc0\xd3\xaa\xad\xc0F\x12\x84A\xac\xc4W\xc0\xe4;\xb6\xc0\xde\xa2\x88A\xc4\x03\x86\xc0\x0b\xa4\xa7\xc02\xb8\x88Ap\xe2=\xc0W\x9e\xcf\xc0v9tA\xe70\x82\xc0\xf4\xcd\xca\xc0m\xdbfA!\xeb\x87\xc0\xe5v\xb5\xc0\xaaNzAQ\x1f\xa1\xc0E[\xd9\xc0nPmA\xd7\x0bY\xc0_`\xe7\xc0R\x06\x89A9\xc55\xbf\xbc\n=\xc0\xc2\x85\x80A- 3\xbf\xf1A\x12\xc0\xdf\'\x91A\x9cA_=%\x9c%\xc0v\xcc\x97A\xfe\x18b\xbdpkF\xc0\xbb\xdf\x8fA\xfc\x86\x94?\xe5!\xd8\xbf\x04\xdc\x8bA\xef\xaaO?T/?\xbf8\\\x9aA\xb0\xbc\xe2?{\x81\xa4\xbf\xf5G\x99A\x87\r%@/C\xfa\xbe0\xf7\x9eAM^\xfc?\x9b\xbd\r\xc0\xa2\x10\xa1A\x11\xfa*?\xab\xc7)\xbf\x08\xaf\xa6A0\t\x93\xbd8\xd6\xac\xbfmk\xa1A\x05\xed\xf1>\x01e\'?\xc2%\xa6A(\xcb\xb2\xbe\x98N@\xc1\x80g\xc0\xd02YA7-H@\xe6\x9d\x03\xc01^NA.\xcbi@1v3\xc0"\x1aVA\xee}\xcc?.G\x0e\xc0\x15\xdeaA\xfd\xb9\x81?\x8f\x06\xd4\xbf\x02\xf6VA\xdb\x91\x8d?\xa8"R\xc0\\LFA\xa8\xf8\xb1?n\xe0\xe2\xbf\xccxSA\xd6\x1ed@\xef\x1b!\xbf\xf1\xd2TA)w\x91@\xed\xfe\xc5\xbe\xf8jZA\xce\xc6=@\xe9jM>E\xf9BA\x8bAK\x02]AP\xb9O\xc0\xf0\xb21A\x84OcA`\xc3j\xc0\x98\x177A\r\x18"A\x9a\xc7M\xc0\xc0\xca8A\x17\x05\x15A\xcb`v\xc0O\xbb;A1\xe96A<\x16l\xc0C\x1dCA\n\xb08A\xb3.\x95\xc0+\xae5A\x1f\x8e\xd0@v\n8\xbe\xbdI/AW\x8f\xb0@\xf2X;\xbf\xe9\xc01A\xad,\xd8@p\x13\x91?h-9A\x8d\xd0\xf1@\xe0U\xc4?\xe2>"A#\xde\xc2@\xfe\x1b\xf4?A\xd8\x19A\x98L\xab@\x08\xa5\xb4?3\xaa+AI\xba\xab@\xe7 E@c\x076A\xc9\xec\xc1@I\xfee@\x14\xfb\x1aAL,\x97@\xd6m\x81@\x0f\x1e\x11A\xe9\xb6}@0id@3\xbd\x10A\xc5\xd4\xb1@\xac6\x8e@m\x1c#A\xfd\xf5\x8a@6\xdd\x9b@\xaa\x919A\xb2H\x85@\xca\xe0!@{\xe6IA\xdc\xc0\x91@\x85]\x11@\xcd\xcb0AG7j@\xa4\xdd\xe1?\x89\xd7$J\xe9@\x1b\xc0\x02Alc\x1d\xbe\xc9\xe0\xb0@\xe5\xa7\x11A\xdaad\xbf\xbc\xa8\x91@\x1c\xbc\x18A>\xcc\xf6\xbe3\xb8\xa7@\x08\xf2\x01A\xe8\xd4\xa8\xbf.\x0b\xbf@b\x1d\x1dAY\x98\xd0\xbf\x0f|\xe5@b\xa9 A?\xabM?\xb2\xfd\x01A\xd4\xd7\x1dA\xa8\xfe\x98?m\x0e\xd0@\xe8S(A\xe6\x98\xc6?\xa0T\xeb@\xd7t-A\xde^\xab=\xdfv\xbc@\x89\x89\xdd@boo@c\x17\xae@\xb2\xd9\xb9@\xea\xf9`@E\x9f\xb9@5\xdb\xef@\xd9\xf6\x9d@\xff\xf7\xc9@pr\x05A\xed\x9d\xa0@\r-\xa5@\xaa\x1e\xdd@\xc6\x9f\xc3@C\x8e\x95@\xbf\x01\xc1@\xda\xb7\xba@\x8fB\xc3@Q\x9a\xd7@\xd9v\xea@4\x94\xd2@Z\xd6\xf7@0&\xf2@\xdc\x92\xde@H\x85\xc1@\xbc\xea\xe4@\xc6\x04\xab@\xf1\x91\xc2@D\xfc\x08A\x80\xa4\xa7@\xd0d\xa1@\xc8s\x08A\x12\xe5\x8b@\xd2R\xd0@\x02\x18\tAe\x86\xc1@\xb9M\xcd@$\x12\x1eAp\xe6\xe6@\xf5\xd6\xd9@\xb3\xd4\x1cA\xdf\x8c\xae@\x9bZ\xc3@\xce\x18/AKO\x80@\x00H\xfc@@\xbf\xce@\xc9\xde\x85@\x83\xe9\x11A6h\xcf@\xd4C3@\xa4\x1a\xec@\x8f\x8c\xd7@X\xfc.@@\xd0\xcd@\xe6\x0e\xde@no\xcb?T\x0c\x02Ao\x16\xd6@9\x9d\xdc?\x1er\x12A\xc3\x14\xcf@\x1d\xb9\x02?\xa99\xee@\x9d\xb5\xb6@\xed\xc8\x16\xbf\xf86\xf2@\xb2h\xbf@\xf4\\/?3\x0c\xcb@\xc9\xb2\xb4@/\xcf:?xY\xfc@*\xd7\x89@\x1bE\xce?[0\xe7@0tX@\x87\xb8\x14@m\x95\xcb@\xd6\x91e@1\x8f\xec?\xcfC\xf9@\x8ez\t@Fy(@g\x03\xea@v\x81\xc9?\xf0\x05\x94?\x94\xbc\x0eA\x80\xd6\xdc?\x92\x12\xb0?R\xf6\x16A\x0c\xeeC?\xc2&D>\xaf)\x12AB1|@\x1c\x0b\xc6\xbe~\x8f\x1bA\xc8\xa1\x96@\xa5\xaf\xa7>.\x10\x1aAp\x15\'@\xfd\x0f\x85\xbd\x84z)AN\x11\x16@YPl?;\xe7\xfc@z\xc3\x00A\xde\x00\x17?o\x15\xd9@/H\x06A\xdb\xa3N?\x0f\x9a\x0fA\xdc\x8f\x0cA\xb9\\\xb3?\xd26\x1dA@\xaa\x08A\t\x84\xb2=\x14\xec\x0fA\x1fU!Ab\xd9\x01>\xf0\xc4\xff@\x8dk)Au\xee\x11?\xe6\'"A\xda\x860A\x84\x16\x9d;\\\x86"A\x17\xeb?A\xd6\x8c\x12?p\x8d1A\xb66*A\xa2U\xf5?\xf2\xe3\x1aA\x8c\xd47ATU\x02@\xe3\x12\x0eAIaGA\xed\x10:@=\xa6\x1eA:R,A\xe7\xd9\xb3\xbf\xa8\xa4\x12A\x82) A\x11f\x00\xc0\x19\x1f$A\xcc\xc7\x1dA\xe8\x01\x04\xc0\xf9\xcc\xfc@\'\x00"Ap\xb2\xc6\xbfS\xae\xe2@s\xe9\x1eA\xc3\x94Z\xc05\\\xf8@C\xf4)A\n\xc7o\xc0\xe8\xfd\nAb\xe2.A\xf5\x9d\x88\xc0;\xc8\xdf@\x951\x1aA\xc0\xc8u\xc0"G\xbf@WH\x18A\x8c\xdf\xb7\xc0\x10\xa1\xd7@\xc8?"ACc\xca\xc0\x15\x11\xf5@-\xcb%A\xac8\xb5\xc0\xa4\xd6\xc0@\x05\x9b.A{\xd1\xca\xc0\x1b\xc1\xc5@\xeb\xf4\x14A\xb2\xd9\x8b\xc0\xb6\x8f\xfe@w\xc4\x06Ak\xe8U\xc0\x90\xd1\x00A\x04\x19\x00A\x81\xa6\x95\xc0\xc9M\x10A\xc1b\x0bA\x19\xad\xa0\xc0\x96\x8b\xef@OH\xf8@\x98\xb7N\xc06c\xdc@\xdc\xfe=A\xb2P\x1f\xc0\x04\xd3\xbc@\xec\xac;A\x03Hq\xc0\xd1W\xe4@\x88bPA"\x13\x91\xc0i\xdb\x04A\xd8\x1aVA\x8cB\xb1\xc0\x13\xdc\x02A\xef\x90NA\xb7:\x81\xc0\xb9 \x14A\xe2]PA\x02(d\xc0T\x0e\xc6@\x13\xddaAg^#\xc0\xe1\xd9\xbc@\xb00aA\x863\x7f\xc0\x0b\xe3\xdf@/\x01vAR\xf0C\xc0\xe7R\xea@\xeb\xca~Ar@\x94\xc0#T\xcc@\x03D\x80A\x8c\xa1\x94\xc0\xb4\xb6\x04A\x02\xf1nA\x8d\xf7\xb5\xc0\x01 \x06A\x9a\xb7tA[\x81\x82\xc0_\xdb\x12A\x03\xe6sAa\x96\x8f\xc0\xbb\x8e\xa1@\xd0o_A"\xbc\xae\xc02\x83\xa3@nESA\xca?\x85\xc0\t>}@\x0c\xdekA4?\xd1\xf0pA\x0bD\xca\xc0\xbc\xd6\x1e@\xde\x0epA1\\\xdf\xc0o\x8f\xc2?\xaa?iA\xa2\x07\xdc\xc0\xfdOZ@%\x0c~A\xd6\xb4\xca\xc0\x87\xe6\x83@xo\x82A,\xb0\x04\xc1q\t`@\x9b\xea\x80AE\xcf\n\xc1o\x9d\x1d@b\x84\x80A\x92\x8f\x08\xc1-2\x84@\xa9-\x8cA\xf4\x8a\x06\xc1n\x80V@\xabT\x92A\xc6t\x1a\xc1\xb2H\x8b@_\xb5\x8bA\xd3\xb0\xfb\xc0\xe3\x99\xae@\xa8\xae\x8fA6{\xda\xc0\xd7\xb6\xa6@\xe4\x8a\x90A\xd0\xb7\x01\xc1\xad\xe1\xb7@p\xd3\x97A\xbeg\x01\xc1=\xb7\xd5@f\xff\x87AVz\xe5\xc0\xd8\xce\xdc@\x83\xe6\x81A\xd6\x11\x13\xc1\xb9\x99\xe6@\x9e\x8b\x87A\xd3R\x10\xc1\xe6X\x82@\x90\x0foA\\3\x1e\xc1a\xdfU@\xa8MgA\xa7\xe2\t\xc1\xe3\xae\xa6@\xb5\xe2eA\xd4C\x03\xc1\x9e\xf3\xbb@\x00epA\xb3\x01\x12\xc1\xc6\xeb\xb8@\xc9\x0eSA7\x83"\xc1d\xf2\xc1@\xc6\x03UA\r\x94\x05\xc192\xe3@\x19\x08QA\x857\xea\xc0BC\xd8@e\xbfMA\xce\xdd\x07\xc1\x0f\x10\xf2@L\x8baA\xd5?\x0e\xc1V\xfb\x01A\xf1:@AC.\r\xc1\xa2T\xf0@\x1620A\xd6_$\xc1\xd9=\x08A\x06gDA\xad\xb0$\xc1\xcf \x0eA\x89\xfaTA\x82\x89.\xc1v"\xf4@\xc0\x11FAuc)\xc1\xe9d\x15A\x03+:AN\x9b\x00\xc1w\xbc\x15AA\xea\xf4\xf7\xc0\xf7\xeee@\xf4\xebJA\xd4{\x04\xc1\x10\xae*@\x8c\xce-AG&\x07\xc1\x84\x95F@I6\x1eAL|\xdf\xc0\xba\xf3\xe8?\\\xe3/A(F\xde\xc0\xe3\xaa\xa4?\xca\xea?A\x17f\xe0\xc0\xf2\xa3!?\xfb\xec\x1fA\xd4\x12\xea\xc0EHi?\x16 \x10Ae\xbf\xf1\xc0m\x80\x84\xbe"\x8e\'A\x9f\xdd\xbf\xc0IO\x9a>mK\x1eAY:\xb7\xc0\xa1\x9a)@\x0c.-Am\x1a\x9c\xc0^\x8e\x06@\xe6-4A\x96/\xba\xc0\xc3\xe8\\@\x7fp8A\x10\x1d\xb0\xc0\x06\x8eO@\xeb\x01\x18A\x02\xbc\xcc\xc0%6t@\xac\x9c\x11A\xb9\xb8\xa9\xc0\xf8o @\xf0\x96\nA\x9d\x03\x95\xc0\xfb\'|@\xcdc\x18A\xaa\x94\x17\xc1\nA\xe1?N\xa6/A\xdc\xb4\x1d\xc1\x1e\xd0\xa2?\xf5\x03\x1fA\xcc\x9c!\xc1.\xbf\xcc?\x0c\xa0BA\xcfi\x1c\xc1B\xd9\xf2?L\xc8PA\x01\xd76\xc1e;z?r\xe9BA\xbd@4\xc1\xb3\x04\x1e\xbd#\xba>Aj\x88?\xc17\xf4c?A\xf1YA\x8d\x19@\xc1\x8eX\xf4?U\xc3aA\xb8\x05W\xc1\xf2\x82\x0b>J(ZA\xfe7W\xc1\xf2\xa8W\xbf\xb1\xf1PA$\xcbb\xc1]\xe5\\?L[RA\xfdrZ\xc1\xdat\xfd=l\x18kAV}.\xc1\xfe\xf5)>\xcd\x0ciA+\x83\x1d\xc1\x07h\x97>TWcAy\xfd2\xc1\x9bld\xbf7\x87jAmi0\xc1\x9c\xbd\x1a?\xd7\xd1yA\xcd\x88F\xc1B(\xcc?5\x024A"\xc6N\xc1\xc3\xefv?/&%A\xd5 L\xc1\x0e\xa68@N\xed7A\x92\xc6E\xc1\xabGU@\xa1UEA\xcb\x1cY\xc1\x18\xb1k@\x9a\xc2*A\x8d\x9dh\xc1\x9fBG@\xccg+A\x8f\xca[\xc1\xb2\x13\xa0@.\xd16A\x02$N\xc1|\xe8\xb4@3?2AW\xc4\\\xc1\x13Y\x96@!\xe3GA\xd7\x07p\xc1&\xbc\xb6@x\xb00AQz\x80\xc1)v\xa4@\x03\xd26A\x86\xc7p\xc1\'z\xda@\xd9\xab&A\x9dtR\xc1\x03go@\xa7\x0c\x13A\xd8&^\xc1\x95\xe4Z@\x0cq\x03A&\x18>\xc1\xb7\xc0\x81@e\xf7\x0eA\x8d,5\xc1\x08\xac\x89@3\xe0\x1bAt\xe23\xc1\x01\xca~@\x8c\xbc\xf4@q\xa2=\xc1+z\x94@\xf3\xb9\xe2@n\x84\x1c\xc1\xc6\xb6\x92@k\xd7\xf0@*Q\x15\xc1\xa9\xed\x86@8\x85\xd3@,\x98\x13\xc1\xcb\xef\x88@Rq\x07A\xc7\x1d\x1f\xc1&"\xc5@p\xe6\xed@\xf9:)\xc1,\xc3\xd0@$}\x04A7\xae\'\xc17~\xcc@\r\x1c\xcf@&\x04\n\xc1\xdc\x8e\xda@\x1cY\xe7@\x1f\x05\x01\xc1\x11\xa0\xcc@\xd4^\xcd@;\x92\x01\xc1\x9eg\xd7@.h\x03A\x15"\x0e\xc1$<\x04A\x91K\xde@YR\x1b\xc1\xc5`\nA\x8c\xb1\xe9@y}\xff\xc0\xc5!\x12A\xfcK\xce@\xf7+\xda\xc0\xc3\xd2\nA\x96\xc5\xbe@\xd6\\\xdd\xc0\xdc\x96\xf8@i\xdf\xb0@0\xfc\xc2\xc0\xe5\xe0\x14Am\xe3\xc2@\\\xe3\x03\xc1\x96^&A0\x08\xca@U=\r\xc12X-AZ\xc3\xe0@\x8d\xa3\xf2\xc0\xd5#/AG\xc6\xbb@\x13\xb62\xc13\xe3%@nG\xdc@90*\xc1\x93\xc7\x1f@\xf0(\xb7@t\xe9:\xc1\xc8\x83\xc0?\xbc\x06\xf0@\xc9\x19<\xc1w`\xc7?\xa6Y\x07A\x8f\x12?\xc15\xd6\x81>\x8b\x98\xdb@|\xe68\xc1a\x1dT>Z3\xbc@\xfci5\xc1\xcc\xcba\xbf\xb8\xd0\xf2@\x82\xb7:\xc1]\xcc_\xbf\x85\xae\tAQ\xf79\xc1K\xa7\x13\xc0P\x18\xe0@Q\x7f3\xc1^2\x1d\xc0\xa3\xbd\xc0@\xb4bK\xc1\xa3c \xc0\x80\xc7\xdd@\xaf\xe32\xc1wG?\xc0\x8cF\xf7@s@\x1d\xc1\x17;!\xbfv\x91\xee@\xcfu\x19\xc1\x84\xaf\xdf>\xb6\x9a\xf2@\xf1\x91\x18\xc1\xd0(y\xbfw\xca\xcd@Pl\x10\xc1V\xde\xbd\xbf\xd4+\x05AT\xd2\x12\xc1\x9b\xe4!\xc0)\xce\x03A\x03\xe8\x12\xc1d\xa7\x9a\xbf\xb3\xfd\x15A(\x0f\xff\xc0\xd6 \xaf\xbf\x04\x96\x02A)\x80W\xc1a\xbe\x01>\xa3$\xd8@\xd4p_\xc1A\xbd\x9e\xbeJ\x9d\xb6@\x964e\xc1\x19(\xcd>\xbc\x97\xf9@\xb0\x19a\xc1C\x89\\?\x99V\nA\xd1>z\xc1q\xa1\x8b\xbc0>\xf6@\xd3\x94{\xc1\x93\x80z\xbfsB\xea@\xb2A\x83\xc1P\xf9P\xbe\x0c?\x10A\x95\xe2\x8b\xc1\xfc\x11\x1e\xbf\x99`\x0cA\xd7\x1a{\xc1\xae\xa5\x9f\xbf\x8a\x00\x1eA\xb8>i\xc1\x86\xe7v\xbf\x03\x7f\x1eA\x12\xad{\xc1\xbd\xd8\r\xc0\xef\xb6\x14A\x16C\x80\xc1@\xd7\xa3\xbfx\xdc.A\xf0\x89\x84\xc1 \xce\x86?\xc8\x93\x1eA\xe7E\x8a\xc1@\xe8\xda?i"\x18A\xf2\x90x\xc1j<\xc5?I\xad A\xd7 \x87\xc1\xb7\xa6??\xbd\x12/A\x9f\xe3\x83\xc1:,I?\xeb\x07\xd7@\x03\xf3\x8b\xc1\x94\xbaF>\x8a#\xc7@L\xa7\x81\xc1\xdaX\x03@Lg\xcc@\xa2et\xc1hE\x18@\xf3\xef\xd6@\xb6,\x87\xc1\x06\x11)@\xd0\xfd\xa8@,\x91\x85\xc1t\x97l@\x11\xf5\xac@RX\x8f\xc1\x83H\x17@\xbbO\xac@\xc5\x81\x83\xc1\x02\x9c\x15@\xc2%x@\xa6\xa2\x83\xc1t~P@#\xc1C@\x07\x96\x80\xc1\x81\x17\x89?\x94xa@\x99W\x7f\xc1\x17\xfe\xaa>I\xce\x86@\x90\x83t\xc1\xa4\xa0O?\xf3\x8b\x12@\xf7\x9dj\xc1\x17;\xd5?\xcfn\x0c@\xf3hh\xc1!\xa8\x06\xbf\x9c\xfd\x18@Tbs\xc1\xf8\xeb\xb1\xbf\x0b\xbf\x16@s\x03b\xc1s\x04\x08\xbff#Z@\xd0\x9dX\xc1\xc8eZ\xbf\xcc\xae\xa4?#\xf1_\xc1\xadx\x85\xbfmF\x85>\xcc^Q\xc1i\xcc\xee\xbf\x0b\x0f\xc5?\r;D\xc1\xb3qR\xbc\xc4\xd4\x87?.lG\xc1\x08\xce\x87?\x82\x9c\x82?\x00.=\xc1\xc9T\x81\xbe\xa8\x1d\xdc=t\xf44\xc1@\xf8\xff\xbe\x08\x8a\x04@\xc5\xe00\xc1`i\xbc\xbf\xffH\x05@}n.\xc1\xc4;.>\x8c\x83J@|c4\xc1\x8f\x95\xb0?D\xc9W@\xc4`C\xc1\x9c\xfc\xbe?\x89HC@\xdf\xd6/\xc1w\xc9\xe8?\xc1Q\x87@\x0bJ\x1f\xc1\xe3D\xab\xbex\x1a{@\xf5\xd8\x1b\xc1\xe4\xe6{\xae?M\x1a\x9e\xbd\xe2\xccn\xc1\xae\x93\x05@.\xff\xb5C\x89\xbf\xbf=\xbb\x85\xc1\xa3\xe2\x18@\xd6\xef\x00\xc0\x04\xa3\x86\xc1\xc8\xeb\x13@:rF\xc0\x15\xca\x81\xc1\xa7\x00X@p\xad\xe6\xbfn\x82\x91\xc1\x81\x8d\'@:\xad\xb9\xbf\xae\xcc\x94\xc1\xb7\xd4h@F\xca\xe5\xbf.n\x90\xc1j\x7f3@\x19\xda\xcd\xbe\x1bf\x99\xc1=d\xc9?@\xfe\xe7\xbf:\xb3\x96\xc1\xfa[\x00?\xf4\xfd\xcf\xbf\xb8\xab\x9a\xc1\xa5Z\xd8?\x8fD7\xc0\x02\xbf\xa2\xc13I\xf2?\xadKl\xbfp*\xa6\xc1`d.@\xf1\xdb\xad\xbfN\x1d\xa4\xc1}a\xb8?\x9e\xc6\xa0>\xa5(\xa0\xc1\xec\x1cn>\xdd\xe8&?\xd8\xe5\x9c\xc1\xf1~r\xbe\xac)\x91\xbd\x1d\xe2\xa1\xc1\xc3\xf2<\xbe\xed\xbd\xc1?\xfbB\xab\xc1\xaa\xc6\x01@c\x0f\x8e?7\x90\xad\xc1\t\xf4\xc3?\\\xda\xf2?H\xb1\xaf\xc1>\x9c4@\x0e\xdf$?\xbbXl\xc1=1??\xf9\xb2\x11\xc0\xeb\x9d^\xc1\xdf\x9d\xcb?\x94\xb8(\xc0\x01Vj\xc1\x8b\x84\xf6\xbe\xd7\xcb1\xc0j\tw\xc1\xc1X\x98\xbfO!,\xc0DxY\xc1FL^\xbf\xabZq\xc0\xc80O\xc1_r\xd5\xbc\x0e\x11|\xc0\xf6\x15L\xc1N\xc9\x04\xc0\xdc\x07U\xc0\xea\xbeB\xc1(\xd3\x1c\xc0\x1a\x0f\x86\xc0\x1cN;\xc19\x1b\xe3\xbfJx\x11\xc0\xe9E@\xc1\xd6\xf4\xf8\xbf\xbdx\x9a\xbf5\xd54\xc1H\xf9C\xbf8\xcc\x16\xc0!$-\xc1J\xf7\x19\xc0\xbc\xfa\x15\xc0\xf4MZ\xc1\xf3IN\xc0\xcd\xeb:\xc0\nmd\xc1\x01\xc0_\xc04\x07q\xc0j>d\xc1\xed\x9b:\xc0\x9f\xa0\x04\xc0x\xf0P\xc1\x86\xff\x84\xc0\xfe\'.\xc0\xc3\xf2c\xc1Y\x94\x9a\xbf\x89\xfa\xa2\xc0\x0b\x17r\xc1gv\xfa\xbf\x00Q\xa4\xc0\x02\xceZ\xc1W\xee:\xbfF6\xc7\xc0JiM\xc1U\xc3\t\xbe\xef\r\xc4\xc0\xfb\xbe`\xc1\xed\x83\x81\xbf\xe0{\xf2\xc0cCr\xc1:\x9bw\xbf{\xf8\xf7\xc0\xaf\xeaX\xc1\xacW\x85<\x8e\x89\n\xc1\x80\x9bG\xc1\xec\x15->\x00(\x08\xc1\xff\xc5a\xc1\xe5;}?\xe1\x85\x08\xc1\xbb\xa2O\xc1\x96u\xca=\xfbS0\xc1\x01\xa4B\xc1O\x0b??V\x08/\xc1\xd5\xf3\\\xc1\xb7\xaa\xb1\xbe@k \xc1s\xa5U\xc1\x04\xd1\x1e\xbf\x11\xa4A\xc1\x15\xaaM\xc1\'\x9f,\xbf\xbb\xe5Q\xc1\xf0ee\xc1\xfb\xd9\xb6\xbfo\xdb>\xc1\xf1bi\xc1MR\xad\xbfs\xaa)\xc1\xdeYw\xc1\xd6Z\x00\xc0\xa4\x0c%\xc1\x85\xefY\xc1\xb26\x19\xc0\x01n\xfe\xc0\x819G\xc1\x15;,\xc0\xb2a\xfe\xc0\x151i\xc1\x15\x15V\xc0\xeb\xf5\x03\xc1\xa2\x08x\xc1\xed7K\xc0\xd2)\xff\xc0M\x1af\xc1\xccb\x97\xc0\xd4\x82\x08\xc1\x85S_\xc1E]\xa1\xc0\xfe\xff\xf3\xc0\x1f+|\xc1\x9d\xfd\xac\xc0\xe5v\x0c\xc1\xf0\xd1\x82\xc1\x9a\xb4\x9f\xc0\x16\xa1\x19\xc1\xe0C\x83\xc1_\xff\xa8\xc04\xf4\xfc\xc0\x92\xa9z\xc1G\x98\xcf\xc0t\xac\x0f\xc1\xa1\\T\xc1\x97\xb3\xa4\xc0\x1c\x9d\x18\xc1\xf7\xe3C\xc1j \xb2\xc0\x00z\x0f\xc1\xe1\x14U\xc1\xea\x1b\xa4\xc0\x8d\x0b.\xc1%vf\xc1M\xe2\x93\xc0j\xad:\xc1\xda\xcbl\xc1\xb3\xd2j\xc0\xb5e4\xc1\x99\xcbs\xc1rt\xaa\xc0\x07\x8d;\xc1\xc2lC\xc1;\x9a\xaf\xc0\xdf_<\xc1\xbc\xee?\xc1\xcf+\xd0\xc0\xba\xee7\xc1\x9a\xdeK\xc1\xd7\xf7\xaa\xc0\xca\x1eS\xc1\xd7gP\xc1\x11\xf9\xc9\xc0\xf8\xeaX\xc1\x98v@\xc1S\x92\x9d\xc0\x042^\xc18\x91^\xc1$\x1c\x8e\xc0\xf3\x19Q\xc1\x8by[\xc1\x9f\x08U\xc0F1T\xc1\xf37l\xc1E\x1b\x97\xc0\xc1y\\\xc1a\xf2/\xc1VP\x92\xc0\x15\xfa9\xc1g?\x1e\xc1C9\xa5\xc0T\xc98\xc1\xe9\xae1\xc1@OM\xc0K+:\xc1\x83q?\xc1\x7f\xd74\xc0\x9a\xd39\xc1i\xac\x1d\xc1\x90\xfc\x13\xc0Z\xb2;\xc1\xac\xd1\x12\xc1g\xce=\xc0 E\xc1\xb8\xeb!\xc1\xad(\x89\xbfH\xa4K\xc1A\xfd/\xc1{\xef\xa4\xbf\x89JT\xc1\xbda\x14\xc1Hj\x91\xbfB\xb5W\xc1Q`#\xc1\'1\x8f>\xdb\xb4B\xc1\x05\xf5\x14\xc1\x8f~\x11?\xee\xe8?\xc1$ \x12\xc1\xea\x85\x03\xc0\xf20\'\xc1\xbf\x88\xfd\xc0\xc7\xc5\x00\xc0\x9f\x03\'\xc1\x1dF\x1d\xc1\xbe\x8c\xed\xbf\x01+\x15\xc1\xd3\xb5-\xc1\xce\x06\xff\xbf\xa8\xba\x14\xc1\x80P\x12\xc1|\xb1\xcd\xbf\xebf\x00\xc1\xb3-\x01\xc1\xc8n\xde\xbfV\x94\x02\xc1Z\xa5\x16\xc1\'\x15\x15\xc04\xbe\xe8\xc0\xdd!\x14\xc16\x96\x82\xbe\xaa\xe8\xe9\xc0w\x02\x0e\xc1\x9b\xc1\x1b\xbe\x84!\xc5\xc0\xd8\xca\x1d\xc1\x1d\x019?\x99B\x00\xc1\x9f\xd0!\xc1\x93|\n?\xfc\xbd\x0f\xc1g\x07"\xc1\xbb\xb5\x02@\xdb\xd9\xee\xc0\xcew\x13\xc1b\\\x1f@\x1f\xff\xe5\xc07)-\xc1\xfc\xf5>@\x16\xcd\x06\xc1\x91_+\xc1\xbd\x95\x80@E\x84\xfe\xc0(\xf6=\xc1l\xf5.@\x1f\xf7\x08\xc1\x1d|!\xc1W\xeaC@ \x87\x1d\xc1\xc3V"\xc1\xc1\xba\x05@\xd0A%\xc1\xbd\xd4\x10\xc1\xc1\xc0X@\x9e\x1a\x1b\xc1\xca\x1c,\xc1\xf5\x80\x83@\xd6i-\xc1\x7fo!\xc1xs\x85@\x12\xa1;\xc1!\xd4-\xc1\xe9\x06\xa4@\x06k&\xc1[\x02B\xc1\xb3\xe5l@\x18\xd13\xc1\xb1\xcaO\xc1\xd9\x0b\x80@d\xe3+\xc1\x9bQG\xc1\x83uT@\xd2\xa7G\xc1\x17\xce=\xc1o\xe9\x16@s\xadR\xc1\x86\xd96\xc1\xcax\xcc?\x05|J\xc1\xb5\xc1H\xc1\x97\x13\x00@\xcf\xdf]\xc1\xa1?Y\xc1`\xcbp@}\xc7P\xc1\x02tb\xc1\xc2\x14\x8e@\x04\x8aI\xc1\x8eR_\xc1\xb3{Q@\xf4\xc2]\xc1t\x00/\xc1\xd5-\x01@\xae\xa9\xc7\xc0U\x00=\xc1db\x9c?\x9e7\xc1\xc0\xc7v+\xc1V\x95E@r\r\xad\xc0W\xdc\x1f\xc1(rl@\x9eB\xb4\xc0G\x801\xc1(#=@\xd6\x1e~\xc0\x8b\xf4=\xc1\xc5\xa9\x0b@o\x89p\xc0\xab2\x1e\xc1\x842\x1b@\x13;G\xc0v\xae\x18\xc1\x1aw\xbc?\x1f\xcfg\xc0Y\xca\n\xc1\x14\xf8[@\xfda=\xc0Ay\x11\xc1\xad\x8b\x8a@\xc7\xcc\x1d\xc0\xb2E\x05\xc1\x1a\x89i@8\x9e|\xc0\x95\xd4\xfa\xc0\r\x8aH@\x0c\x14\x0f\xc0P\xb8%\xc1y\xcb\x01@\xda\xe9\xde\xbfkH2\xc1k\x84\xa7?\x15\xaf\xf3\xbf\xdcO+\xc1\xb4O=@W\xbc\xa6\xbf7\x1a\x19\xc1R[\xcd?o\\\x92\xbfN&;\xc1\x92-\x87@\xbe$Y\xc05\xe90\xc1PU\xa8@\xa8k`\xc0I\x11N\xc1\x92\xe8\x86@y\xa3+\xc0\x16\x9cV\xc1\x84\xf1T@\xfd\xb6*\xc0%\x80Y\xc1a)\xac@}\x05\r\xc0\x8d\xc4N\xc1LY\xc7@\xb5"\t\xc0\xea\x0bl\xc1@\xec\xbc@!\xffE\xc0\xf7\xc3r\xc1o\xb5\xdc@\\\xe33\xc0z\xd7y\xc1\xa1z\xa4@&\x1fD\xc0\x1b\x12f\xc1\xb9B\xc4@A@\x91\xc0\xb3\xbfg\xc1|]\xa2@}x\xae\xc0\xaf\xadj\xc1~\xc9\x82@?G\xa8\xc02Mc\xc1\xeb\xfc\xa9@\xd2s\xd9\xc0\xaa9c\xc1\xe7\xd0\x8f@Q\xbf\xf0\xc0\xa0\x06a\xc1?\x1c\xd3@c\xb7\xe9\xc0\xad|\\\xc1\xf5_\xd9@\x07\x00\n\xc1N\xdc_\xc1\xa5>\xc1@\xaa\xf7\x13\xc1\'\x8ad\xc1\xfe\xab\xef@\xb0\x92\xa1\xc0 \xdfe\xc1\x8f;\x05A\x9d\xf4\x8c\xc07\xd2`\xc1x\xb1\xf4@\r\x05\xcd\xc0o\xc7^\xc1\xc3\xde\tA\xd6v\xd9\xc05&a\xc1\x9f\xb4\x9f@\xfc\rU\xbf;|`\xc1\x0c\xa1x@\xa2q\xd5\xbe\x05\x88h\xc1<\xda\xc0@\xdb\xc7\x80\xbdYbi\xc1\x01#\xde@\r\xa7\xfe\xbe\xc0\x19p\xc1\xbdK\xbc@\x03k\xa3?\xebut\xc1`R\x9b@\x99\xe0\xbb?n\xdf\\\xc1\xa9\x12\xc3@\xbc\xe6\x12@,c\\\xc1\xe0v\xe6@(S\x1b@h\xb7M\xc1j\xe2\xb7@\xf7\xa4\xef?.\xe7i\xc1\r\xac\xbf@\xa1\x07\x97@\x9fwo\xc1\xe1|\xdb@#\x13\x9e@\xe3\xf5^\xc1\x8a#\xb0@\xf5\x82g@\xac\xb3f\xc1\xed\xc9\xa2@e\xf6\xb6@\xed\xd4m\xc1\xb5R\xa8@\xda\x8c\xd5@c\xfd[\xc1\xb5\xb4\x80@\xa9\x0c\xa8@k\xf6V\xc1af\x89@|\x0b|@)SJ\xc1?\x88n@\xacxZ@\n\xcc\x80\xc1\xc7\xb6\xdd@\x84\xe6\xd5?K\xff~\xc1\x8a\xb8\x02A\xa5&\xcb?\x8f\x8d\x8a\xc1\xf6\xe8\xcc@iR\xfe?\xbf\xa5\x8b\xc1\x16S\xac@\xf5\xf4\xf9?/g\x94\xc1\x02\x01\xe6@\xca\xcf\x00@\xc4\xa8\x95\xc1I\xc6\xf6@@\x18\x84?\xba&\x9e\xc1\x15\xa0\xc8@.\xbf\x0e@\x8fS\xa5\xc1y\xf6\xe0@+A\r@?,\x9f\xc1\xf3\xfe\xaa@\x85[\x86?\xc7\x98\x97\xc16\xb0\x9c@/n0?\x7f\xa1\xa2\xc1\x97\xa6\xbb@\x93\xab->:\xc1\xa4\xc1o\xb8\x91@\x93\n\xa1?\x08\xe5\x9d\xc1Y\xcb\xaf@\xdd\xdae@~\xba\x9f\xc1V`\xc6@\xb3\x98\x90@\x13:\x96\xc1\xa9\n\xa2@\x0cEy@;\x95\xa3\xc1En\x93@\xef\xe7d@\x1fI\x94\xc1$<\x04A\x14\xcbD@;\n\x99\xc1\xd9\x19\x15A\xc2\xdd=@a\xe8\x8f\xc1\xe2j\x00AT\xc0\x87@\xc3\x85\x8d\xc1>\xc1\xe4@\xd6\xef\x8b@Vp\x8d\xc1\x16\\\x10A\xa5s\xa7@4\xde\x94\xc1\xa2\xf5\x18A\xae\x08\xae@9\xf2\x89\xc1\x9f\xa5\x04A\xfbk\xd1@y\x92\x89\xc1\xa7\x80\x10AMh\xec@\x0b\t\x82\xc1\x8es\xfa@\xc6\xea\xcd@\xd2r\x92\xc1\xa2\x1f\xe9@E\xe0\xdf@\xcb\xde\x92\xc1\xafR\xce@JI\xcb@w\x9b\x9a\xc1\x89q\xf5@\xb2\xcd\xe0@\xc7\xd8\x8f\xc1\\\xda\xd7@\x88\xed\x06A\x92\xfd\x86\xc1\x12t\xd0@\x94\xf2\x06A\x90\xa9\x94\xc1I\xe8\xba@\xf7\x99\x08A\xd6\xef\x91\xc1\xdbD\xf7@Z@\x19A\xec=\x9b\xc1Y\x96\xfa@H\xf5\x1bA\r-\x8e\xc1\x0b\xae\x0bAA\xb6\x14A\xe7\x92\x8d\xc1z\x1c\xe9@r\x0b-A\xfa(\x90\xc1\xe8\xe2\xcb@\xa6\x810A\xe0H\x8e\xc1\xc9\t\xfe@\xe1\x999A~\x90\x85\xc1\x07\xce\xe4@\x86\xb1*A\xab\xb3\x84\xc1\x06`!A\xdd\xad\x9f@D\x03\x84\xc1\x86\xcc1Ac.\xb5@+Sz\xc1\xde\xd0\x1dA)&\x83@\xda\xadz\xc1\xb7~\x11Aa\xb7^@>\xfce\xc1r\xe6\'A\xc3F\x82@u\xbcf\xc1\xa7\xe45A\xc8\x05\x98@\xaemR\xc1\xa0\x98\x19AP\xe5\x90@k\x0cD\xc15\xbd"A\xb8\xe5\x89@\xd2|S\xc1\x0b\xe8\nATox@Y\xaeQ\xc1B\xcb\x14A\x92\xee\xc0@\xb0\xe2R\xc1\xee{%Az<\xdf@?|U\xc1\xc2\xa75A\xd8\x8d\xd2@RmR\xc1\xdd\xf3\x1fA\xf5\xa5\x05A5lS\xc1\xebD,A\xf1E\x11AoQP\xc1\xbd<\nA\x82\xbd\x0bA\xb9xN\xc1\xc5K\x06AM\x8f\x1cA\xda\xb3M\xc1:m\x00A\x1e\xcc\xca@\x03\x86L\xc1\xad\xb2\xe5@\xb6\x8a\xb5@\xf4\xf0M\xc1\x0ec\xf6@*\xc9\xf5@j\x16J\xc1f\xc5\xd3@\x17X\xfd@\x04\xf4`\xc1\xc7U1AEM*@\xcer[\xc1BkDA\r\x88"@\x19\xe9a\xc1o\xd0%An\xae\xc7?Vyh\xc1\x89\x8f\x16A0f\xd5?\x83\x1e]\xc1\x18k.A\xf1\xd0P>\xa0\xa4`\xc1C\x8a?AY\x13\xa8=[\x96E\xc1\xc3\x97*A\x8f\x1e\x1e\xbe\x08\xdaA\xc16\xe9\x19AAs\\\xbe8\x1e;\xc1#p1A{\xc3\x1d?\xbaX?\xc1\xf3G8A\xe1J\xb0\xbf\x18\xc93\xc1\xa5\xe4GA\xef\x0b\x98\xbf\x93?G\xc1\xb3\xa02A\xad1#\xc0/\xedD\xc1\x00F\xbf\xcc\xc2\x84\xc1\xab\x0b>A\'\xcc\t\xbf\xf15\x7f\xc1M+KA\x0b\x8f\x83\xbf6\xed\x84\xc1\x86\xeaAA\x1d@\x12?\x1e\xea\x88\xc1c\xce\x1aA\xe2?\xaa\xbf\xe6\xc1\x88\xc1$\xca\nA\xb1\x0bb\xbf\x1du\x93\xc1&\x84\'A\xd5f|\xbfl\xb4\x94\xc1vW$A\xce\x15\xee=\x0f\xee\x99\xc1\xe4-$A\x1eu\xd8\xbf\xe1C\x90\xc1f\xb5>A\xea[\x8a\xbf4\x03\x90\xc1U\xa4DAO0\x06\xc0\xf35\x95\xc1\xa3\x13JAh\x08\xfb\xbe\xa3\xd5\x86\xc1\x87\x93\x17A\x1eo6\xc0\xba\xa5\x7f\xc1\xea^#A\x9c\xe1R\xc0\xb2F\x8d\xc1\xaa\xec\nAOCe\xc0?\x0c\x93\xc1\xc2\x00\xf1@\xadWG\xc0\x90\x99\x99\xc12C\xf7@\xc4\xcb\x17\xc0l\xc9\x8d\xc1\xc1[\xcd\x8a\xc1\xf6NKA\xda\x81*\xc1%\x14\x8d\xc1a\x85=AA\xd01\xc1/b\x8a\xc1\xd4:GA\xd3\x80\x1a\xc1\xce}\x82\xc1\xeaaNA\xd6\x86+\xc1\xd2\x1e\xae\xc1\xeb\x0b%A\xd9\xd2\xdb\xc0\xf4\xf8\xb3\xc1-\xdf-A\x99\xe8\xc2\xc0\x10\xa6\xb0\xc1{l\x11Aj\xda\xeb\xc0i?\xab\xc1GF\tA\xdf\x16\xfd\xc0\x0e(\xba\xc1\x12y\x06A\xce\x7f\xe3\xc0g\xb5\xbf\xc1)-\x10AJJ\xd0\xc0\xb7\xa1\xc0\xc1\xe9\xfe\x00Ap\xf7\x05\xc1\xb7\x17\xbc\xc1}\xb2\xe9@\x8cu\x0e\xc1\xda\x8f\xcb\xc1\xb1c\xec@t\x13\xfd\xc0\x9c\xc8\xcf\xc14\xfa\x01Ae\x7f\xe7\xc0\x14\x01\xca\xc1\x81\x18\xcc@\xb7\x1b\xef\xc0\xd7\x99\xd1\xc1z*\xe7@\xda0\x0b\xc1(\xa6\xc1\xc1\x19M\x15Av\xf1\x13\xc1\x84\\\xba\xc17\xe3\x1aA\xe5`\x1b\xc1ah\xc4\xc1T\xa5#A\xdaR\n\xc1UY\xc6\xc1\xbaR\x13A\xbd\xb9!\xc1\x10\x17\xb7\xc1xe\xe7@\xef\xea\xc4\xc0\xd6\xfc\xaf\xc1\xe4z\xcd@R\xde\xce\xc0\xa0\x0c\xbc\xc1\xd5M\xe3@\xc98\x9e\xc0(~\xc0\xc1\xef\x13\xfc@YV\x92\xc0oV\xb9\xc1\x9f\x86\xc0@\xb6\xb3\x81\xc0\xfb\xea\xb0\xc1)\\\xc5@\x7f\x0c{\xc0\x7f:\xbd\xc1\xfcK\xc3@\xcd\xd0$\xc0\xd7\xce\xc2\xc1\x94T\xa8@I$\x19\xc0\x84\xf6\xc0\xc1P\x10\xe3@\x12* \xc0e\x97\xb4\xc1\xac<\xbf@M-\xbd\xbf\xba\xd9\xb7\xc1\xf5\xef\xc6@C\x9d\x07\xbf\xb5*\xae\xc1\x82\xfe\xd6@\xdf\xcb\xd0\xbf\x9b0\xb0\xc1\x84W\x93@n\xf9\xaa\xbf!\xe3\xb3\xc1\x15\xc3y@\xcc\x85\xc7\xbe\x97q\xa9\xc1\xf6\xff\x84@6:\x0c\xc0fv\xbb\xc1\xb8^\x94@9\x99\x97\xc0%W\xc3\xc1\xd8\xb3\x8d@\x15\x96\xad\xc0\xb2p\xb3\xc1\x0cbk@zk\x92\xc0\xe9\\\xae\xc1\x11\xc0~@\x80\x8du\xc0\x95\x9b\xb2\xc1\xb9\xec\x11@\xcb\x14\xa1\xc0\x97\xa7\xba\xc1\xf2\xb2\xf7?g\xea\xa5\xc0\x90I\xae\xc1;m\xce?]\x95\x8b\xc0\x10\x80\xae\xc1\xb7\xfa\x0f@\x95\x96\xd0\xc0m\xe6\xac\xc1R\xb5\x98?\xc6\xbe\xe3\xc0\x82M\xad\xc1\x8f\x08Y@\xb2\xd2\xe5\xc0\xb0\xd9\xad\xc1\xfc\x1a\x89@\xed\xa7\xd5\xc0\x85)\xa8\xc1\xcc%`@-k\x08\xc1,&\xa5\xc1\x1e\xa2\x1d@\xe0\xfb\x0c\xc1I\x17\xb0\xc1\xb4H\x82@\xc3\xe9\x19\xc1I\xc9\xab\xc1d\x9d\x82@)\xc7(\xc1E\x97\xb3\xc1Rf\xa0@b\x82\x12\xc1\xcfJ\xb9\xc1y\xdbE@\x05\x96\x1d\xc1,\xcf\xc0\xc1\r][@\x82\xfe&\xc1\xf6\xe6\xbb\xc1h\x123@\r\xcb\x0c\xc11\x93\xb5\xc1\xcf{\xf0?\xf9\x8c*\xc1:8\xad\xc1\xb9r\xcc?\xae7&\xc168\xb5\xc1I\xea\x06@\xcc\xd7;\xc1\xcc\x08\xbd\xc1\x85\xef+?x\xaa)\xc1\x0b\xce\xbb\xc1S{\xa6\xbd\x9b\xf55\xc1M\xa5\xc5\xc1\x14P\x81?\'\xf5)\xc1\xd83\xbb\xc1@\x14\xcd\xbb\x8cs\x15\xc1C\x7f\xb3\xc1\x00\n\xa1=\x12W\x0f\xc1\x07}\xbb\xc1q\x18\x8d\xbf^\x9f\x15\xc1\x00^\xc0\xc1m7\x84>\x8du\x08\xc1\x07D\x9e\xc1\xdd\x81\x8f@o\xd7\x07\xc1\xfd\\\x9d\xc1\x1b\x0e\xaa@\xcd\x99\xf5\xc0nf\x96\xc1*\xcd\x85@\xe1R\x16\xc1\xcb\x86\x97\xc1B\xfe\\@\xa5\xac \xc1\x89\xb6\x8c\xc1\'\xe9\x9d@\xa7\x90\x18\xc1\x05\xd3\x88\xc1Cs\x9e@\x92\x93\x08\xc1\xa4o\x85\xc1!\xe1\x83@;\xcb\'\xc1\xc3d\x88\xc1\x91\x93\x82@M\x148\xc1\x05#\x84\xc1\xc8JE@@S \xc1\xcd\xb2u\xc1\x1b\xa0\x98@)\xa5+\xc1\x12pe\xc1\xe4A\x92@\x82\xb4\x1f\xc1\x1c\x99s\xc1\xde\x10\xae@F\xa7<\xc1U\x8d\x8e\xc1fO\xcd@\xbcn\x1e\xc1\x1e\xb0\x96\xc1\xf4\xb6\xd9@\x03\xf8&\xc1\x12\xdf\x86\xc1\r\xf1\xe7@J\x8f\x19\xc1\xf2U\x80\xc1\xf7\xf7\xdc@}O\x12\xc1\xf38\x87\xc1\xc2D\nA=\xfd\x1d\xc1\xfd]\x8f\xc1\xab\t\rA\xc0\\\x1a\xc1\xffa~\xc1 \xc3\x14A\x0es\x0c\xc1\x8aBn\xc1LD\x0eA/\xc7\r\xc1v\xcd\x81\xc1|?\x11A\x05\xe9\xf6\xc0\x05@~\xc1\xec0-A\xafg\x10\xc1\x9f\xd6\x86\xc16\xc87Ak\xa6\x07\xc1\x7f\xfcq\xc1\xad\xcc6A\xf7\xe9\x1c\xc1\xeay\x85\xc1$t\x10A\xa6^5\xc1\r\x12\x8a\xc1"\xa6 A\xb6\xe7<\xc11Z~\xc1\xd6\xee\x03A\xae\xb5A\xc1\x1bux\xc1n\x04\xed@\xcc.<\xc1(ow\xc1\x17v\tA$GV\xc1k\x84{\xc1Yh\x19AI\x9cW\xc1\xcd\xca_\xc1\xa0"\x05A4\xcaW\xc1U\xacZ\xc1(\x94\xe9@\xb0\x81S\xc1\xe0\xa2V\xc1\x14\x84\x07A\xe5\no\xc1\xacKY\xc1\xc0\xed\x17A\x94\xe6u\xc1\xbb\x17]\xc1\xa8\x91\xf5@\xa7\xc5y\xc1\xa1\xffD\xc1\x9b\x83\x07A\x7f\xb9n\xc1usR\xc1\xca7\x13A>DG\xc1\xf9\'Z\xc1y\xc6\rAW\xad6\xc13*U\xc1\xc1X$A\x8c\'K\xc1O\xd5B\xc1`\x8b\rA\x1a@F\xc1*\x0c\x82\xc1o\x80\xfc@\xac\ng\xc1\xb4\x1f\x87\xc1r\x95\tA>\xd8s\xc1\x03!\x81\xc1lU\xd1@\xd4qh\xc1F\x0ez\xc1\xc0W\xc0@+\x03]\xc1\x97\xdc\x85\xc1\xe5\xb5\xb7@\xcf\xa1z\xc1\xe8\x98\x87\xc1s\xcb\xca@F4\x84\xc1\xed\xa6\x80\xc1\x00\x13\x90@\n;\x81\xc1\xc0\x7f\x86\xc1\x1c{|@\x17\xea\x85\xc1R\xf9|\xc1P\xb9l@\x83\xa7o\xc1\x9f\xc3s\xc1\xc2*:@\x94\x0bs\xc1YJl\xc1\x11\xef\x9b@J_\x87\xc1\x1a\xbda\xc1D\xeb\xaf@\x06\xd9\x81\xc15Vn\xc1\x19{\xae@\x80\xcb\x8e\xc1/\xd7d\xc1\xf6\x01}@\xf4A\x8a\xc1X{\x90\xc1\xbd\xc8\xa8@\xfd\xe0r\xc1\xa4?\x98\xc1z`\xa6@0\xbd\x7f\xc1\x8e\xe3\x90\xc1I\x0e\x9f@\tL^\xc1\x9e\x1c\x8a\xc1\xfe[\xa1@\xb3\xcbT\xc1\xa73\x9a\xc1\xed\xa9\x8b@\x03\xcaU\xc1\xbe\xd3\xa1\xc1L$\x96@\x8e\x87^\xc1]B\x9a\xc1\x9e\xbd\x94@\x1a:E\xc1\xcb\x92\x9a\xc1w_9@\xf7\x1fU\xc1\x8d\x1c\xa3\xc1|\x93\x16@\xce\xa9Q\xc1\xe9;\x91\xc1%\x9c\x12@\x19\x92S\xc1\n]\x8b\xc1P\x078@\xfe:T\xc1\xd6\xe1\x8f\xc1\x03"m?O\xd9N\xc1,x\x94\xc1\x89\xcd\x81>\xcf2Y\xc1q*\x84\xc16S\t?\xcb3R\xc1`\xd5\x83\xc1m.\xf7\xbe\xb53K\xc1\xc1b}\xc1\x7f\x07\x95?[%H\xc1\x8c\xad\x80\xc1\rs\xd5>2\xb4i\xc1G\xf2\x82\xc1\x0c9\xaa?"\x00s\xc1\x14\x12\x84\xc1\xc9\x02\x00\xbf\x8e\xd9p\xc1\x02Fh\xc1m\xc5\xf0>\xabgl\xc1N\x86^\xc1\xfbr\x0f\xbfY\xfbq\xc1\xf6\xcf_\xc1o\xc6\xcb?\n\rh\xc1\x86\xe8\x93\xc1cu\x18?p\x9f7\xc1G\x88\x95\xc1U\x99\xb7?\x00])\xc1p~\x94\xc1\x15*8\xbf\xb9\xfc1\xc1$.\x93\xc1mU\xc1\xbfR\x81:\xc1O\t\x99\xc1\xc7\x8b\x8f\xbft(\x1d\xc1W\xf9\x9f\xc1\xe8]\x08\xbf\xd5\x0f\x19\xc1\xa0\xe7\x9d\xc1S{!\xc0\xe6d \xc1\xf6\x82\x96\xc1\x96\xf0H\xc02P$\xc1\xdb8\xa3\xc1\x0b\xf5\x1e\xc0\xa5\x1e.\xc14\xd0\xa3\xc1\x0fPF\xc0b\xbe\x0e\xc1U\x82\xa0\xc1?\xe7E\xc0\x88`\xfe\xc0,j\xa4\xc1\xba\xc3\x84\xc0\x93:\x15\xc1\x86]\xae\xc1\x99\xdd\x1a\xc0\x8e\xfd\x0c\xc1~\x05\xb5\xc1\x97\xe7\x1d\xc0\xd6\x02\x1c\xc1\x9a\x85\xb0\xc1\x80b\xdd\xbf\xc7\x0c\xf9\xc0\x94\x80\x91\xc1\xd7\xf3\x8f\xbf\xd2\x92\t\xc1~\xce\x88\xc1\xea\x08\xe2\xbf{\x0e\t\xc1Y\x9f\x95\xc1D\xf4\x05\xbf\x04\x7f\xf1\xc08\x1a\x9e\xc1\xe5"]\xbe\xf5Z\xf1\xc0N\x88\x90\xc1\xd4\xb6\xe0\xbeZP\xc8\xc0\xd1/\x88\xc1d\xc2\x1a\xbf\x90\x8e\xcc\xc0T\x84\x90\xc1\xb1\xf6u?u\xe7\xb3\xc0\x0eC\x8c\xc1\xd3\x94n?D\xb4\x96\xc0\xbc+\x99\xc1\xb7`\x9d?8\x02\xad\xc0\x1c;\x8c\xc1\xeb\x92\t@Y\x82\xce\xc0\xf8\x02\x91\xc1\x1d\xcc\t@\x0b\xe1\xed\xc0\x8f\xd5\x8e\xc1\xdcC[@\xa9\x15\xb6\xc0\xe9?\x89\xc1\xe2\x81_@\xb5T\x9c\xc0\xd7&\x97\xc1\xae\x05\\@X\xbe\xa7\xc0`4\x8e\xc1C\x90\x88@\x1e}\xcb\xc0\x9c\xf0\x7f\xc13\xa8\x03@\x19\xa2\xd5\xc0\xfcq{\xc1\x07d\x85?hk\xe3\xc0\x1e(w\xc1\x18\xed\x00@\xd0\x07\xb7\xc0#\xe2x\xc19\x9a8@l\xf0\xe7\xc0\xa2\xc9\x94\xc1\x159\xb5\xbf\xe17\xa4\xc0\xa9#\x9e\xc1}H\xa4\xbf`\xa0\x95\xc0\xa9\x19\x8e\xc1\xbft\x17\xc0m\x99\x94\xc0\x95\xa5\x86\xc1\x12\x17!\xc0Cd\x9e\xc0\xc6\xbe\x91\xc1\xae\xecQ\xc0\x8c\x01f\xc0\xb4\xb9\x99\xc1\x05qK\xc0wZY\xc0&U\x8f\xc1c\xb0\x96\xc0\x8dl\x83\xc0\x89:\x93\xc1\x89M\xac\xc0\'\xddW\xc0\xc2\x0f\x84\xc1\xb9\xa6\x9f\xc0v\xc0\x86\xc0{\n\x82\xc1\xfc\xf2\xa9\xc0\x91\x8eS\xc0 \xe7\x94\xc1/\x9b\x9e\xc0I\xfa\xae\xc0\x1f\x83\x90\xc1y\x91\x8a\xc0@\r\xc7\xc0e\x7f\x9d\xc1\x9b\xd0\x97\xc0bK\xad\xc0\xfc\x0f\x94\xc1\x92\xfc\xc0\xc09f\xb7\xc0\xd5!\x8d\xc1\x9c\x16A\xc0\t\xa6\x11\xc0\xd49\x87\xc1\x94\xd3\x04\xc0\xd5y\x05\xc0\x84\xcb\x8e\xc1Q#w\xc0LF\xa3\xbf\x9a\xba\x93\xc1q4\x95\xc0\'\xaf\xaf\xbf\x18u\x87\xc1\x19\xa1\x80\xc0\xce\x1c,\xbe\xf4\x9c\x83\xc1E\xf9F\xc0\xce \xcd=Hc\x8c\xc1\xd4#\x8c\xc0NE\x94?\xfc\x9c\x86\xc1\xc5a\x94\xc0\xea\xca\xff?~\x07\x93\xc1\xa6\xc3\xb0\xc0\x1c\xbd\x8a?HC\x96\xc1(\xd3\xb4\xc0yC\xfa?\xc8V\x92\xc1\x15.K\xc0j\x18\xde?I\x91\x98\xc1\xd6>/\xc0c\x03@g\xec\x96\xc1\x86Sb\xc0\x92\x1f)@\x96\x9d}\xc1\xe7\xe0\xa2\xc0\xec\x8d\x15\xbfs\xda\x7f\xc1\x9c\t\xb7\xc0\xbd\xc2\xd0\xbf6\xf4k\xc1\x9e\xb8\xa6\xc0\xe3\x01I>p\xecj\xc1\x93k\x94\xc0\x98\xfe\x83?7\x1c\\\xc1\x02L\xc7\xc018\xd4\xbc{^b\xc1\xee\xed\xd8\xc0X-Y\xbf\xdc8F\xc1\x1c\x95\xb3\xc0\x82.~\xbe\xed\xc5?\xc1a\x9e\xa7\xc0\xed`.?\xefAI\xc1\xf1\xca\x93\xc0lUC\xbfM\xd96\xc1\xda\x0f\xd0\xc0E\x01\x8e\xbf!\xd5A\xc1\xf6h\xd8\xc0\xcb~\x04\xc0\x9e\xf14\xc14\xb0\xee\xc0\xed\xf7\x16\xbf0\x90!\xc1\xfd\x17\xba\xc0\xd0H\xbe\xbfW\x0e$\xc1\x00\x83\x9b\xc0s\r\x04\xc0R\xf6\x16\xc1J\xfb\xcd\xc0*\x83\n\xc0H\x88\x16\xc1\x82\xd1\xb5\xc0\x11\x99K\xbeI>\x1c\xc1\x9d\x9c\xc9\xc0:\x9b\x11? \x01\x0c\xc1VC\x92\xc0p\xb95>\xdf\xcc\x02\xc1\r\xe0n\xc0\xeb7/\xbf\xb8"\x03\xc1s|x\xc0\x1c\xd2\xde\xbfk\xf1\xee\xc0\x10>L\xc0\xd0h\x85\xbe\xd2\xb5\x08\xc1\x15\x82\x8f\xc0\x0b\xb9\xc0?\xda\x1a\x11\xc1\x1b\xb2o\xc0\xdb*\xfa?\xed\x86\x0e\xc1\xe0\x97\xa8\xc0\x1d \xfb?gNZ\xc1(\x88\xe6\xc0\x16\x02\x8b?\x0b\xe1^\xc1\xd4\xc7\xdd\xc0s\x8e\x0f@\x0e\xd1T\xc1\xf6_\x07\xc1\xed\x9eb?\xec\x9fO\xc1W\x8e\x0b\xc1kw\xcc<\x1d\xfbW\xc1\x16%\x17\xc1s\x1d\xf9?G\x89h\xc1\xf6e\x16\xc1\xc6Y\x12@\x87\xa7V\xc1\x94D,\xc1\x19\xe0\x90?_\xdec\xc1Z\t.\xc1\xd8D\x04?<\x03Y\xc1yf8\xc1\x1a\x18\xf8?\x9f&B\xc1ZL2\xc1\xf9\x04\xd0>U\xfe4\xc1\x16")\xc1j\xa9g?HUC\xc1\x80\x8e,\xc1\x03#\x1e\xbf\xbb*<\xc1y\xc1I\xc1?\x89\xe3>\xb0\xef;\xc1\xd8\x83N\xc1\xf1\xf7\xc5?+M+\xc1\xdc\xfaK\xc1SW,>\x94\x8bJ\xc1\xedIZ\xc1\x87\xd8\xa6\xbewlJ\xc1"rW\xc1\xf2N\xb8\xbf\xd8\xe2Z\xc1 \xe7V\xc1\x8a{"=\xb6\xb7B\xc1Eeo\xc1?h\xe6=Q\x0eH\xc1\xb0\x8c|\xc1\xb59\x03\xbf\xad\xf2E\xc1\xf3|u\xc1\x13\x8e\x86?\x87,1\xc1\x8c\xb1m\xc1j\xdc\xbb=\x03\x02I\xc1a6\x18\xc1\xb0}F@\x9edL\xc1\xb8\xf8#\xc1\x99\xca\x7f@cE8\xc1dt\x0b\xc1\x9aZK@v\xdb2\xc1R\xab\x02\xc1\xcd\x1e\x1a@\x1b\xf6*\xc1\xd4~\x07\xc1c\xa5\x8c@\x80z-\xc1\xb1\xbc\x13\xc1\x16|\xa1@\xc6\xe7\x12\xc1wJ\x06\xc1\x82\x88{@KQ\x0e\xc1\xbfS\x17\xc1\x87Pc@I\x18\x07\xc1]B\x02\xc1^\x1c\x96@\xae6\x0e\xc1\x83}\xef\xc0\xfdn1@\xff\x9e\x1c\xc1\xe0{\xe8\xc0\xfe;\xf7?\x05\xbe\xf7\xc0\xf6\x91\xdf\xc0 \x1e.@\xb1\xdf1\xc1\xecZ\xe6\xc0Da\xa1@\r\xac,\xc1\xc13\xdf\xc0\x1f\xf5\xc6@)\xac=\xc1\xbfC\xcc\xc0\xa5\xac\x8b@\x10XA\xc1%\x9f\xd1\xc0\x8d\xcfX@r\xabB\xc1\x08%\xa2\xc0=\xe7\x9c@K\x1e8\xc1\xfd\x14\x9d\xc0\xb5\xc8\xb7@/\x90A\xc1\xd5\x0f|\xc0\xd8$x@JFK\xc1\xb6\x99C\xc0\xbfL\x88@o\x99H\xc1\xcb\x15\x89\xc0\xc3\x0c>@\xd8`*\xc1\x17\x96i\xc0\xac\xc8b@1\xd9\x1b\xc1\xfa\xa5\x80\xc06\xf9\x88@)M\'\xc1K\xe79\xc0\xa5\x92$@\xe5\x0cX\xc1\x8e\x99\xa1\xc0cG\xb4@\xff\xb4f\xc1\xfbj\x8b\xc03\xc4\xa7@X\xd1Z\xc1\x81\xea\xb7\xc0\x88m\xd9@g8Q\xc1\x1cH\xd1\xc0:\x18\xde@\xacfm\xc1N\x9e\xb5\xc0\x93Q\xf6@\x1b\xcds\xc1\x06\xb2\x95\xc0\xe1S\xef@\xb8\xa2\x7f\xc1\xbf\xae\xd6\xc0a\xd3\xed@\xc4\xec\x82\xc1\x13T\xd2\xc0Fz\xcb@\xbck\x86\xc1\xfd\x9b\xcf\xc0w\x89\x01A\x15\x9fz\xc1\x8b\xdb\x03\xc1\xd0}\xf2@R\xb0\x84\xc1p\x1a\x0e\xc1\n\x87\xf1@\x81\xc5r\xc1\xd8@\x08\xc1\xf3p\x08AZ\xa3k\xc1\x93I\x0c\xc1\xa7\xa5\xd1@`^X\xc1\xa6\xb4\x0e\xc1\x8e\xb2\xd9@_\xa7s\xc1\xed\xed\x12\xc1\xb9\xb6\xac@\xf9Ri\xc1\xcf\xbc\x18\xc1v\x18\x97@WO\x81\xc1\x91\x06\x0f\xc1\xd6&\xa5@\xf9Bg\xc1\x9c\xc3\xbe\xc0^\xa0\x11A9\xbfW\xc1I\x8b\xd7\xc0G\xa6\x15Ak\xf6q\xc1Q\x9d\xa9\xc0\xa1\xb9 A\xaa\xb8{\xc1\x15\xa1\x92\xc0\x9b\xa0\x1cA[\xe5q\xc1\r\xcb\xaf\xc0\xffr7A\xcb\x07p\xc1\xfbW\x8e\xc0\xb3\x96=A\x90\x9b\x83\xc1\xab\x06\xbe\xc0%\xc7AA!Z\x83\xc1\x17\x84\xdc\xc0\xb5\xfdKA\x94\xe2\x89\xc1\xf6\xb2\xc0\xc0\xff\xb35A\xd9\x99\x87\xc1\x18\xe5\x9a\xc0\xfe_QA\x8ar\x8f\xc1S\xaf\xa7\xc0\xa2\x1eWA=\xc8\x88\xc1\xd4\x84v\xc0\x1c\x8fJA\xb3$\x81\xc1\xe0+\x98\xc0\xb8\x81eAS2\x81\xc1\xf8dk\xc0\xef\xfeoA\\\xe5w\xc1\x04a\xb7\xc0\xf1"kA6\xfd]\xc1L\x98\xc5\xc0\xeduAAg\xfeK\xc1\xdc3\xb8\xc0O\xce>Afz_\xc1\xc8W\xe9\xc0:$LA\x84Cm\xc1\x10\x03\xf7\xc0\xe5GMA\r\xdaM\xc1\xd8}\xfe\xc0zVXAX\xc1I\xc1\xa5\x86\xe6\xc0\x92 eA[\xbbV\xc1\x8e\xcd\x13\xc1\r\x19cA)\x86O\xc1\x95\xd4!\xc1\x8a\xe0\\A\x84\xeff\xc1\xfa+\x14\xc1\x7f\xd1\\A\x95\xafW\xc1\xbf\x94\x13\xc1\x93i{A\xe9\x1e]\xc1\xe6\xb6#\xc1T\xc9\x80A.\xabc\xc1\x13o\x08\xc1\xe8K\x81A\\CB\xc1I\xf3\x0f\xc1\x83S\x83A\x0418\xc1\x83\xb9 \xc1\xb8\x0c\x86A\xfc-;\xc1\x9b\x15\xfb\xc0sH\x84A\x87e:\xc1\x1fa\x05\xc1\x9d+KA\xad+(\xc1ba\x07\xc1\xa0\x8dSA?\xaa<\xc1~\x8c\x07\xc1+=5A\xd7\xd8J\xc1n\xb9\x05\xc1e\x10.AG\x00+\xc1(W\x0b\xc1\xbb\xff%A\x13\xc0!\xc1k\xe2\x17\xc1\x96e,AHg1\xc1\x81\xdb\x0f\xc1\xb0\'\x0fA\x1ei7\xc1\xcc7\x01\xc1\xc2%\x08A\x9e\rB\xc1\x083\x1f\xc1\x03\xa0\x10A\xd3\xd0J\xc1,\xbd\x19\xc1\xd2Q\x05A_\xb2 \xc1\x8a(\x1a\xc1N9\x00AH\x1b\x18\xc1Q\xbc(\xc1}J\x06A\xc8T\x14\xc1Bk\x0e\xc1u=\xf5@6\x05)\xc1wv\x1f\xc1\xc9p\xe4@\x90\xd2\x1b\xc1\xc1M\xf1\xc0\x9b\x9d$A\x83\x1b\x08\xc10\xbc\xf4\xc0\x9b\xcf A\xa8\xf2#\xc15s\xca\xc0\xa7\t*As\x9c3\xc1\x80\x1e\xc7\xc0l\x0c-A\xad\x01\x17\xc1\x84\xd2\xa3\xc0\xfb10A\xd7[\x0e\xc1C\xa7\x9e\xc0\xff\x04"A\x10"%\xc1x\x80|\xc0\x85\xf76A\x1bv/\xc1C+\x88\xc0\x89BEAf\xe8\x15\xc1\x9bS.\xc0\x87^}AB%\x02\xc1S[\xa9\xc0x1\x84A\xec\x88\x12\xc19\x0e\xd7\xc0,\xc5\x82A:\xa7 \xc1]*\x99\xc0\xd0\x13~AV\xb0-\xc1\x8e6\xa4\xc0\x084sA+\x0e\x1b\xc1?\xa6t\xc0\x08\x1fyA\n\x9d+\xc17\r\x98\xc0\xe3\x15\x8aArG\x1e\xc1\xc4\xce\x8a\xc0\x96\x9b\x8fA\xc6\x021\xc1.\xb6\xb8\xc08\xeb\x8cA\xc8\xc6>\xc1\xe59r\xc0\xf0\xad\x88A\x98\xe1;\xc1\xf5_2\xc0\x8f\xe6\x89A\xa8oR\xc1ne\x83\xc0HO\x85A\x13PW\xc1??\xac\xc0\x9b\xcd\x81A\x144M\xc1Z\xa0\xc1\xc0\x85X\x80AF\xb2d\xc1X*\xae\xc0S\x0f{A%\xb2a\xc1\x80\xc9K\xc0\x03p\x83Ah\xd4p\xc1\xe0\x0fX\xc0\x14\x08\x80A:Ja\xc1\xb5\xd6\x13\xc0\xee\xe4\x86A\x12/\xeb\xc0:p\xeb\xc0\x0e{hA;\xf5\xe5\xc0\xabI\xfe\xc0\x15myA\xb2\x10\xe0\xc0l\xff\xfb\xc0\xf5wUA\xecx\xea\xc0\xd6@\xec\xc0VXIA\x1c\xb0\xc3\xc0\xe6o\x0f\xc1\xebaPAW\xfc\xb4\xc0\x04\xae\x16\xc1\xa7%^A\x16l\xd9\xc0\x98\xd6"\xc1(TDA\x11\xce\xc1\xc0\x88\x08+\xc1\r&8A\x19\xa2\xf2\xc0\x1b\xd3\x1b\xc1#[:Ax\x8c\xea\xc0\xe1|5\xc1v\x92RA\x93\x1f\xd9\xc0\xb2\xc64\xc1FebA\x1c>\xe3\xc05\xacD\xc12\xdfJA\x8en\r\xc1\x1b^4\xc1TNUA2\xf0\x13\xc1\xd2nD\xc1\xcd\x92NA\xc6\x94\x14\xc1\x14Z\'\xc1C%LA*\xd2\x15\xc1\xcc"3\xc1s\xedlA\xd1\x83\x0c\xc1\x92\xf3<\xc1\xd3\x05yA+\x8d&\xc1z<8\xc1rPnAO\xc5\x14\xc1\x05M\x1d\xc1\xd8\xe7tAP\xba\x1f\xc1\x07\x9f\x1d\xc1\xdbI\x81A\xf6m\x1a\xc1\x90^\x12\xc1mYiA=\x08\x06\xc1\x91b\x18\xc18iyA4\x1b\x9f\xc0\x93\xcf\x06\xc1\x0b\x15DA\xe2\x07u\xc02Z\x07\xc1\xe0\xe5JA^\xcb\xa6\xc0\xdb5\xfc\xc0\xbc\x1e2A\x1f\xe7\xc6\xc0\xf9&\xfa\xc0\xf2\xd5.A\xdc\xd7\x8a\xc0\xe6\xc8\xe2\xc0\xb2\xbb$A\x19yf\xc0\x8b\xea\xf8\xc0_\x0f\x1fA\xd4a\xa3\xc0r\xe5\xd3\xc0[@\x11AQ\xf8\x8b\xc0\xe8~\xc3\xc0MS\x07A\xb1W\xbc\xc0^\xef\xbc\xc0\xfa\xf8\x14A\xbd\x17\xb8\xc0\xb7|\xf9\xc0\xa6=\x03AyN\xd2\xc0Y\xc2\x03\xc1N\x94\x0cA\xbeJ\x9f\xc0\xb4g\t\xc1\x0f\xf0\x01A\x8c \xc9\xc0S\x01\xe9\xc0\xd3\xeb\xda@`\x82\xd5\xc0\x85y\x02\xc1\xf6\x82\xc8@\x1d\x88\xae\xc0w\xdf\xd7\xc0@\x9e\xc9@.\xe6\xeb\xc0+\xdb\xca\xc0A\xa1\xe5@\xe3\x84\xfc\xc0\x14\xe3\xcf\xc0\xdd\xb4\xfe@\xe6)\xfc\xc06\x1d\xae\xc0\x9c\xe7\xc7@\xc1\x1b\xf0\xc0\x1d\xcc\xa7\xc0\xb3P\xa0@0\x98\xe4\xc0\x9e\xbf\xc2\xc0{\x86\x90@\xd9W\xfe\xc0\xae\x95\x92\xc0\x0e\xa2\x90@\xf8K\x10\xc1\xe3\xeb\x99\xc0\x19\xdc\xd2@\x90.\x16\xc1\xd5\x8b\x8a\xc0\x16\xcd\xb7@\x86\x89\x19\xc1\xc3\x92\xac\xc0\x8a\x9a\xe4@\xf67e\xc0\x11\x08\xbe\xc0\xe7\xc20A\x8c<\x1a\xc0\xfd\x84\xb9\xc0\xab\x98+A%\x89\x87\xc0\xb3 \xaa\xc0~+BA\x1e\xa5\xa7\xc0\xbb\x0e\xad\xc0>\xd8EA\x0f\x9a]\xc0cU\x8e\xc0\xf8\xe2PA}aD\xc0G`k\xc0\x03uFA\xd9p\x8a\xc0\xc6Rl\xc0\xdb9bA\x1eik\xc0kkB\xc0\xe7\xbflA\xac\xcd\x97\xc0\xfa\xca\x04\xc1\xd55>A\xd2%i?\xfb\r\x11\xc1\xba\xd1EA\xf09\xa3\xbe\xb6\xae\n\xc1\x13\xba(Ako\xf1>\xb4!\x0f\xc1\xb8\xb4\x1dAeub\xbf\x11\xd6\xf8\xc0}\xff"A\xc1!\xac\xbf\xb5K\x1e\xc1i\xcb+A\x1b\xc0\x02\xc0\xd4\xb0 \xc12\xd0\x1eA}\xc6\xf8\xbf?O\x1b\xc1\xab`:A(\x9a0\xbf1 5\xc18].A\x82\xff\xd5\xbe\xa9\x0e?\xc1o\xaa\x1dA\xe9\x18(\xbf=e?\xc1\xc6\xc6?A5\x1c\x9f?\xea\x1d\xe3\xc0Q\xd4:A\xee\xbe\x1b@\x03\x1c\xe8\xc0f3\xc5g4A*\xd1\n@,\x96\xdc?Z\x8a5A\x8b\xa4\xf0?\xef\xc7\x07@>\xa6BA\xb4\xa5\xb6>R\xa2\xa6\xbfv\x89EAf\xb1\xc4\xbe2-\xcb\xbf\xef\x12QA\xc7\xd7`?\xce\xa24\xbcW\xa0EA\xd4\xae5?Oj+?\xb4qRA\xe9\xbf\x04@q\xf6\x89\xc0r\xb3LAO\x05S@V\xf0\x86\xc0\xdcZIA\rC\xc1??\xe6\x85\xc0\xe7z`A^\x1b\x0b?\x9e\x9e\x82\xc0{\xf2aA\xde\x1d\x0b@\xb0\xacy\xc0JIuA\x83Y\x1d@\xb9V9\xc0^*vA\xe6\\\x9f?`{\x82\xc0\\Y\x85AD\x86\xec?\x0eun\xc0\x16j\x8cA\x13*z?rE\xa4\xc0\xf8\xee\x85AA\x10\xcb\xbe\xf9\x07\n\xc09b\x83A\x16\x05I>#>\xbf\xbf6\xf4~A\x9dl\xe7\xbd\xaan\\\xc0\xa3"\x86A\x8a\xd6\xd4\xbf\xdc\xdb\xf6\xbf/\n\x86A\x12\x87\x06\xc0\xd1It\xbf \xd8\x84AA\xdb\n\xc0h\xcd?\xc0\r\x84\x8aAL\xf3\x98\xbfH\xee~\xc00;\x8aA\xdaF\xaa\xbf\x1f\xc8\x9f\xc0"5\x8dA\xd5\x1d]@\xa7I\x99\xc0\xc7$yAP\x02\x8f@F.\x8a\xc0, \x81A\x03\x07[@\x96\x18\xc1\xc0Y\x99qA\xda7*@\x14\x1b\xcc\xc0\x80\x82iA3\x12\x90@Tc\xe0\xc0\xfe\xe8tA\xd0`\xa0@\x0cO\xd7\xc0\xf7S\x81A\xf7\xf6\x7f@\xeeV\x07\xc1\x0f\x02uA\xd1\xc1\x9c@q\x0c\x11\xc1\xd9\xb1pAY\x08Q@\xf9\xdb\x08\xc1X\xb7gA\xf0\xc2T@\t\x88\r\xc1\'f\x85A\xad\xe2\x1a@a\xf5\x04\xc1\x92\x9c\x84A\x94\x02x@\xf0k\x08\xc1]\xdf\x8cA\x1b\x8bE@B\x89%\xc1.\x11\x87A\xdf\xffx@i\xec/\xc1\xf4\xc1\x8bAH\xe8\xf4?q\xd0-\xc1\xeb\xf8\x82A\xb5\xad\xe3?\xf3\xc7=\xc1}w\x84A\xdb\x83\xa4?\xd8\xcf$\xc1\xea\xf4|A\x91u\xb2@fz\xdb\xc0E cA\x81\xbb\xd6@\xdfA\xd0\xc0\xc3BhA\x18_\xa9@\xb9J\xe3\xc0}dNA\x98&\x8b@\x05w\xea\xc0\x11\xbeKA\xdb\x9a\xc9@\x06\x91\xe8\xc0t!>A\x037\xe7@g:\xf5\xc0\x16\xabEAoV\xb9@Da\x05\xc1\xa8\xf8-A=e\xd3@\xff\xfd\x06\xc1\xb2a!A\x9a\xa5\x9b@b\x18\x01\xc1\xdc\x92%A\xfb\x8f\xb5@N\x06\x1c\xc1,25A\x17\xfe\xa8@Ls#\xc1,g\'A?t\x9c@\xd6\x86\x1c\xc1\x02\xd2?AE\xcc\xe3@u\xc2*\xc1\x00\xd3@Ayp\xc0@\xec7B\xc1\x01\x84DA\xce\xd0\xb3@\x116H\xc1\x81\xff4A^\xee\xa2@=m>\xc1\xb0INA_\xa8\xd1@}sP\xc1\x1b\xe0LA\x17\x18\xd3@\xbbI\xbf\xc0\x99p1A\xc0X\xf8@N\xa3\xb4\xc0\x89\xd5,A[Z\xb2@R\x15\xa7\xc0\xa81,A\xf0\xfc\x93@\xc98\xb2\xc0\xbd\xda.AT\xee\xb0@i\x1d\x84\xc0\xf5;\x1dA|\xb4\xca@\xba&\x89\xc0\xac\xef\x10AX\x9d\x89@\xf6\x99z\xc0\'\xab\x11A\x06Mc@\xa1\x11T\xc0\x0f\x8d\x1bAyFt@$~\xa5\xc0:\xce\nAa\x11\x93@\xc5\xd3\xb5\xc0C\xd1\x07A\xf3\x06\x8e@\xc7VB\xc0\xa9\xb4\xf9@\x0f/\xa3@\xd8\x9ec\xc0-\xdd\xe1@\xc6\xb6\x9a@\x99\x12\x00\xc0\x15\x0e\xff@6\xac[@j\xa7E\xc02?\xea@M\xa0\xbf@\xf2P6\xc0=\xe0\'A\xc0\xe0\xda@\xcf\xe2\r\xc0,"\x1eAe\xcf\xad@\xe4A \xc0S8;A\xbd\xd9\x98@3\xd7H\xc0\xaa\x9bAA\xe0\x91\xbc@\x155\xa4\xbf\x9c\x80FA\x0c\xb5\xb5@d\x06\xe4\xbe\xd6\xf0;A{;\xa7@\xb1?\x8c\xbfr\x8a\\A\xb6\xbb\xb0@68\xec\xbf<\x83gA\xfe\xb1\x84@\x82\xe6\x99\xbf\x0e\'\\A$C\xae@\xc3\xa4?\xbd(\xbf`A\x02k\xee@\xd37\x9b\xbf>\xddIA\xb0*\xfd@\x9a\x13\x04\xbe6\\GA\xe9\x80\x04A[]\x10\xc0|nMA\x93\xfd\xfb@tS]\xc0\x01\xc9XA\xcf,\xec@p\xee\x84\xc0\xe0\xc9LAQh\xe4@\x9a\xdbS\xc0?\x08eA\xbe\x94\x1bA^%\x07\xc0\x00\xd1NA\xad\x10 A\x92\x92\xbb\xbf\xcd\x11\\A(\xa8"A\x02Q`\xc0\xfesTA(\xf51A\x97\x93V\xc0ig\\A\xbf\xdd#A\xd2`\x81\xc0V\x87DA\xf9\xd5\x11A\xef\xf3\x85\xc0\xd0\xb8aA\xdcW\x10A\xe5B\xa9\xc0\xb9\xbe`A)\x1b\x13A\xf9by\xc09\xb9rA\xcc\xf9\'A\xb8;\xc6\xbf/\xc0A\xa0\xe8\xfb?\xa5tAAD02A\x02l\xad?\xa2\xa8FAmNSA\x97\xef\xe2?h\x90JA\x9e\xd0PA*Sg?\xe9\xd4TA6\xe5VA\xfb\xb1-@\xe0;SAh^eAB\xc5\xb7?\xf4\x1b;A\x18\xa6vAo\x89\xff?IR:A\x9e\xd5`AeD\xdb>\xde\'-A\nTSA7TN\xbd\x19f.A\xa5\xbfoA<\x99\xaf\xbd~\x90\x1dA\x84\x1b~A\xf5\xd6\xa6\xbeP\x9b&A\x84\xcdeA$/\xb2\xbf\x87G\x15A\x8d\x9bVA6\x8a\x9d\xbf\xad\x8b\rA\x7f\x1dcAg\x17\x07\xc07\xf0!AA\xe0sAT\x10\xff\xbf\x9by\x04A;!wA\xf2\xd2\xbc\xbfen\xdf@\x96\xf2nA\xbd\x0b*\xbf\xf2B\xd1@-:\x83A\xb3\xce\x01\xc0\x7fy\xc4@\xd2\x14\x84A\xa1\xbd\xcb\xbf\x90\x16\xa4@\xe8\x95\x88A\xa8\x87J\xc0\xd6\xee\xd0@\xf0\xec\x8fA=\x04m\xc0Y2\xb4@u\xfd\x90A\xf2 \x96\xc0\xa1^\xba@\x99&\x80AC\xdcG\xc0=\xb6\nA\x8e\xdf~Ar\xd8[\xc0\xd8\xd7\x1aA\x93o\x87A\xa7\xa6q\xc0\x98#\xfa@m{\x8cA{\xa1\x93\xc0j\x87\x01A\x8d\xdftA]\xac}?x5\rAzj\x83A\xf0\x84\xac?\x7f\xf4\x0bA\xa6\xedcA`\x8d\xc4?\xa6\xe1\x01AZNUA!\xe0\x94?\xe7S\x02A\xf3\xeeeA\xd0\x85!@\xb2\xbd\xe2@\n\xc4tAv\x1a\x12@\x87\xd6\xcf@nmQA%\xd1 @\xae\x1b\xc4@A\xa1QA\xd2\xbeY@\xaa\xe9\xaf@\x08*BA\x833\x1b@*h\xd8@X\xb4SAg\xba\xb1?\xb0=\xa3@\xa5\x03dA#q\xb9?\x8d%\x84@\xd3\xecnA\x0f\xaa\x10@\x07S\x87@\xf5peA\xb0J\x0c?i\x91D@\xfe\xddqAT\xfc>?BN\x18@[\x08WA\x1f\xb2\xe6\xbea\x00A@\xcc7WA\xceS\xab\xbfj\x9e\xfc?\xd6qeA\x06{\xb5\xbf\'\x02\xce?\xffxEA\x05\x82\xb6>\xa7\xfd\xa0@\xfcf8ATZ[>[\xb1\xb8@\xb3*FA+\xfd\x0c\xbf\xbe\x0c\x7f@%\x8d9A1\xba\x9e\xbf\xa6\x86\x80@a~jA@h{@2]\xf1@z\xfdoA\xc7\xbb\x99@\x93;\xd7@\x85aiAt\xa5\x87@\xd5\x07\x0eAp0bA\xc4\ng@\xc6n\x18A\xa4\xf1qAR\xfd\xae@\x10\x0c\x17A\xdd\x9bnA\xef\xed\xc9@\r\r\x0cA\xf2WA\xe7\x8d\xa2A\x95D\x92@\x13\xf4_A\x13\x03\x9fAkc\xaa@\x15\xe4VA\xfb1\xa7A\x10\xd2\xa7@+1hA\x862\x9cA(\xf4\x87@\x0e(iA\xf9"\x9bA\xfdb\x87@3\xae\x06A\xc9\xa2\xa3A\xf0\x98\x9b@\xe3d\x05A9\x11\x96A&]x@ho\xe9@\xeaF\x8fAR\xadS@\x94\t\xe7@Q\xbc\x99A\x10<\x84@\x94\x9d\xbe@\x91\xdf\xa0A\xf79g@\xdb\xe7\xb6@\xad\xef\x91A\x97\xcb\\@\xb4c\x9c@\x92-\x96A\x980`@\x13ly@\x19\xd9\x89A\xfc\xf6z@\xc8\xd6\x9a@\xcc2\x90A\xe9\xe0\xf5?\xba`\xa3@\xb5\xec\x87AHe\xdf?e\xa5\x9a@\x90\x08\x91A\x8b\xb5\xd6?h\xa6\xc4@V\xb2\x96An\xff\x85?\xbd\xc1\x85@\xca\xa6\x95AF]\x8f?\x9a\xfe8@\x03I\x9dA\xd9\x9e$>,m\x92@oC\x9aAs\x8c\xb3@\xf0\x1b\xb6@}\xdd\xa0A\xc3\xee\xc3@\xbd\x1b\x9e@\x0b\xd0\x92A\x10\xb1\xcb@\xbaI\xc9@?\x06\x8eA\xe3\xad\xbb@\xb5P\xdc@\xfb\x1b\x91A\xfd\x07\xfb@\x16\xbb\xc7@\xfa~\x93A\x08*\x01At\t\xa6@\x13\xe2\x85A\xfa\xcc\x04A\xf38\xd4@\x11\xf5\x83A\x81{\x00A\x8f/\xf6@M\xab~A\xadr\xfe@\x13W\xbd@\xff\xb5\x85A\x9f}\x16A\xfa\x15\xd1@Zg\x99Avu\tA\xe1\xdb\xe3@)G\x9eA*%\x18A[\x0b\xd4@\xc2e\x9bA\x95m\x02A\xde\x1c\x06AT\xdb\x96A\x8e0\xef@\x92j\x0eAz\xa4\xa4A@\x9f\x0bA!!\x12A\xd1n\xa2Am\xa4\x1cA\xc5\x83\x15A5L\xa6A\x89\xd8\x00A\tA\xb2\\\x05A\xdf\xca\xb5A\xfb\x8e\x16A``\x05A\xce#\xb0A\xac\xed\xec@0g\xf7@I\xe1\xa9Ah\xa6\xd8@\xebo\xf4@!\xa2\xb9AZ\x0b\xe3@\x87\xc4\xdc@\x8a\xe6\xc0A\xe6\xa6\xef@:\xb4\xed@\x1e\xc3\xbaA\xc2\x03\xb2@}8\xd4@\xc2\x16\xb4A\x8ck\xa4@>\xb4\xc0@\xb7L\xbbA\xb0\xc1\xa4@\x143\xf6@\xaa\xb2\xc2Ag\x0b\xa9@\xc8\xe2\xc3@z\x9b\xb9A\x84\xf1\xf5@\xb5q\xb1@\xc3t\xc1A\xe1\x19\xf4@\xd3f\x99@\x17\xd9\xb0A\x8a#\x07Ae\xf3\xa7@\xd3\xf3\xabAn\xb4\tA{\x96\xbe@\xf2\xea\xafA\x82[\x14A\xa5\xbd\x80@\x1b\xc2\xb7A!\t\x1dAK\xe6|@\n\xc3\xa8Ak\xd2\x1dA\xa3c\x85@\x0bI\xaeA\x90\xb2\x08AF\xf0.@\xb3S\xb1A\xf2\x1c\x10A\x8a\x80\xd5?\x99w\xa8A\xec\x02\xee@\xfd(/@\xb7\xb4\xa4A\xf2\x16\xe3@\x9e\xcea@V\xc9\xa6Aj\xae\xd0@\xae\x89\xd1?\xc6\xa2\xabA\x9e\x19\xdf@]-X?\x8f1\xabA\x10\x8a\xa1@\xb7\x95\xea?\xf2&\xaaA\xb5\x1b\x91@2GQ?\x0cn\xa6A}\xaa\x8f@x\r\'@\x84\x81\xb6APn\xa1@>\x08\x1a@\x9d\xa8\xb9A\xc7t}@q\xdd3@=\xdc\xbcA\xb8\x80\xc3@\x9e\xc5\x15@J\xe7\xc3A\xf2\x18\xc3@z\xd8/@\x0bC\xb9AJ\xb0\xde@\x01\xa7\x07@\x91H\x9bAW\xd8\xd0@\x13I\x92?~\x05\x99A\x0c\xf5\xc1@m\xf4{\xbc\xddN\x93A\xfc\xc8\xe3@\x84\xc8\xf1?\x83n\x95Ap\xab\xed@\xe4F/@=\xbf\x88Am]\xe7@?s\xaa?\xe2\xfd\x88A\xda\xe3\xe8@v\x00y>\xd0\xa6\x81A;\xea\xbe@=Y\xdc?\xd8\xb3\x86A\xee?\xa2@\x0e\x84\xc0?\xfaCqA\xb2\x8f\xbc@\x94\xb1d?n\xbewA\xa7\xa6\xb9@\xfb[\xd0\xbcv#|A\xb3n\xbc@H\xddN@0\xfcnA=\xd4\xd4@4\xa6^@\x0cL\x85A\xa3M\xbf@C\x89x@\x850tA\xab\xcf\x9c@\xbc\xfd]@Y|\x84A4\xe1\x07A\xe0D\xfc?\xbe\xa3\x88A/\x15\x11Aa\xd1<@\x0b\xdbvA\xc6e\x10A\xb5\xce\xb4?\xc7\xbenAu\xc0\tA\x8b\x05\x1c?\xbf\xb1kAF\xd6"A\xff\xd9\xec?x\xf1uA\xad\x11*A\x9d@\'@D\x04jA\x83\xb44A\xbc\x19>?\xe4OaAl\x83-A5\xd5\xba\xbd\xa4zyA\xd7\x986A\xe5y<>\x000`A\xf6iJA\x9dT\x87?_SkAH\xd5RA\x80\xd7\xe2?Y\xa4OA\xd5\x80GA7\x17\xbb?\xe22_As!XAU\xc8Z\xbe|9WA\x8d\xa5NA\xb1\x19\x89\xbf\x1a7oA\x14=]A|>\xf6\xbe\xd20OA\xeb\xd8kA\x9f\xa0<=\xc5jVA\xf6LxA\xd2\x14F?_\x1c@A\xaa\xc4eA*\xbb\xf8>\xa8\x12MA\x1b\x15xA\x8a4\x97\xbfM\xcdKA\xe6\xaenA\xda\x9e\x00\xc0)\xd9ZA\xd6\xfc\x80A/<\xa5\xbf\xa0/>A\xd0\x01\x80A[\xc1\x92\xbf\xf9;WA\xbb\xe2\x1bANX$@EzFAp`\x17A\xc44\xf8?z\xceXA\xefj\x17Au\x8fw@n\x89fA4\xfe\x17A\x9b\x9f\x8a@\x9a0FAV\x89\x10A\xb8J\x93@\x1fM=AO\xec\x04A\x92\xa1\x80@\xbc\x92MA\x0cq\x06A\x97B\xbd@4\xc7QA\xd86\x12A\xf3\xcd\xd5@\x0fb[A\x9c\xc7\xf8@h\xa2\xb9@.\x84=A&A\xf0@\x14\xe1\xd3@8$.A\xda\xb9\x01A,\xfc\xed@\xf8u.A\xfd\xbd\x12A\xb6\xba\xeb@\xf3\xd2\x1eAK\xcc\xeb@\x85\xe8\x02A\x8e\xc0\x11A9\x84\xfb@\xb4\xaf\nAwn\x1fA\x05A\xc0@Pa\x00A\x06n\x0eA\xf4\xd6\xa7@\xed\xd2\x07A\xb8\xf9\x05Agi\xbc@\xde\xce\x10A\x18j?A:\x83\xc3@N\xff\xd7@\xfb\xb7JA\xb8\x8b\xb2@\xf1b\xc6@\x18\xfa0A>>\xac@Hy\xf0@\xf8\x8a1AhB\x8a@\xef\xa9\xf2@\xfd\x9c8A\x9c\xef#A\'j\x9d@C\xfeAA~\x854A\x9a\xa7\xab@\x8f\xce#A\x97\x9a"A\x0e\xa2\x99@\xa2\x89\x1dA\x1f\xa3\x15A0F\x8e@\xd5p\x16Ap\xf03AD\x07\xa4@\xe1\x89\x1eA\xec\xaf?A\xbf\t\xb8@Z\xb4\x0fA\x0b\x03>A\xcfDp@\xfah\x08A_D2ASBB@vE\x1eAS\x99DA\x91IM@!\n\x05A\x1f\xdfKA\x8dd\x7f@\x88\xa2\x03A\x0c\xff)AW\x89\xbd@\xcd\xc3\xee@\xabi\x1cA&\xd0\xaf@\xb3v\x00A\xe6@\xef]%A0\x07AA2\xce\xe2@\x13\x1f\x0bAC@5A\xd7U\xad@\x05F\x13Aa-IA\xa8?\x9b@_x#A\x08gLA\x12g\xbc@p.\x0cA\xca\xe6WA\xa4v\x91@\xa74\x04A\x85\x0eAA\xaf!k@Y\xa6\x03A\xea\xe8HA\x0b\x1c\x9f@\xbb\xcb\xea@U\xc9=AQg\x84@y\xcc\x08AG\xcd2A\xf0\x19\xbb@2\xfcAA\xcf\xce\xf8@\x08\x92\xc8@\xd5hTA\x86h\xfe@\xcc\xe6\x93@\xa3,=A%\x85\xeb@N\x1d\x8b@9\xf8.AH\xb3\xe5@\xdaGj@\xa6\x13MA*\x02\xdd@H`~@b\xee[APG\xea@\x02\x0ce@\xae3PA\xf4\xf0\xaa@g\x8a8@L.]A\xb4\x00\xa8@1"\x9e@1yXA\x91\xee\x98@\x1e\x9b\xb7@l\x83JA\x14$\x97@\xc6\x90\xa8@\xd6\xa7fAY\x0b\xaa@\x99,\x9a@\x1b\xbd\\A\xab\xb9l@\xdf\x94>@\xfd|=A0Z\x91@\x81\xc2\xf6?\xcc\xe3:A&R\x9b@\xbf/e@\xf3)/A\x00S\x9a@\xdf\xb1>@\xac\xc4CA\xc0\x90a@\xfa\xef\x13@\x98\x19GA\xd2\xa0\xed@\xa6\x06\xfd?\xfdG5A\xb4\xb9\xf5@\x1c\xe6\xb9?\x01\xd2XAI\xe6\xf3@\xaf\xd8\xd8?q\xdceA)\xcd\xe6@7\xb7X=\xc6\xe2WA\x1c@\xfe@=\x9c\xb7\xbd\xdb\xc6PA\xf8}\x0eA\xe4e\xcb\xbeY\xb5nAq\xac\x01A\'\x0b\xff\xbe\xc7RwA\xb2R\xe3@\xdb\x95\xb0>\x05\x01yA\x9fp\nA\xa7\x02\xda\xbf\xb2\x0eqA\xceW\x0eA\x10\x13#\xc0H\xb8bA\x85|\x0cAp\xa5\xf1\xbf\x07"\x80Af\xb7\x1aA\xb8\xe3.\xbf\xf8(JAu>\xdd@=\x1b\xcb\xbeT\xebIA\xa5G\xb6@\r\xac\xda\xbf\x10v?A\xf4\xb9\xeb@\x1a\xcd\xfc\xbf\xa8\xea=A\xb7\xda\x05A*O*\xc0\xa5\xe04A\xd8\r\xcf@\xa1\xe5\x14\xc0\xf4\xcd$A\xc9M\xc8@\x9e\xc31\xc0~\xa7>AK\x15\xb2@\xb0\xb8\x82\xc0\x18\xa56A\xb5=\xe1@eR\xa0\xc0`b,A\x00k\xd1@\x86\xf0\x87\xc0\xcf\x9dBA\xe5\x93\x01A\xab/b\xc0\x84qLA1\xcc\x05Ab\xc5\xb0\xc0\x0b\xb3EAOg\rAx>\xbe\xc0\xa2d5A2\xfd\x0fAA\xe8\xaa\xc0\xee-OA\xdc\x13#AI\x10\xcd\xc0\xc1APA\xf8\xbc)A,\x05\x9a\xc0m\x92cA\xf2("A\xbd\xffy\xc0\xd8\x1adA\xd99\x1cA\xe0<\x8c\xc0\xd1\x94BA\xa8\xf20A\x88\x02P\xc0\xa3^EA\x1e\x7f-A+q\x90\xc0W#1AxL2A0\x01\x92\xc0\xce\xd1FA\x13\xfaAA3\x90\xd1\xc0L\x90RA\xd1\xde\x00A\xe45\xf6\xc0\xfc\x10MA\xc3D\xfc@ \xb2\xc1\xc0\x84\xc6cA5\xcc\xed@xy\xa5\xc0\xef\x90hAY?\xf6@\x08e\xd6\xc0p\xdepA\xfcl\xce@\xb4\xaa\xf0\xc0\xef\xc0yA\xc8\xc0\xdd@2c\xb1\xc0i\x88\x7fA\xab\xc9\xbe@\xb3\xd7\xbb\xc0\x8a\x18\x86AX\x83\xa7@U\xe2\x97\xc0\xa3&wA\x84\xf5\xae@\x83.\x96\xc0gf\x85Amq\xe2@\x90\xcc\x84\xc0\x89\xa4\x7fA\xd9\x1e\xf7@v\n\xa8\xc0;\x8c\x8aA\xd4\x99\xf9@#\x15n\xc0.\xb9\x8cA\x94\xe6\xca@;F\x8a\xc0R\xc8\x92A\xe5\x86\xb8@\xc4\\S\xc0\xfd0\x87A\x14\xb5\xb1@\x18\xa2-\xc0\xc0\xba\x93A\x9f\x97\xe4@@\r\x0c\xc0#\xd2\x8dA\xa0\x9a\xf9@\x0c\xa1I\xc0\xea\x1c\x9bA=\x1f\xf5@\xa6\xdf\xd0\xbf\xd4\xff\x96A\xb0\x1e\xc5@\xc5\xc4\xfa\xbf\xf8=\x9dA\xb1\xb9\xb0@n\x94\xad\xbf\x04\xd9\x90A\xaf\xe7\xb0@\xb6\xa78\xbf\xc2+\x99A\xa4\xd8\xce@\xab\x1e\xea\xc07_dA6\xbd\xa6@\x05\xcb\xdf\xc0V#RA\r&\x9f@&\x85\x02\xc1\xe1\xf7lA\xcbK\x8c@\xe6\x1e\x0b\xc1\xa2\x94\x81A\xff\xf2\x8f@\xa9=\xfa\xc0f\xbe\x87A>8\x91@\xcc\xc5\x12\xc1\xdd\xb9\x82A*J\xb1@\x9f\x81\x07\xc17KeA\xbehA@,\x9d\t\xc1>\x98SA\xe0.D@p\xb6\x1c\xc1\x0b\xf0pA}\xad-@Tg*\xc1\xf7\xb2hA\xa8\xf4M@\x10N \xc1\xc9XsA\xd5\xbf\xce?\xe6\x8b\x19\xc1\x03\x14\x84A\x06\xa1W@g\xab\x11\xc1\xcd\xec\x88A\xee\x8a$@\x9fz)\xc1\t\x8d\x87A\x1ajd@\xedN\xef\xc0\xfd,iAu\x16\xeb?\xc4,\xce\xc0\xa3\xb5sA\xcd\xbe\xf5?\x95\x1c\xf9\xc0A;_AE\x9b,?\xb4\x91\n\xc1l\nXA\xa8\xe01?\xa6\xd2\xde\xc0\xb8F\\A3\xce\x00\xbf\x8eh\xc4\xc0\x93]RA\xf2/{\xbe\xf9\x15\xf6\xc0\x90\xb5NA\x0ed\xc7\xbf\\\x8f\x0b\xc1\x06\xc5UAp\xd8\xe8\xbf\xb6\xbe\xde\xc0`\xecJA:\x1a6\xc0\xe4\x1c\xc0\xc0\x84\xd8CA\x1c\xb9(\xc04v\xd5\xc0\x99\tXA\xd4\x06_\xc0\xf8\xbe\xf1\xc0m\x0f?A\xee\x98e\xc0\x1e\xe8\x00\xc1\xbce8A\xce\x81l\xbf\x93\xda\r\xc1\x1e;8A\x133X\xbeW\xba\xe3\xc0\xeb\xb42A\xdfm\xc3\xbe\xb9\x8a\x04\xc1R\xd7+A\xb8\xa0\xd5\xbf6\xcb\xc9\xc0\xea\x8dpAE\xa7\x87\xbf\xeb\xe3\xa2\xc0\xe5\xf0pA\'\xf9\xa7\xbf=\x95\xde\xc0N\xe4\x81A\xb3\xb0\x96\xbfY\xc1\xfd\xc0K\xb8\x81A\x94\x05x\xbf\xb6\xe5\xcc\xc0\xff\x90\x8cA\xaf\xa7\xcb\xbfR\xf1\xc6\xc0\xc0\xdf\x8bA[\xc3)\xc0\xeeE\xf0\xc05~\x95A\x9eW\xb6\xbfID\xf4\xc0EM\x96A{\x98\x97\xbe\xda\x11\x07\xc1\r5\x92A\x9cY\xf0\xbfS\xa5\xea\xc0\xfd,\x9dA\x9b\xb3\x00\xc0\x1e\xb8\xa4\xc0\x1a\xe0\x8eAi\xaaH\xbf\xadK\x83\xc0\xcb\xea\x90Aq\'\xa4\xbfH\xe0\xa7\xc0F\x11\x8fA\x87\xa5\x10?\xb6\x0b\xbf\xc06\xeb\x8aA6\xcf\x8b?\xc3\xcc\x85\xc0Z\xbf\x92A\x8b\x04\xb7?\xfcoj\xc0.\xd1\x99A\x93\t\x84?\x88f\x98\xc0\xf6G\x97A\x80\xb1.@\xc9\xc4\x89\xc0 S\x92A\xd0\xe6c@d\x96\xba\xc0\xefW\x96AP~.@\xb7}\x8d\xc0\x1c_\xa3A\x8d\x9b<@x\xc3\x9c\xc0\xc4\n\xa6A?\xb7w@X\xa1\x9c\xc0\xdb\x0f\xa8A\x05\xb1\t@\x99d:\xc0.\x1b\xa6A!\xf9I@WM\x11\xc0}\x8f\xa8A\x86$\n@,\'\x1a\xc0\xaa\x82\xa5A\xda\xb3\x8a@\xd4\x07E\xc0\x1eH\x8bA\xe5\xa6\xcc?\xda\x96\xf4\xbf\x15\xe4\x8dA\xf2\x8b\xb8?r@W\xc0D\xdb\x80At\xc3\xe9?\xadJ\x8b\xc0\xfc\xb2~A\xe3\x16\x00@\xa6/\x15\xc0\x05\x02qA\xf0U\x00@g\xf5\xce\xbf\x9f:vA\x95\xaa.@\x01\x8b>\xc0;\xa7[A\xc2\x9f\r@uPi\xc0\n\xb1UA\x0bE\xad?\xcf\x94\xe8\xbf\x9f\x7fLA\xa8#"@g\xc1\xb3\xbfD\x89QA\xfdmZ@G\xc6t\xbf\x9e\xf6LA\xe1\x06\xe9?\xde\xce\r\xc0\x9eb;A\xe7k)@\xcf=v\xc0\xa5\xbe]AlN\\@\x85\x8f\x99\xc0L\xd0cA\x80GI@\x94\x85[\xc0+\x12iA\xcb\xe2\x85@\x82\xe3\x7f\xc0\xcd\xdcNAj\x00\x82@\xa3\x1d\xcb\xbfPVoA\x8d\xde*?\x7f\xe5\xbd\xbe\xd4\xbblA<\x94*?;\x03\x16\xc0\xef\xc2qAi\xfb\xf3\xbe\xf9TS\xc0\x08RvA\x86\xe1\xc0\xbe\xf0\xe5\xcc\xbf>\x1dtA\xfd\x14\xe6\xbf\xa1\xcfu\xbfU\xdcfA\xb1\xf7\xff\xbf,n%\xc0\xe7\x7fwA\\{<\xc0LeU\xc0l\xbf\x81A\x1b\x0c#\xc0\xa2\xc7G\xc0\x87\x1egA}\xdaF\xc0\xd5]\xf4\xbf\xd9U\x80Ab\x9e\x89\xc0\xc8\xd3\x80\xbf\x11\xdcxA5\x89\x95\xc0\xda\x88\xd3\xbfi*\x89A\x86\x96\x81\xc0)\x99;\xc0\x91\xd3\x80A\x0eq\xb1\xc0\x0fsm\xc0\xc9\xc3\x86A$_\xaa\xc0\xb5\xd8O\xc06rrA\x01^\xbb\xc08\x96\x02\xc0\xe0\x1d\x86A\xbb\x99\xd2\xc0\xc1;\x98\xbf0\xb9\x89A-\x99\xcb\xc0\xf2\xcd\xf2\xbfJ\x0b\x82A@\xef\xf8\xc0\xc1\x9c2\xc0\x18\x90wAd\xf4\x05\xc1\xb7\xaeg\xc0\r\x08wA@)\xfa\xc0\xef\x17&\xc0\x0eHoAO\x10\x14\xc1\x14\x81F\xbf\xf8]\x84A%\xdb\x06\xc1\xb6\x16*\xbfv\xf4}AJ\x90\x12\xc1oW\xc9\xbcS\x9d\x86Al\xe4\xfa\xc0\xd7\xdc\x12\xbf\xe8\x9c\x82A\x8bs\xda\xbfz#\x1f?L\xc6\x80AZ\xcb\x01\xc0EI\x85\xbfe\xe9\x8bA\xd15\xa5\xbf|l\x01\xc0\xc6\r\x8cAg\xfb\x81\xbf\xf3\xdc\x86\xbe=&\x95A\xd4\xd1\x88\xbf\xf4\xb3\x8c>\x03\xf6\x96A\x98x\xf9\xbfY\x94\x8b\xbfE\x01\x9fA\xa0\xa3Q\xbfw\x85\xee\xbf\xc3\xc9\x9eA\x18Q\x1a<\r\xb0\xcb\xbf\x89\xba\xa0AE\xed\xe4\xbfy\n\xa9\xbe\x85\xba\xa5A\xfcA"\xbf\x92\xa6^?Ls\x94AD\xf2\x98\xbc\x9b\x14\xf1?\x95\x15\x99A\xb0\xb1v\xbe\x16\xdb:?\x06{\x8eA\xf4\xad\x83?\x9aKN\xbeV2\x8cA\xc9;\xa4?\x01\x91\xe8?\xf3\x98\x8bA\xbd\xc8\xfd?\xd0i\x08@\xfdD\x93AS\xc2\x14@MY\xac?\x04\xc3\x85A\xfb\x0eP@;\xde\t@\x84P\x83A\xc6[\x80@\xf898\xec\x8cA\x88\xe9\x82@\xb2\xfb^?\xcd\x06\x96A~\xbd\x8d@/p1\xbfs\x0f\x89A\x86\x9b\x8b@r0=@}\xaa\x85At\xd0\xb1?7\x8f\x83@\xcaV\x87AW\x95\xdd?\xecI#@\x99\x93}A\x8a\x9d\xf1>jb\xc7?*]{A\tR\xd9>t)a@TOqAY\xc8\x84\xbek\x99\x8a@\xd5\x91lA\xf7\x0e\xb6>Di;@^^]A6XU\xbf\xef\xe5i@M\x18TAsd\xc1\xbfn\'\x02@/\x93bA\tR\xbb\xbf\xea\xd4\x1a@F\x15NA\xab@`>%\xff\xfd?i\x00VA\x18\xf8\x8f?Y$\xb1?\\\x19@AE\xcf\xce\xbe\x19\xa5\xe1?\xb2\x0e6AM9\x9f\xbf\xde\xa2\xf6>\xbd\xd8IA\xad\xf9,\xbfT\xc3\x8d?\x80\xcb5A\xd9W\xe0>\xac,c@\xbfd?Am\x1f5?b\x04\x88@\x01\x97GAH\xba\xb6?\x99F\x86@\xe1\xed9A\xd0"\x1f\xbe\xde\xf0H@\xdc\xe22A\x1e\xc1\xaa?f\xbf\x85@\xe9\x9f\x7fA\x1c\xfb\x9d\xbf\xab\n\xac@e\xf8\x7fAo\xe3\xb0\xbf\xbfd`@\x87\xcb\x85An\xe3\x06\xc0\xbcL @\xf0\x9a\x84A\xad\xf5\x13\xc0\x86(\x87@\xc4\x96\x8cA\x06ZH\xc0m\xc4\x98@>V\x87A\xb3\xaer\xc0I\xacL@\xf8\xb9\x91A\x9c\xf5\x82\xc0\x92\xfac@R\xba\x96A\xdc\x0e\x9b\xc0=\x0e"@\\q\x96A\xe9\x1d_\xc0\x1a\x91"@\xca\xd6\x88AU*\xa0\xc0-\xe4\x03@\xa9\xb8\x82AX.\x8f\xc0\x90dX@\xb7\x0c\x85A\xeb\xe0\xb0\xc0\xe5,\xe1?!\x07\x8eA\xdf\xe6\xc2\xc0\xa1\x82\x16?\xee6\x8bA\x05 \xc7\xc0(.\x19@J+\x94A\x83\xcc\xd9\xc0v5\xa7@})\x95A\x06\x10!\xc0\xa8[\xcb@\xc6$\x97A\xdb\x1d=\xc0N\xf4\x9d@\x99\x0c\x99A\x17\xab\xa3\xbf\x9ap\x81@"\x91\x97A\xb2\x8cf\xbfw\'\xb5@P)\xa0A\xcfb\xda\xbe\xfb\x9b\xbb@\xc9{\xa7A\x8f%\x83\xbf\x87\xe5\x9d@\xf1k\xa2A\xf4os?\xe0D\xb5@\xf7m\xa4Ao\xf5\xe1?\x130\x90@\x8d\x96\x9aA\xb0\x06\x9a?\x1e=q@\x84E\xaaA\xbb\x08\x81?4TD@K\xcb\xa8A\xf7\x8c\xf4=\x0eI\x83@\xaa\xda\xb2A\x99\xfan?\xea\x11<@m\xc6\xa9Ab=\x17@\xd0\xe7^@r\xac\xaeAR,D@h,A@\xaa\xda\xa1A\x1c\xea1@T:\xb9?\xdcv\xadA\x8c\xff!@\xad\x12\xa5A\x1a]&@t\x0c\xe1>\xf8\xde\xa0AR\\b@Wy\xfc>\xd9g\x9fA\xe2\xdb\xe8?D7\n\xbf\xdb\x80\xa8A\xe2B\x1f@\xe9C\xe2@\xf9\xe5\x9aA\'?t\xbd\r\x9e\x01A\xc8z\x9fAd\xee[>\xf9\xa2\xe0@4\xfe\x8fAf\xcf\x06\xbe4\xbc\xc3@\x18\x80\x8dA\xdf\xb8\xa9\xbeF\xfc\x02A7\xfd\x88AfH\x8f>\x16]\x10A\'\x94\x8dA\x9b\xb3\x1e?"\xa9\xf9@\xfa\x88\x81A\xa5\x1d\xb9?\xc8f\xde@\x9f\xefwA|W\x8b?C\xfc\rA\xa2\x1fsA\x9aF\xe0?\xd6E\x1eA\xed\xbfxA\xbb\x7f\xe0?\x05?\x0eA\xc7kgA\xbb\xf0\\?+\xd4\x0bAy\xa6iA\xdc_*@\xa5/\xec@,\x80\x88A\xb4\xc0-@\xb5x\xce@\x19\x04A\xfb7\x8eA\xa927@\xba\xc6\xe2@\xfaQ\x82A\xc8\x9e\x7f@\xf6\xf0\xfe@#\'{A\xaa9\x8b@Mv\xc3@|\x12zA8\x1du@\x9d\xee\xd7@\x97T\x88AuM\x98@@?\x0bA\xbd\x9b\x81A\x946c\xbf\xeex\x1fA\xee2\x80Ay\xf5u\xbfc9\xfd@\x95\xfdzA\x96*\xe9\xbfo\x13\xdd@)\xb3\x7fA2\xbc\xe1\xbf\x13\xde\x04Az;lA\xe3\xdb=\xc0\xf5\xce\x11A`=aA\x93\x9f%\xc0\x82\xea\xe0@\x8eBaA&tc\xc0]3\xe3@\xec\x1e^A\x13\xdb\x96\xc06\xb7\xc6@\x90\x08mA\x03\xe8[\xc00q\xd4@L\xbeKAH\xdb9\xc0\x91S\xd2@\x1c\x97NA=Q\xdf\xbf1V\xaa@\x89\x95CA\x05n^\xc0\x91\x99\xad@\xc1\xab@A\xb0|\x92\xc0Q\xef\x92@\xb7\xbdQA/PR\xc0\x0f,\xa4@\x1f03A\xae\xddH\xc0\xa4n\xfa@k\x10A*A\x0bT\x8d@c\x0b"\xc02\xa5\x0eA\xea\x80\xa5@\x8c\xc4d\xc0C\x8e\x01AC\xe3\x95@\xf0\\\x84\xc0\r\xba\x04Ao\xbe\xb7@M#\x0e\xc0\x8f*\x10A\xba\xaa\xbf@\x05 \xc0\xbfBy\xf5@\x92;\x9d@\xd8\x86\xf1\xbf>\xed\xf1@\x94+\xd1@7.\x1f\xc0c\xa4\x19AZ\'\xc8@\xf6q\x8d\xc0\xe4\xa9\x1eA\x98\xe5\xb7@\x15\x97\xaa\xc08C\'A+F\xd8@\xb0\xdbu\xc0(j\tA\xb4?\xeb@\xa1\xef\x9a\xc0\n\x9a\x07A\x90\xc3\xfe@\x1f\x97z\xc00*\xf2@{M\xde@\x84L\xa1\xc0\xd9\x1e\rA\x85s\xff@\xea\xc4\xb7\xc0VH\x13A\xe4U=@l\xa1\x1f\xc0\xe6>\nA\xbb\x8c\x04@i\x88B\xc0!\xab\x12A\x15\xf1;@\xba\xb5\x97\xbf\x81\x85\x1bA\x05\x06l@\xfc\x16C\xbf\x96\x9a\x04A`\xf0\t@\xf1\xb5\x8a\xbe\x83\xa0\xfc@\xdcq\xaf?\x1d\xe3U\xbfS\xaf\x0fA\xbb\xe2\xbb?\xdc\xc7`?RR\x15A\x12\xa5\x10@\xe7\xd6\xcc?\xf3\xba\xff@\xdbe\r?|\xa4\xd5?(\xa5\xf3@\xaeh\x9e\xbe\x143\x86?,\xba\xe1@\xb2V\x91?\xda\x06\x04@\x0b\xb8\x05A\x9f\x0c/=\xe0\xb9#@|\x1d$AQ8D?\xad\xe7\x97>?\x1c/A\xa1s\xcc?\xe5D\x94=J\x12!Azwr>Zd(\xbfA\xa2/A\x90\xa0\x97\xbd\xd4\x81\xb0?\xdc\xbd3A\x0c\xe8\x14?\x07@\x0f@S\x96=A\xd8\x87\xf2\xbe >J?\x06c%A\xa4\x1ai\xbf\x8a\x1d\xe0?\xa8\xc2\xe6@\x92\x13G@\xb8\x89\x19>\xa1C\xee@\x92m\x88@\xf8\xd4\x00?\x0eu\xbe@\xd8\xd8&@\x05V">U\xf6\xb8@\x149\xd6?}f\x16\xbev\xd2\x9a@\x0e\xd8I@\\@o?}M\xa6@\xc3\x85\x85@p\x1e\xa1?o\xba_@\x907B@\x19\xcd\x8c>\xc0\xec(@E\x9a[@\x1bvh?\x04\x9cO@\r\x9d\xf3?s\xe3j=\xca\xd4M@>\xb8v@NA\x81\xbf0\x04~@\x8a\xe4X@\x98\xe3\xe1\xbfM\xfa\xeb?\x0e\xc0k@\x9f\xcc\xce\xbf|\x93\xeb?$\xa9\x83@\xda\xb9\'\xc0]\x15\x8b?\x9f\xeb\x87@i&\x86\xbf\xb2\x99\xd8?\nt%@\x8f\x89\xc8\xbf\xe7\x0bd@\xc2\x0b\xac@=\xefK\xbf^\xff\x93@e\x97\xb2@\'M\x12\xbf\xe1VB@8\x06\xb8@\x92\xc3\x8b=\n\xa4F@\x14\x8e\xc0@\r\xe5\xd2\xbf1\n\x95@57\x18@\x178\x10@\xa5\xd2\x84@b\x98\xa3?\xa4\xd8\x11@V,\xa0@\xf9\xdf<@\xee\'Z@=\xa6\xae@\xcc\x16w@\xac,[@\\T\x98@$\xb3\x18@\x18K\x96@Kb\x96@\xce\xeb\xa3?\x89\x05\x94@0r\xb9@\x03\x844@\xfa\xa8\xb7@\xf8\xd5\xaf@\xda\x04r@6M\xc5@=\xad\xd7@\xc9\x1dB@\xc4\xcc\xa3@\xaa1\xc3@\x87\x92\xd5?|Y\xd9@M\x18\xa6@\xf4V\x8f?\x1f\x04\xe4@\x9b\x10\xdf@\x93J\x17?W\xd8\xc5@\xca\xd8\xf9@\xe4~\x81?\xaer\xb3@\xb9\x84\xcf@L\xf86=\x8a~\xab@\x7f\x1c\xea@\xa3\x9c\x14\xbe\xfe\x02\xdd@I\x9a\xdc@\xd1A\x16@A\x87\xff@\xa0\xe1\xc6@\xa4\xbaH@n\x8b\x06A\x8fp\xfa@\xe9\xe94@z\xef\xf3@p\xae\xe3@\xee\xb4\xc8?i\xfa\x0bA\xba\xbdU@\x19j6@qM\x9e@\x9c%\'@\x94gW@\x82)\x81@\x00\x863@:\x84*@E\x1e\xc5@\xcd|V@\xcb\xe8\x0e@\x84\x15\xdb@w\x90\xbf?iPL@\\c\xd1@cW\x94?\x0b\xb8{@\xea\xe8\xb9@\xfc\xce\xcd?g\x91f@\xdc-\xf0@Bx\xba>\x9a\x93\x0c@\xbe>\xd2@\x8b\xc6\x04? \xd1\x8e?\n\x0c\xc0@\xc2\x84E\xbfh\xc1"@@\xa8\xe5@\xcc3k\xbf\xc0\xc1]@o\x18\xf3@\xfc\xe8\xe7\xbf\xb7s\xcb?1#\xee@0\xb7\xba\xbf\xae\x94\x07?`\x96\xea@\xb3\xa6\x14\xc0\xfc\xaa\xfb?~\xf8\rA+\xaf)\xc0n#C@\xe8+\x10AW\x05\xb8\xbf)\x1e\xf2?\xfc\x10\x19A\x18/@\xc0\xb2\x9e\xa0?1\xb0\x15A\xdd\xda8\xc0\x99\xe0\xce?\xfd\xd8\xc9@~6=\xc0\x0f\x99"@\x90\x92\xad@\x1c^o\xc0\x81\x0f\r?\x10\x9c\xc5@-`v\xc0}\t\x0e\xbf\xab\x1e\xe4@\xddS|\xc0"G{\xbe\xd2\x1d\x03A\xaa\'7\xc0a\xeb\x89\xbf\x92T\xe7@p\xb2\x90\xc0\x8frk>\xde\xc3\x9e@P+\x7f\xc0|\xee\xa6>\x0c\xb0\x82@\xfe\x8d\x9c\xc05\xc9\x9a\xbfZ4\xa4@hy\x81\xc0d\xdd\xe3\xbf\x01\x1b\x97@\xe6\x1b\xbb\xc0_\x18\xc1\xbf\x97\xa7\x95@\'\xf6\x9e\xc0\xc1\x80\xb9\xbf\x1e)\xd4@7)\xbd\xc0\x13\xfa\x94\xbfXB\xe1@?\x12\x98\xc0\xe0Q \xc0!\x94\xdd@\x1a\x04\xba\xc0o\xbc\x8b?\xf5\xa8\x99@{\xd9\xd8\xc05\xd5C?WL\x81@\xe9R\xb8\xc0[|\r@\x195\xb0@\n\x8f\x9e\xc0\xd8\xad\x11@)C\xc2@\xb7t\xd6\xc0o\xbfW@_\xd2\xab@NU\xee\xc0pJO@\x0f\x1c\xc5@O\xf3\xe3\xc03\xb3R@%\xa2\x8c@\xed\xdd\xc5\xc0\xc2j\x99@\x14\xd0\xaa@]\x8a\xdc\xc0\x10[\xb9@$\xc7\xb0@x`\x9b\xc0\x9d\xb2\x9d@\xac0\xa4@\xcd^\x87\xc0\xd9\xf0\x84@"\xc2\x9c@W\xe6\x87\xc0\x02 \xc8@8\x82\xa1@t\x0b\x9a\xc0a\xb7\xe1@;\xf3\xb0@\x07\xfe9\xc0\x07\xc0\xc8@\x04\xaf\xb7@-3\x0e\xc0\x0c\xdf\xb4@\xe0U\xa2@Z\xfeF\xc0\xe0\x1d\xbb@\xb1O\xd8@\xe2\n\x1f\xc0\x01K\xe9@\xc0!\xbe@q\xd2\x85\xc0\xeb\x8e\xd4@g\x1ae@\x10\xde\x9b\xc0,4\xc5@\x82j+@\xcevV\xc0\xee\x87\xf3@?\xa6L@\xea\xbc,\xc0\xc5\xf8\xff@\x80:w@+\x15T\xc0u\xd6\x00AE\xc6\xdf?\xb2\xaa1\xc0\x80\xdb\x0fAz\x95\xd8?\x12B\x8b\xc0J\xfb\x02A_\x89\xc4?\xee !\xc0\xea:\xe1@s$^?\x8bN\xaa\xbf5,\xe8@D$\x1c?4\x0cD\xc0\xae\xbb\xba@"\xb4\xe0>\xa9\xdf}\xc0\x82\x8a\xb3@\xc3\xa24?\x0f\xa6\x10\xc0\xfd\x1c\x9c@4\t\xa6\xbe\x17\n\x9b\xbf,\xfc\xa3@A\x03\x8b\xbe$\xc8\x18\xc0V\xde`@\xa68\xac>\x8b\xf1\x02\xc0\x01\xbe/@\xb2\xde\xdd\xbe1\xb8W\xc0\x1a\xc4U@\xca?1?\xef\xa3\xaf\xbf\xdc\xd1T@\xaaU\xb5?HJ\xa8\xbf\xa19\x85@\xaf}\n@V\x8c\xe7\xbe\xc6<]@*\xe6m?\xdf\x1d\xba\xbf\xcc\xbd\x01@h.\x0b@\xac\x05\xb5\xbf\xf8\xe6\x97?\xd9\x91\xbe?\xc0C\x13\xc07\xc9\x01@\x7f\x963@$\xd9q\xbeS\xd1\xe3?\x1e\xe5F@\xdf\x92\x14\xbe\x00\x03e?\x98\xdbp@\x10\xbb0\xbdI\xab+@\x96eq@\xac\xb2p?\xaa\xb5\xec?\xa98\x0f@X"\xe2?\x7f|\xfc?\xad\xe66@\x9e\x1eW?yS"@\xed\xbf\xb9?:@\x8f?\x125r?"\xa9\xd9?\xa2k0\xc0+6\x9b@\xdc\xb0\xe1\xbf=_\x0b\xc0\xa1\xe8\xae@\x97\x16,\xc0.\xd0r\xc0L\x19\x83@\x9f)\x02\xc0/j\x86\xc0\xe1-b@\xe6_\xa3\xbf\'\xb9\x8a\xc0\xfb\xbc}@\xe8fZ\xc0F.\xa4\xc0\x9a\xa9P@\x0f\x9c^\xc0\x10>Z\xc0_\x10i@\x8d\xbf\x7f\xc0y\xfe\x98\xc0\xf4\x1e\xa5@xV\x83\xc0u\xf6\x9d\xc0[\xdd\xa9@y.\xac\xc0[\\\xa4\xc0\x0e\xd4\xc6@\xa9\xa5V\xc0\xff\xa5\xa8\xc0\xfc\x17\xc6@\xcb\x9c\x19\xc0_\x97\xae\xc0\xbaw\xf0@\xb9=z\xc0\x19x\xc1\xc0\xb9D\xed@I\xe7\x99\xc0`q\xc1\xc0\xabY\x07A\xa3V0\xc0\x16+\xbe\xc0\x86(\x19A\x0e2>\xc0`\xa5\xaf\xc0\xbc\x93\x03AY\xc9\xbb\xbf\xaf\xbf\xa5\xc0\xfb\x8f\x11A\xc2F\xa2\xbf\xfb\xd9\xf2\xc0\xbcu\x03A$\xe1#\xc0\xaew\xf2\xc0\x03Q\xe3@\x8e\x9a\x1e\xc0\xe6\x83\x04\xc1\xe6;\x07A\xb5\xdc[\xc0\xd1L\x00\xc1\x91\x13\x0bAj\x8a\xce\xbf\xff\xbd\x85\xc0\x93\xb2\x02A\xd0\xb6\x8b\xc0_\xb8\x86\xc0\x98\xd9\rA\xe5q\xac\xc0f\xa5C\xc0\xa6{\x01A\xd1\xbbc\xc0\xfa0C\xc04\x94\xef@\xf6i5\xc0\xa2\xe1\xe5\xbf\xc6/\rA?\x91q\xc0gt\xfb\xbfvh\x1dA\x06\x0f\x86\xc0\xb9\x9c\x80\xbf\xdas\x0fA&\x9f\x1d\xc0o\xaf\xac\xbd\xe7\x00\x18A\xae_*\xc0\x7f\x87P\xbf\xa4\xdc\xff@5 \x04\xc0"\xa0\xde\xbf\x0e\x17\x1cA!\xbd\xa7\xbf\xdd\x9b\x8a\xbf\xc6\xdd!A\xe0]\xf0\xbe\xfb\xb8\x1c\xc0L\x14\x12A4\xe06\xbf\xa8\xb8*\xc0\xf2=.A\xf5\x82\xdf\xbf\x93\xc2x\xc0\xfa\xbd+A{s\xec\xbf\xa0\x89\t\xc0I\xcbAA{\x1c\xfe\xbfW?7\xc0qVKA\xdf\x00\x13\xc0\xeen\x9d\xbfa\x92EAP\x02\xe0\xbf\xbe\xb0{\xbf{Z\x04A8\x00\x9c\xc0i^\x1a\xbf\x9d\xb5\x10A\xa1j\xb8\xc0\x0e\xd3Z\xbfh\x02\xdd@\x04P\x9e\xc0\xec\x06\xaf\xbfmJ\xcc@\x9aL\x88\xc0\x82[H\xbe\x86k\xc6@\'\xca\xc0\xc0o\xa6[?\x18\xa3\xcc@\x0c=\xc2\xc0\x93o\n\xbf{n\x97@\x05{\xba\xc0CS\xc3\xbf\x99p\x8c@C\xe3\xc7\xc0V#\x10\xbf\xdd\xce\x8d@\x1e*\x97\xc0\x07\x9f\x8a>\xa4V\x84@\xe0F\xca\xc0BY+\xbf\xe8\xcf\xd3@:\xb9\xee\xc0\xff\xa37>?/\xd2@r\xca\x05\xc1eo\xf5\xbf\x0e\x91\xe3@x\x82\xf3\xc0%\xd9#\xc0=I\xe9@\xa0\xbb\xdc\xc0QE\x0e\xc0\xa3B\xfb@>\xaf\r\xc1\x03<\x07\xc0\x9b\xa6\xe4@\x0bA\x1a\xc1\xf4\x96g\xc0n^\x05A\xf4\x89\x0e\xc1\x14Ht\xc0\x02\x01\x0fA\x0f\x9b\x1d\xc1\x1f\x86k\xc0\xa6\xff\x0fA\xb76\x01\xc1\x11\xb1\x93\xc0\x9bE\xe6@\xea\x11\t\xc1\xbe\xf4\x89\xc0j\x95\xd5@Xg\xf3\xc0\xbbZ\x92\xc0T\xb1\xcc@yQ\x16\xc1\x89H\xc2\xc0\x11\xce\xf6@2\xfc\x05\xc1\x15Q\xe1\xc0\xe3\x98\xe7@r\x03\x11\xc1\xea\xfe\xc8\xc0C\xd5\nAc\xe6\xed\xc0\x1e\\\xe7\xc0\xff\x01\x0fA\x11o\xeb\xc0^\xbb\xaf\xc0\xa4\x11\x0fAUz\xda\xc0\\\xe2\xa0\xbfZ\xad\x0fA\xaf\xb6\x14\xc1T\xbd4\xbf!\x07\x10AY\xb7&\xc1\x0b\x99\x88\xbf\'\xbd Ao\'\x07\xc1[1\xac\xbfur\x1eAwA\xf0\xc0\xb43\x02\xbe\xb9v1A\x10\xb6\r\xc1f\\\xfe\xbe\x02\xad4A\xa0\x97\x1e\xc1\xc2\xab\x9e\xbe\xd2uFA6\x91\x02\xc1\x81Y\xae\xbf?\xd3JA\xbc*\xfd\xc0\xb2/\xc3\xbcfDTAH\xb0\x0c\xc1\x80\xee\xd4>\xc7.GA\xc2Z\xda\xc0\x8e\xa9\xe0?d PA%\x0b\xda\xc0\xb5\x89\n@\x7f\xbaSA\xd1\xa4\xfa\xc0\xe0\xdc @\x88~PAj^\xb5\xc0~\xbaa@8\x15XA\xe3\\\xb5\xc0\x1c\x90\xff?\x8b\x1fHA\xa2\xcb\x8f\xc0,\xd4,@\xb4\xa3GA\xfc\x94j\xc0\x9a\xc75\xbe\x19\xe6@A\x95!\xb5\xc0p\x95\x95\xbfa\x0f\xba\xee:A4Lc\xc0\x19\x02\xb4?\r\x93*A\x88\x17\x0f\xc1ec\x0e@\x12P4A\x02\x17\x1b\xc1^M\xe1?T\xa9\x1aA\xceF\x02\xc1x,\x90?\x87^\x15A\x14\xe6\xec\xc0\xb8\x8cG@\xd0\xab\x12A;s\x01\xc1\x07\xcet@\xbap A\xfe\xb7\x00\xc1\xf4\xa7R@3i\x04Af\xa8\xdb\xc0M/\x1d@Qo\xf0@.*\xdd\xc0\xf3\xb4\x93@Y\x07\xf0@\x18\xf8\xd8\xc0X\x18\xae@\xce\x98\x03A\x083\xd8\xc0\xb4\x7f\x95@K9\xdc@\xf7\xb0\xf5\xc0#j\x93@\xf0;\xd8@\xb1\xd5\xbd\xc09\x84G@\x10Y\x13A\xd7\xcf\xb3\xc0\xea\x80\x13@\x99\xf3\x1fA-\x97\xb8\xc0\xe3\x86\x82@=&\x1bA\t.\xa9\xc0\\\xd3\'@>P\x06A6o\x8d\xc0ph&@eh\x11AWZa\xc0\xe7\xbbM@`!\xee@X\xb6\x88\xc0\n\xc4\xcb?\xba\x9b\x01A4=\x92\xc0f\xee[@\x9c>\x06A\x9a\x8e\x15\xc16\x89\x8f@k\r\x08A\xa2\xbc\x1f\xc1\x08\x81\x1b@\x1a\x18\xf8@uj\x1f\xc1\x85\x04\xc0?\x19\xe2\xf2@\xb9\x97\x17\xc1b.\x1d@\x19\x08\xe8@^\xe24\xc15\x0fT@\xaf\xd4\xd4@\xad78\xc1\x12\t\x9e?\xad\x83\xcb@8\xb58\xc1^n\x88>\xb7h\xdb@\xbfn:\xc1\xc4\x87\x9d?\x1d-\xb9@\x06\xa4)\xc1k\xe7\xbe?\x1c\xde\xad@ahL\xc1\xde\xd8$@Eg\xa5@\n\xd7M\xc16\xf5\x92?\xbc\xa5\xba@\x98\x1c[\xc1\x87\x8c\n?\xdf\xf7w@\x82QG\xc1\xfap\x8b\xbf\x9a9\x90@\xa0\xb3M\xc1e\xcf\xa1\xbf\x0c\x17\x89@k\x85_\xc1\x0bX\xa2\xbf"?\xb2@Z\x04N\xc1^\xf0\xf7\xbf\xd7\x15}@L\xd0E\xc1\xe0\xd4 @b\x12\x04AD\xd0G\xc1\xa7xX@\xf1b\x03AE\xa7U\xc1\xc2F\xd2??\xaf\x14A\x14vF\xc1\xb6\xd6}?\xf8.\x12A\xce\x1d;\xc1\xa5\x02\xcb?\xaf,)A\x1fmR\xc1\xa3\xff\xa7?\xdee%AHOc\xc1\x12\xff\xf7>4\r7A\xb6*G\xc1?\xdcS?6d7Aj\x906\xc1\x8e\xcc\xe6\xbe\xd1Y-A\x80\xe9E\xc1U\xea\x81>?)NA\xc4\x17Q\xc1\r\x0f\x13\xbf\x02\xc8OA\xb3\x12]\xc1j\xa4\x90?\xc7QTAA9Y\xc1\x94\xb58\xbe\xaeQ^Af\xd7?\xc1@\xd9\xa0\xbf"\xb0]A\xda\xd05\xc18\xd4)?"\xc0lAK\xf2;\xc1 E6@^\x8f5A\xad\x0eT\xc1.\x91U@\xac\xff7A~Tf\xc1\xd2\x88\\@\xb6\xecJ\x9dB\xc1\xc9J\x8a@\xc5/\x0b?b\xe0R\xc1\xc5e|@\xde\x92\x1a\xbf\xe6\x7f>\xc1\x04\xd2\xc1@\x05\xaa\xbd=\xf6LB\xc1\x93C\xcb@\x9c\xd5\xb3\xbe\xa7\xbf2\xc1\xd9\x01\xcc@\xf7[%\xbf\x7f\x9dM\xc16_\x8a@s\xce\xa5?\xd9`\x1d\xc1\x9b2\xad@\xccb\xbb?\xb0\xe4\x13\xc1\xcb\x14G@\xfd@q?\x1c\xbb\x15\xc1\x05\xbb\x19@\x1dre?j\xf0\x1f\xc1\x0c\xfc8@\x89\x16\xf7>uR\x00\xc1%\x84r@\xf4\x9e\'?\x86\xc8\xec\xc0\x02\xe2\xc4?\xe9\xef\x81?\x07\xe8\xe9\xc0`$5?Up\x1d??\x07\xfc\xc0\x82V\xc1?\x1e\xf8\t@`|\xf0\xc0Y2\xa8?\x07\xb1\x19?\xf6\xd4\xb8\xc0n\xfc\x07@\xc4\x02\x8e?6\x92\xa2\xc0qL\x99?c\xd4\x05\xbfw\xfe\xb6\xc0\xd3\xb7\x84\xbc\xef\x0c\x97?\xb1\xf2\xa8\xc0\x13\x8d\x83\xbfX\x13\xa6?K\x8d\xbf\xc09G\x05\xbe\xbeK\xb5?\x01\xec|\xc0\xa7\xc0\x82\xbf9n\x9f?\xec\xc7c\xc0\x0cj\x1c?\xda?\xd2?8\xa1Z\xc0\xe5\x819@E\x9d\x85\xbf\x00\xff\x00\xc1\x9d)\x1c@\'W\xda\xbf\x1f@\x10\xc1\x95\x11_@\x9c\x01\xca\xbf\xa3r\xdf\xc0K=\x82@\xd7\xed\x88\xbfK\xcc\xc9\xc0,\xbdY@T\xa4>\xc0\xdc\xca\xd2\xc0+\xbb2@\x93\xfba\xc0\x14\xf8\xe9\xc0\x05\xe7\x93@\xc8\x86x\xc0\x06\xf3\xd5\xc0\x19\x83\xab@\r\xa7k\xc07.\xbe\xc0\x1e\xf9\x86@\x0c\x1a\xab\xc0\x12\x13\xd6\xc0\xa7l\xa5@B\x0f\xbd\xc0\x15\x85\xd0\xc0\x81\x18r@\x97\xe4\xb6\xc0\xf0\x1c\xf4\xc0;\x1bh@\x8b\xce\xb4\xc0\xd4\xe2\xba\xc0\xed,\xaa@\xeeBb\xc0\xc4\x1e\x00\xc1\x0c\xe3\xaf@\xd5\x8a\x1a\xc0\x9c\x06\x01\xc16\xbb\x92@\x87\xa0r\xc0]\x97\r\xc1\xba"\xd6@j\xfd\x87\xc0\xa4\xb2\x01\xc1\x1cb\xe5@?\xdaz\xc0\xcc\xfb\x11\xc1\x12\x12\xd5@\xd0\x91\xaa\xc0z%\xff\xc0z\xed\xea@3Yx\xc0\xbf\xa9\xea\xc0,~4@\xd9\x16J\xc0\x0f\x05\xa6\xc0\x83l`@$]A\xc0\xf2O\x86\xc06\xf4\xc8?\xab\x9cf\xc0\xdc\x15\xa5\xc0\xd4\xa3\x82?\xd5>m\xc0\xc7h\xbf\xc0\xea\xd8^?B\x1au\xc0\x98\xdex\xc0\xac+\xba?\x19\x00V\xc0\xbe\xdfA\xc0\x94a\x1d\xbf\xdf\xb8V\xc0\'\ty\xc0\xd4\x90\x9c\xbf:\x17|\xc0}C\x93\xc0\xe9=\x15\xbf\xf9\x05\x11\xc0s\xf7\x86\xc0:\xa5\x8b\xbf[\xf5]\xc0-\x8a"\xc07\x85\xf7\xbf,\xe8>\xc0\x04\x98\x1b\xc0\xd8Rl?]\x86\xaa\xc0\xc9"b\xc0g\xc1\x96=\x95%\xc5\xc0\xbb\x95z\xc0C=\xf7?V\x9d\xb9\xc0\x9d\xc01\xc0\xb6\x8f,@rI\xa6\xc0j\xfc"\xc0\xb2]\x0e@k\x00\xe9\xc0\x99\x8b5\xc0l\xad\n@\xc8p\xf3\xc0ekv\xc0\xd7dd@9\xcf\xf5\xc0ks\x18\xc0\xf79o@\r\xd2\n\xc1Y\xbb9\xc0\xefxt@\xdc\xe6\xf6\xc0\x1b\to\xbf\xce\x82\x86@ \xbc\xda\xc0^wA\xbfW`\x93@[\xf4\xd4\xc0T\xfe5\xc0\x8d_\x93@oY\xb3\xc0;\\\x17\xc0\xd6%\x90@\x14\xc6\xd2\xc0@\xd3y\xc0\x8b\x83\xb3@\x0e\xa8\xe2\xc0" \'\xc0\xa2\x02\x97?\xe9\x1c\x05\xc1b\xbe\x0e\xc0W\xd0\x83?\x81\xc1\x15\xc1\xa9\x9a3\xc0\xbdd\xdc>A\xd2\x00\xc1\xaf\x89\x89\xbf\xc0#\xa4\x94\xc0\x91V\xe2\xc0\xa3AD\xc0\x05\xf8\x9e\xc0\x03\x1f\xd4\xc0\xbf5\x80\xc0\x96\xcb\x88\xc0n\xa0\xc8\xc0a\xce\x19\xc0c\xb6\xbe\xc0\t"\xf5\xc0M\xd6 \xc0\xe3i\xcc\xc0\r[\x0b\xc1j\xdb>\xc0a\xe8\xd1\xc0\xcf\x0c\xde\xc0}1\xd4\xbfC\xc4F\xc0Z\x81\x06\xc1WY\x93\xc0\xf8\x1du\xc0\xb4\xcf\x11\xc1\x16|\xab\xc0:\xb3\xef\xbfV\xcc\x00\xc1\xf6!\xa1\xc0\xf5!\xa8\xbfF\xf2\xed\xc0\'\x8c\x90\xc0\xe2\x1c\xa6\xbf#\x8a\t\xc1c\x1e\xc7\xc0\xaf7\x01\xc0Zm\x08\xc1`<\xe2\xc0\xe5\xf1\xa3\xbd\xb5\x90\xf7\xc0!\x9f\xd6\xc084\xe6>\x95{\x04\xc1\xfe>\xf1\xc0\xad\xfa3?/H\xed\xc0\xb2\xf6\xbe\xc0$\x9d+\xbfL4\xcd\xc0`\xdd\xe7\xc0o\xf7\x88\xbf\xed\xf5\xb7\xc0\xdf\x82\xcf\xc0\x1c1\xb1\xbfaj\xd3\xc0o;\x00\xc1Lk\x1b?mF\xaa\xc0\xeao\xff\xc0\xda\xf0\x10\xbf\'\x8b~\xc0#\x80\x04\xc1,\xf2\x8f\xbf\xddIg\xc02\xc7\xec\xc0\x95\x02\x9a\xbfc\x03\x8e\xc0\xb3\x14\x11\xc1\xf48\x05\xbe\xdcnE\xc0&=\x0c\xc1K\xe9\x86\xbf\x85:"\xc1\xe2\x07\xc9\xc0\x12\xf5p\xbf\xcfm*\xc1\x9f\xc1\xeb\xc0*M\x85\xbf\xd1j.\xc1\x8c|\xa6\xc0\xd8\xaf\x9a\xbfm\xb0\'\xc1\xe0|\x89\xc0].\x8b\xbfH2E\xc1\xc2\x1e\xa4\xc0 ;\xaa\xbeJ\xaeJ\xc1_\xeb\xba\xc0\x90\xb0\x16\xbf\x17bO\xc1\xa2\x17\xc0\xc8r\xcf\xc0U@S\xc1\x94\x06\xc7\xbf\x8b\x9a\xf4\xc0\x07dL\xc1\xd6^6\xc0B\xcb\xd9\xc0\x83\xd01\xc1#\x98\xe8\xbf\x15\xfa\xd3\xc0=\xeb%\xc1\x99T\x19\xc0\xa7X\xf0\xc0I\xad*\xc1\x1f/J\xbf\x1cm\xfa\xc0\x1e\xa16\xc1\x81f\x9a>\xcea\xe4\xc0\xa1\x07A\xc1\x0cz\t?\xe1\x01\x03\xc1\\",\xc1\x01r\x83?\xdb\xf1\xf8\xc06\x81\x15\xc1:e6\xbf`-\x02\xc1\xa9\x05\x11\xc1\x07![>\xcb\xc8\xe9\xc0I\xec\x0b\xc1\xa1\xd8\xb1\xbf\xd9\xe2\x9d\xc0\x19t<\xc1T_\xe5\xc0\xa7\xaf\xb9\xc0/\xc0D\xc1{\xea\xfb\xc0>\xee\x83\xc0b\xea,\xc1\\?\xf6\xc0\x85\xaf[\xc0\x95\x80%\xc1F7\xe0\xc0Ni\x81\xc0\xabH&\xc1l\x11\x12\xc1\x9cI\xa0\xc0\xaa\x05(\xc1\xc5 \x18\xc1\xd2}g\xc0\xbc$\x0e\xc1\x9d\x8e\x12\xc1\x91b&\xc0u\xb5\r\xc1\xd9\xa0\r\xc1\xf2\'\x87\xc0\x8d-\x05\xc1/\xaa\x07\xc1\xc0is\xc0\xeb\xf2\x07\xc1\xd3Q#\xc1\xf1\nM\xc0\xaf\x924\xc1Y\x02!\xc1=E`\xc0\xa9\xc76\xc1\'P4\xc1\xdb\xf2\x14\xc0\'>B\xc12d\x18\xc1\xc4\x96\t\xc09\x0bA\xc1\x19\x0e\x08\xc1D\xd2\xec\xbfD\xdbT\xc1\xc0 %\xc1\x00\x10\xc6\xbf-gN\xc1\xe6}5\xc1Z\x12\x18\xbfh\x91\\\xc1r\xc3\x1a\xc1\xb1\xd8I\xbfY\xdac\xc1\xd4\x80\x0b\xc1\xc8(w=\x195M\xc13\xc3\x15\xc1\x95S\x1b=\x0cFh\xc1h\x9a$\xc1\xfc\xe86\xc0}Be\xc1\x9e!*\xc1O\xf7:\xc0\xe6nm\xc1\x90\xea;\xc1Xyn\xc0+\xeaj\xc1\xa8~\x1a\xc1\xd5\x1f[\xc0a\xf3f\xc1C\x1c\x0b\xc1\xee7\x9a\xc0\r\xfbx\xc1\xcf)\x1d\xc1\xa3\xce\x8d\xc0d\x04\x84\xc1.\x9c"\xc17\xd6\xb3\xc0\x03\x95}\xc1Jl\t\xc1l\x8b\xc5\xc0>\xafn\xc1\x8ak\x04\xc1\x15\x94\xd7\xc0w8\x87\xc1w\xa2\r\xc14\xd9\xca\xc0#\xa0\x8f\xc1\x02\xf1\x10\xc1\x04\xe8\xea\xc0\x92r\x85\xc1\x86\\\x1c\xc1\xc5\x05\xed\xc0v>\x87\xc1\x045\xff\xc0\xb7Q\x96\xc0\x02\x1b\x82\xc1\xf3B\xee\xc0\xd4\x97\x80\xc0\x8d+w\xc1\xb2\x05\xe3\xc0dv\x82\xc0\xec\xd1\x88\xc12\xbd\xf7\xc0X\xc7\xab\xc0I9\x84\xc1>\xf7\xd2\xc0\n\x0f\xb9\xc0\xee\x1dp\xc1\xe2+.\xc1\nW\xc4\xc0cIx\xc1\xa0\xdb>\xc17j\xc6\xc0\x96\xfe[\xc1{\x0e*\xc1\xdbz\xbf\xc0\x8c\x86V\xc1\xf0\xb2\x1b\xc1\x1a$\xe2\xc0L\x11O\xc1v\xb38\xc1\xd1\x0f\xfd\xc0 \xe5X\xc1q\xd7<\xc1E\xe8\xf3\xc0\xe6\x0b;\xc1j\xd3,\xc1\x85\x16\xdf\xc0\xd2\xac-\xc1\xbc\xd1-\xc1\x80\xef\xf4\xc0\xde\x87=\xc1\xf6\x0f\x1b\xc1\x1f\x1f\x11\xc1\xbe>7\xc1\x80o3\xc1\x1f\x1b\x1b\xc1\x03\xa6E\xc1\xebJ/\xc1zy\x11\xc1\x1b\xd85\xc1\xd9IE\xc1\x9c\xbb\x19\xc1\xa8\xc0"\xc1)\x98)\xc17\x8f\x0e\xc1\xf3\x97\x16\xc1\xfc\xb50\xc1\x06\x90\x16\xc1\xdc\xda#\xc1:\xe7\x17\xc1\x14\xbe1\xc1\x9d\x9e\x1b\xc1.,/\xc1\xe6N>\xc1\xbd;&\xc1\xfe\xf9(\xc1\xc0\x054\xc1\xf0u\x1a\xc1=\x19@\xc1\x86h4\xc1\xc4o\x05\xc1\x9c\x00&\xc1\xea\x80A\xc1\xbaD\x05\xc1\x96\x1e\x1c\xc1\x0e\x1d6\xc1\xb1\xb5\xf6\xc0\xca42\xc1s\xe7&\xc1\xd3\xf9\x04\xc1m\xd7\x1c\xc1{\x9c\xcf\xc0q3H\xc1\xa2\xe2N\xc1\xb1\x1b\xe2\xc0\x12\x899\xc1i\x92X\xc1\xe5x\xaa\xc0\xb7kQ\xc1q\x82T\xc1\x9f[\x9d\xc0=j[\xc1\x14zI\xc1\x9d\n\x94\xc0\xb7GN\xc1\x8aSi\xc1\t\x86\xaa\xc0\xfe\xf2F\xc1P\xe8t\xc1\xa3<\\\xc0\x14\xa8?\xc1\x85\x92g\xc1\xeb\x9fm\xc0\xd8\x1f/\xc1gcb\xc12X?\xc0\x10\xa8>\xc1C\x07x\xc1\xbf\xd9\x1e\xc0\xac\x0bH\xc1\xb0\xcdX\xc1\xc6\xeb-\xc0^\xd4@\xc1:BK\xc1\x83\xf7\x80\xc0{"c\xc1\xf0\xf8r\xc1(\xdc\x81\xc0D7e\xc14c\x83\xc1q\xd2[\xc0\xd1\xf1r\xc1GTg\xc1\xd4\x08X\xc0&\xa7q\xc1\xf2HX\xc1$\xed0\xc0\xafA\x83\xc1\x0b\xcdo\xc1\xa2\x9bD\xc0v \x84\xc1\x11\xf3\x7f\xc1y4F\xc0\x15\xe0\x89\xc1\xdbRe\xc1\rV\xa1\xbf\xb3\xf9\x81\xc1\xb7\xf2m\xc1b4\x0f\xbfx\x93\x87\xc1\r\xeby\xc1j\xed4\xbf\xa5\xb8u\xc1\xc8*`\xc1\xce\x94\xa6\xbfp5m\xc1\xdeAV\xc1\xc2\xf7??\xae-q\xc1\x16\xa5_\xc1[2\x87?\xeb8q\xc1\'\x80p\xc1\xf6\x00q?\x96\xd4Z\xc1\xa5PU\xc1 s\xff?\xba\xbaV\xc1\xe9\xd5N\xc1\x9b1\xa1>\xa9r\\\xc1\x92\xf1F\xc1\x1f\x97w>$ K\xc1\x7f\xe8b\xc1*\xb9*\xbf/\x91I\xc1j\x97]\xc1|0\xb4?\xbd\x94\x80\xc1\x17OQ\xc1B\xea\x8a?\xf9\xb5\x80\xc1e\xaa>\xc1\xf36\x10@\xd0|\x87\xc1\x0b\x92Z\xc1\x8a\x86\x1b@\x00\xc2\x87\xc1\x8b"j\xc10\xbe\x1c@W\x06\x92\xc1\xb4rP\xc1\x02N\xc2?v\xba\x95\xc1\xeb\xf1L\xc14!C@\x11\xc2\x99\xc1d\x1db\xc15\x12\x82@\xad\xd2\x97\xc1\xafAg\xc1\xeca\x1b@\xd3\x1b\x98\xc1!\xd0p\xc1\xde\xd6A@a\xf8\xa5\xc1\x8f\xae]\xc1:dr@1M\xa8\xc13CR\xc1\x9ahT@\x05\xe3\xaa\xc1\x10\xd0k\xc1\x12O\xde?E\xae\xa9\xc1\x13\x04T\xc1K\x8e6?\x14\xd7\xaa\xc1\xe6\xa5^\xc1}\x94\xec?\xcbR\xab\xc1]\xe9?\xc1\xd8\x13O@\xef4\x92\xc1\xf3\x85<\xc1n+-@\xcf\xbb\x93\xc1\x1ax+\xc1a\xd5\x91@\xbd\xd8\x8f\xc1\xa6\xc5>\xc1\x0b\x92\x9e@\x15\x12\x90\xc1pfN\xc1\x1aN\xb0@\x9fT\x8d\xc1\x19j-\xc1v\xbb\xb1@,6\x94\xc1?h$\xc1-\x14\xdd@\x1f6\x8a\xc1\xf6x6\xc1\x9a\xd4\xd9@\xe8\x13\x83\xc1n\xc7A\xc1\xd5)\xe5@\xba\xab\x91\xc1\xc3\xd4?\xc1\xef\x08\x01A$\xef\x87\xc1\xd6B&\xc1\x1e$\xf2@\x8e;\x81\xc1ou\x1d\xc1w\x04\x08A\xb3\x06\x91\xc1\xd0\xfe\x16\xc1P\xaa\rA4\xd9\x97\xc1\xe7\xd0\x1f\xc1\xd5\xa9\xf5@T\x01\x94\xc1`\xf7\r\xc1\xad\x06\x14Ae\x9f\x8d\xc192\x0c\xc1\xd4{\x14A@\xe1\x83\xc1\xee:3\xc1VW!A\x1d\xd9\x80\xc1\x90I)\xc1\xb5\x94\rAw\xcc{\xc1r)>\xc1*\xe0\x1aA\xcf\xd4\x8a\xc1\xba$=\xc1j\xa0\x9e@T\xae\x84\xc1\xea\x16\x1e\xc1\x7f\xe7\x9d@#\x12w\xc1I>$\xc1<\xef\x8d@F\x83\x87\xc1\xeao\x0b\xc1\xa4v\x90@\x95\x1a\x8f\xc1Mk\x07\xc1VFu@\xea\xf5~\xc1;\xed\xf7\xc0-\xe4p@\xf2\xa6n\xc1?\x06\x04\xc16\x9a\x8f@1\xd0}\xc1d\xd3\xde\xc0\x85> @f\\\x82\xc1A\xc5\xe7\xc07L\x08@\x86\xe8}\xc1\xda\xdb\xc3\xc0\xaf)\xdc?\x0e\x10\x89\xc1\x1b,\x00\xc1\x97\x9f\xfb?\nI\x8b\xc1\xd0\xc8\x0e\xc1\n-\xa0>o\xd5\x8b\xc1\xc0*\xf4\xc0\x9d\x89(<7\xaf\x85\xc1\x05\x17\xdf\xc0\xb1\x18H\xbf\xed\x95\x8c\xc1\x97\x0b\x0c\xc1\xa2ZD\xbf \xbe\x83\xc1S\x16\x12\xc1(R\xe6\xbf\xdc\xfb\x8d\xc1\x87\xb9\x04\xc1R\xdc\x03\xbf\xb9\x84\x94\xc1|i\x1c\xc1\x0e\xea\\\xbe\xb1\xa4\x9c\xc1n3\x17\xc1,\xb0\xa7>6\xf7\x91\xc1\x93P\'\xc1TN\xd7\xbf\x05\x1c\x95\xc1>\xe3+\xc1K\xad\xfd\xbf\x02\'\x8d\xc1\x9f\xdd.\xc1\xa2U"\xc0\xebD\x99\xc1Y\x12$\xc1a\xfa\xae\xbf\xc5\x88\x99\xc1\xa8?A\xc1Y\x12\xf5\xbe\xb6\x05\x95\xc1W\xf4H\xc1\x9c7\r\xc0\xaaU\x99\xc1\xa2LL\xc1\xa3\xc3E\xbf\t\xe3\xa3\xc1\x8a\x03>\xc1\x1c3\xa0\xbf\x99R\xa9\xc1\xaf,5\xc1\xf8\x94B>79\xa3\xc1\x14\xdf6\xc1\xc3s$\xbfw\xb9\xa7\xc1D\x00M\xc1\xe0\xd9\x8f>\x90r\x95\xc1\x0f\xec\xd9\xc0\xe1\x98A\xbfn\xe2\x98\xc1R\x1d\xca\xc0\x07;\xb6?\xe4\x9d\x9a\xc116\xd1\xc0#%\x15@\x1a\xd7\x96\xc1\x7f\t\xd9\xc0E!\xc8? \r\xa4\xc1\xa3\x02\xb3\xc0\t\xeeL?z\xe5\xa9\xc1\xe3O\xbb\xc0\xf7N@@f\xbf\xa9\xc1\x96\xe6\xb2\xc0\x0f58@\x0c{\xb0\xc1d\xce\x9a\xc0F\xa6o@\x16\xce\xa4\xc1Y1\xa3\xc0\xad\xb3b@1Q\xae\xc1\x17\x05\xde\xc0\x9c\xf37@\xa2\xe4\xb4\xc1&\x10\xe6\xc0\x186\x92@\xbe\xf6\xb0\xc1\xa3P\xd8\xc0\xa9Qg@H\x88\xa6\xc1\x94\x92\x01\xc1\xdc\xb9\x88@\xc5(\x9e\xc1\xe9\x8b\xfe\xc0\x16\xfb:@\x11\xcc\xa8\xc1%$\x13\xc1\xd5\x8f3@\xc7\xea\xa3\xc1\x06\x10\x1f\xc1\x1dL\x18@\xec\xf1\xaf\xc1\xd1\xe4\x13\xc1s\x99\x91?{\xef\xa0\xc1\xb5-\x83\xc0\xa18\xda>8\xa2\xa6\xc1\xac\xd5]\xc0\xe8n\xbc?\xcb\x86\x97\xc1\xa6ak\xc0?U\x04@(a\x93\xc1\xc1\xf8\x87\xc0\x9f\xe8\x82?\x89\xf4\x93\xc1\x1c8\x15\xc0\nKF?\xea\xd8\x9a\xc1\x9e\xfb\xde\xbf\xa1\\\x0c@h\xfa\x8c\xc1\xab)\xd2\xbf\xba\x8e%@9F\x88\xc1V\xba \xc0\xcf\xd4A@\x89\xc7\x91\xc1\x81I\xb1\xbf\x05/\xee?X\xf7\x87\xc1\xfc\x7fH\xbf\x86\x9ap\xbe\xb7y\x8d\xc1\xd1f\x17\xc0V#\xbf\xbe\x8a\x8c\x84\xc1\xa0\x0f\xe6\xbf\xd9\x93\xa5\xbf~\'\x92\xc1\xfep<\xc0G\xad\x8f\xbf@\xa4\x99\xc1\x89\xc1U\xc0\xc9\x88)\xc0I%\x8e\xc1$\xe9C\xc0\xe4\x86+\xc0\xf5\xae\x85\xc1G\x9fZ\xc0d\x99^\xc0\xe3\xf7\x95\xc1\xfe\x9c\x7f\xc0\xc5\x98Z\xc0+\x9c\x9e\xc1\xf4\xd1i\xc0\r7D\xc0FY\x95\xc1=\xbf\xa0\xc0\xaf\xf9\x9d\xc0w\xbe\x93\xc1\x05S\x87\xc0_b\x9f\xc0\x1fx\x8c\xc1ni\x98\xc0\xdc\xd6\xad\xc0\xc9\xe9\x91\xc1\xe6-R\xc0\r\x9b\xb2\xc0\xd8\x02\x9d\xc1\xfb4\x9f\xc0\x02y\xa9\xc0\xb7\xb4\xa4\xc1\x1b\xc0\x8c\xc0\xbc@\xa7\xc0\\n\x9d\xc1%\xc9\xbf\xc0(\xa9\xe4\xc0\n^\x9c\xc1\xde\x9e\x9f\xc0\xaf\xa8\xee\xc0I8\xa4\xc1\x96E\xae\xc0d\x9a\xef\xc0\x07}\x95\xc1\xbfW\xb2\xc0\xdfK\xf5\xc0\xeb\x8d\x9b\xc1^Qi\xc0\xf1\x1c\xfc\xc0\xf6l\x93\xc1\x0b\xc7`\xc0\xbdy\xe0\xc0\xc9\xfa\x9d\xc1\xa7\xb8;\xc0mB\x08\xc1\xa1\xe1\x9f\xc1\x81Ka\xc0.\x06W\xc0\xb8X\x8e\xc1\xe0\x0c\xde\xbf\x82\xb6i\xc0@p\x86\xc1\x03\xce\x90\xbf\t\x7fi\xc0\x9e\x0f\x98\xc1\x96e\x9f\xbfr\xdb[\xc0\xdf\xca\x9e\xc1\xfdU\xe3\xbfi5\x91\xc0\xf0\x97\x9a\xc1\x07Z*\xbe\x9f\xa6\xb2\xc0\x0e\xbe\x97\xc11\x93M\xbe\xe8Y\x97\xc0\\\xca\xa6\xc1\xb7\x96|\xbe\xe6\x93\xab\xc0\x97\x07\xab\xc1\x83\xe6\x11?AKj\xc0\xe7\x8a\xaa\xc1v\xa5^\xbe\xeb9\xad\xc0w\x9d\xa8\xc1\x86m\xc5\xbf_\xa4\xd1\xc0\xeb\xd3\xa4\xc1f0\xd0\xbf\x90z\x99\xc0\xbe*\xad\xc1\xb6S\x1f\xc0<(\x81\xc0\x87H\x97\xc1\xc8\xf6\x9d?\x9eK\x99\xc0\x9fe\x98\xc1\xba\x7f\x0c@:F8\xc0\xae\xca\x91\xc1\x1c\xef\xae?P\x80\x0e\xc0@\x89\x91\xc1\xe7\x95%?\x14\x89\x1d\xc0\x99\xde\x8b\xc1\xc8\xe3"@!\x80,\xc0m<\x90\xc1*8a@\xca\x13m\xbf\x82q\x8a\xc1ss"@S\x1f8\xbf\x91[\x86\xc1\xb9\x98\xd0?\x04e\xd3\xbe\xe3I\x83\xc1\xd2;r@\xb2\xb3p\xbf\xb9\xbc\x86\xc1\x85\xfc\x97@Vh\x1d\xbf\xddMu\xc1\xc8\x94n@\xa5\xcb=?\x04\xc7\x83\xc1\xcd\x02v@*\xe0\x8b\xbe\x06\xc2\x95\xc1I.\x1b@Oa\x1b\xbf\x15\xeb\x9b\xc1Q\x93\xdc?\xfa:\xd3\xbe9\xb6\x99\xc1\xa4$Z@\xd1\xaf\x9a?h\x1d\x95\xc1Xm\x06@[I\xdb?\x18\x04\x9c\xc1\xff\xba\x1d@\x872\xdd?a\xc6\x8e\xc1^)*@\x8a\xd6\xae?\xb9X\x95\xc1f\x9c}?\xd1\xc9J\xc0]\x0f\x81\xc1\x03\xc7\'@Z_u\xc0\x88\xdb}\xc1\x95\xfej@j\x83J\xc0\xf5Vv\xc1\x00\x7f\xbf?\xcf\x91.\xc0\x94q|\xc1\xbaZ\x1f?p\x86q\xc0\x84\xbaa\xc1Z\xff\xb7?\x16\xd2r\xc0:\x1aZ\xc1w~\x1b@\x04EB\xc0\x85\x8aS\xc1\xe1\xaa\xe7>\xb2\x00o\xc0P\rJ\xc1\xf9O\x06\xbe\x1c\xbb"\xc0\xce\xf3]\xc1\xa6<\x89\xbe\x17\xde\x01\xc0\xd47C\xc1\xa6\x19\x90?U\xf1\xbc\xbf\xb7\xf3<\xc1E\xe6~>\x9b\t\xa3\xbf\x8d\xcbK\xc1\xc7\x14\xdd?I\xbd4\xc0\xa2\x81-\xc1\xed`\x06@8\xc6z\xc0\xc5\x11!\xc1{HZ?04e\xc0xW\x11\xc1Y\xfe\x08?\x83\xac\x9f\xc0\x1f\x8c \xc1nL\x93?\xb4\xafw\xc0\x1a`+\xc1\xc9g%\xbd+#\xa6\xc0b\x05c\xc1\x93\xb8z?\x01\x1b\xc2\xc0&\xbcT\xc1i\xd6\xa3?\xe4\xfd\xb0\xc0\xef\xc8t\xc1\xcb\xe9\x85>kJ\x99\xc0k\xe9~\xc1\xef\xb1S>\xfe[\xde\xc0\x92\xb3z\xc1\x91b\xe8\xbd\xd5V\xea\xc0\xae\xd1k\xc1n\xa9\xb5\xbe\xf4K\xe2\xc0\x83e\x85\xc1+\x93\x9f\xbf*\xdd\xe7\xc0\xd5\x01\x8e\xc1ea~\xbf\x1b\x94\xc6\xc0;\x9d\x84\xc1\xf0Z\xfa\xbf\x01\xa4\x04\xc1\xe8\x00\x83\xc1\xcc\xac\x05\xc0~\xe4\x11\xc1\xb7\xd2w\xc1.-\xd8\xbf=\xee\x07\xc1C\x02\x88\xc1\x19\xd9I\xc0\xa98\xf6\xc0K\xd6\x80\xc1\xf1.\x91?\xc3S\x0c\xc1\x91\xccz\xc1\x1bR\xb0?\xcb-\xe1\xc0\xdb\xd9\x86\xc1<\xdd\x06@X\x14\xc3\xc0\x92\x01\x8a\xc1\xcaZ\x02@\x02\x1a\xf7\xc0\xa3\xad\x88\xc1H\xe6U@w\x89\x0b\xc1}\x06\x8b\xc1\x94sJ@\xcc\xd2\xe6\xc00W\x92\xc1\x80c\x83@\xa4\x00\xc4\xc0X\x1f\x91\xc11\xda\x86@\xc9\x9f\xec\xc0\xf8E\x99\xc1\xc1\xea`@\xf8R\xf7\xc0\x00E\x93\xc1g\t\xa4@\xf1\xf7\xf5\xc0\x13\xf4}\xc1\xba\xf2\x89@\x1d\x9a\x0b\xc1t\xc3s\xc1$Q\x8e@\xdc\xaf\xd2\xc0:\x0ew\xc18\x83\x9f@Nb\xb5\xc0\xb8\xd0|\xc1\xd3\xf8\x98@\x18y\xd3\xc0f\x19d\xc1\xd0&\xb9@}\x0f\xf1\xc0\xc5\x0ce\xc1c\x16\xce@DT\xd0\xc0E`V\xc1L\x07\xa4@\xce\x9f\xaf\xc0y\xc0`\xc1\xa6\xb7\xd9@\xb1\x1f\xb7\xc0\x9c{[\xc1\xe5,\xfe@[\xd8\x87\xc0\xc4\xaea\xc1&\x1a\xca@\xef\x96\x80\xc0\xe0\xa6e\xc1DT\xab@\x10>G\xc0\x16\x07Y\xc1\xc4\xda\xe2@\xdf\x92X\xc0\xdd\xa5K\xc1\x83\xef\xf6@G\r"\xc0\x00\x83h\xc1\'\x06\x02A\xaeI\xee\xbf\x90Rt\xc1\xe1\xaa\xf0@w\xadT\xc0\xd5\xedq\xc1"\x07\tA\xe1\x84\xe8\xbf\x95\xa1]\xc1L-\x14A\xafq#\xc0A\xd8Z\xc1\x8e\x1d A\x8d@\xb4\xbf3\xc5M\xc1f\x9b\x10A{\x0b#\xbf\xe5\x12j\xc1\x11=\x1eA\x0c\'\x89>7\xf3h\xc1@7\x13AM\xb3k\xbf\xbc\x11{\xc1-\x06\x1bAa\x84\xdb\xbd\xea\xaab\xc1\xe9#4A\x0c\xd6\x0e?e\xa0m\xc1(`:A"\x11u\xbf\xe2\xda`\xc1\x95\xa7?A\x8a\xa8\r?-AM\xc1/\xc61A\x93\x069\xbe\xf5\x9fB\xc1s\x8d+A\x93\xb2\xa4?JPL\xc1\x0b\x89&A\xf0\x00^?\xcb\x0eH\xc1\x0f\x9e@A{\xec\x03\xc0$\xc6R\xc1\xec\xf8\xc0@\x81\xa6\x07\xc0\xaf\x9bY\xc1\xeaB\x9c@%\x84\x93\xbf\xd0\x96C\xc1\xefF\xc9@q)\x9f\xbf\x8fX;\xc1\x89\xeb\xe3@\x8a\xf1\x80\xbds\xb1>\xc1\x93\x0c\xab@\x9f\xe0\t\xbf\xcc\xc1:\xc1\x0b\xfc\x8d@\xe5\xd8T?K_,\xc1bo\xbc@\x86\x94\xcc?n\xf6%\xc1\xcc\xfa\xa3@Q\x1d\xa6?d\xf13\xc1\x98\xe6\xd8@\xafx\xcc\xbdu9\x1a\xc1\xa9.\xcc@\xcc\x82I\xbf\xeb\x03!\xc1\xb7\x02\xe4@;\x7fU?A\x1a\t\xc1\xd9\xc3\xe0@\x9e\xde\x97>\xce\x0b\xf8\xc0Y&\xf3@\x1d\xa4\xaf?\xd7\xb0\xff\xc0\xae\x8a\xc8@\x95\x98\xbf?L\xff\x11\xc1\xc4\x05\xf5@\xd6(v\xbf\x08\xbf\x0e\xc1\xdc\x1c\xaa@\xc3#\xeb\xbf\xb9\xab\x17\xc1{}\x9c@E\xc0\xc8\xbe\xc4`\x08\xc1Bb\x8e@\x80\x9f\xa1\xbf\xda\x19\xff\xc0\x08\x05\xb7@K\xa3Y??%Q\xc1>\xf1\xa0@\xcb\x1a\x8c?\xa7\x00^\xc1<\x93\xbc@\x81^\xb4?\x0ecQ\xc1\xb1\x02r@}\xf0\x80?\xc3uH\xc1\xd4KF@H\x83\x1a@u\x96`\xc1\xa4\x96T@\xbd\xa1\x0b@\x15\xffo\xc1\xc5ok@\xba\xbf\x1f@&\xfb`\xc1\x15\xe0\xe0?\xa3\x80&@\xbfKQ\xc1\xb4\xbd\x9f?\xbc"g@\xa7\x9ao\xc1Wd\x93?9\xbe_@\xebw\x80\xc1/\x03\xc0?\xb6\x00\x96@\xdc\xe7k\xc1\xd8\x1b\xb2?\x05\x14d@\x16:p\xc1\x12\xe3\x95=f\x86\x9b?;\x15l\xc1\x0c7\x98? \xb1\xb0?\xaf?p\xc1\x80\xaf\xfb=p\xf3u>?\xcad\xc1\x8c\x8f\xaf?:3\x9f?<\x07|\xc1=y\xd9?\xa2\xdbo@\x8coY\xc1\xc5-}@\x8b\xc8\x7f@\xcbTG\xc11\xb1\x8b@\x12\xd7\x93@\x84\xdei\xc1\xb6\x96\x80@!\xce\x90@\xb5\xbfy\xc1n~p@\x86K\xc1@|\xf8g\xc1\xb0\xde\x8d@\xf6\x05\xc3@\x9c\xa4_\xc1\xf5@\xab@\xe3\x92\xd3@\xb1\xe4}\xc1=\xa2\x9b@\x92\xe1\xf6@\x87\xbe}\xc1-\xf0\x9c@\xb2\x1f\xc4@_\x15\x87\xc1\xf6t\x7f@K\x0e\xdf@\xa7X\x89\xc1}\xf7_@\xe8\xe4\xbe@\xd1\x1e\x82\xc1G\x8b\xc7@\x1a\xfe\x9a@n\x1d\x81\xc1:\x90\xc1@\xa9\x1b\xca@\xa8\xa3z\xc1n\xb1\xe3@\xa2\x89\xc7@.\xc3\x8a\xc1q\x07\xcd@\xfcD\xdd@\xb8n[\xc1Kr]@\x96R\xd3@3{I\xc1naE@\x7fJ\x00A\x08\re\xc1.\xcf>@\xc0\x0f\xff@\x1e+u\xc1\xe7\xb6=@\x8c\x05\x12Ar=Y\xc15E)@~\xe0\x0eA#UH\xc1\xdf\xa7(@\xac\x18$A\xf8\xa5]\xc1\x02\x8dn@0$3AV\x10X\xc1I\xceO@\n\xd7%AC`o\xc1\xbc\xed}@\xeah!Ah\xbdQ\xc1\xbd\xbe\xa0@&\xdc0A\x97\xd3H\xc1\xc2M\xb1@f\x00\x0fA\x8dyO\xc1\xce\xb9\xad@a\xe9\x1bA\x1d6_\xc1\x0c\x89\xa2?1\x1a\x1bA\xf8\xcaR\xc1)\xf0\xa6>3\x88$A_^\xe75A\xf2Y\x8d\xc1]v\xa3?\xde\xd83A$\xf3\x8f\xc1S\xf7\x10\xbfJW\x14A#\x18\x91\xc1\xd1\x99\x17?\x06\xa1\x17A)\xb7\x97\xc1=\xb4\xa0?f\x1d\rA\x99\x88\x93\xc1;\xbb\xbd\xbe\xf4X\x03A2\xb2\x89\xc1\x87\xcc\xa0?\xe03\x04AF\x89\x87\xc1b\xf0\x1c@\xf8\xf0\xe9@\xbeu\x86\xc1\xe0\xde\x12?\xe6\xa0%A\x84\x16z\xc1s\x9e\xa7\xbf\xf8\x971A#\xdeq\xc1\xae\xd6\x08\xc0St\x11A\xe2\x1c\x7f\xc1\xd1\xf8\xcf\xbfB\xed\x07A\xe6\xa6\x82\xc1\xea\x88a\xbf\x83~\tA>)|\xc1/NA\xc0\x9bc\x17A\xbdE~\xc1D(i\xc0\xf1|\xec@\xd4\x91\x85\xc1\xce\x11K\xc0\x94\x02\xd7@\xfe\x00\x83\xc1\x88\x03\x16\xc0\xa0\xdb\xf6@H\xae\x8d\xc1\xe17>\xc0\xc6\x9d\xcc@\x854\x85\xc1iH\x89\xc0\x17\xff\xbf@\x1cmy\xc1\xe0s\x8c\xc0\x90\x07\xe4@\t\x15\x88\xc1\xfc\xc1\xb4\xc0\x1ar\xf8@\x9a\x8a\x8f\xc1&>\xb1\xc0\x91X\xfe@d\x19\x82\xc1\xf1\xa1\xbc\xc0\xef\xbf\xcb@\x02\xe8\x86\xc1VA\xce\xc0\x94\xc5\xa4@\x18r\x8c\xc1\xed\x94\x82\xc0\'x\x94@\x98\xf1\x8a\xc1\x85\'J\xc0\x8c\xf6\xaa@\x10M\x95\xc1Q6\x84\xc0xR\x8f@\xa7\xc3\x8a\xc1\xe5\xf5\x9e\xc0t\x86\x03A\xaa\xc9d\xc1%}U\xc0\xa05\x04A\xef\xde\\\xc1\x80\xff\x8e\xc0\xfb5\xfe@\x9a\x8dX\xc1C\xc4\x0e\xc0\xac\xd2\x00A%c_\xc17\xe1\xaa\xbfh\xd1\xf0@\x9amB\xc1\xd0\x14\x16\xc0u[\xdc@_\x1fA\xc1\xd0\x00P\xc0 u\xd0@\\\xcc:\xc1H\xaa\x9f\xbf\'\x9f\xe4@\xdci8\xc1\xfa\x8d\xc8\xbe.f\xbb@:\xb3$\xc1\x96=\xdb\xbf\xfc\xc2\xb1@>\xe7&\xc1\x8e\xd9.\xc0\x0f\x91\xd5@\xd5%\x19\xc1BR\xd0\xbfv\xc6\x9d@\x84a \xc1\x1e\xcf\x8d\xbf\x8c\xab\xac@-\xcdK\xc1\x08\xdb\x8c\xbfC\x02\xb8@\xbe\xa0[\xc1@})\xbf\xceA\xa3@\xa4\x9cN\xc1\xac\r\x0b\xc0\xce\x9b\x91@\x8a\xadE\xc1\x8f\x00\x15\xbf\xa2n\nA\x87\xf92\xc1U\xdc\x1f\xc00\xb8\x08A>\xa6#\xc1\xd0%N\xc0\x04\x7f\x1dA\x90=7\xc1[\x0b\xf5\xbf\xc8j\x1cAb\xbbC\xc1\xf6D\xa5\xbf\xf2\xe22A%\xe6.\xc1!c\x10\xc0\x1f\x881A\x04C\x1e\xc1*O\x05\xc0\x04\xbcDA\x1c\x908\xc1\xce_\xbc\xbf\x8dSDA\xcecJ\xc1\xde\xa7\xcb\xbf\xe3\xc8ZAqt0\xc1a\xb2\x05\xc0lPXA\x12A\x1e\xc1\xd6\xde\x0f\xc0s^]A\xdf\x059\xc1\xa8\xc8I\xc0\xbf\xbagA\x98\xb03\xc1EC\xba\xbf_\x00CA#p3\xc1\x8b\x0e,=\x05\xc21A5\x900\xc1!\xf7\x8f>b9JA\xcd\x8e#\xc1\xe8\x05R>\xce\xaaLA\xa6NE\xc1\x0e\x01v?\x9d\x10NA\xb1\xa5?\xc1\xbb\xc7\x03@\xbc\x8d[A9~J\xc1\\\x11\n?\x1a\x1fBA18T\xc1\xf8 m?\x1a\xd67AZ\xf8/\xc1Elo\xc0\xce\xe6=A*\x9f \xc1s)\x8b\xc0\xefm4A1\xd9C\xc1\x94\xe7\x8b\xc0\xf5c.A\x97$P\xc1-qt\xc0\xd8\x0f;A}\xd9G\xc1\xfc\x08\xb9\xc0\xf3\x9fKAq\xbfB\xc1l\xa0\xbd\xc0\xcd\x1e;A1"`\xc1\xdc\xa1\xc6\xc0\xe5\x0b+A\xf7\xd4g\xc1\xc56\xc3\xc0V\xe5GA\x966j\xc1\x11\xc2\xb7\xc0\xcd\xea?A6\x1da\xc1WR\xe8\xc0\x14\x81,A\x8d\xe69\xc1S\xd0\xd6\xc0\n\xf70A\x0c\xba1\xc1S\xdc\xf8\xc0\x08N\x17A\xd2|8\xc1\x003\xc9\xc0\xdaD\x14AS\xa7@\xc1U\x10\xb0\xc0%w\x08A\xc9\xaf*\xc1\x8e\x1a\xe1\xc0\x89b\x0bA\xda\xbc+\xc1\x97~\x01\xc1\xab\x1d\xe1@\x19\x030\xc1\x10\xa5\xda\xc0\xce=\xcd@\xbc8%\xc1\\J\xef\xc0\x91\xb7\xd9@\xfd\x01,\xc1s\xd9\xb7\xc0\xdf\x12\xd8@G.G\xc1\x03B\xe2\xc0\xf1#\xf1@\x92\xf8P\xc1o>\xd0\xc08\x81\xac@\xaf\xbfJ\xc1S$\xcc\xc0\xc9o\xa3@8\x12[\xc1d\xbf\xcc\xc0\xc3/\x93@\x99\x81?\xc1:\r\xd9\xc0P\xd6\xb1@N\x0fF\xc1\xd4\x8c\xab\xc0\x88o\xd8@3sM\xc1\xa9 \x08\xc1\xb1\xd2\xfb@g0M\xc1q\xd2\x0e\xc1\x06\xd5\xc4@-LB\xc1w\xc9\x11\xc1t9\xcd@]5_\xc1"\x0f\t\xc1\x8cG\x0bA{n\x13\xc1P\x9e\xd4\xc0\x03\x84\xff@\x07]\x06\xc1 \x01\xe6\xc0XR\x1aA\'\xa0\r\xc1<\x1c\xb8\xc0[\xaf\x1fA\xf2\xe5\x17\xc1\x08\x16\xa4\xc0\xb93\x1fA@\x11\xee\xc0\xee\xc8\xae\xc0\xd6\x90\x12Ax\x9e\xd9\xc0\x11\xe7\xbc\xc0\x1en!A\xddi\xe3\xc0\x86\xa9\x80\xc0\x9fE+A\x14C\xfd\xc0\x82\xacg\xc0B\xef-A\'q\xba\xc0\xab\xc6m\xc0c\xaf)A\x8f\xe3\x9f\xc01\xf9\x8a\xc0M\x05@A:\xc3\xba\xc0[\x84v\xc0\x99v,A\x1bD\xb0\xc0w\xa5+\xc0 {\x0bAH^\xe1\xc0\xbc,W\xc0\x88\xba\x02A)\x05\x00\xc1\xfb6g\xc0\x19\x9c\x02A\xa2\xdc\xc3\xc0\r\xc0o\xc0\xf9\xfc\x0cA\xe3\x98\xe0\xc0V\xfe\x11\xc0I\x803A&\xdf\xe5\xc0\x86\xd3\xc7\xc0BP3A\x8c\x0b\xc6\xc0\xf6\xc1\xe0\xc0\xc0\xdfEAv\xb6\xfe\xc0L\x17\xc3\xc0zKDA\x0b\xe8\x0c\xc1X\xc4\xb3\xc0~\x9c[A\x9a \xf1\xc0\xd0y\xcb\xc0\xc2\xe4\\A\xfd\x9d\xcd\xc01\xb8\xc8\xc0\xd8\xd2iAMb\x01\xc1\xce\xa3\xa6\xc0\x1bHlA\xfb#\x11\xc1\x7f\xfb\xae\xc0.\x11`A\xc7\x82\xfc\xc0\x96\x1e\x8a\xc0Q\x1e\x7fA\xbf\xcf\xea\xc0&\x8d\xa4\xc0LE}A}\xba\xca\xc0\xaba\x98\xc0@\xcf\x83A\xafX\xe8\xc0\xe9\x03\xc3\xc0\xc9d\x88A\x95O\x01\xc1%\xc3\x8b\xc0:\xa8\x85A\xe6S\x04\xc1\xf4\xfaY\xc0j\xe1\x8fA|V\xec\xc0v\xb0\x86\xc0c\x10\x8cAR\x83\x14\xc1T\x1c\xa6\xc0\xf0\xf4\x94A\xaa\x10\x14\xc1\x1a\x1b\xa7\xc0\xb0\x1b\x88A8\x16\x16\xc1D\x14\xc7\xc0%E\x89Ay\xbc\'\xc1u\xbc\x8e\xc0\xfax\x81A\xa6u&\xc1\xc4\xce\x85\xc0\xec\x8b\x8eA\xbdX)\xc1M\xcdg\xc0\xb1\x1b\x8aA\x15\xb75\xc1\xf3*\xa4\xc0\x14jeAK\x1e\xfd\xc0<%\xf8\xc0O\x92lA\x02\xfa\xde\xc0\xb2\xed\x05\xc1\x9c\xa9dA\x85\xcf\x12\xc1\x9aa\x03\xc1\xe8\xbfcA*a\x1d\xc1E\xbd\xed\xc0e\x94jA\xad\xc8\x1b\xc1\xdf\xbe\x17\xc1\xe2\x18{A\x19\x9b\x16\xc1\x0f\x08\x1d\xc1\xd6.hAk\xfa4\xc1\xcd\xf4\x15\xc1\x9b\xd7jA\x04\xb2;\xc1<\x0b&\xc1\xd2dYA\xac\x8e9\xc1\xecN\x0f\xc1\x11[zA\xb3\x1dA\xc1\xea\xf4\x07\xc1\xc5\x1a\x85AK\xab?\xc1\xde\xb1\x0f\xc1\xc2CtA+2Q\xc1`\x7f\n\xc1\x19\x9f{A\xe9*<\xc1\xbaB\xe0\xc0\xdc|\x86A\x8b\xb2@\xc1\xb2-\xce\xc0\xe5\x1clA\xad\x842\xc1\xd4\xf5\xcd\xc0\x8a\xf0ZA\xd1\t\x13\xc1^\xc4(\xc1\xb1^aAo{\x0e\xc1!\xf2:\xc1\xf8MGAS8\x0e\xc1|e"\xc1u\x8cBA\xa3\xdf\x13\xc1\xbc\x1a\x14\xc1\xe6\xbc7A[\x13\x01\xc1\x0c\x11.\xc1\xec\xa73A\x9a\xd4\x08\xc1G\xc3=\xc1\xf7b#A\t\xde\xfc\xc0\xb9# \xc1uE(A\x97\x0f\xeb\xc0\xec\xfc\x10\xc1Ry\x1fA\xcd\x0e\x0f\xc1\x91u\x19\xc1\xde\xde\x0fA\xa9M\xe7\xc0`\xbe(\xc1\x19p\x12Ad,\xc4\xc0\x8c\xc7+\xc1\xdc5\x01A\xd2\xe3\xeb\xc0\x82\x0f\x1d\xc1F\xd3\x06A\xf1>\xf7\xc0\x19\x1b>\xc1\\R\xfb@ns\x0b\xc1x\xab;\xc1Q\xe6\x12A`\xd8\xf9\xc0\x11\xe7J\xc1$\xb0\xec@\xf8\xae\xd9\xc0\xebFF\xc1c\xee\xce@\xb6%\xd9\xc0VaA\xc1\xc0H\xf7@\x93\xdc\xb6\xc0wzR\xc1\xccq\x0eA\x11@\xac\xc0@\xba[\xc1\xbf(\x1aA\x10)\xc2\xc0\xfb\xff\\\xc1\xd5\xd2\x0fA\x99\xcf\x91\xc0\x87~e\xc1\x03\xa0\xd9@\xfef\x97\xc0P\x80T\xc1\x0f\x83\xbc@d\x94\x99\xc0lGO\xc1x\xae\xe3@\xf9\x14z\xc0>\xc1]\xc1\x8fN@A\xdc\xc9\xd4\xc0\xb3k5\xc1\xfe\xa15An\xc3\xc3\xc0\x86XC\xc1*\xbbPA;<\xc3\xc0\x8b\xba+\xc1\xbdmVA\xc0\xab\xcf\xc0b\x14\x1e\xc1\xf8sWA\xc7A\x97\xc0\x1e\xfb/\xc1x#IA\x90\xf5\x87\xc09\x042\xc1\x8avbAV\xcb\x83\xc0\x1a\xe4\x1c\xc1\x1a}pA\x8e\xfa\x99\xc0}\xf5\x17\xc1\xe8whA\xbaS*\xc0#\xb1!\xc1\xb7\xf6ZAYQ\x04\xc0Ot\'\xc1\xe8\xb7uA\xe9\x08$\xc0\xdb\x9f-\xc1\xde\xeenA\x9ed\t\xc0jh\x14\xc1N_RA\x85\xcf\x86\xc0]\x9b\t\xc1\xd7\xf0IA\x02\xbf\xa5\xc0_k\x07\xc1R|EA\xf82[\xc0\xc3@\x0c\xc1hS[Ab\xcdw\xc03B\xe7\xc0\xac\xafaAD\xa84\xc0\xf4\xba\xe5\xc08=iAJ\xbe\x91\xc0\x84\xef\xdf\xc0\xbc\x0fPA\x19\xbc\x82\xc0\x87\x11\xcd\xc0\xd7\x91dA\xd7,\x95\xc0\xf6\x92C\xc1\'\x90eAY\xbfi\xc0lbN\xc1\\nkA\x85\xf2\xbb\xc0F\xe2K\xc1\xc1ufAlX\xd7\xc0\x93SE\xc1\x86\xe6xAv*\xbe\xc0\xeb\x93^\xc1\x04\x07\x82A\xe7\xe2\xa4\xc0\x10\xed]\xc1\xfb\x1b\x82AC\x87\xe8\xc0/\x1f^\xc1\x8fmyAL"\x02\xc1\r{[\xc1\xd7b\x87Al\x93\xe9\xc0\x07\xb3P\xc1\x99\xc2\x86Al\xf7\xf0\xc0\x9a\xd0k\xc1H\xdelAH\xfc\xba\xc0\xbb\xc2s\xc1\xaffoAk\xd5\xd6\xc0?\xd2\x80\xc1\xc0\xef]A\x16c\x9a\xc0\x8a\xd7t\xc1\xaa\xb2\\A\xbf\x88\x87\xc0\xb0\xeeg\xc1z\xb6OA\xcf\xcb\x92\xc0\xcc\xac\x82\xc1\xc7\x87VAz2\x9e\xc0\xd5.\x8a\xc1\xd1h9A\x11\xe3\xaa\xc0d\x17\x81\xc1\xb0e.Ad\x17\x9e\xc0\x17X\x87\xc13\xc40A\x96\x8b\xa3\xc0\xe0as\xc1\n\x0c:A\xbf8\xdd\xc0B\x19\x83\xc1\x8e\xeaHA\xde\xc3\xe3\xc04\x15\x88\xc1\x0e\x86*A\x1b\t\xe4\xc0\xb2\xc7\x87\xc1\x99~9A@z\xf7\xc0Cgr\xc1&\x8f\'A\xff!\xf8\xc0\\\xb0i\xc1\xe6KKAx=\x04\xc1\xcd_j\xc14\x84JA\xea<\x0e\xc1\xd2\x1a]\xc1\xff YA\xcb\xe8\x01\xc1\xa0\x06q\xc1\xa5PMAc\xa1J\xc0\xf6\xad\x84\xc1g\x1cQA\x00\x97\x16\xc0+\xbe{\xc1\xf1pEA\x15\xaf4\xc0|\x0c\x8e\xc1el@A\x08#d\xc0\xcc\x17\x92\xc1\xeb)EA\x96\xc6\xbb\xbfE\x8e\x92\xc1\xfd\xdbTA\xad\xd3\x80\xbf\x89\xfa\x92\xc1\xe4\xcd=A\x18\x9e\xc3\xbf\x91G\x9e\xc1\x1b\x986Ai\x06\x11\xbf\x83\xe3\xa0\xc1\x1f@0A\xf5\xea\x0f\xc0|V\x9f\xc1\x02\x00OA\xee\x18\x08\xc0\x81x\xa6\xc1\xd1\xcfFA\xdce\x17\xc0{\x86\xad\xc1\xc4\xf1VA\xbf\x91>\xc0\x81\x1e\xa3\xc1V\xce_A;\x99\x91\xbf,K\xa8\xc1\xb9wZAE\xca\xb3;Y\\\xab\xc1\x1cIsA\xe0M\xc1\xbf\xdd\xc2\xa6\xc11\x846A\xb3)\x05\xbf\xcf\x88\x8c\xc1\xdf\xeb:A!z.?\xa9S\x8c\xc1\x9a6&A\x85\xb3\x81\xbf\x90\x0e\x87\xc1\x84\xc1"AX`\xfd\xbf\xd5\xbb\x85\xc1\x16\x1c\x19An\x19\x1f\xbe3.\x80\xc1\xdeE\x18A\x14{K?\xa1\xca\x83\xc1\\b\x02A\x8d\xa7N\xbf\x8dT}\xc1\x00\xe9\xf4@\xebxl\xbfY\xb0\x86\xc1\xd2=\xf1@\xb1.\xec\xbd\xa1\x1bu\xc1\xca9\x01A\\\xd1\n\xc0\xb3kr\xc1\x9d$\xe0@e\x97\'\xc0\x1c\x8bk\xc1\x97\xff\x11A}\xb38\xc0\x9f\x1fs\xc1\x98D$AR\xad\xdd=>Lk\xc1\xb2\xbc(A9\x14\x9f?\xb9\xbdd\xc1p\xa3(A\x88\xd8b\xbf\xeb2_\xc16\xa8$A\xa5\xda\xe2\xbf;\xc7e\xc1r\xb3/A\xe7\x0bf\xbf\'\xe0H\xc1\x11\xf5%A\x03B\xe0\xbd\xc8\xb4@\xc1\x98/-AA\xe3\x10\xc0\x19\x94>\xc1\x1au6A\x0f{\x13\xc0\x9d\x0e/\xc1]k2A\xb8\xe2G\xc0O\xd6H\xc1\xdc\x95\x11A\xa9f\x1c\xc0P\x866\xc1S\xa7\x13AP\xe0e\xc0!&,\xc1\x86\x9aFA=\x1c\xc3\xbe\x0c\x96F\xc1\x0c\xafLAP\xea(>Jk5\xc1e\x90TA\x8c\xa6\xdb\xbe\xc2\x81W\xc1\x94\x07PAk\x07\x83\xbf\x02\xebc\xc1\xf0QkAH\x01\x8a=!\x05W\xc1\xdfArAzZ\xd3\xbe\x82\x81I\xc1\xf6\x01yA\xf4n\xd0\xbe&Fj\xc1s\x9cyALr\xc9\xbfZ\xd1j\xc1\xb8\x85\x84A\xb6\x9cb\xbe\xfb\xaed\xc14\x10sAj\xc1Y=\xe6\x88\x80\xc1\xd3=aA\x9f\xeb\x93>\x98\x00\x81\xc1,\xa3uA\x16\xa54\xbf\xf2\t\x86\xc1\xf6Q}A@\xfe\xa8?[$\x85\xc1et\x86AR\xeb\x99?\x83;\x88\xc1\xc8\x02\x7fA\x19\xe7\x00@\xf9\xc4{\xc1m\xcemA\x9c-\xfd?\xac\xdb\x8c\xc1\x08pdA\xf2\xa3+@,0\x89\xc1\xce}jA\xf5y\xd0?-\x01\x97\xc1PIyA\xde\xe8c?\xd1\x93\x9c\xc1\x81\xbc\x81AB6\xc2>\xe6\x10\x98\xc1\'\xfasAZ7\x9b>\xf8\x90\xa2\xc1\xa4\x95XA\xd9\x18\xed?\x92\n\x9c\xc1\xcf0KA\x1b.\xf1?\xc5\x9c\x97\xc1\x04qWA\xb3l\xa3?VJ\xa3\xc1\x08PlA\xf5v\xd0?/\x07T\xc1Jz|A\xd1\xc5\x0b@\xe0\x16M\xc1\xd9\xd2ZA\xd6\xf8\x14@\xcb\x06Y\xc1\x97\xa1MA\xec\x17\xed?\x13\xfc]\xc1_\xbcYA\xcf\x17q@\xf5\xedU\xc1\xdb"hA`\xae\x87@\xb9YY\xc1\xc5iGA\xa1\xd4\x89@6Uc\xc1\xd3\xcaCAL\xa5\xad@\xf8\xbac\xc1\xbe,8AA\xe3k@\xf0\xd1]\xc1W)KA=\xb8~@l\xb2z\xc1D^\\Ap\xc9\x86@\x11\xed\x81\xc1P\x00AG\xd9M@6\xb7\x8a\xc1\xdc\xf52A)~2@\xb1\xaa}\xc1\x1c\xc5SA\xa2\xf8\x80@\x03\x8a>\xc1\x1b\xa7\\Ar\xd8\x9b@\xb3)2\xc1f\xcfCA\x90YT@\x0c\xb18\xc1\xedh>A\xd2\xe3\'@\xc8\xe9B\xc1\xf7\x98:A$\xccX@\xe4b$\xc1\xa2>5A\xa8\xf3\x8d@\n\xc6#\xc1\x18\xc8EAD\x00A@\xb5\xfd\x18\xc1 \xc1&A-\x9c @\xac\x8e"\xc1N\x91\x1eA\xd6\xc1\xf9?\xf3R1\xc1\xce\xb3\x1dA\xfcq\x18@\xc1\x98\x0e\xc1o\xe7$A\x81\x00*@\xc8\x1c\x01\xc12\xe3\nA\x94F\xd2?*\x07\n\xc1&\xc4\xfd@g\x06\xd6?\xe9\xac\x16\xc1\xd3\xde\x0fA\xadQ\xb9=\xd56\x07\xc1\x06J\x14A\xb3\x1a\xe1\xbeO\x0e\x16\xc1\xee\xa2\x02AG\x1d\xfe\xbe\x88\xf3\x01\xc1\xe0\x86#A\xe2\x826\xbe\\&\xf3\xc03\x1b8A\x8f}\xc7\xbe\xeeV\x00\xc1\x15$\x98\x15\xac\xc0!P\xd0@;\xf4\x05?\xb2\x19z\xc03b\xe9@\xd5\x0b\x81?B\xf4`\xc0\xea\xf1\xc0@\xf0\xf3*\xbfA\x0cP\xc0\xa8\xd8\xb6@\xb5W\xb2\xbfl\xd8\x7f\xc0z\x10\xea@C\x94\xa7\xbf\xb0\xe2$\xc0\xcf\x9e\xdd@\xbcG\x01\xc0\x9f\xa6\xe6\xbf\xcf\xa5\xf9@o\xed\xf9\xbe\xb0k\x06\xc0?\xa8\x04AS\xc8\x04\xc0\x0flX\xc0\x1f\x0c\x0eA\xf9\x94\xb1\xbf\x10*\x82\xc0\x9d#\x16A\xa6\xcd"\xc0\t=\x17\xc0\xb6\x9f\rA\xc8fJ\xc0\x82\x8b\xcc\xbf\xbc\xae\x1eAI\x9d\xdb\xbfF0\xed\xbfmD!A\x16"H\xc0I\r@\xc0\xfb\xd6\xef@\x0e;P\xc0\xa7\x02\x81\xc0\x9d1\xdf@\x97\xd4=\xc0\x00\xdc\x9e\xc0\xf8\xe9\xd8@\xff\x05u\xc0\xf0\x81V\xc0\x05`\x05A\x1fx}\xc0\'\x7f\x89\xc0\xda\xb8\x9f@:\x0e\xdd\xbe\xfe:\x0b\xc0\x80\xc4\xa4@\x0e\xe6\xf0>\xb4\xc1\x80?}Y\x0f\xbf\xba\x08A@\x13\x00&\xc08\xa4\x8e\xbe\xa4\xe8P@\x189f\xc0\x8c:j\xbf\x9fK&@\xad\x961\xc0\xbbL\x80?\xd8+\x11@}p\xf0\xbf|t\xb2?\xa4\x82"@e\xa6\x82\xc0j\xd1\xd7?\xfd\xa3\xd7?\xaeq\x96\xc0\xf62\xae?\x928\x1a@\x1f\x85p\xc0\x91&+@}\x0en@\xf3F\x9f\xc0\xe3\n\xd6?\xd7\xb4l@"\xc6\xc6\xc0h\xe5\xe7?\xd0\xaf\x9b@\xbd\xeb\x89\xc0p\xa7\xc4?\xd2\x99\x9c@PmQ\xc0\xe1\xdf\xc1?{\x10\xc5@\xf5F\x9d\xc0\r\x1e\xda?\xc1\xcd\xc3@\xf1[\xba\xc0\xd9\x90\x10@\xf5\x0c\xd4@\xc5\x13\xa8\xc0\xec4\x90>\xb6\xa9\xd6@\xd6\xe3\x8c\xc0<4\xc9\xbe\xcc\xca\xbd@\nB\xbf\xc0<\xcd\t\xbe\x1e\x07\x00A\xf7\xb2\xbf\xc0SC\x98>lW\x14Aj\x86\xaa\xc0\xf2&\xb4>\xe0\xcd\x14A\x1c\xdb\x89\xc0\xa7\xf1\xf1>HK\'A\xf1\xa3\xc3\xc0\xfd-\xb1>t\x1c7A\xcdA\xb3\xc0~\xa8\xb9>8\x02\'Al\xc1\xef\xc0h\x0b\x7f>\xe3\x196A*^\x00\xc1\x90\xa5K>\xe8]\x00A\x07\x8e\xeb\xc0%\xd8p>\xaa\xe1\xe0@\xef;\xfc\xc0\xc2\xaeP>\x9e\x9f\x13A\xf4}\x02\xc1`\x95p>\xac\xf6\x13A\x9de\x13\xc1~\x04>>G\x08\xe1@\x81#w\xc0\xac|\x15@\x14\xe7\xd8@\xce\xbf+\xc0\xe8Y\x07@C\xfa\xfd@\xa9\x1a\x86\xc0p\xbeN@|\x18\rA\xa1$J\xc0\xf2\x0cr@ \xf4\x03A\x87\x12\x13\xc0\x0fO\x86@\xbbJ\x1aA\x85j3\xc0\x90^B@\x83\x80\x01Am\x17\xb0\xc0\xcd$x@\x19,\xff@\x16\x8f\xc8\xc0\xe3}I@\x04\xa3\x17AeO\xab\xc0L=\x90@\xd4a#A\xd3\xa6\xb2\xc0\xf0\x01q@\xdfl\x1aA.\xea\xc0\xc0\x14\xc2\xac@\xc3a\x19A\xa7}v\xc02v\x9b@)\xbc\x11A\x81\xb7g\xc0\xab\xae\xb9@\x01\xa3*A\xc0\x8cg\xc0\xd5\x19\x9b@\x9f\x00\xe2@\xa1\x12\xb7\xc08E\x9f@\xd9\x0b\xcd@E\xb0\x98\xc0-e\xac@\xe2\x9b\xde@\x0e\xe4\xdd\xc0\x95\xd0\xae@8\x1d\xec@\x86\xb6\xf3\xc0_\xbf\x9b@\xe83\xca@\x0eV\xeb\xc0\xb2#\xd6@\x01U\xb3@\xdf{\xd1\xc0)e\xe0@HI\xb0@\xdaH\n\xc1\xa9\x17\xd2@\x94\x86\xac@\xa4\x12\x12\xc1\xa8i\xf2@\xb2T\xc2@\xd3}\x15\xc1(\r\xbf@\xaee\x83@\x1e\xfe\x07\xc1\xear\xbd@\xc7Qj@\xe0m\xef\xc0+\xb6\xc5@Q\x18g@O\x1d\x17\xc1\xe5[\xcb@\xb4B\x7f@=\x92\x06\xc1\xd6\x9c\x8a@G\x9b\x99@%\x88\xf2\xc0\x06\xb5\x81@\x1f\x15>@\x9d:\x01\xc1[\xbd\x82@\xffw\x8c@\xa6\xa0\x1b\xc1\xdd\x07j@\xdc\x95\x88@\xac\xcb)\xc1\xe3\x1d\x81@\xd0\x0c\x97@\xbdO\x1c\xc1q\xfe\x17@\x1dQ\x97@\x08\x92\n\xc1\x95\xcc\xd3?#\x17\x89@\x00R\xfb\xc0\xc6\x00\x03@\xd9H\x97@_[\x0b\xc1\xe8?(?\x10\xf3\x9d@y\xa1.\xc1\xab\xb1\xe6?\xc0\xa5\xa5@\xa3\xfb8\xc1\xc4X @\x95\xa1\xad@\xbb[-\xc1\x9c^w?\xe7\xd2\xed@\xb9s\xf1\xc0]\xfe\xf8@\x08e\xee@\x0f\x83\xdf\xc0;\x93\x0eA\xe3\xbd\x05Ak\x1b\x06\xc1)\x8f\xed@u\xf6\x07A\xf2O\r\xc1\x947\xd3@\xd9\xe0\x16A\x95\xd2\x0b\xc1)H\x05A\xa8\xd0\x11A,\xb9\n\xc1#\x04\x15A\xa8\xa9\x1fA\xbcj"\xc1G8\x02A\xe4\x18*Ar\xa9&\xc1f\xb5\x0fA\x7f\xe4)A\x92y&\xc1\x1a\xf8\xdb@\x8c\x08)A\xa3\xc35\xc1\xda^\xd4@\x04\xf9\x0cA\xe662\xc1\xbbv\x04A5i\x03AX\xfa3\xc1\xd4\xff\xeb@t\x15\x01AD$-\xc1\x06\x83\x10A\x83\x8c\x14AQ\xd9A\xc1M\x8e\x06A\x83\xf5(A\xb7\xdc\xf9\xc0c\x06\x02A\xaa\x0e(A\x8cU\xd8\xc0T \xee@w\xc8;A\xe3^\x02\xc1\xf4\xa1\rA\xb7\xe4\x18\xc1\xeb\xa3\xe8@\xcd\xbfXAN\x19*\xc1\x8fh\x02A[\xebHA\x10\xae1\xc1\x04\x8e\xfe@\xa3iXA\xdb %\xc1C\x9c\x13A)djAf\xae\x1f\xc1\xb6n\xc5@\xf3\xddxA\x14c\x18\xc1\x1d_\xc6@W\xaekA\xd2\xcd7\xc1\x87\xe4\xc8@\x80BzA3\x01?\xc1{\x1e\xbb@\xd3\xa2]Av\xc1@\xc1\xe3\x94\xba@.\x92iA\xdf\xe4:\xc1{=\xfa@\x9d\xcabA\xd7\xafJ\xc1F/\x00A\xed\xe1wA\x9e\xee7\xc16\xef\x07A\x0e\x81`A\xbd\x91\x1a\xc1:\n\x9e@H\xf9jA\xff\xf3\x19\xc1d\xcdx@\xb4|KA`\x86\x15\xc1E\xde\x9d@\x8f\x9dBA\x98\x92\x19\xc1\x94r\xb6@\n{@Ajn\r\xc1\xc5\xbdn@\xc3NBA3\xb0\x19\xc1\xb4#=@\xa2\x07(A;(\n\xc1G/y@\xacV"Ae\xc1\xfc\xc0kgK@\xbe\xf6$A\xaf\xea\x04\xc1\xfdW\x9e@\x8e\xe2\x1bA\x84^\x1f\xc1\xc6\xfa^@n>"A\x192-\xc1\x99N\x80@\xa8)\x1dAY\xd1"\xc1\x98\x12\x16@\x9a\xb3\x04A\x87\xa9\x1c\xc1\xa8\xe9x@,-\xf1@t\xb1\r\xc1/>b@\xcc\x00\xfa@0\x05*\xc1\x9b\xeb\x99@id\x05A\x16\xf76\xc1\x7f\xb8\xa1@V\xe5\xda@\x9f\xf3+\xc1\x95\xb0\x99@\xb0\x13LA\x86\x1f\xf2\xc0\xd8&R@\x16\x04RA{\xaa\xed\xc08\xc6\x03@\x9cmOA|\xec\xd2\xc0\x9c\xcd\x87@\xe3\xc8KAo\x8c\xd4\xc0*\x14\xa7@\xf8b\\A\xd8\xe1\xad\xc0Bk~@E\xb3VA\x9d\xd7\x9d\xc0N\x9eD@\xf9\xf9XA\xcc\xa1\x8e\xc0\xae\x83\xa5@\x0e\xcd[A*\xcb\x9e\xc0Q\x1e\xc6@DFGA\xbd\xe1\x85\xc0\xb5\xfa\xa5@\xc4\xfcbA{\x99d\xc0\xad\xe5\xa2@l\xf1sA:\xd5\xb7\xc0\xc7\xb3o@\xcd_~A\xfe\xc0\xa9\xc0\x84\x165@\xadw}A\xff\x7f\xd2\xc0\xde\x00\x92@\xda\xfduA}\xd0\xdc\xc0\x1b*\xad@+\x96\x8aA\x94P\xd8\xc0\xb9T\x90@\xd4\xb9\x8eA\xb8\xee\xba\xc0X\xb4\x8c@\xdd\xf9\x8eAl\x11\xe9\xc04K\xbb@o!\x97A\xc3\x17\xf7\xc0\xd2\xd4\xb9@\x16\xfe\x88A\xd0f\xff\xc0\xe4\x98\xc5@\xbb\xa5\x8eA\xc4\x12\xc5\xc0vM\xda@\x064\x94A\xa0\x03\xa5\xc0&\xce\xd2@n\xbb\x88A\xcf\xf9\xc9\xc0X\xfe\xf9@T\x98\x8dA\xed\x97\xf1\xc0\xc3\x91O@\xc9\x99\x96A\xcb\x02\xed\xc0\xad\x82.@\x99\xf1\x85A\xe8\x92\x06\xc1\xf5\xfa(@\x16}~A>0\t\xc1,AJ@\xe4\xfb\x86AT\x1a\x10\xc1\xf9\x08\xae?:\n\x8fAc\x1b\x14\xc12\x03\x97?\x1e\xa7\x81A\t\xfa&\xc1\xf6t\xab?\xd1\xcbqA(\xf0%\xc1(9\xb2?)\x84\x83AS\x032\xc1r\xec\x0e@\x7fp\x84A\x99\x00/\xc1^.\xe3>\x97\x81\x83AXo\x02\xc1\xf7\x07\x16>#\xdd\x81ACx\n\xc1`\x16\x83\xbfD\xed\x82A\xa8\x9d\xda\xc0e\xeeu>\x8f\x81\x81A\x0c\xa1\xce\xc0\xc5W\x97?i\xeb\x84A\xa2\x01\xbf\xc0\xea_r\xbf\xd0!\x84A\xfb\xd3\xcf\xc0\x19!\xf2\xbfb~{A\xa2|\x95\xc0^\xab{\xbf\x06\xd1\x80A\x1aYv\xc0\xbeu\xd5\xbf\xf5\x12yA\xcd\xd9\x87\xc0~LS=\xc3sdA.O\xa1\xc0\x8b\xd3\xbc\xbf\x0f\xc6_A\xfdH\xbb\xc0\xb3VJ\xbf\xf7\xefeA\xa9\xf2\xb2\xc0bJ\x1e\xc0\x93\xdcRA\xc9\x1dc\xc0\xd0\xaf\xbc\xbf&\\]A\x96\xfc*\xc0\x91\xa2<\xc0\xb6(QA(0\x03\xc0\xfdmZ\xc0I\xf7aA\x805]\xc0\xf6\xc7l\xc0[\x9alA\xe9\xc9\n\xc0\xbf\x0b-\xc0Wv\x90A\xc7n\xad\xc0\x92EY\xbf\'f\x94A\x03K\x96\xc0\'\x14\xd9\xbf\xf3Q\x97A\xef\xbc\xb7\xc0\x87\xbc\\>\xdf\xe2\x94A\x9dI\xd0\xc0\xda\xa5^?\xc9x\xa1A#\x13\xa2\xc0|\xb3\xf2>\x0f\x0f\xa2A\x18\x9b\x83\xc0^z\xbd\xbdW\xa7\xa1A\xe7O\x8f\xc0\xbd\xfd\xf4?\x97\x97\xa8A\r\ns\xc0z\xcd\x00@\xb4\xe8\xa2A\x1e\x8d\xab\xc0\xc6\xc5$@G\x81\x97A\xecfn\xc0\xa1\xf4\x12@\xdbi\x90Ad\xbd\x8c\xc0\xffT\r@\xd9\x8d\x95As\xa0<\xc0\x96\xd9\xc1?7 \x98A#\xdfJ\xc0]\xe8o@&U\x9cAT\xcf\x08\xc0\xf7\xbds@\xd6\x1b\x9dA1d{\xc0?\x86\x8c@8\r\x8dAl\xd4=\xc0~\xed\x89@\n\x05\x88A\xc1@x\xc0%\xf0\x84@c\xaf\x88A\xcbf\x0b\xc0\x93\x1ft@9F\x8dA\xc5\x0e.\xc0\x90\xd0\xb6@M\x91\x85A\xf8\xb38\xc0\x9e5\xc4@\xe7Q\x8eA?\x18\xd5\xbf\x0e\xe0\xba@\x94\xf8\x92A\xf3\x81U\xc0\x84@\xc5@\x16\xc3\xaaAs\x17\xbc\xc0E\x0c5>\n\xd6\xb3A\xed\x0c\xad\xc0G\xa3\x12>\xab\xa3\xa9A<\xbf\xe3\xc0\x881j\xbe8\x0f\xa3A\x80\xb5\xf3\xc0`\x08\xe2\xbe\x80,\xb2A\xa0\xac\xfe\xc0<\xd4G\xbf\x1d2\xb9AW)\xf9\xc0\xd4\x01B\xbe\xc6\xa1\xafA\x8c\xbf\x18\xc1\x9dc@\xbf\xe9\xe1\xb2A\xb6\x14 \xc1\x12\xb9i>|{\xb3A\xcf^!\xc1H|\xd1\xbf\xeb\xe3\xa3A0\x13 \xc1s\x92:\xbf\x05\xff\x9fA\x90\xee\x17\xc1\xc1\xd7\xd8=\xbc6\xa3A\xa2\xa51\xc1\xbb5+\xbf\x01-\x9dATl\x19\xc1\xc2}\xf1\xbf\x0e\xa1\x97A\xa5\x12(\xc1X9\x1d\xc0xF\x9cA\x8b\xfd\x05\xc1v\x7f\x11\xc0\xbdQ\xb6Awq\xee\xc0dj\x07\xc0\x03\xf3\xbfA\x1eu\xe7\xc0\x9f\x9f\x11\xc0pg\xafAG\x03\xe6\xc0\xb3#D\xc0\xfb\t\xa8A\x9f\xaf\xf2\xc0\x80\xc89\xc0\xa2J\xb1A\x0c9\xce\xc0uA\x89\xc0\x05\x95\xb9A\xd3\xee\xd1\xc0\xa8\x83\x8f\xc0+\xd6\xa9A\x01\xd8\xe2\xc0\x82\x85\xac\xc0n\x85\xa1A\x0b\xaf\xd4\xc0\x00\xa3\xa6\xc0\xb0\xd1\xaaAjf\x03\xc1\xf7\xa4\xaa\xc0\xe4p\xadAsg\xd6\xc0=\x0b\xc9\xc0m\xee\xafA\xc5\\\x9c\xc0\x93\x85\x86\xc0\x90\x9b\xafA\t\xc8\x84\xc0U\xf9\xa5\xc0\xbc\xdf\xafA\xf8m\x8d\xc0\xe0\x08;\xc0\xac\xbe\xb0ABv\xa3\xc0\xc7\x1e\x0c\xc0\xba\xf0\xb0AH\x97?\xc0\r\x96(\xc0\xb0\x86\xb7Ai\x1a+\xc0\xc90M\xc0\x02\xda\xb2Ag\xa49\xc0\x10D\xd1\xbf\xbfa\xa8A\x15?\x01\xc0\xd5\xf98\xc0\xdbH\xaaA\x06\x84O\xbfN\\H\xc0\xef~\x9eA\x01\x17\x1d\xc0\x15\xb09\xc09\x05\x9dA<\xc1Z\xc0.\xb0-\xc0\x11k\x95A\x0c\x90\xde\xbf\x14\xda_\xc0\x16\x13\x98A\xd5\xfe}\xbfw1\x85\xc0w1\x8dA\xcam\'\xc0\xaeM\x8b\xc0\xf1}\x88Ax\xa7N\xc0G,e\xc0\xb2H\x84AG\xe6\xde\xbf\x0fZ\xa5\xc0\xf1 \x87AJQ\x83\xbf\xde\x80\xbb\xc0\xd5(\x7fA\x06@\x99\xbf\xfal\x8e\xc0\xcbn\x7fA\x81\xc7\x17\xc0x\x03\xb8\xc0\xeen\x93Ab!n\xc0f\x83\xa6\xc0\xc6\xcb\x97A\xa4\xf5\x8d\xc0\x8e,\x91\xc0y]\x99A.\xf6I\xc0\xf0\xbb\xbb\xc0\x1a\x06\x8dA\x96\xed\x93\xc0\x87\xfc\xc5\xc0\x02\x8a\x84A?\xae\x96\xc0{=\xb9\xc0\xd8\x90\x91A\x1e\xb3\xb1\xc0\xca?\xc8\xc0\xb3\x05\x8dA\x9d\xb3\x84\xc0\xb8\x87\xe5\xc0?\xc9\x8fA\xac;}\xbf\x1c\x1f\x16\xc0j\xe6\x85A\xf3Of\xbf\xb8\x07\r\xc0\x8b\xbf\x95A3\xc3u\xbe\xc1Z\xb9\xbf\xe1\x95\x9dA\x1eP\xa2\xbe\x91\x08\xc2\xbf\xb8\x95\x90A\x98{)?\x02\x19\xf5\xbe!\r\x8aA\xb4cW=~\xd0W\xbd\xc3\x84\x97A\xe0j\xa2?\x95\xe1\x1d?HN\x93A\x9d\x89\xfb?\x9b\x03\x9d?\xfaS\x9eA\xb5b\xe9?\xf6\xd3\n>\x83\xcf\x9bA\xa1\x0cH>\xbf\x80\xc7?]\xa3\xa2AX\x1e-\xbf\x17\xf8\xa7?\xb2\xef\x97A?\xaf\xa4>\x8e16@"U\x9aA\xce\x15\xa0\xbe\x05[b@|k\x90AO]$?\xa9h=@\xebt\x8bAV\xae\xde?\xb5\xc3\xa5\xbf\x0cL\x90A\xc3\x00\n@\xb6>\x10\xc0eP\x81A\x8f\xaa\x04@\xb0hv\xbf/K}A\xc2\x1c\xeb?/\'/\xbdXsuA\xa8\x11?@\xce\xdb\xdb\xbf.\xd5wA/T8@_v2\xc0\xa2m]A\xc7\xf1*@\x90\x86\xa7\xbf;\xa4PA~\xebT@\xfd\xb9\xdf\xbfJ?XA)\xf3\x9d?\x9e\xb8\xe0\xbf@\xbd_A%c\x12?p\xf5x\xbf\xfe\xfc\\A\xc0\x15\x87?+\x1b6\xc0\xb5\xa3FA\x0c>\x8c?kM\xd5\xbf!MZA\xc1L7@\xbc_<>K\x99]A\xf1\xe4x@\xa5w\xe6>\r\xc8cA\xe7\xad\x12@l\x00W?\x97\xddIA\x0fc @\xc3\x8f\x03?\x10\xc1yA*\xd7\x8c@\xb4*\xc1\xbf\xd2\xbb\x81A\x90\xe4\x9b@\xa7W\x0b\xbf\x00[sAx\x7f\xa5@]\xf4$\xc0\n\xc7jA\x14\xb5\x98@r\xedT\xc0\xa8\x85vA}\x93\xd2@\xcb\x96,\xc0\xea\xe5\x83A\x8b\xcb\xda@@\x1b+\xc0\xcaanA\x1a\x11\xe5@2\xaf\x82\xc0G\x03uA`\xc7\x03As"\x81\xc0\xa4r\\A=\x9c\xe5@B\x87}\xc0\\\xa2tA\x12\xef\xd0@(\xb4\xac\xc0\xb4\x94xA\xf1\xba\xa8@\xff\xd6\xaf\xc0\xf2\x96rA\x07\n\xe7@\xca\xdb\xce\xc0\x8d\xb0jA\x87\x18\xea@\xd3\xec\xca\xbf\x08msA\xf4m\x02A\xa1\x9f]\xbf;\xd3UA!\x08\xdc@\xc0g\xac\xbf\xd2\x9cQAd<\xc3@\xee\xd0\xf8\xbf#aEA4\xf3\xea@\xb7\x97\xbf\xbe\xbaXMA\xac\x86\xf6@T\xf33A\x8e}\x03A>q\x86\xbf.\xdc$A\x8e"\x04A\x00}\xe8\xbe\x82<0A\xa3_\xf7@ \x97\xfd\xbf\x13\x95;Ai\xf8\x18A\xce-\xb3\xbfR~9Ag\xb6)A\x93\xc0\xe7\xbe\xcc\xf61AM\xb5&A\xf1\x04\x04?\xfdi@AAE>AvnA\xbf\xf4\x1c=A\xf7\xe4JAK\xeeY\xbd\xbc0IA\x14\x93BA\xb8\xd7\x02\xc0\xf5IPA\x89`VA\xee\xdb\x17\xc0\xd1\xb5JAO\xb1XA\xd2\xd0R\xc0\xf7gCA\xb0\x95\x1dA,\x89-\xc0\xf1\xa1BA\xd7 \x11A\xe3\x10a\xc0\xc0\xa6HA\xab\xde2A\xff\xae?\xc0\xeeBKA\xa6G6A\x06\x07\x7f\xc0\x12Q7Awk\xc7@B\x9d\x89>x\xca0A\x87-\xa8@z\x96\xaa\xbe\xf7\x132A\x14A\xcc@\x8a\xa0\xc8?\xbaW5A\xd3\x13\xe7@\xa8\x90\x06@\xe6!#A\x04\xc6\xb1@i\x81\x11@\xa7\x9d\x1cA\x8f \x9d@3[\xbf?\x8a(-A\xad\x9e\x9b@\xdf\xae^@\xee\xa13Ap,\xb2@w\xc6\x85@\x81\xda\x1cA6\xc3z@\x1c\x1c\x84@\xe86\x16A&\xc9L@M\xeeY@\xdf}\rA0\x92\x89@\xce\xb7\x90@)\xc8#A\xe90Z@\xf0\xdd\x9f@\x1a\x85?A\xf0\xd3{@\xb9C;@\xba\xb3JA\x94(\x92@\x94\xce\x18@\xd5\xae9A\xa6\xb4J@\x82\xc9\x0b@+\xb3HA2\xe7^@\xf2\'n@\x9d\xdc\x11A\x89\xd7\xd2@k\xb82@m\xbb\x17A"\xdb\xf2@\x8f\x04\\@sM\xfc@\xcc6\xce@2\xea\x18@K\xab\xf5@\xb1\x9c\xb3@\xd3>\xfa?\x0c\xe1\xd6@\x9c\xe7\xeb@\xef\xaf\'@\xcb\x01\xe1@N\xf6\x05A\xa3\xf36@k\x03\xbe@\x06\x80\xf0@\x9bS\xa1?J\xc4\xa5@\xa7\x12\x05A\xe3\x1a\xcc?\x9b\xfd\xaf@\xf0\x8f\xd0@\xa8~\x82?d\x11\xda@xb\x00A\xa1\xee\x9a=\xba \xf2@\x9d,\xe8@\xcc\xe7B\xbe\xfe\\\xbd@\xe7\xd6\x05A\xa1\x8f\x88\xbf\xe9\x0f\xa9@y\x04\x14A\xa8\x9bL\xbf%\x1e\xaf@\x13\x8f\xee@MQ\xc0\xbf\x9b+\xcf@\x05g\rA\x82A\xfc\xbf4\x0e\xf7@\x06P\x14A\xe2\x96\xc5>\'\xb7\x05A<\x95\x16A#0\x0c\xbfQ\xa7\x05A\x97[\x12AWs\xac?\xca\r\xe3@\x91\xf0#A9\x03\x15?Fr\xb8@\xf3\xbf\xd8@\xc9\x9eh@\x04\x88\xab@\xa8\xb4\xb3@i\xd6\\@\xf3\x9d\xaf@\x1a\x1f\xee@\xd7\xc9\x97@\x1c\xc6\xba@g\x10\x06A\xa7\x03\x9d@\xfb"\x8f@\t\xd5\xdc@\xd0\xb1\xb4@\xb5\xf2{@j\x16\xc3@M\xc0\xa7@\xde\xce\xa3@\xe6\xa8\xd3@\x8a\xbf\xe1@\xe7\x08\xb1@\xa45\xf3@\xc8\x07\xee@tG\xc0@\xd9\xc2\xbf@M)\xd9@\xe7\\\x87@\xe6+\xbf@\xbeh\x02A!\x04\x81@-\x14\x9e@\x92y\xff@b^Q@\x17-\xd0@\x10\xb1\x03AH\x8c\x9a@\xb83\xc1@\x93\xcd\x18A\x98m\xc0@\xdej\xcc@Q\x90\x1aA\xb6j\x82@\xedW\xbd@\xd9F(A\xf6\x8dY@\x93S\x00A\\?\xbc@k\x86m@\xd2\xdb\x12AZ\xbc\xb8@+w\r@\x8dd\xf2@\xba\xff\xc8@\x02@\n@\x9c\xed\xd6@\r\xb0\xd6@\xef\xaf\x83?\x1d\xee\x06A\xec\x1c\xc9@\x11\xf3\x9f?\x0c\xc9\x17Am9\xc7@\xad\xe2\x88=\x82\xe9\xfd@\x04\xb2\xa4@\xc5\xd8L\xbfV\x9c\tA_\xbb\xa2@v\xb8\xc4\xbeJ\xbc\xdd@\xdc\xb2\xab@\\\x9b;?A\x88\xff@\n/y@\x80\xae\xbd?\xa9\x11\xdb@!eb@\x8fs\xc5?\x11\xf3\xbf@\x01\n\x87@\x80\x8f\x10@\x1b\xed\xd8@S\xd5\x15@\xc1Y=@\xac\xfc\xbd@A\xb9\x05@\x13Z\x13@\xc6m\xfe@\xdc\x7f\xc3?\xda\xeb6@\x1fK\xff@G\xfc\x10?g\xff\x15?\x1e\xbd\x0fAP\xc2<@\x0f\x1a\xe5\xbc_e\x1dA\x0cRH@\x1eg\xb2?\xabL\x10A/\x93\xec?Q\x17\xa3?\x8c\xaf\x1dA\xc6\xb4\x8c?7\xfe\xc0>y\x1e\x04A6V\xf3@r\x94\x07\xbe}\xf3\xe5@\x06&\xfd@\\\xb8\x9d>\xa8\xee\x15A\x92\x1a\x06A\xab@w?S\xce"Ak\xb1\x02A-\xc6\xb6\xbe\xa7\xe6\x14A;y\x1aAS\xa1,\xbe\x019\x06A}6"A\xbc:Y>\x1b\xcb\'A\xec\xfe\'AQ\xc1\xb6\xbe\xab\xa8)A\xd2S7A\xe3@U>\x8cI6A\x94\xf6\x1eA)\xe0\xd2?\x08\xa3!A\xa3\xfe-A\x1dF\xef?\xeae\x19A\'\xe4?Aq\xdd\x1f@\xd6\xab A\xb4\xea\x1eA\xeb\x8a\xf5\xbf#\xb2\x15A\x0c\xd5\x18A`\xdb(\xc0\x9b\xfe%A\xda\xcb\x1aA~\x7f\x1f\xc0\x1e\x1e\x02A>\x90\x19A\xa1\xa1\xf2\xbfI1\xeb@5\t\x16A\x9fvv\xc0\x9c$\xfc@\xe1\xea\x1fAY\xb4\x8a\xc0*N\x0cA#\xe0%A9<\x9a\xc0\x98\x0b\xe8@\xc8\x13\x10A\x0e\x8d\x85\xc0\xa2q\xcd@\xac\x16\tA\xd0C\xc5\xc0g\x15\xda@\xbdp\x1aAI4\xd7\xc0tX\xc3@\xce\xa5\x10A\x04)\xda\xc0}\x1b\xf6@\xc8\x8b\x1fAgG\xbd\xc0\x15\xd8\xc4@!0(A\xe2\xc6\xa0\xc0\x9e\xca\x06A|\x9b\xfc@z\x1b\x84\xc0\xa7\xef\nA\xc07\xe8@\x99\x9b\xa8\xc0\x066\x15A\xfd\xa7\x06A\x81\x99\xb9\xc0\x04\xcd\xff@%\xa3\xe8@h\x93u\xc0\xd9\xbf\xe0@M)4A\xde\xfbb\xc01\xe2\xba@8{2A%\xa8\x88\xc0\n\x12\xf0@\xf0\xe7FA\x0b`\x92\xc0\xf8\x10\x0fA\x84\xabLA\xeaJ\xb6\xc0\xa3-\x12A\xcfsMA\xa9\xaf\x80\xc0\x9b\xd5\x19A\xc3\x86AA\xfeX\x86\xc0j\xed\xd3@\rDYAmJM\xc0U\xe1\xc3@K|WA\xf3\x84\x8c\xc0\xb3\xec\xf4@\xf29lA\x87\xfft\xc0\xe2\xb9\xe6@\xcbazA\xa0S\xae\xc0\x86\x0e\xf9@(PqAa\'\x80\xc0=\xb9\x0fAf\xc4bA\x0e\x97\x8d\xc0\x82\xc2\x1bA\xa7\xe9mA\xc4\x0e9\xc0\xa1\x87\x13A\x97obA\xa3\xf2\xa9\xc0\x13\xe9\xaf@\xcb\xb8YA\xbc\x0f\xc7\xc0\xf1@\xaf@\xb1\xe0KA\xf6\xdc\xa8\xc0D+\x92@2\xb9hA\xfe\xc9\x90\xc0\xe3}\x92@\x9a&sA\xf0A\xbd\xc0\xa0\x94P@!\x92fA\xff5\xb6\xc0\x8aX=@\x93\xd1VA\x1dk\xa7\xc0\xda\x9a\x13@{\xeauA\x87)\xb7\xc0\xc3\x1d\xa6?\xe7\xb8qA\x0e\xe6\xb0\xc0\xa7\x90*@hi\x83A\xa6\x95o\xc0\xfeI\x12@,\xderA\xf5fV\xc0\x16C\xa3?\xefKgA\x15!B\xc0YXM@\xfcRyA\x1a\xf1\xee\xc0^\xc0X@i#hA\xab_\x04\xc1\xbe\xa1\x1e@\xfa\xdebA&\xb8\xfd\xc0\xec\x1e\x92@\xea\x8coA\x98\x15\xea\xc0?\xbc\xaa@V\x8fpAH\t\x15\xc1T\x07\x9d@\xfa\x91rA\x07b\x1e\xc1\x9d\xb4\x81@\xeb\xb8uA\x8a\xed\x19\xc1\x1fo\xba@\xe5\xd4\x82A\xd9\x88\x16\xc1\xac\xc9\xa5@\x0b\x07\x8aA|8+\xc1\x11\x0b\xc1@\xedK\x83A\xea\xd2\n\xc1\n\xde\xe4@w\xe3\x84AE\x88\xf5\xc0\xcf[\xd6@\x05\x9d\x85A\x0cx\x10\xc1\xc0\xc2\xf6@\xc2\x9e\x8cA\x85\xe5\x0c\xc1#\r\x01A\x93\xeeuA\xc4G\xfb\xc0\xda\xa3\xff@\xe3CiA8\xad\x1b\xc1:G\x0eA\x80LsA\xafV\x1e\xc1\xc0\xcb\xac@\xb8\xcf\\A\x89\xdd.\xc1\x15\x8b\x9d@A\xbfUAB\xb0\x12\xc1\xec\xc3\xc9@\x92\x01QA\xd6R\x08\xc1i\x16\xdd@\x81\xddWA-\x00\x1b\xc1\xdd_\xd3@/m;A\xa0\xfc\x13\xc1_L\nAU*FA\x16K\x14\xc1\x08\x9f\rA\xecu$A~\x18\r\xc1\xbb\xff\x04A\xfeN\x17A?h,\xc1\xb4\xfa\x12A\x80\xb2\x1fAM\xbf3\xc1\xf8\xdc\x18A\xdap.A\xf4\x803\xc1"=\x03AI\xdb\x1bA\xa6\xfe*\xc1z\xa5\x1dA\xff\xf6\x10A\xe9k\x06\xc1\xde\xfd!A\x89\xb9&A\\!\xeb\xc0\x10\xca\x1cA7\xfd(A\x87\xb2\x0b\xc1b^,A\x83\xa14AJ[\x05\xc1\t\xe7,Ai;\x19Ac\xfb\x14\xc1\xdc>\xb3@_j+AZ\xdd\x1f\xc1\x9f\x8f\xb2@J\x01\x1bA\xbf\xe9\x06\xc1\xed\x92\x95@n\x9e0A\xab\x00\xf9\xc0\xf6\xfd\x9c@\xe2\xaal\xb7"A\\\xb7\xc9\xc0q<\x18?W\x1d#A\xa0\xb6\xba\xc0\x88LF@\xc9\xe9#AN(\x9e\xc0t\x0f @\x85M*A\x8b\xc4\xb9\xc0Y\x1c}@\xb9\xbb-AS\x88\xae\xc0\x95\x9aV@Z7\x0cA\x91\x8b\xc9\xc0\xe3Vu@\x1eL\x04A\x0c\xf6\xa0\xc0H\xe6\x1d@W\xf7\x03A\xd7\x05\x93\xc0\'~\x81@\xf3\xe3\x0cA\xc9\xf7\x19\xc1i\xd6)@R)$A\xc7\xbe\x1f\xc1p\x80\r@@\x13\x13A\x12\xb0#\xc1\x08\xa8\x1e@\xc0\xa67A^B\x1c\xc1\x11b2@\xe5\xf0DA\xb7I8\xc1=\x19\xf3?S\xf89A\x8d\x898\xc1@\xfb]?\xec35AO\x0cB\xc1;\x7f\xf0?A\x8eOA\xf7^E\xc1\xc1U;@"UVA\xc3\x8cW\xc1\xcd\xe7\x81?\x98\x94PA&\xebT\xc1M^\x98=geGAn\xe9d\xc1BA\xcc?/\xfbHA%{X\xc1t\xc3T?&_bA\x9b_1\xc1\xed\xbc\x8e?KH^A\x9c5#\xc1P\xd4\xdf?.;bA\xaa\xdc*\xc1\xcbz:>\x86\x7fXA\x90\x958\xc1^\xfb[?M\xdenA\x05\x19I\xc1\xef\xfc!@@\xa4+A\xee\xecQ\xc14\xa4\xef?*\x04\x1eA\xde\xfbL\xc1\xa0\xadr@\x80M/A2\x10H\xc1s\x8b\x83@\xa28>A\xa7\x02[\xc1\xf9t\x95@\x06Z!AR\xcbj\xc1qh\x88@\x88\x94%A\xaf\x17X\xc1E\xf8\xc3@v\xff(Ae\xbdI\xc18\x1c\xd5@m\xfa#A\x85tY\xc16\xe4\xc7@\x04\x1d;A\xc9\xf5j\xc1\x9d\xb2\xdd@\xd1\xd6\x1fA\xe2{}\xc1o\xdc\xdc@m\xa2(AN\x19g\xc1\xd8\xed\xfa@\x92\x0c\x13A\xc5iW\xc1\xfbM\x8d@\x7f\xeb\x08A\xb3tf\xc1Ke\x82@\x7f_\xfa@\x88hC\xc1\x8d\xd4\x94@R\xb7\xff@\xf5\x946\xc1\xbe\x1b\xa4@\x7f5\x06As\xce=\xc17\x18\x8a@\x9c\x8f\xd4@p\xc1I\xc1\xa7\x0b\x9b@#\x08\xc0@w\x8f\'\xc1!\xe3\x9d@I\xe3\xc7@\xc08"\xc1\xcf\xbf\x8f@\xf08\xa9@`\xf2\x19\xc1\xecc\x94@\xa4\x19\xdb@\x05{(\xc1\xba\x7f\xce@W\xe6\xbb@\xce%6\xc1\xe4\xac\xd3@\xf7\xbf\xa4@R\x80\x1a\xc1]\xe4\xd4@\xaa1\xa8@\x19N)\xc1\x0c\x18\xef@\x9f\x08\xe1@\xbd\xba\x1e\xc1A\x8e\xe6@\xb8\xa2\xfd@v\x0c9\xc1\xc80\xf2@\x95\x03\xf0@\xc3\xc7&\xc1\xe4\xd5\x0cA\x9f`\xd0@\x18\t5\xc1\xe5+\x15A\x91(\xca@\xef\x18\x14\xc1Yl\x17A\x128\xc9@a\xa4\x01\xc1\x9a\x98\x0eA\x97\x19\xcf@Tr\xfe\xc0\xf7i\xfe@iF\xd7@q\xd5\xea\xc0G]\x17A\x90{\xc3@/\x16\x16\xc15\x91+An\x87\xb9@\xabm#\xc1\x92\xb84Aq\xfb\xb9@}\x15\x08\xc1k\x861A\x00\xc6\xb0@J\x88@\xc1I\xa16@E6\xc6@\x8d\xdc?\xc1+\r)@\xa7\x10\x9e@\xd5\xc4B\xc1V\x1d\xee?\xa5\x89\xe3@Z\xc6A\xc1\xaa\x99\r@\xa4_\x01AHsI\xc1pc\n?/\xc2\xd7@`\x17I\xc1\xeb\xab\xb2>\x89 \xb7@\xb4\xe2;\xc1\x8f0\x18\xbf\x90B\xee@\xbdG=\xc1\xa9/\x01\xbf}F\x08A\xa5WD\xc17\xdd\xf9\xbf\xd6I\xdf@\xc1&D\xc1c\xfd\x01\xc0\xcdX\xbb@\n\xc5T\xc1\x9e\xa7\x03\xc0\xfb\x90\xeb@\x13\xcf:\xc1m\xf11\xc0^\x8b\xeb@c\x80$\xc1nG\xe9\xbeY\xfb\xe0@lB\x1f\xc1V]!?uK\xe3@\xd3\xd7$\xc17\rA\xbfr\n\xbe@>\x95\x14\xc1&\x94\xa6\xbf\xcf\xe2\xf8@\xfa\xf0\x17\xc1AY\x17\xc0\x92_\xf2@\xcb~\x14\xc19x\x8a\xbf3C\rA+\xb2\x03\xc1\x83\xab\x93\xbf\x8e\r\xef@\xb8Fb\xc1\x02\xbc\xb5>\x8b\xbe\xdd@\x06`l\xc1qo\x86\xbe]e\xc2@\xa0\x94m\xc1H\xf3h?\xe6J\xfe@\x84ye\xc1;y\xb4?g9\nA\xe0!\x82\xc1\x99{)?\xf7\xb5\x02ABA\x84\xc1\x12\xdb\xb8\xbe\xd1\x18\xff@\x91\xba\x85\xc1(\n8?\xaf\xc9\x19A\x1cQ\x8e\xc1s\xbf\xd2>P\x97\x19A\xeaZ\x7f\xc1Qz\xbc\xbe\xe8\x84%A\xafLn\xc1\xac\x9d\x9f\xbeD\xa4 A`\x7f\x82\xc1\xdd\xde\xb8\xbff9"A\xa3\x1a\x80\xc1\xce\x9a4\xbe2\x1d7A*\xcd\x84\xc1_\xa6\n@\xecO#AU\xa1w\xc1L\xee\x11@\x91\xa7%A\xc1h\x87\xc1\xd9\x12\x17@\xbe\x933A\x97\xdb\x87\xc1\xdao9@\x07h\x17A\xfa\xed\x88\xc1`\x88\xac?\xc9\x0f\xe3@\xc7s\x8f\xc1t\x1f,?\x92:\xce@\xe1c\x87\xc1\xf40(@\xc4\xca\xd7@\x84v\x82\xc1\xa2\x9aQ@Sd\xe6@s1\x8c\xc1\x84\xf1K@/\x8e\xaf@B\x95\x8b\xc1\x94\xdd\x87@KN\xb3@\xe4\x06\x94\xc1\xf0\xcb:@\xceo\xa9@m\x95\x86\xc1\x8a7>@h\xe8\x85@]\xf8\x85\xc1\xfc\x81{@\xec\xe8Y@\xef\xca\x82\xc1\x86?\xd9?\x81\xfb}@\x96\xf2\x82\xc1n1\x86?\xac|\x96@\x98\x1cz\xc1L\x1a\xa2?\xb0|0@\xd3\x86t\xc1\xc7\xc9\x08@\xfd\xa5\x12@6+g\xc1\t\xd1\xac>Y\xf1<@\xd6\xbbl\xc1me\x08\xbfw\xe2b@$\x8b[\xc1B\xabj?5\xe7d@-\xb5Z\xc1\x85\xfe\xb3\xbd\xd39\xd5?M\x9ad\xc1\xfcZ\xd7>\xd8\xd2\\?\xcb\x9f]\xc1\x00l\x96\xbf\xe5\xdd\xc2?\xdb\xd5C\xc1\xa7~\xb0>\xe3.\xcf?\x03\x0bD\xc1\x9c\xef\xb1?\x0fk\xfe?O\x92<\xc1\xb3\xdb\xbd>\x97i\x1c?z$7\xc1\xfb\xf2\x0e\xbf\xda\x16\x1a@\\\xf28\xc1\xd2\xc6\xc6\xbf\xde\x1e\x17@\x94P#\xc1\x08\x7f"\xbe\xe2\x80=@\x08f\x1e\xc1\xf5H\x8c?D\x98D@$]+\xc1\xd9\xc6\xdf?\x0b\xe0>@\xe9N\x0f\xc1\xd1\xfa\x9f?^\xd3R@O/\x17\xc1\xc3N\x8d\xbf\xbf\x87_@.\xad\t\xc1%\xa9<\xbf4\x8by@\x1ep\x1e\xc1\x06\xb5\xf8\xbf\x1b\xc2k@\xc2\x9a\x85\xc1\x8b\x00:?`\xbf\xdd?\xcdF\x87\xc1x{\x05\xbf\t\xc8\xd0?\x98#\x8b\xc1\xe7\xe1\xd4?c\xd6\x83?5\xa9\x88\xc1\xb7f\'@+\x80\x86?9 \x94\xc1\x9a%\xaa?\xb8sJ>[q\x98\xc1\xd5j\x03?\xba^+?d\xb0\x9c\xc1\x90\x0e!@\xe3!\xf7=\xf4\xd7\xa2\xc1\xb3v\x19@\x07\x803\xbf\xb9\xa6\x97\xc1d\x8d[@\x9e\r{\xbd\x014\xa3\xc1\x94\x964@\rI\xad?\x14n\xa6\xc1;\x07v@b\xae\xa9?`\x06\x9e\xc1*\xed8@8O\x0c@?\xa0\xac\xc1\xb8\x9a\xe9?*{\xd1?\xfal\xac\xc14\x99\xda?\xec\xf1.@\xf3\xdf\xa9\xc1G\xffW?\xca;\x92?\x9c\xd8\xb6\xc1T\xbe\x1c@\x1cT\x88?\x06\xcf\xb7\xc1\xe5\x0f^@\xd0\x98\x80?\t\xe1\xbf\xc1\x856\xe4?\x98\x1cs?\x13\x86\xc1\xc1-\xce\xfe>\x85\x99}?\xf5\xba\xba\xc1\xd0\x7f\xa0<\xeb>d?\xdd\xb0\xc8\xc1\xa8\xb2(>\x93\x983?\x90\xea\xc8\xc1\xfa\xa8 @\x99\xc3O?\xe4\xe5\xcf\xc1\xbf\x08\r@W\x08\x90?\xbd\xa2\xc7\xc1\x18\x94]@\x8f\xda\x95?t\x13\x90\xc1_\xfe\x89?\xf8\x91\x9b\xbf\xd4\xbf\x8c\xc1p\xcd\xfd?\xd5r\xf3\xbf\xa4>\x8f\xc1E\x98M\xbe:\x07\xce\xbf\x9cb\x92\xc1\xe5\xf1_\xbfS\x93\x80\xbf\xec\xf2\x8a\xc1\nw\r\xbf\xe9f6\xc0\x00\xd7\x88\xc1\xae2z>\xcd\xc3X\xc0*\xc1\x80\xc1\xb9\x9e\xae\xbfNK4\xc0\xd5\xc5z\xc1\xcc\xd8\xce\xbf\xbc\xd0s\xc0\xe1yq\xc1\xdd\xb3\x00\xbfU\xc0\xff\xbf\xc6\x19t\xc1\xaf\xbf\x12?{\x1c\r\xc0\x9c\x00a\xc1>\xcbU\xbfNC\x17\xc0\x99\x16t\xc1\xa0\xb3O\xbf\xf6\rt\xbf\xc2\x97\x82\xc1W\x800\xc0\xcf0\x11\xc0a%\x86\xc1\xc8\xcdU\xc0\xcf\xadK\xc0aT\x87\xc1(\xc4,\xc0\x9ap\xa6\xbfE\xe3u\xc1\xefiM\xc0\x11\xb5\x08\xc0 \xb9\x92\xc1i\xb7\xae\xbf( l\xc0t\xac\x99\xc1\xc1\xa0\xfc\xbf\xe5\xe8M\xc0\xfd\xb4\x91\xc1\xe4\xf1\xb2\xbf\xf7\xf0\xa0\xc0L\xb9\x8c\xc1OV%\xbf\xb3^\xac\xc0\xd6i\x97\xc1*\xbc\x17\xc02z\xb9\xc0%\xef\x9e\xc1\x12\x10,\xc0\x7f\xa8\xaa\xc0?\x16\x9c\xc1i\xd9\xe9\xbf\x97B\xe3\xc0p\x1c\x95\xc1\x81\xbf\xc9\xbf\xa5]\xf7\xc0\xe8\xf0\xa0\xc1,\']\xbf[\xc2\xdb\xc0-;\xa4\xc1\xcf\x7fA\xc0o\x82\x13\xc1e<\xa1\xc1\xab\xfc\x19\xc0\x11~\x1f\xc1\xc4\x1e\xa3\xc1\x11\x134\xc0\xfc\x1b\xfa\xc0\x95F\xac\xc1\xa9\xb9{\xc0\xc0*\x17\xc1|\xfd\xae\xc18*\x7f\xc0\x0cV\'\xc1\xa6\xa3\xb0\xc1}S\x8a\xc0\xc2G\x04\xc1\xb4\xba\xaa\xc1rih\xc0(\x8b\xe9\xc0\'\xbd\xac\xc1\x17\tj\xc0P\xfd\xc7\xc0)\x87\x90\xc1\xc9\x9cc\xc0\xddM\xc4\xc0im\x87\xc1\x84\x01S\xc0\x97\x96\xd4\xc0\x06\xfa\x92\xc1m-\x98\xc0\x9c\xd7\xb7\xc0\xdc@\x99\xc1\xd12\x9d\xc0\xeb4\xa4\xc0\x17\x0b\x8c\xc1\xe6\x93\xbb\xc0\x00}\xb4\xc0\x91\x86\x84\xc1h\x11\xb1\xc0d]\xa7\xc0\xce\xc0\x90\xc1/(\xe0\xc0)\x92\x9a\xc0\x0e\xa4\x97\xc1oa\xeb\xc0_v\xab\xc0*\xb6\x93\xc1q\x1a\xd2\xc0s\xe2v\xc06\xb1\x8a\xc1\xa1\xbc\xf8\xc0\xeaW\x95\xc0\xfd\x01\x88\xc1\xa0\xd9\xca\xc0\xf0\xe3\xe0\xc0\x11z{\xc1\xf7\x87\xcf\xc0\x1e\xa5\xe5\xc0\xaf\xe2\x8d\xc1\xf2\x8c\xcf\xc0Eh\x02\xc1+\xbc\x99\xc1F\x99\xc8\xc0\x90\xd5\x02\xc1Hh\x9b\xc1\x19\xba\xa6\xc0\x92\x9b\x03\xc1\xc2\xa8\x9e\xc1.m\xd4\xc0\xc9R\xea\xc0\x1e\x99\x89\xc1$^\xdc\xc0\xe1\x04\x17\xc1m1\x84\xc1%b\xf8\xc0])\x14\xc1\x90\xd9\x93\xc1N9\xdf\xc0\x84\x0f%\xc1\x8eU\x93\xc1\x03p\x00\xc1\x96\x10-\xc1:\x06\x95\xc1"\xe2\xc5\xc0\x8eO1\xc1d{\x9d\xc1\x1e\xc6\xe0\xc0d\xf9\x15\xc1\xc1-\xa5\xc1\xedm\xd4\xc0\xd6H\x1c\xc1U\x94\x9f\xc1\x8f\x9b\x01\xc1f9\x11\xc1\x9b*\x82\xc1\xd3}\xbd\xc0n&"\xc1\x9d\x01x\xc1\x9d\xf5\xca\xc0\x01\xe9.\xc1\xdb\x16\x83\xc1\x88\xb0\x93\xc0b\xcc\x1d\xc1P\xa6\x88\xc1{\xdf\x89\xc0~\x04\x13\xc1\xe6\x00|\xc1\x05(a\xc04\xf4)\xc1r6t\xc1kFx\xc0\x12z8\xc1>\xe2\x86\xc1\xde\xbd"\xc0\xed\xdd1\xc1\xdeU\x8d\xc1\xcazH\xc0\xb7\xa78\xc1\xb8J\x83\xc1\xbb(\xf8\xbf!#?\xc1\x8f\xe4\x8b\xc1\xe0\x8f\xda\xbf\xd7c"\xc1\x19X\x93\xc1\xcb\x9b\xc5\xbf\x02\xf1%\xc16\xdei\xc1^\xaa8\xc0 >\x1d\xc1=\xf1V\xc1GUF\xc0\xaeI"\xc1}\xa3o\xc1\xc0Z\x16\xc0\x974\n\xc1\xc8\xa8~\xc1\x80[\x1e\xc0\xa1\x9b\x06\xc1\xa3\ra\xc1\x98\xf7\xf3\xbf\xea\xfd\xf2\xc0\xd9kP\xc1;\xca\x07\xc0\'\xc3\xfc\xc0~qg\xc1I\xf8\x18\xc0>\x1a\xd6\xc0\x97\x00a\xc1HY\xf0\xbe@\xc1\xe8\xc0\x9beP\xc1#\x05\xb9\xbd\x94L\xd8\xc0\x06\xa0q\xc1\xb7\xf9\xae>g\x1d\xf4\xc0&\xd3~\xc1\xdb(\xd5\xbdky\x01\xc1YRq\xc1\xa7\xa4\xe0?\xe8\xe5\xea\xc0\xe3Ga\xc1\xe2\x84\x07@\xc6\x14\xf1\xc0[x\x80\xc1\xa8\xbc#@`n\x03\xc1\x1cj|\xc1gJh@\xa9\r\x00\xc1$\xe0\x88\xc1\xc0\xae\x19@r}\xfc\xc0\xe2\x88{\xc1\xd8~\x17@\x0f\x1d\x1b\xc1\x9dK~\xc1|\x1b\xaa?\x88\xb1\x1f\xc1\xfdGj\xc11\xfe\x1f@r\xac\x1d\xc1\\E\x83\xc1F,X@\x1c\xd3*\xc1,s\x80\xc1D\xa9S@\x02\xe5:\xc1\xf8`\x82\xc1\x0bM\x8d@\x1c{%\xc1\x10\x1d\x8f\xc1m1G@\xf5\xaa*\xc1o\xaf\x93\xc1\xc71o@\x84\xb9 \xc1_W\x94\xc1kP\x15@\x10O8\xc1K,\x91\xc1\xae\xbe\x8f?Y\x83?\xc1O\xdc\x8c\xc1\xf4\xdd\x07?446\xc1,H\x97\xc1\x8d\r)?/\xaeF\xc1\xf0\x91\x9e\xc1\xcc\xee!@\xa5\xf1;\xc1\xe1v\xa2\xc1];L@tl2\xc1\xa9\x93\xa2\xc1Y\\\xdc?\xfa:@\xc1i\x9ev\xc1b`\xfb?\x1f\xd3\xb8\xc0|\xd1\x80\xc1"\x8e\x9f?Uh\xa4\xc0\xf6~l\xc1?bA@\x1d9\xa4\xc0\xbfXb\xc1\xd1\xcc_@\x1d\xe2\xb6\xc0\x8b8l\xc1\xe1kG@\x8b\xa2l\xc0\xa2gw\xc14\xa8\x1e@\xe0\x83S\xc0}\xb5U\xc1\x03j,@\x0b\x10J\xc0\xd9KS\xc1#L\xd6?\xd5V^\xc0\x13}D\xc1\xb0\xbd\\@-g{\xc0\r\x1cE\xc1\xbb\x9a\x8f@\x9ews\xc0KVE\xc1W\xbbO@[\x05\xa0\xc0\x16\xe54\xc1\xfe\xacD@~\x9ad\xc0WZS\xc1\xe8j7@\xa7p\xd8\xbf\'\x9da\xc1\xe6V\x1a@\xe5-\x9a\xbf\xd4\x04R\xc1\x19\x12z@c\xe3\xa7\xbf\xb3\xf0E\xc1\xbd\xb5\x12@\xba#\x9f\xbf\x1d\x98r\xc1\x9f\x8b\x90@\x07\x1aI\xc0)\xf1h\xc1\xe1\xe4\xb0@\x0f!c\xc0}\x1a\x81\xc1O\r\x91@\xb3\xc4\x0f\xc0\xee\x14\x85\xc1\x8a\x85l@]\xfc\xf4\xbf\xf10\x85\xc1\x7f\xcf\xb8@\xf8\xfb\xda\xbf\xd9,\x80\xc1\x99\xcb\xd2@\x08(\x00\xc0\xbd>\x91\xc1p\x91\xbd@\xdbz\x05\xc0^\xbc\x93\xc1>M\xde@\xe8z\xe0\xbf4|\x96\xc1\xaf\xcf\xa4@%$\xd2\xbfZ\x08\x93\xc1\x1f\xcc\xbb@\xfd0e\xc0\xd0\t\x96\xc1S~\x93@,\x83\x82\xc0b\xb2\x98\xc1\xa4Y{@\xee\x0bW\xc0\x15E\x97\xc1!\x91\x8d@\xe90\xae\xc0_8\x9a\xc1\xb6\xaf^@\xb5\xf7\xbb\xc0\xdf8\x94\xc1l!\xae@7>\xcb\xc0Z\x1b\x94\xc1\x9fI\xa6@|\x8a\xf7\xc06\x96\x97\xc1\xc7g\x89@\x14i\xfd\xc0\xebc\x90\xc1)\xe1\xdd@\x08\xd8\x8d\xc0\xf7\x11\x8f\xc1$\x9b\xfc@\x9d*\x80\xc0\xef \x90\xc1\x8f\x01\xd4@\x98\xe0\xba\xc0\xa9\xd9\x8d\xc1\xbc)\xec@\x9f\xdc\xd1\xc0k`\x84\xc1\x13\x9d\xb4@Lu:\xbe!B\x86\xc1\xf6\x0f\x94@Lp\xbd>\x15\xad\x81\xc1\xbd\x17\xd8@-\xc1\xd9>\xed\xc3~\xc1\xa9\xae\xf1@]*\x0f\xbe\xd5\x8b\x80\xc1\xa4I\xdc@T\x83\xed?t\x03\x83\xc1z\xd8\xbe@:\xe8\x11@w.j\xc1Gh\xe2@\x87d\x18@<2i\xc1\xf8\xf5\xee@g\x99X@O\x8ba\xc1\x1a}\xf9@\xc2J\xe3?\xd5\x01c\xc1\t\x05\x96@\x9d\xcfI@R\xa7o\xc1\xcc\xba\x8f@.\xdce@\\\xed^\xc1\x9a+\xba@\x9e\x8c\x15@\x0f9S\xc1\xd4\x81r@\xd7D4@\xda@S\xc1\xaf91@1\xa2B@\x1aAF\xc1>}\x85@@A\xf3?b\x84M\xc1\x8c\xf9\xad@\xe5\xfe\xcb?\xf6\xfeD\xc1\xb1\xb1\xc0@Y\xdbV?\xdb\xab\x87\xc1^\xcf\xfe@a\xc9!@\xcb\xb0\x83\xc1F`\x10A\xecu<@\xbe\xbb\x91\xc1\xc4l\xf4@D\x182@\xe0\x11\x94\xc1\xb1\x10\xd7@O\xf6 @\xed\xe0\x9a\xc1\xe3\x03\x07A\xeb[Q@7<\x9d\xc1k\x8c\rA3\x13\x14@p\x90\x88\xc1xnJAm@\x98\xbd\x81\xb0v\xc1\x1d\x979A9\xec=\xbf\x87\xcaz\xc1\xef\x07;A\xe16\xe6\xbf5gp\xc1\x97\xd4)A\xe1u<\xbf\x05ed\xc1o\x95HAV{\xf7\xbe*\xb4Q\xc1fPDA\xf8%3\xbfw\x9eh\xc1:\xb4\\A\x83\xc3\xa4\xbdYl\\\xc1\xc1\xcdgAM\xb94\xbd\x05\x8aw\xc1\xd3:bA@\xd5\xda=\xf9\x9b\x9b\xc1\xa0?CAvu*?\xc5=\x99\xc1\xaa\x87PA\x8e\xe1\xe4\xbcf\x05\x98\xc1\xd6\xbeCA\x97\xb3\xd4?\x02\xc7\xa0\xc1\xe2@$An\x97\xcd\xbe\x97\xac\x9f\xc1j\xd2\x13A\xf3\x80j\xbe\x1f\xb5\xaa\xc14\x92-A\xbfa\xb9>\xecJ\xab\xc1\xd6\xfa"A\xd7\xaf\x9f?l\xca\xb1\xc1s\xbb,A\x0c\xeb\x98\xbe{\xdd\xa7\xc1\xd3\xcdCA\xa7\xfb:?\xa6x\xab\xc1d\xf1LA(\xd2\xa8\xbd\xe6\x7f\xab\xc1Q\xf3FAU\xf6\xdd?\xf2\x00\xa2\xc1\xe1\xdc&A\x15\xa3\xe8\xbfp\xc4\x9d\xc1\xaa\x157A\xb4\x84\x15\xc0]\x97\xa7\xc1\x83H\x18A\x9dB%\xc0@\xee\xaa\xc164\x02AY\xc2\n\xc0\x8bF\xb0\xc1\x91\xff\x03A_\xf1\xa2\xbf8\xc4\xa3\xc1\x11\xb6\xf2@D\xa1\xee\xbf\xaa\xaf\xab\xc1\x04\x08\x1eAM\x8bw\xc0\x87\t\xa6\xc1N*\'A\xb8\xc7\x8e\xc0\xcaj\xae\xc1Zg\x07A\xdcU\x91\xc0{\x02\xa7\xc11w\x02A&\xa8\xa1\xc0\xe2\xc4\xb4\xc1t\xba\x08A\xd0j\xa5\xc0\xe6\xb1\xb0\xc1$\x88\xef@\xfd\xb0W\xc0\x8d`\xb9\xc1\x16\x07\xee@\xb8xG\xc0\x90\x18\xac\xc12\xc8\xd2@\xa9\x03b\xc0\xc4|\xb5\xc1\x98W+A\xdd\xc3r\xc0\xa1\x1e\xb9\xc1\x8a\xfb2AU\x1a-\xc0\\\x9c\xba\xc1\x17\xd10ALr\x9c\xc0\xf56\xb8\xc1\xf8\xab,A\xdf\xd7\xb8\xc0_\xcd\xc3\xc1c\x98?A\x9b\x0c\x9b\xc0\xc0[\xc1\xc13\xc6MA\xa1\x9a\x87\xc0N\xdf\xc6\xc1c2EA\xca$\xcb\xc0]\xe7\xcd\xc1\xb3,PA\xae4\xc5\xc0H\x9c\xca\xc1u\xfe5A\xcf\xc7\xd5\xc0\xb3\x15\xbf\xc1^\xe1OAn\x9e\xe9\xc0\x82\xde\xb6\xc1\x8e\x14HA\x80\xac\xe3\xc0K\xdb\xbd\xc1!\xe3_A\xb7\x0e\xda\xc0(z\xc1\xc1\nMOA\xcen\x0c\xc1~\xf3\xc5\xc1\x0c\xbe]A%\xa5\x0e\xc1R4\xc7\xc1v AA\x1b\x8b\x0e\xc1\xe36\xb8\xc1\xd8\xb7NA\x94\x9f\x1b\xc1\xc9\x80\xb1\xc1AEYAc\x1b\x16\xc1\xed\x93\xba\xc1\xb4\xf3SA\x99\x18,\xc1\xcb\x83\xb4\xc13\x189A\x9aj\x1b\xc1n\xff\xb7\xc1C\x10-A\xcf\x8b$\xc1\xff\xd0\xb4\xc1\x9a\xc00A\xba\xed\x0b\xc1*\x99\xab\xc1\xfb\x199A\xbd\xd9\x1d\xc1\x05\xbb\xcd\xc1\xb2\x9f6Apa\x84\xc0u\x84\xd2\xc1\xaboBAR\xa8W\xc0\xbb\xdb\xd0\xc1\xf9\xe3!A&\xc8\x8c\xc0\x17\xc9\xcb\xc1\xcb\xa4\x18A\xba4\xa0\xc04\'\xd9\xc1\x84N\x17A\x8e\x01q\xc0\x88\x91\xdd\xc1\x0eH"A\xe1bD\xc0\x1c\x08\xe1\xc1\xffc\x0fA;\xf0\x99\xc0\xab\x82\xde\xc1\x0cg\x00AQ\x87\xab\xc0\xf1X\xeb\xc1\x8c\x89\x0bA\xe4\xca\x81\xc0\xc6c\xee\xc1x\xa0\x19A*\x94]\xc0/\xc2\xe9\xc1L\x19\xfd@X\xd1R\xc0\xea\xfc\xf1\xc1$\xad\x04A\xe8\x1c\x94\xc0\xd0\xca\xe2\xc15"!AV@\xbb\xc0\xb3\xd6\xdb\xc1\xd4O$A\xf4\xb7\xd0\xc0\x05p\xe5\xc1Rw0A\xba\xb2\xaf\xc0\xad\x97\xe8\xc1\xe6\xb6\x1aAf\x93\xd1\xc0p_\xd5\xc1\x0e\x10\x04A\xb34@\xc0.\xf9\xd3\xc1Y\xa4\xe4@\xc0\xdcc\xc0v*\xd4\xc1n\xf6\x06A\x84\xd8\xd6\xbf\x19\xd4\xd4\xc1\xcc\xbd\x15A\xec\xd8\xa7\xbf\xac\xd0\xd0\xc1\x1b\xb0\xea@\x8dUN\xbf/\xd8\xc9\xc1X:\xe2@f\xa3\xa9\xbfY}\xce\xc1-\x9d\xf6@$\x8d%? \xac\xd5\xc1\xac\x9a\xeb@\xe7\x14\x9d?)\xd3\xcd\xc1\xca\x9e\rA0\x1aB?p\'\xc4\xc1F\xc8\xe4@c\xa3\xa2?N%\xc5\xc1\xa0R\xec@zj\x17@aq\xbd\xc1\xb6\x1b\xf5@\xd9\xdf[?`\'\xc2\xc1\xeed\xb5@\x13s\x8d?\x93\xd8\xc8\xc1\xaal\x9c@\x98\xf8\xd0?&_\xba\xc1\xae\'\xa7@)\x85\x13?\xbc\xd3\xd8\xc1\x1c\x1b\xc2@\xc8\xe4z\xbf\x7fv\xe2\xc1\xd7;\xc4@?|\x92\xbf\xd6\xe1\xd3\xc1g\x88\x9e@\xbfs\xa1\xbf\xf1\xe6\xcb\xc1F\xec\x9e@\x916\x99\xbf\x08\xb1\xd9\xc1\xa1To@Y!\xd8\xbf\xd5\x10\xe2\xc1\xe7\xed|@sE\xe1\xbf\xf1\xc1\xd7\xc1\x8fs8@#@\x83\xbf\xad\x8c\xd5\xc1\xd4\xbfN@n\xc88\xc0}\xcb\xd3\xc1\xe2`\x00@\x02\x90B\xc0\xbb*\xd3\xc1\xb8\xb1\x83@N\xady\xc0\xfe\x80\xd3\xc1\xa7\xd8\xa3@ rt\xc0\x17\xc3\xcf\xc1J\xc1e@Gh\xa6\xc0\xb7\x86\xcd\xc1\xbam\'@\xff\xc4\xa3\xc029\xd9\xc14\x12w@Al\xc5\xc0\xae\xff\xd6\xc1\xafQo@\x9f \xe7\xc0\x00-\xdc\xc1\xa1\xb3\x9c@\xbb3\xc2\xc0\xbd#\xe3\xc1`\xa3>@S\xd4\xbd\xc03\xb4\xe9\xc1\xec\xdd^@0a\xd0\xc0\xdfR\xe6\xc1jB=@E\x8f\x9c\xc0a(\xe2\xc1\x84\x1e\xc9?\x0e"\xd4\xc0o\xd9\xda\xc1i%\xbf?nF\xe8\xc0\x9ee\xe9\xc1\x1ee\xbb?P8\xec\xc0S\xa3\xe3\xc1b\n\xff>\xd1\x91\xb4\xc0_u\xe6\xc1\x91.\x0c\xbfZ\xd0\xc1\xc0\x9a\xf9\xe9\xc1B\xad;?\x1c?\x9c\xc0>\x7f\xd9\xc1\xb9+\\>\xe9\xb6\x9c\xc0\xedP\xd3\xc1C\x9e\xab>B\xe2\xb1\xc0\xc6K\xd9\xc1;gB\xbf\xa1\x1e\x90\xc0T\xf8\xd8\xc1A\xf7k?\xa8L\x84\xc0`\x1a\xc5\xc1\xa5m\x88@\xad\xa1\xb4\xc063\xc2\xc12\r\xa9@e\xbb\xa1\xc0\xf1\x0f\xc0\xc1+\x99k@\x81q\xd6\xc0\xff \xc2\xc1~\xb73@P\xd9\xe2\xc0\xbd\xc8\xb6\xc1\x1eW\x87@0Q\xec\xc0\xd4\xa5\xb0\xc13M\x8d@;j\xd4\xc0[\xad\xb2\xc1\x0fuD@\xedj\x04\xc1\xd9\x8b\xb8\xc1\r\x11\'@W\x82\x10\xc1\xa8\xd5\xae\xc1X\x1f\x18@\xf2\xb7\xf1\xc0\xcbp\xa9\xc1\x84\x80f@@\xc0\xe7b\xc1\xc2\xf3\xab\xc1\xdd\x93e@\xfc&[\xc1.@\xb5\xc1$\x95Y@2\x9cq\xc1\xb7r\xad\xc1\x07$\x03@\xc9\xc5e\xc1\xfc\x98\xcc\xc1G;k@\n~E\xc1L\t\xd5\xc1\xb7\xaco@\x0c\xc2N\xc1\xda"\xcc\xc1V\x97Q@\x8d\xad1\xc1\x0ff\xc5\xc1\xe7\x03]@\xb4#(\xc1/\xf2\xd4\xc1\xfaj\'@~\x87%\xc1*\xdb\xdb\xc1\x1f\xae\x1f@D`1\xc1E\xbd\xd6\xc1\x87\x11Q@\x12\xf4\x17\xc1c\x13\xd1\xc1\xa9\xd0\xa7?\xfe\x0c\x1d\xc1\\\x87\xd7\xc1\xc3\xdb\xf6>\xbf"\x17\xc1.u\xc6\xc1\x1a<{?\xe9\xca\x1e\xc1\x92\x99\xc1\xc1*\xf0\xcc?SN\'\xc1mR\xc1\xc1\x97\xa6\x07\xbe\xc5\x8b\x14\xc1\xd1"\xc5\xc1&\x82\x80\xbf\x93/\x19\xc1\x07\x84\xb5\xc1\xea(>\xbe\xd6f\x1b\xc1\xdbe\xb1\xc1\xa4tM\xbf\xc3\xba\x10\xc1\xaex\xb2\xc1\xc8\x1eY?1w\x17\xc1\xf4\xc8\xb2\xc1\x14v:\xbf\xaa\xff1\xc1\x96\xa8\xb8\xc1\x8f\x88\xb2\xbeQ\xc2=\xc1\xbe\xfb\xb4\xc1\x1di\xe2\xbf4\xc8/\xc1\x83\xe4\xa6\xc1\x10\x06\xf2\xbeu\x18:\xc11\xf2\x9e\xc1\xa4\x9b\x80\xbf\x1b\x0b1\xc1\xf2\xaf\xa6\xc1d\x0e\xa3>=`I\xc1g7\xc3\xc1\x93L]\xbed\x1f\xf8\xc0\xb4\xff\xc6\xc1\x8cv??9\x8d\xe3\xc0\xe3\x9f\xbf\xc1\xff\xf9\xa9\xbf\xcbj\xe3\xc0<\x81\xbb\xc1~k\x06\xc0N\x17\xf0\xc0g\xbe\xc1\xc1R\xfd\xcc\xbfl}\xb6\xc0\xf2s\xc8\xc1V\xbc\x80\xbf\xbb\xcb\xab\xc0Gk\xc4\xc1JZF\xc0%\x8f\xb2\xc0\x06\x08\xbd\xc1\xe62m\xc07-\xb6\xc0\x18\x08\xca\xc1)-W\xc0\x02,\xcd\xc0Ax\xc9\xc1\xc7m]\xc0\xce\x94\x86\xc0\xdaL\xc4\xc1\xc4\x97X\xc0u`V\xc02\xd1\xcd\xc1e\x95\x8c\xc0#+\x84\xc0@\x8d\xd2\xc1\x05\xeb \xc0\x03ex\xc0.\xf6\xda\xc1\xdf\x92\x19\xc0\xdb\x9c\x93\xc0\xd9\xd3\xd0\xc1\xc0\xc4\xd6\xbf:|?\xc0\x96\x8a\xb8\xc1\x87B\xa0\xbf\x03\x1e\x99\xc0^\xa6\xaf\xc1\t\x9a\x93\xbfg\x0c\xa6\xc0\xcd\xdc\xba\xc1\x90\xfds\xbf\x93\x07_\xc0\x87o\xc2\xc1:Y\x90\xbf\xf4\xb7M\xc0&6\xb3\xc1\xcb\xce\xe3\xbe\x8b\x1d&\xc0\xe0\xd8\xaa\xc15\xc6H\xbei\x9aA\xc0\xac\x04\xb6\xc11\x0by?\xe3\xa5\x07\xc0\xeeI\xaf\xc1?Z\x99?\xec\x08\xb0\xbf\x97~\xbe\xc1L\xc7Y?\x87\\\xd7\xbf"Q\xb7\xc1"\x04\x08@2tH\xc0\xbd\xcf\xbe\xc1r\xa6\xf5?C:s\xc0\xb0\xd4\xb8\xc1\x8b\x05[@a\x9f\x14\xc0\r\xfe\xb1\xc1!@m@\x90\r\xda\xbf\x8e\xa0\xbf\xc1\x9fPY@vz\xd1\xbf\x15\xff\xb9\xc1g\xa1\x89@Bz;\xc0\x9d"\xad\xc1\xec\x19\x0e@?\n\x81\xc0kS\xab\xc1\t\xe5\x9a?\xbf\xbc\x8f\xc0\x16\x1f\xa6\xc1\xae\xd9\x1d@\xa1\xaaV\xc0R\xac\xad\xc1\xa5\x82<@x\x85\x9b\xc0\x90\x81\xb1\xc1\x02\x86\xad\xbf\xa1\xbd\xba\xbf\'"\xb4\xc13\xc3\x97\xbf\x06Z\xa0\xbe\x9d\xe7\xab\xc1y\t\x1e\xc05t\xe2\xbf\'\xd7\xa8\xc1\xe2Q%\xc0\x8aJ-\xc0\x8fa\xa8\xc1&^c\xc0\xc6\x14w\xbf\x1eE\xaf\xc1\x0f\xd6v\xc0$\x13\xd0\xbe\xea^\xa5\xc1\xd2\x1f\x9a\xc0\x1c\xd3\xe7\xbf\x03\xe1\x9f\xc1_\x13\xb0\xc0El\xa8\xbf\x1d\n\xa1\xc1\x1bx\x8e\xc0GTH\xc0\xdaP\x9e\xc1\x15|a\xc0\xfej>\xc0\rY\xaf\xc1M\x00\xb8\xc0\xde\xc9\x03\xc0\x11\x02\xb6\xc1\xa0G\xa9\xc0Y\x11$\xc0\xcf\xd6\xb1\xc1\xf4\xe8\xc2\xc0\x8f\x08\x84\xbf\xbb\x14\xad\xc1\xb1h\xd3\xc05\x8e/\xc0\xf4\xeb\x9e\xc1\xe9\xd8L\xc0\x0b\x9a\x82\xbd\x1a\x1e\x9a\xc1Kr\x08\xc01\xd4x\xbe\x15\xd2\x9b\xc1\x9c\x8a\x82\xc0\xcc\x1fU?\xdc\xf8\x9f\xc1\xb7\xbe\x9e\xc0\x87\xd3j?\x13\x16\x91\xc1\xfa\xca\x7f\xc0\xc1\x8c\xb4?\xc6\xa3\x8d\xc1\'z?\xc0#\x80\xa8?EO\x90\xc1\xdd\xe7\x88\xc0\xb8\x968@\xbe\x00\x88\xc1\x1e\xb6\x82\xc0\x95XO@\x0e\x05\x93\xc1\x8ab\xb4\xc0U\xf9K@M\x17\x8d\xc16&\xc1\xc0v\x96e@o\xba\x97\xc1\x84^X\xc0\x1e\xb4o@\x13\x9b\x9f\xc19\x02i\xc0\xfd\x9dW@.\xb8\x95\xc1\x03&\x11\xc0\x9b7j@\xd4\x0c\x97\xc1\x80\xfdk\xc0x8\x99@\xbb\x01\x89\xc12\x88\x9a\xc0\xb04\x1e?,\x16\x8c\xc1;\r\xb4\xc0dkN\xbe!\xc5{\xc1\x7f\x0f\x98\xc0\xa9Wq?t\xdex\xc1\xe2\x90\x84\xc0_\x13\xdf?\x8e\x91k\xc1\xf3n\xb3\xc0\xca\xc5\x8b>\xfc?r\xc1\\\x95\xbe\xc0\xce\x9e%\xbf\x88\xc6V\xc1\xfb.\x9c\xc0H`\x9c\xbb\xff\xceM\xc1\x99S\x96\xc0\xf8xh?S\xa7[\xc1\x87\xe0z\xc0\x0e\xee\xe7\xbe\xa3hF\xc1\xcb\xf1\xae\xc0e\xc5\x88\xbf_\x97Q\xc1\x8d\x89\xb5\xc0\xce\x8a\xf2\xbfT\x93@\xc1\xc0\x82\xcd\xc0S\x8bS\xbf\xea[4\xc1A\\\x8f\xc0\x1d\xa3\xb4\xbf{\xd49\xc1\x97\xf1`\xc0s\r\xe5\xbf\xcc\x15*\xc1\x13\xd0\x98\xc0\xbeU\x14\xc0&+\'\xc1*5\x89\xc0\x17q\x11\xbe\xc8\xf4-\xc1\xe6\xd0w\xc0\x8c!\x14?\xa6\xe8\x15\xc1\xb1\x82\xa0\xc0\xc0\xc1\xa6=\x0f\xbd\x0c\xc1~\xd4\xbb\xc0\xe8`H\xbf\xbb?\x11\xc1tl\xb9\xc0\xd44\xdc\xbf\x12\x9a\xfa\xc0\nx\xc6\xc0\x03\x0e"\xbf\xe4\xa5\r\xc1\xce\x1d\xa1\xc0\xd1\xcd\xa2?\x12\xbc\x19\xc1\xc5\xb3\x9a\xc0t\xec\xf0?\xda\x8b\t\xc10`\xbf\xc0,\x1f\xb3?|\xefh\xc1T\x1f\xdb\xc0iX\x8d?\x89\xcbk\xc1\xe8r\xda\xc0n\x9d\x14@\xbf\x86b\xc1\xef[\x00\xc1\xfe=\x07?\xc2\x8c_\xc1\xdb\xa7\xff\xc0\xcb\xd7\xe1\xbe\x1a\xb3c\xc1\xda\xdd\x13\xc1\nS\xa4?\x82\xe4u\xc1\xa0\xf8\x15\xc1\xf1Q\xce?\xe3\xee^\xc1\x99\xe9(\xc1S\xce\xf0>`\xf2i\xc1)*(\xc1\xfc\xff\xb6\xbe\xd5\x8ee\xc1\xedn7\xc1\x15\xe2\x87?\xb7?G\xc1\x15\x92.\xc1\xe5\x92"=\x954?\xc1\xd0\x8e,\xc1\xce\x14\x86?\xc7\x81?\xc1\x13b#\xc1\xe7\xc28\xbf\xf2\xc3C\xc1\xa9\x13F\xc1\x03\xa4p\xbeiLJ\xc1R\xbfH\xc11}\xa1\xbf\x97\xebM\xc1\xe8#O\xc1Q\x9f\x0c?L\xd8+\xc1\xd5\tM\xc1\xc2\x00\x87\xbd\xd9e\'\xc1\xc8\x8cF\xc13\x0bx?\xc0\xa3!\xc1\xc9^F\xc1\xa2Sc\xbf\xfas(\xc1\x1b\xfdc\xc1YxA<\xf2\x1b8\xc1L\x87k\xc1\x02\xef\x89=\x98\xb0\x1e\xc1\xd2\x04i\xc1\xe5\xceN?\xff\x90 \xc1\x18$i\xc1\x91\xe8_\xbf-\xe6W\xc1\xb5\x9e\x16\xc1\xd5e&@\xd6a_\xc1"\xa3"\xc1\x87\xa4\\@\x87\xbaF\xc1\xe2\xf6\n\xc1\xd3&5@"*@\xc1h\x85\x02\xc1\x19\xc7\x0b@\x17\xe49\xc1F[\x0b\xc1\xfb\xbf\x82@$k@\xc1A\t\x17\xc1La\x9a@\x00\xe3 \xc1\xfc6\x12\xc1\xf6(v@\xfb\xeb\x1f\xc1go#\xc1\xcc\xaf|@\xd4\xcc\x17\xc1\xcc\xa7\x0c\xc1.g\x95@\x17\x07\x17\xc16W\x0b\xc1\xe8\xaa\x1f@_\x14\x11\xc1b\x02\x1a\xc1\xcbv\xda?fi\x15\xc1\xf9\xdb\xef\xc0w\xf6\x0e@\xfc0=\xc1\x8e\xe8\xea\xc0!\xce\x98@\xd6\x8a8\xc1\xfd\xbf\xe3\xc0\xc4\xc4\xbd@\xdd\xe4F\xc1\xe3h\xca\xc0\xa0?\x84@\x07\xbeL\xc1\x84\xf8\xd1\xc0LJP@\x02\xa9M\xc1\xedO\xa3\xc0|\x19\x9b@?DC\xc1\x17\x9f\x96\xc0\x9c1\xb3@s\x15M\xc1\xf4\x16\x80\xc0{\x07s@\x07wU\xc1<^G\xc0\xc7\x89\x83@]oS\xc1V/\x8d\xc0\x86$5@lB6\xc1\xea\xcff\xc0xKb@(!(\xc1\xc7+f\xc0\x87\xc3\x8d@}\x0f0\xc1\xfb\x92X\xc0\x92@\x15@+\x86d\xc1Y;\xa7\xc0d\xee\xab@Scs\xc1\x94\x7f\x96\xc0s^\x9b@\xcc\xeef\xc1\x98\xb4\xbf\xc02\xaf\xcf@sz[\xc1\xe9\xa4\xd3\xc0\xb3h\xda@p8y\xc1#\xae\xb8\xc0uo\xeb@Ik\x7f\xc1\x88~\x9a\xc0\xba\x87\xe4@P\xb6\x85\xc1o\xad\xd9\xc0X\x18\xe5@\x0c\xc2\x87\xc1\xa4\x04\xdb\xc0F\xd8\xbf@\xf9\x08\x8d\xc1\x94\xfc\xd0\xc0-&\xf4@\xf24\x83\xc1\x14\xa6\x03\xc1\x0b\xf4\xf4@I\x89\x8a\xc1\x90\xc1\x0e\xc1\r>\xf7@\xe1A~\xc1T\xd4\x02\xc1\xebU\x0bA\xf3\xdcu\xc1/\xa6\x10\xc1\xbb\x8d\xd7@\xbexd\xc1k\x8a\x17\xc1\xd1\xa4\xe1@\x83\xfe|\xc1\x1d\x02\x13\xc1\xfa\x98\xae@n\'s\xc1o\xee\x19\xc1_\xc0\x98@\x9ad\x85\xc1\xca\xe3\n\xc1`\x02\xa9@\x8b\xe9q\xc1\xb4\x19\xb5\xc0\x15 \rALm^\xc1\xe8\x17\xbb\xc0\xb6"\x11A\xa7\x13\x80\xc1\x8e\x10\xaa\xc0]\xf1\x1bA{\xce\x87\xc1\xceZ\xa5\xc0\xb5\x93\x18A\x93\xc5{\xc1\x99\x84\x9a\xc0y\x821Al\xa4u\xc1\xae\x96v\xc03>0A\xa9K\x89\xc1^\xf9\x96\xc0HJ=A\x90\xe3\x8b\xc1\x05\x85\xb7\xc0\x80hDA2\xb1\x8f\xc1\xa9z\x8b\xc0\xd8\x143A\xd2\xae\x89\xc1Ekh\xc0"\xe0MA\x15\xd4\x91\xc1aae\xc0\x01yVA\x95<\x88\xc1\x9a\xe0&\xc0\xb5rGA<\xe1\x81\xc1\x91\xb4r\xc0\xad1`A~\xa2u\xc1?\xe3;\xc0\xaa\xb5cA;,\x82\xc1\xc91\x9a\xc0\xb6lkA\x93\xc2k\xc1E\xd9\xb1\xc0\xfbc>A\x0e\x00Z\xc1 E\xa4\xc0\xd1\xdcAA\xbc\xb9o\xc1\xe8k\xd7\xc0m\xf7GA\xe0\x99~\xc1\xde\xaf\xde\xc0\r\xddHAf\xfa`\xc1\x81\xa2\xef\xc0\xd2\x0bVA\xf2K^\xc1\xab\xb6\xdc\xc0V\x10eA\x964m\xc1\xc3\xe7\r\xc1F\x9bZAg\xbfd\xc1o/\x1b\xc1\x81\xf7RA\x81_}\xc1\xf1\xc8\r\xc1\x1dyTA\x98\xe5q\xc13\x83\x12\xc1VgrA\x04\xe0x\xc1\xf3\x90"\xc1\x97IsA,\xc3~\xc1\xad1\x08\xc1F\x15yA\xe8\x16_\xc16\x81\x12\xc1\x11\x99\x80A\xa5CZ\xc18\xfe"\xc1\x976\x85A\x8d\xaaS\xc1^\x89\x02\xc1>/\x81A+\xd0I\xc1\xf1\xe1\xf8\xc0\x97\xcaLA\xedr9\xc1\xbb\xc2\x01\xc1o\x94VA\xd5\xdbI\xc1t\x16\xf9\xc0O\xdf7A\xb0+W\xc1\xc2\xb6\xfd\xc0\xc3\x8d0A\x0f=8\xc1\x9f\xb5\x00\xc1\xccE)A\x15\xe5,\xc1\xa1.\x0c\xc1\x9d\xeb0A)m@\xc1\xa4\x92\n\xc1|?\x15A\xc9\x0eI\xc1[\x92\x00\xc19\xa3\tAU\xb1P\xc1{\x1d\x1a\xc1\x0f\x05\x19A\xf78W\xc1\xe8"\x1b\xc1\xd6S\x0bA~\xc3.\xc1\x1bp\x15\xc1\x17\xdd\x07A\xc6\xdd#\xc1\x0b\xf4\x1f\xc10S\x12A]\x8d$\xc1\xc5\xf5\x08\xc1\x1er\x00A\x9ek5\xc1]G\x1f\xc1A\x19\xf5@Z\xc2*\xc1\x9aF\xd9\xc0\xa7\xd4%A3b\x17\xc1:s\xdc\xc0h\xda\x1fA\xca\xcb3\xc1\xa8}\xb4\xc09\xb7+A\xbf!C\xc1\x98e\xb3\xc0\x06\x15/A\xed\x1b&\xc1r,\x8d\xc0,\xc20AP<\x1c\xc1\x02\xb1\x89\xc0\xd5\xf4!AIh2\xc1\xe9\x8aG\xc0!\x1f5A{\xa49\xc1\x08\x9bL\xc0\xf7\xf1EA\xb7\x9a"\xc1\x02`\xf1\xbf\xd7\xdf6A\xf8k\x14\xc1Jq\x05\xc0\x1f\xb9,A\x88\xbb \xc1w\xb8\xd9\xbf\x8b\x81GA\x01\xcd)\xc1\xc6Rr\xbf\xaf\x810Ag=E\xc1p\xb5/\xc0\xc5[&A\x13RO\xc1\x7fy\xee\xbf\x9c\xea+A\xeb\x1dQ\xc1\xef!f\xc0\x80\xd7%A\xf2\x1fA\xc1\x94g\x1c\xc0E\xf4\x15A\xe7\xcd\x15\xc1\xe2\x07\x95\xc0\x11DBAZ\x8f\x02\xc1\x82\xc2\x91\xc0_=@A/\'\x1e\xc1\xa8\xe7\xa1\xc0\xb4\xa0UA\x06\x81.\xc1\x05\xc5\xa4\xc0\x86\xbeVA\xc2\xa6\x12\xc1\x9f*\xa8\xc0\xde\x9fhA\xd7_\x0b\xc1\xdf4\x89\xc0\xf7\x11kA\xcd\xe1!\xc1\x1bq\xb8\xc01\xe8zA)n\x16\xc1\xd3\xca\xba\xc00\xa8\x84A\xf3\x07)\xc1\x9b1\xd8\xc0\xf4VuA\xe3\xf24\xc1\xca\xdc\x99\xc0\\>\x80A\x7fU@\xc1\xd5\x9d\x92\xc0\x80.sAF\x0b,\xc1\xc4\xf2v\xc0\x05_\x81AJ\xbe=\xc1\xa0\xcc\xa4\xc0b\x07\x8bA{\x012\xc1\x96\\\xa3\xc0\xf4\xd7\x91A8\xafB\xc1\x8e\xcf\xc5\xc0\xa3\xcf\x8aA\xbdxP\xc1\xcb\x02\x89\xc0\xf1)\x8dA\xa9aM\xc16\x12U\xc0\x0f\xfe\x8fA\x9f\xe2b\xc1\t$\x91\xc0fz\x88Au\xf5g\xc1[\xe9\xb4\xc0H\x02\x84A\xa7\xcfa\xc1[\xdf\xd3\xc03\xfc\x84A\x11\xb4s\xc1\xae\x11\xb3\xc0\xdag|Aq\xe5n\xc1\xac\xc3Y\xc0\xf8h\x86A,7{\xc1`=j\xc0}g\x81A\xceMg\xc1\t\xe3-\xc0>\x84\x82A\xbc\x9e\x00\xc1\x94\xc5\xc6\xc0\xfa.gA\x8d\xf7\xdd\xc0\xa6\xc7\xbe\xc0o\x1aoA7\x05\x05\xc1\xf6D\xe9\xc0H\xe9[A\xd2\x05\x14\xc1CU\xeb\xc05\xe7UANZ\xed\xc0\x135\x05\xc1\xf0TWA\x08\xcd\xdd\xc0;0\t\xc1\x88\x91eA\xba\x12\x04\xc1\xfdC\x18\xc1e\xf5LA\x18w\xf2\xc0\xa8e"\xc1\xbe3CAE\xd5\x10\xc1+\xfe\x11\xc1\x8b\x8cBA\x9a\x85\r\xc1a|%\xc1\xd6\x12_A]$\x12\xc1\x1f*\x1c\xc1\xd1\x1cmAl)\x00\xc1>\xcf0\xc1\xddTcA\x1ca \xc17\xd32\xc1&+WAO\x97\x19\xc1\x84|B\xc1\x9e\x8dRA\x93O)\xc1\xce\xe0)\xc1[\x9aJA\xa0\xf60\xc1\x9f{7\xc1\xd9\xa2iA\x1c\xe5+\xc1*RB\xc1\xc2\x14wAx\x04>\xc1\x95\xb8@\xc1,\x07bA\x0b\x178\xc1\xf0\x82#\xc1;\xaftA\xf5SF\xc1;\x93%\xc1v\xb7}A\x95\x96;\xc1_\xb4\x19\xc1D\nhA0U-\xc1v\xb0\x1b\xc1\x8c\\~A\x12$\xcc\xc09.\x00\xc1\xb97GA\x19\xeb\xa9\xc0B\xaa\t\xc1\xcd\xadHA\x02\xb4\xd3\xc0\xe8v\xe3\xc0n|7AJ\x03\xee\xc0\xafe\xd3\xc0\xa7\xdf6A-\xa7\xb2\xc0\xdd\n\xd6\xc0}})A\x9d\x82\x9a\xc0\xb3\x95\xed\xc0\xf4r&A:D\xc7\xc0\xd4\x01\xc6\xc0i\xe0\x13A\xab2\xaf\xc0\xc1\xed\xb3\xc0\xcee\nA\x8c\xa4\xdf\xc0\xd8-\xad\xc0\xa7\x99\x15A\x12g\xd4\xc0\x18o\xef\xc0\xf7,\x08A\x1aQ\xed\xc0\x87\xe3\x00\xc1 j\x11A\x84\x7f\xb7\xc0\xa5E\x02\xc1V\x07\x07A\x99\xfd\xeb\xc0i\xd5\xea\xc0\x0ba\xe3@\x82\xa7\xf8\xc0c\xe7\x05\xc10\x8a\xd9@M\x0c\xd9\xc0\xbaC\xdc\xc0\x1b\xca\xc9@\x0c\xaa\t\xc1\x08\xbd\xcf\xc0*\x8f\xed@\x03\xe9\x0e\xc19\x01\xc9\xc0\x8c\n\x06A\xda\xfc\x11\xc1\x91\xa9\xb4\xc0\x1a\xe0\xcd@~\xc2\x0c\xc1@\x8a\xb5\xc0\xc5\xcf\xa4@\xfc1\t\xc1b5\xd1\xc0\xae\n\x9a@\xc8\x0c\x14\xc1aR\x9d\xc0(\x0b\x96@\x88\xd1\x1e\xc1\xb1\x9c\x96\xc0\x03\xb8\xda@\xf1/$\xc1NF\x82\xc0\xf8\xb6\xc3@\xb1r\'\xc1\x11|\x9e\xc0\xcc\x8b\xf5@\xcd\xa2\x98\xc0|f\xb0\xc0\xa0b3A\xe9\x9ej\xc0\xf2\xe0\xa5\xc0\xf1\x0c,A\xd3P\xa9\xc0$=\x9c\xc0\x03v\xd6\xc0\xe9\xea\x84A\xccL\x80\xc0us\xf0\xc063\x8eA\x15\x87\xaa\xc0\x13\xdc\x06\xc1\x85\xdc\x87A\x9c,\xee\xbfI\xca\xe5\xc0\xfa\x1acA\xbd\xac1\xbf_\xc0\xe5\xc0\x14\xd3hA\xb8"\r\xc0b\x05\xed\xc0_\x08OA2`G\xc0!\x9b\xec\xc0\x14\xb4JA\xf2\x91\x95\xbf\xdb\xf0\xf6\xc0\x85\xd9=A\xf8i\x07\xbf\xae3\x08\xc1\xdf9CAc\xe7\xe4\xbfs@\x00\xc1\xb08)A\x87%\x8c\xbf\x00!\x00\xc1\x9f\x07\x1bA\xb5A#\xc0Z0\xe8\xc0)v$Ao\x13\x1e\xc0\xa0n\x16\xc1la)A\x16\xf5G\xc0\xfb\x8d\x18\xc1~\xd0\x1aA/\xa2K\xc0<\xc3\x14\xc1\xcb\x8d6A(X\xc4\xbf\xd9\xb3(\xc1I5+Ax\x16<\xbf\xfeT.\xc1\xa1\xbb\x1cA\x8eq\xc6\xbf+c3\xc1\x97\x0fo\xf4U\xbf\xa4\x9a A}Q\xe8>Q\xa2\xbe\xbf\xe5\xb2\x13A\x1f8=?\x0c\xff\xe5>\xaf&#A>\xdd\xbb?\x94`d?\xf0\xba\x17A\xf1gA>D\xf1\x9f?m\xf43A\xe9\xf3\x01?Z>(@\xc9b2A\xb3p\x8b>l\x1d;@\x93\x16AAt\x0b\x8a\xbf\x04\xeb!\xbf[-AA\xd9#\xe4\xbf9I\x84\xbf\\(MA\x8f\xbc;\xbf\xcb\x8a5?\xb7\x9eBA\x8d\xa8\x93\xbfg\x8a\x9a?\xaeIPA\xc5YI?\xc3&k\xc0\xff%IA"\xe3\xf4?\x00;J\xc0zxHAJ\xa5\x85>&\xbd~\xc0\xe7\xc5\\A\xb1\xbd"\xbfF:\x8a\xc0,b_A[\x03\x87?.Sn\xc09spA\x0c\xcd\xb2?+\n,\xc0U\xeaoA\x90``>\xaf\xc2v\xc0\x9dV\x82AXM`?m\x99r\xc0\xf3\x98\x89A\xc0\x1dl\xbe\x8e\x10\x9b\xc0\x07\xa2\x82A\x1e;\x88\xbft5\xda\xbf\xda;\x7fA \x9d\xf8\xbeK\xcf\xa1\xbfz\ruA\xea[{\xbfb\x06?\xc0\xe6\xf8\x82A\t\x8d\x18\xc0\x9a\xa1\xa3\xbf\x10\xed\x80A\xed$-\xc0\xeeD|\xbe\xd1a\x80AX;F\xc0\\\xfc\x13\xc0\xa5M\x85Aa%\x0e\xc0J\x16V\xc0\x9e\xf3\x86A\x07\xf8"\xc0\xeb\xaf\x84\xc0B\xe4\x8bAU\x94\x0f@-V\x96\xc0\x11KsAq\xf4U@(\xb2\x88\xc0\x9c\x87xA\xa1\xca\x01@\xf1e\xc0\xc0\xee nA\x0e\xc4\x88?\xe3n\xcc\xc0\xa1\x0fkA\x12\xa3J@\xf13\xdd\xc0\t:jA0\xc6e@\xa5\xa4\xe6\xc0\xaf\x97zA@\xf2$@\xfc\xb1\x03\xc1\xf1t`A\xac\xd4`@2\x9a\r\xc1\xc1\x19[A\xe6"\xe8?\xc54\x01\xc1\xad.SAB`\xfe?.\xbf\x13\xc1\x0b\xaepA\xa8;\xa4?\xab\n\x0c\xc1K\x0c|A\xfc[2@7~\x1a\xc1\xea[zA\x80<\xa0?Q.&\xc1\x12bdA\xbf\x0b\xdf?z\x806\xc1\xdd=[AuR\xab\xbdp\xb0"\xc1n\xe5aA\xc0\t\x19\xbf\xf7T+\xc1\xe3HWA\xff\x98\x02\xbf\x07\r\x15\xc1\x0f8dA\x15\r\x89@\x8d\x99\xcb\xc0\x9eb\\A\x95F\xad@8\xfa\xc4\xc0\x88\x03bA\xa3\xbcv@\xcd\xc1\xc3\xc0\xabbIAR\xaf5@\x86<\xc7\xc0\x14\xa8GAK6\x96@\x87\xd7\xbe\xc0\xda67A\x89<\xaf@\xa1\x02\xd8\xc0\xee\x7f5A8!|@]<\xc6\xc0\xa9\xe6!A\xa4\x89\x94@\xd0s\xbe\xc0\xffY\x14A\x97\xb4E@XU\xb0\xc0\xfb\x88 A\x85yX@*q\xf3\xc0O\xfb\x1eA\x87c=@+\x82\xf7\xc0m.\x0eA\x8eQ#@M\x84\xf3\xc0\x90n*Ar\x9b\x8f@\t\xb0\x0e\xc1\x80\x19#A\xa8\xb8T@z\xee!\xc1\xe9R-A\xb2Tv@m\xc2+\xc1vH9A0\x9b6@c\xfb,\xc1F{ A\x90B\x1f@\xca\xb9\x1b\xc1(\x917A\x02 \xa8@\xdb\x11\x91\xc0\xe3\xd24AO7\xcd@p\xba\x8a\xc0\xef\xbc0A\x92\x8a\x8b@\x91\xcad\xc0\x96\xdc4A\xf4\xa8Y@\x84{r\xc0\x01_6A>\xd4\x96@\xa7\xd6\r\xc0F\xf6.A\xa5\xdf\xb2@\xe6\xf4\x17\xc0\xdd\x0f%A\xd8\x15l@9\xfa\xbf\xbffK"A0\xa76@\xda\x0b\x92\xbf\xb76,A\x15\xc5H@\xf9\xb7\x11\xc0\xec\xde\x11AY~r@V\x91=\xc0I\xf6\x0eAE7\x8f@\x97c\xce\xbe\xff\t\x17A\xe0l\xab@\xb3F1\xbf\xcc.\x0eA\xab\xc8\x96@H\'\xb8>\xdc\xcc"Acao@\x00\xcf=>ma\x0bA\xb7\x0e\xa9@\x8f\x89\xb4\xbfA\x0eAA\xbcA\xc3@\xf4(\x08\xbf\x06n\x03\xbckA\xda+\xfc@\x86\xf0\xf8\xbf\xf9\x9fhA\xfc3\xed@\xbaFT\xc0P#iA\xf4\xda\xd5@=Q\\\xc0/\xb0\\A}\xa5\xe0@\xb8\xd5d\xc0tcyA\xc5\x96\x15A\r\xc0\xee\xbft\xa9dA\xbb\xb4\x19Ad\x04\x9b\xbf\x8b\x12rA4~\x1dA\xa1\xbdR\xc0\x94\xf1iA\xc9\'!A\x1c\x90Z\xc0\xdaL{A\x9c\xb4*AH\x9f_\xc0GS_A`*\nA\x98R\x87\xc0\xdd3eA\xba\x85\nA\x8a\x1a\x91\xc0=ZTA\xcei\x08A\r\x06\xa2\xc0\x9e\xe4oA\xe9R\x1dA\xec\xc6\xaf\xbfe\xedNA}\xad/A|\x1fs\xbf\x0cgMA\xe1\xfa\x0fA\xb1.\xb2\xbfP\xa8>A\xea\x05\x01A\x90.\xe9\xbf\xc4\x17=At\xab\x18AY\xc5u\xbf\xaf\xce(A\n\x04(A\x1d\x10\xa8\xbf\xcbw&A\x8b{\x08A\xacm\xc1\xbf\x0c\xd2\x16A\t\xea\nA\xc3\xa7\\\xbf\xaf\x05\tA\xf9\xf2\xed@\xa5\xbe\xc2\xbf\xb2\xce\x1cA\xe3\x10\rA\xe9\x84>\xc0\x16\xa1\x0fA\xed\x93\x0cA\xb8Qd\xc0\xad~\x1eAr\x0f\xf5@\xc5IZ\xc0\x10a\x02A\xba\xbd\xf0@5\'7\xc0sN\xe5@&\x13\xd7@\r\x8fK\xc0\x87G\nA\x11i\xf5@\xf99\x8e\xc0S5\xfe@\x8a\x1a!Ab]?\xc0\x15Y\x03AL\xe3,A\x9c\x07)\xc0$+\x0eA\x1e\xf6 A\x15h\x11\xc0\xef\x1c\xeb@H\xa2\'As\t}\xc0\xabP\xfa@\x12"\x19A\x0f\xca\x0b?YU(AH\t&A\xceL\x90?\xf3\xf5\x1cA}\xf7\x0bA\x1d\xe3\x99?\x99b6A\x85\xfd\x03A\xc8\x96 ?\xe5\x9b?A\xcc\xa7\x0cA\x07\x11(@\xa7#:A\r\xce\rAA\xbfI@\x81\xab+A\x9e\xd2\xf4@\xe5~K@\xa2}FA\xa1\xd6\xef@\x1c\xab%@=eUA%\xed\xfc@\xc6K\x95@\x9d\xafLA\xae\xf0\xe4@3?\x9f@U\xccWA\xcc\x1f\xfd@@\x13\xaa@!4?A6\xab\x0cA\x1b\xd8\x99@\'\xcdVA\xcev\xcb@K\xecE@\xd6\xe68A^b\xcb@\x96f\x05@\x1c\xfe3A\x8dP\xca@\x19\x91t@lW+A\x10\xaf\xa0@I]O@&\x07EA\tQ\x86@/TO@\x17\xb29Apq\xa5@\xc4\xbf\x84@\xe0\nMALn\x9e@\xaa^\x18@-pPA\x12\x0c"At\xd5:@\xaa\x1bDAH]0A\xdf\x0ea@\x1cG:A]\x01\'A\xdf\xe0\x11@\xa3\xf0VA\x91\xcf\x1bA\x89 \xd7?\xd5\xd2]Az4;A\xceq\x1f@\x08laA\xc6\x98:Aea\xe6?\x86\xf1mA\x13\xa2\x12\x7fGA\xbe\xff_AMJ ?G\x938A\xd5\xe3mA\x17\xec\x1d?\x80\xbeAA\xba\xbcZA.?a\xbf\x16\xb24A\x9b\x02IA\xd1 x\xbf\xb9\xa71A\xb1\x90^A\x7fh\xac\xbf\x034EA\x1a\x08eA\xe36\xc8\xbf\xfaD"A">YAw\xfe\xdb\xbfix\x0fA\x8a\xc8IA#\x0c\x95\xbf\xceu\rAl\x92`A\xa7\xe7(\xc0|\x83\x00AR\xd3VA\xa1\x92)\xc0\xd0\xc6\xe4@TksA\xcc=V\xc0f1\x03A\x81\xdd{A\x02\xda\x84\xc0$S\xe7@T\x85\x81A\xb7\x99\x9e\xc0\xe81\xf3@\x0bxwAE\xc1\x10\xc0\x8c\xd5&A3v\x7fA\xddr\x03\xc0#\xe05A\xa8\xa0}A\xb6\rM\xc0\x03I\x17A\xba\xc7\x86A\xaeUi\xc0D\xba\x19A\xebCdA \xa1\xbf?Dp$A\xf7-vA\xc9f\xe4?\xb8\xa8 A\x97(TAN\xc3\xf2?N\xd6\x17A\xb4FEA\xc9\xa0\xd5?q\x8e\x1aAUFUA5q-@\x92u\x04A6\x18cAJ\xf4\x1c@\xa4k\xf8@\x03\x9dAA\xd7\xdc"@\x9aq\xe9@0\xe9@A\x88T`@\xf0"\xd4@y#3A;\xf2\x1e@5\xd3\xfd@\x99\xd6DA\x99\x87\xb2?\x08\x90\xcd@\xa4LVA\x174\x92?b+\xb7@QdeAq\x86\xda?5+\xbd@\xdb\\XA\x84N\x93=PC\x99@\xc0\x9efAx\x9b\xb5<\x89L\x89@\x92\x01GA\xbb4H\xbfL\xc3\x93@~uGA\xf1+\xe8\xbf8jl@\xce,VAz\xa7\xe2\xbf\xeb9U@j;3A\x1f\xb9\n?4\xaf\xc8@\x9d\x1d%AY$`?I^\xd9@\\/4A\x07\x11\n\xbfU\xd1\xab@\x9a\x1b&A\xe6\xe3\x90\xbfQ\xf8\xa6@s\xd5WA\xa2}\x84@\xa3v\x0bA)\xbccAs\x9a\x9c@\xc7\x8b\x02A\xf3\x9aMA\xf8\xd6\x92@\xe3H\x1dAnQBA\x8f\x1b\x81@\x02\x0c%ACHWA\xbc\xbf\xb7@\x0e\x9d)A+NTA(*\xd5@\xe0:\x1fA\x02WOAO\xf5\xbb@\x96hAA+\xabWA\xbb\x1e\xd4@\x88\x1dKAP\x04RAf\xfe\x9d@\xa6|IA\x1e\xe69A\xa3D\xca@\xc3\xfd@A\x8e\xf50A~A\xb1@\xbc0A\x87/\x87A{\x7f\x16A\xd0_RA\xbb\xad\x86A\x1bS\xeb@\xe0\x8d^A\x17;\x8cAX\x07\xf2@\x81\xa0nA\xe5\xba\x7fAi\x84\xcd@\xcc\xcc\\Ag\x14\xa3AE)\tAi\xde+A(\xdf\xa9Ad\xb8\x16A\xa8\x81/A\xcaZ\xa5A\xe0\xde\xea@\xce\x1e$A\xdb\x9c\x9fAQ\xcd\xd3@\xe7\x88!A\xa1\xd1\xafA(\x1f\xda@V\xa1\x1dAx5\xb5Aa\x08\xdd@\xe7\x8e*A\n\xed\xaeA3\xce\xaa@\x18\x88\x17A\xe9\xf6\xa7Ay\x9d\xa5@\xcaY\rA\xae=\xadA\x96$\x9a@\xf7\x9f&A\xdb\xa2\xb6A:\xea\x9f@\xd4-\x0eA\xee\x00\xb4A\xcf\xad\xf1@\x12[\tA\x0b\x10\xbdA\x0c\xe4\x00A\xd8\xaf\x07A\xe6\xc6\xacA\x18\xa0\xf5@\x99\xd5\xf0@2r\xa5A\xda\xb7\xe8@/h\xf1@\x1fn\xafA\x7f\x89\x04A\xabz\xc8@\xbb\xc9\xb6A\xea\xb6\x0cA\x18\xc7\xcd@%\xee\xa8A\xdc\xa1\x0eA\xdc0\xbf@\x06\xdf\xafA\xfbi\xec@\xff\xe0\xa2@b^\xb7A\xcf\xa1\xec@Y@\x88@\xc9|\xa7A\xbe\x00\xd3@\x00\x07\x9f@\xa0\xcd\xa1A\x89\x8e\xd1@\xb6\xfa\xb6@C\xc8\xa6A;\n\xb6@X/v@\xfe\xf5\xadA\xb13\xb9@p\xeaO@`b\xa5A$s\x85@\xdd\x96\x8a@c@\xa6A\n:d@\xfb?[@\\\xe0\x9dA\xa3ow@\xdb\x88\x9b@\xd4|\xaeA\x08\xc9l@\xd3\x0f\xa7@$\x11\xadA\x03\xea5@s\xbc\xc1@\x86x\xb8AK\xb6\x84@\xfe\x86\x9f@z\xab\xbeA\xbc\xd6q@fS\xb2@r\xfa\xb9A3\xb2\x99@\x8f/\x8a@\x9dV\x9dA\x04\x01\xc0@\xa5\x99<@\x1a\xe7\x9cA\xdb$\xab@:\xc3\xf1?\x8c\r\x96A/l\xda@H\xf3W@\xba\x90\x96A\xcd$\xe5@}o\x8a@\xec\t\x8cAv\x1a\xe4@\x17K)@\xb9M\x8eA\xbfG\xe2@w\xd2\xc8?\x84e\x83Ad\xe4\xbe@5\xc8,@>\x98\x87A\x1d\x81\xa3@TF\x1d@\xf5\xa1vA:\xf1\xc5@\x18~\xd9?\x18\x06{A\xad3\xb4@\x1ddb?8\x13|A\x9c\xbc\xbb@\x97\xa1\x83@&\xb7rA\xdc]\xd7@\xf2\xb4\x8d@\xc4\x0e\x85A\r\xe6\xb5@C2\x98@\xa6\xcdpA\x14d\x9f@kp\x86@\xa3\x17\x87A\xfd\xce\x06A\xebKB@\x0b*\x8bA\x07/\x12Ao\x8aw@\xa0\xa5|A\x80p\x0eA\x0c\x86\x19@\xf9\x7fvA\xc73\x05AT\x17\xd3?\x0b\xb8pA\xed3!A\x1b(4@3\xddwA\xa7\xeb\'A\xd0\rn@^)rA-B4ATU\xe3?\xd1`hA\xfc\x89.A\xb1>m?\xa2\xc8\x81A\\y6A\xcbm\xbe?\xb3\xaehA\x03\x9dJA\xc8?\x10@>ptAV\x0fSA\x93\x18A@\xbd\xdcYA\xf6OHA"\xe0-@\xd6ghA\x95\xc8XA?\xb6~?\xd5*`A\xe8[PA\x99\n\xf8=\x1b\xaaxAS\xd7[A3\xef\x07?2\x1b^A\x9a\x18oA\xa5\xec\x8b?\xb7\x05iA\xc9*yAA/\xde?\xce\xadMA\xec\xfckAw\x14\xcf?D4YAf\xe7vA\x99\x0e\x8c\xbev\xf4_A\xf4\x10mA\x07\xf6\x85\xbf\x12\xfa]Ar\xd3\x83A\xc0\x97\xba\xbe\xcb\xcbHAC\xfcvA\x8e\xa3\xcb\xbe\xfc\x8cYA]\xfd\x1aA\x1d^P@\n\xb2LA\x7fR\x14AK\x86\x1a@\x93cUA\x7fQ\x1cA\x0f\xfe\x93@\xc1K`A!|"A\xcb\xd7\xa8@\x8f\xdb@AgV\x14Al\x8c\xa2@\x18\x95:A\xf8\x8c\x07A!_\x8f@\xc7\x08DA3\xcd\x0bA*y\xd2@\xd5lEA6a\x19A\xecz\xea@\xd2\xa2QAMP\x01A\xbfl\xd3@\x91\xb40A>\xb7\xfb@Ki\xde@\x99X A\x83\x97\x05A\tS\xf8@M\xce\x1eAPM\x16A\xbbg\xfe@\x1f\x1f\x11A\x01l\xee@\xdf \x05A\xa6\xcc\x01A\xdc\x1c\xfc@\x08\xd9\x0cA\\p\x12A8M\xc2@\xbd)\x01A\x1eD\x01A\xf5\xc0\xa8@\x18\x16\x07AP\x99\xec@\xd7\x08\xbc@\x9e$\rAu\xcc2A\x94H\xcf@@\xe4\xd8@\xe3\x0eAA\x8f\x86\xc5@\xa6\xcd\xc8@{\xbd#AF\xe3\xb1@\xac]\xea@\x05\x97&A\xb4K\x91@\xe7}\xe6@\x0cJ0Ae\xf9%A\xf8\xe2\xa4@\xdb\x125A\x9a\xa87AkR\xb2@A0\x1cA\xa3\xcf!AyA\x93@\x12\xb7\x18A\xc1\xbd\x12A{\xb4\x87@\x01\xa3\x0bA\xa2\xe41AZ$\x91@\xbf\xd6\x0fA\x98\x0c@AY\xcf\x9f@Y\x84\x05A\x11\x9a8A#:E@=\x8d\x00A\xb8\x8e+A\x88\x01\x1d@P\x85\x13Ay\x9e\xa8EA%}D@\x050\xf3@\xda\xf0)Af\x0e\xac@\x1b\xda\xdf@)/\x19AP\x07\xa3@\xf31\xe9@8\xeb5A\x90\xe5\xcc@l\x8c\xf8@\x80,CA\x86\x99\xd8@\x1e9\xc6@\xf0\x941A\x9a\x1b\xea@p\xda\xba@\r\n#A~?\xdf@-\xc7\xd2@\xc5\xfa/A5\xb6\x0cADp\xde@8c@A\xbed\x12AO\x9e\xee@\x1bU$AR\xaa\x0cA\x1cW\xb0@\x1d\xf9\'Af\xfa\x1bA\xaf\x12\x9e@K\xd5\x1bA\xd5\xa2\x11A\xe4\xa1\x9a@\xff\xd84A\x8d\xbd\x1fA@\x9e\xc3@\x14&\x1cA\xc2;/A\xa8\xcf\xd6@\xa6"(A\xd2\x918A\r\xe8\xd8@\x8e\x8b\x0eA\xb6\xe9*A\xf9h\xa2@Z~\x12A\xf4\xf8=A\x02\x95\x92@\xb8\x88 A\xf5\xc2EA\xad\xc5\xad@@\xcb\tA\xbcRLA\xb8\xdd\x82@\x08\x10\x07A \x1b2A\xbfZN@\x8cR\tA8\x1b=A\nk\xd0@\xda\x97j@}0/A)\x1b\xc9@\x0c <@\xe8hNA\xe9\xac\xc2@~\x87G@\x8e1]A\x9f\xd5\xd4@\x9d\x91;@*\xa7RA\xd8\x86\x93@P\x95\x07@\xfa\xd0^AA}\x8d@\x94\xa5\x89@\xdbG]A#\xad\x88@\x93O\xa4@\xd7\xe6RA.\xbd\x93@!_\x8b@(\xealA\x19\x98\x9a@C\xff\x8b@\x9a\x8caAc\xfaM@o\x06,@\x98,@A5qm@d\xcf\xe9?\xd6\x8f6A?\xcf\x83@I\x1fc@\x10>5A\\\xf6r@8\x87\x1d@J\x18FA\x82\xdc(@\xa4D\xc5?\x18\x91HA#\x84\xd3@O\xfd\xa8?\x99t;A\xc8\xdc\xef@\xeb>\xe5>\xa3\xedRA\x8e\x7f\xc1@\x94E\x02?+\xc5_A\x01\xbd\xae@\xd2\xb5T\xbf\xf0\xe9NACq\xd3@\xb36Y\xbf\xe7YKA\xc1\x8a\xf6@\xb8p\xb2\xbfT\xb2eA\x96\x00\xd0@I\x02\x99\xbfi\xd6lA$u\xb0@r5C\xbfX\xednA\x9dR\xe7@\xd8\xc27\xc0\x81,gA\xf44\xdd@N\xbbR\xc0sw\\A\xa9B\xfc@\xcc*p\xc0\x03\xbenA\xf6r\xc3@}\xc9\xd7\xbfFC>Ap@\xbb@\x90\xa5\xa0\xbf\x19\x8d3A/\xfd\x9b@+R>\xc0\x99\x08:A\xf9$\xc9@9LM\xc0"OBA\x19C\xe4@g\x9a}\xc0\xe0\x821A\xe0\x99\xad@D\\y\xc0\xb4. A\x16,\xaf@+^o\xc0\xdb\x1f7AAF\x8d@BK\xab\xc0\xa3\x886A2X\xbd@\xcd\x8d\xcb\xc0Z\xfb-A\x06\xc6\xaf@m\xd3\xae\xc0\xc1\x06FAy\xcd\xdb@|\x82\x92\xc0\x7f\x0cMAr\xc8\xe5@\xd5\xc6\xd6\xc0\xee\x14PA\x05\xc5\xeb@\x19\xaa\xed\xc0\xd8pBA\x1b\xd7\xee@I;\xd3\xc0T\xc6YA\xed\xac\x0cA\xc3\x93\xf4\xc0j]^A\xad\x17\x11A\xd0\xcd\xb8\xc0\xee\xd7kA\xf9\xe9\x0bAb\xbb\x9b\xc0vnhA\x90\x1d\x06AL\x8d\xc0\xc0wdKA\x03\x00\x1fA\xfb`\x9d\xc0\x16JIA\x85\x0b\x1cA\x89\xa6\xd1\xc0\x98\xe3\t\xc1=\xfc\x8dA\xc2q^@\xd7r\xfb\xc0\'\x18\x94A\xc70o@a\x8f\x12\xc1\x1cy\x8dA#\xd2\x8e@1\x84\x08\xc1\xa6\xef\x81A\xaf\xf4\xd2?t\xec\x14\xc1\x1fpxA1"\xe7?\x85y\x13\xc1%\xaa\x8cA\xff\x16\x9b?&\x8a\x1f\xc1v\xf1\x8aAA5\xce>f\xfa\x07\xc1Cu\x93A\xb0\x1fk?\x10O\x1b\xc1N\x8a\x91A#;#@\x7f\x04\x1f\xc1\x89\xf3\x99A4f&@\x01\xa9+\xc1\xd5\x96\x8dA\x03\x8d,@\x97\t\xec\xc0jA}A}C4?\x92D\xc8\xc0\xe3\x9a\x82A\xfd\xfb\\?Hj\xf5\xc0\x08CnAB\\\x80\xbeG\xeb\x07\xc1\xa0XgA\x82\xc4\x89\xbe*u\xd9\xc0\xa3\xedcA\xd2&\x94\xbf\xa5 \xcc\xc0\xb4dVA%\xd3\x1c\xbfu\xf9\xf0\xc0\x13\xddYA0F\x18\xc0$\x88\x00\xc1\x02\xceeA\xe6\xa4?\xc0%G\xd1\xc0\xccLLA\x83|T\xc0\xd8\x05\xc7\xc0\xabU=A\xef\xf2-\xc0OC\xb4\xc0\x86\x10TAN\xc4j\xc0\xaf\xfd\xe4\xc0\xb2\xc7FA\x0e\x1f\x85\xc0\x1d\xf3\x08\xc1YXJA\xf8\xcb\xe9\xbf\xd8\x80\x03\xc1B\xb0EAywR\xbf\xb7\xca\n\xc1\xaep;A\xae<\x1e\xc0\r6\x19\xc1~\xd5PA\xfd!\xdf\xbf\x11\xa0\xb6\xc0\xcc^rA:$\xd8\xbfy\xf8\x90\xc0\x0c\x16nA\x96:\xc3\xbf\xa4>\xc6\xc0|\xbd\x81A\x82\x14\x18\xc0\xaaJ\xe4\xc0\x8fx\x82A;p\x19\xc0\x8a\xfa\xac\xc0+\x97\x8aA\xbe\x828\xc0\xd3^\x9c\xc0\xdfG\x87A\xb7Nm\xc0@\xe9\xc9\xc0\x1f\xe1\x93Aj\x96S\xc0\xeb{\xdb\xc0\xb7L\x97A$\x95\x1c\xc0\xfa\xac\xde\xc0[\xbc\x91Ay\xaf\x84\xc0\x99\xac\xb4\xc0\x1e\x0c\x9bAM\xbff\xc0Uu\x88\xc0\x81\xa7\x8eAjm\xfa\xbf\xa1BH\xc0+\x82\x8fA(\xb5\x1b\xc0{\xe6\x8f\xc0a\x1a\x91A&\xb6$\xbf3F\xac\xc0\xe29\x90A\xfe\x1c\x80\xbeR\xb7[\xc0\xdbK\x94A\x13\x00\x85>\xfe\xbf4\xc0D"\x9aAS\xb6\x88\xbe5\x98\x81\xc0bY\x99A\xdc\x83\xd2??en\xc0ez\x94Aec"@cB\xa5\xc0\x18Z\x98A\x92)\xc4?\'+o\xc0\xde&\xa5A\xe6r\xea?,\'\x89\xc0\xa0R\xa8A,\xdd.@#\x0f\x86\xc0\xd9\xd5\xa9A\xb0#\x80?b\x8f\x13\xc0\r}\xa8A6\xf7\x07@\x1c\x81\xc0\xbf[\xcd\xaaAD\xbf\x9e? \xf1\xf8\xbf\x82\xbb\xa7Ae\xe3U@\x0e?\x1d\xc0\xd6\xeb\x8bA!Q7?{,\xa4\xbf5\x1d\x8eA\xe4\xdc~?\x99\xd3<\xc0\x8fu\x81AI\x88M?\xf0!|\xc0.\x8c\x80A\x10\xda6?\x9b~\n\xc0\x01\xcapA\x8e\xc7\x84?4z\xbd\xbf4\xc8vA\x063\xee?3\xb4C\xc0\x8b8^A\xc1\x0c\xce??\xc5\x80\xc0\x86P]A\xe9\x8c|?\xe2\x80\x1b\xc0P\x1bGAD\t\xd9?X\xca\xb6\xbfSeHA\xd2[\x06@\t\x16\x11\xc0Y\x0eAA\xa4\x95*?\xccq=\xc0\xbb\xaa;AY4\x16@\x1c\x1d\\\xc0\xc20dA\xea_A@\xc5Xw\xc0\xb2\x85tA\x027G@\xfbb%\xc0\x1c\xe8cA5\xcbm@\x0b\xcd\x84\xc0\xac\x93XAg\xaa[@\xf2;\xac\xbf\xb4\xa6jA/\xbc*\xbe\xa1\xd7n\xbe/\xfa`Ae\x89\x92\xbd\xad^\xe9\xbf?xqAV-\xb1\xbfQ\xc0.\xc0\xdd\xacuA\x1fi\xbc\xbf\x8c(]\xbf\xcf\x8arA\xd9\\\x1f\xc01\xeb\xe9\xbeY>bA!\x9b%\xc0\x85\x1f\xc7\xbf\xd3AvA\x90\xa4z\xc0NF\x14\xc00\xb6\x81A\x8a/|\xc0E\xa8\x06\xc0U#fAb.\x84\xc0\xba\xef\x08\xbf\x11\x8d{A\xd9\xd7\xa1\xc0\xa5\xd18>\r\xb0nA\xbc\x91\xa7\xc0t-*\xbdN\x07\x85A"\xbb\x9a\xc0\xf6M\xa8\xbfj\x1f\x80A\xff\x11\xcb\xc0\x01O\xf9\xbff\x1f\x87A\xb9\x80\xca\xc0\x0f(\xfa\xbftvtA6\x8f\xd8\xc0\xf2ct\xbe}V\x82A\x7f\xec\xea\xc0\xbb\x84;?\xc0\'\x83A\xa7\xf7\xde\xc0\xd3A\x98\xbe\xe1\xa3}AR\xa3\t\xc1\xa1O\xb1\xbfq\xbdxA\\\x13\x15\xc1\xc2\xa1\x14\xc0\x1f!{AzH\x10\xc1$\xbe\x9e\xbf\xfe\xaaqA\xf9+$\xc1z8^?-\xf7zA\x0bz\x13\xc1\xae\x8aw?)zwA\xeeQ#\xc1=\xd4\xd1?\xbb\xee|A\xc5\xb2\t\xc1\xb9\x95C>\xc8y\x81A\x0c\x8b\x11\xc08\x03\xb0?\x13\xc0}Aq#\r\xc0\x03\x85_\xbem\x9b\x8bAu\x1d\x01\xc0\x9d(\x9a\xbf\xb3~\x8cA\xfe\xb5\xee\xbf\xff\x9c\'?\x86\xd7\x94AW\xae\xe5\xbf\x9f\xa9\x9d?3\xc6\x96A\x0b\x8b+\xc0\xd5\xcb\xd2\xbe\x19\xb8\x9dA\x9a\xcf\xb3\xbf\x16\x91\x83\xbf\xd1I\x9aA\r\xba\x1f\xbf\xed\x93\x94\xbf\x1b.\x9eAD\xfe\x0c\xc0\xe0\x91\x9f=\x93|\xa5A\xc7\xcf\x96\xbf\xb4\xca\xd5?6\xce\x92A\xf9\x9d1\xbf\xf9\xf14@\xac3\x96Ao\xe4:\xbf2\x13\xb2?T)\x8dA9\\\xf3>\xec\xd2\xce>\xa6\x01\x8cAv\xd9\x1c?\xca\xab\x19@E\xe0\x8aA\xb3\xfb\xc5?\x1b\x93/@\xe1\xe0\x92AS&\xe9?\xd6G\xda?m\xb1\x85A+80@\r, @\x9b\x1e\x82A>\\[@\x9d\x96{?\x8d\xd0~A\xd7\xa1\x1d@t[{?\xaaU\x89A\xa3T\x92@Q\xf2c@\xb0\x8b\x83A\xe92\x8c?\xc5u\x97@.\x17\x85A?\xe1\xb0?\xb8XR@\x8a\xfcvA\x0c6\xa0>W\xa0\x16@\x06\x1btA\xf6\xd1*<}\xd9\x87@4\x12jA\xec\x00\xd9\xbe\x08,\x9c@KAdA1 \xa3>=c_@\xb5\xf0XAC\x89\x9d\xbf\xc3\xc2\x85@+\x95PA;\xcb\xf4\xbfe\x8e*@5\xfa_A\xea#\xe5\xbf\xddGA@\xea\xd9FA\xbb=\x8c\xbe\xa9\xd1\x08@\xa3\x1eMA\xb8\xf9\x83>;\x8c(@\xd5\xed3A\xaf\xd7\x8e\xbf\xd9\x92\x16@\'Q&AHT\x06\xbf\xed$]@\'!/A\x1fx\xe2\xbfy\x19\xd7?tm8Ab(\xdb\xbf\xdf\xf1\x83@\xd4\x03=A\x94P\x0c?\x16/\x91@\x17\xb3HA%\x14\xa8?I\x94\x9a@a\x8f5A\r\x06\x0f\xbe\xaf\x96p@*\xd9.A\x94\x0b\x90?\xff\xff\xa2@\x18YwA\xb9B\xb1\xbf\x9dM\xca@\x08\x0evA\x98\x81\xa4\xbfM+\x90@g\t\x82AB\x16\x12\xc0,\xfda@f)\x81A\xfb\xd8\x19\xc07F\xa7@\xd3@\x89A^:G\xc0\x84q\xbc@\xae1\x85AQ\xe9v\xc0\xec\x17\x85@\xc6^\x90A\xc58s\xc0e\x89\x96@\xcf\xb5\x96A1)\x8b\xc0\xadtg@C\xd9\x94A\xa3\x14>\xc0\x9c\x97@@\xcdU\x8aA\xe1Y\x93\xc0r\xfe\x06@\x9b\xb5\x8fA\xdc"\x8f\xc0B\xa91@_7\x82AH8\x83\xc0\xda\xb5N@+\x9b\x88A\x0c\\\xc5\xc0\x94\x82\x16@\xec\x8d\x83Au\xb6\xd9\xc0\xef\xd2\x85@@\x1d\x8dAM\x88\xd7\xc0\xac\x7f\xc5@\xcb:\x90A\xf2\x94\x18\xc0\x1f{\xe9@\xc0\xc4\x90A\x9e\x82)\xc0\xd8s\xb7@\x85m\x95Az\xb2\xa7\xbf}\xdb\x97@i\x99\x94A|\xbd\x80\xbfZ{\xd1@\xdb\x12\x9bA{E\xad\xbe\r\xc2\xd9@\x9bP\xa2A\x04\xcbR\xbf7a\xb8@7b\x9fA\xce\x9e^?\x85\r\xce@\xad\xb0\xa3A\xcd\x99\xd0?I\xa6\xa7@\xb5h\x99A\x02\xf2\xbc?PN\x94@L\x8f\xa7A\xfd\xe0\xfe>\xb3(\x82@NL\xa4A\x89\x05\xb3\xbe\x1d\x8d\xa3@\xdd3\xafA\xabuI>\x9e\xb1c@Q\x01\xa9A\xdc\xd2\xd5?lBx@\x95.\xafA\xeb\xf0\x15@\x1a\xb5_@\xcc\xe0\xa0A+\xd0\x0e@\xba\x89\x04@\xa8Y\xabAi\x10\x9f?(\xcd\xeb?C:\xa7AL\xe3\xa4>\x8d\x11\x07@\xa7\xca\xb3A\x8eH_?g\x9ar?c.\xaaAZ\x9a\x0e@\xf2&m?\xac\x90\xb0A\xf8\xff;@\xbb\xac\x88?>\xe2\xa2A\xec`2@\xe3(\x9b:j\xe8\xa9A\xad\xbf\xe0?6l\xfb@*H\x96Ay\x18->\xb6\t\rAe\x14\x9cA\x0b\xbf\x08?\xdb\x16\xfc@N#\x8bA\xd0\x16\xc2>\xb1r\xe5@\xe9\x0f\x87A\xbe\x86\xae\xbd\xbb\xeb\x10A\x93\x0f\x85A)\xe6f?%\xd4\x1cA\xfeK\x8aA\x99\xae\xb0?L\xc5\tA\x93\xedyA\xcb\x15\x01@\xa4\xf2\xff@\x1f\xfckA\xd6f\xcf?=W\x1fA\x07\xe1qA\x04\x84)@vS(A\xcd~\x7fA\xcb\x93D@s\xe4\'A\xdf*iA >\xea?\xcax\x1aA\xb9\xaafA\xcf\xc0\\@\xf2\x99\xf9@H \x83A\x9b\xb0G@\xe6\xf0\xda@)\xfb\x86A \xf83@\xab\x8e\x07Ab1\x89A\xf7\xb3b@\xf5_\xea@})wA\xb6=\x89@\xbd\x12\xd6@\x03\xa5\x80A4\x1f\x9d@jt\x02A\xe1\x16qA\x1ca\x9b@\xea\xb0\xd7@\xcc\\iA\x91\xe1v@\x93\xec\x1cA\x82T}A\xb1J7\xbeW\x1d0A\xa6\x07~A%\x14\x0c\xbe\xf7.\x12At\xf7qA\x00Q\x8c\xbf\xaf\x93\x02A\n\nY\xc0M,\xdf@5\xbb?A\xa3\xca\x8c\xc0!\xfd\xb5@\xc6\x80PA*p\\\xc0\xc6\xb1\xc8@\xcb\x825A\x11D>\xc0\xf8\x9a\x0cA\xba\xe8;A!\x96\x1f\xc0\xa4m\x13A\xe4\xc8:ATMe\xc0\x08F\x06A\xc9\xed*AC\x03\r\xc0\xb1P\x19Ae\xc0=A\xefB\xde\xbf\xc1\xef&A\xe9SzA\x05\x92M\xc0$c:A#tyA\xacQK\xc0\x82\xe1\x1bA\xef\\\x83A\x96\xc0\x82\xc0@\xa2\x0bA2E\x83A\xe4^}\xc0\xdc$$Ah\xa5\x8aA\xacH\xa2\xc0\xe7p5A\xb6!\x8aA3/\xa2\xc0\xb2\xb7\x1eA\xcf\'\x92A\xd5r\x99\xc0\x9f\xa7\x19Av&\x87A\\\x97\xcd\xc0\xb8\x85\x0bA\xdb[\x8dA\xf3T\xe0\xc0\x9cA\x1bAt\xd3zA\x91d\xd7\xc0' +tba. \ No newline at end of file diff --git a/testsuite/MDAnalysisTests/datafiles.py b/testsuite/MDAnalysisTests/datafiles.py index 7287540107c..87fb178b511 100644 --- a/testsuite/MDAnalysisTests/datafiles.py +++ b/testsuite/MDAnalysisTests/datafiles.py @@ -133,10 +133,16 @@ "AUX_XVG", "XVG_BAD_NCOL", #for testing .xvg auxiliary reader "AUX_XVG_LOWF", "AUX_XVG_HIGHF", "MMTF", "MMTF_gz", + "legacy_DCD_ADK_coords", # frames 5 and 29 read in for adk_dims.dcd using legacy DCD reader + "legacy_DCD_NAMD_coords", # frame 0 read in for SiN_tric_namd.dcd using legacy DCD reader ] from pkg_resources import resource_filename +legacy_DCD_NAMD_coords = resource_filename(__name__, +'data/legacy_DCD_NAMD_coords.p') +legacy_DCD_ADK_coords = resource_filename(__name__, +'data/legacy_DCD_adk_coords.p') AUX_XVG_LOWF = resource_filename(__name__, 'data/test_lowf.xvg') AUX_XVG_HIGHF = resource_filename(__name__, 'data/test_highf.xvg') XVG_BAD_NCOL = resource_filename(__name__, 'data/bad_num_col.xvg') diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 0c55ed1cd97..23f0aa4111c 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -8,7 +8,9 @@ from MDAnalysis.lib.formats.libdcd import DCDFile from MDAnalysisTests.datafiles import (PSF, DCD, DCD_NAMD_TRICLINIC, - PSF_NAMD_TRICLINIC) + PSF_NAMD_TRICLINIC, + legacy_DCD_ADK_coords, + legacy_DCD_NAMD_coords) from unittest import TestCase import MDAnalysis @@ -16,6 +18,7 @@ from MDAnalysisTests import tempdir import numpy as np import os +import pickle class DCDReadFrameTest(TestCase): @@ -26,6 +29,9 @@ def setUp(self): self.new_frame = 91 self.context_frame = 22 self.num_iters = 3 + self.selected_legacy_frames = [5, 29] + self.legacy_DCD_frame_data = pickle.load(open(legacy_DCD_ADK_coords, + 'rb'), encoding='latin1') self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' def tearDown(self): @@ -50,6 +56,20 @@ def test_read_coords(self): xyz = dcd_frame[0] assert_equal(xyz.shape, (self.natoms, 3)) + def test_read_coord_values(self): + # test the actual values of coordinates read in versus + # stored values read in by the legacy DCD handling framework + + # to reduce repo storage burden, we only compare for a few + # randomly selected frames + for frame_num in self.selected_legacy_frames: + self.dcdfile.seek(frame_num) + actual_coords = self.dcdfile.read()[0] + desired_coords = self.legacy_DCD_frame_data.pop(0) + assert_equal(actual_coords, + desired_coords) + + def test_read_unit_cell(self): # confirm unit cell read against result from previous # MDAnalysis implementation of DCD file handling @@ -393,4 +413,7 @@ def setUp(self): self.new_frame = 0 self.context_frame = 0 self.num_iters = 0 + self.selected_legacy_frames = [0] + self.legacy_DCD_frame_data = pickle.load(open(legacy_DCD_NAMD_coords, + 'rb'), encoding='latin1') self.expected_remarks = 'Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,' From cdfca186f265b66c5eae251d57496f96b0ffeec2 Mon Sep 17 00:00:00 2001 From: Date: Fri, 21 Apr 2017 19:34:50 -0600 Subject: [PATCH 074/107] test_libdcd.py adjusted to allow pickle to open new test data under python 2 and 3 execution. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 23f0aa4111c..8351be8a22b 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -19,6 +19,7 @@ import numpy as np import os import pickle +import sys class DCDReadFrameTest(TestCase): @@ -30,8 +31,7 @@ def setUp(self): self.context_frame = 22 self.num_iters = 3 self.selected_legacy_frames = [5, 29] - self.legacy_DCD_frame_data = pickle.load(open(legacy_DCD_ADK_coords, - 'rb'), encoding='latin1') + self.legacy_data = legacy_DCD_ADK_coords self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' def tearDown(self): @@ -62,6 +62,13 @@ def test_read_coord_values(self): # to reduce repo storage burden, we only compare for a few # randomly selected frames + if sys.version_info[0] > 2: + self.legacy_DCD_frame_data = pickle.load(open(self.legacy_data, + 'rb'), encoding='latin1') + else: + self.legacy_DCD_frame_data = pickle.load(open(self.legacy_data, + 'rb')) + for frame_num in self.selected_legacy_frames: self.dcdfile.seek(frame_num) actual_coords = self.dcdfile.read()[0] @@ -414,6 +421,5 @@ def setUp(self): self.context_frame = 0 self.num_iters = 0 self.selected_legacy_frames = [0] - self.legacy_DCD_frame_data = pickle.load(open(legacy_DCD_NAMD_coords, - 'rb'), encoding='latin1') + self.legacy_data = legacy_DCD_NAMD_coords self.expected_remarks = 'Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,' From fc407d33af8283773bf1511db4f9af05b8aaa2ae Mon Sep 17 00:00:00 2001 From: tylerjereddy Date: Mon, 24 Apr 2017 09:19:49 -0600 Subject: [PATCH 075/107] The testsuite included data now covers Python pickle files as some were added for the new DCDFile framework testing. --- testsuite/setup.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/testsuite/setup.py b/testsuite/setup.py index 184052d5260..2a73c4930f9 100755 --- a/testsuite/setup.py +++ b/testsuite/setup.py @@ -206,7 +206,8 @@ def dynamic_author_list(): 'data/*.xml', 'data/coordinates/*', 'data/*xvg', - 'data/*.mmtf', 'data/*.mmtf.gz', 'data/analysis/*' + 'data/*.mmtf', 'data/*.mmtf.gz', 'data/analysis/*', + 'data/*.p' ], }, classifiers=CLASSIFIERS, From 4aa1da337d1d69470573b973fdf7170966894f26 Mon Sep 17 00:00:00 2001 From: tylerjereddy Date: Thu, 27 Apr 2017 08:46:37 -0600 Subject: [PATCH 076/107] DCDFile unit testing now uses .npy for archival coord storage instead of pickle, for long-term format stability reasons. --- .../data/legacy_DCD_NAMD_coords.npy | Bin 0 -> 66620 bytes .../data/legacy_DCD_NAMD_coords.p | 28 ------------- .../data/legacy_DCD_adk_coords.npy | Bin 0 -> 80264 bytes .../data/legacy_DCD_adk_coords.p | 39 ------------------ testsuite/MDAnalysisTests/datafiles.py | 4 +- .../MDAnalysisTests/formats/test_libdcd.py | 15 ++----- testsuite/setup.py | 1 - 7 files changed, 6 insertions(+), 81 deletions(-) create mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.npy delete mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p create mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.npy delete mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.p diff --git a/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.npy b/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.npy new file mode 100644 index 0000000000000000000000000000000000000000..4bcb7c0f70ce2dd3f0012448b145bad84520c9d4 GIT binary patch literal 66620 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¬X@>2imE}B$8#D>d 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 literal 0 HcmV?d00001 diff --git a/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p b/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p deleted file mode 100644 index 3a866f3ee4f..00000000000 --- a/testsuite/MDAnalysisTests/data/legacy_DCD_NAMD_coords.p +++ /dev/null @@ -1,28 +0,0 @@ -(lp1 -cnumpy.core.multiarray -_reconstruct -p2 -(cnumpy -ndarray -p3 -(I0 -tS'b' -tRp4 -(I1 -(I5545 -I3 -tcnumpy -dtype -p5 -(S'f4' -I0 -I1 -tRp6 -(I3 -S'<' -NNNI-1 -I-1 -I0 -tbI00 -S'm\xc2B\xc1fL\x8b\xc1\x94d\x00\xc1d\xbeH\xc1\x07\xd8e\xc1\xf2\x0b\xce\xc0\xdf61\xc1\x0b\x83\x84\xc1\x9d&\xd3\xc0\xb9\x913\xc1\x961q\xc1\x9b*\xeb\xc0R^\x1f\xc1`\xecc\xc1\x1eZ\xd3\xc0\xe8\xe5\r\xc1\xfd\x03l\xc1bX\x02\xc1\xd7xN\xc1G\xb1S\xc1\x895\x00\xc1\xdd\x9a\x10\xc1\xdf\x86\x8f\xc1\rZ\xf5\xc0E\x8d\xfd\xc0\x1e\xb9\x8d\xc1\xdaa\x03\xc1\x7fZ\xf0\xc0\xe4\x80z\xc1Z\x16\xfd\xc0\x9e\x13\xce\xc0|\xf6\x8d\xc1\x9dK\x01\xc1\xd2,\xc2\xc0\x89\x04\x98\xc1\x84\xc8\xe1\xc0\x973\x98\xc0D\x8d\x8b\xc1\x18\xe4\xfe\xc0\xdc\x06"\xc1f\xdc\x8b\xc1\xfd\xe0\xde\xc0\xea\x94\xd6\xc0\xff\xc2m\xc1\xf7\x95\xd1\xc0[d\xb2\xc0p\xe8^\xc1\x02e\xc7\xc0\xb0nx\xc0\x0f/\x86\xc1\xbb\xb3\xc9\xc0\xa6\xa8n\xc05\xecw\xc1vu\xe4\xc0\xa5\x97\xfa\xbf/\x9d_\xc10\xc9\xbc\xc0b\xba\xa0\xbf*\xb0n\xc1Gk\xf9\xc0\x9b1\xa5\xc0i\xc0Y\xc1\x9c\x0e\x00\xc1\xa4\xc7\xcd\xbf{\xdd\x8f\xc1\xc7-\xee\xc0\x12\xf7u\xbe5p\x8d\xc1Yc\x08\xc1\x95cJ>\xc6\xe6~\xc1J\xce\x03\xc1\xd0I\xa8?\xeeX\x8f\xc1\x84\x11\xfc\xc0J`\xb5?\xa7\xe8\x98\xc1#\xff\xe6\xc0\xc2\x85B@\x9a)\x8b\xc1\xf4+\x00\xc1\xf7uG\xc0\xd9\x92\x8a\xc1T\xec\xf0\xc0\xe5\x99K?\x92}q\xc1\x01\xda\xd9\xc0}\xb9\x17@s\xeef\xc1\xdb\x8f\xd0\xc0$0k@\xc1m\x86\xc1\xe4\x1f\xc7\xc0\x86\x87\x83@\xed"x\xc1\x9dl\xec\xc0\xbf\x0f\xa7@\x7fde\xc1x\xbf\xc4\xc0.\xa3\xc8@!\x82m\xc1\x10\xe0\x01\xc1\x01\t\x12@<\xa1V\xc1&\x8a\x00\xc1_\xc1\xc0@\xc5\xd7\x8f\xc1\xed\xde\xee\xc0\xe3\xb9\xe5@\xfc\xd1\x8e\xc1; \x08\xc1\x16\x8c\xf0@\x9bk\x80\xc1\xc5\x91\x01\xc1\x1c\x9d\x0cA\xdb\xfb\x8e\xc1-B\xfd\xc0\xee\x90\x0eA\x8dr\x9b\xc1\xfd=\xe5\xc0\xd5X&A\xe44\x8a\xc1Wl\xfd\xc0J!\x91@\x7fj\x8a\xc1\xd8\xe9\xe7\xc0\xdb\xe8\x06A\xf2kn\xc1h-\xce\xc0\xdaF\x1cAJ\xbfc\xc1^\x81\xcb\xc0R\xbc1A\x06\xce\x86\xc1\x0c\xda\xc5\xc0l\xda0A6\x8ao\xc1\xbd?\xe5\xc0\xad\x8cLA\xaa}d\xc1\xc7\x93\xc4\xc0\x18\x83WAP\xd3m\xc1\x92!\x03\xc1G\x19\x1bA=tY\xc1\x15\x12\x01\xc1\xf8\x85\x80\xc1\xcf\xd0/\xc1+)\x08\xc1\xf1\x0c\x85\xc1\xad\xe6\xf8\xc0\x0eX\xd0\xc0\xd5\x92o\xc1\xc1\xea)\xc1\x0f)\xd2\xc0\xda\x8bp\xc1D\xba\t\xc1\x02\x18\xe4\xc0\xb3\x96T\xc1\x08\x81\xf8\xc0\x00\xc6\xca\xc0\xac\x95O\xc12\xb0\x03\xc1\x1a\xcf\xfe\xc0\x9c\x06\x86\xc1\xf7\x96\xd3\xc00\x7f\xf3\xc0C\x0cH\xc1\xa9\x1e7\xc1\xab*\x01\xc1k\x99=\xc1\x1c\xed$\xc1C\xe3\x08\xc1\xaa)0\xc1\xf2\xc0\r\xc11\x13\xe4\xc0\x19\x11#\xc1\xcc);\xc1\xf8\x1a\x03\xc1\x08\xae\x18\xc1\x9cvM\xc1G\x96\xd5\xc0\xfc\xa5\x07\xc1c\xd03\xc1\xceV\xfa\xc0x\xaeY\xc1\x9f\\6\xc1\xa3E\xcd\xc0*\xaa\'\xc1\xd5\x0f\n\xc1k\x9e\x04\xc1\rB\x1c\xc1$l\x02\xc1\x0cC\xd3\xc0\xac\xc2\xf5\xc0\xc5\xc7*\xc1\xfa7\xb5\xc0\xf8\xe1\xf2\xc0\x13\x93\x18\xc1\x16\xe9\xe3\xc0i\xa0\x06\xc1\xacX\xed\xc0\xf34\xfd\xc0M\xeb\xac\xc0\xbdkA\xc1g\x06\xf4\xc0\x82_\x80\xc0Y(;\xc1+a\x05\xc1\x0c\xce\x15\xc0G\xd1?\xc11\xff\xf7\xc0CH\x10\xc0,\x9f^\xc1\x03\xe3\xdd\xc0B9\xc8\xc0\x13\xc2,\xc1\x99>\xe1\xc0\x03x\x16@\x9c\xcf@\xc1C\xb1\x00\xc1\x1df\x86@7\xf69\xc1\xdc\xb9\x07\xc1Xs\xa4@1\xd2<\xc1j\x92\xe2\xc0#\x05\xb2@P+U\xc1\xf4\x05\xfa\xc0\xfb\\\xd6@\xc4\x013\xc1\xdc\xc6\x01\xc1&\xbb\xdc?E\xe24\xc1\xca\xc1\xd4\xc07P\xd6@"\x84,\xc1C\xc4\xc2\xc0\x0f$\x03A\xf7\xd0\x10\xc1m\x17\xdb\xc0@/\x16A\xadq\x03\xc1:\x99\xa7\xc0V\xcd\x1dA\x9b8\x05\xc1\x88\x03\xfd\xc0\xa0\x0c\x1eApW9\xc1\xd0\xbb\xef\xc0\xba\x002AJ\xae<\xc1\x17\xa7\x03\xc1R\x143Ay7\x16\xc1W\xe2\xf9\xc0\x8c\x9bGA\xd3\x8b9\xc1:\x0e\x01\xc1\x17IJA\xfc\xcfM\xc1qj\xd2\xc0\xfb\x82\\A\xcb\x8e3\xc1M\x8f\xf8\xc0\x1e6\tA\xf7b3\xc14\x81\xd8\xc0\x85\xe9CA\x9c\xb4\x04\xc1#n\xdc\xc0\xe7\xf1SA\x06\xbf\xf8\xc0\xa6\xe0\xc1\xc04~kA\x95\xe2\'\xc15\xab\xc8\xc0*\xf7kA\x0b\x0e\x07\xc1\x14g\xe9\xc0\x02\t\x83Al5\xf1\xc0\x06M\xd3\xc0\xe4\xc5\x88A\x11O\x04\xc1\xf7\xab\x07\xc1\xbe\xdaVA+\xc0\xe2\xc0;\xb5\x01\xc1\x87\xfa\x9b\xc1\x14\xe7\x86\xc01\x1c\x03\xc1\x8fI\x9f\xc1\xb7q\xa3\xbf\x82\x1a\xcd\xc0\x17\xa2\x95\xc18o|\xc0\xa1\xcf\xcb\xc0C\xea\x95\xc1\x98\xfb\x03\xc0E;\xf0\xc0\xe3P\x8b\xc1\xc6\x8c\xb9\xbf\xa8\x0e\xd1\xc0\xd9S\x83\xc1-\x0f\xe8\xbfB\xdb\xfd\xc0\xa6C\xa2\xc1Y\xf9o\xbe\xc4\xb4\xf8\xc0}g\x82\xc1A0\xa7\xc0\xfcH\xf9\xc0\'\xc5y\xc1\x8fBu\xc0q\x12\x08\xc1\xd1\xb1p\xc1\x98\x8e*\xc0#s\xf5\xc0F\x90_\xc1\x9d\xd5\xa5\xc0\x0et\xf3\xc0j\xd8W\xc1D\xdc\xd6\xc04\x10\xd9\xc0A\x84B\xc1?\x08\x8d\xc09E\xf9\xc0\xa8\x9d\x8b\xc1\x14\x93\x99\xc0E]\xcd\xc0\xe0\xd4d\xc1\xa0\xe8\x00\xc0\x16\xcf\xce\xc0o\x82T\xc1W\xedC\xbf\xb0\xa2\xc5\xc0d\xb5B\xc1\xec\xf0\x87\xc0\xec{\xa9\xc0\xebW@\xc1\x81\xb8\x1f\xc0yB\xd5\xc0a9O\xc1\xf59\xf2=\xab\xdc\x03\xc1\x8dh&\xc16\xee\x95\xc0\x9d\xae\xd8\xc0\xdd\xb4\x0fAS\xd3\xd6\xc0\x08\xaf\xd8\xc0#\x81+A\x82\x99s\xc0\xb7\xad\x06\xc1qm\xa0A\xd9w\xa2\xbf\xfc\xe5\xcd\xc0\xec^\xa9A+\xc2\xd2\xbf?S\x01\xc1\x80y\x89AK7\xc7\xbe\x92\x0f\x02\xc1qR\x9f\xc1\x8eH\x9a?mq\xfb\xc0o\x8f\x99\xc1\xdb\x9e"@\xbdA\x08\xc1:\xe0\x95\xc1\x97\xeaf@R\r\xf5\xc0kO\x8d\xc1\xfd\xde\xad?\xbf\xbe\x02\xc1\xff\xba\x88\xc1r1\x80>`\xf7\xd0\xc0\xad@}\xc1Z\x1f\xf8?\xd7\xeb\xf2\xc0\x96\xa0\xaa\xc1\xceM\xe2?f\xf9\xd8\xc0\xe2\xd9\x8c\xc1\xdbd\x96@\x930\xec\xc0\xa6\xbc\x82\xc1i\xba\xa0@\x81\xee\xc8\xc0\xfc\xb5e\xc1\x94\t*@\x85[\xbd\xc0\xb4\x03q\xc1\x0c\x05|@\xb2\xb2\xed\xc0\xdb@W\xc1q\xd5\xb2@8\t\xdb\xc0\xf0\x87M\xc1\x80\xa6\x99@\x1b\xf0\x02\xc1\x90\xf0\x84\xc1\x19\x16\xc6@\xb6a\xfd\xc0klL\xc1\x03\xf8\xa3?\x1d\xc7\xdc\xc0\xce\xd1@\xc1\xf7Z\x10@.@\x06\xc1b\xbd1\xc1\x0c"\x80@\xc8\x0c\xfe\xc0Vth\xc1J\xe4\x01@\x94p\xee\xc0]\xc2*\xc1\x93@~@#\x07\xce\xc0\xdc\xc2=Ax\xb9\t@Z_\x08\xc1\x9d\x8a9A\xd7\x01\x82@.<\xf8\xc0\x13/LA\x0b\xf9s?S\x9e\xf3\xc0s\xa9KA\x85\x92\x9f\xbesX\xe2\xc0\x81\x92cA\xfd\x11\x03@\x80\xa3\x00\xc1DFPAC]\xa2@[\xac\xec\xc0c\xd3TAM\xbe\x9f@o\x83\xc3\xc0/,mA\xd5\x0f\x13@O\xb4\xcc\xc0\xbfUvA\x04e\x87@\xce\xd2\xee\xc0\xc7\xf6\x84A\x92\x16\xa5@\x90\x85\xd2\xc0\x02\x0c\x8aA\x89\xd9\x94@\xdb\x1c\x04\xc1V\x14WA\xef\x17\xd6@\xd0*\xfc\xc0fG\x8bA\xda\xe4\x9b?\xee5\xfb\xc0\xd2\xb1\x97A\x84\xd5\x07@\xebA\x05\xc1y@\x94A\x08\xe6a@\x8d\x19\xfd\xc0P\x96\x9fA\xad\x01\xac?~\xd1\xfc\xc0\x00 \xa2AB*\xaa=Q\x97\xce\xc0\xabY\x81A\xf9\r\xe7?\x15,\xd5\xc0\xe9\xfd\x9cAA\xa4\x95@\x1a\n\xf2\xc0\xd8\x0e\x82\xc1\x18\x05\xfb@\xe7\x87\xf6\xc0\x08\x9el\xc1\x90\x02\x08A\xa3\xc7\x0b\xc1$+p\xc1\xc6\x19%A\xfd\xa4\xf5\xc0F\x04\\\xc1\x15|\xed@p\x95\xde\xc0\xc3\x90R\xc1\t\x06\xe9@x\x9b\x01\xc1{\xf1B\xc1R\x0f\x0cA\xd5\xfe\x00\xc1\xe9M\x89\xc1\xc5.\x01A\xaf-\xd0\xc0\x9a\xef_\xc1Z(/A\xfb\xfd\xc3\xc0\x9a9N\xc1\xd7\x7fAA4\xa9\xc4\xc0\xe9\xe17\xc1\xd7\xba\x0cA\x90\x07\xae\xc0\x8a\xfa9\xc1\xd9)/AY\x8c\xe1\xc0\xa1\x01\x14\xc1\x91\t>A\xfd\xe7\xc8\xc0)\x91\x0c\xc12-4A\xdeo\x07\xc1B\x07K\xc1\xfe\x0eOA\xa5\x05\x02\xc1v\x87\r\xc1Q\xac\xf9@\xe3\x80\xfc\xc0x\xe7\x00\xc1y\x82\x1bA\xb4\x13\t\xc1\xa8\xfb\xf1\xc0\x8e\n+A\x94\xcc\xe9\xc0\xe2\x97#\xc1\x82V\x0bA\x9a\x03\xe2\xc0F\xd4\xcb\xc0\xb0\x176A\x1e\n\xf7\xc0\x07\xaf\xb2\xc0K)5Ac\xea\xc8\xc0\xff\x8d\x86\xc0\x11\xb35A9\xf5\xe6\xc03\xf8\x12\xc0\x90SHA\xb88\xd4\xc0bE\x0f\xc0QT1A\x7f\xbf\x01\xc1\xeb=\xaa\xc0\xfb,OA^}\xfb\xc0R\x0f\x8b?\xb1\x900A\xdfc\xd1\xc0/#(@\xbamIAv\xbd\xac\xc0\xf5\xfb~@*\xb48A\xde\x98\xe6\xc0p\x93\xc1@\x128\xc0\x8bA\x87_\xd8\xc0Ra\x0f\xc1\x97\xd4\x8fA\xbaB\xce\xc0\xba\xdd\xef\xc0\'\x02|Ao\xa4\xce\xc0\xd1\xda\xe7\xc0\x1f\x01\x8aA{2\xe4\xc0\x9a=\xc5\xc0\xeb7\x8eA-y\xcd\xc0\xc2\xc9\xa6\xc0lZ\x8eA\xce\xe1\x04\xc1\xb6\xda\x11\xc1\x1fv\x99A\xd6K\x03\xc1H1\xa5\xc0B\x8diA\xf0,\x02\xc13wk\xc0\x8bH{A"Q\x08\xc1\xee\xb2{\xc0\xfc4\x86A\x8cL\xf6\xc0D\x07\x14\xc0\x88\xbf`A\x80\xe8\xe4\xc07\xab\xfc\xbf\x99\x11`A\x92\x8b\x05\xc1\xa9kd\xbfB\xd5uA\xcb\x11\x01\xc1I$\xc8\xc0\xc1\x06gAhH\xd3\xc05\t5\xc0k\x8e\x8bAF\x98\xcc\xc0\xd9\xd7\xda\xbffs\x93A\xb1\xee\xc6\xc0!\xafD\xbe-\xeatA\x17\x15\xc2\xc0s\x8a\xee\xbdH{\x8aA\x0b\xdb\xe2\xc0\xf9R\xcb?\x11\x9f\x90AP\xcf\xd1\xc0\xf9!8@\xec=\x8eAd\x1e\x01\xc1Et\xcb\xbf\x91\xbe\x9aAz1\x08\xc1s\xbd\x1e@\xe5\xd6iAw%\xef\xc0\x9fGR@l=\x82AF}\n\xc1fzu@\xf4\xb4\x86Ac\xa3\xf6\xc0\xcc\xee\xa7@\xebbiAX\xca\xfa\xc0\xd8I\xae@\xf2\x8aTAGk\xd7\xc0\xa9B\xde@\xb5\x82wA\xd2n\xfb\xc0I5\x8c?\xc0\xb4mAWg\xe1\xc0Y~\x97@Ui\x8cAHl\xd2\xc0\xeb\xb1\xba@:\xf3\x91A\xfa\xf7\xc8\xc0\xe0p\xf2@O\x06zAo?\xc3\xc0\xcf\x95\xf0@|\x1f\x89A\xe1g\xe0\xc0\x11\x1d\x12A\xa2\xe1\x8eA\xb7\xa6\xc2\xc0\x19\xcc\x1cA\x87n\x8dA\xdcT\xfa\xc0{\xc8\xbb@\xbb\xd4\x9aAi\xa1\x06\xc1\xd9\xac!A\xda\x0fiA\xe6p\x00\xc1d3=AO=wA!\xad\x05\xc1\xd5b1A\x88\x8e\x84A\xfe\xee\xfd\xc0\x88uFA\xa4:fA\t\x9e\xf7\xc0<\xc4MA{\x1aLAA\xf1\xdf\xc0~f\nA\xc0OjA4R\xdb\xc0o\xc9AAn\xac\x8bA\xa5z\xe1\xc0\xbe\xd6\xef\x86\xc1\xa1(\xa3\xc0Y=\x9b=\xc2,v\xc1VJ\x99\xc0z\xf0\xc0?\xaed\x8f\xc1E\x9f\xa0\xc0\xf1\x00\xb8?\xb0\x10\x97\xc1\xfd\xb3w\xc0\xf4\x10=@\xcb\x15\x8c\xc1w\xcb\xa5\xc0F\x9b\x06\xc0\xb37\x8d\xc1S7\x9d\xc0Eu\x0b\xc0,\x10L\xc1\x9f#D\xc0.Q\xa8\xbf>>.\xc1\xbaT\xa1\xc0\x05\x15\xa7\xc0O\x1e7\xc1\xe9A\x80\xc0v\xe3q>\x84\x02,\xc1r\xc7c\xc0\n\x1d\xca?\xf0o5\xc1\xe6\xa9\x80\xc00\xd1I@\x8e\x8d7\xc1)\x82\x9f\xc0t\x96\xa4@\xe7\x82:\xc1{7\xa7\xc0.\x05\xa8@\xedMJ\xc1a\xa1P\xc0P\xb9\xdd@+z.\xc1Z\x1d\x98\xc0\x9a\xa6\xf8?\xe373\xc1H\xa5\x9d\xc0#F\x92@|\xae\n\xc1\x19\xe9h\xc0-\x9a\xb8@(e\x00\xc1\xee>%\xc0\xf3Z\xef@&\xc9&\xc1\x9f\xbeF\xc0\xe1w\xd3@h\xcd\x08\xc1Q\xb5t\xc0\xc6\xe4\x10A\xf1\xfc\xf7\xc0cMu\xc0"\x9e\x12A\x8d\xe3\xf2\xc0\xc9\x80\xcf\xc0\xba\xad\x1dA\xd3R=\xc1\xc3\xfd\xa1\xc0\x84{:A\xa2\x05.\xc1TV\x9f\xc0jb.A\xefR\x0e\xc1\xaf\x0c\x9c\xc0\x91\xe3FA\xf4j<\xc1\x01h\x98\xc0lCLA\xb8\x01I\xc13if\xc0\xa5\'[A\x99\xa91\xc1\xcdS\xab\xc04\x10\x12A\x87,4\xc1~O|\xc0\xcd\xda@A&\xde\n\xc1aU_\xc0M\x1cYAQ\xfa\x03\xc1\x19Xo\xc0\xf9\xa0nA\x10\x9e$\xc1t\x0eY\xc0\xc7>rAU\xb1\t\xc1\xe2Bo\xc0|\xa2\x82A\x8eE\xea\xc0G\x1b`\xc0\x94H\x87A\xfb\xad\x00\xc1\xc4\xa2\xa1\xc0\xe4\x80XA\xcf&\xe4\xc0\x15\xc3\xa0\xc0\xc7\xce\x9a\xc1\xba\xdf\x88\xc0\x8b\xef\x9e\xc0l\xd8\x9f\xc1P,\xa6\xbf\x0f\xe6j\xc0P\xdd\x93\xc1|\x11z\xc0pB\\\xc0U\x10\x97\xc1s\x9b\x13\xc0=fo\xc0\xd2\x18\x89\xc12\t\x87\xbf\xcc\x94b\xc0s\xe7\x83\xc1\x11.\xd7\xbf\xf3O\xa2\xc0J\x9f\xa0\xc1\x85\x85\xe4\xbc\x94\x9d\xa1\xc0\xf6\xb0\x83\xc1\xc7\x1c\xaa\xc0\xb9\r\x97\xc0\x92\xb9y\xc1\xc7\xdc\x8c\xc0\x90<\x9f\xc0=\x8au\xc1F\xf1\x15\xc0\xe1\xec\xa2\xc0\xd3\xecU\xc1\x1e\x98\xa2\xc0\xaa\xb6\x9d\xc0\x88\xafY\xc1m\x08\xce\xc0\xf5\xbdb\xc0\x1a86\xc1O\xbex\xc0\xdb\x01\xcb\xc0\xfc\x13\x89\xc1\xed\x87\x96\xc0<\x8cy\xc0-\xb2e\xc1\xf7r\x12\xc0\xb9\xd0e\xc0\xed\x06P\xc1\x9a\xfd\xb2\xbf\xc0`G\xc0\x9a\xf77\xc1]\xf3\x82\xc0\xd4mw\xc0z\xc23\xc1\xb4\x88\xce\xbf\xcd\xddx\xc0\xff\x14\x1c\xc1\x84\xacZ\xbf\xc86C\xc0\x8c K\xc1\xa8\xdee\xbfs\'\x98\xc0\x13\xe3\x19\xc1]"\xa0\xc0[4\x80\xc0\x10#\x14\xc1\xddz\xa8\xc0F\x17\xa6\xc0Ap\rA\n\x0e\xb9\xc07\xc5\x81\xc0\xa6}\x0eA\n\xa0\xa9\xc0\x0b\xd6\xa9\xc00\xea*A\xd1\xfey\xc0%}\xa2\xc0V\x11 A\xaf\xd7a\xbf\xb8\xcfj\xc0\x8c\xa6"A9\x98\x80\xc0\x8b\xe8)\xc0\xae\r7A[\xc8.\xc0\x89\xb3\x80\xc0/\x96KAP(\x85\xbf+nn\xc0X\xa3_A\x05\xe0\xe2\xbf\xfce\xab\xc0\x054WA\xca\xeb\xa8\xc0X\x84\xab\xc0r\xb7xA\xcc|\x82\xc0E\xc1\xa3\xc0^\x1anA\xd8,0\xc0\xa9\xd7\x97\xc0\x18\x1b\x81Ai~\x9f\xc0\xc0\x01\x9c\xc0&\xfd\x84Aca\xbc\xc0\xf8p\x80\xc0\xf0\x15\x8dAK\xc5\x87\xc0\x90\xa2\xa9\xc0[JLA\xd21\xa3\xc0\x1e\xf8d\xc0\xb3_|A\xd1z\xe4\xbf\xf1\x90|\xc0\x84\xe7\x87A\xea\xa5\xaf\xbf\xf0"^\xc0>\xf0\x94A\xfb5d\xc0\xd4\xb0s\xc0\xeb\xdf\x94AVN\xe2\xbf\xbb;p\xc0\xebZ\xa0A\x85\x17\xa1\xbf\xef5Z\xc0\xdf\x9b\xa7A[\xb1\xdb\xbf\x07w\xa6\xc0\\]\x88A=O\x08\xbf>z\xaa\xc07\xe2\xa0\xc1\xd5 \xba?\xa5A\x9f\xc0\x01\xcd\x92\xc1*\xf1\xef?\xa4:\xa4\xc0\xb8\xa6\x93\xc1F\x86q@\x17(\xa5\xc0\x16\xfd\x88\xc1\x87\x96\xa3?\xa0G\x92\xc0MP\x87\xc1e;\x0f?\x8cI\x83\xc0O \x80\xc1\x99\xd9\xeb?KN\xab\xc0\xe6D\xa6\xc1P_\xd6?Z\x1a`\xc0\x02\x7f\x8e\xc17:\x8a@\xd8Ck\xc0\xfa\xfc\x82\xc1\xffK\xa2@L#n\xc0\xf5\xeam\xc1\x1a\xfc7@\x07\xdc{\xc0\x8c\x9bg\xc1\xca\xe1\x9b@:\xe1u\xc0\xa5\xdaN\xc1I\xdb\x99@\x9e\xe7\x14\xc0=\x11F\xc1de\x9d@\xbd\x8f\x9e\xc0\xc0C\x83\xc1\x1fe\xc5@0H\xa4\xc0\xc0FM\xc1J\xae\xbc?2&\xab\xc0a\xa7.\xc1\xfe\x08)@FM\x9e\xc0\xc8\x9e"\xc1\xc8D~@\xe6lm\xc0J\xd2\x19\xc1\xb8\xa0\x88?\xd3^\x86\xc0\x92\xd3 \xc1\xe3$)?\x84\xc5g\xc0HqW\xc1t\xe1\xca?,\xa7N\xc0a\xd4+\xc1\xa3y\x86@\xc5f\x9c\xc0\xf2w\x15\xc1\x1a-\xa7@\xf2\x1e]\xc0W\xe3\x0b\xc1E\xe3\xd6@$\xf9\xa1\xc0\x9az\x10A\x00\xd5\xae@\xdc\x18f\xc0\x1f\xbe\x1fA+\xe7\x8f@\xcf%\x9f\xc0\x98\xbe3A\x15\x1a\x13@zs\xa6\xc0\x8bM8A\xbab\x84@.l\x9f\xc0\x07\xfaIA\x1aU~?(\x0f\xad\xc0\t\xf5LA\x88\x9d}?\xd8q{\xc0.$dAL1\x06@X\x96\xa6\xc0\xe0\xf6@AV\xbd\x95@\xfe\xf8G\xc0\xd7\xf2ZAg\xe6\xa0@\xdb\xdfx\xc0\x83\x08tAM\x18#@z\xf9Y\xc0\xc7;uA\xf2!\x87@5\xb8x\xc0\xb9D\x83A\xbb\xf9\xa8@a\xa0v\xc0W\xa7\x88A\xec\r\x94@\x93\x8a\xa9\xc0\x057ZA\xd0.\xcb@X\x9c\xbc\xc0`\x97\x89AL\x87\xa0?e_\xa2\xc03\xbe\x95A\xc16\xf5?\x8f\xe4\xa0\xc0\xca\xc1\x94A\x1d\x82u@&\x9d\xa9\xc0\xa4/\xa0A\xb3\x9f\x8c?\xc9\xa5\x95\xc0R\xa3\x9fA\xc5\xd2j>\x90\x8dl\xc0\xb8\xa9\x84A\xca\xf1\xcb?{\xe1u\xc0\x06r\x9aA\xe3\x97\x88@z\x14u\xc0tq\x83\xc1f\x85\xf7@#A\x93\xc0\x9d\xbbu\xc1\xcfB\x11A\x8a\xe9\x9d\xc0\xb3=m\xc1\xa6P%A\x91s\x9b\xc0\xdb\xccV\xc1O$\x01A%\x18\xa5\xc0\xcb\x14R\xc1\x9e\xfd\xce@\xfe\x8du\xc0\x1117\xc1\xc9\xb2\x15A\xad\xc2\xdd\xc0(B\x89\xc1Zo\x01A\xa52]\xc0~\x1ab\xc1\x02\x9f+A\n\xc6i\xc0\x1b\xccN\xc1\x95\xb78A\x87G/\xc0\x1c\xf0/\xc1\xe7\xce\rAp\x01v\xc0\x06\n)A\x8e0\x82\xc0\x17\x86\x9f>\x88\xf7)A\xf6\xe6\xb2\xc0M\xe0\x1c@(\xe7=A*cs\xc0\xe7hz@\x15D\x12A\xc9\x1eC\xc0a\xab\x84@8\xed&A\x10\x19w\xc0$\x06\xaf@_7;A\xee\xb3]\xc0\x8f\x19\xb6@\xc9\x865A5B\x9d\xc0\xfa\x80\x14@\x8c\x00:A\x15\xdd\xcc\xc0Sn\x04A\x8c8\x07A\xdf.\xa1\xc0\xed[\xf3@}{%A\x92\xbc\xa8\xc0R\xd6\x12A\xe4\xfa\xed@{X~\xc0J\xf6\x14A\x85\xee\xd5@X\xac\xa5\xc0\x99\xed\'A\xa7u\x06A6o\xae\xc0\xacs\xa2@E\x12\x03A\xa4>s\xc0\xb8\xe7\x07A_\xb90Ar:a\xc0\x1c5\x1eAn\xbb4A\xb1n\x80\xc0nA/Af\x05\x07A}{B\xc0\xc0p6AI-\'A\xae\xc2i\xc0\xf1\x92FA\x82\xf9:A\x9f\xf4\\\xc0\x9a\x15ZA\x0b\x812A$\x18\xa7\xc0y\xcc\x13A\xc8JMA\xb2o\xae\xc0+\x01XA\x1bw\xf2@\xf9J\x98\xc0d\x02iA3d\tA\xc3\x1a\xa6\xc02OmA/)&A5\x0c\xa3\xc0\xed\x16\x85A\xd3w\xf3@)\xf9\xae\xc0\x92\x97\x84A$C\xd8@\xbf\xab{\xc0\xddkIAZ\xfa\x02A\x1d\xe4z\xc00\x03yA\xad8+AK\x07h\xc0|\x13K\xc1\x9d\xbddA\xe4\xe0\xa9\xc0\x02\xa0-\xc1b vA(\xee\xa4\xc0\xadR3\xc1\xadY\x86A\xdf\xdb\x9e\xc0\x19\x88\x1a\xc1\xa3\xf1eA~\xb0\x9c\xc0w\xa0\x1d\xc1zj\\AG\xact\xc0\r\xcd\x03\xc1\xd2OrA\xec7\xa1\xc0h\nT\xc1\x96ShA\xbe\xa6j\xc0\xccr%\xc1w$\x8bA\x99\x9ds\xc0L\xa1\x10\xc1G\x8b\x8fA%|d\xc0"\xaf\xe6\xc0^:xA\xe0e]\xc0U\x80\xf9\xc0\xce\x95\x8aA\x97\xb3k\xc07\xc7\xbe\xc0\x06\xaf\x90Ag\xbah\xc0\tx\xa4\xc0D\xa5\x8bA\xfe\xa8\x9e\xc0<<\x10\xc1S\xbe\x96A\xf5\x9d\xa2\xc0\xf4\xc8\xa6\xc0\xdb\x8bdA\x1c\xf0\x93\xc0+\x0f\x8f\xc0\x92\xf2sA\xe5\x02\xa6\xc0\x06\xd4s\xc0\xd1\x86\x86A\x12\xb6\xa5\xc0\x86#\x08\xc0\x1aTeATJ\xae\xc0S\xb8\x07\xc0B WA\x92\x8bh\xc0\x92\x19d\xbe\xc6\xecwA\xdd\xae\xab\xc0\x0f\xb7\xc5\xc0\xf0\x9cgA\xe5\xdfr\xc0\xca\xf7B\xc0|\xb7\x88A\xd9\x1e}\xc0J%\xb7\xbf\x05\x12\x8fAH\xb3E\xc0\xea\xa3\\\xbc1\x13~A\xb6\x89r\xc0\xac\xd5\x85>;\x1a\x8cA\x8b2l\xc0\xad\xc4\xcb?\x89C\x90Ar$j\xc0\xdb%,@MK\x8cA\x1b`\xa0\xc0\xdb\xe2\xb3\xbf\'\x9c\x95A\xa0\x80\x9e\xc0Y\x18\x1c@]\x81^ARC\x9c\xc0\x81J\x8a@\xd9\rvA\xec0\xa0\xc0\xee\xfed@E\xce\x86A\xe9<\x97\xc0\x98\xcf\xb7@\x99\xe6fA\x80O\xa1\xc0\xf5\xac\xb1@\xe1\x07WAk+f\xc0w\xee\xd9@w\xc6sA\xb2V\xa5\xc0\xb9\xb3\xc1?>{lA\xcb\x07Y\xc0\xe70\x91@\xbe\xa2\x88A\x8b\x99p\xc0\x16\xba\xbb@O%\x8fAnVH\xc0\xf7\xf0\xf5@\\\x87yA4{^\xc0\x15\x8d\xe9@@\x0e\x8cA&\xecf\xc0\r\xfd\x0fA\xdbR\x90A\x80\xdag\xc0\xe9 A\xdcz\x8bA0\\\xa3\xc0\xddY\xbf@\xc0g\x96AV\x1c\x9e\xc0\x89,\x1aA\xf2\xb7aA\x88\xa4\xa4\xc0T\xef*A\xc8\xdbmAz/\xa4\xc0\xbc\xc83A\r\xae\x85A\x8eD\x9f\xc0-\xbaJAQ\x01bA\xd9Y\xa7\xc0\xef\xc6GA\x89\xc9SAE\x15\x83\xc0OT\x10AZ\xcdhA\xc0Fg\xc0\x84\x0f?A+\xf8\x88A\xe5\xa1q\xc0\x13\xc1<\xc1\xa5\x90\x87\xc1/\n\x0c\xc0M\x1aM\xc1}\xefb\xc1r\x82\x0f\xbf\xb553\xc1\xef\xd4\x84\xc1"\x93\xf1\xbe\xac\x931\xc1P\x06s\xc1s2T\xbf\x14\xd9\x1c\xc1E\x99`\xc1o\'\x01\xbf1\xa6\x0f\xc1\xbc\x03i\xc1\x14X$\xc0*WI\xc1\xcc\xb1R\xc1;v!\xc0%\x8e\x0f\xc1|\xaf\x8f\xc1\xeem\x03\xc0\xb1\x02\xef\xc0\xe0\xf0\x88\xc1\xf7\x13\x0e\xc0\x04\xc7\xf3\xc06\xf3x\xc1\xe4\xd9\xf6\xbf\xdb\xd5\xbd\xc0A\x1a\x90\xc1\xbf\xb6\xf8\xbf\x89\x16\xc1\xc0Q\x8f\x98\xc1c\xb6k\xbf\xe41\x92\xc07\x17\x8b\xc1\xc6j\x1a\xc0\n\x16"\xc1\x12\xbf\x8b\xc1\xee\x8e7\xbfA\xf0\xdb\xc0\xb9\xcfs\xc1\x92\xe7\x1e\xbf\x1dv\xa7\xc0\xba\xafd\xc1\xea\xe9*\xbfB%\x82\xc0:b\x86\xc1\x80\xc4\x16\xbf\xd4:j\xc0t\x06x\xc1\x1eFH\xbfT\x8e\x1d\xc0\xca\xbbe\xc1\xed\x10\xbd\xbeQ\xb5\xc0\xbfjdj\xc1D\xa4\x08\xc0e\xad\xad\xc0\xb4\x7fV\xc1\x14\x0e \xc0;F\xce\xbf\xc5]\x90\xc1\x8c0\xee\xbf\x99\x84\xb2\xbe\xd5\x8e\x8a\xc1A\xa0\r\xc0,]\xb9\xbd.!y\xc1\\,\xf9\xbf\xe5\xa9\xba?.B\x8e\xc1\xd4\xdb\x08\xc0n\x84\xc6?\xe4[\x97\xc1\x08\xf1{\xbf\x89\x8cH@#\xcb\x89\xc1\xcd\xb3\x18\xc0\xf6\x06 \xc0\x84\x0e\x8d\xc1H\xefo\xbf2\xb9\x10?r\xb7r\xc1Iy \xbf0\xd9\x11@\xedvf\xc1x\xd1\x1a\xbf.\x8cm@\x97\x0f\x86\xc1\xa2\x8f\x1a\xbfJ\xfc~@<\xb3p\xc1\x02LB\xbfv\xd4\xa5@\xe4\xb6a\xc1\xf0\xcdf\xbe\x18\x90\xbd@/_i\xc1\x90\x8f\xe8\xbf>E\x0e@~\xb3X\xc1\x833\xfc\xbfY=\xc0@\xb5\xf0\x8f\xc1H\xaa\xd8\xbf\xa1\xe8\xed@?\xfc\x8a\xc15\x87\t\xc0\xddi\xea@`]w\xc1\xdb\xa6\x07\xc0/\xe1\x0bA#\x0c\x8f\xc1\xdc\xcc\xf7\xbfL\xf2\rA\xf4e\x98\xc1\x92\xdbR\xbf\x95\x06%A\x96\x14\x8a\xc1d\x16\x16\xc0\x85|\xa1@\xba?\x8c\xc1f\xe96\xbf\xa7\x8d\x05A\xdael\xc1e\x96\x1a\xbf\xce\xbd\x1dA%\x91c\xc1\xb2\x17\n\xbf%83As\xd0\x85\xc1\xa0\x9f\x13\xbfN\xcf,AF\xd4r\xc1\x85k \xbf\xc6nJAE\xa8c\xc1xS!\xbf\x8b#WAP\x87i\xc1\x03\x01\x19\xc0\xe6\x92\x18A\xc6\x03T\xc1\x1c\xbe\x13\xc0\x17\x81~\xc1M\x94.\xc1m\x0c$\xc0\xbev\x82\xc1\x17\xf2\xf1\xc0\xffu\x0f\xbf\xc2&l\xc1\x91\xaf&\xc1\xbe\xeb\x81\xbf\xcf\xaet\xc13\xbe\x04\xc1\xea\xd9@\xbfh\xbcV\xc1\xb9\xd4\xf1\xc0\xd7\xf3\xd8\xbew\tH\xc1\x10\x1e\x00\xc1\xdf\xa3.\xc0di\x85\xc1\xe6\xbb\xd1\xc0\x99h\xf4\xbf\xf6\x1eM\xc1\xe6%8\xc1\xab|\n\xc0\xde\x823\xc1\xa9\xc3!\xc19 \x1c\xc0\x14\xc8-\xc1fm\x0c\xc1\x10\xec\x9a\xbf\x9ds\x18\xc1_P:\xc1\x98\t\x1a\xc0\x8f.\x18\xc1&\x9fG\xc1F\x9d\x7f\xbfo\xe2\x00\xc1\xd5\xb8,\xc1\xcf}\x08\xc0\x8f\xdfY\xc14\x9e0\xc1\xa7A\xfb\xbeO\x9e1\xc1q\x05\x0e\xc1\x05f\x11\xc0\xaa$\x11\xc1\xe0\x8d\xf5\xc0"\x1fP\xbf\x91\xbf\xf4\xc0m\x9f"\xc1yXU\xbe\xa7m\xe8\xc0#\xc5\x17\xc1\t6T\xbf~\xa2\xc6\xc0o\x1f\x03\xc1\x93\x9d\xa3=\xce&\xb0\xc0#k\x02\xc1\x80\xa1\xdd\xbf\x03\xfa\x0e\xc1\xd7\xc6\xfd\xc0\xe6wh\xc0\xb7\x97\xa5\xc0\x0f\xb9>\xc16\x1c\xfa\xbf\x8f\x00\x84\xc0\x9929\xc1a\x8d\x15\xc0?\x8fe\xc0\xc9e\x15\xc1\xe9=\xfd\xbf\xd9\x11\x16\xc0):9\xc1\xbbe\x01\xc0YV\x0c\xc0U\x93K\xc1\xc5\x94a\xbf\x81"m\xbf\x06\xac6\xc16\x92\x02\xc0\x91\xd5\xc7\xc0\xc6\xf44\xc1\xe3\xbcN\xbf\xed5U\xc0|\x94\x0e\xc1E\x051\xbf\xb5%\xc1\xbdP\xa8\'\xc1\x0e\xbeg>\x07\xc80\xbe\xfbj\x14\xc1FJc\xbfHb/@s\r\x07\xc1\x98\xed8\xc0N\xb4\x10@\xda<6\xc1/S\xe5\xbf]\xb8\x89@\xf756\xc1\xfa\x13\x06\xc0CA\x84@\xde\xf0\x16\xc1\x87\t\xf1\xbf\xfbm\xa5@\x0c\x079\xc1t\xf3\xcd\xbf\xf1Z\xaa@\xd9=Q\xc1\xe0_m\xbf\xa6k\xd1@\x88\xd06\xc1\x9f\xd0"\xc0A9\xaa?\xcap8\xc1\xd1\x1d;\xbf\xb0\xe2s@\xf2y\x0f\xc1\x80Q\xe7\xbd~\x16\xbe@.\xd4\x00\xc1\xa0n\xda\xbeh\x98\xea@\x0c\xb2(\xc1>01\xbf^\xf7\x04Av\xe7\x05\xc1K\xe0Q\xbf*\x11\x16A\xf4B\x00\xc1bP2?\x95*\x1eA\x9e\x1f\x02\xc1\x16u\xf3\xbf\x8a\xc2\xc6@G\x84\xe0\xc0\xf6\x86%\xc0#\xdf\x1aAum9\xc1@\x03\xff\xbf\xf0\xec-A\xdd\xcb\'\xc1\n=\x00\xc0JD8A#\x9e\x16\xc1\xb4\xa7\xce\xbff\xa5JA\xe7U:\xc1S\xe1\xf2\xbf\x12>KA\x8e\xf0G\xc1]\x92\x13\xbfGqaAB\xa71\xc1\xbe\xd4\x03\xc0\x94\xe9\x10AC\xb23\xc1\xbb\x95\xfa\xbe\x00\xc9?A\x13V\x08\xc1K\xf4\x9d\xbf$?TA\xf5\xe0\xf8\xc0\x8aj\xb0\xbe\xbe\xeelA{\xd8"\xc18\x14\xb5\xbe\x94MmA*\x90\x08\xc1\x8c\xbbB\xbf\x8dp\x81A2\x8a\xf5\xc0\x00\xd3`\xbfr\x1f\x88A\xcd\xad\x01\xc1Z\xe4\x06\xc0UJRAS%\xdd\xc0\x80\xec%\xc0\x05\xc5\x9a\xc1EI\x8c\xc0\xc9\x9c!\xc0\xb4h\x9f\xc1\x91n\x93\xbfT\xa5\xf3\xbeL\x08\x95\xc1\x1c+r\xc0\xf2\xce>\xbf\x1b)\x95\xc1\xae\xc5\xdd\xbf.PT\xbf\x17e\x8a\xc1\x9cY\xa0\xbfp#\xb5\xbe\xb3\xbf\x82\xc1O\x13\xe0\xbf\x98P\n\xc0\xb0\xfe\xa0\xc1\x9fN\x8e\xbe\xcc\xa4\x1b\xc0`\x93\x82\xc1\xe9\xa5\xa2\xc0\xee\xda\xf5\xbf\xce\x85i\xc1\xa8\x0f\x81\xc0Y\xf3\x05\xc0==p\xc1\xaa\xe7$\xc0\xb5n\xed\xbfd\xcf^\xc1\xc7O\xa9\xc0\xd4\xe9\xda\xbf\x9f6S\xc1\x0eE\xbd\xc0d\\\xaf\xbf\t\x0bE\xc1\x9a\x8f\x93\xc0\x7f\x08\xfb\xbf\x87\xde\x8b\xc14|\x95\xc0\x03\xa4\x1e\xbf\x19wf\xc1\xf8a\x16\xc0\xdf/\x0b\xbfp\xc6N\xc1\xab\xa7\xa8\xbf\x86\xcee\xbfq\x02=\xc1C\xa9\x84\xc0\x80dK?I\x1d5\xc1\x05?9\xc0F\xabW\xbf\xb6\x19\x1f\xc1\x02\xbb\xb1\xbf,]\t\xbf\x9e\xb4\x19\xc1\x9b\xee\xfc\xbf\x13i0\xc0\x95QS\xc1e\x85\x86\xbc1e\x1b\xc02\xff\x10\xc1\x8f8\xb2\xc0\xef\xcc\x12\xc0\xe3\xa5\xb9\xc0\xc3\xd7\xd5\xc0\x9b@V\xbf\xcc]%\xc1\x84U\x97\xc0/\xa6`\xbf\x94\x12\x14A&\x7f\xa1\xc0\xbfF\x19\xc0\xc9\xa6\x15Al(\xd4\xc0\x0cXj\xbf\xe3\x962A,\x1dq\xc0v\xefo\xc0C1\nA\x8e\xcb\xd9\xbf\xad{\x86\xbf\x88\xae\x18AP\x91\xa9\xbf\xfd\xd5\x19?\xfa%3A\x0b0|\xc01\x81m\xbf4\xb65A8\x89\xdd\xbf\xa8P^\xbf\x1b#MAJ\xb5\x8d\xbfH\xce\xda\xbe\x88\xc1XAe\x8f\xeb\xbf3\xe0\x0b\xc0\x08\x14\x1dA1\xb5Y\xbfH=\xee\xbf\x18\xe0MA\xa9\xc4\xa2\xc0\x1b<\xa7\xbf\x00!fA\\\xeb\x93\xc0U\xe6\x14\xc0\x89\xfanA\xdfI \xc0\x0b\xc2\x0e\xc0\x15,\x81A\x99\x7f\xa4\xc0J\xbb\x0f\xc0\xf2\xb0\x83Ad\xd8\xc5\xc0~\xe6\xe8\xbe\xd8\xaf\x8dA\xfc.\x8a\xc0\x90/\x13\xc0\xee\x9cOAqr\xa7\xc0\xa6\x1e\x0c\xc0\x9c\xf8zA\xfc\x1f\x04\xc0\x82;Q\xbfO\xd3\x87A\xb8]\xb2\xbf\x19\x17(\xbfCI\x94A\xe43g\xc0%\xd2\x0e\xbf\xc6L\x92A\xe0@$\xc0"\x8eZ\xbf\xb0\xd9\x9eAn\x16\x93\xbf\x9bA \xbf{\xb0\xa7A\x01\xcd\xd4\xbf3/\x0e\xc0\x8c%\x88Ap\xbc\xcb\xbd\x83N\x11\xc0\xa0\xe9\x9f\xc1\xf7G\xb1?F\xe9\xf8\xbf\xcdl\x96\xc1\xa8}\x1d@O\x00\x0b\xc0bs\x94\xc1\x0c\xdeo@v\x00\xe9\xbfG\xaa\x89\xc1\x86Q\x9f?\x96\x9e\t\xc0\x06\x01\x89\xc1K\xa6\xc8>hVH\xbf\xb3\x04{\xc1p\xca\x0c@\xa6\x94\x01\xc0Tf\xa8\xc1\xa2\xae\xe3?e\x98U\xbf-\xb3\x8d\xc1\xf9\xc5\x8a@Ogq\xbfv_\x83\xc10\x0c\xa4@\xbc\xb9+\xbf\xf0\x17m\xc1\xad\x80\x1c@\x97\tu=\xef\xfaw\xc1\xca>q@f\xe1^\xbf\xa1ER\xc1\x14y\xac@\xb9\xc7_\xbf\xe8\xd9N\xc1\xa3\x84\xaa@\x89\x87t\xc0\xe1)\x82\xc1\xf8\xa6\xba@\xf8\xc2\x04\xc0\x1b\xdfM\xc1\x8f\xaa\x8c?\xb3\xd6t\xbf\xb3mC\xc1\x9d\x10\xdb?\xd2\xd9\x0e\xc0K;2\xc1\xd4\x16z@1\x8d\x01\xc0\x92\xe9#\xc1\xf4\xc5q?\x93b\x02\xc0L\xea\x1a\xc1\xf5V-?\xd8\x98\x14\xbe=\x96_\xc1\x9bE\xdc?\x85\xfb\x9d\xbf-)"\xc1Iz\x95@\x12\xac\r\xbf\x92C\t\xc1\xaa\xb4\xaa@\xe6,9?X\xbf\x05\xc1\x15J\x9c@n\x9b\x18\xbf3\x8c\x10\xc1#M\xcb@\x95\xeb\xf7\xbf\xe4\x86\x06AC\xbb\x95@\x90\x990\xbf\xb4\t\x11A\nK\xa8@\xf58\xf1=\xb9\x8d$A7k\x9c@\xcd\x0c\x0e\xc0\xa6#\xc4@\x0fP\xd4@^o4\xc0$\xd1\x1fA\x9a\x07\xeb?9\xee\xf4\xbf\x89"BA\xbc6\x10@\x98\xa3\x18\xc0\xd6 g\xbf\xd9M`A\xc2\x12\xf3?C\xbc%\xc0\x82\x88\x13A\xe7p\xbc?zV\x13\xbfG\xa6AAR\x8e\x92@\xfd\x9d\x9d\xbf\xc2\x90ZAVf\xa4@`;\xc2\xbeI\xd2oA\x12*.@\x85n_\xbf\xe1\xd4lA\xeb\xc9\x91@\x1a\x80P\xbf\x1bH\x82AK{\xa1@3\xa0\x1c\xbfr\xd7\x89A\xe4@\x97@\x95\xe5\x1c\xc0\xef\x03WA\xd0\xd4\xbf@\x1dv\x03\xc0)\xc2\x88A\x9f\xce\x9d?\xbc<\x0b\xc0\xbf\x81\x93At\x00#@R\xe6\t\xc0LT\x94AgB}@\x93\xbd\xec\xbf\xc5S\x9fA\xb6\x19\x95?\xb5\xa0\xf5\xbfz9\x9fA\xd1^\xc3>\xdc\x8bF\xbf\xa37\x84A\xce2\xcd?\xd9\xd4Y\xbf"\xfd\x9aA-\xb8\x8d@\xb3\x86\x86\xbf\xcc\x82\x81\xc1\xf9}\xf1@\xbe\xfc\x00\xc0\x07\xe8d\xc1\xe7\xca\x03A\xbe\xcf\n\xc0(\xecj\xc1\xed\xe1+AD\x0c\xe9\xbf\x05\\T\xc1\xadD\xe0@\t\x92\x94\xbf\xe0`S\xc1\x9b\xf8\xf8@\xb8\xff\xfd\xbf/g?\xc1\xf9\x92\x08Ad\x1e\x0e\xc0d\xe0\x88\xc1A\x15\x03A\xef\x93/\xbf\xc4\x82e\xc1/?(A\xf9\x98\x99\xbe[pP\xc1\xbb7>A\xf5I\x0b\xbf1\x805\xc1\x99\xd7\x0cA4\\\x9d>\x7f\xb2.\xc1\x19U"A\xb3Z_\xbf\xe2i\x18\xc1\x10\x1fBA\xa3\xe1\x16\xbf\xe9r\r\xc13\xab5A\x13\x0e3\xc0\xd6\xd5K\xc13\xffPA\x08j\x1f\xc0x\xe7\n\xc1)7\x02A\x17\xc0\r\xc0\n\xb8\xed\xc0$,\x18Az\x0b\x15\xc0\x0b\xab\xf7\xc0\xf8\xb5&A\xe1{\xf4\xbfs8\xc2\xc05l\xfe@\xf0}\n\xc0jO\xc3\xc0\x1eE\xec@4\xb0)\xbf\x9f\r\x8d\xc0}}\nAz\xd6\xfe\xbf\xf8B\x1e\xc1_\xf0\x01AAYp\xbf\xb3\x12\xd9\xc0\xa1\xe62A\xae*\xa6\xbf\x14\x9a\xa0\xc0\xf0\xa8;A\xc2\x0f0\xbf?\xd2\x7f\xc0\xc30\x18A\x8ee\xb1\xbe<\x88\x8b\xc0\rq0A \x13\x84\xbf\xe4\x17\x12\xc0:s9Am\xeal\xbf\xbf0\x0f\xc0]f:A\xee\x12]\xc0\x15\xcc\xa7\xc0\xffSGAhH\r\xc0\xf4\x14\x82\xbe\x81\x1a)A\xde\xd3\x1d\xc0ww@@\xb7\x86\x10A\xcd.(\xc0s\x1e*\xc0u!\x07A\x9di\x95\xbf\xd7\xc4\x8b?Q\x8e1A4$k\xbf>\x9b\x1d@\xb0\x93AA3\xf3\x19?\x17\x0f\x87@\x15`\x15AfN.\xbf=\x82q@\xbd]5A\x98\x95B\xbf\x88\x84\xb0@r9:A\xec\xd2R\xbf\xa1\xa5\xcd@\xf6N8A\xa3\xcd*\xc0\xa9\x12\x1b@\xde\xccJA\xf9f\t\xc0\x08\xbe\xba@(\xad\x02A\xe1+\x08\xc0%E\xec@\xc4\xa5\x16A\x0f\r\x11\xc0u\x0f\xee@\xe7\xa4%A\xcc\xf0\xcd\xbf\xd8\x01\x11A\xe7e\xfb@\x83\xe4\x01\xc0q\x00\x16A\xa6\x9e\xd6@\xfb\xf3!\xbf5k.A\xd8\x9b\x10A\xf3\xac\xfd\xbfhY\xb7@\xd5c\xfc@+\xb9Q\xbf\x8b\x91\x07A\x9ch0A\xb7\xa4\xa9\xbf\xb2!\x19A\x05\x99:A\x9f\r\x84\xbe\xcf\x8e6A\x1e5\x10A+d@\xbf\xf5\x19.Ag\x93.AY\x8cR\xbfx\xb6IA4\t:A,Q*\xbfC\x81XA\xf5s2AT\x07\x17\xc0\xd5E\x18A\xad\x02LA\xeb<\x1a\xc0\x01}YA\x01L\xf3@\x1a\xe8\t\xc0\x15yxA\x8e\xb8\x07A\x1e\xfa\x17\xc0l-kAsh$A\x0b\xc3\x16\xc0\xd8\xdb\x81A\x06\x95\xf5@\x98\xd2\xf9\xbf\rp\x84AEd\xd2@\xd8\xcdb\xbf2QOA7\xdd\x01A\x19\xf1`\xbf\xf0-zA\xf8\x88,ASqb\xbf\x02\xb4H\xc1vYcA@C\xdc\xbf\xa2\x0e:\xc1\x08\xe3rA6\xff\x0b\xc0T$1\xc1K\x9e\x85A\xf4\xb9\x04\xc0\xc7\xc0\x1a\xc1d\x8dfAj\xf5\xfe\xbf>g\x1a\xc1\xdeG\\A\xe3v\xfe\xbe\xd7\xe8\x03\xc1\xeb\xa5qA\xa4\xe4\x0c\xc0f\xb0_\xc1\xad^lA6>m\xbf\x13\xa1\'\xc1\x94\xaa\x8bAH4h\xbfm\xd5\x10\xc1\xa5A\x90A\xc0o%\xbf\x16\xd7\xea\xc0\xdc%|A\xfd\xa61\xbf\xd4\x8c\xeb\xc0\xb60\x8aA\x9dN>\xbf\xf7w\xc4\xc029\x90A\xd6\x11\x15\xbf\xbd\xdc\x9d\xc0\x0f\xf1\x8cA]\xdc\x1a\xc0\xce\xda\x0f\xc1F\xa0\x97A\xb4R\x1a\xc04\'\xaa\xc0n\x8edA\x82\x03\t\xc0\xd5\xb4G\xc0;&tA\xf3j\x1d\xc0e\x81^\xc0\xd0\x15\x87A\xa9\x1f\x0b\xc0\xc0\xbb\xfd\xbf\xdf\x1e]A\xa1g\xa8\xbf\xa3\xbd\t\xc0\xde\xdd^A\x82\x0c\x1e\xc0G5\xa9\xbe\n\x8cnA\x86\xa9-\xc0\x89\xcf\xbf\xc0=\xe7jA\xd0\x00K\xbf\xe1\xd3D\xc0o\x97\x89A\xe5Z\x0c\xbf\xc7M\xb8\xbfG\xaa\x8eA%\x8cg\xbf%uK\xbce\xb3qA\xdf\xc5\xb0\xbe\x1ct\xaa>K\xb1\x85A)kL\xbf\xa7u\xbb?`-\x8fA\x04a\x16\xbf\x9a\xcb\x1d@\tA\x8dA\x8d\x01\x05\xc0\xda{\xb9\xbf\xc6U\x99AC@\x1e\xc0Nj&@\xd1\xd1hA\x98\xcb\xf0\xbf\t\xde{@]\xaciAF\xe7\t\xc0\xde?z@\x84j\x85A\rL\xe6\xbf\xa7\x8e\xac@\xbdifA\x14\xca\xf1\xbf\tl\xac@\xa5\x8dTAFw\x1a\xbf\xee\xa5\xd4@ !oA@ \x08\xc0\x1c\xd4\xa6?O\xf3fA$!\x8a\xbf\xe1\xde\x8e@#\x97\x8aA 4\xc8\xbe\xc2-\xb7@\x8dL\x8fA<\xb8<\xbf8)\xef@:\x97xAWP\x0e\xbf2V\xf7@\x88\xdf\x89Aq\xfc0\xbfw`\x10A\xcc\'\x90A\x82p#\xbf\xe0C\x1dA!\xfb\x8bA\x03\x92\x15\xc0\r~\xb6@0N\x9aA\xa7J\x15\xc0H\x8c\x1aA\x01GcA\xcd(\xfa\xbf\xeb\xc34A\xc65pA,A\x11\xc0f\xfe0AO\xea\x84A\xfa\x7f\x04\xc0,^HAM\tbAuC\xe5\xbf`\x85JA\xf1\x88RAG\xa7(\xbfn\xb9\x0bA\\\x1ekA\x94X0\xbfys>A\x018\x89AR\xc6\x82\xbf\x85\x99?\xc18\xcf\x89\xc1#\xa09?\x85\xd6I\xc1\x11\xb4`\xc16Q*@i^2\xc1\x10\x82\x87\xc1\xf6h#@\xdf\x959\xc1\xef/t\xc1\xb20\n@\xdaj\x1d\xc1\x1aV_\xc1x\x08\x0f@\xf0X\r\xc1\x8a\xb5i\xc1\x91GF?_\xe1H\xc1\xdc\x85O\xc1t\x7f\x13?\x95V\x0f\xc1V\x80\x8f\xc1\xd3\x15m? \xcc\xea\xc0\x06\xee\x88\xc1\x9aGQ?\xadi\xf3\xc0B\x11|\xc1\xab\x88p?^\xe4\xc1\xc0\x87\xf8\x8f\xc1\xb6\x1cl?\xdb\x89\xc3\xc0\xd8\x96\x96\xc1\xb1%\x06@\xf3i\x95\xc0\x12C\x8a\xc1=>A?\xb2\x80\x1f\xc1\x1cv\x8b\xc1\xe3M\x11@8n\xdc\xc0\xfaao\xc12\x9f\xeb?\xe5\xbb\xb0\xc0\xe6Gh\xc1U@\x1c@\x87hp\xc0\xb6\xd2\x85\xc1&.\x15@\x9dS\x8a\xc0\xe9\xc1s\xc1\x95\xb4\x0b@\xa8\x7f\x1e\xc0\x7f\x9fc\xc1\xbc\xbf\x08@#\xbb\xa6\xbf\xcd\xe0k\xc1\xa6\xe5,?]\xb9\xaf\xc0\xc3\xfcW\xc1Z\x94%?s\x10\xb6\xbf\x15\x99\x90\xc1\x06^O?\xf5\xa2\x9e>\xdf\x06\x8b\xc1\x08i:?p=8\xbe4.{\xc1\xcd\x92L?Kf\xbc?\xa7/\x91\xc1E,i?\xc8n\xbf?n~\x97\xc1I\x7f\n@p\xbc7@q6\x8c\xc1v\x9e2?\xc5\x0c"\xc0\xfb/\x8d\xc1\x19\xb8\xf1?\xbc\xf3%?\xef\x06r\xc1\xdc\xef\x02@\x17\xae\xf6?z\xd6f\xc1\x00\x9d\x13@"\x91q@A\xc6\x85\xc1\x13\xdc\x0c@\xf8\x81Z@\xf3yv\xc1t5\t@\xe2W\xa4@#\x10b\xc1\x05#\x10@\'\x0b\xc7@B\xdai\xc1\x8b_"?\xa5\x18\x08@LEY\xc1\x92\x1c\xd8>\xba\xf8\xbe@\t\xdc\x8e\xc1\x8a\xa5\x87?5\xdc\xed@\xbe\x18\x86\xc1\x9c?U?.\xa5\xec@o]u\xc1Ij~?e\xfe\x0eATU\x8f\xc1\xac\x01\x82?\xd0\xd6\x0eAz\xe8\x94\xc1\xaeV\xf8?\xd6M%A\x93\x01\x8a\xc1q\x83Y?\xe56\xa5@\xfd\x1e\x8c\xc1:X\xf9?\xd5M\x04A\xc1Em\xc1\x10\x00\x0c@(\xa1\x19Ak\xdbb\xc1\xbf\xf3\x17@\xd8\xe53A\x95\xf5\x84\xc1\xc6N\x1a@\x8b\xd25A\xd5\x1co\xc1\xb2\t\x12@\x06\xb6KA\xbf\xc4]\xc1\xd7\x9a7@\x00!TAi\x03i\xc1/\xa8\x85?\xf6\xa5\x1bA\x1a\x89U\xc1\x1b\xc2\x1c?(\xf5x\xc1\xdf\x9e,\xc1R\x84\x14?c\x96\x82\xc1\xe1\x9d\xf9\xc09\x91\x16@\xa3\x8fk\xc1\x1e\t)\xc1\x14Z\x1f@\xbe\tl\xc1\xb7{\x10\xc17\x11\t@\'\x06V\xc1q\xb0\x02\xc1\xc6\xc9\x14@o\xffR\xc1\xad\xd6\x00\xc1\xf4\xa5N?W\xb2\x81\xc1\x04\x95\xd3\xc0\x05[X?\xce\x02K\xc1\x9c*>\xc1\xb27>?\xe3\xc34\xc1K\n7\xc1\x0bF\xed>\x97\xa24\xc1\xab\x1a\x12\xc1\xd2u ?\x1e=\x1a\xc1\xe1\x178\xc12JK?\xf6\x8f\x1a\xc1\xb3\xe5E\xc1\xe6\x07\x08@\xf6_\x07\xc1\xb3M2\xc1\x86\xfc\xcd>;\xb1V\xc12\xb85\xc1[\xb4\xd5?\xa2\xab"\xc1\x9d\xdd\x04\xc1\xa9n\x02@\xc5\xef\x10\xc1\xbb\x93\xda\xc0\x0f\x11Q@\xf00\xeb\xc0\xb3\xbe&\xc1\x15\x82\x1c@\xdc>\x08\xc1\x93\x18\t\xc1\xad&\t@\xd1/\xc4\xc0[\xb2\x04\xc1\xb8\x18\x14@c\xff\xaa\xc0\xf9\xdc\xfb\xc0{Y,>i\xb3\x11\xc1!\xb6\xd7\xc0\xac\x87/?\xf9\x8a\xad\xc0\xf1\xb1=\xc1\xb0\x172?;\xd6\x82\xc0\x83g,\xc1K\xb9.?)t}\xc0\x08.\x14\xc1\xb2\xe8\x83?\x88\x86\'\xc0R~>\xc1\x0b29y)\xc1\xdd5!@\xc5\x80.@\xcb(\n\xc1\x9f5R?\x95\xcb\xf1?\xb5\xa1<\xc1\x8e\xac\x8e?\xc9~^@\x1d\xc9)\xc1@\xee\x7f?\xd9\xf8y@Vv\x0c\xc1\x8d\xe7\x1c@\xea\x82\xa0@3\xa2=\xc1O\x04v?\xee\x95\x9e@M\x04E\xc1z\xa9\r@\x1d2\xd7@1F-\xc16\xba\x8c?\x83\xb7\xed?J\xc56\xc1\xd6p!@=?]@\x96"\x0e\xc1)\xf0\xa0?_J\xab@\xca\x8c\xfb\xc02f @\xb13\xf7@~\xb42\xc1Et@@\x92\xe5\xe0@g\xb1\x16\xc1A\xa6\x07@i\x06\x10A\xf1\xda\xf4\xc0\xca6\x0e@\x9bT\x14A\x84\x00\xf5\xc0\xc6\xacH\xbf\x17\xb6\xc1@Yt\xf2\xc0=\xd7\r?\xfa\x8b\x1bA62<\xc1\xd7\x98\x89?\x05\x8d4AT\x106\xc10[c?\xb5\xbe/A\xd4\xae\x10\xc1\x88`b?6ZIA\xf8\xb25\xc1\xa4\xee\x8f?\xd6\xc3LAt\xaeF\xc1B\xeb\xf9?H\xca_A\xd5\xb30\xc1#;F?~\x7f\x0eAY}4\xc1\xe3\xe4\xed?\xc1\xd3AA\xb4\x94\x06\xc1\x9c\xc9\x19@\xd2g_A(\xba\xf7\xc0\x0e\xec\x1b@\xf1\tqA\xaf\xdf#\xc1\x95{\x0c@\x99\xb4tA\xba\x02\x03\xc1\xdb\x8b\x0e@s\x9f\x83A\x11k\xef\xc03\xf3(@\xb7\xa2\x88A7`\x00\xc1\x8e\xf3`?\x0epWA\x0f\xcf\xe5\xc0\xf1\x89\x8b?\xb6b\x9a\xc1~~\x85\xc0\x8c\xe5\x14?\xae;\xa0\xc1\x9fU\xbb\xbf\xc0\xdf\x0c@\x86\x8f\x94\xc1\xd8y\x80\xc0AQ3@U\xee\x94\xc1\x1f\xeb \xc0\x874\n@\xffn\x8a\xc1/\xf4\xad\xbfYP\x14@\xa8\xe6\x82\xc1F\xc9\xe9\xbf\xe8\xb9E?\xae+\xa1\xc1\x90\x9c\xc0\xbd@\xc6H?\xe9}\x82\xc1\xf5Q\xa7\xc0Y\x10\x94?9pu\xc13\xf1\x88\xc0\xf0Tm?\nOu\xc1\xbbJ+\xc0\x84\x1e\x92?\'\xf7Q\xc1\x18\x92\x9e\xc0\xc0\xab\x82?&0V\xc1u\xfc\xc6\xc0\x04\xd8\x1d@9b4\xc1\x7f\xa1\x8c\xc0\xe6\xe0\xc8\xbe\xf2h\x8c\xc1\x99s\x9c\xc0\xe3\xa3\xf3?\xb4\x0fe\xc1\xad\xce\x0b\xc0D\xce\xe1?sVY\xc1,\xc0\xb7\xbf6\xc2P@u\xf83\xc1\x914z\xc0\xe6\x1c\n@;d>\xc1\xb0\xc3\xae\xbf\xbbq\x01@|\xa7\x1c\xc1\xe5V\x8f\xbf\xb9J\x1a@\xe0\xc5\x13\xc1i\t\xc3\xbf\x13\x9a\x02>\x03\xf7N\xc1\xa3lG\xbf\xbf\x02\xad?\xffg\x14\xc1\x88\t\x98\xc0\x8b\x17\x0e@\xbf&\x04\xc1k\x89\x96\xc0i\x14+?\xf4`\xbe\xc0\xb9\x10\xd2\xc0w\x0e+@\xb18\x0b\xc1\xd5\xb1\x98\xc0\t\x05J?\xdf\x10\x05A\xae\x93\x99\xc06\xdd\x0f?\x87|\x0eA\xb7\x97\xc7\xc0R\xae\x02@\xb0W\nA\x11o\xa2\xc0\xc4\x8dY?\x01\xb4\'A\xc1\xc1\x8b\xc02\x19P?\x9d?\x1eA6\x9b\x8a\xbfv\xac\x0c@\x16\x1d/AU\xa1\x95\xc0\x15WJ@\xa3\xa8=A\xde\xea9\xc0cB\x04@52OA\xf1\x18\xa9\xbf\xc3O\x07@Q\x83^A\xe2w\x05\xc0{9\x17?W\x82\x19A\x03\xc7y\xbfX\x10B\xbe\'\xa5VA\xa9<\xb0\xc0!\xa0\'?\x15\xe9rA\xb2`\x89\xc0\xa6\xd6F?EKpAg,)\xc0}\xe0S?\xa4\xbc\x80A\xa1\xf6\x9f\xc0\x87eR?\x956\x84A\xa9X\xbb\xc0\xec"\xbe?9\xca\x8cA\xfd\xb3\x92\xc0\x81\xc7\xaa>\'\nGAl\xb9\x9d\xc0s\x03\xf2?\x8f\xc9|A\x01.\xfd\xbf\xda\x19\x07@>H\x88A@\x96\xa3\xbf\xc5M!@\x0f\xf5\x93A\x94\x96h\xc0\x05\xbd\x12@o>\x93A\xe89\x03\xc0\xc6\x90\x0c@\x1d\x94\x9fA\x94e\x8f\xbf\xf6\xe9\x15@\xd2Q\xa8Aaa\xc2\xbf<;/?\xcb\xef\x87A\xd2\xd1\x18\xbe\xda\xd1!?\x037\x9f\xc179\xb5?*\tG?s\'\x93\xc1\xcd\x06\xec?\xe2\x0e/?EB\x95\xc1\x81I\x81@\xd1\xd0&?Sd\x8a\xc1\xa7\n\x94?8\xea\x8a?\x89\xc4\x87\xc1\xdc\xeah>wd\x13@\x94\x0e\x82\xc1\x1a~\xdb?\x01?7?\xa0\xb0\xa4\xc1(\x82\xc8?~\x08\x06@,\x88\x8f\xc1\xa5\xe6\x8b@\xde\xe8\xf3?\xab\xac\x83\xc1\x88`\xa1@\x06e\x0f@F\xa1r\xc1\xc5B.@U\xf5\r@\x83:g\xc1k@\xa1@\xa3l\xe9?\xd0gN\xc1\x0f\x16\xb0@%+Q@\xfb\xaaE\xc1\xfe\xce\x97@\xdf\xd1f?\x07\x84\x7f\xc1\xe7\xa3\xb5@\xc9@\xeb>\xccxR\xc10"\xbf?f\xadD?p?&\xc1\xa6$\x1d@|nR?\x85\x9b\x1d\xc1^0\x82@r\xb1\x10@|\x03\x19\xc1\xd8\'"?\xc9N\x1c@hf\x19\xc1\xbe<\x97?\xa4>}?\xae\xab\t\xc1\xfa_\xd3?\x0b\xa4\x08?:\xa9U\xc1\xc5\x92\xd8?Q\x18,@[\xae3\xc1Y\x1b\x80@\xd7%\xa4?\xda\xf1\x12\xc1\x9ez\xa2@4c.@\xacy\x1b\xc1\xf7\x89\xbf@\xb8\xfb/\xbe\xdb\x83\x12Ah\r\xaf@\xd1\xfe\x18@\xcd\xdb\'A\xc2\xc2\x98@\x1f\xfc5?lr\xc2@\xd0\x8d\xd4@\x1fa&?\xfcX\x1bA\xf6e|?\xb6Bj?\x03\x9d7A\xcbG\xf2?\x9a.;?\xe6h7A\x9e\xcbs@\x9f.3?\xa4\xdfLA\xf5\x93Z?,\xb64?d\x00KA\xbf\xd1\xda>\xce\x1d\x10@\x0f\x9abA\xe8\x99\xf5?g\x97\t?\xa7\x99\x0cA;\xeb\xee?\x89\xd1\xb6?\xc4\xb7?A(\xda~@w\xb0\x03@\x8a\x1eVA|;\xa0@~|\t@w\xc3rA\x05\xe8\x19@\x9c\n\x1b@\'4sA@\xb7t@\xd5\xa6\x02@\xfeL\x83Au8\xa0@\xbe\x84\x18@o\x9e\x89A\x83\x0e\x95@\xd6\xf0V?CJVA|\xa6\xcc@\xa1\x165?\xef\x1c\x89A}T\xa9?Q\x0b}?Z\x99\x93A\xf8k\x01@t\xe8B?\xae\xbc\x93A\xbf\x85{@/EE?\x0b\xcb\x9fA\xfa>\xab?U+W?\x12"\xa1A\xc6\x0cA=\xdb\xb5\x08@\x91\x19\x81Al$\xd2?=t\xec?\xf9\xff\x9bA\xb7V\x89@p\x83\r@\x00\xfa\x81\xc1v\xc9\xfc@\xc1c\x88?H\xa0s\xc17G\x11A\xf5\xbb1?\xaaOo\xc1\xa8\xc6$A+\xe1t?\x0b\xd6O\xc1\x19\xd7\xf8@\xeb]=?2\'T\xc1\xfc\xb2\xde@\xbd\'\x01@_\x854\xc13\x92\x15A\xd9\x7fK\xbf\x81X\x89\xc1\xda\x02\x02AZ\x7f\x17@\x95Fa\xc1\x17\xd1&A\x83\x9d\x01@\x85\xacM\xc1\x8f\xd7:A\xd5x&@\xfc 0\xc1=\xc6\x10Ah\xd5\x05@\xa8\xb44\xc1~\x1e8A@\xdf\xff?D\xcb\x1c\xc1\xf0\x0b>A\xc9B\x1e@Y\xb3\x0b\xc1`p6Am\x85g?\xeb\xb5I\xc1V\xd8EA\xb2*9?8H\x12\xc1\xde\xf8\xf4@\x9a\x0f\x85?Z&\xf4\xc0L=\x08Ae\x161?E~\xe6\xc0B\x9e&AX\xed=?.@\xc5\xc0\x19\x13\x01AS\x95G?rc\xc3\xc0\x19/\xe6@}\x19\xd8?F?\x93\xc0\rV\x0cA\x1c\xa0\xf2>\x94.\x16\xc1HL\x00A\x07\x12\x1f@{\xd1\xdd\xc0\x0c\xd52A\x17\xcc\xec?>t\xab\xc0G$:A\xca\xe4\x11@\x15\xe0x\xc0)\xb8\x16A\xfd\t\x15@\xa5`O\xc0O\x1d9A\xce\xd0\x00@\xf4\x19\xc8\xbfkO1A\xd9sJ@\x05w\x8b\xbf~\x1f4Ac\xc3\xf3>n\x9c\xac\xc0\xd6\xffMAUP\x15?\x12\xb1\x03>\x10j\x14Ad5\x02?\x9d\xe7X?CG)A\xf9\xdb\xfb?$\x05U@9\xf3\x0bA\xa9!6>U\x9a;\xc0RK\x04A\xcc \x14@~#\x1b>\x9e%$A_\xfd6?\xd5c\x18@\x07;;A\xf5\xba\xf7?\xce\xcf\x86@\x00\xee\x0bAS\x16\x11@Y{\x9b@d*1A\x1a\x90\x0b@\xd3w\xb5@9\x92DA\xaa\x7fA@\xa1\xfe\xbb@\xff37A\xda\x15\x8d?z\xec\xf8?\xdf%?A`\xf3\x1f\xbf\x1f[\xb0@\xbe\xb8\xfc@}"\x0e@\xbc\xcb\xee@\xb1\xdb\x04A\'XG?P\xc6\xfb@\xe9\x9f$AV\xd2K?\x12\x82\x13A\xe6\xd0\xf5@\x18\xc1l?\x18L\x0fA6\\\xe9@\x93\x1a @I\'-A\xbd\xe5\x08A\xa7\xd1\xe8>i\xdf\xba@:\x07\xf2@i\xe3\x94??\xf0\x00A\xe2(*A/\x91\x0b@b\xe8\x19A:\xdb9A\xfam\r@\x95\xc99A\xb4\x14\x11A\xbd\xc0\x15@w|:A@\xf8$Ac\xed\x07@g\xc7KAx\xd97A\x81`\x16@\xb6\xe1UA\xbe\x173A\t\x10\x15?\xf3\xad\x19AG\x11OA\xdbvF?\x98G\\Aqa\xf8@\xd7\xa3X?x\x06lA\x01f\x11Ab\xa6\t?\x8b\xabpA\xb8\x01&A\xf7W6?\x9e\xfa\x83At\xeb\xf4@\\Qa?^7\x83A\xc5\n\xce@&\x93\t@\xca\x1bMA\xdf\xc7\x01A\xf1\xce\xe7?\x1fI|A\xb8}+A\x0c9\x08@>\xb9K\xc1X\x17cA\x98\xd4b?5\xa6/\xc12FuA(eb?G\x052\xc1\x0e\xfb\x84A\xc0\xd0\x82?\xa6C\x1e\xc1\x92-dA`\x1e|?6\x04\x1c\xc1\xcblXAs{\r@FR\x02\xc1C\x18tAU\xde\x1a?\xab\x90W\xc1\xbd\xcbiA\xf5\x86\x06@\xac\x92%\xc1\x1d\x0e\x8cAL\xa4\xfd?Y\xa2\x10\xc1~p\x8fA\xd7\xef\x1a@d\x02\xea\xc0\x97%xA\xffR\x0c@M\xa3\xf1\xc0\x1c\xab\x89A\xfe\x96\x11@i=\xc2\xc0V\xce\x8fAAF\x14@!\x10\x9d\xc0N\x10\x8cA\xdb\xc6\x13?\x05\x7f\x13\xc1|~\x98A\xcc\xa2\x15?bH\xa5\xc0\xe9\x83bA\x99\x86T?IDn\xc0\x87\xcazAa{\x18?{\xd0\x80\xc0\xe2{\x86A\xbeU>?\xc85\x0c\xc0\xfcNeAS)\x0b?1\xde\x12\xc0\x1eBSA\x81-\xf7?B\x9f\x14\xbf\x9d\xactA\xce\xe3z?=\x83\xbd\xc0-1jA^\x04\xfc?\xf7\x10G\xc0\xc3"\x8bAc\xb4\xcc?\xc0\xb9\xeb\xbf\\d\x8fA\x98\x0f+@\xfb\x04\x00\xbfK\xb6zA\xa6\xda\x18@\xf6\xca\xd4\xbd\x01\xae\x89A\xe3\xd5\x07@\xfc(\xcc?4I\x8fAC\xe5\x1e@Ax\x12@\xf5\xb3\x8aA\xa1\xb28?X:\xc6\xbf]\x1c\x96Ad\xa2e?F\xd4\x14@s\xa9_Ai!L?\x8a\xf5\x80@\xe1\xd9rA\xc8\xff\x82?\xc2\x90a@\x161\x85A\xe4\x00\x96?\xff\x8f\xa6@SDhA5\x1c\x97?\xc5P\xae@VFVA\xaf\xda\xdc?l\xe6\xd6@\xb3\xaetAE}T?\xc6\xe2\xa4?\x1d\x9ajA\xd4p\x17@~v\x93@b\xfd\x8bAF\xd8\x0c@i\x13\xb3@\x1fw\x90A\xb7\x145@\xa7\xb4\xf1@\xba,zA~y\x07@\x9f\xa8\xe1@\x94?\x8bA\\\xe4\x06@\xbd{\x0eA\xe6x\x90Ak\xf2\x0c@R\x88\x1eA\x99\xbd\x8bA\xc2\x85\'?D|\xc0@F\x8f\x95A|eU?\xa8K\x1aA\x0b\xd0dA*\x07B?\x05-0A`DrA\xe9vZ?Z\x932A\xacF\x86A)\\v?TXIAE\xa6cA\x04\rL?&\xceHA\x90CSA\xad$\xf8?\xca\xd8\rA],jA\x08\xdc\x05@R\xd1\x96\xc1z\x8f\x9e@E\x81\x96\xc0\xb7\xe8\x8b\xc1\xc3\xfac@\xbd\xa2\x1c\xc1\x82J\x8d\xc1\xdd\x02\xa4@"\xe7\xd5\xc0\xed\xaen\xc1\x11\\\xac@\xd3\x03\xa4\xc0\x89\xc1f\xc1p~\xa7@wcl\xc0!)\x84\xc10\x92\xa1@t2e\xc0\xca\x1co\xc1I\x8e\x9f@2"\x14\xc0\xbd{g\xc1\x9b1\xa0@\x1b\x06\xb2\xbf\xb9\x00i\xc1\xe6|Y@\xdc\x9b\xab\xc0Y8V\xc1\r\x8fU@Q\xd5\xd1\xbf[\xb1\x8f\xc1\x85p{@\xd4\xa8\x86\xbe\x10\xd5\x89\xc1\x0fYe@\x0e\xec\x91\xbe\x80\xdf{\xc1l\xe9p@\xaa\xbb\xb8?\x980\x90\xc1\xbe\x8dr@7\x00\xb8?_\xb3\x95\xc1\xfe0\xa2@\x1a\xb8G@{0\x89\xc1y\xeaY@\x14C(\xc0\x95\xc1\x8c\xc1\xc4k\xa1@\x8c\x8fB?L\xbdo\xc1\xbbl\xa4@\xa8O\x03@&\xccg\xc12\x06\xa2@\x0b\xdbt@\xfb\xa7\x85\xc1g:\x9f@\xbc\xe2]@\xd8.s\xc1z\xda\xa2@[\xdd\xa1@v\\g\xc1_\xed\xa3@iI\xc1@2\x93h\xc1XKh@s\xd5\t@\xa9d[\xc1\xadFW@y\xed\xc0@\x91\xd1\x90\xc1\xd2Qx@\xa3\xb9\xea@\xc0\x0e\x8a\xc1\xab\x08t@\xef\xe4\xe8@\xd0;|\xc1\xc9\t\x83@\n\x01\nA\x8bg\x8f\xc1\x1e\xe8v@\x00F\x0eAu\x97\x99\xc1\x95\xe0\xa2@\x0fi%A\x92x\x89\xc1Q\xc5k@p\x1a\x9b@\xbe\xf8\x8d\xc1\xfd\xcf\xa2@9\xee\x02A\xe0\xe0n\xc1\xf0\r\xa1@\nd\x1fA\x1a\x98d\xc1o\x06\xa6@\xc8\xa3-A;\x12\x86\xc1x\xc1\xa3@\x14\xed)Ae\x0cv\xc1\xbb\x19\xa7@J\xb0IA\xbf\x08d\xc1\x10J\xa4@)\x07YA\xf0\x06h\xc1V\x99V@v\xbe\x1aAC\xee\\\xc1o\xafX@\x16\xefw\xc1\xd0\x14-\xc1qwi@\x0f\x03\x81\xc1\xc5u\xf9\xc0\x92\xa0\xa0@P7m\xc130 \xc1\xea?\xa8@T}r\xc1\x96?\n\xc1nS\xa4@\xc2\x82Z\xc1x\xa2\xfb\xc0\xc3a\xa4@\x8a[M\xc1\xef\xb2\xfa\xc0\xdd\x95E@B\xbb\x82\xc1(\xac\xda\xc0\\~s@Y\x06E\xc1\xac76\xc1\xa9\xc9x@\xdd(5\xc1\x7f}1\xc11\xfc]@\x1f\x877\xc1\xd7\x9b\x13\xc1\x88E\x7f@t\xcf\x1b\xc1\x8e\xa48\xc1}9u@\xebU\x18\xc1\xa2\xbcL\xc1\x823\xa6@>a\x06\xc1\xcc\x9a.\xc1\xe6\x84b@D\x0cZ\xc1\x1aR3\xc1`\x8d\xab@\xd7,*\xc1\x89\xd4\x08\xc1\xf2\x12\xaa@\x00\xb2\x0c\xc1RY\xe8\xc0w\xcc\xa6@d\x96\xf1\xc0\x01\xae\'\xc1u\x10\x9c@\xfe\x84\x00\xc1T\x9e\x13\xc1\xd1J\xa4@\x17\x9c\xa9\xc0H\xad\xfe\xc0\xba\x0e`@K\x86\x13\xc1\x06\xcb\xf9\xc0\x9aO"@\xf8\xc0\xa9\xc0\xebj8\xc1\xc8\x84v@\x98\xeb\x89\xc0\xb0\x908\xc1)\'d@\xa5\x1d\x7f\xc0\x85\x83\x18\xc1\xb8\x91u@\x120+\xc0\xc27:\xc1\x15 t@`]\x13\xc0\xc6\xa8L\xc1d\x0e\x9b@E\x1d\x83\xbf\xa4\xb65\xc1\xac\xd6Q@:\xea\xc5\xc0\x85A6\xc1\x99u\xa3@\x88\xce\xc8[\x05\x9c@\xc0\xb1x\xc1\xcf|\x00@\x0c]_@\xf3\xad\xa7\xc1\x80\xc8\xce?z\xc2\xa7@&\xfc\x8c\xc1\xc7\x9e\x95@\xb85\xa4@2\xb4\x81\xc1\x0bZ\xa3@k\xa1\x9d@\xd7Ko\xc1\xd6_9@\xd7\xf1\xa1@\x10\x15r\xc1j\xb4\x8b@5a\x9e@<^W\xc1\xd3#\xa5@\x94\x11\xa1@\xa9\x85L\xc1\x88*\x9a@\xab/\x14@\x83\x1a\x82\xc1\xb5\x82\xb7@\xe9FQ@\x08\x83N\xc1\xb8\xa7J??,\x91@\x98\xa6@\xc1\t!\x0b@]Y]@\xb8\x1a1\xc1)W\x87@\xac\xa8y@T_%\xc1\x02\xd8d?K\xa3i@\xf0\xbeV\xc1\xe1x\x02@\x01\xd1\x99@\xad\xa3,\xc1l\x06r@B\xcb\xad@\x0cA\x0e\xc1\xcc\xb7\xb0@\xfd\xa4\xc3@\xe8}\x11\xc1\x13\xee\xd2@z[|@\xaav\x15A\xccd\xb3@iO\xab@\xf7\xf1%AN\x13\x99@\xeb\x06`@\xae\x06\x1fA\xbe\x8a\xaa?\x91\x07l@{\x039AB\x10\xc9?\xeb\xa2m@M\x155A\xec\xd4S@]\x0cy@\xee\x86TAr\xa8\x91?\x07\x1cv@\'\x90NAk\xbd\xc4>\x06\xc8\x97@\x1fAeA\x01F\x01@\xc1\x9eO@o*@AE\xe3\x87@\xc9a\x9b@d\xe1XAJ9\x9e@\xda\x03\x9c@\x18\xd3lA\xa1j7@|\xb6\xa1@\x1d\x9clA\xe8J\x93@\x9b\xa0\x9e@i\x95\x83A#"\xa2@\xae\xa6\x9e@L\xb6\x89A\x1d\xac\x98@0\xf8P@\x04\xc3TA\xee-\xc2@\xa7\xd1X@@\xa0\x8bA\x81M\x9d?y\x99t@\x1a\xc6\x96A8\x95"@e\x92j@\xa5\xbc\x94A\x12\xf7z@\xbbU{@\x1c\xb6\x9fA\xe8\xe6\xa1?\xcd*z@\x0c9\xa1A\xc5&L>\x9c\xbd\xa3@5\xc1\x83A\xbf\xd4\xd3?\xd3\xc7\xaa@\xa3\xd3\x9bA\x03.\x85@8\x02\xad@\xfc\xc7\x7f\xc1\xbf|\xf9@;\xbex@\xf6\xdae\xc1WV\x07A\xda i@\xf2\xe9h\xc1o\x95 AvA\x83@\xfc\xeaV\xc1\xef\xd7\xf1@\xe2\x15{@\xde\x16V\xc1\x07M\xe3@\xae[\xbc@pG7\xc1J\xb4\nAM\x1cd@\xb0\xd2\x87\xc1\t\xd8\x00A\x03\xe5\x9f@}Hc\xc13\xff)A\x8f]\xa2@\xb5\xf4H\xc1\x8fA8A\x88\'\x9c@[q1\xc1;\xf3\x11A\x03\xa3\xaa@\xf1\x9e5\xc1\xb3|%A\xfa\xde\x9e@\x04\x07\x1d\xc13\xa07A\xc2g\x9f@ \x18\x0f\xc1n\x985A\x996J@9HL\xc16 IA\x90zf@\xc4\x81\x00\xc1by\x01AT[\x86@\x0f\xb2\xfc\xc0\x87\x1f\x11A}\x14d@\xa28\xec\xc0\x1f\xd9&A\xeb\x95}@\xa2\xfc\xc3\xc0\xb8Z\x03Aq/\x7f@fr\x90\xc0B\xa0\tAvmT@\xa2\xfa\x1d\xc1*S\xff@\x88\xe4\x94@\x00K\xd6\xc0\xa7o0A\xd6\xee\xa5@\x12.\xa8\xc0\x1f\xabBA\xcch\xa5@\x7f\x08{\xc0\x0c\xa33A\x04\x89\xa2@\x07\xe0\xf9\xbf\x0f\x909A\x976\x9e@\x18Q\xf7\xbf\x88\xad\xb3\xb7@\xa3\x92\x04A6\xf6j@!=\x02A\xf7\x7f\x10A\x8a\nn@\xd95\xf0@\xe6\xc8\'A7\x1e\x86@\x02\xd2\x13A\xa3M\xf3@l\xd0\x80@:\xba\nA\x97\x87\xf1@~\xc4\x99@K\xcf)A8f\nARbf@\xad\xe3\tA\r\xd1,A\xbd\xfe\x9e@\x88\xd7 A;Y9A\x9e\xb1\x9e@/\xb76A\x8at\x0fA\xb3\xf5\xa3@HK2A\x93\xfa-A@@\xa2@\xc1\xb4HA\xfd88A(p\xa5@\xd3\xfbYA\xc8r5AU\xfcU@\x0bA\x18A\xc3\x9fKA\xd2S_@7\x84[A[\xa1\x00A\xa61l@\xfb\xa8rA\xcdv\rANz`@\xaa\xb5oAZ\r A3\x9fu@\xf8h\x81A\x94s\xf7@"\xf6u@SW\x83A\x9f\xdd\xd6@D7\xa2@\xa3\xd4KA$c\xfd@\x89\x9c\xa1@MXxA\xbc}-A\x93}\xa2@\x89\xdeH\xc1\xbb\x07cA\xc8\xb2x@Iy6\xc1\x82NpA\x0c\xa6o@kS2\xc1M\xe4\x84A\xfd\xe1|@\xa3\xa0\x1e\xc1\x97weA\x999v@\xe01\x18\xc1\x13\xebVA\xdb\xc5\xa8@\xcbC\x01\xc1D\x12pA\x8cQ`@%\x99W\xc1\xce%gAZ+\x9f@\x01\xf4%\xc1\xee\x02\x8bA\x18u\xa9@\xc6\x8b\t\xc1\x9e\x10\x8fA\xe1m\xa6@\xdb4\xed\xc0\xf5\x99yANr\xa2@\xad\xfe\xed\xc0k\x8a\x89AY\x8c\xa4@~\x1c\xbd\xc0b\xef\x8fA\xfaX\xa6@\x85r\xad\xc0\xfe\xd3\x8dA\x13\xc9R@\xe6x\x0f\xc1\xe8\xcc\x97A\x13\x02l@\xf4&\xa1\xc0~reA\x11&\x85@\x03\x97q\xc0\xdewrA\x8cPa@/\xcdp\xc0\xa8\xbd\x87A\x9a\x02l@\xeaE\n\xc0\xe5)eA5\t|@z\n\x05\xc0\xbc\x00XA\x91\xf9\xad@Y\xb0&\xbf\x9e\x8doA\xbf\xbaI@\x8a\x03\xcd\xc0?\rnA\t\xfe\xa5@\x9e\x154\xc0\x04\x03\x89A\xa4\xe8\xb0@\x7f\x9e\xa1\xbf.\x97\x8eAf\xe1\xa4@\x10\n\xdb\xbc\xe1_|A\xccH\xa7@\x88g\x97\xbd\x9f\x89\x8bA%\x86\xa8@\xc1\x1d\xc6?\x9a\x98\x90A\xdct\xa4@\xae\x00\x1d@\xa2H\x8cA\xe2p}@\xcc!\xba\xbf|\xb5\x97A3]m@V\xad\xfb?@\xa7eAD\x80\x9a@\x17\xc7D@\x97\x95lA2\x8bw@\xbf\xbaw@\xcf\xcd\x83Auj\x82@\xfe\xea\xb0@\xef,aAA-\x80@\xf1\x96\x9f@G\x8eZA\x08\x8a\xb7@;\xb2\xe0@oXsA7\x02_@YA\xca?e\xeaeA\x03c\x83@\x02\xdd\x8b@\xb2~\x87AD\xe9\xab@9\xde\xbe@C\xaf\x8eA\x8e\x03\xa4@\x9a\xfe\xeb@\xebhzA\xa6.\xa6@\xfa\xeb\xfd@R\xd0\x86A\xc2l\xa0@H\x13\rA\xc9\xbf\x8dA,\xc5\xa5@\x03\xf3\x1bA\x12\xe0\x8cA\xa5\xdae@9\x1f\xb9@\\\xd4\x96A\xec\x92f@[d!A}kdA\x03(|@\xaf\xc76A\x10\xc3jA\xa2Rm@\x10\x8f/A<|\x85A}Hw@7\xbcGA0^bA\xa6f\x81@\xb7rLAXFRA]J\xa2@\xf3B\x0cA\xf7NfA)\xdc\xa3@\xf27@A\x1d\x81\x8bAJ)\xa4@\xc4<:\xc1\nE\x89\xc1\x1f\xec\xc7@\xc7CG\xc1\xa0\xefd\xc17\t\x03Ae\xec0\xc1Qc\x85\xc1\x15V\x02A\xb5q4\xc1\x83\x8bo\xc1\x9d\x92\x01A\xe2\x07\x1e\xc1\xe5\xfdf\xc1r\xe5\x00A\xb7a\x11\xc1\xad\xa5e\xc1\xa2\xeb\xc4@K\xf2J\xc16\x96W\xc1\x9c\xe6\xc4@\xfc\x11\n\xc1~\x03\x90\xc1\xe6^\xe1@\xe0\x0f\xf1\xc0\xa3\x18\x8a\xc1\x8a0\xdd@~\x1d\xf7\xc0E4y\xc1\xd3Y\xda@\xc8[\xbe\xc0Z\x8b\x91\xc1o\xd5\xe0@\xd8:\xc4\xc0N`\x9a\xc1\x1d\xb3\x00A\xf8u\x8a\xc0\x03\xcb\x8a\xc1/U\xc7@-\x9a\x1b\xc10\xce\x8d\xc1O\x92\xf0@\x9f\xae\xd6\xc0^\xads\xc1\xdc\x8e\xf4@\x0e\xd0\xa0\xc0A\xe0d\xc1\xd4\xf3\x01A\x00\xf0s\xc0.m\x87\xc1\xb9\xe1\x02A\x0f4i\xc0\xd5~v\xc1^,\x01A\xa9=\x1f\xc0\xb4\xa6g\xc1\xddT\x04A\xcd$\xcd\xbf3:i\xc1\xcb\xe9\xcc@wb\xa9\xc0\x82\xbc\\\xc1\xaf\x1e\xbf@\x8c\x86\xc3\xbf\x97\xa3\x92\xc1\x0e\xc4\xe8@0n\x9e;\xe4\xd5\x8a\xc1\x8a{\xd4@m\xcd\x8f\xbe\r\xe3{\xc1\xcfB\xe0@mc\xcf?\xd7\xe9\x8e\xc1\xb9B\xdb@\x17]\xc5?I\xd1\x97\xc1\x07\xce\xfb@\xc8.J@*\xf4\x8a\xc1aw\xcc@\xc3X(\xc0\x80\xb0\x8d\xc1\x88\xf2\xf5@\xca\x93I?\x15Hq\xc1\x03\xab\xfa@\xd0\xef\x1a@\xea\xbed\xc1\xb5\xb1\x05A\xf6\xa9y@\x96\xba\x85\xc1\xc7\x8e\x02AnT|@\x90\x8ew\xc1\xc6\x97\x01A6\xa3\x9b@+\xb4d\xc11g\x03A\\,\xc0@d\x03i\xc1\xf3\xc2\xcc@\x81\'\x0b@B*`\xc1\xef\x94\xca@^=\xc6@\xbb\xd5\x90\xc1\xca\x16\xec@&\x1d\xeb@\xf0\xc1\x8e\xc1G,\xdd@R\x04\xf1@\x0f\xdc\x7f\xc15d\xed@\x14\xa3\x0fAF\xfc\x8e\xc1\xf9\xde\xe6@A\xaa\x12A\xa6/\x98\xc1b\xbf\xfa@\xdaq&A\xffV\x8a\xc1\x01\xb2\xc9@d\'\x9e@v4\x8f\xc1\xe6\xbc\xf0@\xe9\x9b\xff@0\xe3p\xc1\xd7\x0f\xef@\xe9\x8f\x1dA\x96Ch\xc1\x84v\x06AD\x9d2A6\x02\x85\xc1\xc2\x9b\x04A\x11M3A\xfc\xe5o\xc1\x9f\xcc\x02A\xf2CHAe\'d\xc1\x8a\x08\x07A/\x08RA\xcc\x88f\xc1\xcdd\xcf@D"\x18A\x19\xcd[\xc1U\xd6\xc5@\xf97w\xc1\x13r-\xc1\xc6\xc2\xcb@\x18\xc9\x84\xc1\xea\x97\xfb\xc0\x99Y\x03A\x84_m\xc1\n\x92!\xc1\xc5v\x05A\xd0\xd7n\xc1\n#\x02\xc1R\xdf\x00AZ\xe3]\xc1e\xb4\x06\xc1\x12\x07\nA\xfa\xd2L\xc1\xa1\xd8\x01\xc1\xfc\xf0\xd5@\xd5\x88\x82\xc1\xe1\xd5\xd3\xc0\xe2\x7f\xd4@h\xcbG\xc1\x1a\x1a<\xc1\xeb-\xe4@\xd3m6\xc1\xce\x15*\xc1\xceG\xdb@\x85\xcf/\xc1\x99\x8e\x16\xc1\x08\xfe\xf6@Hf\x1b\xc1Fa7\xc1F\xd0\xe5@-\x82\x19\xc1\x15BL\xc1\xe3\xa0\xf0@\x91\x89\xff\xc0V\x9a*\xc1\xc2U\xc2@\xf2\xabX\xc1\xd5\xf16\xc1\xf8\xc2\xef@\xd5\xab-\xc1\xc4\x1a\x04\xc1\xd9\xe3\xe5@\x01\x00\x11\xc1\xc3\xcc\x00\xc1<\x08\x07AD\x00\xea\xc0L\xd6+\xc1\x97\xe5\x01A\xf0\x95\xed\xc0\xd7\xb3\r\xc1\x9a?\x01A\xbb\xf1\x0e\xc1>\x83\xe7\xc0\x89\xd5\xd0@_I\xab\xc0g\xd8A\xc1k\xdd\xe8@\x14;w\xc0l\x005\xc1\xe4\x10\xd9@Z &\xc0q\xd2:\xc1\xbd\xc9\xd6@\x9a\x1d\r\xc0"7M\xc1\x87\xa8\xf3@\xf7#d\xbf\x0e\xeb0\xc1\x81\xd4\xc8@\x8c}\xbc\xc0U\xd71\xc1\xd23\xea@\xd5\x80\x06@?\x99F\xc1\xb6\xbe\xd7@\x1a9p@\x1e$3\xc1-\x88\xdb@|\xff\xb1@\x90l9\xc1\x07\xff\xe6@H\xc4\xa8@\xee\xa7K\xc1-\xb1\xf3@\xd8\x04\xe0@\xf3\xd6"\xc1\xf0\xf4\xca@\xd2\xca\x07@\xd4\xe6/\xc1\xa8\x14\xed@\x01\x96\xf4@\xc7\xba+\xc1LH\x07AE\x01\xe9@\xd0\xff\x0e\xc1\x93]\x01A\xb1~\x15A\xc2&\x01\xc1@\xe5\xff@Y\x0c\x0cA4t\xfc\xc0d\x08\xaf@!I\x16A\x0c\xc4@\xc1\x86]\xfb@nw0As{5\xc1\x98k\xdf@\x0e/2Aq\xa9\x0e\xc1j\x03\xe5@\x81\xddGA|\xd4;\xc1K\x8c\x03A1\tKA\xc3~H\xc14-\xf5@\xf6b`Ae\xd2-\xc1\xe9\\\xcf@\xdb}\x10A\r\x036\xc1F\x8a\xf3@\xe6\xafIA\x07\xb1\x04\xc1j\xb6\x02A\xf3\xcf_As\x1f\xfd\xc0bI\x05A\xab\xedoA\xd9\\%\xc1\x9aB\x05A\xf9FdA\xf2\x99\r\xc1\xb2\xb7\x04A,`\x81A\xc4_\xf8\xc0 \xe1\x03A\xc1l\x88A|\xde\xff\xc0S\x9a\xcd@$&UA\x8c\xa1\xd5\xc0\xa2\x1e\xd4@C\xba\x97\xc1\xd8\x91\x83\xc0\xabR\xcd@\xe1\n\xa2\xc1\x1d\x15\x96\xbf\x1e\xbd\x01A\xe62\x95\xc1\x94\xc3b\xc0\xe0\xf1\x04A\x04?\x97\xc1/\xd3\x01\xc0\xc6_\x00A\xc0\x15\x8b\xc1t\xef\xa9\xbf\x13\x00\x00A\xfa\xae\x84\xc1\xd5\xf3\x86\xbf+ \xba@yn\xa1\xc1aho\xbe\xa14\xca@\xa88\x82\xc1\xfb_\x9d\xc0;\xda\x03AR\xedt\xc1\xf7\xcdp\xc0\x1f\x87\xe0@\x04Av\xc1~\xe3\x0b\xc0\xb7\x06\xfa@jeP\xc1\xfc?\xa4\xc0\x12]\xe0@2\xb2X\xc1\n\xe7\xd7\xc0\xc4\x15\x02Ai\x86.\xc1Aiq\xc0\x04\xc8\xaa@T\xd1\x89\xc1w\xf3\x9a\xc0\xb1\xd3\xee@\xa8\xe2e\xc1\xdaD\x15\xc0~q\xf7@\xbdKN\xc1{\xdb\x9a\xbf\xf4\x91\x06A\xda\x018\xc1\xe5\x95\x81\xc0}f\x02A8k:\xc1\xc6\xa4\xc0\xb8\xc8\xe7@\xdc\xb5\x80A\xb0\xb6\xd8\xbf9\xc4\xf7@>y\x8cA\xe0\xf4\xa1\xbf\x07\x1c\x07A\xc1T\x96AH\xa7f\xc0?o\x05A\xc3 \x94An\xd8\x02\xc0\xdbk\x00A\x05\\\x9fAa\xe1\x95\xbfr\xd4\x00AQ\xb4\xa4A\xb0\xfa\xc8\xbf\xb4d\xca@Va\x86A"\xc3\xab\xbe\xe6H\xcc@\\e\x9f\xc1a\xcd\xa3?\xc9d\xee@.S\x96\xc1s.\x11@:\xa4\xdd@\ry\x95\xc1\x1an|@\xad)\xe3@\xfcF\x8b\xc1I\xe9\xc7?\xf1\x94\xe9@\x04\x04\x87\xc1\x9c\xc3\x04?\x07M\xe8@\x04\xadx\xc1\xc7G\x0f@\x1a\xf8\xc2@\xd4\xce\xa8\xc1\x95\xba\xeb?\x18\xf9\xfb@=b\x8d\xc1g(\x97@p1\xef@\xe8\x8e\x82\xc1\x94\xb7\xa3@>\x10\x04A\'\x9do\xc1u\x9c>@(\xb2\x02A\x17\xedr\xc1\xeeU\x8c@F\r\xfc@\x05SZ\xc1\xee"\xa2@\xc5\x8d\x08A\xee\x87M\xc1e\n\x9b@\xde&\xd1@\xd2\xc7\x82\xc1P\x04\xb9@\t\x03\xc5@\xa6\xe3O\xc1\xcc\n\x85?\xa1\xd6\xe4@\x89c9\xc1\xdb\xc1(@pu\xd6@d\xe19\xc1\xe9 \x8b@sV\xfa@\xa5\x03^\xc1I\x0b\xee?\xa5\xb0\xf5@\x84\xc4,\xc1\xac2[@&\xd1\xed@\x1fY\x19\xc1\t\x12\xc7@\x0f\x8a\xba@>\xa0#A[\xd9\x98@\xa6\x9f\xcb@\xa6J@A^H\x06@p_\xdb@\x9d\xcb8A[bf@\xdbh\xdb@\xa3uSA\x9e\xdb\xcc?d\x14\xe3@9\x10GA\x1a[\xc9>\x8c\xe4\xf4@\xe9\x0bnA\xf3Q\x0e@\xeb+\xc9@\x85\xef=As7\x96@f\xf4\xf0@\xaee\\AE\xe1\xa8@\x85\xcd\x02At\xe2qA\xe0+,@<\xbd\x02Am\xd7sA\xa7\xc7\x8a@\xe8\x94\xfc@\xf7\xf7\x83A\x13 \xa2@\xcc\xe6\x01A\xee/\x88A5\xa7\x9c@:\xa4\xca@\x07\xf6SAy\xac\xc2@\xdec\xbb@@\xd3\x8aAV\xfb\xba?\xaa\x8d\x01A\xd4\xca\x94A^\x9f\x05@t"\xd6@\x0f\xa2\x94A\xc7nk@>x\xed@\xbe\xe2\xa0A\x9d\x95\xb4?E;\xe9@Z\x1f\xa2A{ac>\xc4z\xf3@N\xee\x84A\xbe\x97\xb9?\xa55\xdd@\xf5~\x9cA\xdd8\x8b@\x91+\xfc@\xdf\x0b\x83\xc1m\xe6\xf5@:(\xed@\xfd\x18s\xc1\xa7\x15\x06A\xb8\xc8\xda@\xaf\x0bp\xc1\x93\x93$Ac\xf5\xe7@\xdb5U\xc1\x12Y\xfd@\x7f}\xea@s\xa6V\xc1.\xff\xdc@\x05\x9d\xf4@t\xf2@\xbc\xfb!A4\xc97A\x9e\xd9\x03A\x9a\xbb2A7Y\x11A)\x8d\xfe@+n;Aj\xf0\'A\xb3\xa7\x00A\x18\xcdHA\xdb\x94:A\xa8+\x00A\xf5\xf7SA\xabu6A&\x81\xc4@t\x9a\x18A XFA\xac\xdd\xc8@\x94\x03[Al\xef\xf4@g\xa1\xf3@u#pA\xcdK\tA\xc0[\xd7@\x02imA~\x1b\'A\xe4\x16\xda@\xf8\x8a\x83Ay\x9e\xfb@/\x10\xe3@\x1bx\x85A\x89H\xd3@\xb5\x15\xee@\xbd`LAi^\x05A\xdbN\xfa@$\xa5zA4./A \x7f\xf2@\x8d\xc3J\xc1\x01\xc4bA\x0fX\xe2@\xde\xe82\xc1\x86EoA>\x92\xdd@\r\x083\xc1\xf9M\x85A\xbfO\xde@AJ \xc1\xdf\x8agA6\x14\xde@\xa0\xe6\x1a\xc1Q\x1fWAU\xb5\xf3@1\x19\x05\xc1\x96\xa1lA)\x1f\xca@\xa1e[\xc1C\xe4lA\xd1\x9b\xfa@,\x86&\xc1\x1c;\x8bA\xfaW\xf2@M\xfe\x10\xc1^$\x8eA\xcdK\x02A(\xf0\xf4\xc0\xde\x08~A)\x9a\x03AxC\xeb\xc0]\x95\x89A\xbe\xf3\x03A\x13h\xc6\xc0\x94\x89\x91A\xf6\x1d\x05Aw\xc0\x9a\xc0\xde\xb3\x8aA:\x05\xd3@\x13\xac\x0f\xc1\xd0\x8e\x95Aq\xf5\xc7@\x15\x15\xa6\xc0\xd2\x1c_AD\xac\xda@\xb7\xa7d\xc0\x9e{uA5\x9f\xd9@;Tq\xc0\xe4\xd0\x84A\x08\xea\xff@q\xd8\x1e\xc0\x05$gA_\x99\xff@4\xad\x08\xc0\x97hVA\xe2\xdc\xeb@\x06\x9b2\xbf\xc0\xd0nAI\x8c\xd3@\xddV\xca\xc0\xb7\xe9jAc\xb3\xf9@\x962P\xc0IW\x8bA\xf3i\xe9@\xa9}\xa0\xbf\x13\x87\x8fA\x06a\x05A\xa2u\x95\xbeEz}A\xf0\xfd\x04A#{\x0e?\xb2:\x87A\x17\xdc\x01Ap\x16\xd8?pu\x92APJ\x05A\x12\x10\x07@\xd5+\x8eA\xc5s\xca@\xde\x1b\xc0\xbf\x97\xee\x94Au\x8a\xcb@mA\x05@s\xd6[A\xbfN\xe3@/\x19\x92@E@mA\xd6t\xdc@\xa9fn@\x05\xff\x85A-\x86\xe8@ey\xbb@u9bA\xdd`\x00A?\x89\xa3@\x02\xdb[Au\xe2\xec@\xddL\xda@\xd0\x99mA\x8c*\xd3@\x8f\x18\x85?\xbd$rA\x173\x00A\x8bK\x90@\xa1\x05\x88AZ\xca\xf1@\xe6u\xc3@\x18\xa9\x8eA;P\x07A\x1a\x8a\xf3@\xab\xb2{A*\x88\x06A\x16i\xf2@\x84%\x8aA\xef\x01\x00A\x98\x96\x0eA\xfd\xd7\x8fA\x92R\x06AJ\x17\x1aA\xd9S\x8dA\xc6q\xcb@L%\xbd@\x8c\x86\x95A\xb5\xbc\xcd@m\x89\x1eA\x05&gA\x11\x9b\xe1@\xa6N/AoCtA#j\xd7@-F1A\xe1\x18\x86A\xfa\x80\xe4@9\xfdJAo\x82bA\xc8\xb2\xe7@\xd6\xfbMAG\xa3SA\xfc\x0e\xf4@Kf\rA/9gA\x7f\x05\xf2@\xa8/=AB\x99\x89A\xeb\xae\xeb@\xd5\xc8\xf4\xc1\xe7{d?@tj\xc1\x18~\xf8\xc16t\xd8?\x802p\xc1\x92x\xf9\xc1\xf7\xafd>\x04\x9eo\xc1\xc0-%\xc2~dP\xc1\xb8\x9c(\xc1>\xa5#\xc2\xa6\xc0P\xc1\xb3\x85\x1a\xc1\xf2i"\xc2\xdf\xb4J\xc1q\x862\xc1\xac\x8b\xdb@\xcaO(\xc0\xb3\x83y\xc05\xbb\xd0@\xfc\xb5\xe0\xbf#\xfap\xc0M \xd8@\xf4\x01H\xc0\xa0QF\xc0\x8e^R\xc2\xdf^\x0bBK\xe1\x9b\xc1\xf3JP\xc2\x84\xd3\x0cB_\xc7\x95\xc1-\xfcR\xc2J\x14\x0eB\x15W\xa0\xc1S\xa4\x0e\xc2\xd29(\xc2\xf3\xb4\xecA\xc0H\x12\xc2\x92\x9d)\xc2\r\x8f\xeeA\xe0\xb5\x0c\xc2v\x02)\xc2t\x0f\xf2A9\x86\x12\xc1Z\x13\x7f\xc2QJ\x83Bu4\x12\xc1% {\xc2u\xe1\x82B\xb1#\t\xc1X[\x7f\xc2L\xd7\x84Blm/BD\x0c9\xc1z\xb4eB"S/Bk\x8dE\xc1B\x14hBN{.B\xc6$-\xc1\x97\xf2gBn\x9f\xf2\xc1\xf7\x86K\xc2\x064\xc4A\x84\x04\xef\xc1\x15WH\xc2\':\xc4AX\xa9\xf9\xc1%5J\xc2`\xb1\xc5A-\x9c\xf7A\xbc{Q\xc0\xd7[\x8dBF5\xf1A\x94\x14G\xc0\xc4`\x8eB\xaea\xf6A\xe3\xb2E\xc0w\x86\x8bB\xdc\x04\xbd@\xea\xcf\xc8\xc1\xf5\xe3RAf<\xd1@\xc4\x17\xc4\xc1Q\xebWA\x84\r\xcb@\xe2\x9e\xcb\xc1~\x07GA\x18:]\xbek\xfb\xa1\xc1\x0e\xbf\x91\xc1\xff\x1a\'?\xce\x93\x9f\xc1\x9d(\x92\xc1c\x14J\xbf\xaeF\x9f\xc1\xa5\x9f\x97\xc1\xd1 \xbcA>\x08\x97B\x98\xf4\xc4A\xda\xb6\xbaA}N\x98B\xbdl\xbfAW.\xbeA\xb4U\x95BG&\xc1A\xaa\xa1\xb5A\x1c\x94\xeb@\xbe\xd0Y\xc1\xc3\t\xbdA\x912\xea@\xea)V\xc1\xd3\x84\xb3A\x02\xb0\x02A\x89ZR\xc1\xa4\xe2\x07\xc1l\x99R\xc0\xd5`\x01AD1\xf8\xc0]\x07,\xc0\xa7M\x00A\x8bP\x0f\xc1\x15\xa8J\xc0-\xeb\x0eA\x1c6\x14B&\xc1\xdbA2\xc6\x15A\x08J\x15Br\x83\xdbA\x89S#A0=\x14B1q\xe3AKf\x12A1\xb4\xc3B\xe4\xdf\x95\xc1G\xe1\x80A\xea\xd8\xc4B\x04T\x9c\xc1rB~AW\xcf\xc3B\xaf~\x96\xc1\x00m\x88A\xf6\xfa\x18\xc1\x90\xe7R\xc29&\xe7\xc1\x94Z\x11\xc1\xc7\xd0O\xc2`w\xe4\xc1|3&\xc1V\x06S\xc2\xf7\xe8\xe2\xc1\xe4rv\xbfj\xc9\x17Bsj\xa1B1\x9e\xda\xbf\x06\xcf\x18B+\x8e\xa2B\xe0\x04\xaf\xbeqj\x16B8\xdb\xa2BO\xce\x06\xc2)\x03F\xc2\x06$\'\xc1Z\xd3\x05\xc2\x19\xc4C\xc2\x0e\xb0\x1a\xc1(\x12\x08\xc2!sI\xc2\\\xf0!\xc1\xab/\x95A\xcf\xdd\xc6\xc19z\xe0A\xe4@\x9cA\xdd\x9a\xc5\xc1r@\xe3A3\xbd\x91A\xf36\xc0\xc1\xe2\x8c\xe2A\xf8\x1f\xd9\xc1\x8f\xb6\xe6\xc1xGqB3\xa6\xd2\xc1\xe0p\xea\xc1\x1c=qB\x88\xb1\xd7\xc1\xb0\xbf\xe0\xc1\xef\xe2sBqmq\xc1\xf5\xe0\xc2@Z\x19\x87A\x82nm\xc19\x9e\xd1@\xb0\xed\x8dA\xfe\xbfx\xc1\xc4\xce\xa8@\x1b\x93\x89AG\\KA\xde\x9e\x1bB\x80\xef\xd4B\x9c\x96HA\x94#\x18B\xc1\xab\xd5B\x98lAA@\x8dF\xc0T\xff\xf9@n\xc9HA\x82\xe7\x1e@|-\x02A\xf3c\xdd\xc0*\xca\x03@%\xab\xf4@\x0e[\xc5\xc0*6\x18@zD\x12A\xc7\xb4\xd4\xc0\xd0\xb6\x07B\xfd\x82\xbaA3\x91\rB3<\nB\xceR\xc0A\x13N\x0eBk\x05\x06B\x0f\xa3\xb8A\xd4\xc2\x10B\xd8\x0f\xa2@\x9cQ\x1dB\xce\x15\x13A\x9a7\x9f@\x8a\xe5\x1fB\xdaR\x1eAF$\xb3@\xa7\xe8\x1aBu\xc0\x1bA\xdf!\x0f\xc0z\xbc0?8\xde\xc6?\x180\xbc\xbfl\xa8x>i2\x02@]\xc23\xc0X\x89\x8a?\x17\x80\n@\xe7\x81VA\x7f`\xadA\xa8\x10LA;XaA\x15\x8c\xa9A[xCA\xc0\x1c^Ak\xec\xb2Aj}TA\xd9o\xe2A\xc8\xe3n\xc2}.YB_\x0e\xdeA\xe4\xf7l\xc2\x9e\x8cVB\xb0\xe1\xe1Aw\x01m\xc2qu\\B\x19d\x1eB(mU\xc1\xbc>\xa0B\xe4\xf1\x1cB\xf8\xd0H\xc1\xbeH\xa1B#\x07\x1dB\xcd\x8a`\xc1\xc1Q\xa1B @\xc2\xc1\xed\x94\x83\xc2%\xa7yB\xc6\xfd\xc9\xc1\x04\xd8\x83\xc21\xd9yB\xe5\xf3\xbf\xc11\xb7\x82\xc2\xf3r|B\x91\x11\x15B\x8a\x0b\xc1\xc1\xf4\xe43\xc0\x07\xc0\x18B]\x8f\xbf\xc10\xfe\x1d\xc0\xf0\xf8\x12BZi\xc3\xc1\xc0\x8d\x00\xc0\xac\x82\x95\xc1\xc2\x1f\xf1\xc0nq\\B\xe9\xa8\x92\xc1-\xa7\xd8\xc0\x9b\xbc^B`\xfc\x98\xc1\xe7/\x00\xc1]s_B\xc1\xd7\x96\xc0{6M\xc1\xf2\xfa\xdbA->w\xc0}\xc0N\xc1\xa2\xaf\xdfAJb\xa8\xc0\xff\x9fT\xc1\xea.\xe1A\xf3\xa3\xa6@?\xb5\x04@\xcd\xdb\xf6A}\xcf\xb0@\x08\n5@[5\xfbA\xea\xef\x93@\xdd\xcb\xdd?\xe0\xf0\xfcA\x9d\t\xca\xc0\xcd\x01\xaeA\x8fH\n\xc2\xa3A\xe9\xc0\xad\xcf\xafA\xfb@\n\xc2y\x17\xbe\xc0|\x8c\xb1A\xd8\x1a\x07\xc2SO\xc5@\x8e\x1f\x1f\xc2\xe3\xf6\x01B\xe7\xd3\xa6@Yu\x1e\xc2\x0f\r\x02B\xf1\x06\xc8@\xef\xd7!\xc2\xe1\xc6\x04B\xe2\xc7\x89\xc0\x88=\xc9\xbfT\x96\xd9\xc1m\x80\xa3\xc0\x8d\xa8\x07\xc0\x94e\xd8\xc1w\xe7h\xc0\x0e\x9c\n\xc0\xb9\n\xd8\xc1\x1a;\x1c\xc2\xd1\xf5fA\x9c\xa7\x07A)\x15\x1e\xc2\xbcD_A\xa0\xb5\x12A\x01\xaf\x1b\xc2\xb8EtA\t\xbd\x0fA\x93\xf0\x12\xbc\x8b\x04\x05\xc2Z1aB\x11\x9dV\xbe\xae\xe8\x05\xc2\x95\reB:\xc7\xe4>\xc0|\x01\xc2\xbdraB}<\xa8\xc1\r\xa0\xbd\xc1\x89@\xe3A$\xc2\xab\xc1-g\xc4\xc1W\x12\xe1Af\x10\xa8\xc1\xb7\xbd\xbd\xc1\xcd\xe8\xeaA\x1b;\x82\xc1\x96\xe5DBj\nW\xc1lV\x83\xc1\xe1}CBO?H\xc1\xccNw\xc1\xe4\xcdFBliV\xc1"r\xda\xc1R\xa6\xb4Ay,(B\x90\x82\xda\xc1\xe2\x18\xbcA\xbfS)B\xc2\x12\xdd\xc1\xb6?\xb1A\x80T+BA\xabK\xc2F\xde\x1dB\xfa\xe0\x82B\xe3cN\xc2\xff\xf7\x1eBMS\x84B37L\xc2\xee\xf0 Bf\xc8\x81B\xa3rgA}}\xb5\xc1\xd6K\xc9\xc1\x8e\x06nA%\xa7\xb6\xc1\x80-\xc3\xc1N\xc2sA\xc3\xc1\xb2\xc1\xf1\xaf\xcd\xc1\xfc\xb4\xf0A\x96\x0e\xf9\xc1R\x0b\xeeA\xc5S\xf8A\xaf\x83\xfb\xc1\xf4\xba\xeeAh\x10\xf1A%E\xf1\xc1\x02\xca\xecA6\\\xffAT&\x81AVw+B\xaes\xfcA\xc9\x15\x84AC\xa0.Bi&\x03B\xec\xb0}A\xf2\xca,B\x9a\xe0\xac\xc0\x1d\xa7\xd6\xc1@5\xfbA\xba@\x92\xc0?g\xda\xc1ca\xfcA\xf2\xf8\xba\xc0\xa1?\xd9\xc1a\xf9\x00B\xe8\xcf\'\xbf)\xe6\xc0\xc0\x1f_,\xc1;\xe4\xac\xbf\xac\x08\xc5\xc0\xcc\xff \xc1Jn\xe8\xbe\xb3B\xa4\xc0U\x91-\xc1\xcb\x7f\xc0A\x85\xa7\xf0\xc1uw\x89B\x12\x13\xc6A\x1b\r\xf6\xc1\xc3~\x89B\x19\xa2\xbdAQ\x1d\xf2\xc1\xf6(\x8bB\xees\x07\xc2\xab\x82\x89\xc1[}\xc9\xc1\xdf\xd5\x05\xc2\x15$\x83\xc1P\x10\xc6\xc1\x91\x1b\x0b\xc2\xd2;\x8a\xc1/\x81\xc5\xc1\xbd.\xb7\xc0\x84}\xe7?\xe9:0\xc2\x97a\xd3\xc0\xef\xef\xf2?\x1fp.\xc2uu\xa3\xc0\x9cp\x00@\x18\xf5,\xc2\xa8E\x11\xc1\xc6\xfc\x07\xc2\xfd\x88\xcbA]\xa3\x11\xc1\xd4\xa7\x06\xc2\x7f\xab\xd2A\xdd~ \xc1F\xa1\x08\xc2\x8f\x83\xcaA\x9d\xee\x81\xc0W\xb9P\xc1\x9b\xdb1\xc1\x0b{\x88\xc0.&G\xc17\xa6&\xc1\x9e\x84\x84\xc0\xd8\xf4F\xc1\xc9\x0f>\xc1\x8d \xf1A\xb8\x15g\xc1\x93\xbboB\xa5\xbd\xf1A~\'k\xc1\xd7\x89sB\xf6y\xeeA\xfa\xaaY\xc1\xfc\xe9oB\xe1\x01\xd6\xc1\xf1\x00\xb8\xc1\xb3\xfa,B\xd4\xc6\xd3\xc1\xdd"\xbb\xc1\xc0o0B\xdf\x0c\xdb\xc1\x87\xe9\xb2\xc1\xdfH.ByS/A\xcd\x1f\xc9\xc12\x87\xbf\xc1\xfe")AB\x92\xc2\xc1U\xe9\xc1\xc1p\')A\xfb\'\xcb\xc1\xe9\x9d\xb8\xc1\xbc\xc0AB\xb7\xb63\xc2d\xec\x9cAddDBi\x042\xc2}\xa5\xa1A6\xdf?B\x9d\xfb5\xc21p\xa1A\xf04\x0bB\xc0y%B\xc6.\x81\xc1\x18$\x0cB\xa7\x89(B]\xb6x\xc1\xe9\xcf\x0bB\xdc\xb7&B\xd1{\x88\xc1\xc8\x89\xf7A;?\xc7A\x9cdKB\x96$\xfcA\x95g\xc2A\xc9\xf4LB\xb6\x03\xf7A>\x92\xcdA\xb9\xf2MBk\xffIB\xca\xd8\x0b\xc2\xeel\x9eB\x8c\xf6JBR\xf9\x0c\xc2n?\xa0B\xe7\x0cMB?\x91\t\xc2\x8e%\x9eBo\x0e\xd7A3\xdea\xc2d\\]A\x02"\xd5A\x1e3b\xc2h#lA\xd0\xd4\xdeA\xd8\x7fa\xc2\x1d`^A\xd1\xeb0BIgE\xc2\xd0V\xfbAk\x0b0BO\xf4H\xc2\x1d\xc2\xfcA\xc1\xb74BbyE\xc2M\x93\xf9A\xae0+B\xef@\xa0A+\x0f\xa1AC]*B\xf4f\xa2A\xf2\x19\x9aA\xe2 /B\x9d%\x9fA}\xf9\xa0A\x00\xb2\xc7\xbf\x83\xea\xd9@\x01\x0e\rAn0\xf9\xbf\x95U\xd2@U&\x1bA\xa0n\x84\xbf[m\xf3@\xe65\x10A2\xb8\xea\xc1\xe0\x0b\xa6B\x16\x9f\x97A\xfe9\xed\xc1\xf2\xc4\xa6B\x8c\xa7\x9eAy\x18\xec\xc1\x91$\xa4B1\x14\x99A\x91\xd8kB\x04\xa1-B\xe7[BA\x11GlB\x7f\x1a-BLhQA\x13\xf8kBn\xb01B\x11R@A\xbe}\xc3A\xf1\x19L@[\xc2)A\xf4\xcd\xbfAU\xc3\x13@M\xb2*AY\x14\xc4A\xedP`@J\xd68AZ@\xafAU\xa8\xd7\xbf\x80\x89\x86\xc1n\x80\xa9A\xd5\xa9\x86\xbf\xc5\x0e\x87\xc1\xa9#\xb1A\xf5 \xfa\xbf*;\x8d\xc1\x8b\\\xe6AJ\x05\xb4\xc1\xeac9Bp\xc1\xeaAnc\xb5\xc1~\x85n\x1f3\xc2nz\x1aB?U<\xc1\xb8r\xb1\xc1\xc6\x04!A1T>\xc1!,\xb8\xc14\xa4\'A\x04\xc55\xc1\xfcE\xad\xc1\xea|,Avp\xbe@\x1a\x84\xa1\xc1s\xf5\xacA\x89\xce\xbf@\xf7\x00\xa4\xc1\x0b\x07\xb4AB}\xdf@\xe8d\xa0\xc1\xa8\xcf\xabA\xb9\xfavA\x87y\xf7\xc1\x03N\x88A\x05YoA8\xd6\xf6\xc1\x05X\x8eA\xfa\xc7\x80A_v\xf2\xc1\xf6\x9b\x88A\x16v\x15B\xb3\x8a\x87@\xd8\x8c\x8fB\xd4\xdf\x15B\x18\xe0T@\xd8\xcc\x8fBp\xf1\x18B7\xd7\x8f@\xc5<\x8fB#2\xaeA\x06\xd8\xd4\xc1Q\xa1\x8fA\x9an\xabA}\xde\xd6\xc1\x0ch\x88A\xf6\x91\xabA\xc0[\xcd\xc1kq\x8fA\xedK+A\xc9.\x13\xc0\xc8\xf3\xe4A5R5AD\xd0=\xc0\xb9\xa8\xe4A\xfa\x96&A\xc3\x00\x1d\xc0-\x07\xecA\xdfL\x05B9\xd0\xa1\xc1\x06n\x8fA\xa0\xd9\x07BP\xd0\x9d\xc15\x98\x94Amg\x04B\x85\x9a\xa7\xc1\xf8@\x93A\xb0.\xa0A"_k\xc1\x18\xce\x02\xc2\xdf\xeb\x9cA\xc6\xd0_\xc1\xae\xbb\x00\xc2KX\x9aA\xa3\xf7v\xc1\xb2%\x03\xc2<\x80\xb4\xc0!1\xbf\xc0\x87\x9e\x8dA\xe5=\xae\xc0\xd6\xee\xb8\xc0V\xed\x94AB\xbd\xab\xc0\xb2c\xdc\xc0H#\x8eA}\xdd\xfcA]C\xc9>\xa4&\xc3A\xd5^\xf9A\'\xfdc?\x0e\xf2\xbdA\x86\\\xf8A\xd3\xb1\xe2>\xd9\xbc\xc9AM\xef\xdd@"\xa6\xaf\xbc\xb8\x032A\x8d2\xef@\xbb\xcf\xe2>\x99\x941\x8eB\x1d^\xf9\xc0\x08\x00\xd9\xbf{/\x91B\x8f\xc2\x83\xc0g\x0f\x90@\xf76\x10\xc1\x06\xb1X\xc0\t\xac\x87@\x16\xa1\x07\xc1w\xe3\x9b\xc0*1\x90@\x7f\x9f\x06\xc1rA\x02\x87a\xc2\x95m\x7fA4\x18JA\x95J_\xc2\xdc\xef\x82A;\xf32A\x8fK_\xc22\x19yA\xe7\xe47A\xf67$B\x0f\xc8\xefA\xf5*BAU)#B\xd6\xc8\xeaA\xa3\xab,A\xc6\xed#B-\xe3\xeaAuq\xb2\xc0\x80\xa7\xa2\xc1\xce\xd8\x80A-\xab\xa2\xc0f\xd2\x9e\xc1!*\x86A\xd0\x81\xb6\xc0\xa6\xbe\xa8\xc1Q\xce\x84A")\xbeA\xab\xc8b\xc1+:\xf3A\xcc\x91\xbdA\xcb\xbdp\xc1\xbf\x1e\xf7A\x00\xe5\xc4A\xc8\xd5e\xc1\x9c@\xeeA\xc4\x9e&A\xae\xcf(\xc2\xcdf\x83B\x17\xbf2Ai(+\xc2d\xce\x82BA\xc3"A\'\xd5*\xc2\xfc\xee\x84B3\x9a\xdfA\xa9fL\xc1g(|B\x8a`\xe1A\x15?N\xc1\xd7\xe5\x7fB\xd9L\xdeA`6[\xc1\xea\xadzB\x93\xc9\x1eB\xfdd\xc5\xc1\xdf;DB\xaa\x9c\x1bByd\xc3\xc1\xaekFBa\xb9 BaA\xc8\xc1$%GB\x86\xf5\xff\xc1\t\xcal?\x1fc\xbbA\x97\x07\x03\xc2\xf3\xf3\xaa?\x04\xb4\xbfA\x1f\xdf\xfa\xc1\x19\x90:?\x8f\xeb\xc0A\x94\x97\xd4\xc1\xda\xc2\xf0A\xa5\xfe\x85Bj\xcf\xda\xc1\xc1_\xf3AD\x0c\x87B\xdf\x8c\xce\xc1q\xab\xf5A=\x83\x86B=Y\xdfA\x1ck!B\xfbzWA>\x9d\xdaA\x96\xe5"BR\x96bA\r-\xe6A\x82\x13#B;\xd8YA\xb6\xeblA\x13.y\xc06\xea\xb3\xc1\xd6\xc7kA\x8cj\x8d\xc0I\xd5\xad\xc11\xd3jA\xc5ZD\xc09R\xb1\xc1$\xa6\x1bB\xbc\xc7\xc8A\x12\xd2\x90B\xf9I\x1eB\xcbH\xceA]\xb1\x90Bg"\x19B\x18\x87\xcdA\xd4\xc3\x91B]\xf7\xd3\xc1\xac\x11\x9b\xc1;\xd5x@\x17\xad\xd3\xc1$\xe2\x9d\xc1P\xb6\x99@\x0f\xbf\xd5\xc1VS\x93\xc1\xc0w\x83@\xe2\x8a2B1\x94\x16A\n\xff2\xc1\xdbC6B\xd5\x9b\x13A\x1c^/\xc1\x98A2B4\x80%AmV0\xc1\xb1B\x7fB\xad\x85\xdb\xc0\x9c\xef\x99B\xa3\t|BF\xa1\xcf\xc0\xcc\xae\x9aBq\xdb\x80B\x05\xad\xd1\xc0\xe3Q\x9bB\xa5b\x91\xc1\x88X\xb5\xc1d9f\xc1\xc8\xb5\x92\xc1\xa0w\xb5\xc1\x054W\xc1\r\x13\x99\xc1\x97w\xb7\xc1\xec\xa0j\xc1b\xcd\xc2A~\x00!A{8\x94A\xba!\xc4A\x94\x98\x11A)`\x92ADm\xc5Aj\xb0(A\x8b\x1c\x8eA\x97\x1b_\xc27\xd5cB\xfb\xa3+A\xfc\'_\xc2K\xc6eB\xce\x9d9A\xa9\xd4[\xc2W\x83aB\x11\x01.A\x1d\xf2 A\x85\xad\xbc\xc0\xe5\x90OA\xf1\x82$A}\x8c\xdb\xc0\xb8\xbeOA\xffj*A\xb9\xd7\xb3\xc0\xaa\xdfZA\x8cL\xb8\xc1\xdb\xbe\xa2\xc1`\xba\x99B\xe9\x1d\xb9\xc1Z\xd5\xa9\xc1\x01\x8c\x9aB\x00N\xba\xc1\r\\\x9d\xc1I\x14\x9bB\t\xd8:?J\xfe\xda?O\x1b\x8a\xc1\xcfV\xaa?\x88+g?\x08\x02\x8b\xc1\xaa\x0b\xd1>ym\xda?.\x14\x83\xc1#\xea\xfb\xc0\xb4\xd8lB\x15\x17\x80B\xd7\xed\xe2\xc0\xfc\xfbnB\xf6\xd3\x7fB\x9b\x01\xfe\xc025jB$;}B\x16\x1e\xdb>\xda\xceLBKq A\x1e\xe9\x11\xbe^UKB\x0f7+A\xc7RP?o\xebOB\x03Z)A\xd1\xb6\xda\xbf*A\'\xc2yZ\xb0A\x02\xc9\x13\xc0\x0f\x9d)\xc2\xd5\xf0\xacA\x045\x8c\xbf\xb6\xbe&\xc2\x9b\xf6\xa9A\xc6w\xd2A\xab,\x80A\xa9z,B">\xcdA\xc8o\x81A\x17y/Bf^\xd8A\xa2\xe8\x7fA\x01\xd7.B\xa4\x16\x16A\x8c\x1b\x0c@\xe3]\xdbA.K\tA\xea\xda\x0f@\xeb\xf7\xd5A\x9e\xf3\rA\x18a#@m\xc3\xe1A/CjA\xb4\xf8\xcb\xc0tT-AE\x08aAg\xd4\xda\xc0[\xb47A\xb9tpA\x039\xb5\xc0(\xe85A!\xafcB\xb7w\xc5\xc1\xd9\x99\xecA3\xd6eBs1\xbf\xc1\xdd\xca\xedAcvdB\xe5\x0f\xc9\xc1|\xd5\xf2A\xfc\x0f\xa0?\x8b\x87\'>\x06\x15!B\x8b0\x84?\\M\x11\xbf\xf0\xd1"BvN\xe3?\'#\x1c?\xa7\'$B\x87\xb9\x8d\xc1\'*\rB\x95QlA\xa7r\x88\xc1\xf4\x83\x0cB\xf7_wA\x9b\x18\x94\xc1\x97I\x0eB\x17\xd3uA\xc6H\x8a\xc2U\x7f\xa6\xc00\xd0%B\xee\xb8\x89\xc2\xbe\xcf\xb8\xc0#\xd6(B_:\x8a\xc2\x024\x89\xc0`\xf8&B\x8b `A\xa61\x1b\xc1WN\xc2A\x89\xd8VA\xf3\xe4\x0e\xc1\xec\xf1\xc3A\x9a\xacaA\xb4\xd4\x1a\xc1\xdf\xbe\xbaA\xf1u\rB\xc2\xc5\x92As\x92\xeaAX\xda\x0bB+\xa0\x8cA\x1bT\xedA\x1b\x1e\x0eB\x1aa\x97Am\xa1\xf0A\xf4\x02\x99A\xb0/\x06\xc2W\xbc\x83\xc2\x9bn\x98AP\x00\n\xc2r\xeb\x83\xc2\xb5\x94\x9fA\xa6\x83\x05\xc2~\xae\x82\xc2\xd0\xfb\x81B@A)\xc2YQ\xc2@\xbd\x1d\x82B D,\xc29\x87\xd3@\x94<\x81B\xbaP&\xc2-\xef\xd1@&|HBy\xf7\xee\xc1\x1eV\x9c\xc1\x93\xc8HB]\xe2\xec\xc1\xfd\x00\x95\xc1S0LB7\xb5\xee\xc1\xd5\xbf\x9d\xc1\xcf\x97PB\x18\xac\xa9\xc1\xd5\x829Af\x03TB\xa0\xff\xaa\xc1[>@A\xa3\xf1MB\x07\xf3\xaa\xc1"\x92DAf*\xa5\xc1\xf7\xea\xb2\xbf-\x83\x82A\xbd$\xa9\xc18\xdb/\xbf\xde|~A\xd4\x92\xa7\xc1\xf5=\xae\xbf\xa7\x80\x89A\xbe\x7f\xf6\xc1\x9aJ\x0b\xc1\x97\xad?\xc1\xd0y\xf7\xc1|\x85\x00\xc1L\t3\xc1\x07u\xef\xc1\x82\x82\x12\xc1\xb7M<\xc1\xf0k\xa7\xc1]\x95WA\x87o\xb7\xc1\xc0\xeb\xa0\xc1\x8clYAeX\xbb\xc1\x81K\xa5\xc1\x06\x81RAV&\xb0\xc1\x9c\xc8\x82\xc0\xdb\x8a\xae@\x1f<\x81@\tlf\xc0B0\xb5@a\xc4\x99@\\\x06\x95\xc0Oh\x98@%S\x8d@UB\x05B\xdc\xee\xdaAJ\x1cqB\x1b\x88\x01B\xe8\x9e\xdbA\xaa{rBx?\x07Bl\\\xdcA&QtB\x1c*\xbd?O\x0c\x8c\xc2\xf2\xcf,B\x8c\xda^?\xec\xe0\x8c\xc2\x1a\x81/BQ\xfe\x00@\xf2\xe4\x8a\xc2\x9c8/B~\xd2\nAO\x08\x9c\xc1\xcb%\xaaA\xfe\x98\x0cA\xe7\x7f\x94\xc1UW\xa7A\x9ba\x15A\x1d\xe9\x9c\xc1\x02\x1c\xb0A\x93\x07\x97\xc1,\xcb\x8a\xc1o;HAR\x1c\x93\xc1\xfe\x9b\x87\xc1x\x8bTA\x1d\xfa\x9a\xc1\xb9\x90\x90\xc1\x85\xf3OA\x08.k\xc21\xf4\x16\xc2^v\xbfA~\xe8i\xc2Y>\x13\xc2\x0b\x98\xbfA\x97Hj\xc2\xbe-\x18\xc2=\x1d\xc6A5l\xb6A\xc7G\x10\xc1\xb0\x18Z\xc1*\xef\xbbAv\x7f\x12\xc1\x13L~\x1eB\t\xb0\\BW2\xe0\xbeW\x12\x1cB\xfa\xbd^BC\x8e\'?\x1eV\x1fB\x89\xe4_B\xb3\x16\x01\xc1TD\t@4\xf4\xcb\xc1\xaa<\x07\xc1\xdc\xc87@$e\xc7\xc1\xf8s\x05\xc1q\x8d\xaa?\xd4\xef\xc8\xc1\xed\x16\xed\xc1\xa7\xd3u\xc1\x84\x8b\x0cB\xc4\xba\xed\xc1\x9f\x06{\xc1\xaf\x17\x10B \xe3\xed\xc1\xe5Lf\xc1\xc7\x13\rB<\r\x89A;\x0cc\xbf\xb5\xa7fA?\x1a\x8fA\x96\r\x84\xbe\xcc\x8ceA\x08\x8a\x85A\xe8\xff\x01\xbfC\\qA\x88\xbaqB\x12J\x7f\xc03=rB\xc0\xa2oB\xac\xf1\x92\xc0\xd1 pB\x159qB\xa6\x08\x8a\xc0\x84\xd9uB\xbc\x8b\xe5\xbfx\'\x0fB\xa9\xaeoB\x86\x8a\xdd\xbf\xce\xf6\rB\x15\tsBH\x95%\xc0\x81\xea\x0cBq\xa0nB\xdb*\xaf\xc1\x14Z\x1bB9\xc6gB\x9a\xf5\xa9\xc1\x80\x06\x1eBbagBW\xbb\xaf\xc1\xa2\x84\x1bB}\x08lB\xefp\x1dB~\xc9\xccAf\xc1\xbc\xc0\xd4\xbe\x1cB5`\xcdA+\x94\x9e\xc0\xa7v!B\x0eB\xcdA\xcf\x8d\xbe\xc0\xcf\x87\x84\xc1`v\x81\xc2\xc6W\xa3A;\x84~\xc1\x07\x08\x82\xc2\xd8\xa3\x9eAGC\x82\xc1#\x88\x82\xc2\xb38\xa9A\xcaC\xe3A\x92\xda\x9cA\x99l\x03CR\x1c\xe6A/&\x9dA7X\x04C:\xb1\xdbA\xba\xbb\x9aA\x86\x9a\x03C\x85\xa1\x1d@\x91iA\xc2\x8d\x1a\x9eB^\xddK@\x9ct@\xc2\x81n\x9fB\x05\xda\xe2?\xa9\x8e?\xc2\x99\xbc\x9eB\x0cT,@v~\xc0\xc0w70B\xed8!@\xbb~\xab\xc0\xc1\x033Bu\xe0#@\xb7U\xde\xc0\x18P2B\x86\x94?B\xff\xa0\xaf@\xedS\x8dAO#BB\xc3x\xc1@yX\x89A\xaa\xc9=B\x88\x0b\xc2@\x08\xd4\x92A3\x18\x1fB\xe6\xd4NAG\xd1fBl\x83!B\xcd(KA0\xefcBu\xc0\x1cB\xe9EAAc1gBp\xd4\xa4A\x11\xa2\x07\xc2\xf7\xcb\x08B\xa4\x95\xa5A\xa7\xc1\x06\xc2K\xae\x0cB\x8d\xa9\xaaAQ\xc4\x05\xc2\xc7\x00\x07B\x84\xb6\x9c@63\xe0\xc1\x1d\xb3\x9dA\xaf\xb9\xaa@\x97\xa1\xe0\xc1\x0f\x11\xa5A\xf8\r\xb3@\x10\xc6\xe3\xc1 \xae\x98A\x9b\x85U?\xbde\xc0\xc1M\xe4\x08B\xdd\xd4p?\x0b%\xc4\xc1\xfc\x7f\x0cB\xd8>\x95\xbd\xfa\x89\xc2\xc1\xac\x06\x08B_te\xc1\x8f\xa9\x9fA\xd8\xb1\xf0\xc2\x846f\xc1BS\xa7A\x95L\xf1\xc2\x86OV\xc1Ab\x9eAP?\xf0\xc2\x9e\xb4\x0eB/\xe0\xff\xbf\x06,5A\xaf_\x0eB\xa6\xc2\x1b\xc0\x00\x8bBA\x9e\xaf\x0eB\xcc\xb9\x89\xbf\xc9\x9c9A\x8bE\xde@\xe1~V\xc2\x11\x82\x83\xc2\x9c|\xe6@\x85\xdbY\xc2y]\x84\xc2\xbfY\xfa@\xe3\xbaT\xc2y_\x83\xc2\xfe\xf2\x12\xc2\xbe\xe52\xc1: \xa5\xc2s\xa5\x14\xc2o\xf5%\xc1\xa24\xa5\xc2&\x83\x13\xc2\xdfD6\xc1;)\xa3\xc2W\xca\x81B0\xf3K\xc1\xc6\xd5\xb5\xc1{r\x82BRaY\xc1\x9d|\xb6\xc1G?\x81B.nL\xc1`j\xae\xc1\x1e\xf3\x98A\xea\x82\xce\xc0\xaba\xb8A\x9e\x04\x9dA\xc8\xc7\xb2\xc0\x92\xb5\xb8A\xed\x88\x9cAe\x9f\xde\xc0Q\xf3\xbdA\xb1Z\x15AR\xb6\x82\xc1\x8b\x0ebA+\xff\rA\x13\xc7\x80\xc1V~oA\x84@\nA;\xa6\x86\xc1\x92=\\A\xd8\xb4\x87A}f\x0f\xc2\xf7h\xe9A\x05\xeb\x8bA\xd0\x03\x0c\xc2=Y\xe7Agr\x8dA5\x02\x12\xc2\xdb\xd8\xebA\x91\xbe\xc6A \xa9\x0c\xc1/&\xebA"\xfa\xbfA<\xb3\t\xc1Qd\xefA^\x95\xcbA\xe0>\x08\xc1\xba\x0c\xf1A\x87\xb3\x84?\xdcM\xcf\xc1\xd07\xf4A\xd2\\\xf6?^\xb9\xcd\xc1[\x9e\xf1A\x1d\xf8\x9a?\xde\xfd\xd3\xc1\x164\xfaA\x96\x1c\xd5A\xe4 \xc2A(\x08nA\xd6\x12\xcfA\r\x81\xbeA&\xferAHV\xdaA\x0c\t\xc0A\xb8\x03wA\x96\xd6#\xc0b+\n\xc2\xffZ\xa8\xc1\xd5\x80#\xc0\x96\xcd\x08\xc2\xda!\xa1\xc1\xaa|Q\xc0P\xa8\x0c\xc2\x02\x16\xa9\xc1\xa1\x80\x8a\xc0z\xe0YA\x03f$A\x8d\xe3\x94\xc0:l\x8b\xc0i\xa3WA_\xd63A\xa8\xf8\x17B\xb6\x9e\x15\xc2,\xf1\xe2A\xa8\x00\x16B\x8a\xe7\x15\xc2T\xb2\xe9A\xd0\x7f\x15B+\x8d\x16\xc2\xc1/\xddA\xf7\xef$@\xbe\r\x0b\xc2\x02\xd2d\xc2\xa1\x86$@\xfe\x8e\t\xc2\x8e\x01a\xc2\xa1\xfc:@#\x9b\x0e\xc2[\x16d\xc2.>\xefA\xaa\x1c\xc4\xc19\xfb\xf0\xc1\xadd\xf0A|?\xcb\xc1\xa4\xb9\xed\xc1\xce\xf2\xe7A\xd9m\xc5\xc1t\xe8\xf3\xc1V\x83\xa4\xc1\xefi\x84\xc1e\x8b\'A\x1d~\x9e\xc1\xc2\x93\x88\xc1|\x8c,A\xa18\xa3\xc1T\x0e{\xc1i\xdf/AxI\xa1\xc1T\x8a:\xc1\x8ev\xe6AK\xd4\x9d\xc1\x16f4\xc1\x9c\xbb\xecA"\x98\x9c\xc1\xdf\xc2E\xc1KB\xe5A\xe7q\xbfA\xd0\xc9\x90\xc1\x8a:\x06\xc2(\x7f\xc4A\x96\x91\x96\xc1sg\x05\xc2\xf2\xae\xc2A\xb7a\x8a\xc1\xb5\xc3\x04\xc2\xe9I\x8e@\xfd\t\xa5\xc1o"\xf7Au\xa4|@\xc0C\x9e\xc1g-\xf8AT\x97\x87@\xe5\xcd\xa8\xc1\\\xad\xfdA\xa4\xa0\x8d@a\xf3\xb0@:\xcd\xbd\xc1\xaf\xf1\x95@{\x80\xbb@9o\xb6\xc1\x01jg@7\xd7\xa1@\xfb\xdb\xbc\xc1\r\xd5h\xc0<\xa6\x0b@E\xd1\x1aB`\x9b_\xc0\x9f\xd1\x13@o\xb4\x1eB\xac\xbb\x80\xc0n\xbc@@\x9d\x16\x1aB\xa1V\xfcA\xfa\x81\x01A^y\x03Bv\xa6\xf5A8P\x08A\xe1\xe6\x02B\xb0{\x00B\xa5\xd2\nA\xa2\xbb\x05B\r\xe1!\xbf\xe8\x8b\xca\xbec\xe5K\xc2\xbf(k\xbf\xb2\xc1\xbd\xbea$H\xc2\x8c\x10\x99>\xe1\x0e\x93\xbe%\rK\xc2_\xc8\x8aA\xfc\xd6;\xc10b\xb3A\x13\x11\x91A\x1c\xffC\xc1U\x1f\xb6A\x95Y\x88A-|4\xc1\x8f\xb5\xb9A*\xb8<\xc2\x98\xc2r?\x12\x1c]B\x04G9\xc2\x0et\xef>\xf5\x00^B\x99\x81>\xc2L\xa0\x89?\xf1\xbf`BUW\x1bAY\x8c\xdcA\x8e}\xa2A\xee\x94\x0eAp"\xe0Atd\xa0AZ\x95\x1bAMg\xddA\x04r\xaaA\xae\x00\x85@\xfe\xbf\x92\xc1\x81\xc6\xa4A\x8e\xc7X@\xf9\x8c\x97\xc1\x8c\x1d\xa4A\xc2i\x99@\x10\xce\x97\xc1^\xd0\xa7A53XBr\xd4\xf5A\x93m\xbf\xc1`WVB}\xa7\xf9A\xe1N\xc5\xc1-|UB\x11l\xf0A\xd4%\xbd\xc1\xee\x8bQB\xaa\xdeg\xc1\xb1\xa7zAIYUBO\x9cj\xc1\x1f\x03xAZIQB\xa1\xf2\\\xc1Q\x15\x82A\xb7\xce\xf2\xc0U$\xc0A\\\x8c\xe7A\r\x94\x07\xc1\x08\xd5\xc3A\x8fb\xe6A\r0\xfe\xc0\x87}\xb9Ap~\xeaAq\xf58@\xb9\x980\xc1\x90?\x80A\x98\xa9M@E\xea-\xc1\xa8\x81qA\xef5]@\x12\x14&\xc1\xe04\x84A\x0c\x9a8@\x9f\x15\x97\xc0\xf4P\xa1\xc1\xa2\xfdE@V0\xa6\xc0\xfd\x19\x9b\xc1\x99\x16\r@\x87\xd4\xa6\xc0d\xba\xa4\xc1U\xd8yAa\xeb\xee\xc1FE$A\xd3k\x7fA\xc1\x11\xf5\xc1\x9b,,A\xb61rA\xdc\x90\xea\xc1\xc9\x15.A\x17\xeb\x11AY\tOB\x94\x16\xe6A\x8d\xde\x19A\x86\x8bQBn\xfa\xe9A!\xb0\x13A\x18\xffKB\x81\xe8\xeaAo\xc2(B\xe5\xaa\xbf\xbeD\xe9\x98B\xb2\xb7*B\x05\x90\x9b\xbf\x9c8\x99B\xbb\xbc&BOT\x8b\xbe\xd8\x8c\x9aB#\xbb\xa4@\xf0\x95m\xc1\x93v\xa5A [\xa9@\xe9\xd7t\xc1*=\xacA\xa6v\xb0@\x98*_\xc1\xf3N\xa6Ao\x03\xe2\xc1V9\x1bB\x15\x01+A\xa1\x83\xe8\xc1\xe7U\x1bBCJ3A\x91w\xde\xc1\xafY\x1eB\xf9O0A\x1c\xf5\xd7\xc0\x1d\xf1\xee?\xdb\xfcc\xc2g\x1e\xd0\xc0\x82\xac0@\xb5bd\xc2\xe8\xf8\xc3\xc0\xf2\xde\xc3?$`a\xc2\x83\xd9q\xc1\x16\x90NA\xd0S.\xc1\xd4 n\xc1\xc7\xe1QAx\xaf\x1f\xc1\xcc\xc9g\xc1\x94pDA\xc1\xe81\xc1\xef\xc4\x91B\xa71\xdeA\x1e\x0f\x01\xc2\xe6C\x91B\xccH\xe1A\xeb:\xfb\xc1\x14"\x90B\xe9\x15\xdaA\xd6\x12\x02\xc2]\xb4u@\x89\t\xad@T\xfb"\xc2\x8b\x1a\x80@\x8a\x9d\x93@\xb7\xd2 \xc2\xf2[M@F\x89\xbe@\xf7\xbb \xc2\x1d\x17\xa8A\x00zuA\xb0\x8b}A\x01k\xa9A\x98\xebkA_\x83\x84A\x18\x14\xa6A\x1c\x97\x7fAU\x03\x84A\'\xdd\x08B\x1e\xe3|AyV4\xc2`\'\tBy\xc2\x84AK\xe71\xc2\xa7)\x08B`\xe0rA\xea\xb11\xc2\x8a\x05oB\x11\x19>AL\x8f\xdaA-\x89lB\xf3y:A\x9bu\xe0A\x0eDrBc\x9aCA\xd9\x7f\xdeA.\x8aMB\x9dX\x0bB-\xeeJAS\xc8JB.\\\tB\x8e\xceRA]\xb7PB\xbb\xa9\tB\xfbUNA\xbd\xb8\x9e@\xc6)\xab@!M>A\x96\xb9\x8b@\xba\xe2\xb2@(YJA\xb7\x92\xb9@t\x1f\xba@\xfe\xe7BA\x9f\xcekB\x85\x04\xbdA\xe1\xcb\xaaA6DoB\xbf$\xb9A\x99\xb0\xaaA\x08\x88iB\x00\x12\xb8Ai\xb7\xa8A\x03\xb7\x80\xc1@\x83\x17\xc2\xb3\\\xe6\xc1\xac\x9a\x83\xc1\xd1#\x19\xc2\x8e\xb7\xdf\xc1"j\x86\xc1@\xc8\x17\xc2\xcb{\xeb\xc1:x\x05@3\xa3\xe3\xc1v\x0b\xa5A\xa2y\xe5?\xc5_\xdc\xc1\xf7q\xa6A\xe2v\xa0?\xca*\xe7\xc1\x1d\x7f\xa5A\xd2\xaf\x0eB\xbbqd\xc1\xe8\x93kB\x06\xc8\x11B\x00\xa2a\xc1\\\xe0mB\x93=\rB\xe6\xbbq\xc1\x8aPlB3k&\xc1\xfe|DA\xa5\xe1\xd5\xc2\xc8\x87"\xc1o\xc4LA\x13j\xd4\xc2\xce\xb31\xc1j\x8c;A^\x05\xd5\xc2\x1c\x87)\xc1e\xe7\xc2\xc2\x1eI\xd4\xc1\xad|\x1f\xc1\xe2\xb2\xc2\xc2>N\xd9\xc1\x10\xca$\xc1Eb\xc4\xc2\xe8N\xd0\xc1@\xe9\x89\xc1\xc5h\x00A;\xa4\x87A\xf3\x81\x88\xc1\x1er\x00A\x11\x19\x8fA\x98W\x83\xc1\x94W\xfa@\xcc\xe1\x84A\x18\xf3\xd3A\xe6\xbe\xc2@k\xab%A\xe9\x07\xdaA\xe21\xd4@\xa3\xc4)Ap\xf6\xd2A5\x0b\xb0@\x0fd1A\x01\x02^\xc1M\xe7\x80A\xce\x94pBzTV\xc1\xeb\xe1\x80AACmB\x9dJb\xc1\xe73\x88A\x8e\x94pB\x7f\xd0\x1eB\xfc\x1a\x8fAU\x07MB\xad\xf6 B\x88\xb4\x91A9\xffOB\xe2!\x1bB2\xbf\x8fA\xcdhNB5\xd9fBf\xf9\x12B\n\xf6\xab@\xf9\xcdcB"\xf0\x10BC\xd3\xb2@Z\x8bhB\xb1\x04\x14B\xb6\'\xc9@S\xf8\x96B\x0e\x8b7\xc2\x9d]\x03B D\x98BCV7\xc2\xe6\xae\x05Bu[\x95B*\xe75\xc2\x87Y\x05BmS\x10B\xeaw\x88@\xe2 AW\xaa\tB/\xf9pA\xa9\xa7AA\x19=\x0cBj\x0f A\xcf\xa9\x86A\x89\xeb\x06B\x83\xd3(AXa\x8dA!\xc5\x06B\xb3\x1d(A\x05\xf5\x81A<\x0e\x05BWV\x07B\xf4{\x9e\xc1\xd4\x11\xfd@\xd6\xc7\x07BC\xf3\x98\xc1\xd0\x9d\tAq\xa5\x06B\xc1>\xa5\xc1\r\xbe\x05A\xeb\x84O@n&\xedA\x02%\x1aBF\x08r@d\xe0\xedA\xf2\x8d\x1dB\xc3{\x1d@\xc3\xc8\xe8A\xc3\x9b\x1bB\xbe\x9d\x16B\x05\xdb B\xb5\xab\x9dB=b\x16B!\x87!B\x85\xa0\x9fB\xbd\x7f\x18B\x1f0\x1dB\x11\x9c\x9dB\x1f{\xab\xc0\xbf\x82^?\x07<\x0bB{\xe0\xb9\xc0*\xf8\xb0??.\x0eB\x06m\x93\xc0f\xad,?\xda \rB\xa5\xb8{A&\xa6\xe9A\xben3Ah\xd0\x83A>\x85\xeaAl\t>A\xff\xb7pA\xfaq\xedA\xdf/;Ae\xc6\x01A\x7f\'\x0cB\x93\xfbIB\xff`\x04A\xf4\xef\nB\x05\xddMB9\xad\xe4@B\xec\x0cB\xae\xc3JB}\xc0\x06B.\x1c\x1b\xc0\xfc\xff{B\x1d\xe0\tBB\xe3=\xc0\x87\xdf{B5\xe5\x05B\xce\x95\x0b\xc0\x88\xe1\x7fB\x04\xf3\xe2\xc1@\xd9\x85\xc0{\x84\xb8\xc1\xd9e\xdc\xc1/\xd3p\xc0\xac\xce\xb5\xc1\x9a\x8b\xe8\xc1hW{\xc0\xdf~\xb3\xc1m6L@\xc7\xf9\xd3\xc1\xbb\xea\x02\xc2\x81\xa8~@\xaa\xbf\xcf\xc1\xf2\x08\x02\xc2L\x81A@\xb81\xd7\xc1\xe43\xfe\xc1\xb3\x8f\x1cB\x89g\xf8\xc1\xd5\xaf\x8dB\xdb\x1d\x1bB\xbb\xec\xf4\xc1\xcei\x8fB\x94Y B\x1d\xaf\xfa\xc1\xdfI\x8eB\x98ip\xc0\xda\xae\xaa\xc0P\xdbEBc\xb8^\xc0\x97\xa6\xab\xc0]\x83IB\xac#\x94\xc0\x0b\xb8\xb8\xc0#$FB\xe3\xb9\x17B\x83,\xd6\xc0\x9f\x89\xf9AN\x8b\x18Bp9\xed\xc0\x13\xbe\xf4A8\xc2\x16B \x84\xdf\xc0-3\x00B\x00\x016\xc2D\xa3)B[K\x8c\xc1\x15[2\xc2\xca\xba(Bh\x7f\x8e\xc1Et6\xc2\xd6\x89-B\x18t\x8e\xc13f\xa9ATR9\xc1\xea\x83\x9dA\xc8\xc4\xa3A3\xc25\xc1{\x9e\x98AN\xcb\xa8A\x08\xe3H\xc1\xbb\xc9\x9dA\x15\x16\xd2A\xd4hq\xc1\x91\xe5\xa6B\xaa\xcf\xcaA\xfa\x1dr\xc1\x92\x8d\xa6B\x06\xc9\xd1A\xc6}m\xc1q\xd1\xa8B\x9d\xba\xc3A-\x8d\xbeA\\*\xe3\xc1\xa1\x05\xc2Au:\xbbA=k\xdc\xc1\x0co\xc0A\xeb\xd0\xc5A\x1b\x13\xe2\xc1\xc6h\x0bB\x1fAM\xc2\xf3tZ\xc1\xeeu\x0cB\xa1\xc6J\xc2\xd9\x19P\xc1\xa9[\x08B\x10.O\xc2\x9eSS\xc1\x85\xe9\xfc\xc1\x8dA?\xc2\xbf\x19\t\xc21\x94\x01\xc2\x88v@\xc2S\x08\x08\xc2\xd0i\xf9\xc1\\\x97=\xc2\xb6\xe1\x05\xc2\xd4\xea\x01A\xaa\x8b\xa9\xc1s^`Bw\x7f\xec@\xb2\xb5\xa7\xc1\xbdZbBV<\x0fA.\xb9\xab\xc1\x14\x99bB\xad\xc69\xc2\x8fH\xf0\xc0\xa3\xb1H\xc1\x9bC8\xc2\xca\x8c\xd5\xc0N\xbeK\xc1n\xf26\xc2l(\x00\xc1F*A\xc1\x97\xce\x17Bu\xe2U\xc2\xc19\x91A\x9aa\x16BW(Y\xc2\x833\x94A\xe6\x85\x1bB4\xa5V\xc2\x8d\xe9\x8fA\x99\xf0\x9e\xc0z\xc1WA\xa2#\x82A\x02B\x93\xc0\xc1\x9dRA\x10\xbe\x88A\xe1\x1a\x8c\xc0@+cA\xa1O\x80A\xb8\xa6\xd9\xc1%\x13\x88\xc1^L\xe5@\xdc\x96\xdc\xc1\t\xa0\x8c\xc1\xc0=\xfd@2\x93\xd4\xc1\x88\xdb\x83\xc1:\xe9\xf3@\xdd\xae)A.X\x94@\x0b\x03cAy\x1b"A9e\xa1@\xb2\x9eoA\x16B8A\xd7\xa7\x96@\xde+gA\xc1=\x05\xbf*\x13AA\xf0C\xcfB\xb0s\xbe>*F*\xc2\xb6\x98<\xc2U\xe6\x8fB\x99\xba.B\x16\xf0\xc4A;\x04\xffA7\xa7,B\xf5\xe0\xc0A6B\x02B\x9d\xa11B+\r\xc0A\'\xc6\xfdAc\xd6\'BHmbA\x04\x96\x02A6\\$BF\x04[A\xcb\x0b\x04A\xf08)Bz{fA\x02\xd3\x10Az\xcf\xe2\xc0\x92\x9e\xfe@\x15SmB?\xdd\xd1\xc0c\x8b\xe4@y\x8enB\xf7l\xf9\xc0?\xa1\xff@\xa6#pB\x94\xb2\x04Aa&\x18\xc2"\x82\xf7A\xbej\x11A\xf2O\x19\xc2\x06\x85\xfbA<\xc8\xf4@\x82\x03\x1a\xc2\xc3F\xfbA\x7f\xfb\xe4A\x87\x19\x9e\xc2 \x1d\xfa\xc1\x9aq\xe3A5\xa3\x9c\xc2\x87/\xf5\xc1\xc0E\xebA\xdb\xdf\x9e\xc2\xaa\x8d\xf6\xc1\xad\x16U\xc1\xfd\xbd\xca>\xc6x\xfdAa\xa4I\xc1T\xde\x1f?`\xf5\x00B\xb0\xfbP\xc1\xe7\x1d(?\x1f\xcd\xf5A;\x8fEB\xe3\xf3\x16\xc2@\x1f\x80\xc2\x96\xa6EB\x96\xb9\x1a\xc29W\x80\xc2\xab\x1fIB\x13\xa4\x15\xc2\x93g\x80\xc2\xf8mgA\xcd\x84X\xc2\xa0\x9e\xa4\xc1\xa2\x88tA\x1c\x8eW\xc2\xd1\x98\xa1\xc1\x92kjA\xdf\xf3[\xc23\xc2\xa7\xc1\xb5\xa2\'?\x1a\xc4^\xc0B\xcf\xfbB\x80\xb3\x85?\x84\xdc8\xc0\x8a<\xfdB\x1a\x03\xb6=\x1e\x14\x82\xc0\x92\xe2\xfcB\xe4\x0b\xa8@|\xe3\xfcA\xeb\xc8\xc8A\xb4\xdd\xad@\x14\xaf\xf7A\xa4[\xceA\x1bq\xc4@\xafH\x00B\xcf\x90\xc8A\\y\x0eB\xcft\x18\xc1,\xc5\xbeA\xf3\xff\x10B\xb9\x99\x19\xc1\x10\xe9\xb8A\x92M\x10B\x04\xbf\x0f\xc1\xc7\x1f\xc4AiN}\xc1\x1f:B\xc2\x04\xa5\x91A}Wp\xc1\xbf|D\xc2\xe5\x14\x92A\x8c0\x80\xc1\x87\x83A\xc2\xd8E\x99A\x12\xd8\x02A\x12\x11\'B\xd9cH\xc1\x93\xeb\xf5@\x99\xfb&B\x1b\x14;\xc1&\xf5\x06A\xdbx#B\xa5\x03L\xc1\xbc\xa9\x81A\n\x9c\xaf\xc1\x90=^B\xe5v\x86A\xa2z\xb1\xc1\xf1\xd4`B\xa0y{AU\xbe\xa9\xc1\x19\xee_B\xe8\xcf\x11BZ\x0c1\xc2\x0b\x08\x91B\x95`\x10B\xc1\xaa-\xc2\x86\xc5\x90B_i\x14B\x1fx0\xc2\xe9L\x92B\x14\x90(\xc2\xc1\xd2M\xc0\xff\x95\x81B\xf5\x16*\xc2\xb3FU\xc04r\x83B/\x06&\xc2\xa4&"\xc0Q\x9e\x81B\x03\xcduA\xe6|\x04\xc2\x97\x86\xe9A\x1aF~A\xad\x99\x01\xc2\xbb\xd5\xe6AJduA\x92K\x07\xc2n\xee\xe3Af\xa6\x03\xc2P\x8aMB\xbdE\xa3?\xd4\x08\x00\xc2R~LB\x08j\xc7?\xd4\xbf\x05\xc2\x13\xccLB\xda\xf2\x03@\xf8LuB\xbe7\x7fA\x96\x0e1A\xd7$xB^\x1c\x83A\xd5\xf39A^ErB{\xf2{A7];A7\x069B\xc9\x7f\x9b\xc1x\xda\\A\xc5E:B\xee.\xa2\xc1*VVA\xf8g7BH\xa0\x9d\xc1\x9f6jA\x02\x11\x8b\xc0\x8a\xa0}B1\xb6\xc6A\xb7\xe2m\xc0\x80:\x80BU\xb4\xc5A\xbbS\x94\xc0\x97\x05~B\x15f\xceA\xce-\xefA\x8c\xa8\x1fA\x15"u\xc1@\xc4\xeaA\xd3\xc1\x1eAP\xb0g\xc1es\xebA\xcf8+A\x9ag~\xc1Y\x9c\x83B\xac\xbf\x80\xc1\xd6\xf2\xf4\xc1\x00\x18\x84BzBu\xc1\xda\xe0\xf0\xc1`u\x84B\xa0\x89\x86\xc1\x18\x8f\xf0\xc1\x86.\x06B\x03C\xf0@\xab5{B\x002\x04B;;\xfc@\x17}xB\x97\xe7\x03B\xdd\x07\xf2@\x05>~B\xc1\x88wN\xbf\xce\xe1\xe8\xc1\x18\x1aRAb\xd0\x1c\xbf\xde\xa4\xea\xc1\xdf\xd7aAGo?\xbfH\xff\xe0\xc1\x8diRA\x85\xdc\xefAm\xe8\x03\xc1.\x0eZAo_\xf5A\xda\x95\t\xc1b\xd8bAWI\xecAu\x19\xef\xc0\xfd\xb8`A\xbd"\x01\xc2\xfb)i\xc1\xfc~\x91B\x88T\xfd\xc1Z\xbdg\xc1d\xf0\x92B\x1f\x8f\xff\xc1\xe3\xc0u\xc1\xf4}\x90Be\xa5-A\x8eA\xd7\xf3\xd2A\x14\xb0\xff@\xc1WNA\xbc\xc3v\xc1\xadZnAV\xbf\x8cBE\x19u\xc1\xa0\x05vA_\x14\x8bBn(i\xc1v\'oA\x00\x97\x8dB\x16 \t\xc2\xdc\xba\x7f\xc2\x7f\x1a|@F\xbc\x0b\xc2`X\x80\xc2\xd77\x92@\x9c\xa3\x08\xc2w\xf1{\xc28\x8b\x86@p9\xd3@\x9e\x18\x18\xc2\\\xd5(\xc1q\xe0\xd1@ I\x1b\xc2\xba\xba1\xc1k(\xc9@\x124\x19\xc2\x05\xac\x1b\xc1\x04\xfe^A\xb4\xb9\xd7A\xb8\xc2fA\x01M_A\xa34\xdeA\x17jnA%\xfdVA\xb4v\xd2A/\x94oA\xeb@\x8fA\x8e*\x83\xc1\xf6y\xddAp&\x8aAH\xf5\x87\xc11S\xe0AM\x94\x8cAr\xf1w\xc1\xc3\x9c\xdfA{tGA\x07U\xe5@\x88I~A8\x9dFA\xb6\xa3\xcd@\x1f\x8b\x84A\x1c\x18JA\xabl\xd3@\xc6/qA\xb0\xab/\xc0o\xdfDA\xde\x98c\xc1\xfcbh\xc0#\xc5HA\x0fmd\xc1d:\x1a\xc0t\x9dJA\xdf\x11>\xc1\x0e\xb21A\x99\xeb\xb0B}|P\xc1\x91,5AD\x8d>A\xd4\xdbh\xc1\xae\x1e\xf8A+\x96LAw\xdel\xc1z~\xf5AS\xf3@AL\x98j\xc1\xb8\x90\xffAB\xc7MB\x84s\xa6\xbfCj\x97\xc1\x10\xfaOB\x0f\x11R\xbf\xdcV\x92\xc1h!KBV\x13\xc3\xbf\xf1M\x91\xc1K\xe85B{-\xd0\xc1\xdaH\xcbA\xcd\x133B\x11P\xcb\xc1\xc6\xc2\xcdA\xfe\xed7B\x0b2\xd1\xc1U\x7f\xd1A\x0f\x1d\xd2\xc0}bf\xc1\xb85IA\xec\xbb\xdc\xc0J\xc9Z\xc1\x87\xd1QA\xb4\xce\xb9\xc0|Oj\xc1\xf3\xe1QA;/\x80\xc0\xfe\x88\xf0Ax\x99\rB\xb9<\x95\xc0JK\xf3A,\x16\x10B\xad\xc8P\xc0>K\xefA\xdf\xe2\x0fBv\x9d\x06A4\xac\xb3\xc1h\xde\xbbA\xe3j\x03A\xe7\x9c\xac\xc1\x1c\xa4\xbeA\x9dK\x0eA2\x8c\xb6\xc1\xf7\x8f\xc1A\xd6R\xbc@\xca\xd7\xb7\xc1\x0c\x03}A\xeb\xfd\xb2@\xab\xcf\xb9\xc1\xc5_\x85A\x83\x92\xcf@<"\xbd\xc1r[xAY.\x88\xc0p\x93\xef@\x0cAfA8Z\x82\xc0\x11\x04\xf6@\x08vuA\xb0\xdb\xa1\xc0h\x8d\x00AB\xdcbA\x8bh(\xc2)\x9a\xd0A\xd5\x8d\x88B\x0e\xc8*\xc2a\xf4\xd5A\xd4\x89\x88B\xa2~\'\xc2\xb3e\xcfA\x99[\x8aB\xfc\xe4\xd6Avz\xb5\xc1tC\xc0A"\x9b\xd5A\x04\xff\xb5\xc1\xd5\xb7\xc7A1\x8e\xdeAo\xca\xb8\xc1\xee\xe5\xbeA\xa0\xf2\x0fB\x04\x1a\xc8\xc1\xafuD@\xfe\x17\rB\x9c\xea\xc9\xc1\xbb\x7fi@\xb7T\x12BX)\xc3\xc1\x9akc@\xf4\xefA\xc2\x8b\xc5\xff\xc1/Q2A\xd3\x15D\xc2k9\xfc\xc1\x98\xad;A\x19\xd2>\xc2\xebn\xfb\xc1Lk2A}\xde\x1f@\x1eEH\xc2\xa1N\xddBO\x95\x1e@\xed\xb2F\xc2\xaf\x0f\xdfB\x14\x9d\x01@\xeb\xccK\xc2ct\xddB\xc6$<@\xbe\xd7\x15\xc2\xf9\xc2\x16\xc2"\x902@\xfe:\x19\xc2\xfe\x8d\x15\xc2\x9f\x14i@eN\x14\xc2\xb9\x94\x14\xc2\xdb\xff:B\x04\xe4\xd2\xc0\xf9\xfe\xac\xc1\xc6\x0e>B\xe4?\xd9\xc0mW\xa8\xc1\xc0.;B\x01\xa7\xe6\xc0\xf3\xf3\xb1\xc1\xa32\xf6A:\x8d"By\x1e\xaeA:\xdd\xf0A3\x04%B4E\xb1A+\xc5\xfcA\x16\xb3$B\xbc\xfe\xaeA\xc9<\xc1p\xbeuBE\x88\xac\xc1{I=\xc1\xbassBdR\xa4\xc1\x1f\xffJ\xc1\x86B\x06\xc2h\xf2xA\x15o#\xc2\xa2\xb7\x02\xc2Z!{AF\x00"\xc2\xe4E\x08\xc2\xcb\x9fvA\xea\x14 \xc2\x04fi\xc2\x16Cm\xc1\xf5\xf8k\xc1\xc5ae\xc2\x9a7p\xc1\xb8\xaeg\xc1\xb3\\j\xc2\xc3\xd2e\xc1\xb1S`\xc1O_BBp\xa6\xb2\xc1\x91\xda\x04B\xa9~?B\xe4n\xb7\xc1\x02$\x04B)\x83@B\xdf-\xac\xc1\x9e-\x05B\x9a\xeboB\x80\x84\x0e\xc2VI0A!^qB4\x18\x10\xc2\n\xa1=A\xfd"pB\xfc\x02\x0b\xc2\\L4A\xfa\x86:B\xae/\'A\x0eZ@A-g7B&3 AJ\xc69A\x98\x95;BR\x9c\x1cAX\x19JAN\xce\x86B\xaeJ&\xc1\x8e\xa9\x95Br\xc7\x85B\xa2\xa70\xc1\xde\x81\x96BpY\x88BUl&\xc1\xe7\x9b\x96B@q\x1bA)\xc0\xe7\xbf\x15)\x04\xc2\x06\x1c&A\x1e\xe3\x8b\xbfP\x03\x04\xc2\xd5\xb4\x1dA\x91\xc1\x0f\xc0\x8fy\x00\xc2\xc4&.\xc1$.\t\xc2\x8cW\x90A\x0c<9\xc1_m\x0b\xc2[\xfd\x8dA&\xdc-\xc1\x99M\n\xc2l\xf8\x97A\x90C(BN\x0b\x18BN}ZA\x1c\x98*B\xfe\xcb\x18B\xc7$NA\xc5\xda)Bh\xff\x14B\xc9\xe8`A\x978\x1eB|K\xcc\xbf\x97\xe4\x91\xc1\x16\x10\x1bB\x8a=\xe3\xbf\xfen\x8d\xc15\xf1 B\xac"\x0c\xc0\xab\x83\x8f\xc1P\x08\xdb@\xf0\x9ewB\x02v\xdbA\xed\x9f\xf1@U.yB\xcaE\xd7A\xbc\x02\xe7@RHxB7w\xe2A\xbe\xf3PB\xef5\xe5A\x93A^\r\xf4\xc0\xe4\x08\x07\xc2\xec\xbc(\xc2\x8ah\xc0\xc1\x88\xac\x0eB\xa5<*\xc2\xfdX\xbc\xc1\xe2\x04\x12B\xc5\xb3(\xc2&\xc6\xc7\xc1K\xae\x0fB/\xe6\x08\xc0\x0c\x8ba\xc2\x80C\x97A\xbdl\n\xc0\x0e\xdf_\xc2\xfc"\x9eA\xe9{\x9e\xbf\x0f\xebb\xc2\x88\xe4\x96A\x15\xe7\xf9An\xf6\xa4?b\xa4\x89\xc1\xbe4\x00B\x19\xfc\x86?\x1dR\x8d\xc1\xf5\x1d\xf5A\xd7\xff\x1e?/\x86\x8a\xc1\x12ep@9\xd9\x0fB\x1eT.B\xc0AX@*q\rB\n\x1c1BEz\x81@u\xcb\x12B\xef\x900B\x16l\x8b\xbfq_\x10\xc2\xad\x19\x14B(\xa1\x89\xbeK:\x12\xc2\x04\x7f\x15B`\xe5\xe4\xbf\x84\xbc\x10\xc2\xa8\xcc\x16B\xd9\xdf\nB5\xd2\xa5\xc1HR\xe8\xc1p\x03\x0eB\x90Q\xa4\xc1\xce\x8a\xe4\xc1,\xf5\x07B\xebJ\xa2\xc1\xdd\xf9\xe3\xc1\'\xca\xdf\xc1G\x92G\xc2I\xcd\xd9@\xcfa\xe4\xc1\xf7\xa5E\xc2lN\xef@=\xc5\xd8\xc1\xa0\xcbG\xc2\x1e\xfb\xe5@\xc2\xdb\x1eB\x9d\x93\x1c\xc1\n\xcd\x1fAkO B\xf6\x8e\x14\xc1\xf9%,A\xe9$!By\xe1(\xc1\xc5T\x1fA\x02\x07\x98\xc1\xe6a\xfc\xc1$\xd2\xb9A\x7f\xb0\x9e\xc1Z\x10\xfe\xc1\xda[\xb5A\xd9f\x94\xc1\xe9\xa5\x01\xc2if\xbaA\xa82\xec\xc1\xab\xeaAB\xa3\x9c\xfeA\x0e\x10\xee\xc1zn>B\xb2\x1e\x01B8\xdf\xe5\xc1\x12IAB6\xf3\xfaA\r\x02\xa9A\x1b*\x97?\x9a7\xdfA\xc8\x85\xa9A:>\n@g}\xdfA\xfc\xdb\xadA\x953[?N{\xe4A\x8eh\x0f\xc15\xcaKAro\x00BJ\xc7\x19\xc1\x1eb?A\xd3 \x00B\xe2\xc2\x06\xc1|,HA\xc9\x84\x03B\x1fd\x14\xc2\x98\xce\xbeA\x96k\\B\xcf\x90\x15\xc2\\\xdb\xc5A\x9c\x13]B\x85{\x16\xc2\xb8\xbf\xbaA\x9c&_B\x99\xd3\x89A\xe7\x12\x05\xc2<\x19\xacA\x01J\x84A\x06\xf3\x03\xc2\xd2\xcb\xb0A\xb3\x92\x8eA*O\x06\xc2\xc2\xe3\xb1A\x87u\x1eB\x93\xa3eA\xa6\xcf\xecBr\x9e\x1aB\xbc\xfegA\x94:\xedBQT B\xf4@sA\x8cW\xecBF\x9c\x13A\xaf\xf6yA2\xa2\xa5A5\x0e A\xc7P\x82AT)\xa5A\xfbb\x10A\x7f\xaczAA6\xadA\x85\xe5\x85\xc01\xac\x0f\xc2\x9c\xd1\xf3A\xb7\x13a\xc0N\x1c\x0e\xc2\xd3l\xf7A\xe2\xc5{\xc0\t\xa9\x13\xc2k0\xf3Ak\x9f\x84\xc1J\xd7\x80\xc2kVoB\x15\x97\x89\xc1)\x80\x81\xc2\xac\xa4lBu\xea\x87\xc1\x9c\x98~\xc27\xc0pBoQ\x12\xc2\xcfF\t\xc0,\x86\xa0A\x17\xe9\x0e\xc2\xda\xf5\xde\xbf\xb8\x87\xa1A\t\xd9\x13\xc2\x02\xd9\x0f\xc0\x0fD\xa7A\x1c\xa4\x16@\x8d\xd0\x92B\xbe\xa4IA\xaa\x02\xe5?\xb4:\x91BM\xdcIA\x97\xb6K@3H\x92B\x8d\xffPA\xe3\x13\xa2\xc1\xfdB\x0c\xc2\\\x9e\x82B\xed)\xa5\xc1O\xd2\x0e\xc2l\x97\x83B\x16\x8a\xa5\xc1Mi\t\xc2wk\x83B\xb0\xf4:A\x81S\xf6@\n\xac\xbbA!:0A\x0e>\xee@\x1d\xef\xc0A\x90\xc5HA\xcf\xc7\xef@\xd6\x16\xbfA\xda\xce@\xc0[\xa30\xc2KT9B\x99\xa4~\xc0\xd8\xc21\xc2\x85\x85:B\x8a\xa5*\xc0{w2\xc2\xd0\x82\xed+\xc8\xbf\rePAmL\x96\xbf?7\xed\xbf\x94\x04\\Aom\xca\xc1\x7fV\x8dAC\x93\xa4A\x8a\xc2\xca\xc1A\x90\x8bA\xda+\xacA\xf2\xdf\xc9\xc1\xcbX\x95A\x02_\xa4A?r\x9cAw\xe8x\xc2\x0f\xe4\xc1AG\xe0\xa0A3?{\xc2\x1b8\xc7A\xfa\xa4\x9eA\xce\xcey\xc2db\xbaA\x9f\xa61B\xf9\xd6\x1c\xc2\xb4\x86\xb4A\xbca3B\xa4\x8f\x1d\xc24S\xbbAy\xc52B\xae\x95\x1f\xc2G\x1c\xb0A\xaf\x18.B\xc2z\xfdA\xc0\xf5eB\xfeq+B\x8e\x89\x00B\x88\xfbcB}\xa3-B;\xc0\x00B\x94\'iBy\x160AQ\xf7H@?\xcb\xd7\xc1\xfc\x1c4A\xe3\xa4"@\xff\x92\xd2\xc1\x13\x04 AJ\xa6F@\xf2\xba\xd7\xc1[c!B\xb2\xf0\xe4@\x83)\xfdAV\xac B\xf0\x07\xcd@4J\xf8A\xc7\xf0\x1dBO\xcc\xe2@&$\x00B\xa2I\'\xc1x\x99"\xc2\x16\xe1\xa4A5\xf3(\xc1\xac+ \xc2\xb4 \xabA2\xe0.\xc1\xe6\xa0%\xc2\xde<\xa7A)\'\x86?\xd9\x91\x87A1\x89q\xc1P$\xd1>\x0f)\x8dAI\x85n\xc1K\xa9a?\xe3\xe3\x82A<\xcfd\xc1\x84\x02jADA&@\xaf\xf7\x87B\x03flA2\xfe_@<\xcc\x88B\xee\xb0\\A\x0cz%@\x11\x04\x87BN\xe1)A\xa4\x08\xef\xc1\xb0\x92\xa6Ab\xb91A_R\xf2\xc1\xcf\x98\xa0A\xb0Q-A\xff\xa5\xf4\xc1#\x01\xacAR\x8a\x1eBjU\\\xc1C\x13\xa6@\xef\x18\x1cBe\xc9Q\xc1W\x05\xb1@\x8cm BF\x9f\\\xc1\xac\x92\xc0@##!B\x83t/Bf{\x93AO<\x1fBj\xa12B\x8d\xa6\x92A\x83\xf7\x1dBd\xee,B\x00\xbc\x94A\x9dx_\xc2*r#\xc2Y\xe6\x08\xc2\x19w^BI`\x9f?:\xb5\x0b\xc2\xa6\x9c\x0c\xc2\xb0\x90\x0b@\x89\xbd0\xc1\xb1\xf2\n\xc2\xf70\xff?\'\xb9$\xc1|\xe4\t\xc2\xe0.\r@\x11\xc8:\xc1\xd2\xb5*\xc2?L\xc4A\x91&\x1cA\xe8\x84-\xc2-\x01\xcaAO\xf0\x1dAl\t+\xc2\xc1\xd3\xbfA\xe6\xd0)A\x08\xdf\x11@\xb8\x1c\xd7\xbf\xa0v\xbaAH\x9b\x0e@\xd7m\'\xc0\x8d@\xbcA\xa7b6@\x11e\xdd\xbfj\x08\xb4Ai\xfd\x0bBO\x01K\xc2\xcc\xe4\x0c\xc2^\xec\x0eB\xaaJH\xc26\xc1\r\xc2\xf7C\x0cB9\xfbK\xc2\xfe\x1e\t\xc2:\xf7gA\xc2\xb1\x9e\xbf\xd8>\x95A\x835kA\x01#\xdf\xbf\xbed\x8fAi\xf4sA\xde\xde\xa5\xbf\\\x92\x99A\xe4\xa8\xa5\xc0\x80\xea\x89B\xbb\xfe\xe0\xc0L\xd4\xba\xc0\xa5~\x88B\xcf5\xde\xc0i;\x91\xc0`\xc0\x89B\xf5\xf7\xc6\xc0g\xa2\x01B\xf1M\x01\xc2\x93\x08\xee\xc1x\xe5\xffA\xa6>\xfd\xc1\xb4\xbc\xe9\xc1\x9a\xac\x02B\xce\x19\xff\xc1\xc4R\xf4\xc1\xc4J\x0e\xc1\x06\xb3\xe6\xc0a\x9c\xd8A\x87\xdb\x05\xc1\xa1\x84\xe0\xc0\xb3\xcb\xdeAd\x91\x17\xc1\xb7w\xfe\xc0\xf7%\xdbA1\xa7\xaaA\xd28(\xc2\xfd/\x98\xc1O(\xabAp4(\xc2\x8d\x01\x91\xc1/\xa4\xaaA1\x9e$\xc2\x1c^\x9b\xc1A\xb3\xa1B\x9e?R\xc2\xa7E\xfa\xc1\xde\xe3\xa2B\xc7\x11P\xc2\xa2\x05\xf6\xc1V\x14\xa0B\xb5\xf2O\xc2\x023\xfb\xc14tg\xc1\x0e\xf1\x1f\xc2\x0653A6\x01n\xc1]w\x1c\xc2\xf4B7A\xf3\x92g\xc1e+"\xc2;}@A\xdd\xba\x13BG{\x8b\xc2\xf5\xd3YABl\x16Br\xd8\x8c\xc2\x08\x97VA\xb1\xd2\x10B\x9aq\x8c\xc2D\xd5aAX\x1a\x01B\x83\x7f\xbbAx\xd9\xabA\x8c\x10\x00BE6\xbcAh\xc0\xb3A\x13\xac\xfcAPk\xb6A\x1c\x02\xa9A\xa8\x12*B\xd8Xq\xc1I\xb0\xb5\xc1\x01\x1d-B[\xbfx\xc1(I\xb8\xc1\xafE*B4\xddt\xc1T\x10\xae\xc1g\x0f\xbc\xc1K\x95>\xc2\xba\x0f\xd9A\x91\xc8\xb7\xc1\x12\x84;\xc2`\x80\xd7A\xe0\xff\xbd\xc1\xd7\xd5=\xc2\x00X\xe0A\xdf\x16\xdbAs\xc4-\xc1\x91\xf2\xa8\xc1f\xeb\xdeA^? \xc1\x08\xda\xa8\xc1\xfd\x1e\xd9A\xfd\xde-\xc1Qn\xa1\xc1XN>\xc2;\x9d\x8b\xc1\xde\xa6\x8bB\x1a\xf5<\xc2\xe9\xdb\x91\xc1\xca[\x8cBN\x9d;\xc2\x00\xe7\x86\xc1\xe4\xe9\x8bB\\\xab\xa8\xc1\xa3\xb6\x99\xc1\x89\xc5\x8b\xc2\x05\xa9\xa7\xc19\xe3\x92\xc1\x05\xf6\x8a\xc2g\x95\xa1\xc1\xc0\x97\x9b\xc1\x16e\x8c\xc2\x89\x03\xf6@\x80\x8d\xcaA\xb3\xc3\\B\xf29\xef@\x0e\xdf\xc3A\x94\xe2]BA\x0e\xde@\x1d\xa7\xceAN\x87]B\xa1\xfaJA\xc3\xdb\xb0Ah\xc0\x90A\xdc\xfdVA\x86\x1e\xb2A\xe7\x19\x8bA\x0c\xdePA\xd8\xc1\xb0AB\x1e\x98A6\x1e\x1f\xc1\xebG#B\x03O\xcfB\xc0H&\xc1\x12\x8c!B+\xcc\xd0B\x88Y\x10\xc1Y*#B\x17\xc0\xcfBS\x18r\xc1\xbf"\x8aB\xc5w\nB\xec\xe3e\xc1\xd7P\x8aB\xb6-\x08B\xdb\xf4k\xc1t\xa6\x89B\xc9\xd8\rB\xc3NSB\x95|\x98A\x13\xea\xc7\xc1t8UB\x8ad\x93A\xa7\xbb\xcb\xc1i\xa3RB\x8f \x94A^j\xc1\xc1\xc8\x1c\x9c@\xc0\xfe\xec\xc1\x0e\x95!\xc1A^\xad@l\xe8\xee\xc1\xac\x8a\x14\xc1\x17\x9e}@\xad\x82\xec\xc1\xba\x01\x1b\xc1\xe3i^@\xd0\\\xed\xc0D\xf0\xe4\xc1`U&@z\x89\xf9\xc0\xe2\xb1\xe3\xc1S8\x80@\xfd\\\xf9\xc0\x1b\xd1\xde\xc1V\xcf\x89\xc1\xca\xea\xd0A\x07\x93\x9cA\xcb\xe8\x88\xc1,\xe9\xccA]T\xa3A\xe2\xab\x84\xc1\xfa\xd5\xcdA\x86\xe8\x97A\xac\xe6\xc4A\'l\x83A\xb5B\x06B!\x06\xcaAg\xbb\x83A\xfcJ\tB\x05\x01\xbeANb\x80A\xdb\xe9\x07B\xde\x96\x90\xc0B\xd1\xf4\xc1\x82eYB]O\xa4\xc0\xa6\x85\xef\xc1xjZB\xe50r\xc0\xa2\xa1\xf3\xc1K\xe9[B\xa9\x92\x0fBG\x99\x9cA\xa9\xc21\xc2\x03\\\rB$\xb3\xa0AY7/\xc2\xe2\n\x13B\x0f0\x9cA\xb360\xc2Qj\x1cB)&V\xc1\xed6\x8aB\xa6\xef\x1eB\x13\x8e_\xc1zP\x89B\x107\x1aB\xa1\x9f_\xc1\xe7W\x8bB\xe71\x8dB=\x94\xb4\xbf$\xd9\xfa@c6\x8dB\x14\xf7x\xbf\x19\xa0\x0bA\x01\x03\x8dB\x93(\x18\xc0\x19\x9b\x00Aj\xbd\x10B\xf4\xcd\x83\xc1\xd5w\x10A\x07G\x0eB\x8c\xc2\x89\xc1d\x8a\x14A\xc6\xae\x12BY\xee\x82\xc1#\xdb\x1cA\xa7\xf2\x9b@xPLA\x93u\xbaA_\x12\x87@\xb5\xbfIAx~\xb4A\xff\xac\x8e@8\xf5WA\xef\xdf\xbdA\xd9P\xc9\xc1\x8ed\xe2\xc1\x1e9\x8fB\x95\x06\xd1\xc1\xa7\xcb\xe0\xc1L\xdd\x8fB\xe2\xb6\xc7\xc1\xa98\xe7\xc1\xe8\xcc\x90B\xdd\xeaa\xc1#&\x96\xc2\x0b\xdf\xb3\xc1\x00\x82V\xc1:N\x95\xc2\xb6n\xb1\xc1%+i\xc1B*\x96\xc2\x82\x94\xac\xc1\xa9\xef\x0b\xc2/\x88\xd2\xc1m\x08\x02\xc2\x87\xe2\r\xc2$\xff\xd2\xc1V\xd3\xfc\xc1"^\x0b\xc2\x174\xda\xc1\xa0\x05\x03\xc2h)\xbe\xbe/\x80\n\xc2<\x93Y@\xd2\x0f\x84\xbf_L\x0c\xc2\xcaJ}@\x1f#B\xbe\rK\x07\xc2|*|@k!\xfcA\x92m\xcc\xc0\x863>A\x19\x9f\xf5A\xc1\x19\xc0\xc0e\x0fDA\xd0\xd2\xfeAj\xe4\xd9\xc059KA3t"\xc2]\x19\xe6\xc1{\xaet\xc1\x1c\xbe$\xc2y\x08\xe8\xc1\x91\xe5h\xc1,(!\xc2w"\xdf\xc1\xc0\xfdo\xc1\x0e+\x7f\xc1u\x14>@\xea\xd5xBZ\xf6\x83\xc1e\xc8B@~\x96uBE\xef\x81\xc1`\xe9\t@\xf4@zB\x91\x02\xca@&B\xe9AO\x02\x9bB\n\x03\xcc@a{\xebA5\xf9\x9cB[X\xdc@\x92\x04\xefAMB\x9aBi\x00\xdbAC1tB\xe2\n\x8aA\xf2\\\xdfA5\xdepB\x02\xb0\x89ANV\xd5A\x1f\xe6rB\x8b\x8b\x8eA\x81\xad>B\xc1\x9a\x0e\xc1\xe1\x0c`\xc1\x12CAB\x15U\x11\xc1\xf1\xbbT\xc1\xf9[>Bo\xd2\xfd\xc0\xee8^\xc1>?\x1fB\xf3\xcb\xd5A\x83\x80PA\xa7\x9c\x1fB#X\xddA\xb4\xd4OAX\xf2\x1eBO\xae\xd4A\xf6\xf6_A\xbe\xb8H\xc0\x91\xd8\x8e@\xe6U\x91A\xba9S\xc0\xba\xf9d@T\x08\x95A\xa0\xa4q\xc0\xad\xbd\x9f@%6\x95A\xe8t\xbf\xc0\xb97\x0b\xc2\xbd\xd3\xa5A\xf9I\xc0\xc0^*\x0c\xc2\x9f\xf9\x9dA\xfb\xda\xdd\xc0\xca\x92\n\xc2\xc2\x9c\xa8A:\x8cz\xc1\xa9\x06\x18A|w\x7f\xc1UW|\xc1\xb9\xfb\x07A\x17\x8e~\xc1\xbd\xf4\x80\xc1\t\n\x1dAb"q\xc1\xd73\xa9A\xdc\x80:\xc2\xca\xc7\x87A\x8f@\xadA\x9c\xe5;\xc2W\x04\x8eA\xd0\xbf\xa9A\xb9\xba6\xc2\xe9\xaa\x89A\xde\xbf]B+\xc3Z@\xe2\x8a\xa4AA\xb1YB\xdesY@\xbe\xd4\xa2A\x86u]B\xee\xc2M@\xbb#\xacA\x86\xdf%B\xb5\xdb|A+\x00\xdaA\x00\xb4(B`OyA\xb4/\xdeA5\x1f&B\xc6-\x86A:\xf2\xd8A\x8b\xc2\xc3\xbfU\x18_A\x12\xfd\xc7\xc1\x0c\xc4\xe8\xbf\x8b\xe7YA!\x02\xc1\xc1mv\x81\xbfi\xcbkA\xba\xc4\xc5\xc1\x11A\xcb\xc1\x11\xbby\xc1\xc9\x9b\xe9A\xf5_\xd0\xc1\xac\xf6o\xc1b\x11\xedA\x14\xaa\xc5\xc1\xca\x14y\xc1\x1e?\xefA\xcc\x04\x01B\x0b\x83V\xc1\xf9\x9baA\x8f\x9f\x04B$JO\xc1\xfc{dA\x90\x80\xfbA\xddzN\xc1\xad\xd2eADv\xdc@m{\x9e\xc1\xe5D\xefA\xf1\n\xf2@XH\x9d\xc1\xb2\xdb\xf4A\xfe\x86\xc1@4\x16\x9e\xc1\xa8{\xf3A9\x95[B<\x94\xf7A\xd0\xb0\x07B\xe3\xaf[Bm~\xf5A\xf9l\x0bB\xdd\x11\\B\x1de\xffA\xda\x0b\x08B\x13\x90|\xc1\x83\x82\xe9@\xcd\xeb)Av\xeex\xc1\x02\xe3\xdd@\xe8o7AWzs\xc1\x12\x8c\x01A\xb8_(A\xaf\x85(\xc2\xcb>/\xc0\x19\x044A\xe8\x02(\xc2h\x82e\xc0b :A\x0e\x19(\xc2=\x98\x0e\xc0l\xc3@A\xb2e\x9aA\xdc\xe9\xfb@\x8b\xce\xa0AI\x90\x96A\xbb.\xee@\xefT\xa6A\xe0\x06\x98A.0\rAa\xc5\x9fA\xb2E-A,|&\xc2\x1a\x10\xc5A\x0cb"A\xe7\xcb#\xc2l\xb7\xc3A\xb5k,A\x8fJ&\xc2,\xb9\xccA\xbb\xab\nB\xed<\xdd\xc1\xbd\xa2\x03\xc1F\xa1\x0cB\xb1\xda\xe0\xc1x\xd2\xef\xc01\x85\x08B+p\xd7\xc1\xb3\xd3\xf9\xc0\x1d\xe1\xaaA\xb6\xad\xd0A%\xb8\xb9AT\x8b\xb1A\xeem\xcdAw\x1e\xbbA\xe1/\xa6A\xd0\x12\xcaA\\/\xb8A\xea-\xabA7H-A\x03\xde\xc8B\xd2@\xa9A\xd3\xaa\x1eA;\xd1\xc8B[*\xacA.d/A\xa4\xdf\xcaB\x84\xb6\x00B\x89\x02+\xc14&\xb1@\xfem\x02Btr)\xc1\xef\xce\xcb@\x96z\xfaA\xf8\x8c)\xc1+k\xba@>\xaeWB\xb8o\xe0@\x99\x98\xd5A\xdeqYB=\x10\xe9@aA\xdcAO\xe7WB\x8d\x89\xc1@9z\xd6A,\xb4\xc6A\xb6\x8c\x01B\x91g(A\xb6\xae\xbfA\x0b\xef\x02B\xa6\xfc,A\x18~\xcbA\x1b<\x02BM%4A?\xf7\xcc@\xffw\xea\xc1\xc8\xd4\x86\xc1\xa0!\xb2@f\x83\xea\xc1\x8c\xce\x83\xc1^\xe7\xdb@\xfd\'\xe7\xc1\xad\xa0\x80\xc1\xd2\xd3\x10\xc1\x93\x07\x16B;\x13\xa0\xc1\xff\xc3\r\xc1\x05\x08\x13B\x80<\x9b\xc1\x0b\x0b\x1f\xc1\x93#\x15B\xbf\xca\xa2\xc1\x00>\xb6A\xcbb\x8bA\xd2\xd3\xa0B\x9cL\xb3A`\x16\x85An\xeb\xa1B\x02\x92\xbbA\x92\x87\x8dA\xac\x0f\xa2B\xa2\xbf\x02Bm@>\xc2\xa3\x06\x7fBP1\x01BH\xf1Bx\x8a\xae\xc1\xfe\xbd\xb9\xc1\xabp\xf1B\xaa \xa3\xc1\x00\xfd\xbb\xc1\x9b\x94\xf2B;\xd5\x9e\xc1\xe28[\xc15\xdd\xceB`k\x9c\xc1\xa2\xeeZ\xc1\xa1\x06\xcdB:.\x9c\xc1ZMi\xc1\x12e\xcfB\xd8\xcd\xdf\xc1\xae=)\xc2\xd8y\x92A{X\xe7\xc1\x9d\xff\'\xc2\x95\xd7\x93A~Y\xde\xc1\x8fb,\xc2\xde\xed\x96A\x1f\x1f\x08\xc2G\xa5\xe8\xc1\x878\rB\xd4X\t\xc2\xbcd\xe5\xc1\x8e\xbb\x10Bqn\x05\xc2\xf2?\xe4\xc1!\xf7\x0bBw\xd7\x18\xbe\xd44\x8d\xbf\x8f\xd2\xaf\xc1\xaa\x85L?\xe5\xa3\xa9\xbf\xd7\xdd\xad\xc1\xec\x93A\xbf\xf7\'\xf4\xbf0\x0e\xb0\xc1\xcd\x16\xaeA\xa4e\x16\xc2\xf6\x02\x9bB\xa6 \xb3A\xd2\x80\x18\xc2\xb5\x02\x9cBo\xd0\xb0AQ\xee\x12\xc2\xdfz\x9bB\x00 \xd4\xc1\xc2P\xecA$\xa2eBe\x0c\xcd\xc1\x17\xa7\xecA\xe9!gB\xf0\x0f\xd6\xc1u\x87\xf3A\x12\xbbfB\x19\\\xe1\xc1e\xa0\xf3@\x96\xae\x9cB\x7f\xf3\xdf\xc1(e\xef@\xe3v\x9eB\x83\x15\xdc\xc1\xc8i\x04A4\x0e\x9cB\x1fP\xd9A,\xc0\xbfA\xd3\xa1\xabBB\xa0\xdeAC\x97\xc4A\xaaG\xacB\x98>\xd7A>(\xbcA;;\xadBVT\x03BvM\x82\xc16\x9emB\x04w\x04B\r{\x81\xc1\x9e\x1bqB2U\x01B^1w\xc1>LmB\xc9\x13\xcc@\x0e01\xc2\xd7$\xc4\xc1\xd1\xde\xcf@\xdaW1\xc2r\xd0\xbc\xc1\xa1\xf2\xb3@`c3\xc2\xd7\xc0\xc4\xc14r\x9f@r\xe4\x02\xc1\r2_A\x82\x99\x8e@\xef\x0c\xfa\xc0\xd3\x9ejA\xc8\xc0\xb2@\xd3T\r\xc1\xf7GfAh~\xf9A\x9e1mAA+^B`$\xf5A\x99\x87vA\xe9!`B*\xa3\xf6A\xae\xdb^A*\x96^B&\xd9\x92A\xd646\xc2\xde\x02\xdeA\xd4\x06\x94ASC9\xc2JS\xe2AyX\x8bA\x9506\xc2\xc7\xd5\xdcA\xf2\xac\xb7\xc0\xed\x07\x99\xc1\xbcj9AW\x17\xaa\xc0\x8b\xc5\x92\xc1/\xeb?A\xbe;\xcd\xc02\xb3\x9a\xc1nICA\x94\x12\x8f?\xef\r\r\xc0\xf1|\'Br\x1a2?K\xb2\xd6\xbf\xb1,*B%a\xe3?\x90\xa4.\xc0\x8d@\xb3\xc8\x8cA;]\xf5A\xac\xef\x9fAx?\x9aB\xd3R\xfbAd\x02\x9eA\xe0d\x9bB\xc2\x81\xf1A\x8b\xcd\xa3A\xb6\xbd\x9bBt\xd5P\xc0|n\x02A\rXM\xc2\xfa\xb2\'\xc0R\x02\xf4@s\xf1J\xc2\x19\xe5A\xc0\x15\x12\x10A\xdflL\xc2\x81\x06.\xc0\xb8\xf7,A\xb3G\x84AV\xd5j\xc0%\xd1-Ae\x02\x86A\xec\xb2\x17\xc0t91A\xb6\x0c\x8bA( \x84AXC\xebA\x14\xa7\xb4A\xb1\x0f\x82A7\xbd\xf2A\xb62\xb7A$\xf3\x87A\xf5\xa5\xe8A>\x07\xbaAc)\xb3A\x82\xbb\xf2A\xc1\xf5\xafA\xde\xdf\xb2A\xb5\xcd\xefA\x84Y\xb7A-\xec\xb9A\x0e\x9f\xf5AU\xb1\xafA\x93b\xc4@\x94\xbf\xe4\xc0\xb9\x93\x16B\x1e|\xe4@\xf5\x92\xe6\xc0\x8e\x03\x17B\x86\x14\xbb@f\xad\xd7\xc0\xcc\xfe\x19Bdu\xb3A;\xf8\x8eA\xd6\xcfbB\xb0\x1f\xb2AP\x94\x87A% bBc\x0b\xb8A\xc44\x8fA\xab\xb4eB]\xb19A\xd0\xeb\xcb@A\xbb\tB\x88U+A\xcd:\xbf@\xb86\nBD<:AP\x19\xd9@\xe5v\rB\xa9\xa1\xf1Aq\xc0\x15\xc1\xbe%\xb4A^\x0c\xf2A/\x12\x1c\xc1\xa1\x0f\xbbAQ\x16\xefA\x0e\xa0\x08\xc1 u\xb6A\x07 \x18B\xd3k\x8a\xc1IF\x96@^-\x1aBX\xf8\x87\xc1\xaf\xee\xb1@\xc1G\x16B\xd7z\x8f\xc1I/\xa6@\x04X8\xc1\x0f\x1a\x91\xc1\xea\x94{B\rxD\xc1\xd92\x91\xc1\x9fp}B\x8f\xcc4\xc1[1\x98\xc1\xfeX|B\xf5.+\xc1\x93&\xe2\xc1\xdd\xb8\xc3A\x89\x07-\xc1\xa2H\xdb\xc18\x8f\xc7AN\x0e \xc1\x1b\xc8\xe4\xc1\xba\xd4\xc7A\x00_\xca\xbf\xa26\x19B\x01\x96$BoK\xc3\xbf\xb2\xa8\x16Bil\'B\x93d\x8c\xbf\x86\x93\x1cB\xb83&Bo\x96J\xbfo\xa6,\xc2\x83\xcc\xf8AD\x1e\x99<\x84m+\xc2y\n\xfbAY\xa7\xb4\xbf\xbax+\xc2\x1e4\xfeA3\xc3\x99?P\x92\x06\xc0\xfa\x96\xf3?\xe5@\xf8>\xb1\xef\xfe\xbf\xd8\xeb&@\xea1\x02@\x0fY\x0b\xc0\xa1\x05\x1a@\x18n\xf0A\x92N\x02A\x1dT\xfb\xc1\xfa\xdd\xedA|\x12\x02A&7\x01\xc2\xc6\xbd\xf6A6\xe7\xf8@\xfb2\xfd\xc1\xe3\xaa\x8dB\x8c\x1d\x14B\r9\x8e\xc1KU\x8cB\x96N\x13B\xee\xac\x89\xc1a\x93\x8dB\x92\xde\x10B\x1f\xba\x92\xc1\n\xc7q\xc0n\xf5\x13\xc0\x15OA\xc3\xf9[AA\xeb\x8d\xc1\x9a1UA\xf3OcA\x9d\xf2\x87\xc1>\\@A7\xe9ZA\xec\xd6\x8b\xc1\xde\xf2J\xbf\xdb\xb7\xc5\xc1Ei\x8bB\xbfQ)\xbfn\xc2\xc1\xc1"\xd3\x89B\xfd\x8c\xa9\xbdG\xca\xca\xc1\xa4_\x8bB~+\xf6\xc11\xc8F\xc1\x91\xce\x07By\xf7\xf7\xc1\r\xda7\xc1.5\tB\x90\x17\xf8\xc1d\x19P\xc1\xaa\x93\nB\x1b\xb6\x9cA\xb1\x00$BI\xf5\x9a\xc1\xaa\xf1\xa0AL\xe6 B\xb1\xc3\x98\xc1\xa0\xd3\xa0A5\x1b\'BXE\x98\xc1#\xa5\x15B\xab\xc1\x87A\x8e\'#B\xfb\xfd\x13B#\x93\x8cA\xdcg%B\xce\xcf\x14Btn\x80A\xe6\xd0$B\xdf"\xd0ApU\xcf\xc1\xf1\xe7\xbd\xc1\x99\x83\xd4AKy\xd4\xc1\xb2!\xc1\xc1z\x93\xd3A\xacH\xc9\xc1\xbf\'\xba\xc1\xe9\xed\x81B\\\x83\xdaA\xbf\xfb\xc5\xc1\x1e\xcf\x80B:\x0b\xd6A\xf7\xdf\xc0\xc1\xc9\xa1\x81B\xd0\xfd\xe1A9\x95\xc4\xc1\xa2\xc6\xd1A\xa2\x8d\x14B\x8b\xba\xc8\xc1\\\x04\xccAk\xf2\x16B\xdbk\xca\xc1\xa6\xf1\xd4A7\xff\x15Bm\x11\xc3\xc1_\xac\xb0\xc1\xd01\x00\xc2!\xf20A]h\xb0\xc1\x94\xb4\xf8\xc1\xa2\xb60A\xae\x1e\xaf\xc1.^\x01\xc2\x95\xcc@A\x1f\xa0\xd7An\xfb\xa7\xc13\xd8\x98\xc0\x0c\x84\xd5A\x9d\xd0\xa7\xc1$vs\xc0\xaf\x93\xdeA\x0c\x17\xa5\xc1\xe1\xb1\x97\xc0\xbf\xb6\x86@\x91\x9ek\xc2\xd0\xab/\xc1\x1dIq@\t l\xc2\x90@"\xc1\xe9\xa4\x9b@\x83\xbbn\xc2\x1b\x95/\xc1\xdf\xa2\xcbA?"\xa3A\x9d2\x91B\xc2\xa7\xcdA\'\n\x9eA\xa7\xb7\x92BG\x01\xcaA\x92\xca\xa9A\x98\xf3\x91B\xeat\x00A\xa5\xe6\x0e?\xec\xd5\xf4\xc1\xb2\xbb\x04A\xb1\xdd!?\x0ce\xed\xc1\xef \x0eAOY\x1f> \xd1\xf6\xc1he\xdf@$q\x95\xc1q\xa8\x05B\xf6e\xf2@\x9d\xaa\x8f\xc1\x91\xac\x04B\xea\xe3\xd2@!\xb9\x93\xc1:\x1e\tB\xf7\xafJB\x9f\x112\xc0fF\xbdA\x8e\xc6JB0<\xf9\xbf\n0\xc2A\x10\xeeMByuJ\xc0\xb5c\xbfA^M\x1dB\xd8\xe5\xbb\xc0\x1c\x16\xdbBz\x9f\x1bB\xd9\xae\xab\xc0p[\xdcB\xe4E\x1fB\xc6\xe0\xd0\xc0(\x05\xdcB\xfa\xa2\x0c\xc0\xb4_\xbdA(\xb7\x8a\xc1\x11?\xcd\xbf\x8f\x8a\xc0A\xd9\xf6\x8f\xc1\x84\x94\x12\xc0}&\xb6A:\xe5\x8d\xc1s\xe6\xff\xc1|TZ\xc2\x1c\xf6\x87A\xfd\xc3\xfb\xc1?fW\xc2/\x02\x8cA\x831\x00\xc2\xda\xef\\\xc2\x00\x15\x8eA\xad\x02\xc8\xbf\x06e\x98\xc1!\xa5oA\xc4\xebb\xbf\x86\xb6\x96\xc1\'SyA\xeb\x19\x1b\xc0"\xf3\x95\xc1\xc7\xfevA\xf23o\xc0n\xa2\x03\xc2\xaa-\xa9\xbd\x07F\x88\xc0V}\x00\xc2\xe8:\xbd<\xbb>V\xc0\xd8\x94\x03\xc2\x07\xffI?X\x1e\x9cB\xdd\x1d\x19\xc2\x0fB\x08\xc2\x7f\xe8\x9bB\xe4\xdb\x15\xc2y5\x06\xc2\xcf\x15\x9eB\xc2\x14\x1a\xc2\xe2X\x08\xc2]v\xc5A\xee\n\x7f\xc1\xec\xa6\x85BX\xb9\xbdA\xc0\xcc\x81\xc1\xdf\xac\x85B\x83\xf4\xc7A\xcbo\x80\xc1\xf4k\x87B\xbf\xc1,@\x04J\x12\xc1\xfa]\xdcA\x8a>-@\xb6\xd4\x02\xc1\xeb\x8e\xddA\x98<\xe0?\xa8E\x16\xc13\xa5\xdbAf\xc6\xd1AV\xb0\x91\xc0\x9d\xf5\x8cB\xd4\xc7\xcdA\x90m\xab\xc0\x8e\x8d\x8dB\xbe#\xd8Az\xb2\x94\xc0\x01\'\x8eB\x80#\x9aA\xf40\x18\xc1( \xbbA\xc1\r\x9aA\xbbA\x1e\xc1\xd90\xb4A\xd2\xcd\xa1A\xcew\x19\xc1(m\xbdAr8\x11BX%\x1b\xc2\xb48\x90A\x93#\x12B7\xb9\x1e\xc2\xd3\xb9\x8dA\x9bt\rB\xec%\x1b\xc2Q\xb4\x90A\xc0Y\xa0?\xc8\xae\x0f\xc13\xe7sB\xd2\x7f\xb6>\xd4R\x0e\xc1&TuB\xa3\x9f\xc7?\xec\x19\x1c\xc1\xf8\xcduB\xc7\xcf@BI\x83\xef\xc1a\xff\xe0Ac\xfb=B5\xa6\xee\xc1n\x82\xe6A\xad\xb1CB\x80\xd0\xeb\xc1\x89$\xe4A\xcc?WB\xf4\xd5\x03\xc2a\xba\xe9\xc1\xbb\x10[B\xc6\xbd\x03\xc2a\xdb\xe7\xc1\r\xe0UB\x9e,\x00\xc2\xe4^\xe8\xc1\xcf\x9d\xbe?\xccP\x88\xc2\x90\xe2\xecA\xa8q9?\xcc\xea\x87\xc2\xbb5\xf1AF\'\xdc?\x1e\xfe\x89\xc2k\xda\xeeA\'\xca\x81\xc0\xb1\xa9\x83\xc2(\x0b\xa0A\xca\x9f\x91\xc0\x15K\x85\xc2kt\xa1A\x86\xf6V\xc05\xe5\x83\xc2\x04\xc8\xa4A\xf9[\xeaAu\x18\xdb\xc1\xd1\x9b(A=\x91\xeaA\x04\xf6\xdc\xc1\x8b\xa07AF\xcc\xe6A\x94\xb8\xe0\xc1\xe3\xfb!A\xcf\x96\x07\xc2\x95\xd9 \xc1\xa8\xb3\xacA\xa0\xc0\x06\xc2l\xbe\x15\xc1\xb0\xe8\xb1A\xcf<\x0b\xc2\xa5\x10\x1f\xc1$0\xaeA\xe7\xc8\xf6AW\xa8m\xc2\x14?^\xc2M/\xfbA<\nk\xc22\x00\\\xc2{\xcd\xf2A\xe9\xb1o\xc2\xc3\xa5[\xc2P\xfa*B\xbe\xeft\xc2\xc5\x99_\xc1^;(B\xcc\xf1w\xc2\xb8\x81\\\xc1\x9c\x89*B(\xf0r\xc2\xfccR\xc1\x97\xab\x85A]&MA\xb6^\xfbA\x8d\x05\x8cAI=EAs\xbf\xf9A\x1d&\x84A\x1e\x9bJA~\x8b\x01B]\x9f4B\xd2\x1ac\xc0\xb3\xb4]A)\xb25BJy[\xc01SNA\x1f\xbb6B\xa4\x893\xc0\x02`dA\x06\xd8\x04\xc2\x13m\x0f\xc2\xc7\x1eV\xc1\xa3\xb0\x02\xc2"\xba\r\xc2\xfb\xa3_\xc1\xb8>\x06\xc2gr\x12\xc2\x89&^\xc1\xcf\xbd\xd5A\x1dLj\xc2\xb6\x11\xb9BU\xca\xdbA\xc8\x07i\xc2\x7fK\xbaBf\x06\xd5A5\xeam\xc2m\x8f\xb9Bj\xabkBhV\r\xc2\xd91EB\x17viB\xe9\x05\x0f\xc2\x8cWHB\x93\xb8nB\x14o\x0c\xc2\x1e\xa4GB\x15uS@5\xa2lA_mNA\xce\xdc}@\x84\'vA$RQA\xa43R@\x87\x01gA\xeaR\\API\x0fB\xd2J\x07\xc1\x07MlB\xd8\xf8\x0eB\xca\xe6\xf2\xc0"\x88nB\x92,\x0fB\xa2\x0e\x11\xc1\x89eoB\x9d\xca\x01\xc1\x93c\x19\xc2\xed\xe4\tB1\x05\xf7\xc0\xb3\xc3\x1a\xc2\x9f\x1f\rBFr\x02\xc1\x9bN\x15\xc2\xfa\xa5\nB\xe1p#\xc2\xaeM\x17@\xfa\xdcnB\xb5\xe4$\xc2.\x89\x07@\x17\xa8kBd\xcc%\xc2\x02_\x06@\x83\xaaqBx~\x1eAl\x80\x05@\xdb\xfe\x12Aw\xf4,A\x7fz\xd2?{\x18\x17AY\xb5\x17A\x11k\x07@\xb5>!A\xcfs\x15B4GT\xc2N\x0c\x83\xc0X5\x14B\xcfoS\xc2\xe6iO\xc0\x17\xb5\x18B\xb06V\xc2\xf8\xf6s\xc0\xcb\x9c\xbc\xc1\xe8o\x1a\xc2\xb0T\xe0A+\xfb\xbd\xc1\xdcC\x1d\xc2\xcd\xa9\xe5Ae\xb3\xb4\xc1\xf6O\x1a\xc2U<\xe0A\xf9K\xa0@B\xce\xf7\xc1\xf6X\xa3B\xfe\xf2\x82@P\x8f\xf5\xc1\x87\xf1\xa3B\xdc\x9d\xa6@\x00r\xfb\xc1M\x02\xa5B\xd5r\x12B\xd8e\xe5\xc1\x17@aB1O\x11B\x10\x8c\xec\xc1-\xc8aB\x8c\x8f\x0fB\x80\xa1\xe0\xc1\xfa\x11bB\xbeK\x96? :\xd9?\xcc\xb2KAe\x1a\x03?\x16\x05\x00@\xa2LVA\xd3\xa4\xe5?;N\x9e?o\xcaRAp\x80\x9f\xc0\x11~\x98\xc1\xc6\x9f\xd2AO\xe2\xbd\xc089\x9b\xc1\xb0\xac\xd0A\x91\xd5\x91\xc0%\xa6\x9f\xc1y \xd4Aci\x80AA\x05|\xc1\x1f\xf1\xa3A-\xab\x84A\xa6\xf1\x82\xc1D=\xa8A\x9d\xe0qA\x82Y~\xc1\x1f\xa6\xa6A(44\xc1\xd6Y\xfa\xc1\x94\x94\x93B\xb7\xb80\xc1[\x95\xfe\xc1l,\x95B\xe4(\'\xc1\x8c\x80\xf9\xc1\xd2w\x92B\x9b\x1d\x17A\xf2P\xdb\xc1\xf6\xda\xbdA8\xb4\x1eA\x99\x0f\xdf\xc1\xb5s\xb8A\xc7\x1b\x10A,,\xd5\xc1=\x10\xbbA\x0e\xae\x03B\x06\xb6\xca\xc10\xf2\xe4\xc19\x1e\x02B\xb7\xbb\xcd\xc1#\xa7\xde\xc1\xf5\x7f\x00B\x1c+\xc7\xc1\xba\xad\xe7\xc1\n\xf7\x07\xc2tE\xd7\xc1Hd\xf2A3\xb8\n\xc2g\xce\xd3\xc1\x1eE\xf6A\x9f\x7f\x07\xc2\x90@\xde\xc1\x90x\xf5A]\x9e\xfdAnE\xeb\xbfy\x97\xb8A\xea\x98\x00B\'l\x83\xbf\xb8o\xb9AR\x1d\x01B\xe3\x81\x11\xc0\xb2\xda\xb3A8n \xc2jB\x02B\xf9\xc2\xb4A\x8f\xf0\x1c\xc2\xb8\xdf\x02B\xbc\xa1\xb1A\xf4\xcb\x1f\xc2\xe1B\x02B\x9aS\xbcA\x1c\xa9\xe0\xc02\xde$\xc1i+\xa1A;\r\xd4\xc0\xb9\xe4\x16\xc1Y\x80\xa0A\x1aF\xd2\xc09\x80(\xc1T\t\xa7A:-\x88A\x95\xde\x03Ae,\xeaA\xe6F\x84A\xb1\xe7\x0fA\x9f\x12\xedA\xf9\xd1\x8eA\xa2\xcb\x02A>/\xedA\x80\xdc\x81B\x15\xa7\xda\xbc\xde5KB!\xa1\x81B\xda\x1a\xc4>_\xc9NB\xe9\xa9\x82B\x98\xd9T\xbf^;LBl\x95\x12\xc0\x90U\x07\xc21CK\xc1N4\x0c\xc0\xe3\xb6\x03\xc2\x1c\xedG\xc1\xdb\x98\xf8\xbf#R\t\xc2\x94\xb4?\xc1\x80u\x9aA9\n\x98\xc1\xf8\xb1\x9bA0\xc7\x9eAJ\xe6\x96\xc1\xd1\xda\xa1A\xbf\xeb\x98A\xb9\x1f\x91\xc1\x8ar\x9aA\xb5O\x04\xc2\xabZ\x81Atd\x81B5S\x01\xc2\x01\xd3\x86A\x12\x95\x81B\x12\xa7\x02\xc2HKuA\xf8\x8e\x81B\xbab\xd0A\x03\x95\x8e\xc0\xa4\x80QAFY\xd1A\xfa\x08\x85\xc0\x9f\xaf_A"h\xc9A\x0b\xb8\x9c\xc0C\xebRANz\x1dB\'\x02\x91\xc2R\xbe\x04B\xd4=!B\xa7\xcf\x91\xc2\x9f\xed\x04B\x98N\x1cBK\x9b\x92\xc2$\x00\x03By\xce\x8fB\xf5\xf9\x9a\xbf\x0fc\x11B*\x1c\x90Bw)D\xbf\x8b\x9e\x14BJ\x95\x8eB\x94\xcb\xea\xbf\xe5\xeb\x12Bp\xfebAsjX\xc2\x17\x86rBiqgA\x140X\xc2\xc0\xdbnB&8kA9\x94U\xc2\x0e/tBO\x1a\xc7A\xa6\x8e\x17\xc2\x0b\x7f\x02BV\xac\xc3AZ\x1d\x15\xc2\x05\xdc\x00B7Q\xceAL\xa7\x16\xc2\xc5\x13\x01B\xb8\xf6=A\x80\r<@\x06\xf5\xc7A\xa6\xa7;A}Q7@\xa0N\xc0A3\xbbIA9\tN@\x9f\xba\xcaA\ny\xdd?\xf1\x88W\xbf.:\xc5\xc1\x98\x81-@Ju\x91\xbf\xc6v\xc3\xc1L\x8f\xcf?\x91\x07*\xbe\x98\xaa\xbf\xc1z\x13\xab\xc1\x0ct\xcc\xc1WPxA%\x9f\xad\xc1\xd3\xf3\xc7\xc1\xc7\xad\x81A\xfa\x85\xa3\xc1\x88P\xcd\xc1\x02\x0c}A\xc9\x1b\x87\xc1\xb1\xe7\x12A\x8e\xf2\x9cB\xf1\x08\x87\xc1\x1f\x12\x03A\x01&\x9dB\x1a\x8a\x84\xc1\xadV\x1aA\x8f\\\x9eB\x88)\xd3@Tt2\xc2\x07D\x1aAh\x84\xe4@\x0420\xc2M\xe5"A\x02\x08\xd1@\x0f\x8e5\xc2\x88.!A\xa5<\x13\xc2\xd9J|\xc2p\xc8\x87BA\xe5\x15\xc2f\xea|\xc2\xd8=\x89BN\xc2\x0f\xc2R\xb2}\xc2\xc8\x8a\x88B+u\x99?D\x8b\x91@\x1a\x07\xb3\xc2\xe9|\xb3?\xaa\x9c\xab@\x91\xf6\xb1\xc2\x9e\x84\x18?\xeb\xbb\x81@\xdc\xda\xb1\xc2\xf1\xba\xbfA{\x16\xee\xc1\n\x18\\B\xfe\x03\xc1AKn\xe8\xc1\x80\xd8^BB\n\xbbA3\x9e\xf2\xc1\x01$^B\xa0\xd9\x81B\xcd\xb2)\xc2Q\xed\xd7\xc1R\xbb\x81BS\x9d-\xc2w\xed\xd5\xc1\x95\xfc\x82B\x1e\x82(\xc2\x0c\x12\xd2\xc1\xcd\x87\xecA\xcc{\x88A\x86\xf0\xa7\xc1\\\xe1\xf0A\xd3\x8d\x8dA\x0f\x17\xa4\xc1\xbf\x96\xf1A\xfe\x0f\x83A\xd7\xd7\xaa\xc1\x9az\r\xc1\xcf+\xec\xbfH.\xa7B?O\x1a\xc1\x12}\xf7\xbf\xe1\t\xa8B\x7f\xea\x03\xc1\xc3#\xd7\xbf\xff\xc1\xa8B\xf5\x84\xf0\xc0\xae\xf8\x17\xc2\x8d\xa4\x16Bko\xe1\xc0\xf0@\x15\xc2\x86\xd8\x18B\xdb\xa5\xf3\xc02\x13\x1b\xc2X\xcb\x18B\xc0\xfb\xbd\xc1\xe0"*\xc2E\xaeGA\x8a\x93\xc2\xc1\xbc\x08,\xc2\xef\x0bQA\xf7j\xb8\xc1\xd3u)\xc2\xce`QA\xd4\xd6\x89\xc1 \x87~\xc2d\x07\xf3B\xecY\x82\xc1\x19\x06\x7f\xc2\xc4\x12\xf3B\xac\x0b\x8c\xc1kX\x80\xc2Y\x98\xf1B\x07\xb6k?U}\x14\xc2\xf9\x92\xb3A\xddFl?q\xbc\x15\xc2\'\xcd\xbaA\xa94\xe1=\xf4/\x16\xc2h\xc2\xafAN\x1a\x86\xc1\x80(\x82>\x1d5\xe3A\x90a\x87\xc1\xd6S\x1d?\x97\xce\xdcA\xd6\xb0\x8c\xc1\x01\xdfU\xbe\xfa\xde\xe3A\xb7\x1f\xf9AF\xa4\x1e\xc0\xd6\x1d\x8aA\xa4\xcc\xf8AxC@\xc0\x04\x01\x90Ae\x9c\xfeA3\x93\xef\xbfV\xdc\x8bA\xbd8\xcb\xc1W\x8fJ\xc2\xc3\xb1\x05B\xc5\xcd\xd1\xc1\xb0\xc5J\xc2M\x13\x07Bp2\xc7\xc1k\x02M\xc2H\x9c\x07BVc\x01A\xf7g\xe6\xc1d\xe2\x9aB(b\xf5@\x86\x10\xe2\xc1\x8f!\x9cB\x9f\x94\x04Ao3\xed\xc1\'\xbb\x9bB\xcfJoA\xff\xb9\\@\xc5X\xce\xc1\xd5\xd0bA{\n9@g\xdb\xce\xc1C\xf3iA\x0c"\x8b@\xea`\xce\xc16\x84\x95B\xb4\x0b\xb3\xc1\x0b\xbd\x89\xc1T\x08\x95B\x94^\xb8\xc1\x9f\x1e\x84\xc1\xae\x08\x96BX4\xb8\xc1\x91-\x8f\xc1\xabV\x88\xc0\x12\xc8`B\x0e\xb6\xe7A\x96v\x80\xc0\xb8\xa8bB@\xda\xedA\xed\xd3q\xc0\\j]B\x8e\xde\xe8A\xa7f\x8d\xc0z\x89W\xc2F\xc1\x8f\xc2;U\x98Aw\xf9\x03\xc2\xa0\xcc!\xc2!\x8bz\xc0\xce.rBX\x9d \xc2%\xa1\x99\xc0O\x82qBD- \xc2\x8eto\xc0&\x9buB\xd1\x15\xacA\xcf\x96\xb7@G\xe9\xa5A\x13b\xa6AE\x8f\xa9@\x8f\x1b\xa2A\x9f\x18\xadAb<\xa3@\x96:\xabAg\xce+\xc2\x8b|\xa6A\xea\x1df\xc1\x01W*\xc2RO\x9fA\x02yf\xc1\xfb\x04*\xc2\xfe\x91\xa9As\xd6Z\xc1\xfa\x90l@\x17\xfe\x06\xc2\x0f\x908B\xbc=b@\x90Z\x05\xc2j#@\xf6\xd8\xedAt\xe0\xd7@"\x9d\xc1?\xaa\xbd\xefA\x0bN\xdd@l\x85T\xc1L(\x1b\xc1\xabQ\xae\xc14\xb8P\xc17\x86\x1c\xc1\xdb\x9d\xa6\xc1c\xf9]\xc13#&\xc1\x89F\xaf\xc1\xe6\xc8\xcaA\xf3\x82\xe9\xc1\xfa\x8e\xd6A\xda\xf2\xcbAL\x8d\xe9\xc1\x0c\xe2\xddAB\x1a\xd0A\xb7\xf6\xe3\xc1e\x89\xd4A\xb4\xd9!\xc2b\x9c\xc5\xc0\x97~&\xc1\x99\xf0$\xc2\xcbN\xd6\xc0\xae\xdd"\xc11)\x1f\xc2.\t\xc7\xc0\xc0\xcd\x1a\xc1[\x897@SG\x1c\xc2\xa6,ZA\x88\xf6\t@\xf0\x96\x1c\xc2\x92AdAv\x1cQ@.\xba\x1f\xc2\\\xebYA\x9d\xab\xc5A\xf74\xc7A*e\xd9B\xfd\x93\xcbA"&\xc9AF\x17\xd8BM\xc0\xbfA\xa1V\xc4A\x02?\xd8B\xf9W\x1aBW\x83\x95Aw\x19\xbb\xc0\xbc\x95\x1cB`u\x99AD\xd9\xa6\xc0K\'\x18B\x1f\xb4\x91A^\xf3\xa6\xc03\xa1\nAV\xe8\xe2A\xf4\x88\xfbAA\xe0\xfc@\x85\xd6\xdeA\x02\x97\xfeA\xa1\xca\x0fA\x97\xd5\xe6A\xb2V\x00B\xd1o\x8f\xbeg;\xea?\xd46&\xc0\\\x1c\x06\xbf25\xdd?\xe9A\xde\xbf:q\x08?c\x99\x0e@\xf5t\x1d\xc0<\xc6\x05Bi&\nB\xfc\x0egA\x81\xe6\x07B&\x8a\rB7\xf4gAQ\xac\x07Bd\xc6\x07B\xb4\x1apA\x14p\x0e\xbe|YT\xc1^C]\xc2\x04\xbe\x9d\xbe\xfcvU\xc11XY\xc2\x1b;A\xbf\x90mH\xc1\xb4c^\xc2ee\xe5@\x1e\xee6@\x18\xfd\x17A\xebu\xfd@\xce\xb8V@\xa3\x16\x1cA;\x8d\xd9@\xb4\x02 @ \xb5$A\x11\x19;A_h\xba\xc1v\xdf\x8aB\x9ekGA\xdfJ\xbf\xc1t\xaa\x8aB\x95\x08\x17B\xa3q9\xc1\x82\xe8/\xc1R\xc1\x17B%\x8a*\xc1P?&\xc1r\xe7\x17B{\xf6A\xc1ASK\xc2\xcf\x90\x01@o\xaa(\xc1\xaeBH\xc2=\t$@\xed*%\xc1\xc35M\xc2uX\xe4?\xeaI\x1a\xc1STR\x0bA\x90\xf0\xf9A\xc8i\x8dB\xc70\x01A\xdc\x82\x01B)\xfe\x8eB\xb2\x8f\xfe\xc0+\t\x97\xc0H\x8f\xe5Af\xb5\x01\xc1S>\x8c\xc0\xd2\x18\xedA\x17\xbb\xfb\xc0\x08\x8d|\xc0+\xd4\xe0A`D\x1eB\t\x16I\xc2*\xceqB?\xb9\x1eB\xabZJ\xc2\xb1juB1r\x1cBl\xfeE\xc2\xac\xd1rBC\xd8\xec\xc1\x98\xb6\xc2\xc1\xe5V\xebA\xfe3\xf1\xc1\xad\xea\xc8\xc1\xd6M\xe9A\x0c\xe1\xee\xc1\xb3\xea\xc1\xc1_\x11\xf3ABN\xd5AN4\xe0A\x15\\\x98A\xa5&\xdaA\x89;\xdaA\xea$\x97A\xb7\x02\xd5An\xe4\xe3A_\xf0\x91A\x83\xc21\xc0\'\xc8\x0f\xc2a\xd1!\xc1\x8ex\x02\xc0\x97B\x10\xc26X\x18\xc1\xb5\x8dX\xc0\x88i\r\xc2\x8b,\x1a\xc1(\x06\xac\xc0\xa4\xbc\xfdAS\xb8\xc5A5Q\xc9\xc0\xd5\x01\xfcA\x93U\xc6A\xff\xbd\x9d\xc0\xca\xf5\xf9A\xc1\x97\xcbArf\xb0\xc1g\xb4\xb0\xc0:H\n\xc2yG\xb7\xc1mp\xae\xc0\xad\x97\x08\xc2\xdeA\xad\xc1\x01\xcd\x95\xc0K\x19\t\xc2"\xd8\x9fBq\xa6\x06\xc2Y\xd3\x8eB\xe6\xd9\xa0B\xd0\x1c\x05\xc2\xdeH\x8dB\x96\xcf\xa0B\xc9\xcd\t\xc2\xc5\xa5\x8fB\xd7\xc1\x0eB\x91\xf2\x92@d=\xacA\xd9\x1e\x0fB\xcc2\x83@\x0b\xaf\xb2A&\xdb\x11B\x89x\x89@\xe7x\xa8A\xfa\'\xef\xc1V\x95\x9f\xc1\x80@\xc8B%\r\xf5\xc19s\xa4\xc1\xac9\xc8B\xb8]\xef\xc1b.\x9c\xc1\x07\xfe\xc9B\xe7\'\xd6?~H\x11\xc2l\xbd&@\xbb\xa1\xdd?\xb9\x8e\x13\xc2\x15rX@\x94\xfd\x98?\xa6\x0c\x0e\xc2\xf9\xf4B@$\xe9\xfe\xc1\xc3\xd5\xb4A!\x17\xb5@\xed\xf9\xf7\xc1l\xde\xb2A\xe7\xe1\xbf@\xfa|\x01\xc2\xc8\t\xb6A_1\xcf@x\x17\x91@\x9c\x05B\xc1#\xeez\xc1\x94\xb0f@f.<\xc1\x8c/|\xc1)\xbc\x8f@\r\xadO\xc1[\xe7\x80\xc18O\xdbA\xc1\xb5\x85\xc1\x16\xe8\xfd\xc0O\xdd\xd8A6`\x81\xc13\xaf\xe3\xc0\xd5\xaf\xe0A\xfc\r\x8b\xc1\xd0U\xf1\xc0A\x1c\xa8\xc0\xef\xf9h@\xef\x98.Bs#\xb5\xc0#\x91D@\x82{1B\x1f\xec\x92\xc0X\xac\x85@\x1d{0B-\x06jA]\xc8\x0c\xc2yp\x97B\x89\x00ZAe\xe8\x0c\xc2#\xe1\x97B:\xc1kA.|\t\xc2\x01b\x96B\xe7\xa4\x8d\xc1\xdf\x1c\x0b\xc1\x8c\xebLA\x91m\x94\xc1j\xa7\x04\xc1\x0e\x86NA\xe0)\x8a\xc1\xe8t\x01\xc1KDTA?\xdf/B_\x8d\xb9\xc0?,wB\x1f\xd2-B\xf7W\xcd\xc0Y\xb4yBg\xa3-BGB\xb2\xc0O@tB\xe6\xdd.B\xda^\xeb@\xff\\\x95B\xd8\x80.B\x03\xe7\xd2@\xf7i\x96B:\xe8+B/\xe0\xfe@\x95\x12\x96B"{\xdc\xc1\xdf\xf2\xda\xc0\x98\xe6\x83A\xf91\xd5\xc1\'\x81\xdd\xc0\xd0\xc1\x80A\xd9@\xe1\xc1\xc2\xf3\xca\xc0=+}A]\x1a\tB\xd4|]B;\xfa[B\xd7\xe3\nB\xb0\x95ZBT\xdb]B\xf0\xf2\x06BH\xbe^B\xe4\xba^B\xaa\x8f*Ai\xf0\\\xc1\xf5\x14iB\xc2(#AQ\xd8f\xc1\xad#kBN\xab2A\xa7sV\xc1\x86\xf6kB,\xdf\x85@\x1f\xd9\x86\xc2\nX\xeaAktP@\xd2\xe8\x86\xc2L\xca\xebA$\x8c\x8d@\xe1w\x87\xc2\xdf\xa2\xf1A\xfe\x00\x1aB\xd4\x171\xc0\xc1LWAy\x98\x1bBdXN\xc0\xd3\xd0dA1\t\x18B"\x89\x03\xc0\xf6\xb1]A\x1c\xcc\xcbA\x95o\xc8\xc1f~F\xc1\x1dl\xcaAr\x85\xcd\xc1v\x14<\xc1\xb7\xe2\xd0A\xf5\x92\xc3\xc1\xac(>\xc1\xe6p\x1aB\xba\x08\xf1\xbf\x05(\xc0A\xc9\x8b\x1cB\x0f)\xb2\xbf%\x1b\xc5A\x96\x01\x17B\x90S\xe1\xbf\xfe\xf6\xc2A\xf2\x1b\xb4@\x1d\xa3t\xc2\x9em.A\xd5\xdf\xae@\xe0\x16r\xc2Wq9A\x98\x85\xc7@\xe7ew\xc2!\x8a5A\xf0\xcb\x1bAuj\xde\xc0\xb5\x87\xe0A1d(A\x16\x14\xf0\xc0\xe4\xf5\xe0AHN\x11A\xea\xe0\xe9\xc0\x9d6\xe5AFhaA\xc1J\xc9\xc1\x11\xbd\xf5A\xf69qAS\xe3\xc9\xc1\xe7i\xf6AE\x14]A\xb2?\xc4\xc10\xe8\xfbA\x14D\xf3A\xc9\x91\x9eA\xcf\x87\x0fAq\xf0\xf4A]\xf7\x96AE{\x10A\x05Z\xf3Az\xd4\x9fA\x1c\x19\x1fA\xc5L\x8bA\x7f@\xf2A\xbcY\x90AYZ\x90Ar\x0f\xeeA\x89\x07\x8cAy/\x84A\xfaq\xefA:\xbf\x8eAM\xb7\x15B\x19\x99\x05\xc2\x11\x80\xc1A\xe8^\x19B\xbak\x06\xc2\x7f\x02\xc1ALj\x15B\xa2\t\x05\xc2\xb7\xf4\xc8A\xa3I\xbb\xc0\xe9\xcd\xb7\xbf 5d>\xc6O\xc7\xc0\xdd\x06\x88\xbfEF\x87?\x998\xa1\xc0{#\xf3\xbf\x95Y\xf3>\xbfoZB}\xe7T\xc1\x08\xe9\xc8A\xdf\x82[B0kM\xc1\x9b\xad\xc2A\xaf\xab]B?GQ\xc1\x94\x1f\xcdA\xab\xd2\x08B\xb0)g\xc1\x01\xa3\x01A\xdc\x94\x0bB\xafik\xc1L_\x0cA_\xa7\x07B\xa1\xd8Y\xc1\x8c\'\x07A\\\xdbLBm\xae?\xc27\x89\x05\xc2\x9f\xfcNBx\xae=\xc2\x01F\x03\xc2\x19iIB\xd2\xc9>\xc2\x01\x08\x04\xc2 \xf3\x83\xc0L\x12$\xc2\xf6\xb0(BwE{\xc0\xc5\xc2!\xc2Du+B\x84m\x87\xc0\t=\'\xc2L\x97*B\xc5\xd3-\xc0\xbf\x94\x0cA\\\x0c4\xc1\x02\x1f\xf3\xbf\xc8@\x0eAl\x90+\xc1\xa1\xca`\xc0nl\x08AY\xad(\xc1DZ\x94\xc0\x1e\xf3>A\xbd5\x8cB\xf2\xb8v\xc0)c?Al>\x8dB\x9e<\xad\xc0I\xde=A$p\x8dB\x1e\xed\xa1?\xa9\xb4V\xc2A\xa0\x81\xc2\x99m\xe1?\xf9\xfeY\xc2\xa7\x84\x81\xc2\x96\xd0\xfc?v\xd2T\xc2-l\x82\xc2\x88\xdbKA\xa3\x19r\xc0\x9a\xe3\x07B\x8b\xc0FA\xe2_\x83\xc0\xcfl\x0bBXQGA\x9c\xfa4\xc0HD\x08B\x9bX*B\n\x10\xc2A\x10A\x17A\x0eS-Bz\x12\xc4AQ\xca A\xcc\xf6&B\x85\xd9\xc3A\x07m\x1eAsE\xbc\xc1\x89 (\xc1\x8b \x85A\xfaR\xb7\xc1\xc083\xc1\x8a\xdc\x82AF\xbd\xb7\xc1\x94S\x1e\xc16\xf4\x88A\x87\xffY\xc1+\xbd\x8d\xc0)(\\B\x82\\^\xc1\xb3Zd\xc0\xac\t]B\xdf\xd4]\xc1\xb6\t\x9f\xc0\xf7*_Biu\x13B\xafz\x88\xc0:\xde9\xc1Q\xa7\x0fB\xb3\xc2\x87\xc0\xafA3\xc1gF\x14B\x94\xcb\xa5\xc0\xa3":\xc1q\x1b\xedA\x90\x7f\x89\xc1`\xcb\xf1\xc1\xfd\xb6\xe8AAu\x87\xc1&\xc1\xeb\xc1m_\xf2AnB\x8d\xc1\xa2\x9c\xed\xc17 \x1bB\xea\xd6\xee\xc1\xcc-\xbaA+M\x17BQ\x1f\xf1\xc1\xc4\xf5\xb9A>\xab\x1bB7j\xec\xc17\xbc\xc1A\x15\xa4\x8a@<\xf9-B\x1d\xbc\x8d\xbf\xdc\xa3\x7f@\xe5\xbf,B\xe3\xbeM\xbe_O\xa1@*\xec0B_\xb4\\\xbfm\xf2\xc7A\xfb\x96\xda\xc1\x05\xb6\x06Bn\x0c\xc3A~\x81\xdb\xc1!\xc4\tBY\xa9\xceA]\xc5\xda\xc1\x989\x08B\xb2t\x0eA\x9f\xa1H\xc2cJ\x88B\x969\x0bA\xb9\xaeI\xc2\x04!\x8aB\xce\xf4\x15A\x9fBE\xc2\xa2f\x88B\x8eY\xc7A\x83\x86&A\xa4\xc1\xb3A\x1d\xe5\xc4A\xa3j\x19A\xca\xa6\xb7A\x1cT\xceA\x92\xd4)A\x05\xb4\xb6A\x8d\'\xb0\xc1+\xd8\xd5A;\xf3\x90\xc1\xaf\x15\xaa\xc1\xf42\xd7A\x9f\xe8\x8b\xc1n>\xb4\xc1\x13~\xdcA\x0f\xb5\x8f\xc1\xcc\xf8\xe3AQ\xec+\xc2\x13\xb1\x8c\xc1\xb6\x81\xeaAA)-\xc2N\x96\x8e\xc1f\xb8\xe4A\xd3\x02-\xc2\x13\xa6\x84\xc1\x10\xa4\x10BO\x948\xc0\x85\x1f\xd4B\x8f\x03\x11By\xaep\xc0\x8e\xb9\xd3B\xae-\x0eBm\xd6*\xc0\xaf\xde\xd2B\xaf8QB\x96jp\xc1t\xf8\xcb\xc1\x17yOB-3n\xc1\x9f\xa3\xd2\xc1\xc8\x8fNB\xb9tl\xc1Nm\xc7\xc1\xa6\x94a>\xae\xb5GB\xbb\xde\x9fB."w?$iGB\x7f\x05\xa1BT\xf9\xf4\xbeU\xf6FB\x9b3\xa1Bn\x1a\xfc\xc1e\xb9\xa6\xbf\xb4#mBw\xdd\xfd\xc1{[,\xbfP\xe6oB8"\xf4\xc1\x0cg\x9e\xbfR/mB\xc9\xef\x94@\x85\x90\xd9\xc0d\xb0\xb3A\x96\xaa\xab@\x0f\xfc\xd1\xc0\xf1e\xb8A\x97\xc5y@#\xab\xcc\xc0\x9d\xa2\xb6A6C\x8fA\x06\xfa!B\xc2l\xdd\xc1JY\x92A\xca\xfd\x1fB\x9aQ\xd7\xc1\xf9%\x91A_z\x1fBU;\xe3\xc1T\xf0\x86\xbf]\xc1\xc8\xc1Z\r\xe0\xc1\xe7\'\x10\xbf\xe0\xbc\xc8\xc1\xcca\xd9\xc1\xfd\xc7\x8c\xbf\xc8\x91\xc1\xc1\x8d\xe2\xe1\xc1\x9f \xbaA\xcf+\xc3\xc1\xc0\x1bNAa3\xc2A\x9a\xeb\xc3\xc1|%OA\r\x0b\xb8A\x88R\xca\xc1-\xa7PA\x9a\x92\xee\xbfw\xd0~A\xc3f\x07\xc2\x0c\xc5\x9f\xbf\xcf\xb9sA\xd4\xbb\x05\xc2\xa9n\x19\xc0T;\x82A>q\x04\xc2\x1c\xda\x02A\xa7\xf4{\xc1\xb3\xdd\x83A\xdd\xdd\xef@\x12\x11x\xc1\\\xd8\x88AX\x1d\x0bA\x1e\xfa\x83\xc1w\xa3\x87A\x93#*\xc2\xf2\x9b\x14\xc2\x8ebuB9\xff,\xc2\x1e\x99\x14\xc2\xca\xe7wB\xe7\xb6(\xc2\x8a(\x18\xc2\x10\x15uB\xcc\x9bRBT\x86\x0b\xc2\xdb\xb7\xa1A\xf9\\QB4M\x0e\xc2u\x85\xa6A7\xb3OBd\xd9\n\xc2\x16\xcf\x9cAc\xe9=B6\x86\xf5\xc1A\xf4\xa2AlH@BD\xf4\xf8\xc1i\xe1\xa7A \xad:B\xa4\x9d\xf8\xc1\x08\xa2\xa5As#\xeb\xbfK\x1a\xe5\xc0o\xa1\xa5\xc1>s\x03\xc0\xa0u\x01\xc1\xfe\xb0\xa6\xc1\xac\xbfg\xbf\xd4\x94\xe3\xc0\x11\xb9\xa3\xc1\x1e\xe2/B\xdf\xee\x98@v\xdd\x91B\x1a\xbd0B\xa1T\xa4@\xd1\x8c\x93B0F2B\x9f\xbf\x80@\x0e\xa7\x91B\xf6F\x84A\x1c\x1c`\xc1\xa5\xfe\xe5B\x06\x8a\x8bAld]\xc1j\x8d\xe5B\xbb\x00\x85A\xfe4b\xc1\xf0\xbf\xe7B*\xe8\x07B\x00P*AUD\x06\xc2\xb3\x91\x06B\xd6\xfe\x1aATn\x05\xc2m\x1b\x08B\xad20A\xd8\xca\x02\xc2\xba1\x19B5\xb6%B\xa7A\xe1\xc1\x0b\xc5\x1aB\xbd\x1a"BQ\xe7\xe2\xc1\xe8^\x17B\x87\x04&B\x02=\xe7\xc1\x89,\xa0B\xc2\x05\x95\xc2D\x8b\xdeAy7\x9fB\x18\xad\x96\xc2\x81\xda\xdaAR\xf9\xa0B\x80\xc7\x95\xc2\x97\xfb\xe4A\x93rGBh\x91\xa4\xc1E \xa5A\xbayFB2\xcb\x9d\xc1s\x01\xa6A\xdb\xeeIB>u\xa6\xc1\xe2\x0c\xabA\xda\xaa\x99A\x17\xb3\x90A\x8c\xf9\xafA\x97\xe6\x97A\xea\xd4\x8eAj\xf5\xb6A\x90w\x98A\r\xac\x97Alz\xb0A#)\xd1A\xcf\xa8\x1f\xc2\x08\xd8\x8cB\xa5\xd1\xcaA\xfb\xcd\x1d\xc2:\x9f\x8cB#|\xceA\n\xf9"\xc2\x96T\x8dB\xb39\x19B\xcd\x90(\xc1\x8f\x04\x99B\xf3\xe6\x19BI\xfa$\xc1\xc2\xed\x9aB.\xb2\x18B\xbf\x1e8\xc1U\xf3\x98B\x8c\xe5\x05A\xeaM\xb1\xc1B5\x8eA~\'\x11A\r\x98\xb1\xc1`\xd3\x88A\xf8\x94\tA\xe3\xc9\xb7\xc1\xce\x9c\x92A:\x1bOB\x8e\x89S\xc2 ^\x93B4\xfbRB\xceYT\xc2\xd4\x8b\x93B\x7fgOB\xefIP\xc2\xb4s\x92B\xa1{\xd5?\xe5\x8c\x00\xc1\xab\xd7ZA\x13Y\x0c@\x99\x15\xe9\xc0M\x89^A\xf7Z\xd9?\xb98\x08\xc1\xfcgiA\xbcZ\x98?4\xaa\x96\xc1<>1\xc1\xb1K\xba?\xbbY\x96\xc1\x9b\xa6?\xc1q\x15\xf8?\x83\x14\x93\xc1\xbfk*\xc1\xfe4\x0fB\xf0J\xf6\xc1\xef\xd1\x99BbB\x12B\x12\xbb\xfa\xc1\xc9}\x9aB&\xb1\x0eBtH\xf2\xc1\x15z\x9bB\x00\x93z@RUm\xc0\x9b\xed\x94@\x03\x91^@\xb9\x96\x88\xc0X\xfe\xa9@\xc22\x8c@PYE\xc0\xa7\x17\xa9@\x1c\x8f\xf8@\xe6\xd9\xfe\xbf\x82\x99\x89A\x80\r\nADM\xdb\xbf\x9e\x03\x87A4\xbd\xe7@Mu\x94\xbf\xc8H\x89A\xbe\xa2\x87\xc0\x98\x87;\xc0[7\xf1A\xea\xb9\x8a\xc0\x0c\xf0\xf9\xbfA<\xf1ABB\x89\xc0\xdb\x1eL\xc0\xc9\x9d\xf8A\x8buaB40iB\xdb5\x95BGKeB\x855iBF\x8b\x94B:QaBE\xfckB\xf2\x95\x96B\xd6]\x07By\xcbBB\xeb\xbb\x04A\xb4\x10\x06B\x18bCB\xdf&\x13AR9\x08B\xe1\xf0>B\xa9\xca\x04A<\xa9\n\xc1KL@B\x9c9\x04B\x1a9\x03\xc1B5AB8\x80\x07B\x1fB\x04\xc1\x06\xe6A\xee\xa8\xb4AT<\xdf\xc0\xd7foB\xf2\x16\xb2A\ne\xf2\xc0\xb9drBP\x8a\xaeA\xec\xc3\xde\xc0\x10\rmB\x91F\x99A#\x87H\xc1W\xe6\xc5Al\xa1\x9dAf\xc6A\xc1\x05\xef\xbfA\x82O\x9eAz_G\xc1\xf2\xfe\xcbA\xb8\xb9)>\x082\x15A\xfb\x12K\xc1\xf4\x1f\x88?\xd3\xbb\x19A\xc4\xf2G\xc1\xde6K\xbe\xd2\x10\x0eA\x87\x19?\xc1\xfd"\x0c?\x19\xf0\rBd\x91\xcbA_1\xa2?\xdf$\rB\xe3\xcd\xcfA\xf0\x98\x89>\xaa\x02\x11Bm\x9b\xcfA\x8a\x16\x02B\x96\x92\x99\xc2\xadp\xf2A\x91i\x00B?\xca\x9a\xc2\x9ci\xf7A\xcd\xae\xfeA\xd3\xb8\x98\xc2\xe6/\xedA.S\xd3A(\xab\x7fA-\xca!\xc2\x1d9\xd9AO\xd8yA\xbe\x95\x1f\xc2 \xac\xd0A\x9bQ\x85AJ@\x1f\xc2rs0\xc0V"\xaa\xc0|5\t\xc1\xa0\xd6\x1c\xc0\x80S\x91\xc0\xffO\x02\xc1B{$\xc0uI\xc1\xc0\xb1\n\xfc\xc0\xa0\xfaw\xc0\xfe\xcaSA\x06!\x96Ai*\x8a\xc0\x0e\xb4IA0\x8c\x9aA&\xa8>\xc0\xeeh\xc3\xa3\xc0\xbe\x1a\xbbA\xbd\xfbw\xbe\x94\xd9\x8f\xc0\xbf\x7f\xbeA\xc0\xd8\xad\xbe\xfa\x97\xae\xc0S\x93\xb5A\xdb\x8d B\x9ab\x83A\x16w\x0bB\xaf\xd8\x1fB7\xfe\x89A\xb3F\rB\xbc\xad\x1fB^\xd6{A\x04\x0b\x0eB\xe1.\xbdAD\xd4\xde@\xa5e\x8eB\xcc\xee\xc2Akd\xf1@\x1c\x02\x8eB\xcb\xb2\xbaA\xd2G\xe8@G1\x90B\xe7 GB/\x80MA\x8d\xcd\xbcA\x977GB6\xeeRA\x1d+\xc4A\x7f\xc0JB8\xbdKA\xc9(\xbbA\x94\xe7\x85A\x0b%)\xc2\xbfQ\x08\xc2\xbcy\x7fA\xf5\xc7&\xc2\x02\xa0\x08\xc2}\x13\x88A\x16p)\xc2\xa7\x8e\x04\xc2\xdakP\xc1x\xe6\x11\xc1\x7f\xce\xe8\xc1>\xdaQ\xc10( \xc1\xfa\xe0\xe6\xc1y\x16C\xc1\x99G\x11\xc1\xe8\xd6\xec\xc1R\x0c\xce~?BC\xafQB\x0c\xbc\x8e?\xb1\x82=Bc\xe3SB\xdd\xa74\xbdK\x00ABh\x1fTB\xe5\xea\x97A2\x06\x83\xc2]\xf8\xfc\xc1\x02\x14\x94Aa\xe2\x82\xc2X+\xf6\xc1\x8c\xd5\x9eA1M\x82\xc2m\xdc\xf9\xc1{\xba2B\x04s\xbb\xbd%\xb5\x08B\t\xbc2B!tH=\xaby\x0cB\xe0~1B\xab\xe5A?[\xe0\x07B\xcf\xf2\xceA|\xe2\xfc\xc1\xc8)\x08B\x87\xc9\xd2A\x980\xf7\xc1\x85K\nB\x88$\xcaA\x90h\xff\xc1*\xc9\nB\x1f\x07\xe1@b\x9e\x05\xc2\xdf\xaf\xf1@\x8b\x1d\xfe@\xfcU\x05\xc2\xd1\x87\xfd@\xf7_\xd1@m\x85\x04\xc2\x98\x9c\x05Ax\x15\xca\xc12`\x86\xc1\x10\xd7\x9fB\xdf\xa1\xca\xc1\x93$\x87\xc1&\xf6\xa1B\xcdm\xcf\xc1:\x07\x8c\xc1}L\x9fB\xe9\xcd\x07B!\x9dz\xc0\xc0S\xfdA\x89\x9a\tB\xb6\xa8\x82\xc0\x144\x02B\xffe\x07Bc\x0e\x99\xc0&\x1e\xfaA\x02+)BHz\xfbA\xbd.\x97A\x01\x92&B\x1d\xc1\xf5A\xde\x00\x98A4\x01(B-\x8a\x00BW\xdc\x9cA\x13~\x05B\x83\xd3\xcbA\xcc\xf6!\xc2\x8b\xf9\x07B\x80\x1b\xd2A\xae\x15"\xc2\xa3\xf0\x03B[\x9c\xccA\xb0\x93\x1e\xc2\x9c|.?\x9eo\xad\xc0\x8b\x88JA\xd1\xc0\x87\xbe\xa0\x17\xae\xc0^\xeeJA\x9a\xa6s?h:\xc2\xc0s\xf2UA\xce\x16\xaaA\xc6\x85\t\xc2QX\x8f\xc2[{\xa6A\xa5\x14\x07\xc2\xf3\x1a\x8e\xc2H}\xa5Ad\x8e\x0c\xc2\xb8\x04\x8f\xc2zv8B?fi\xc2\xf8N\xe9A\xf0\xf78Bc\xcdf\xc2\xd1Z\xefAE\xb34B\x01&j\xc2\t\xf0\xe9A\x88\x12"?\x916\xbd\xc1\x11\x93\x03\xc2I\x7f\xc7?B\x81\xbf\xc1\xe2\x19\x03\xc2Y\x8b\x89>6\x8f\xbc\xc1\xa06\x00\xc2TIp\xc0*\x18\xa5\xc0\x15\x94\xc4\xc1\x94\x1e|\xc0\xea\x1c\xc1\xc0p\xad\xc1\xc1@\xba6\xc0Be\xa4\xc0Qh\xc4\xc1\xf5\x8a\x9aA\xd7\xe6I\xc2LR\xfcA\xd2\xcc\x9aA\xc0\xc0G\xc2\xd3f\x01BV\xbc\xa1A\xce\xddI\xc2I\xccA\'\xbc\xe0AM\xe2e\xc2\xd2\xe1\xd3A\x89\x8e\xe4A\xe0~f\xc2n\x90\xc8A\x8e\xf6\xeeA\xc8TL@\xfe\xe4\xcaA\x83>\xebA<\xb4\x80@m\xa6\xccAD\x91\xeeAHaR@f\xc0\xc2A|\x06}@\'\xe2\xb2\xc0\x1c\x13jB\x1b\xaa\x9b@\xe2\x95\xb2\xc0gYjB\x10\x1ci@\xcd\x86\xad\xc0t\xbfmBh\xb4\x8cA\xa4<\x0e\xc1\x9a\x12gB\xc9C\x92A*\xf1\x13\xc1\xa0\xb4dB\x9aK\x8fAKJ\x0f\xc1h\x0fkB\x9b\xea\xb7A>\xbb$B\x92%\tB3\xcc\xb3A\xbc<%B\x90\x99\x0cB\x0fC\xbcA\x14\xb4!BI\x19\nB\xa1\x9b5\xc2-J\x13B=\xf5\xf5Aps3\xc28V\x16B\xfe\xd4\xf8A\x06\xb63\xc2{\xfd\x11B\tp\xefA[w4\xc0Q\x0e\xb6\xc1.\xf8nB\xb4E3\xc0\x01B\xb3\xc1\xb0NrBn\xc2\xf1\xbf\xafj\xb5\xc1\x90\x03nB\xa8\xe4ZB{C\x8a@\x1fv\xdfA\x0e\xd0^B\xd3\xe2\x85@X\x86\xe0A\xda\xb0ZB\xc1\xdb\x81@ma\xd8ASU\x1bB\x8fv\xa3\xc1\x1f\xdc\xe6>\x80e\x1dB0\x91\x9f\xc1?\xfd\x86?\x19\x0b\x1bB\xc3Y\xaa\xc1\xb4Sp?\xfcs\x01Be12\xc2\xfe$\xe6A\x80\x83\xfcA\xdc+3\xc2O\x0e\xeaA\xd6A\x04Bt\x994\xc2L\xd4\xe8A\x024\x99\xc0b\x07\x1eB\xfd\xefzBdQ\x8f\xc0(e\x1aB1bzB\xce.\xa5\xc0\xe2\x94\x1eB\x93\x7f~B\xa1q\x89>G\xe1F\xc0\x8a9\x07B\n\x8c\'?\x9arK\xc0\x95\xe0\nBKJ\xcd\xbe\x14\xbf\x1e\xc0,\x13\x08B\xfb\x1fX\xc2\xe3(\x86A\xda\x84b\xc1ZYV\xc2\xb0\xb3\x8aA\xeb\xd5l\xc14\x80U\xc2\xff\x93\x85A\xafzX\xc1\xa41\xccA\xe1\xed\x83\xc1\x1a\x18*B\t\xe0\xc9A\xa8X\x80\xc1\x80w-B\x18\x0f\xcfA\x15\xf1\x89\xc1\n\x13,B\xa4Y\xacA\\z\x90\xc1=\xe0zA\x8c\xe8\xa9A\xae\xc3\x94\xc1,\x98\x83A\xa8\xa4\xa7A\x8f;\x8a\xc1\xe53~A\xed\x88\xd8Bs\x15]\xc1=Y\x9a\xc2\xa3\xa3\xd8B>?N\xc1\xe8\xf9\x99\xc2B\x95\xd9BtQb\xc1K\xd5\x98\xc2\xb2\x9d-\xc2IE\x9c\xc2\xd6ohB\x14\x120\xc2\\\x91\x9d\xc2"\xf0gB\x8ef.\xc2 \xf4\x9a\xc2]eeB\x88{\x0eA(\xf3\xac@\x14t\x81A\x01N\x0eA/\x01\x9d@\xa1\x0b\x88A\xcc3\x08A\xe0\x1c\xc9@\xadn\x82A67\x0bA\x87CI\xbfLX\x11Ag\xfc\x18A\x03wm\xbfN\xde\x18AU\x08\x02A\xf5\x99\x18\xbf\x02)\x1eA\xc4\xec8Bo\x9c\xcf\xc1\xc4\xb7\x02B7&6B\x9es\xd0\xc1%\xaf\x05B0\x897B0\xb6\xd3\xc1a\xd4\xffAV\xbc\xcfA\xc2\x8f\x07?\xf8\xb6\xeaA\x8c,\xd4A\xddKs\xbe\x16\x95\xebA\x8eV\xd4A\xac\xed\xa2?\x1e\xde\xe9A\x982A@\xb2\x14\xbe\xc0\x9f\x88/Atv=@;\xc5\xa7\xc0\xb9\x889A[\xb7&@\x8bZ\xd7\xc0V\xc66AG\x06NA\xde\xd7\\\xc2\xb9\x84\x9bB\xe6eTAFY`\xc2\xe2\xa4\x9bBj\x19ZA:\x85Z\xc2\xe8Y\x9bBT3\x94At\x9e\xdcA\xdd\xbc~Bq\xf9\x98A3\x02\xdeA\xa9\xfe{BH\x1d\x94A\xed\xdb\xe2AqZ\x80B!\xbd\xedA\xa1\xdd\xe3\xc0&?\x07B\xbeS\xf2A\x81\xf5\xfc\xc0\xc2>\x08BB\xd9\xebA\xed\xed\xd8\xc0\x02\xea\nBs\xe3\x0eAL\xab\xaaA\xcf\xe9$A\xdcz\x19A\xc6\x87\xadA\xd9\xf2.A<\x82\x02A#\xb4\xadAZ\x14*A\xca\xdf\xae\xc0\x9e\x84\x83\xc1\xdf\x13\x92BE:\x95\xc0\x02f\x85\xc1G!\x91B\xd3\xdb\xa3\xc0js}\xc1Un\x93B\x9bo\x05B\xa8\xe5b\xc1\xb3\xc5$B3\xb0\x02B\xa3\x19j\xc1\x96\xb3&B\xef_\x08B\xc0\xb5a\xc1!\x0b\'B\xf2u\xbeB\xd0@\xabA\x0c\x82\xb9Aj>\xbdB\xb6\xf0\xa5A)T\xb8A\xb1\x8f\xbdBu\n\xb1A\xa3I\xb5A\xd29\xc4\xc1\x83}\xa1A+\x1bOB\x0e\xc5\xc1\xc1\x16\x0c\xa7A\xb3\x84QBW\x9a\xc3\xc1\x84\x03\x9cA+\x90QBo\xb8\x10Ao\xb0\x8a\xc0\xd8X^B\xf2$\x13AC\x9a]\xc0\x17\xfd_B\xdfH\x12A\xd4\xee\x9d\xc0\x13haBj\x81\x02\xc2\xc7<\x8e\xc1\x98\x1c\x96B\r<\x01\xc2\x0ec\x90\xc1r\xde\x97B\xa4\x12\x06\xc2A8\x8c\xc1\xb9c\x96B`\x824\xc0\xef\x06\xfbAp\xcfyBeH^\xc0`x\xf9AE\xe5|B\xddc\t\xc0\x9e\r\xf6A\x1b\xdczB\'\xe9\x16B\xc3~\x08Bj\xd4\xecA\x90\x8b\x18B\x19\x88\x06Boj\xf2A\x0b8\x18BB\x18\x0cB6u\xeeA\x90\x9biBbOU\xc0\xe0x\xf6Aw\xc2iB&\xb8c\xc0\xbb\xd0\xfdA\x11RiB\xc0&\x16\xc0Y\xb4\xf6AT\xa8\xb5A!\x92\x17A\xcb/\xf5B\xec\xcf\xb2A\xe8\x91\'Azt\xf5B\xcf@\xbcA\x81\xcd\x18A\x91\x14\xf6B\xccH\xd7A\r\xd5\xefA\xfc\n\x86AA\xa2\xdbA\x85T\xf6A\xf3\xf7\x82A_\x88\xd4A4\x98\xf2A\x8d\x81\x8cAr\xd1\x9bA\xd3*\x19Bf\xdb\x04B\x13\xc8\x96A\xc3\xe2\x1bBF\xa3\x05B\xf8\xe6\xa1A\xab:\x1bB\xf4\x82\x03B\x0f3\xdfA\xe3Q\xbf@7b\xf5A\xb4 \xe4A\xfb#\xd3@N\xc5\xf1A\xb2g\xdaAq\xd2\xb7@vL\xefA\x933\xc5\xc1\x8a^\xc6\xc1\xff\x0f\rB\x91e\xc6\xc1\xbez\xcb\xc1\x89\xd1\x0fB\x0f\x9e\xc1\xc1\xa0c\xc0\xc19\xd8\x0eB\xa0/\x9dAS\xa4\xfa\xc1\x12\xc8\x89A\x82\x80\xa3A8\x87\xf7\xc1]2\x87A.\xa6\x9cA<\xbd\xf7\xc1\xb1[\x91AvH\xd3\xbf\xaeo\xc7\xc0E\xe0o\xbf\xf5iw\xbf_\xa2\xd4\xc0W\xf9\x9b\xbe\xaa\xa5\x14\xc07\xb8\xbc\xc0\xf9\xa9\x94\xbe\xae\x00\x03A\x93\xa2\xfb\xc0;\xe0\x03\xc2\x93Q\x03A~\xd8\xf8\xc0-\xe2\xff\xc1\xfa\x82\x0cA\xf3T\n\xc1s|\x04\xc2e\x9b\xe5A\x97\xa7\xa8\xc1\xeealA\x89\xfb\xe8A\xc4\xef\xa5\xc1\x8d\xd9xAe\xd2\xe0A\x12\x00\xae\xc1;6rA\xb8\x80\x98B7+\x89\xc1I\xf5{BT\x87\x97B\xcd+\x87\xc1\xa0\xde~B~B\x9aBb\xd7\x85\xc1\x8d\xeb{B\x1fk\xaeA\xb7\xd7J\xc1\x93\'\x9eB\xc0\xa0\xa9A\xcb\xd4G\xc1\xb2\xb9\x9fB`\xf0\xb3A\x8cMS\xc1\xf1\xc7\x9eB\x19i;Bs\x06\xbd@\xbb{\x91B5}\xb9\xc0\xc14\xe7@G/>\xc1z;^A\x9f\xcf\xc5\xc1\xbd\xfb~A\x8fGTA\xb1E\xc7\xc1\xc2\xcbrA\\\x96lA\x1cS\xc6\xc1qcxAi\x8f.B\xcb\x03\x89BV\xa9\x98Bk\x1f+B|:\x88B3\xd9\x98B2r0B\xb7\x81\x87B\x1f\x00\x98BT>\xb0\xc1P\xeaCA\xb3>!\xc1?\xdb\xb6\xc1NnGA\xc3\xc6\x18\xc1\xb5l\xab\xc1T\xb6BA\xd6"\x16\xc1\xd0HT\xc1k\x19\x0bA\x04O3\xc1c]\\\xc1-\xfd\tA#\x81$\xc1\x9dwF\xc1B\x9d\x04Atr/\xc1Iu\xe5@\x87TlA\xa9`Y\xc1\xad\x88\xf7@\xf8\xb2rA\xaa\x82c\xc1\x84\xb3\xdd@\xbe\x02^A"\xba^\xc1)\xd9tA\xcaz_?A\x1c\x7fAY\x1d}A\xf2\xe5t>\xe4\x03\x84A\x00\xe3eA\x1a\xc0%?\xf3a\x82A\n\xe33B\xe9\xe5\xedA\xac\r\x92A\xef\xdf5B\x8cy\xe9Ac\xb7\x97A\xa0\xeb1B\xd3H\xf1A|\xae\x97A\xcao\x1dB\xf2\xdc\x8c\xc2\xdf\n\xb5\xc1\xe4\xd7\x1fB\x93-\x8d\xc2\xdc\x8a\xae\xc1\xf9#\x1bB J\x8b\xc2{r\xb2\xc1J\xd0bB\xe0\xdb\xc5A^\x044\xc1\xacybB(`\xc0A?\xae(\xc1\xd0\x05cB\xb4\xb8\xc1A\x9e-A\xc1-\xa7nB\xf1_]\xc0we\x15B\x8a\xf0kB\xb0\xdc4\xc0W%\x16B\xcc\'qBF\xadL\xc0\xa8\x1c\x18Bb3bBli\xa3\xc0\r\x9b\x96\xc1T\x7f`BP+\x8f\xc0\x19b\x92\xc1)\xe0cBv1\xb8\xc0\xd8\xf5\x90\xc1c\x07\xcf\xc1\x15\xe2\\>\xd6\x9a\xe5\xc1;\x8c\xca\xc1>\x10l?\xf5\x1a\xe2\xc1\xb6\xd6\xce\xc1\xce7\xea>%\xfc\xec\xc11,P\xc1\xddQ\xaf\xc1\x7f/\xd6\xc1\xfa\x87S\xc1U}\xb3\xc1\xfe\xf2\xdc\xc1&\xeeB\xc1E\xba\xab\xc1\xe5\xea\xd7\xc1<\x83j\xc2\x16\x0b\x89@H\xc9\x15B\x9c\xb7m\xc28\xdbp@\xf7\xc7\x16B\x88Yj\xc2\x1a!\x9f@~=\x18B\xe4\x97#B\xafo\xce\xc0J\xa6]\xc2i! B"\xd6\xcb\xc0m\x05_\xc2\xf2{"B\x08\x8b\xd3\xc0\xee\xe7Y\xc2\xbcJ\x0cA\xb2 \x0f\xc0\xb3|\xa6B\xf8\r\x17Alz:\xc0hb\xa6B\xe1\xcd\x02A\x96\xa5\x1e\xc0\xd7\xe7\xa7B}?\'\xc1L\x89\x1c\xc2\xd7\xebyBZ\x82\x1a\xc1&\xda\x1a\xc2\x15gxB\x1c~#\xc1\xe4h \xc2\xc9\xabzB\x0e=\x96\xc17Xo?\xa1\xd3\xb0\xc1\x83\xf7\x97\xc1\xc1Uk>\xbbE\xb5\xc1\x07\xff\x94\xc1\xecV\n?\xb7\xcc\xa9\xc1y\\\xe9A\xf1cTB\x08\x0e7\xc2\xf7\x0b\xe6A\x17\xe6PB\xd7\x056\xc2\xf5(\xedA\xbf\x83UB\xc1\xcc3\xc2\x1a\xbe\t@@<\x8d\xc0\x1e\x9c\x1dBJ\x92\xbb?\x0c\xfcx\xc0\xb2h\x1fBF\xd0\x15@\xf8\xf9\xa0\xc0Cn B\x9f\x89\xa0\xc1s\xd1\xa1\xc2\xe5t\x03ByS\xa7\xc1u\xf2\xa1\xc2,\xf0\x01B\x87S\xa1\xc1\xf2e\xa2\xc2\x8f\xa1\x06B\xa4\x1a\xe9A\x15\x1c\xba\xc1^\n\xc5\xc0\xd3\xb8\xe8A\xeb \xbc\xc1\x00\xde\xa8\xc0:O\xebA\xe5\x9f\xb2\xc1\xb1\xf6\xc0\xc0>\x0f]@\xed\xe2\x0b\xc2\xab\xc5\xceA\x02\xd5G@J\x96\x0f\xc2\xdf\x8d\xcfA\xe1,-@\xf9I\t\xc2x\xc2\xcfA-\xe3&@x\x03\t@\xf2D\xcb\xc1E\xbb/@G\xe66@\x0f\x81\xc6\xc1\x1aX\xe2?]:\xea?ob\xc8\xc1\xa3\x8e\x17@g\xb9\xff\xc1\xacc\xcc@\xe2\xbb\x04@-}\xfe\xc1\xc9G\xe9@4b>@m\r\x03\xc2\xf4\xb7\xcd@\x8a\x8cmB\xe7(xA\xd0*\xf2AK\xc0lB\xc8o~Ai\x0b\xebA$\xc5mBzf\x82A5Y\xf6AF=\xf9Ak\xc8\x1e\xc1&\x00\xf4A\x0c$\xfcA\xfd\xb7$\xc1\\\xdf\xf9A2\x12\xf9A\x85\x80\x10\xc1\xc9\xe4\xf5A\x04.\xd8A\x9e\x8a\xd2A\xc1\xe7\x8dB\x04h\xdfA\nu\xd1A\xd9o\x8eB\xf5\x98\xd4A\xdc\x17\xccA\x94\xaf\x8eB\x8dT\xf4A\xcd\xe7E\xc2e\xe8\x80B\x8a\x14\xf1A\x15\xf8C\xc2\x08Y\x82B\x92\x82\xf5Ak\xa6I\xc2\x88\xae\x81B\x01\xa7gA\xf5F\x0c\xc1\xeb\xee\xc2\xc11\x85lA\xe2\x13\x1a\xc1\x1c\x04\xc1\xc1"MuA\xb0\x8d\x05\xc1a\xa4\xc3\xc11\xe7\xa2AN\x84\xf0\xc0\'\x14\xceA\xaf\x98\xa5At\x84\x04\xc1ov\xd2AV\x83\x9bA\x11+\xee\xc01\xb9\xd1A\xd4\xd2\xcd\xc0{U\xe5A.\x17\x1d\xc1~\xe2\xae\xc0>\x81\xe4A\x8c\xe2\x19\xc1 \xc1\xd9\xc0\xb9,\xe5A\xad\xeb\r\xc1\xd2w\x15\xc2\x81\xb3\x8a@\x06\x8e\xb5A\xf4\\\x15\xc2\x84\xcf\x91@z\xe1\xadA\xe7\xe6\x16\xc2\xd0\xcc\xa2@\xa9^\xb9AW6\xfc\xc1z\xaf(Bc\xf1\x05B\xb91\xfe\xc1\xff\xac&B\x10\xfc\x02B \xd4\x00\xc2\x87L+B\x19\x84\x06B\x00Dp\xc1\xfc\xb4 \xc2\xd1\x11\x06B\xfa\x96l\xc1\xf7_ \xc2\xebp\x02B\xb2\x9aa\xc1Kf!\xc2w\x8c\x07B\xeet\xd1A\xa1\x025\xc1\xae\xaa=A\xc9J\xcaAj\x9f/\xc1C\x1d;AO.\xd2A\xba\xfa2\xc1\x82\xd2MA\xa0u5B{\x9eX\xc1 \xa6_B(93B\xdbQV\xc1\xb4\xd0bBl/8B[\xbfL\xc1\x1e\x07`B\xb3\xed\\A\x8d\x0b8\xc2\x05\xf0\xdfA\xfd5gA>D5\xc2)\x10\xe1A^^`A\xca\x86:\xc2\xee\xf3\xe5A\xf4\x87\xc1\xbd\x8fp\x8b\xc1\xb3\x07[B|\xc3:?\xdas\x8c\xc1\n\xa8\\B\xfct\xd9\xbe\x85\x98\x85\xc1\x1fi]B\xf4c\x1b@>\n!\xc1\xcb9\x98A\xdf\xcc\x1c@\xc8*-\xc1\x13n\x93A\x9ct\x10@\xa5\x9c&\xc1XL\x9fA\xd9\xf0\xcc@vR$\xc0\x87\x0bXBG\x0e\xe0@C\xd5\xf1\xbf\xbeJXB8c\xbd@\xae[*\xc0\x9ar[B\x90\x13\t\xc1.\xc4\xdd\xbe\x18\x85\xfcAgd\x02\xc1\x0f\x15\x9c>\xa1\x05\x00B+?\x07\xc19\xae\x97\xbfO\xad\x00BJ\xe1\'B\xd0\xd0;B\xee\x87&\xc1\xbed)B\xd0/?Bf\x10+\xc1\x80\x88%B\x1a\xc6\x85\x11\xcb@#\xbc\xceA\xc6\x0fV?\xb6\xd4\xc6@\t\x1c\xd6A\xc5\x14\xd0\xbe\x1e?\xd8@5t\xcfA\xe5M,B\x9c\x8f[Avj\xbdA\x92\x12.B\xf4=hAY\x06\xc0A\xcf`*B#\xbfUA\x19\xee\xc3A\xca\xe4\xffA\x02_\xd3A\xb9\r\x92BC\x8f\x01B\xbf\xf4\xcfA\xe5\x8d\x93B\x8cY\xf8A\xb3"\xd2A\xb3a\x92B(\x84\xddA\x06\x01_A\xd7p%B#e\xdbAZ}mA\xd5\xaa&B}\x80\xe1A\xf7\xeeZA\xc2\xb9(B01\x8bAH\t\xe5\xc1\x0f\x11\xbe\xc1\xb2 \x8cAa\xb6\xde\xc1W\xfb\xb9\xc1V!\x8cA\xa5b\xea\xc1\x92a\xb8\xc1*\x8c\xcbA\xb5\x0c)\xc2\x18\x8c\x04B\xd0%\xcdA\x196,\xc2j\xc2\x06B\xea\xac\xcaA\x82\x8d*\xc2(\xea\x00BH\x8b!BGy+Av\x05\x1a\xc1\xe5\x1e$B|\x19,A\x96\xd3\x0e\xc1\x143\x1eB\xe9N-A\x01\x06\x13\xc1.\x19\x0bB\xd6\x81\xcdA\x9cy9Bn\xa0\x07B\xf1\x81\xd0A\x17\x90:B\x99.\x0cB\xf5q\xc9A&\x93\xfd\x02B\x96yzB#\xba^\xc0\xe8\xd3\x05B\x07 vBT\xb2\x8a\xc0O\xf0\x03B\xfdx\x9f\xc0\xb4q\xf2A\xf5\x9f\x18\xc2!!\xb2\xc0Jp\xecA|\x01\x18\xc2\x97\xfb\x8b\xc0\xea0\xf2A\xb37\x15\xc2^$\xf9\xc1\xe9:\x89\xc1[\x9b\xe9\xc0u\x12\xf4\xc1=\x87\x88\xc1\xc5\xc2\xd0\xc0M\xe5\xfe\xc1\xc4\x0f\x84\xc1\x87\xa3\xe4\xc0\xd2Q\x84AuD\x07\xc2\'X\x04B\xf9\x84\x80A\x1b\xd0\t\xc2.3\x02B$\xb0\x86A\x9b\x07\x05\xc2\x04\xa2\x01B\x0b\xe9\x1c\xc1\xd1pfA\x07\xa7\x8e\xc2H\x1a)\xc1RIcA\x99\x95\x8d\xc2:&\x15\xc1\xdd\xc2mA\x9a,\x8d\xc2\x1d\xf0\xa0\xc1\x1e\xc3\x82\xc1\x81\x04\x9dB\x91\xd4\x9a\xc1\x0f]\x87\xc1\xdb\xcf\x9cBiy\xa4\xc1\x1bJ\x86\xc1\xe1u\x9eB9\x11\xb9A\x9dX\xb8@\xff\xb4\x05\xc2\x9f\xd5\xb6Al\xb5\xa3@V\x0e\x03\xc2>\xcd\xb3AD\x1a\xd1@|\xfc\x05\xc2f\x0b|\xc1L9\xc7\xc0O\x191A;\t\x85\xc16]\xc5\xc0\xc4<7A\xe1=t\xc1\x80(\xce\xc0\xa5\x01>A\xd8M\xadA0:\xe8@\x153\xd0B\xeb\\\xb2A\x9d\xe1\xe8@N\xa4\xd1BX\xad\xacA\xa7G\x02A\xf2L\xcfBv\x10\x8aB\xd6\xa6\xd2A\x84\x0c%A\xcf\xaf\x88B\x11\x9c\xd7A\xd1k)A\xe1\xf2\x89B\x14\x90\xcdAmT1A\x950vAF\xd3%\xc0\xee\xc6\xdcA\xa9\x94{A\xb6\xbf\xd6\xbft\xe6\xdcA\n"qA\xda\x9f/\xc0G\xd7\xe3A\xf7N\x1a\xc1\x02\xb0\xc8\xc1\xb1%\x99\xc2\xec\xcf%\xc1\x8e\x99\xcb\xc1\x82<\x9a\xc2Zq\x1d\xc1\xa3\x15\xcc\xc1\xf3p\x97\xc2J\x1a\xffAvp\xa5\xc1G\xf4\x97BI\x04\xfdA"\x18\xa8\xc1^\xba\x99Bt\xb8\xfcA\xbej\x9d\xc1\x07\x17\x98B\xa9}\x8fB\xf4GD\xc1~\xf7\x07\xc2\xf8\xc5\x8dB\xe8\xff;\xc1\x9e\xe9\x07\xc2\xf3\xd0\x8fB\xc47K\xc1YX\x04\xc2;Uw\xc1s\xf8;?pI\n\xc2\n\xac\x83\xc1\xa2[f?\x9c\x9a\n\xc2%\x80s\xc1\xbb<\x89?a\xea\x06\xc2J\xd3b\xc1R:&B\xb5\xa5L\xc1\xb0mV\xc1\xdf\xb2$B\x9d\x06F\xc1;8`\xc16\xe9)B\xe0\xfcH\xc1O\x94\xcdAo\xfd\x0b?\xeb\xde\xbcAd\xf1\xcdA\xfe\x9c\xa3\xbe\xeb\r\xc1A\x0cE\xd4A\xf0\xb5u?>\xa9\xbeA#\xa6\xfaA\xf7\xc3\x8cB/\xa4\xb3\xc1\x92x\xf9AJ\xac\x8eB[\x00\xb2\xc1\xac~\xfdA\x0e4\x8cB\xeb\xc7\xac\xc1\xeb\xca\x82\xc0\xca\x8b\x00\xbe\x9dj\x16B2\xdbs\xc0\xfb\xb9\x13?$\x1b\x19B\x8a\xe1l\xc0\xbb\xcc@\xbf\x84\xb6\x18B\x87aY\xc2\x19\xe2\xce\xc1\xe7b\tB\xcb\xc8U\xc2p\xe3\xd1\xc1\x98\x99\x08B\x89!Y\xc2\xfdw\xce\xc1\xbbE\rB\xcd0jB0\xb0*\xc0L\xfbPAj\x90lB\xdfK^\xc0\xb5\xc0OA\xd1\xaehB\x1c\xd5+\xc0D_^AH?\x0c\xd8\xc1\x8b[Y\xc0\xf6\x95\x02B0]\xe1\xc1\x0f\x13w\xc0#\xc3\x05B\xe6k\xcbA\x17\\a\xc2T\x83\x89B_/\xc7A;\xcac\xc2^r\x8aB\xa9\xad\xcdA\xeb\xcbc\xc2;\x1b\x88B\x86\xf8\xe1\xc1\x076\x9dAt9\xa6A\xa2\x1c\xe8\xc1\x18\x99\xa1A\x96>\xa4A\xf0\xd5\xe3\xc1\xd1X\x9bA@+\xadA\x9b\x14\xa9\xc0|j\x1fB\x1c\xd0\xf1@7\x16\xbf\xc07\x98\x1cB\x96\xdd\xf6@\x10\x92\x93\xc0\xd3\x88\x1eB\xc00\x05A\x9e\xd3\xa8\xc0iY\xb2\xc1\x80\x93\xb0A\xb9>\xc2\xc0\xd8\xf3\xb0\xc1\xf0O\xb4A\xbb\x82\x99\xc04\x86\xb7\xc1\x9e\x06\xb5Al\xf4\x03\xc2\xd2T\x9e\xc1\xab\xf20B"z\x05\xc2\xbfa\xa2\xc1\xe0\x8f3Bk\x83\x00\xc2]\xd9\x9b\xc1\x1a~2B\x1a\xdd \xc1m\xf4\xf5\xc1\xd5fYA\xbbo \xc16\xb8\xf5\xc1\xa6\xd0hACI\'\xc1\xfam\xfc\xc1\xac0WA\xbe\xf5\x16A5\xb5\x89B\x1d\\\xa3A\x1ad\x0eA\x97\x0b\x8aBl\xbc\xa9Av\x87\x0cAn\xb2\x88B\x86\xa4\x9fA\xf6\xdf\xfd\xbfbJ%\xc2\xccS\x16B\xf7\x9a\xb5\xbf\xd9\xe4%\xc2;\xa1\x19Bu\xbc#\xc0\x06\xfe!\xc2\xa5\x86\x17Bz\xd1\xf2ABT\x81\xc1var\xc0\xc1I\xf1A\xc2\xdd\x83\xc1\xd3w6\xc0Ix\xfaAq;~\xc1\x8a\xc7q\xc0\xfen1\xc2k\xde\xc0\xc1\x1eJ\x08B.R3\xc2\xa6\x11\xc1\xc1\xe2\xa3\x0bB\x9f\xc3-\xc2\xfe\xee\xc0\xc1o\x80\tB\x140\x85B\x0e\n\xdb\xc1I\xd5\xbcA\xe1\xea\x86B\x13h\xdc\xc1\x89\xbb\xbfA\x88\xd4\x83B\x04"\xdd\xc1\x15\x9e\xc2A\x857\xbdA\xd9\xda\xb3\xc1\xea\xf1\xe9\xc1d\x1c\xbcA\x04o\xb2\xc1\xcc\x1f\xe2\xc1\xe1|\xb8A\xe7\x05\xba\xc1n\x18\xeb\xc1\x11L\x9a\xc0j\xe8\x8a@J\xba\xff\xc1#\xd6\xac\xc0~\xc5\x9b@\x9d"\xfb\xc1\x95\xf9\x81\xc0\x8c\xa0\x86@y\xa2\xfa\xc1\x07\xaa\x94A\xe2\xba\xa3\xc2,>b\xc1\x07\x8e\x94A\x87\xc9\xa1\xc2\x0bsg\xc1\x88\xef\x92A\xd9\xc7\xa4\xc2\xe7+o\xc1\xfd\xa3\x9aA]\x89\xd4@\x8dG\x90B\xbf\xda\x94A\x16{\xeb@\xc1\x85\x90B\x91\xf4\xa0A\x16u\xe3@\x87\r\x91B\x19\xfe\x7f\xc0\xe3\x1d\x9d@\xc9\xbb\x1cB\x92\xf5[\xc0}\xaf\x97@}\x9f\x1fBV`\x9c\xc0\xa2H\x9e@\x02\xf1\x1dB*\xa5\x9aA\xb3\xae0\xc2#\xe7vB\x0b\xf3\x97A\xa5\xa4.\xc2*\xd4sB\xfa\x96\x94A\xfa\xb02\xc28\xfcwB\xaa\xa6\x0eB\x04\xaf,\xc1\xb1\xa9EB\xd3\x13\x0fB]s5\xc1szHBr\x17\x0fB$\x05\x1d\xc1\x8bXGBm\x07@\xc1\x19Q"\xc2F\x89\xedA\x8b\xa0A\xc1S\x1f#\xc2\xba\x01\xf5A :1\xc1+\xb1"\xc2\xeb\xc8\xebA\xce\x0f+\xc2w\xa3(\xc2\x05\xd0\xb8A\xf0[)\xc2\x9b\x07,\xc2=,\xb9Av1.\xc2\xeeC*\xc2\x1a\xa9\xbbA\x14\x8d>B*\xee}\xc2\xa5\xbb\x86A\xa0u=B5\xa0\x7f\xc2\x8b\xad\x8dA\xae\x11ABq\x1e{\xc2\xf3\x99\x89A\xce\x1a~\xc0G\xb1a\xc21B`\xc1\xfc5d\xc0\xd5L^\xc2\xebge\xc1;=\x8a\xc0i\x95`\xc2\xd7rS\xc1o\xd3h\xc1\\\x0e\x9b\xc1\xa1\xd0\xe6A\x90\xaag\xc1\x18q\x9f\xc1p\x0b\xedA\x94\xaf_\xc199\x95\xc1P\x92\xe7A\xf7L\xfe@\x96*\x0eB)x\x87B\xe2\x89\xed@\xe3\x9e\x0fB\x9a\xf1\x88Bim\x02A\xf6r\nB\xef\xda\x87Bz\\\xa4@\xe8\x0c;\xc0\xc7\xec`BH\x00\xb2@\xf8\xc2\x15\xc0\x90\xcccB\xde\xe8\xa4@\xac\xdaq\xc0\x9eUbB\xe7\x82\xe8@\xdfJ\xe0\xc1|v\x8dAw\x14\xf8@5\xdc\xe0\xc1\xb5_\x87A\xd0\x92\xd6@\x8a\x8f\xda\xc1a\x89\x8bA\xe1\xd9\x99\xc1\x80\xf6#\xc2d\x19\xb6A\x0cB\x9f\xc1\xbd\x12&\xc2\xc7\x15\xb3A\xea\x8d\x9c\xc1\x96\x1c#\xc2\x90M\xbdA\xeaW\xc9\xc0\xd7t\xde\xc10\x9b^B\xf3!\xdc\xc0^\x90\xdb\xc1\xce\xcb`BfB\xcc\xc0R\x02\xe6\xc1}\xa4_BRI\xd0A8\xd94\xc1\xc5K\xbb\xc1p\x15\xd1A\xc9\x90;\xc1\xe0\x19\xb4\xc1)1\xd1A\xfd\xd1$\xc1\xb0\xd5\xb9\xc1"]\x88B#\xcfQ\xc2]\xa2g\xc1Pv\x86B\xaa\x98P\xc2\rBg\xc1P9\x89B\xb5hO\xc2\x1c\x9b]\xc1\xed\x8d#A\xb3\x8e\xccA\x83=\x9cBb\xf4%A\xcf\x89\xd1A]\x9b\x9dB\x14\xea\x1fA\xaem\xd1A\xb3\xd4\x9aB\x10\xff\xd1\xbf\xd1\xbeQ\xc0\xb6M6B\xa3\xd7\xaa\xbfg\x0e\x86\xc0\xf5\x147BN!\xab\xbf\xbbV7\xc0\x8dm9B\x80F\x9aA\xea_?\xc2\xac\tpAK7\x9bA\xfeW<\xc2C\x12xA\xdeh\xa0A4:?\xc2q\x99A\x95\xa6\xdfA\xbah\x81A\x07Z\x9cAR\xfaRB\x19\xda\xdd\xc0\x98\x86\xffA\xcb3SB\xc3e\xc0\xc0\x8eJ\xfeA\xdb\xf9UB\x13*\xe5\xc0\x80\x00\x02B\xac XB\xab\xcc*\xc1}\x8d\xe3A\xe6\xb0XB\x18L\x1c\xc1\x81:\xe1A\x01\xe1YB\xf2\x07,\xc1~h\xeaA\xe0}8\xc1\x8e7\xe5\xc1^\xb3kB\xd5\r:\xc1J\xd3\xeb\xc1\xe9\xb0iB\x17a+\xc1\x85\xb8\xe6\xc1\xfd\xa5mB\x8c4\xef\xc1\x92\x92\x9e\xc0\xea_[B\xce\x92\xe9\xc1\xc0\x99\x89\xc0\xd7%\\B\x81\x14\xf2\xc1J#\x9f\xc05\xd5^BV\x1d\x8aA\xe32}AZD\x91B\xb5W\x90A\x00~\x82A\x86\x7f\x91Bd\x17\x89A\xa2\xfbwA\xfa \x93BY\x03\xb0@B\xa6\x06\xc1\x86\x13(A\xf5,\x97@y\x9d\x0b\xc11\xe30A\t"\xc5@\x80T\x0e\xc1\xe6%/A\xa2\x90\xb8@\x1d\xd2\x19BC\x1b\x8fA4\xd6\xbb@\xa0\xa1\x1dB2\x9c\x8eA\x16\x8a\xac@\x9f\xcb\x19B-\xb3\x96AQ_\xf2A\xf1\x17\xa5@\xdc%\x03\xc2\xdf\x15\xf0A\x83Y\xa6@y\x11\xff\xc1\xc7\x0f\xf1A\x1dm\xc3@\xfd\x19\x04\xc2\x97\x17\x17B\xa8\xa7\x89\xc1\xb6I\xe6?\x9d\xda\x14B\x91\x94\x83\xc1;;\xf5?\xbaS\x18B\x1b\t\x8b\xc1\x91C3@J\xd6\xe9\xc1&\xfb\x94\xc1\x80\x97\xbaA\xee\xf4\xef\xc1\x98\xd2\x98\xc1q\x0b\xbdA\xa1\'\xe6\xc1\x19{\x93\xc1W\xa9\xc0A\x03!\xcb\xc0-30\xc2\xdcz\xbf@+U\xcf\xc0fr3\xc2\xf4\xf3\xcd@B.\xcc\xc0\xb0t-\xc2*\x07\xd5@>\xb7?A@I4\xc2\xa4\x1e\x94AU\xc4EAT82\xc2q\xc3\x8eA\xa1Z0Ar\xd62\xc2A\x8e\x94A\xd4\xc5\xc1\xc0\xa4{\x87@\x9f\xe5;B-\xd5\xae\xc0\x96\xfb\xa1@\x1b\xb6;B\xed{\xbe\xc0N\xa6\x81@\xf4\x9c?B\xf1\x18\x9bA0r\x01\xc1l\x0c\x82Bf\x01\x9bA.:\xf7\xc0\xec\xe5\x83B!X\xa2A\\T\xfc\xc0\x9ec\x81B\xd1\xed|\xc0C\xc5=\xc2\xc7\xc8\x89B\xe9\x86n\xc0\x9fe:\xc2\x98"\x89B:\x88\x85\xc0\xc1\x86?\xc2\x928\x88B\xe6\xbb\x82\xc0\x91D\xbd\xc1\x8ba\xc0Ad}t\xc0\xfa9\xc4\xc1k\xf2\xc0A\xa0\x14\x9c\xc0\x8aR\xbc\xc1\xaf\xee\xc4A\xcfk\xcb\xc1\x88\r\xd0\xc1/Zi\xc1q\x05\xcf\xc1\x16\xe6\xca\xc1E\x8ds\xc1\xc2\x99\xcb\xc1\x91w\xcc\xc1\x9eq[\xc16\xb1\x15\xc2\xa7\xcd\x94A\xe9\xddDA\xcd\x93\x19\xc2\xa9\x8f\x94A\x0b\x1cFAH\xd6\x14\xc2\xdb\xd5\x8fA\xe0\xaaQA1\xcb\x86A)\xb4\xd1A*\x06j\xc1\x12$\x8dA\xf2\x8d\xcfA\n\xbda\xc1\xb5\x9e\x82A\x97P\xd5A\xb6:_\xc1\xbd\xca\xd3A\x05\x95Q\xc1\xf3\x1b\x13A\xfb\xa3\xd8A\x82\xebI\xc1\x08*\x1bA}L\xcdAW\x8dP\xc1\xe6\xb1\x1aA5\xce\x04B\x97\xfd\xdeA.y\x13B\x87\x14\x02B+1\xdcA!\xf3\x15BDL\x06B;\x18\xe5A\xa9~\x15B\xf2\x1btA\x10\xc0\x1bB\xdd%\x9e\xc2U0rA\xb7\x1a\x18B<\x9e\x9d\xc28\xb0rA2\x81\x1dB7r\x9c\xc2}\x11\xc5@\xc3:*BV\x11E@\xdd~\xab@q\xfc\'B\x84@X@E=\xc8@\xfa\x0b,B\x81\x06}@\xba\x88SA\xd0\xe0C\xc0sbtB\x1ciKA\xa4\xc3o\xc0CTvBIlaA\x99hR\xc0\x06@uB\xcc_\xde\xc1\x8f\x02\xb1\xc1\xccw\xc2A\xf9\xeb\xe4\xc1T\xcc\xb3\xc1VO\xc5A\xfa\xea\xd9\xc1A.\xb7\xc1\x0e\xaf\xc1A\xa0s\xe1@lj\x10\xc0\x17\xfa\xedA\xe0N\xd7@\x00\xae\x1d\xc0\xe8\x1e\xf5A\xc6_\xf5@\xbf\xe1\xc3\xbf\x11\xa2\xefA\xfcP\xafA&g\xca\xc0\x92\xd2,\xc1\x9a\x91\xabAi\x03\xca\xc01\x9a\x1f\xc1eA\xb4A-F\xb0\xc0Z7,\xc1\x99\x181\xc1\xa1*\x11\xc1\xe9A\xf0A?\x000\xc1"\x93\x01\xc1c)\xf1A?<-\xc1\xf7\x7f\x17\xc1z\x10\xf7Ay,\x1a\xc1\x9b3\xb2\xc0\xa3\xbc\xb4AhL\r\xc1\xa0>\xa5\xc0\x8e\x9b\xb1A\xc7\x90\x18\xc1\x85s\xb2\xc0\xd4\x99\xbcA}a\xa9A\x10\xce\x80\xc2\xf3\xd1\x8aBN\x90\xa9A\x8d\xd2\x80\xc2c\xf4\x88B\x81\x04\xb0A\xba9\x80\xc2\x04\x88\x8bB\xc6\xebZA\xa7Y\x89\xc2\xb9\x1c\xbe\xc1\x01_dA\xa1\xf0\x88\xc2\xe9T\xb8\xc1\x1f\xfaeAQ\xa7\x89\xc2\x8b\xd7\xc3\xc1\x97\xc5\xd2@\xa4\x89\xf3\xc1Q\x91\x95Ap\x1c\xe7@P\xa4\xf9\xc1\x1b\xe9\x95A\x94\xb3\xe5@\n{\xed\xc1\x8d\xe4\x95A\xd2\x1b\xb5A\xfa\x9f\x8dB!-\xc7A\xea\xff\xb6A\x9a\x1b\x8dB\x0f9\xceA\x1b\xb8\xadA\xa2\xa5\x8dB9\x97\xc7Ac\xec\xd4@\xaa\xd3`\xc2\xba\x0c\x9bA\xad\x87\xbd@-\x89`\xc2\xb3\x83\x9fA\x91r\xe9@h\x0e^\xc2\x15D\x9eA\xc7\xf66B\x95\xf4\x01\xc2zu}A\xf0\xc75B\x9b3\x00\xc2\x86p\x85AB39B\xec\xd6\x04\xc2H \x81A\x99D\xfeAQ\xc2\xc3A\x13\xe2\xa3B\x0b\xd2\xfdA\xa1+\xc9A\xf8O\xa5B\xdd\n\xfdA\x013\xbdA\x07\xda\xa4Bi]pA\x04\xbc\xec\xc1`\x9b\xbaAj(pA[_\xf4\xc1\x11\xac\xbcA\x82\x11gA`{\xe8\xc1\x04b\xbfA\x883\x0bB\xf7\xc4\xcf\xc1\xcer\xe4A)(\nBd\x02\xd6\xc1{y\xe8A\xd8\xc2\x07Bj\t\xcf\xc1\x17}\xe1A\xb5l>A0\n\x17\xc2rd\xd6A\x01y4A\xcf\x1d\x14\xc2\x99\xca\xd4AO\x835A\xda\x8a\x19\xc2R\xec\xd9A\xfd\xe9\xb6A\xf3\xb7*\xc2\xfa\xf1pB\xe0\x85\xbbA\x88\x06+\xc2\xd2%tB\x0c\x10\xb5A\xc3x.\xc22qpB\x0c\x12v\xc1\xbaz\xb2\xc1\x86\xadC\xc1\nO{\xc1 \xd1\xb8\xc1\xb5\xacK\xc1p6\x82\xc1\x17\x82\xb1\xc1\x80c;\xc1b\x8c\x03B\x94\x16\xadA\x0b}\xb0>Xh\x06B\xbd\xfe\xacAP\xe1\x86?\x05\xba\x00B`\x8f\xa9A\xbd\x954?s\xef\x0eB\xfc\xc2\xcf\xc0D\xd4\xb8\xc1na\x0eB\xa4\x14\xca\xc0\xa7\x10\xc0\xc1\xcc\xb3\rB\xcd\xa5\xb4\xc0\xb9\xbb\xb4\xc1m"\x96AZ\xa3\r\xc2M\x91\x9bB\xab\x04\x9dA:\xec\x0b\xc22\x05\x9cBj\x02\x90A)\xb4\x0b\xc2"Q\x9cB\xa8\xe2\x00BR\x1e\x1f\xc1\xb9I!A\x94\t\x02Bvt"\xc1a:0A\x8b\xfc\xf9Af\xa7\x1d\xc1R\xc1 A\xf0,I@\xd6-\x1eB\xece\x03B\xe3fp@qh\x1cB\xeeE\x05B\xfd8\x17@\xb5\xa9\x1eB#\xad\x05BS\xd0\x06B\xda]\xc3\xc1\xce\xc9\x1dA\x1c\xa2\x04BVX\xbe\xc1\x9a\r%A\xd6\x80\x06B\x9d\xa9\xc8\xc1\xe4\xc6)A##\'A\xfc\x93\x89\xc1E^\xf6A\xb1\xe0 A\x83A\x83\xc1\r\r\xf8A\xd9\x9f\x1aA$\xc3\x8e\xc1c\x9e\xf6A[\x9a\x97Av2{B9:-\xc1\x06!\x9cA\x8d\xe6}B\xf7C2\xc1 \xd1\x99A|w{B\xc3\xa8\x1e\xc1qLsB\xa7?\xe0\xc1\xde\xf5\x08B\xc3\xb1tB\xb3D\xe4\xc1\x06#\x0cB\x07~sB\xd7\xaf\xd8\xc1$\x8b\nB\xbf^\xc0A\xa0!\xa2Ao\x8eLB7\x9f\xbbAIg\xa7A\x89~NBR<\xc7A\x80\x9b\xa0A~\x06OBe\x94fA>\x9d\x1c\xc2\xe8\x1e%\xc1\x17\x03gA\xde\xa8\x1d\xc2\x99\xe1\x15\xc1Z\xf9VA \xf6\x1c\xc20B\'\xc12\xf8yB\xb3Y\xe6A\x05\x1b\x01Bu\xe3vB\xc5\xbd\xe6A\x9br\x03B\xfe\xa6{Bh\xa7\xedAA\xa8\x01B\x13P\x00\xc1b\x10\xe1\xc0\xc9\xc4\x87A\xf4n\x00\xc1C\xb7\xc4\xc0\x94=\x85A\x1e\x96\xe9\xc0\xd3V\xdd\xc0\x1e`\x8cA\x12E\x8fB\x7f\xda)\xc2Pe8B\xa5\x14\x91B+?+\xc2\xe2\xf98B_\x81\x8eB\x03\xb6)\xc29\xbc;BF\xb3\x83\xc2\xdf\xc29A\x1b\xfc\xd4Af[\x84\xc2\r\xd1-A\xe2&\xd9AW\xb2\x83\xc2\xaa\xebEA\x16\xff\xd9A\x13\xf4PBV\xfa\x1f\xc2\xf7LsB\xd7\xfdMB\x02\xf2!\xc2\x07\xb8tB\xef\x98OBY\x94\x1c\xc22dsB\x1cAbA\xc7Y\xeb@S\xece\xc2\xf3\xb6fAu]\x03Ab\xe1g\xc2\x96\xafoA\x90\x0b\xe0@\x10\xd2d\xc2W\x89\'B]\xcc9\xc1\xe6X\x86\xc2g!)BO\xb10\xc1\xd6\xcc\x87\xc2\xe0U&B\xbf\x18E\xc1\xc8y\x87\xc2\x9d\x8a\x04B\xa7\x83\x08\xc2\xc5\xb34Aj\x9f\x03B\xe9\xe4\x04\xc2kY7A\xf1\xcb\x02B\xe4]\n\xc2\xe8y?A{Z\xb8\xc1\xcb\xb3-\xc2\xfd<\x9bB%b\xb5\xc1\x07\xcb.\xc2k\x00\x9dB\xd5G\xbf\xc1\x0c+/\xc2a4\x9bB7\xb3\x03A%\x02\x9c\xc1\xd5\xf3\xc1A\xf7\xe8\xed@9\xfe\x9a\xc12x\xc6A\x07\xa7\rA\xa4\xf0\x96\xc1RQ\xc4A\xb8:QB\x967\x98\xc1rY\xbfA\x1fHQB\x99_\x9d\xc1_\xd6\xb8A4\xfdOB\xbf2\x91\xc1\xaa9\xbdAM_\x12\xc1\xfa\x81\x97\xc1\xf7o\xbc\xc1\x10\xa9\x08\xc1\xe81\x95\xc1\x84\xe2\xb6\xc1\x1e\xbc\x0e\xc19X\x92\xc1\xdb\x96\xc2\xc1\xa0\xa3\x1bB\xaft\x8d?\xea\xd1\x80\xc2\xad\xad\x18B\xd2J\x15?\xbb^\x80\xc2\x8dM\x1aB7\x16\xe2?\xfa\xef\x81\xc2\x1fyc\xc2L@\x85A\xaaqwAF\x0cg\xc2i\xd6\x81A|\x8cvA\x8e\x8ca\xc2jP\x80As\xbfoA\x19\xd4\xacA$\x86R?C\xd9jBo\xe9\xb0A\x03-R?&\x04nBe\x1c\xb2A\xf7\xd6\x91?EdhBrHz=\t4\xffA)\xa7\xa4\xc2\x03\xd7\x07>\x138\xf8A\xa0\xf6\xa3\xc2k\xbe^>f\xa6\x01B\x01\x16\xa3\xc2\xe3\xc0\xbd\xc1\xa3\t\xe6A\x1f\x00-ARC\xbc\xc1D\xfe\xecA5\xfd1A\xf7\x1a\xbd\xc1\x11\xa7\xe0A*\xff7A\x11\xc4\xf0A\x11\xb7\xaeA\xca\x8e\xa5A\xfb\x92\xeaA\x10\x1c\xb3A\xb2\xde\xa5A\x0cO\xf0A\x84\x13\xabA$\xff\xabA\xac\xcd\x1aBh\x85\xa7Asj\xf5\xc0\xaf\x1b\x18B\xb7\xc5\xacA\xcf\x11\xf3\xc0\x8e\xf8\x19B\xfd\xcb\xa2A]u\xde\xc0\xa6E\x99\xc0\xb7\xed\x0f\xc1\x935\xe1\xc1C\x83y\xc0=\x91\x13\xc1\x95b\xe1\xc1^\xb8\x99\xc0\xbb\x83\x08\xc1#Y\xda\xc1\xe2\xb6\t\xc2P\xc6\xcfA6\x87\xab\xc0\xb4\x08\t\xc2|\xc3\xd2A\xd0\xf8\x8d\xc0Qg\x08\xc2Ia\xc8A\xef\xad\xa5\xc0\x8d\xe81B\x8b\xccS\xc0L\x83\xe9Bt\x12.B0\x88A\xc0\xc6\xf2\xe9B\xf8\xa63BX\x11\x1e\xc0*\xae\xe9B\xbe[\xe7@uc\x1fB\xe9\x84C\xc2"\xb0\xd6@\xb9\xb2"B\x1d7B\xc2\x11p\xdd@\xa0}\x1dB\xe8T@\xc2O~\x19B\xc6\xed\xafA\xe1c4A\xebL\x19B(\x9f\xaeA~#DA,:\x19B0\xe7\xb7A\xd9\x8f4A\xf3\x1f\x05B\x82\xf8\x06\xc2\xd0\x9d\xd0\xc1\xdc\xed\x02B\xaee\x05\xc2\x0f\xda\xcb\xc1\x05r\x05B\xe5\x18\x04\xc2-q\xd5\xc1\x91\x1a\tAh\x14\x14\xc2*H\xa6B\xaf&\nA\xbc\xc1\x10\xc2\xbf\x05\xa7B\xbe\x11\x01A\xba\xec\x15\xc2\x00\xab\xa7B\xdfg\x82\xc2n}\x03\xc25\xde\x94A\x16E\x84\xc2\x06\xc7\x02\xc2\xbc2\x92A\x1f\xa3\x82\xc2hm\x02\xc2\x1a>\x9cAi\x15\xe5A\xaco\x9a\xc1\x1f\x1c\x84Bx\xf5\xe6A\x96\x89\x9e\xc1\x00\x9d\x85B\xe3\x82\xe7A\x8d\x01\x9f\xc1\xe8\xc6\x82B\xdc\xeb\x02BQ\xf7\x8cA\x99\x16\xe1A\x86{\x01B\xc9M\x88A\xcd\x89\xe6A\xcf%\x05B%\xe9\x90A\xbbT\xe6A6\xca\xe3\xc0\x90\x15\x17B\x015>A\xfcN\xe1\xc0\r\xc4\x19BE\x96IA\x8ej\xf4\xc0\x92W\x14Br\xb7EA\xcb\n\x9a@\x86\xa4\xb9@\xe9\x87WB\xfc\x89\x9e@\x07\xd4\xb6@\xb6*[B0\xee\x8b@N\xf1\xd4@Z\x80WB\x08\xbb\x17A\x9ae\xa3\xbe\x16\xbc\x10B\xe2\xfb\x13A\xcfR\xe9>\xcf\xf4\x12BPB\x16A\xf1\x9dn\xbf\xf5\x82\x13B\x02\xa7\xf3@\x91\xa4!\xbf\x9d\xcb\x91\xc1w\xf8\xf3@\x14>\xc5\xbe\x9c\x03\x8a\xc1\xaa\xa6\xd8@2\xc3\x84\xbf\x17\xe5\x92\xc1\xf2\\Q\xc0{l\x9c\xc1\x0fm$A/\xf3u\xc0\xe4\r\x97\xc1\xd0\x9a+A\xb4\x070\xc0\x06(\x9e\xc1\xc3t0A\xcc\x8ceB\xab\x1b\xdc@\xc5:\x8fB\xd2\xcchB\x03\x82\xdc@6H\x90B\xad\x85eB\xf7\x17\xf9@wk\x8eB\xfac\xe7\xc0\xb3fc\xbe1\xe58\xc2\xbbG\xd1\xc0c\xc4T\xbfZ\x157\xc2\t\x89\xf8\xc0\xda\xec\xd0=\x18\xfc5\xc2a\xa0.\xc1:\x94\x01B\xb2\x85"A\x9b*3\xc1\xec\x88\xfbAl\xb4%A\x81\x80/\xc1\xfd\x83\x03B&\xa4/AdOI\xc2\xa6\x8e \xc2\x9d\xfc\xc4A\xbbCF\xc2\x08\x9d!\xc2\xd74\xc0A@tH\xc2\xc7\xf3"\xc2\x9eK\xcaAh\x96=@r\xde\xaa\xc0\x89\xbd\xc2\xc1V\x9eE@\x970\xc1\xc0\'\xe9\xbd\xc1\xec\xa5\x10@A\xf2\xb4\xc03\xdb\xc7\xc1I\x0b,B\x93\x1a&\xc2\xb8\x9a\xf4A\x8f\xc9,B<\x00(\xc2\xf4\xe8\xfbA\xdf\xa0/B(\xa2%\xc2\xd7\xae\xf1A\xc1\xdd\x93Al-\x13@"\xf8\xafA0u\x8cA\x8cQ\x07@\xf2\r\xb0A\xbf\x1b\x96A\x94\xfd!@\xeej\xa9A\xfd\x9f\x7fB4\xba\xf0AYX\x06A`\xf6}B)\x1b\xf2A\xcaV\x13At\xc5\x80B\x02\xea\xeaA)]\x0bAC\x8e\xa8AL{]\xc2\xb5\xd0_\xc2R\xc4\xaeA3l\\\xc2X\x92a\xc2\xf7\x18\xabA\x88\xcf]\xc2\x96H\\\xc2\t\xa6`\xc0\xae\xac,\xc0OrCB::\x81\xc0\xb0\x1d\x1b\xc0%\xccFB\xe4\x8e>\xc0\x07\xb2Z\xc0\xd7\xddDB\xfb\xbelBe\xa9\x0c\xc2\xea\xe6\x13\xc2>(lB@\x8c\n\xc2[\xe2\x10\xc2~InB\x10\xc6\x0f\xc2\x06\x1b\x12\xc2k\xb4\xfb\xbf\x9d\x16\x81@\x88\xee\xebA\x80\xc7\xf7\xbfe\x9e\x86@\x83\xc5\xf3A\x99m3\xc0\x91\x9fl@\x9e\xb0\xeaAg\xab\xfaA~\xcc.A/oJB\xd2\x97\xfeA\xf2y+AB\x98MB\x02\xf8\xf3A\xefO3A_%LB\x82T\x02B_\xf3\xc6@\xb8)Y\xc1\xa8\x8f\x04B\xccC\xce@j4L\xc1\x00 \xfeA\xda\xc5\xc0@\x057S\xc1\xdbH5B6;\x1d\xc1\xbd\xcf^\xc2tN3B\xfe\xf4\'\xc1J\xd5\\\xc2f&7Btb\'\xc1\xfc\x15a\xc2\xfc\xa8\xa5A\x14\x15\x0b\xc2X\xb80A+\xdd\xa3A\x92\xc3\x0b\xc2\xa7+@A\x04h\xacA\xb1\xc7\t\xc2,\xb33A}\x8d\x8cA\x07\x17vAS\xc0\xf3A\xb5J\x8aA\x86\xe2hA\xa7\xa2\xf6A\x04w\x8fAq\xb2|A<\xea\xf9A\xd1\x0b"B\xa4X\x1cA\x97\x12\xc7\xc1\xf6\xa5\x1fB,J#A\xa3\xdf\xcb\xc19\x7f\x1fB\xb4q\x19A\xce^\xc2\xc1y0W\xc1\x98P\r\xc2\x01\x9a\x81A\xc4\xb9S\xc1b\x94\t\xc2_U\x80A\xc6\xf9e\xc1\x9e=\r\xc2\xd5(\x83A\x9ct\x13B\xa7S\xa3\xc1\xb2\x07+@\xf4b\x17B\xfe\x80\xa3\xc1q\x890@\x1d"\x12B\xb6%\xa6\xc1Saa@\xa4-\xf4A\xac\x9d\x02@\xaa\x82\x9b\xc2\xc2#\xf9A\xf1o\xd8?\xb8$\x9a\xc2.\xa4\xf3A@\xa6?@\x00@\x9b\xc2\xd5\'\xabA1\x90,B\x1d\x8e\xceB\x16\xa3\xb2A"\x02,B7\xa3\xceB\x90A\xabA\xb0Y0B%\x17\xcfBc\xfdxB5\xc1GBD\x03\x92BB\xa9|B\x13\x14GB\x1c>\x92B\xab>wB\x10\x15EB\xbc;\x93B\xf0\x81\x85\xc1\x0b\xd5\xad@\xb42\xebB\x0c\xfd\x8c\xc1\x08@\xab@J\xc2\xebB\xff\xc3\x83\xc1\x1b\xd1\xc4@\x80X\xecB\xb3E\rBhh\xc6\xc1\xbc\xfe\x0bB\x15\x9f\x0cB\xf9?\xcb\xc1\xdb\xa1\x0eB\x80\xa9\x0bBS\xb3\xbf\xc1(y\rB\x02GAA\xf5\x9e\xbeA\xd6\xcc\xc5AM\xb0NAf\x97\xbaA\xb4>\xc4A f=Ak\xfc\xbfA\x8e\xf9\xbeA7\xec\x1a@\xff\xf6\x0b\xc0\x0b\xd7\xdb\xc0\xfdM\r@\x01\xf3J\xc0B\xa6\xdb\xc0U\xb0\r@\x83\xf7\x03\xc0\x12\xa1\xbd\xc0\xdf\xa7$B\x01\x15\x83\xc1\xe3\xa2\xa8@\x0b\xba%B,$\x89\xc1K2\xbb@$\xff!BXi~\xc1\xbaK\xbd@\xb4\x80\xf3@\x97\xca&\xc1\x9d-r\xc2\'\xaf\xd7@\xf5\xcd#\xc1\x94\x07q\xc2\x89\xc2\x00A\x8dB,\xc1k\x16o\xc2Z\xb2\x14AE\xe9\x9f@\x9d\x8b\x9fB7\xaf\x0bAG&\xa5@\xce\x05\xa1Bu\x1d\x11A\xe6=\x80@-K\x9fBr(\x90B\x0e\xb0\xc2A\xdcr\xfa\xc1\xa6\xc0\x90B}8\xbeA\xccN\x00\xc2\x11\x17\x90B\xf1\x95\xbdAR\xbc\xf4\xc1\xd5\xbdbB\xa4\xd6E\xbfd\x16\xc2\x91\xe9\x9dBIb\x10A\xce\x17\x16\xc2\xda\xbb\x9dB\x11Y\xbaA\'\xf3\xca\xc1]\xbe\xf0Ao\xeb\xb8A~\x12\xc4\xc1\xa6?\xeeA\xd47\xc0A\'p\xc9\xc1,\xf6\xf5A\r\xb1\xec@\x97\x83\xa8\xc0a\xa1D\xc1X\x99\xd0@\x94\xd1\xb7\xc0\x84&B\xc1\xc9\r\xf4@\x81H\x9a\xc0\xa6E7\xc1\xd6\xb5\r\xc2\xa7=^\xc1T\x18;B\x9a\x80\x0f\xc2\xb6qS\xc1\x004=B_e\x0b\xc2D\xacd\xc1w\x91=BQ\x07\x9fA\'m\xdb\xc0\xe5s^A\n\xa3\xa2A\'\xcf\xce\xc0g[QA\xe2\r\x98A8\x89\xe3\xc0\xb0\xc0XAE\xd5\x92Au\x83\xb5@\xf6\x1b\xfcA\xddd\x90ABr\xb5@\x07]\xf5AK~\x99A\x82\xaa\xa7@V\xd2\xfaA\xad\xb2\xaeA\xd0\x80\x8bA\x88\x9c\xa7\xc1\x13\x07\xacAk\x9a\x92A\xceC\xa4\xc1\xbb\x10\xabA#\xdd\x85A_\xd2\xa3\xc1\x94\xb4\x8bB\xe5 \x1eB`\xe5\x8b\xc1Q\x9f\x8cB5\xc0\x1aB\xb57\x8d\xc1\x89Y\x8bB\x86\x9b\x1dB\xf2`\x84\xc1\x8a2\xc3@\xea"\x17\xc2\xa8<\xe5AL\xbe\xd7@\xa1\xa8\x15\xc2\xb6\xe2\xeaA\xe2\xeb\xb7@b\xf3\x19\xc2\n\xc7\xe9A\xc8\xcd\x1bB\xcc9\xc7\xc1\x1fw\x0bB\xdc\xf2\x19BiA\xc2\xc1H\xc5\rB\x19\xd0\x1eB\t\xac\xc6\xc1\nf\rBX\xac\tB\xdc\xc1\xad\xc1\xc4\x01\xf9A\x11]\x06By\xe7\xaa\xc1T@\xf7Aa@\nB\xecc\xae\xc1)S\x00B\xd2\x1d\xf4\xbf\xb0G\x94@\xd3K\xd6A\xddI\xb2\xbf\x97j\xaa@rW\xd9A\xb00\xbb\xbfG\xaar@X\xed\xd8A\xab\xc7\xd5A\x93^\x8d\xc1@;\xaaBr\x9e\xd3ASw\x89\xc1\x8b\xc6\xabB\x0c.\xdcA\x12\x1d\x8e\xc1\xa1"\xabBS\x8a\xa6Ao\\nAl^N\xc16\x9f\xadA\xcf-hA1\x82I\xc1f\x13\xa5A\x03\x05vA\x19\xf0@\xc1a\x17\x80A[\x16\x97A\xe6\xdcUA\x9c\xb6\x7fA\xa00\x90A\xe7\xcf[A\xe6\x18tA\xef\xe0\x95A\xbe\xaeKA\xa2\xe5[\xc1\xc4m\x17B\xdc\xd0\x85\xc1\xc4\x89S\xc1\xde\xd3\x14BP\x96\x81\xc1\xfb/U\xc1\x90}\x1aB+^\x83\xc1.F\xa3\xc1\x98\xba\xf2A\xb0\x7fLA\xbc\xdd\xa7\xc1\xd2q\xf8Ac8HAM\x93\xa7\xc1\xfe\t\xf2A\xef\xebYA \xfc\xcb@\x1b\xbc\xcf\xc1\xfc6\xcfA\x05y\xc0@`F\xd2\xc1\xa9]\xd5A\xc8K\xb6@\xc4\x8a\xcd\xc1\x04e\xcaA \xcf\x12B}\xc2]\xc2\x8e]\x1fB\xfbU\x13BT\x01[\xc2\xb1\xb9!B\xb9\xac\x11Bw\xe1`\xc2\xe2\x82!Ba|}@v\xb91\xc0\xdf9\x07B\x00\x91\x8f@\x8e\x8bD\xc0\x06d\nB\xbd\x0fE@5\x05\x1a\xc0\xf3\x82\x08B\xc7\x11\x0f@\x17\x18\xd8@\x98nAA\xf8\xf8%@|u\xf6@t\xeaAA6!\x1a@\xae\x0f\xcf@2\x92PA\x03\xa9\xef\xc1#\xbd:@\xa4SjA\x83\xfe\xf3\xc1\xc1\x0bm@\xc5\x8bnA\xecW\xf1\xc1\\\xd65@e\xec[As\xc0\xba\xc1g\x99\xef\xc1,\xf8\\Ac\x85\xb7\xc1\x1aW\xec\xc1\x9a\x95OA\xd0\x8c\xbb\xc1\xd3\xf3\xf6\xc1\x17\x84YA\xd4)\x0bB\x9cUO\xc1\xa0\xf0\x83B\xe8\x0b\nB>]C\xc1\xbe2\x85B\xaaG\tBn(\\\xc1\xc7~\x84BiH\xa3B\xbf\x01;B\xca\x11bA;\xe8\xa3B@\x8d>B\xb1L`A\xdfK\xa2B\x86:;B\xc7\xe5nA\t\x1e\x91B\xc5\x07.\xc2;!\xde\xc1\xb9\x96\x8fB\t\xcf,\xc2\xcb\x9b\xe2\xc1\x10\x8e\x92B\xfdO-\xc2\xaev\xe3\xc1\x1c\xff_Ag\xe4\xe8A\xf0\x9a\x1f\xc1\xb4\x83iA\xcb\xe7\xe2A\xa7\xe8#\xc1v\x97cA\xc3\xd8\xe8A\x1c\xf6\x0f\xc1W\xf5\x8b@!\x04\x9bA\xbc\xdbmB\xf6[y@\xc0!\xa2A\x80mmB\xab`\xa8@\xd9\xac\x9cA-tmBe ABk3\xd7\xc0N\t\xcbA\xafp>B\x1f_\xcd\xc0\xb7\x86\xd0A\x9dqCB\x00\r\xbe\xc0-\xaf\xcaAf\x02`@\x96\xb7\x05\xc2At\xeaA\x95m-@%~\x04\xc2\n\xc4\xeeA\xe06i@m\r\t\xc2\x0ei\xeeA\x86\\\x08B\x8e8GB[\xa7\xa7\xc0\xbe\x94\x05B\xe8\nGBp\x8f\x92\xc0\xcbh\x0bB\xbenGB\x11\xad\x92\xc0M~rB\x92\xe7\x03\xc2\x88l\xbdAO\xd4rB\t\xde\x01\xc2F\xb4\xc3AX\xd9nB)^\x03\xc2m\x81\xbbAD\xac\x06\xc2\xc5Pt\xc2\xfdEE\xc2\xf9\xf2\x04\xc2\x87\xa1r\xc2n-B\xc20\xb7\t\xc2\\\xeft\xc2\x90[C\xc2\xb7?;\xc0Z\x12\xf4?\xc3\xe7*\xbfOg\x18\xc0=\xae\xd7?T\xc2\x10=83n\xc0o\xa6\x01@\xa3fq\xbeV\xdcqA\xfe\xd6s\xc1O\x01?\xc1\x98PwA\xce\x07{\xc1\x06\x05L\xc1\xdf\xf0}A\x8b%w\xc1\nE4\xc1\x82\x049Au\xec\x8a\xc1\xe3\x05\x87\xc2\xf1\x9d)A\x00\xde\x8c\xc1rj\x87\xc2\xf3\x1b=A\x11\xae\x91\xc1\xda0\x86\xc25?\x88\xc1\xb2\xb5z\xc2\x1b!\xe0A\x87\x8c\x86\xc1\xc0\xc9z\xc2\x1d\xa1\xd8ABX\x89\xc1$\xbcv\xc2f\xe8\xe0A>\x97\xcfA@\xa4\t\xc2\x9dh\x8bA*\xce\xcfAcO\x0b\xc2[\x1b\x84A\xa1\xdd\xc9A\x8bY\x0b\xc2V\x8a\x8eA\x9e\xf2\x8aA\xcfU\x1d\xc26Q\x98B\xea\x07\x92A\x9fC\x1c\xc2#]\x98By\xd6\x8bA\x8cE!\xc2\xe3\xd9\x98B\xad\xd0Z\xc0\xfa\x96\xe2\xc1\xb9Q.A[\xa1\x8c\xc0\xd6\x06\xe0\xc1\xdad-A\xca\x9dJ\xc0\xe6\x87\xe0\xc1\xad\xa1z\xb9@%\xbcK\xc1\x9f{\xf1\xc1{\x03\xdd\xc1\xbbg>\xc1\xcb,\xf5\xc1\x8b \xdc\xc1\xf1\x90H\xc1\xf9\r\xea\xc1\xfd\x0f\xde\xc1\xe3\xf3\x07B\xd0`\x95\xc2\xd52\x83A0G\x07BI\xd5\x94\xc2\x0fj\x8aA\xf2\xa0\x0bB\xc3-\x95\xc2A\xec\x83A\xc15\x89@\xc0\xe3\xcf\xc1\x1e\x96\x07BR\xe5\x92@\xb0=\xd6\xc1\xb0\xa7\tB\x9dzw@\xc8\xdc\xcb\xc1x)\nBK\x1d\x89A\xc8|\x1c\xc2\x0b)\x90\xc2\xa93\x88A0o\x1c\xc2\x18>\x8e\xc2\x18a\x8bA\xe9E \xc2Kl\x90\xc2\xe2\xff\x16BN7\xdd\xc1\x15$V\xc2\xa2\xb2\x19B\x88\xea\xd8\xc1\xc2-T\xc2\x8b\xb1\x14B\x83\xbd\xdf\xc1j\xfcR\xc2b\xb6\x81\xc1)\xf96B6\xe0jB^p}\xc1Lu5B\xb40nB\x99\x0b\x89\xc1\xe798B{\xdakB\xf3wnA\xfejN\xc2\x84\x0c+A\xd6;qA\x02\xd4P\xc2\xd8m7A\x99\xb6yA\xe7\x95K\xc28\xf7,A\xab\x05\xef@\x9c\xd5\r\xc1@{\x88Br\xc4\xf1@\xb9\xb3\x0e\xc1\x9el\x8aB\'\xb1\xd3@\x198\x15\xc1\xa3\x1b\x88B{\xdeSA\xe3\xa6\\\xc1\xd7\x1b\x07B\xad\xce^A\x1d\x1bc\xc1R<\x05B;\xb1XA\xfe\x8b^\xc1[\x00\x0bB\x0f\xdc\xb2\xc1\xdb?&B\x0c\x92\x9f\xc2\xbf@\xba\xc1\xbfA5\x03Z=\x00\x8b\xef@\xa5\xa0\xbaA;\xed\xb0@o\x1c\x0b\xc2\xbc\xbe\x9bB\x93 \xaf@\x86\xc4\x07\xc2\xe8\x9a\x9cB\x11\x8c\xa7@z[\r\xc2\xf29\x9dB\xbaj\xbd\xc0\xc0R\x8d\xc2\xd9\xfd\xd7@|@\xb0\xc0&\xb2\x8b\xc2\xba\xf1\xdf@\xcb\xbd\xc5\xc0\xb5\x1a\x8e\xc2Y\xde\xf3@8\x03\x96A\xb6p~@\x1a[fB\xc4\xb1\x95A<>\x94@jocB\x80\x9f\x97A\xbd\x06\x92@\x89\x8ciB<\xbe\x11B3h6\xc0\xa3\x80\xc8\xc1\xd8\xbe\x10B\x86z\x02\xc0\r>\xc4\xc1)q\x13Bq\x00]\xc0\xe33\xc3\xc1]\xf2\xc6Ah\x0f]\xc2\x85\xc0\r\xc1\x08\x84\xceAA\xea\\\xc2\x96\xb4\x0b\xc1!,\xc5A\xc8$_\xc2^\x03\x02\xc1\x80\xb0)\xc2\x97zxA\xc4\xff*AZ\'&\xc2qGsAy\xa9*A4\x0c+\xc2\x11\xaauA\xb4-9A1e\rBH\x02\x83\xc1\x03J+B\xeaF\rB\xd6\x88y\xc1\x00b-B\xae\x89\rB\xefb\x88\xc1\x8f).B\xaf\xb4\xcaA\nq\xe4@\x8d9W\xc1\x08\xde\xc8AU\x1d\xdc@`PI\xc1\xd5\xcc\xd2A\xa7\x8b\xe7@\\\rW\xc1\\\x00\x16A\xe3\xdd"A\xdb\xac\xf7\xc1\x9c\xcc\x19A)u/A\x97\x97\xfb\xc1 \x86\x1dA&}\'A\x98t\xf1\xc1\xaf$L\xbf\xd2\x99\xf7@\x83\xa9=\xc0\xcf\x8b\x11\xbe\rL\xe7@\xe4\xaa\x18\xc0(a\xc8\xbfY\x8d\xf4@^\xbc\x18\xc0\x8d\x1f\x19\xc2xN\x16\xc2N\x16\x93AZ\xa5\x19\xc2\x86\x87\x12\xc2F\xc6\x91A\xf6\x9c\x15\xc2\x7f\xd4\x16\xc2;\xd5\x96A\xc3\xc0\x86\xc0\xef\xea|\xbf~\xbc\xdeA\xfd\xbd\x83\xc0\xef\xfd\xa0\xbf\xdaF\xd7A\xc1\x87h\xc0+\x1a\xca\xbfV\xd5\xe2A\xa8\xc15\xc2 a\xeaA\x92\x83\xdeA\x92\xe95\xc2\xf5\xaf\xe8A\xb1p\xe6A}\x9d6\xc2\xed)\xe3A\xa9\x1d\xdbA\xe6\x17c\xc0p\xc4\x03B~\x96PB\xb6cN\xc0\xb3r\x01B$\xccSB\xaf\x1d\x89\xc08\x8a\x05B5\x98RB_\x8b\xb0@\xe9\xf4\x11\xc1C\x98\xddAC5\xaa@\x18\xba\t\xc1w\xe5\xe3A&n\x93@\xfd\xdf\x15\xc1\xda\xc4\xdaA\xa2\xcd,B;\x13\xa0\xc1u\xb4\xbaAx\x93+Bb\x97\xa3\xc1?&\xb4A\xed\xcd)B\xc7\x8e\x9b\xc1\x1d6\xbcA\xd8\x07&BU\x1aD\xc2&W\xf0Acg%B!\xdbG\xc2\xf1c\xf2Axd%B@\x1cB\xc2\xb5\xa5\xf6A\n\xf2W\xc1+\xfb\x91A\xda\'\x8eBF\x01^\xc1c\xf8\x95A\xd8\xb0\x8fB\x13/a\xc1\xc9\xe5\x94A\xf2\xac\x8cB\xb7\xe1\xa8A\xd7\xb6\xbf\xc1\r\t\x85B\x17\xd4\xa7A1\xe2\xc2\xc1\xb56\x83B\xff/\xafA[\xaa\xc3\xc1\x08\x7f\x85B\x02\xe2\x18B#\xffWA\xd1\x93\x1eB\xe6\xca\x16B\xc5\x83bA{~ B\x80P\x19B\xa58NA\xf7\xb1!B\x10\xdd\x92\xc1z:\x18\xc2\xf8\x1f\x8eA\xdf\xe8\x94\xc1\xba$\x1b\xc2\x1b\xa5\x92A\x13\xa6\x92\xc1\xbb&\x15\xc2U>\x93Awv\xbdA%\x97\x05\xc1\xa6\xbb\x98A.\x9c\xb9A{2\xf6\xc0\xb8/\x9dA>\xc2\xbcA0B\xfb\xc0\x0cO\x92A\xc0@0B\xadx\xd8\xc1zj\xf8A\x90\x00-B\x9d\x88\xd6\xc1\x1e\x02\xfbA\xbeb/B8\xe9\xdf\xc1\x85\xb1\xf6A\x08\xc9\xacA\xa9\x98\rAH\xdd\xa7A\xf3\xca\xa7A\xb7_\x03A@N\xa4A\xca\x06\xa9A\x10\xa8\x14A6\xd3\xadA\x8fy\x1cAn\xa9\x81=\x0ec"\xc36\xd5\rB\xc9\xba~?\xb93\'\xc3)i\xbcA,\xa3(B>4\xce\xc2\xf5&\xd2A?\xcd\xc6\xc1"^R\xc3L\x86\x9aB\xac\x01\x1f\xc1B8U\xc3\xb8U\xb4A\xce\xb0\x17\xc2E\xcb\x80\xc3\xea\xa8\xa4\xc1\xa1\xc0D\xc0h\n\x9d\xc2\x96\xc2\x82A\xcb\xbe(\xc2\x1a\xdd\xd6\xc3\xebfA\xc1\xb7\xa9\xc6\xc1S\xba\xf5\xc21\xfcpAGk\x8e\xc2\x121T\xc3A\xca\x08A>\xaa\x80\xc1\x9d\xe7\x11\xc3\xba\xbe4B\xf9#\x8d\xc2Q\x93\xbe\xc3\xef|\xf5\xbd\xc6#\xd6A\xa4\xf9S\xc3!\xdc\x83\xc1\x84!&\xc2D*\xaa\xc3\x80\x9f\xf8@\xa2RK@3C\xc0\xc3DW\xfe@\xa5JMBR\xf6T\xc3\x9f\x98$B8\x9cW\xc2\xf6J\x90\xc31\x03\xce\xc0\xc5\x11\x8a\xbf\xb5\x86\xaf\xc3\xca\xd0lA*y\x96\xc1\x1c](\xc3\xb1\x81`A\xc0\x9f\x12\xc0e\xc4T\xc3\x1e{@B\x89GT\xc1tWt\xc3\x144\x04\xc2\x8b\xdd&\xc2z\xbd\xbe\xc3\x08\xe2$\xc1\xf1\xb5\x04\xc1\xb6\xe9\x95\xc3#\xe6\xdfA\xf2[\x0f\xc2C\xd2\x11\xc3Ii\xceA|\xa9l\xc1cy\xfe\xc3w\xad\x96\xc1\x1e\x98`@c\xb4n\xc3\x92f\xdc\xbf\x1eI\x1d\xc1\xafB\x94\xc3\x9d\x0f\x04\xc1>\xe18\xc1\x9f\xc9\xaa\xc3\xb2\xb7xAE[f\xc23\xd0\xcb\xc2\x8c\x88\x1eBe\xb5S@\xadu\xf6\xc2fd\x14B\xd0G"\xc1\xcc\x0c|\xc3\xf0\x0e\x86\xc1\'\x953\xc2g\xa3\xab\xc3\xe2\xeb\xe8AJM\xf4\xc1a\x0f\x81\xc3\x14\x80\xa0\xc0b\xc1\x02\xc1\xa5V\x1f\xc3~\x8a#A\xff\x11\x93\xc0\xe2\x00\xd7\xc3&\x98-@\xcf\x1cTA3\x14\xed\xc2\x91\xdd\x1a\xc1\x1e\x00\xf7\xc1S\xab\xaa\xc3i\xc5\x07A\xd2\x02\xb2AP(\x92\xc3\x80\x03\x11B%\xda\x1b\xc2v\xb4\x8f\xc3Fu\xacA\x8aj\x81\xc1\xbew\xea\xc3\x95\x7f\xa8A)\x83\xf8@U\xa0\x9d\xc2\x19\xf3\xe3AeU\xb6@\x8f\xceK\xc3Q\x124Bbq\x83\xc1{6J\xc3{\xe88B.&\x13\xbf\xf6\xd2\x16\xc3\x98\xc5E\xc2p\xa5s\xc1Cv\x80\xc3Mf7\xbf\xc4n\xba\xc0\xf8`x\xc3=/9\xc2yz\xbf\xc1\x19+M\xc3G\xbf\x9aAH9\x1b\xc1_\tU\xc3\xdax\'B[U\x03BY\x87\x02\xc4\xbc\xa8NB\xa7\xb2\x81A\x9c\xa2\xa7\xc3\x16\x9bj\xc1\xf9tO\xc1\x1f\xab(C|\xeez@v\xe1\xe5\xc0\x1a\x92\xadC\x8aWiAp \xa6@\x10\xaf\xf8B\xe3\xcepB8\xf2#@\x1f\x0czC\x16k"B$u\x86\xc1A\x91\x0bD\xf9\xb2\x16\xc1\x8f>\xf0\xc1q)\x90C\xc7K\xdf\xc0\xec\xa5\xc0A\xa2u\x96C\x07;\x1aB\x16\x00\x80\xc1\xd3\x97\xaaC\xb1\xa2C\xc1\x87{\x16\xc2q\x95\xb9C\x16\xc8\x82B\xa6\xbd\x0b\xc2\xc7N\xceCh\x97{\xc1\x8e\xc51\xc2l(\xd2CEZCB=\xef\x14\xc0\x9e\xe8\xadC0\xa4\x14B\xee\xebG\xc2+b\x19Cc1nB\xaa\xc4\n\xc1\xd4+\xe7C\x04\x10"B\x17\xcd\x15\xc2[\xd8\xc0C\x01\xcb.\xc1\xd0%$A\x19\x8d\x9fBm\x92\xca@/\xb2\x90Abe\xd2C\xbd\x1c\x12B\xf1\x9c8\xc2\xf4\x9e\xa5C\xc8\xb89B\xb5\xf7V?\xdcn~Cwy?B>=\x8b\xc2\'\xc2\xecC\xf3COA\x04\n[A\xb9\x8a\xd2C\xf4\xc0u\xc0\xd57\x9cA\x98\xe5\xadC\xda\x89\x89\xc1\x112O\xc2\x17x\xbaC\xc0\x06\xebA\x82\x9a\x00A\x9ft\xffC\x91\xcc>A\x95\xe4\r\xc1\xc0\x84\x16D\xd6\xae$B\x86% \xc1\x10\xce\xbfC\xd7\xd8?B\xcf\x9e\x9cA\xd1\x8a\x0cD\xa1\xf3\x81@\xaf\xd3g\xc1\xbf3\xf1C[\xa9\x92\xc1\xd1\x87\xcd\xc1~ \x81CVo=\xc2\x8cA\x86A\xb1B\xd3C\xcb\x05\x1fA\x0b\xd3.Ad\xf7\xadC\n\xa1rA\xda\\\xef>\xa7L\x0eDk\xd3\x86A\x99\x17+\xc2?.\xeaCU\x9d\x9e\xbd`U\xb5\xc1\xc9Z\xaaC\xb8\xcf\xcd\xc1\x96k\xdc\xbf\xed\xc7\x0bB\x1f\x91\x8dA\x12\xb9\x8d\xc1\x80\xbb\xd8C\x0f\xfa#B\xfd\xe2\xb8\xc1H\xa2\xffC(\xfa\x85B@\xa8\xaa\xc1\xdee\x81C\xf2\xfe\xd5A\x86bUA*\xbd\x99C\x8f\xb7\xf6@n\xefP\xc1co\xc4C*\xa8^\xc1\xfdb\x85A\xf7\xcb(C\xe4\xeb\x13AqOV\xc1\x93\xd1\x90C\x17\xbf\x95A\xbe\xb4\x8f\xc1\xf2\xf6\xadC\x88\xc4)Abi\x99@\x8b\t\xedC\xf6W.B\xa5\xb0_BE\x15\x0bD\x8aw\xcbA\x05\xeb\xb8\xbfs\x13\x1aD\xa6\xc7\xceA\xaf\xff\x00\xc2IX\x19C!01B\xa8\xedw@\xect\xc4C\xed\xf9\x1d\xc1\x0e+\xfc\xc0\x88\xb0\xd3C\xdb\xcf]\xc0\xdc\xbb\xb9A:i\x1c\xc1' -tba. \ No newline at end of file diff --git a/testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.npy b/testsuite/MDAnalysisTests/data/legacy_DCD_adk_coords.npy new file mode 100644 index 0000000000000000000000000000000000000000..6d1a498c158b8cbe264f41b21d35c2c97bfe8e01 GIT binary patch literal 80264 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\xf2\xc0\r8\x83A\\\xa24@\xf3\xe7\xcc\xc0c\x14\x86A\xa3%~@\\\xdb\xbb\xc0\xb6\xe1\x81A\xc8\xb1\x9a@\xb2\x04\xbf\xc0\xb8\xe1\x8bA\x1f\xf0\x80@YP\xa8\xc0\x9dS\x88A\xab\xd0\xdd?\xe6f\xc4\xc0\xc9%\x88A\xa7\x91\x8f?Y6\xdc\xc0\xc4\\\x8eA\x8d@\xe2?\xe7\xd5\xb1\xc0\x85C0A;=\xa3@\x86|\x9b\xc0E\xd0:A\x12\xf5\xb6@\\$\x80\xc0\x01X\x1cA\x89@\x92@\x11_\x92\xc0n5\x14A\x89\xe4\x80@\xd1\xfc\xa7\xc0:\x1a\x10A\xed}\x9f@\xe3sY\xc0\x19\x89\x1aA\x8b8\xaf@U\x0f-\xc0\x06,\xfd@\x1fp\xc0@n\xdas\xc0\x8e\xd0\xe9@\xa0X\xaf@\xff\x18\x94\xc0\x18d\xdd@\x8f\xa9\xcc@X\xee,\xc0\x03U\xf4@5\x0f\xd7@\x8c\xcf\xeb\xbf+\xbb\xc8@\xb0e\xb0@\xc1v\x18\xc0\xa3\x98\xc8@\xd6/\xe7@\x97\xbcE\xc0y\xab\x08A<\xb0\xe6@\xd1\xf5\x8f\xc0\xb7\xe8\x0eAV\xd6\xde@h\x9d\xb1\xc0\x84\x13\x15Al\x15\xf3@\xb9\xc5z\xc0\x1c\x84\xf3@\x9dU\x06A\x04\xea\x99\xc0\x99\x01\xea@\xf0q\rA\x19\x1ey\xc0\xe8Y\xd6@\xf1\x9e\xfd@\xe9\xc3\xa7\xc0\xe8\xd1\x02A<\xe9\x12Aj\x98\xaa\xc0\xc3\x98\x07A\x11\x1er@\x9d#-\xc0\x86\xb7\x00A*\x9d5@\x97^Y\xc0\xe3*\x06AJ\xb4r@\x1f/\xab\xbf\x1d\xfe\x0eA\x99\xe8\x90@\x01\xe2z\xbfE0\xf8@u\x1e6@\x85]\xfc\xbeN\x13\xe9@\x8ev\x04@\xeeK\x8d\xbf\xe9\xfd\nA+\x17\x0b@)\xd9\x0b?\xa2\xa9\x15A\xd3\xd7>@\x95!g?\x8f\xfd\x00A\x85^\xc5?/U\xe5?\xd1\x99\xe8@o\xc9;?c\x13\xc1?\xfc\x17\xf7@\x1a\xbb\x15@j\x12\x1d@\x81\xdb\rA\x1e\x9d{?#\xe8\x18@\x1f\xa9\x18A\x1b7\x94?\xa0c\xa3\xbe\xa2\x90\x1eA\xe6\xdc\xd4?\x80x\xa0\xbf\x03\xd6\x0eA\xda\x0f\xbe>\t\x91*\xbf\xbd\xd4*A\x92\x0b#?\x81\x08\xe2>\x06\x1d\'A\xdfA0>[w\xba?\x9e.3A\'\xc4\xc4?\x0b\x8cM?\xff,5A\x1a\xaf\xb3\xbc\x17$i\xbe\xc8Q\xd5@<\x93b@\x16\x98\xbe>\x93\x0e\xde@\xa7\xaa\x8f@J\x96\x8c?\xc5\xba\xad@\xf8A>@\x01\x17\xa3>#\xa6\xa8@\x04\xd4\t@\xcb\xf8w\xbeoO\x8a@\x17\xe3W@\xca\xb5\x92?\xa6\xb2\x91@H\x90\x8d@\xc7%\xb6?0V@@c"S@{\x82\xc7>j&\x11@\xbf\x0fn@T\x8e\x8b?\xa4\xba-@)\x90\x12@#\x06Q>H\xa02@8j\x86@\x8c\x86g\xbfO\xa7g@\x1e-\x80@\x8c\xfd\xd3\xbf\x0c\x93\xbc?\x82ps@\xdf\xcd\xd3\xbf\xd8\xfd\x11?d\x12\x8b@~D\x9a\xbf*e\xa3?*\xe0/@\xa9:\xbf\xbf\xf2\t\xd1?Y\x88\x80@\xbf4/\xc0\xbf\n0@SO\xb4@*\x1e\xe6\xbec\xach@\xd6\xbc\xbd@\xb3\x00\xf9=\xbe\xa9\xed?0\x88\xb6@\xa5\'\x1a>^\xb7(@\x92\xc6\xce@~\'\x9a\xbf\x84\x9d\x83@-\xe5+@\xcby!@"\x0eS@\x90\x7f\xe5?\xd7\x08.@\xf2\xad\x9a@J:F@\x8f\xc6c@LO\xaf@\xf2qz@K\xcc]@[\xeb\x99@\xddn\x1f@\x0b\x10\x9c@\xeeR\x91@.\x10\xb8?\x05+\x99@\x139\xc7@He)@\x8d\xe2\xac@}\xeb\xcd@\xf3dn@8_\xaf@\x9cZ\xdb@\xe1l\x14@\x03>\x93@\xedz\xd0@P8\x07@v\xc8\xda@du\xbd@7p)@\xbef\xf3@\xc5V\xc6@\x88K\x18?\xb6\xca\xda@+*\xd5@\xe6\x10\xee=\xbfu\xbf@V\x92\xa3@=>\r?\xcf\xb4\xda@\xbd\x9f\xcc@*\x9c\xbe=\xbbJ\xfa@\xfe\xf5\xff@\x0b\xca\x0e@\xc2.\xe5@\xce\x15\x04A\x9f;U@+X\xdf@i\x0e\x08A\xca?\xc0?\x9e{\xcd@>F\x03A\xd5\xb6\xf7?6\x8b\x03A\xd5\xb5f@\xe4\x92F@\'\xb4\xb8@\xad\t\'@\xfa\xb1b@\xa8Z\xa6@h\xa6k@s H@A]\xe4@\xc3\x86\x8e@\x17o,@\x7f\x07\xf1@;\x0b$@\xe34i@\x82\x04\xff@\n>\x0c@\xe3K\x8e@\xc5\xd4\xed@S\xd0<@\xc46|@\xb0<\x0fA\\\\\xbb?N*-@\n\xa0\x02AU\x06\xc0?\x89K\xcd?\xc2!\xf2@\xce\x87\xd4>[LH@\xa1\xa1\x0eA\x8b\xdc\xf2>\xe4\xec\x82@i\x9e\x13A\xdf\xbf?\xbfl\xfb\x15@\x9f\x8d\x16A\x08\xa0\xb0\xbe:k\xc0?\xc0\x06\x1eA\xc20\xd0\xbf9\xb2F@t\xa7&A\x91f\x0f\xc0\x01\x84}@\xdd\xc4\x1fA\x04\x9c\x8e\xbf\xc7\x1aV@F\xda5A\x03(\x1a\xc0D \x16@\xf0M-A\x0f1\xca\xbf\x06V\xd6?\xc4\xb3\x04A\x87#\xc7\xbf\xbe{\x0c@\xbef\xe6@le\t\xc0\x00<\xd6>*\x7f\x06A\xe5S\x19\xc0\xbe)P\xbe\xc5\x1c\x1bAJ\xb3T\xc0\x8atI>Pr"A\xe7)\xc2\xbfY,m=\x0b?&A\xaa\xec*\xc0\xa5\xb4\xe1\xbeQ\xa3\xe9@V+\xe8\xbf\x81\xe8\x06\xbfV&\xd4@\xdd\xa5G\xc0\xee}\xe3\xbf\xd0)\xfe@\x17\xd5-\xc0\xd6\x00-\xc0&\xd3\xee@\xabF\x88\xc0\xa6g\xe4\xbf\xae\x98\x00Ah\x9f\x1e\xc0\x15\xcb\xdb\xbf\x9b&\x15A\x00\xb7H\xc0L\xe2\x1b\xc0\xeb_!A\xc4m\xbe\xbf_E\x08\xc0P\xc0\x13A\xdbWs\xc0Ofw>\x9d\x80\xd0@vI]\xc0}\x87\x06?\x198\xab@?\x87\x9f\xc02\x8e\x17?\xben\xe2@$\n\xa5\xc0rX\xe3>\xd6v\x01A3Z\xc1\xc0\x02K\x10\xc0X\xaf\xfe?\xd2\xa0\x80?(\xc7\x82\xbf\xd4!*@\xd0u$@:\x16\xf5\xbfff2@ nM@\x05\x80\x80\xbe\x85{_@\x1f\xa13@g0S\xbe\xaa\xb8\xa3?\xed\x96+@\x80\x1eF?S\xf8\x01@P\x0c/=r3D?\x0b\xfc\x82@\xf3\'W?O\x07\x9c\xbd\x13\xa4\x84@ihj\xbfyy\xd8>\xa5\xa3\x91@\x9dY\t?/E\xeb?\xd6\x03\x9c@\x1a\xb3\xa5?D\xf1\x1e@\xb4S\x8f@=\x81i?\xea\xf5\xc3?YF\xba@\xfe\xd4\x93\xbe\xe3\x1b\x1d@\xf9b\xa5@Y$-\xc0\xf9\xf4\x83@\x87\xa3N\xbf8e\x13\xc0.\xb8\x9e@Y\x1b\xc9\xbf\xa1\xb8b\xc0\xfe\x1aF@ \x17\x95\xbf\xe3\xcef\xc0\x98d\x16@r\x02\x1e\xbf\xd1\xbc\x82\xc0\xf5!?@~\xb5 \xc0\x15\x99\x96\xc0\xb51\t@\xb8\x8d\'\xc0\xb1\xdeQ\xc0.\x117@\xfc\xffI\xc0\xb1\xd1\x9b\xc0\xab\x92\x85@\x89\x17E\xc0\xb1\x16\xa4\xc0 \x81\x8a@p\x99\x89\xc0Q@\xab\xc0\x08\xd7\x9e@(M\x06\xc0\nZ\xaa\xc0~\xc3\x96@\xf5\x81\x91\xbf\x17P\xc1\xc0\x19\x1b\xc8@\xff\t\x14\xc0}\xb8\xd6\xc0\x1e\xd0\xbf@\xb9)I\xc0s\xf3\xdb\xc0\x81\xd7\xd3@xr\x88\xbf\x8e\xcc\xc3\xc0^d\xd8@\x80\xa1\x85\xbeI\x81\xfb\xc0\xdd\x08\xb4@\x82F8\xbf\x11R\x06\xc1\xe3\xd0\xad@Js\xc5\xbf\xdb\x06\xf5\xc0\xc3\xbf\xff@\x95=\x9b\xbf\xf9\xbb\x02\xc1\xbd<\xfd@_;\x0c\xc0\x92\x96\xe0\xc0K\x13\x0eA\x81\x92\x84\xbf\xef\xa2\x07\xc1\xd9,\xfe@[W\xd0\xbe\x1b\xca\xa2\xc0\x9aw\xed@j\x884\xc0\xd0E\xa8\xc0W\x0b\xfb@Qu|\xc0,\xb2}\xc0\xe6G\xf4@\xd4\xcc\x05\xc0p6t\xc05B\xe4@\x82\xe0\x9a\xbf\xe3P:\xc0\xf0\xe6\x07A\xc6:\x1f\xc0\xb3\xf8D\xc0\xca:.A\xf5\xe7\x0c\xbf:\xf9\x88\xc0\xcc\n/A\x0eY\xf0\xbe\xcd\xce\x11\xc0\xab\xbf\xbf\xd0?A\x12(\x86\xbfY&\x08\xc0\xa0\xde\x01A\xcbWp\xc0\xe0t\xe7\xbf\xd7\x1a\x0eA\x08\x1f\x93\xc0\xeb\x04\xe1\xbf=\x9e\xda@xfx\xc0\x9b\xc6\x05\xc0\xe0*\xc4@\xd5oQ\xc0\xc9\xcfv\xbft\x99\xc5@o9\x9e\xc0I \x01>\xe0\xbe\xcb@\x1d\x17\x9b\xc0\x08n\x9f\xbf\xd9\xdb\x95@mc\x9c\xc0\x17E\x0f\xc0\xd2\xec\x90@\x1a\x86\xa6\xc0Kl\x91\xbf-U\x87@F\\|\xc0-,\x06\xbf-\xde\x86@\xf0\xf7\xb2\xc0,9\xa5\xbf\xa1[\xd2@\xeci\xca\xc0{\xba\xda\xbe/\xb3\xd7@{\xca\xe5\xc04E#\xc0\xff+\xda@\x89(\xd3\xc0\x1a\x87M\xc0\xe7\x88\xd8@\x02X\xbc\xc0\xa3LB\xc0\x17\xc2\xe5@c\xc7\xfc\xc0C\xbc6\xc0Z\x1a\xcf@\xcb1\x0b\xc1\x8f\xb4\x91\xc0\xf3J\xef@\xa9\xfc\xf7\xc0\xbe\x07\xa2\xc0\x1b@\xfa@\xa2\x07\x0b\xc1\xc8:\x95\xc0_\x94\x03Ap\xe9\xdb\xc0\xcdu\xad\xc0M\xb0\xc8@\xb9\x13\xe7\xc0\'&\xac\xc0\xd5&\xc2@\x99\x11\xc5\xc0\xb1\x19\xa1\xc0\x86\xf9\xaa@\x84A\xf5\xc0!4\xdc\xc0\xfc\x80\xc9@\x13u\xf7\xc0El\xed\xc0XN\xab@\xfc!\x05\xc1\xeaO\xf2\xc0)/\xee@~Z\xf2\xc0\x18\xa9\x07\xc1\x16\xb9\xee@vN\xfc\xc0\xe8c\xe3\xc0-\x90\x02Akj\xe0\xc0}\x95\x12\xc0N\x95\x07A\x854\x07\xc14t\x04\xc0\x9af\tAkS\x1a\xc146\x06\xc0B\xcb\x18A&\xa0\xf3\xc0\xees\x19\xc0w\xc5\x16A\xf3\x04\xd5\xc0\xee\xe9\xbc\xbf\xf7\xf6,A\xb7@\x00\xc1\xfc\x1f\xe0\xbf5\xa90A\x8ah\x10\xc1a\x7f\xfe\xbfLQ>A\xef\xf0\xe2\xc0\x0b\x900\xc0A\xa67A\xf3\'\xcf\xc0\xd1<\x1d\xc0\x83\xaeKA}\x80\xf5\xc0\xc9\xf0{\xbf\xfc\x1eIAL\x00\xc6\xc0p\t\t\xbeo\x9fYA\xbeG\xd3\xc0\x1d\x9b\x1d\xbe\x9f1^A\xf9\x92\xf4\xc0\xb9\xb8l?\xc3\xf0`A\x1cY\xb8\xc0\xa2@\xd1?\xad\xe3lAK@\xc4\xc0\t\x1c\x86?\x10\xa4YAW[\x8e\xc0\x97C\xe5?\xc8\x13^A\xa6\x12m\xc0\xc7\xf3Y\xbfoLBAuP\x9b\xc0\xf6a\xd2\xbf\x91,7A\x93\xc3\x93\xc0\xd4\xae\r>\xf8\xa3JA\x06R\x80\xc0\x9a\xb3}>\x05yCA^>>\xc0\xa7\xa9\x0f>h\x13+A\xe0\xd5\xfe\xc0\xc3*L?\xea\xc97AMt\t\xc1\xfa\x1a.?wO\x1bA\x0c\xe1\xe7\xc0\x0ea\x08>\xa7q\x12AGT\xd4\xc0c\xf1\x07@\xca\x89\x16AtK\xea\xc0=[/@7\xac$A8N\xe7\xc0g\xe4"@\xa2U\tA D\xc2\xc0_\x1c\xff?"|\xf2@\xd8\xbb\xc1\xc0\xa1\xe1\x81@#[\x04A\xd7\x1e\xc8\xc0n\xf3\x92@\x93i\x12A\x06\xcc\xd4\xc01(\x87@\x9e\xdb\xef@\x90\x05\xe0\xc0l~\x8e@\x1d\xc9\xff@a\xbd\xa8\xc0\xf5\x05\x11@~\xbe\x15Av\xb0\x99\xc0S\x8d\x92?)\x15\x1bA\xd5\x84\x97\xc0$\x0b8@\x04\xb4#A\xbe\x88\x99\xc0\xda\x86\x1c@\x86\xff\x07A\x10&a\xc0\xd9C]@\xbe\xd2\x01A\xcc\xd5Q\xc0z\x81\xec?\x17\x9f\xf3@8\xd9l\xc0\xf9\x0e\x05@,\x90\x12A_\xe9*\xc0Ed\x1f@\xad\x19\rA\xcf\xa3\n\xc1\xd66`@\xb3\xce\x12A0@\x14\xc1\x1aH\xc0?\xd3\x1c\x00A\nO\x12\xc14R0?\x1cG\xfa@Y\x15\t\xc1\xb4\x88\xc7?J\x07\xef@\xd7\xd1\'\xc1\xc3S&@\xe4\x0c\xe5@\xff^-\xc1\x193\x17?\xfe\x1b\xc6@DK*\xc1\xf1\xa4\xbd\xbe\x02A\xce@\xa9g$\xc1\xcd\x13y?\xb1\xf5\xb1@\x0b\xe0\x1d\xc1\x80\xb7)?\x96=\xad@\xc3\xb0>\xc1\xb7<\xd9?q\xab\xa4@\x91\xafB\xc1\x855)>\xaf\'\xbe@\xa2\xe1K\xc1\xeb\xec?\xbd%\xaan@\xd5\x1c<\xc1bU\xd4\xbf.N\x88@D\x93.\xc1\x01\xbf\x1e\xc0\x11(c@\xad$1\xc1\x86\x16\xfb\xbf\xc2O\xa8@\x18\xcf4\xc15I\xd3\xbf;\x1c\x8d@\xe1Q\x1d\xc1\xb2\x97\x96?GL\x07A\x10\xe09\xc1\x16\x00\xc8?\x9e\xfb\x03A\'5L\xc1\xa7\xf4\xc7>\x82\x80\x18A\x1d\x8f4\xc1\x8c\x13\x8a\xbc9\x82\x1bA\x85M&\xc1\xb8w\xcd=\x1b\x8e)A\xfcDD\xc1ISA\xbe\x1a\xba"A\t\xb1S\xc1\xa0<\x81\xbfI\x946A}S9\xc1\xc9JF\xbf\xf1\xe96A_\xab\'\xc19u\xfd\xbff\xec,A}d;\xc14G\xae\xbf4\xcdMA\x1f\xfd>\xc1\xa4@\r\xc0\x96\x97LA\x9b%K\xc1tx\xef\xbe\x01EVA\x02\xabF\xc1\x1fd\xe1\xbf%\xa9[A\xf9!,\xc1\x0c\xda4\xc0\x16\xc2VA\xd5\x13"\xc1\x12\xb0\x8b\xbfu9kAb\x93&\xc1\xc5\xe8\xa4?":9Ao\xadI\xc1\x94S\xe5?\xd6\xa1:A`\xf7[\xc1\xc3\xb4\xdb?\x87\xf7CA\xf5\x078\xc1Sg\x99?\xf5\x9f?A9\x97)\xc1\r\x02/@AySA\x06q8\xc1\x19\xc8 @ \xff]A\xe04F\xc1\xe4\xa0)@UKbA\xaa<$\xc1$\x88G@\x1a7ZA\xbel\x16\xc1-\xd1\xd0?4\x9efA\xf5* \xc1\xd6\xdd\\@lzxAI\xc1%\xc1\xfe\x0f6@\x10\x0b\x81A\xb6z1\xc1\x99\xb1\x8f@\x90\xc0tA\x1d\xdf+\xc1\xe2\x92_@\x14\xcc\x81A^\xe8\x10\xc1\x83\x93k@\xb8\xa2wA\x80?\x04\xc1\x94, @\x8cO\x85A\xf0\x8a\r\xc1\xc8e\x93@9l\x8aA\xcc\xa9\x12\xc1\xc5~\x89@-r\x8fA\xe9\xc1\x1f\xc1Y_\xb2@\x1e\xbd\x86A\xb4\xf8\x14\xc1H\x11\x96@\xb2*\x91At\'\xfc\xc0"7\xa4@z\xb9\x8cAK\x92\xe5\xc0\x85Eo@\xfa\xf4\x93AI\x97\xf2\xc0\xa5\xb9\xab@\x83\xf2\x96Ah\x01\x02\xc1v\xf8\x84@Y\xb7JA\xfa\x8d<\xc1\xdd\xde\x9d@xDTA\x9d\xe5H\xc1\x89\xd8\x90@\x7f\xcc8A+\xa01\xc1\xf1\xc5t@\x8031A\xb2S)\xc1h\xd8\xbe@K\x801AQ\x1e3\xc1\xaf\xbd\xd4@\x9e1?A\\e7\xc1p\x0c\xd4@w\x9f+A\x13\x8e\x1d\xc1\xe09\xf6@\x10\xde)AH\xcf\x1e\xc1]`\xc9@\x11\xaf\x1cA]\xfb\x14\xc1\xb7\xa3\xcc@T>>A\x93\xb8\r\xc1\xc4\x14\xe3@i\x17QAS\xf0\x0e\xc1\xba\x96\xfb@\xd9\xbcQAs\x06\x1b\xc1\xf9\x88\xda@\xf6SaA\x1c\xe3\xfe\xc0\xc4\n\xec@\xb0soAC\x91\xfa\xc0@\xf4\xb5@M\x84^A\xefe\xe3\xc0iY\xaa@\xfaRlA9\xb2\xc1\xc0V0\xb7@6\x80zA\xca\x8c\xc6\xc0\x90\xb8\xab@\x85\x90;A8\x94\xfe\xc0\xeb\x1f\x9a@\xf8},A\x01r\xfe\xc0\x18\xa5\x9d@M\x8bKA{\xf3\xe3\xc0\xcc\xfe\x7f@\xd5\x0cKA\xf8\x86\xd4\xc0\x9b\xb0\xc6@<\x96 A\x02TD\xc1\xea\x8f\xeb@\x06l\x1bA\xe8HI\xc1\x94w\xa4@\x11\xc0\x18AFHN\xc1\xaf7\x89@h\xa3 A\xd14I\xc1\x93\xe6\xa2@\x8f\xe4\x08A\xe6\xa1_\xc1\x8b)\xb6@\xb7\x8b\x0eA\xd3Yk\xc1*5\x82@\xbf\xd1\x06A\x07\x1cd\xc1|\xb9\xb0@_\xe8\xe5@\xa07Y\xc1\x9f\xe0\xc5@1Q\xcd@d\\d\xc1\xdd\xfc\xa3@\x8aY\xd6@\x10\x97E\xc1\x1d\xf7\x8c@\x9aT\xe7@\xbc<>\xc1\x0e\x9a\xb8@5\xdd\xb0@\xbf\xa9;\xc1\r\x18\xcf@\x92\xce\xa2@\xc5#F\xc1|X\xd5@C\xc9\xbc@\xfa\xb1(\xc1`j\xe0@I\x01\xa0@\xc9\xed\x1f\xc1x\xb6\xfd@%H\xd5@\xf2H/\xc1\x0eT\xf6@\xf0W\xf8@-\xfe0\xc1\x0e\x0f\x05AaM\xcd@\xaeI?\xc1/1\x0cA\xbd\x05\xd4@\xfd\xb3#\xc1\x12l\xbd@\x94\xe7\xd8@\x17U\x18\xc1,\xe6\xa4@\x14\xa0\xc5@\x08?\x0f\xc1\xce\x8d\xab@\xdfB\xf3@J\xed\x1f\xc1R\xa7\xdb@\x84\x85\xeb@\x1b\xd4\x05\xc1\x1b8\xf3@\xa8g\x00AV\x02\r\xc1\xe0\xd0\xed@\xbc\xa9\xd1@O#\xfc\xc0f\xdf\xc8@q\xf7\xfb@\x93\x8c\xf2\xc0\x8ea\x96@\xd9\x84\x8f@]\xad6\xc1\xce\xb8\xde\x08\xc1\x1b\xe4\x9b>\x19\x01\x0c@m\xe9\x05\xc19_\xc2>+Ty?ZC\xd0\xc0\x81sz?\x9b\xfc\xe1?Yd\xc0\xc0\xd2;\'?J\xb3\x90;|\xf8\xc5\xc0\xad?\x8c\xbf\xd1\x8f\x96?\xe3#\xc5\xc0\x12\x15\xdf\xbf\x82\xdc\xfa?\xf83\xdb\xc0\xc3b\xd2\xbf)x\xe8>6\x03\xa6\xc0\xd6\xf2(\xc0\xde\xd8\xe0>\x81X\xa1\xc0\xb6&\x8e\xbf@5\xa5\xbc\x0b\xad\x90\xc0!\x02\x0b@\xe3\xf0,\xbf]W\t\xc1\xd1\x99\xaf?\xc9<\xc6\xbf\xa2\xf0\x0e\xc1\xb0\xc1S@E\x05\x88\xbfa\x9b\xfe\xc0)\xd0~@E\xe4\xb2\xbeI\xed\xfa\xc0\xa1\x87e@V\xd7\x1c\xc0mU\xf3\xc0c\x9eI@.\x1c?\xc0L\xf2\x06\xc1\xa4\x0e\xa3@?i5\xc0b\x8c\xef\xc0I\xb1\xb1@\xf6_\x0b\xc0\xf0\xb1\xd7\xc08\\\xab@\x03t\x88\xc0 \x02\xe1\xc0\x1d\x16\xa5@\xc4N\x9e\xc0\xa4|\xfa\xc0\xc1f\x94@}M\x92\xc0\xb2\xa5\xc7\xc0O\xe7\xcb@\xfc\xe9\x8b\xc0\x9cr\xd4\xc0R\x8b\xb8@\xd9y!\xc0R\xea\x0b\xc1\xd3\x0e\xb5@\xb6\xfe\xbc\xbf\xd9\x15\x12\xc1\x95\xa3\xa8@f\x05H\xc0ov\x17\xc1<=\xe8@\x02\\8\xc0]G\x0c\xc1\x12=\xef@\xa9.|\xc0A\x96\x08\xc1\x94\xfc\xf9@\xd3\x0f\x0c\xc0\xb1F\x00\xc1\xdc)\xf3@I%%\xc0;\xca\x1c\xc1\xe2\xa04@\x9b\xec+\xc0\x91[\xc9\xc0\xa0\rW@\x15\x85.\xc0\x93\xde\xa4\xc0G\xe5\xb8?sC9\xc0\xf4\xc9\xcc\xc0\x1cA\x91?!\xe6<\xc0\x92\x15\xea\xc0t\x97(?6R\xd9\xb4\xc0\xb8Z\xac\xc0=\x1e\xe7?\xb4?\x9d\xc00\xfdx\xc0a\x1c\x1b@p\x1a\x85\xc0\xceLg\xc0\xeb\xe1\x08@pd\xc7\xc0\xb3\x17X\xc0y\xbe\x10@,\xb7\xdd\xc0\xc2\x88\x87\xc0\xe5\xe4\\@\x16\xe9\xc5\xc0\xde9 \xc0_\x88p@\xae\x1a\xe5\xc0\xdb<\t\xc0\xd7\x84S@\xc0|\xab\xc0u\x19\xaf\xbf\xa0\xc6L@\xe9\xea\x8c\xc0W\xcf\xc5\xbf\xfaU\x90@3\x87\xb1\xc0\xef\xdfW\xc0\xceH\x85@0/\x8f\xc0\xe5\x86_\xc0\xc5\xaf\x92@AP\xc5\xc0\x8a\x01\x88\xc0\xed\x18\xaf@\xcap\xb1\xc0NL/\xc0*]\x82?q\xc8\xd7\xc0!R\x1f\xc0\xc2\x9d\x9d?\xe0\x16\xf7\xc0\xba{\xe8\xbf_\xd9+\xbe/\xcf\xc4\xc0\xbd\xfb"\xc0\xea\xa0\xa1\xbe-4\xaa\xc0\x7f\xb2A\xc0\xc1\xcb\xaf\xbfDx\xda\xc0\x0e\xdd\xff\xbf\xcf\x0e\xee\xbf\xdey\xc9\xc0\xe0\xca\x92\xbf_n\x99\xbf\x8c\xd3\xf9\xc0F\xb2\xd2\xbf_8\x1c\xc0\xc4&\xe4\xc0\x01\xd8?\xc0\x18\x121\xc0\xe2=\x04\xc1y\x07S\xc09\xb2C\xc0&U\xc4\xc0\x9a\x08h\xc0%R4\xc02\'\xa6\xc0\xfc\xf6]\xc0\x0c\x15\x83\xc03\xd8\xc9\xc0\x15v\x92\xc0\xab\x06\x98\xc0\xe4_\xe3\xc0\x01\xdd\x89\xc0<\xaa\xa2\xc0\xec\xa7\xa3\xc0c\x04\x92\xc0\xbaX\xb8\xc0#\xd7\xa1\xc0\x12m\xae\xc0\x0f\xa2\x91\xc0\x1f\x9b\x86\xc0\xe6)\x8f\xc0}\xb7\xc2\xc0\xb5n\xa6\xc0+\xd4V\xc0\xfa\xca\xdf\xc0\x1f\x1e\xc4\xc0\xa1\xdf^\xc0\xd2\xa9\xc0\xc0\xbdm\x8d\xc0\\)\x18\xc0"\nl\xc0\x80\xa3\xd2\xc0\xdf\xc2\xbf\xc0-\xb2\x8d\xc0\xc43\xdd\xc0\x8e\xc3\xdb\xc0a\xc5\x15\xc0-$\xd5\xc0\xf4M\xc9\xc08x\xd3\xbfxS\xca\xc0f\x1d\xb6\xc0\x99@\xea\xbf\x87\x19\xed\xc0\x82\xd0\xef\xc0x\x89\'\xc0D\x84\xea\xc0\x8f,\x04\xc1\xfc\xb7\x12\xbf\x92\x86\xdf\xc0\x08\x18\x02\xc1\x897\x0b\xbe\xecq\xf8\xc0\x18\xfc\x0c\xc1\xa3\xe7\xfb=\xf2\x04\xdd\xc0]l\xe7\xc0\xad\xa4\x1c\xbf\xb1\xe3\xb5\xc0s\xa5\r\xc1(HC\xbf4\xdd\x9c\xc0n\x14\x00\xc1K\xd8\xc4\xbf+1\xb4\xc0\xc1\x1f\x18\xc1\xc7\xce7?\xa7\x93\xa7\xc0\xe0$\x1e\xc1\xe8p\x05@J:\xc6\xc0\x1f\xec\x10\xc1$c\x02@0x\xe9\xc0\x10<\x12\xc1\x1d\xae\x0b@\xab\x89\xbe\xc0\xbb.\x00\xc1M\xa2C@.0\xbd\xc0\xcc\xd6\x18\xc1\x96s\xdf\xbf\xe1U\x0e\xc1\x00\xd7\xe3\xc0\r`\xe8\xbf[\x14\x1c\xc1\x0cH\x00\xc1$\x9d\xe5\xbf\\\xa6\x14\xc1\xf3\x96\xbb\xc06\'\xd3\xbf\xe7\x91\n\xc1\xad\x88\xa4\xc0\x04q\x00\xc0T\xe7*\xc1\xf2T\xaf\xc0#J\xc4\xbf\x8f\xe84\xc10\x7f\xc6\xc0\xabV\xca\xbf\xae\xe5/\xc1\x16\x8b\x81\xc0\xa0\xa9\xe7\xbf\x08$A\xc1&kx\xc0\x03o\x12\xc0y\xe6&\xc1;\x8cV\xc0\xcf@\x1d\xbeZs+\xc1\xdekl\xc0\xdf"y=\xfaX\x19\xc1\xada}\xc0\xfb\xbb\x86=o\xaf.\xc1\xb7\xbb\x0c\xc0\x9bK\x1c\xbeVt?\xc1Q\xef\xff\xbf\x85|$\xbfu\xa8$\xc1\xde\xa9\xce\xbf\xf2<\x8e?\x0e\x08*\xc1d\xeb\xea\xbf\x9f/R?\x92^7\xc1\xa0\xfd\x8d\xc0\xa2\xfdH?\xe3\xfa0\xc1\x85\xce\xae\xc0\xb9\xf5+?L\x8fH\xc1\x9d\x86\x8f\xc0\xcd\x14\xe7?Hz3\xc1\x0e\xea\x81\xc0\xc28\\\xc0\xa9:0\xc1r{\xb2\xc0\xb7\xbbu\xc0\xab\xe2@\xc1\xd7\xe4\xc4\xc0<\xa9\x8b\xc0\xbd\x86 \xc1\xe2@\xa9\xc0\n\xc4\x80\xc0\x88~\x14\xc1]\xc6\x98\xc0\x0e\x85\xb8\xc0\xaf\x9f!\xc1\xd3F\xb6\xc0\x1c\xc0\xc1\xc0>\xdc1\xc1BF\xb6\xc0K\xdb\xd3\xc0T%\x15\xc1C\xd8\x95\xc0\xaa\xea\xf5\xc0/\x08\x19\xc1Zt\x99\xc0q!\xd0\xc0\xdff\x03\xc1\r\xd4\x95\xc0\\\xe2\xc6\xc0\x05\xbe\x1c\xc1w\xf2M\xc0\x83.\xa7\xc0\xe0\xda\x14\xc1<\x80E\xc0\x08I\xc1\xc0\x14\x9e.\xc1\x1a\xeaJ\xc0\\\xa7\xe1\xc0\xb7\xf7\x14\xc1\\G\x01\xc0\xfd\x17\xdc\xc0\x85\x8e\x1f\xc1\xf0\x08\x8c\xbf|\xce\x01\xc1\xc3\x8f\x16\xc1\xef^\x13\xc0\xc9V\xd9\xc0v\xd2\xfc\xc0+\x00\xd7\xbfv,\xd7\xc0\x06\x06\xe5\xc0\x9c\xf8\x1b\xc0\xe8\xca\xd0\xc0\xbf\x91\xed\xc01\xef\xed\xbe\xddM\xd3\xc0\xdc\xcd\x03\xc1i\xee\x1b?{3\xdc\xc0\xbff\x12\xc1O\x94\xd7>\x0c?\xde\xc0{\xfe\xf9\xc0\xa9\xa0\xc7?\xfd\xd7\xc4\xc07\xb7\xc5\xc0\'\x12)\xbe\xd0\xef\xd1\xc0Zr\xba\xc0\xe1z-?(\xb1\xc6\xc0\xac\xc3\xb2\xc0\x1b\x05\x86\xbf\xa9 \xc0\xc0\xc3\xa1\x1a\xc1\xffS\xe5\xc0\xec\x91\xe4\xc00\x8d\x15\xc1.U\xf2\xc0\xa5\xfe\x9d\xc0,\xcd\x1b\xc1\xf5\x19\x00\xc1|\x0b\x80\xc0\xb9@\x1b\xc1,\xc8\xf5\xc0!\xae\x9f\xc08\xe6\x1d\xc1\xf6\x83\x17\xc1\xe28\xbf\xc0F\xb8\x1a\xc1\xf8%\x1b\xc1\x07\xdd\x89\xc0P\xa7\x0b\xc1f\x97!\xc1\xc0xM\xc0::\r\xc1\x9c\xff"\xc1\xd4[\x94\xc0\xc0\x17\xf8\xc0\xcb\xd0\x1a\xc1\x98\xb6\x92\xc0\xbd\xfe\x0c\xc1JI2\xc13b\x8f\xc0\x82G2\xc1eF\x1f\xc1:/\x9e\xc0\x1cX=\xc1~S.\xc1\x1b\xfcZ\xc0\x95.;\xc1pT\x14\xc1\x11\xa1?\xc0\xaa\xe51\xc1&x\t\xc1\xce\x8a?\xc0\xb8\x08R\xc1+E\x19\xc1=\xd7?\xc0\\\x04R\xc1\xc9g*\xc1\x91v\xc0\xbfN\xddU\xc1\xb1u\x11\xc1j\xc3\xc1\xbfM@[\xc1hn\x00\xc1|\x9cE\xbfx\x06J\xc1tZ\x16\xc1\xd3\xb3\x9e\xbf[(d\xc1W\xf9\x19\xc1\xad\x1e\x82\xc0\xe0Kc\xc18.\x12\xc1\xc4_\x86\xc0V\xces\xc1\x1b\xdc\x1c\xc1N\xe7\x99\xc0c\xfe^\xc1&g\x00\xc1\xdb\xe0\x8e\xc0-\x06R\xc1^\xc6\xed\xc0\xb1\xa4\xbd\xc01\xdfj\xc1\x8c\xfc\xf3\xc0\xff@\xb6\xc0\xed\x94{\xc1\x07\n\xf8\xc0\xb0"\xc9\xc0?\xeaf\xc1\xefx\xc4\xc0X-\xc7\xc0\xdb\xd7U\xc1\x19]\xbd\xc0Ml\xf5\xc0\x14\xfan\xc1\xfd\x1d\xba\xc0\x18#\xff\xc0\xb6u\x7f\xc1q\x8d\xc4\xc0\xb8\xbb\x08\xc1\xec_e\xc1Yz\xc7\xc0\xbb\x93\xfa\xc0+\xebm\xc1\xc4\xa5\x97\xc0\x95\x1b\xa6\xc0\x98\xffs\xc1\xc2k\xab\xc0\xe8X\x86\xc0:\x83m\xc1\xf1\xfd\xaf\xc0z\xb3\xa7\xc02P\x82\xc1\x8e\xf1\xb2\xc0\x8b:\xaf\xc0\xa8\xc7r\xc1\xfa\xa7\x88\xc0\xf9\xcd\xe1\xc0\x03\x84f\xc1\x1ex\t\xc1\xcej\xf9\xc0\x87\xd8t\xc1\xb3\xdb\x0f\xc1\xba\xe6\xe8\xc0^\xe8R\xc1L\x12\x11\xc1B\x1d\xd6\xc0\xd4NG\xc1\x8a\x8f\x0b\xc1d\x86\x07\xc1\xe3\xb4L\xc1\x8b\xac\x1e\xc1_Y\x15\xc1]\x99T\xc1\xcb|\x19\xc1\xe7\xda\x08\xc1\xbe\xa23\xc1\xfb\xba\x1b\xc1\'V\xf9\xc0\xaf\x80+\xc1\xb2;$\xc1\x81;\x06\xc1\xa6Z0\xc1\x0by\n\xc1\xfe\xd7\x1c\xc1\x9c]&\xc1\x0e\xa8!\xc1\x04\x8d+\xc1\xa7[0\xc1\x9f\xf7\x1d\xc1BA\x1f\xc1)\'#\xc1y\xe93\xc16\xaf\x1e\xc1\x1e\xf2\x10\xc1\x915\x15\xc1\xcb&\x19\xc1\x10w\x11\xc1\x9a\x94\x04\xc1]^0\xc1\x99G\r\xc1\xbb\x8c\x15\xc1us\x12\xc1\xa3\xab\xfc\xc0\x1e\xca\x1f\xc19q\x18\xc1\x18\xb8\xf7\xc0|\x840\xc1\xc6i\x02\xc1 \x98\x03\xc1J\r \xc1\x905\x15\xc1\x1dU\xd5\xc0l\x15\x13\xc1\x9f^\x15\xc1\r\xea\xbd\xc0/3\x1f\xc1\xa9\xff\x07\xc1@\x88\xcf\xc0\x9a\x9b\t\xc1-\xfe#\xc1\xbb?\xd4\xc0eQ\x0b\xc1\x9b\xf2\x03\xc1\xc7\x8dQ\xc18\xd86\xc1\xb8R\n\xc1\x11\xb8E\xc1\xd8\x16F\xc1.Z\xf3\xc0/\xbad\xc1\xef\xc2:\xc1\xfdQ\xee\xc0\x0c\xefl\xc1@\xc1,\xc1B\xc9\xe6\xc0\x1c8m\xc1\xa3\x9bO\xc1\x1aB\x03\xc1q\x1al\xc1,\xcbX\xc1\x1c\x8b\xc4\xc0\xf3\xc2`\xc1*\x82\\\xc1\xbc\x87\xcf\xc0k\x98P\xc1\x93{a\xc1K\xcf\xbb\xc0\x9eel\xc1\xba\xb1k\xc1};\x9d\xc0\x9d\xd1^\xc1\xcc\x8eP\xc1\x0e\xb5\xa4\xc0R)W\xc1\x9d\x90C\xc1\xd2\xf9\xd9\xc0c \x82\xc1\x10(M\xc1\x8e\xdb\xe0\xc0\xf0\x7f\x89\xc1jYZ\xc1J8\xc2\xc0\xe5\x9b\x84\xc1\x07\xd0:\xc1\x9c\xc8\xb8\xc0\xdal~\xc1a`1\xc1\xb9\x18\xb0\xc0\xe1\x1b\x8f\xc1\xb0\xd26\xc1\x8dL\xc2\xc0o\xfe\x94\xc1\xec^?\xc1\xac\x81\xac\xc0\xa5\xcb\x8f\xc1A\xbf$\xc1[\x10\x85\xc0\xb2_\x90\xc1I\xc5@\xc1\xf1\x9cu\xc08S\x98\xc1\x19\xdbI\xc1\xe0\xccP\xc0\xb6\x8d\x88\xc1\xee\xcd<\xc1:\xc5]\xc0\x1e\xbe\x81\xc1x!4\xc1i\'\xf0\xbf\xd7#\x88\xc1i\xd6D\xc1\xec\x8f\xee\xbf\xc3Q\x8c\xc1V\xd8S\xc10X\xaa\xbf\xb3\xfey\xc1J\xccF\xc1\xa1\x1bT\xbeE]|\xc1\x1dsH\xc1B\xc1\xc8\xbf\xab\x89o\xc1UA9\xc1\xd7\x97\xe3\xbf\xbf\xfdo\xc1\x06bY\xc1\xa7\xe5\x1f\xc0^\x9ee\xc1\xe0\xeaW\xc1ef\x88\xbf=\xd3\x8d\xc1 f4\xc1\xfdW\x85\xbfWv\x8a\xc1\xe2\xde!\xc1\xba\xf2\xd2\xbe\xc0x\x96\xc1\xf2\xb1;\xc1\xe1L\x00\xbf\x9cH\x98\xc1\xed\xcfJ\xc1a0[>\xa1\xaf\x9e\xc1_Q.\xc1\xff?&\xbf/\x05\xa2\xc1\xdb$\'\xc1\xbd\xe0x?a#\xa7\xc1!\x06<\xc1\x87-\xf6?\xebt\xa3\xc1\xcc\x96B\xc1\x90\xd0\xc0>d\t\xaa\xc1tmJ\xc1m\x18\xa0?\xe0\xb1\xb1\xc1&\x130\xc1\x9f\x98\x04@\x8d\x87\xb0\xc1\xecn$\xc1XA\xc7?\x06\xba\xb7\xc1a\xf7;\xc1\xe3@\x0e>K2\xb6\xc1\xfaB#\xc1\xea\x1a/\xbf6\xb0\xbb\xc1\xa7\xb3-\xc13\xfb\xc8\xbd\xe4\xe0\xb4\xc1_\x89\x0f\xc1\xb1Y\x8c?\x84\xde\x9a\xc1\x12\xed\x1a\xc1[\x07 ?RQ\x9b\xc1<\xe8\x08\xc1\xf1\x95\x12@\xe5\x0e\x96\xc1\xb5\n\x1e\xc1\xcd92@\xea2\x96\xc1\xc4\xa4+\xc1\xef)F@Y\x98\x90\xc1\xed>\x0e\xc1(\x8dS@M\xae\x95\xc1_t\xff\xc0\x10]\x8b@>1\x8d\xc1\xf9\x05\x19\xc1Y\xad\x89@C\xe9\x87\xc1\xd3\xc3\'\xc1\x03\x9e\x9b@1\x81\x94\xc1\x95T\x1f\xc1e}\xb1@\xe7$\x88\xc1\xb3\xc1\n\xc1tN\xa4@$J\x81\xc1\xc2\x1a\x01\xc1\x11f\xc3@\x84\xf2\x8f\xc1\xff}\xf3\xc0\xc9\xa6\xc7@\xc4\xfb\x97\xc1~\x03\xff\xc0\xdd\xaa\xb2@\x11/\x90\xc1\xa1\xa5\xd3\xc0e\x07\xe5@\xbb\xea\x8d\xc1a\xde\xed\xc0\x82{\xd4@\x82\xed\x83\xc14\xa8\x19\xc1\x1d\x0e\xcc@v\x84}\xc1\r\xd3\'\xc1\xb0\x1d\xe7@\x0cI\x8b\xc1d\x8d\x1f\xc1\xe3A\xec@\x7fZ~\xc1\x0f\xea\x0f\xc1G\x9a @\x94\xed\x85\xc1;A\x06\xc1\x1b\xeb,@V\xadz\xc1\xd6\t\x0e\xc1\x8b/\xbc?\x8e\xd2\x86\xc1\x03\xee\xef\xc0m\x99\xa8?\x8c;\x8e\xc1r\x05\xe3\xc0\x9fK\x0f?o/|\xc1\xde\xe1\xe2\xc0\xdd\xc0\xe6>.\xccq\xc1A\xa9\xfd\xc0s\xaf\x8f?A\xa1t\xc1T!\xc9\xc0\x14\x957\xbf\xb3\xe8\x81\xc1\x95\xea\xcf\xc0?\xa4\x9e\xbf\xba\x91y\xc1nS\xb1\xc0PK\xa9\xbf\xbd\\\x8a\xc1\xfcE\xe2\xc0\xdeeg\xbf|\x9e\x8d\xc1\xc5\x10\xfd\xc0,\xa8*\xc0\x8b\xec\x8d\xc1p\xdc\xd4\xc0\xff-O\xc0\xe5\xa7\x86\xc1\xa1.\xd0\xc0\xed\xb2W\xc0\x82\xda\x92\xc1\xec(\xfa\xc0B\x98T\xc0\xf7"\x8e\xc1.j\x0c\xc18\xa2\x8e\xc0\x1c\xf3\x92\xc1\x08\xbc\xf1\xc0\xdb\xe1<\xc0\x02e\x9e\xc1\xb5S\x02\xc1%\x87\x18\xc0\xe1\r\xa2\xc1/\xfd\xe9\xc0\xd5\xfb\x0b\xc0\xa4\x07\x9d\xc1\xc7\xd1\x0e\xc1C\x05\x7f\xc0\xd8\x16\xa6\xc1\xd5=\r\xc1x\xe2\x94\xc08\x9c\xa0\xc1\x0cC\x16\xc1\x0e\xe1\x90\xc0\xe4\x8d\xaa\xc1F\xb9\xff\xc0.\xec]\xc0a(\xae\xc16\xbe\x1d\xc11\xba4\xc0@A\xa9\xc1\xe8\xbb)\xc1\x8fU\x8a\xc0\x8d\xfa\xb1\xc1y\xca\'\xc12[*\xc0N\x95\xb6\xc1c%\x15\xc1\xb3\x12H\xc0\xbd\x8f\xba\xc1\x92\xd5\x08\xc1>y\xe0\xbf[\r\xb3\xc1\xa4(\x0f\xc1\xe8o\r\xc0lV\xbb\xc1\x05\x03!\xc1\x7f\x8c,\xc0a\x02\x94\xc1\xe50\xab\xc0E\xf9r\xc0\xe4a\x96\xc1\x1c\x8f\x99\xc0v\x15\xc2\xbf:\xf2\x95\xc1\xaa\x8c\x98\xc0\x0b5;\xbf\x87\xad\x94\xc1\xa4\xd7\xab\xc0\xa9)\xa2\xbf\xec$\x9a\xc1\xb1\xf8\\\xc0w*\x01\xc0h\x9b\x9f\xc1\xf4\xc1M\xc0E\xcb\x1d>\xa4\x92\x9e\xc1\t\x87J\xc0lR\x8a>\\9\xa2\xc1Y\x80\x0c\xc0\xe8\xc6X?%\xea\x97\xc1\xc5\x04N\xc0\xb7\xf4D?\x87B\xa7\xc1\xb0\n\x82\xc0\xf9\xfa\xa5>+,\xb0\xc14i\x81\xc0\xc0\x14\xe6?\x19\xc2\xa7\xc1\xeb\xabr\xc0\xeeK\x84?\x99\xfe\xa3\xc1\xb6~\xb1\xc0\x81B\x91?\x8a\x87\x9a\xc1o\x1a\xb9\xc0\xc2Uv?\xfd\xe4\xab\xc1`#\xcf\xc0\xed\xebu?\xc6J\xa9\xc1\xed\xe8\xed\xc00A\x82?\xf35\xb3\xc1\xd9\xd0\xc6\xc0%*\xca\xbf\xf6E\x91\xc1\xc5\xea\x1c\xc0>\x9e\xee\xbfp\x16\x94\xc1\xc3\xf0\xa5\xbf!\x05\xcd\xbf\xb6\xf4\x86\xc1q\xc25\xc0U7\xbc\xbf\x95#\x84\xc1\xe3Yq\xc0z?\xf9\xbf\xc0\xd2|\xc1\xad\x9b\xf3\xbfV\xc8\xb6\xbfWW\x80\xc1\xbe^o\xbf\x98\x17\x9c\xbf\xf2\x9fh\xc1Z\x98\x19\xc0\xdbq\xa2\xbfMgg\xc1\xbc\xae`\xc0\x04=N\xberfi\xc1\xad\xfa\xff\xbfy\xe1\xd2\xbfe5[\xc1\xc1\xa7\xf9\xbf[}^\xc0\x93\xb2z\xc1l\xf9\xe4\xbf\x8b\x9a\x81\xc0\x980i\xc1^u\xe1\xbf\x7f\x05\x87\xc0e`\x86\xc1\xda\xd9\xda\xbf\x12\xa0q\xc0\xa5\x8e\x8d\xc1\xa8Z\xdd\xbf\x84y\xb2\xc0\xd7\xe3\x85\xc1\xa2f\x93\xbfp\xbe\xc0\xc0$_|\xc1\xe2w\xb3\xbf\x19\xc7\xcc\xc0?\x99\x8e\xc1\x87\x07\xf4\xbf\x06\x04\xbe\xc0\xa5h\x96\xc1\x05\x9f\xc7\xbfC|\xc3\xc0Nr\x8e\xc1o\xbbA\xc0l\xf6\xfd\xc0\x8fo\x8e\xc1$\xd0\xda\xbf\x13\x98\x06\xc1\xf8\'\x87\xc1{\xa5\x05\xc0_W\x02\xc1\x03\xed\x8d\xc1\x96\xd1\x16\xbfqY\n\xc1_\x18\x98\xc1_\xb8\x18\xc0i\x04\xfe\xc0\xf6\x05\x9f\xc1\xd3\xd3!\xc0\xe8\xb3\r\xc1\xbe&\x95\xc1\xc3\x88[\xc0c \xc1\xd2\x81\x9a\xc1\xaf\xc9\xdd\xbf\xb4\xbc(\xc1+\xba\xa1\xc1?\xf8\x01\xc0\xb2!-\xc1\x01\xe6\x94\xc1\xf1\xd1\x00\xc0\xb3F\x1d\xc1\x00s\x9b\xc1\xc1\x18|\xbe\xdb\xc7\x0c\xc1\xb5m\x9d\xc1v\xd4\xc7\xbd\x94\xe6&\xc1\xbf\xe3\xa0\xc1\xdb\xaeq>\xf6\xb6\x1d\xc1\xa0E\x94\xc1\xa7\xbf\x85>\x0c?\xb3\xc0\x98\x16\x87\xc1\xbe\xab\x9c>\x03$\xb6\xc0\x9ex~\xc1^@\x84?\xe01\xb3\xc0Vv\x91\xc1 \xf5K?\x06:\xb4\xc0\xf9\xa5\x97\xc1\x1b\x98E>\xe1=\xc3\xc0\xfe"\x94\xc1\x02R\x08@\xa8\xa7\xe2\xc0?\xc9\x90\xc1\xe0!\x0f@\xb1+\xc7\xc0\xde\\\xa0\xc10\xe5\x16@r\x85\xcf\xc0\x1dP\xa2\xc1d\x02[@1\xe3\xab\xc0\xd9S\xa5\xc1\x87\x98\xfe?\xb4#\xed\xc0\xc6*\xa3\xc1\x1d,\xb6?\xa78\x07\xc1\xcaa\xa6\xc1\x01"\x00@\xc3\xb8\xea\xc0j\xf9\xa1\xc1\x90\xd4>>\xa5\x1a\xae\xc0~\x82\x8e\xc1\xae\xc4P@td\xc3\xc0^\xa8\x8a\xc1@\xe0\x83@.\xae\x85\xc0\x06\xca\x8c\xc1U\xb1K@\t\xa5g\xc0\xc8[\x90\xc1\xd9[\x1e@\x11\xd4W\xc0\xfe\xd1\x86\xc1\x89\xca\x86@\xfa\xbd[\xc0b`\x8a\xc1\x1b\xb2\xa4@\x0c\x86\xf6\xbfP.\x85\xc1\x88rr@\xc7\xcc\xe4\xbf\xdd\xfb|\xc1\xeb`@@\xd0\xd0\x83\xbf\xe4\xc0\x81\xc1?e\xa0@I\x87\x8d\xbfO\xe3\x87\xc1\xf6\xa5\xb9@_K\xbc\xbf\xd2\x8at\xc1\x0b\x89\xaf@\xab\'\x0b=\x14\xa7\x7f\xc1\xfa+\x9a@\x19\x0b\xb6\xbfk\x13\x8f\xc1\xb3\x80@@\x97`\xf8\xbf\xac\x8f\x8f\xc1\xc7z\xfe?\x9f\x7f\xc7\xbf\xa5\t\x96\xc1;Km@.@\xef\x049\x96\xc1\xa1\xcf\xf0?\x9c@|\xc0\xa1Mw\xc1\xc6\\\x8f@ \\\x82\xc0\t\xb6o\xc1\x98\xa1\xb2@\xf1$\x8d\xc0\xed!l\xc1:3Z@)#\x8d\xc0\xf7\x84t\xc1\xf0d#@\xe4,\xa3\xc0\x1e\xf2W\xc1\xa2\x88Y@\xe5z\x97\xc0W\xb4M\xc1\xa8T\x85@\xd1\x11\x9f\xc0\xf4\xd2K\xc1\xf1I\x02@6e\xbb\xc0X\xf9@\xc18T\xff?\xcbT\xa2\xc0\x8d\xbaW\xc1M\x04\x96?\xb5\xd8j\xc0h6?\xc1O\xf2\xf9?\x8a\x99:\xc0\xfe\xa9L\xc1$\xf9\xec?x~R\xc0\r^:\xc1\xde\x00B@\xf6\xa4_\xc0\x19\x04*\xc1-\x1fG?q\xc3x\xc0\x91C9\xc1\xde\xbf3\xbf\xd7\x01\xa0\xc0\xb5\x08>\xc1\x93\xad5\xbf\x99\xe5H\xc0\x19\x8eF\xc1S\xc4R\xbf\x06\x82m\xc0\xcd\xd0.\xc1\xeb\x97\xd0\xbf\x8f\x9b\xd2\xc0\x1f\x8aY\xc1\x0c\xb4f@\x82V\xe4\xc0\x1c\x1aJ\xc1\xd9s\x85@F`\xe7\xc0\xedlk\xc1\xbf\x94I@\xbdN\xdc\xc0\xac\xc6v\xc1O\xea\'@\xbd5\n\xc1$\xd0n\xc1\\!]@6\x80\x12\xc1\x08\x17`\xc1\x0e\xc1Hl\x08A+\t\xd1\xc0\x99^7\xc1)\x8d\xd9@Qi\x9e\xc0(\x80A\xc19\x11\xfe@!\x1c\x96\xc0\x83R4\xc1Y\xe0\x0cA\xaa\x94\x82\xc0\xa0\xbeM\xc1[\xbe\xe8@\xc29\x8a\xc0\t\xfdW\xc1\xcbN\xd0@\x80E+\xc0\xeaRM\xc1\xe8\xb9\xf4@t\xac \xc0?U@\xc1\x9d\xc6\x05A\x93\xfa\x08\xc0EYc\xc1\xf7\x8b\x03Ay\xc8\x87\xbf5s_\xc1\xa9\x15\x08A\x7f\x95\x08\xc0\x9d\xd1q\xc1+\xe2\xef@wI;\xc0\xfa\xa1i\xc1J\xe7\x18Av\xc5z\xc0\x11,m\xc1\xf7\xca\x13A\x0bBE\xc0\xea1\\\xc1\x86\x8c$A\x00e\x10\xc0\xebr{\xc1\x0c\x02$A\xf6\x9b\xec\xbf\x00\x8b\x83\xc1b~\x19A\xd1dF\xc0\xa6\x85\x81\xc1\x1e\x8a,A\x8f\xec\xaf\xbf\x0f\xa9r\xc1S\x0f6A\x0c\x0b|\xbfA)\x80\xc1I\xc6@A/E\x01\xc0\xbf\xa8g\xc1\xb5\x86;\xc1\x1f\xd1\xba@\xd84\x1f> 5/\xc1\xb0\xf3\xa3@K\xbc\xe1?\x92\x862\xc1\xac\x9b\xd2@1\xca#@/\xc4.\xc15\x06\xbc@\xbd\xbb\x07@\xa31?\xc1\x15\xe5\xea@w\x18\xca?\xba\x93\x1d\xc1\xd7\x02\xec@D=w?\xe6v#\xc1r\x91\x02AI\xee8@\x1e\x98\x15\xc1\x840\x00Al\x8al@%\x00\x10\xc1x\xb7\xeb@$TY@\x9a\xb2$\xc1B\xbc\x07A!\xf4-@\xddW\n\xc1O\xe9\rA-UL?\x8c\x17\x0c\xc1*\xab\xd5@Fj7\xbeD\xb1\x12\xc1\xf6 \xcf@\xdfS\x9d?\xf2\x08\x06\xc1\xd1K\xb7@\xab\xac\x15?\x04\x86\xfe\xc0.t\xea@\xb1Sm?\xa82O\xc1\xf9\x02\xa2@\xb8w\xa7?\xea,a\xc1\x93#\xb4@\xe9\x15^?H-M\xc1\x90@m@\x7f!\xa6>\xbcbA\xc1\xa3zT@4\x7f\xb9?\xa7\xd2\\\xc1\xccQ0@z\xf8y?b l\xc1\x7f\x031@t\x12\x9f?[\x9cV\xc1B\x12\xa2?\xd5l\x03@\xbeYJ\xc1Z\xe3{?\xf1h\xbc?\xc2\x12j\xc1e\xec\x92>.K\x84?\xdeBz\xc1ud\xd3>\x1d\xbf&@2\xd3l\xc1n$\xa1>\xfd\xcd\x95?\xe2\x9ed\xc1\xcf\x0c?\xbf\xab\x85h\xbe\xcd\xa2N\xc1\xbce\x9f?\xc0\xea\xc3\xbeIM?\xc1NR\xe7?)\xb7a\xbf\xba\xfbZ\xc1>\xc4\xd3?]p\x00\xbf\xd3\x93J\xc1\xcd\xb8B>\xb3\xa2<@\xb4C_\xc1\x91dB@\x0e\xa2b@\xdd\xf1P\xc1\x1e\x1aj@\x8f\x91`@<\xb1r\xc1Z\xf3.@\xa2I8@\x95\t}\xc1\xd4]\x14@\x17R\x9c@\xfbxx\xc1\xef\x85D@\x89:\xa2@-ss\xc1fo\x81@!\xe7\xa0@g7\x88\xc1-\x86?@\xc9\xa7\xc2@\xe35\x8b\xc1\xf1\xe3@@?\x06\x8b@\xf9\x10\x8d\xc1\x9f~\xec?\x8d\xae\xa1@H\xeb\x8e\xc1M\xce\x9c?\x11*\x8c@k\xe9\x8d\xc1K\n\x87@7\xacQ@\xe9\x85\x8b\xc10\x14\x89@C\xb9\xa0@\x1d[\x8c\xc1\xa25\xa4@@\x1a\x8c@\xc9\xe8\x96\xc1#\x1b\x81@\xa0u\xbf@X8o\xc1\xa6\xbd\x11@\x11/\xbc@\x91ke\xc1e8\x9a?\x83)\xe8@\xc5\xcao\xc1`\x035@\x13\xd7\xf0@BMt\xc1\xb6"m@\xef\x87\x06A\x86Dd\xc1\x07\xde\x13@\x90\xde\x00A5\xf7S\xc1\x8e\xfc\x0f@\xa5~\x17A\xe9tg\xc1c\x84Y@\x83\xea$AB\xce_\xc1\xcb\xc97@\xec]\x1cA\xa6Ix\xc1c\x87_@R\xa3\x11A\xa4\x89]\xc1\x815\x97@Kl\x18A\xd0\x12K\xc1\x84\xce\xa2@\xce\x9c\x05Aq\xc9h\xc1\xebY\xae@\xa8Y\x0eA\x92\xc8j\xc1\x1e\xe0h?9<\x13A\x87\r\\\xc1\x99\x13X>]\x05\x0eA,\r\x7f\xc1\xd1\x13\xfa>y\xf1\x08A\xf3\x81\x85\xc1\x10\xd9\x8a?f\xfc\x15A\n\x11\x83\xc1\xa1\xabV\xbf9{#A\xb0\xc7}\xc1\xbc\xf7\x8d\xbfy`\x1aAn\x17\x8f\xc1\xfa\x8bt\xbf\r!%AM\xfc\x91\xc1"\xe0\x0f\xbe*<"A\xcfd\x90\xc1\xa3\x08\xf9\xbf`v\x06Aoh\x96\xc1\x9f\xc4E\xbft\xd8\nAh\xe2\x9e\xc1\xe8mE\xbf\x00?\xf6@4\x16\x95\xc1\'_\xcf\xbf\x00\xdf\xef@\x80\x17\x94\xc1\xfc\xda\xdc>:\xd3\xff@.\x02\x94\xc1\'x\xc9?J\xb2\xc8@\xdc\xa3\x92\xc13F\x87>\xce\x03\x06A~\xe2\x7f\xc1\x87M\xfc\xbf9\x9d\x0eA\x86\xfbw\xc1\x0f\t>\xc0W\xc4\xe1@!o\x80\xc1\xaf\x82\xe6\xbf\xd3\x01\xd5@0\x83\x84\xc1T\xfb~\xbfg\x97\xc2@\x9b\xd2z\xc1\xd2\x873\xc0~\x9d\xce@\x1b\xf9\x80\xc1\xc1\x8co\xc0;\x0b\x95@\xc1\xb7\x81\xc1y\x0c\x14\xc0\x8a\xf3\x88@P/|\xc1\x92+\xac\xbf\xd3\x80\x99@<\x99\x8a\xc17u\n\xc0\x9c%X@\x12k\x80\xc1\xe0\xf6N\xc0\x1dgL@\xfe\xb0n\xc1n7[\xc0\xa4\x01c@A\x9d\x85\xc1\x18\xc1\x92\xc07\x1di@6k\x8e\xc1\xcdq\x94\xc0`\x12\x90@\x86j\x83\xc1V\r\xa4\xc0d\xaf/@\x89,\x83\xc1\xd4\xbb\xa8\xc0\xb9\xa7\x06@\x0f\x01\x85\xc1\x0c\xdf-\xc0\x99B\xec?\xbe0\x82\xc1\xfdM\xd6\xbfQ;\xff?\x0b\xb3\x8d\xc1\xaeJ(\xc0\xa5\xcc\xa9?T\xba\x82\xc13\xbeb\xc0\xaa\xcc\xc0@\xb4\xbdb\xc1XaC\xc0\x0f\xe1\xb8@\xac\x85[\xc1\xd0T\x83\xc0\x1d!\xc9@\x86[W\xc1\xb3i\xfa\xbf}\xc5\xd6@\xc6\xcb_\xc1\xa5\xb0\x9e\xbf\x07\x94\xc3@\xe9\xa7@\xc1\x84:\xff\xbf\x0e\xe7\xa6@}E<\xc1\x97\xb0&\xc0\xe9,\xbb@\'\xb08\xc1\xd1,\x11\xbfQ\xd6\xd1@c\x02@\xc1\xc5r\xfc=\xac\xfd\xbb@\xc6H \xc1\xf4\xa2\xf3\xbelN\xac@\xbf\xbe\x18\xc1I\xc9\xa4\xbf\xd3^\xdc@\x01\xdf\x1a\xc1!c\xfd\xbe\x8ad\xaa@\xab\x00\x1b\xc1|+\xda>\\\x99\x8c@\x9dx?\xc1\xa2l]\xbe\x99\x86\x88@\xd7$P\xc1b\xed\xae\xbe<\x9br@&\xaa7\xc1\tzy\xbf1\xc9\x80@\x0eW9\xc1seB?\xe2\xa4\xea@\xc6\xdb4\xc1\xb1\x9e$\xc0\x00\xb2\xe6@\xe5\xda\'\xc1[\xc0]\xc0\x0f@\x08A\x80q<\xc1f\xd0\x13\xc0%b\x08A\xa8\x00G\xc1/;\xcd\xbf\xd5\x1d\x1dA\xdf\xf62\xc1k\x151\xc0Q\x9e\x1bA\xd5$"\xc1\xd0E+\xc0h\xa80A\xa9K:\xc1\xbe\xb5\xf9\xbfs\xb9/A\xfeYK\xc1[\x1f\xef\xbf]\x87DAk!2\xc1\x12{&\xc0#OCAE\x83\x1f\xc1\xeb\xe2)\xc0\xec\x02FA\xb7\xf48\xc1\xa1\x0ch\xc0\x18\x1dSA\xef\xc26\xc1\xc8(\xf2\xbf#\xb6-A-\x801\xc1^s\x17\xbf.6\x1eA\xf5\xbe5\xc1{F\xd1\xbd%\xc90A$\xf6\x1f\xc1\xf0\x9f4\xbfM\x1d=A\xbda;\xc1\xa0\xdd\xde>Ea\xc1\'u\xe1\xc0\\\xa7\x11A\t<3\xc1\xd0\x12\x01\xc1]t\xee@\xbd\xbe<\xc18\xd8\xd3\xc0\r\xa1\xe1@\x9fXC\xc1\xa92\xba\xc0\xe4%\xd1@\xfc\x81-\xc1\xdf\xfa\xe6\xc0\xea\xee\xcf@\x1a\x081\xc1d \x04\xc1\xcd\xe2\xa3@y\xe4/\xc1t\xf2\xcf\xc0T\xef\x91@\xd7\x14"\xc1)\xbd\xd9\xc0\x11\x9a\xaa@\\\x91/\xc1\xf5\x91\xad\xc0\xb6\xa9\x90@\x91\xd9E\xc1\x00\xb6\xdd\xc0T\xc7\xa8@D\x16R\xc1@\xd3\xd0\xc0LBM@\x02YL\xc1\x85\xa9\xc7\xc0=5\x17@o\xb7B\xc1\xe6U\xd6\xc0\xa0\x95O@`\x99K\xc1W-\xa3\xc0\xf6\xc6G@\xe8\xbb]\xc1K\x80\xd0\xc0\xccf\x89@B\x85H\xc1\x0e:\x07\xc1\x82\x80\xa7@\xea\xe1I\xc1\'5\x10\xc1\xc9\x82q@\x88_9\xc1\xbdU\x0c\xc1\x9f\xa8h@\x86\xa7V\xc1\xf7I\t\xc1\xe5\x0b\xdb@\x15\x04\x16\xc1\x9a\x8e\xe5\xc0\n\x16\xce@\xff\x0b\n\xc1\xd0\xc8\x00\xc1\xcf\x0c\xf3@r\xf4\x0f\xc1\xf4o\xc1\xc0\xa8\xa4\xfc@z\xf9\x19\xc1oG\xac\xc0@\x19\x04A\x18\x88\xf6\xc0\x03\xd6\xbf\xc0\x92\x1f\xef@6&\xdd\xc0\x8db\xc5\xc0\xdd\x90\x0cA\xb8m\xec\xc0f \x94\xc0\xe8}\x15A\xb5;\x04\xc1u\x81\x88\xc0(\x1b\x1aA\xf2\xed\xc3\xc0c\xae\x91\xc00}\x12A\xaa\xcd\xa9\xc0\xb7v\xa4\xc0"\xc8*A4n\xc5\xc0E0\xa0\xc0c\xa0\x1bAhQ\xbe\xc0\xaf\xf5]\xc0\x01\x88\xf1@\x9c\x9b\xe7\xc0B\xc2j\xc0g\xc1\xe7@\xc7\x82\x03\xc1\x99.K\xc0|\x8a\xd6@\xf3_\xdb\xc02i\x86\xc0\xc7\xbd\xfb@\xb4\x0c\xd2\xc0N\x919\xc0}\x8f\x15A\xfb\xce\xeb\xc0\xcbi\xe0\xc0\xe4<\x14A]\x8d\xca\xc0mn\xf4\xc0\x12`&A*\x87\x03\xc1\x96\xb4\xe2\xc0\x95\x08&A\xf5\x10\x12\xc1\xc7\xfe\xd4\xc0\xe6\x079A\xceq\xfa\xc06\xe3\xfc\xc05W:A<\n\xd9\xc0"\xae\xfe\xc0BGMA\xe4H\x05\xc1=\x08\xe5\xc0\x93s\\Ag\xf7\x02\xc1\xe9\xa1\xf7\xc0\xf0\xecKAh\x9c\x17\xc1\x88\x81\xe3\xc0XHRAu"\xfc\xc0\xb4/\xb5\xc0\x1fUAAeQ\xfc\xc05\xaa\xa6\xc0\xbe\xd4WA\x1a^\xda\xc0I\xc9\xb5\xc0\x8a\xa9_A\x95\x0c\x0c\xc1\xdf\x8e\x99\xc0\xf8\x15YA\x02%\x1d\xc1A\xf5\x9e\xc0\x063^A\x9c\x06\x04\xc1k\xbfw\xc0Q\xe0vA\xbe\x88\r\xc1\x11\x96\xa6\xc0`\xc7\x7fA\xf4\xfb\xfd\xc0D\xd0\xac\xc0\xb8zwA\x95\xa5\x18\xc1\x14\x1b\xc5\xc0\xe2\xad\x80A\x87\xe6\x18\xc1\x89\xf2\x83\xc0\x99d{A\x03\xf7(\xc1\x93\x05}\xc0\x06\xa8}A\xea-\x10\xc1\xd9\x17R\xc0\x87\x15\x89A \xf9\x19\xc1N}\x84\xc0\x9089A||\x05\xc1Z\xb0\x15\xc1X\x10CA\xb6\x90\xf5\xc0_\x07"\xc1K\xdd-A\xd9\x84\x17\xc1\xfcy\x1b\xc1\xf9\x0e\'A\xc5\xdf \xc1\xc6\xc7\x10\xc1\x88\x94*A\xcd\xb0\x1c\xc1\x80\xda2\xc1\xa2C9AP\x82\x17\xc1\n\xfd:\xc1\xa0\x1b$AT\xf63\xc1\xc2\xc65\xc1,\x0f\x1dA\xb3\xbd5\xc18\x80F\xc1\xb8b\x17Ai\xa57\xc1c\x8d(\xc1\xa4\xa58A \xcdA\xc1\xb113\xc1\x84\xe3EAn\x03;\xc1\xb1\x91;\xc1\x97\xef6A\xde\xb3R\xc1\xce\xe99\xc1%\x7fBA{\xadD\xc1\xd3\xab\x1c\xc1\xef5TAX\xaa;\xc1\xdd\xc6\x17\xc1\xbe\xcc9A9\xc6Q\xc1rk\x0f\xc1l.\x19AC\xae\x0c\xc1\xb5l;\xc1k\xfb\x19A\xdf>\t\xc1\xd3\xbbN\xc1\xfcr\x0bA\xdb\xf7\x02\xc1\xec~.\xc1*\x08\nA}R\x06\xc1h\x96\x1e\xc1\xb0\x99\xfe@\x11\x1a\xe0\xc0\x12\xe76\xc1p\xb3\xf0@\x1e\x05\xeb\xc0\xbc\x9cF\xc1Tp\xd8@h\xeb\xd9\xc0\xcfK&\xc1\xf0P\xe8@\x8d\x01\xd5\xc0\xc9\xfd\x16\xc1\x8e\x84\xc8@\x0b\xb3\xf7\xc0\xf0\x8c$\xc13C\xbb@\x1bN\xb3\xc0&\x00,\xc1\xb4\x9c\xcd@\x0er\x96\xc0\xe9\x83*\xc1[\x9e\xa0@\xe8\x17\xb1\xc0\x04\x8d\x1f\xc1/\x81\xa7@\xa0\x1f\xb7\xc0\xd1\x12C\xc1\xa3\x03\x94@q\xa7\xd4\xc0G\x06F\xc1$/\xc3@\x1aV\xb8\xc0BPN\xc1\xd9\xf9\x8b@\xbb\x10\x90\xc0\xd8\x95H\xc1\x16\x90Y@\x83^\x8b\xc0\x18\x9aE\xc1\xbb\x05\x9c@\x93\xc7`\xc0\xa5\xe9U\xc1\xa4>\xc5@\xdc}^\xc0\xce\xbf[\xc1\x9cp\xd9@\xf6\xb4\x83\xc0\r9U\xc1Xv\xcf@Bh1\xc0\x1b\xc9f\xc1:\x95\x82@xv"\xc0f?\\\xc1l\x10I@\xc6\x8c(\xc0\xc6ja\xc1\x16p\x94@*V\xf0\xbfu\x1ce\xc1\xb0,\rA\x9a\xd7\xb6\xc0\x9bv:\xc1\x08W\nAn\xbf\x9a\xc0\xdbsH\xc1\xb4\xbc\x1dA\xac\xc3\xb0\xc0\xacK-\xc1\x0cU A\xf3\xcf\xc6\xc0\xf9\x0e"\xc1\xeex-A\xa7\xaf\x8e\xc0/\xd90\xc1\xc8\xc1$A\xd1\x8bh\xc0\xbe-7\xc1&\x8d9A\x06\x8b\x84\xc0K\xef\x1b\xc1\xdffAA\xfbQ\xa2\xc0\xa4#\x17\xc1c\xe0JAjnF\xc0\t\xc1 \xc1\xc6@DA\xd8%\x17\xc0)G,\xc1~\x0bXA \xa5e\xc0GN(\xc1\xf0@PA\x056!\xc0\xfe\xb2\x11\xc1@\xd0*A\xf4\xbc`\xc0\xd3R\n\xc1\x86D\x1cA\xd2\xc7\x81\xc0t=\n\xc1\xc4\xc4%A\x10\x83 \xc0c\x89\x11\xc1?\xe33A(\x14S\xc0\x91\r\xe7\xc0\xc5AEA\x83\xa5R\xc06\xb9\xe6\xc0j".Ab\x19\x87\xc0}\xce\xd2\xc0\x8eA.AT?\x16\xc0,\xd0\xd7\xc0\xfe?;AE(\x9b\xc0\xc0\x02D\xc1 \xf4DA\x1c\xb2~\xc0\x84&M\xc1r\xe9;A\xd8\x01\xc2\xc0\x8d\x85K\xc1\'\x9d6A\x05\x9c\xd8\xc0\x19\x96A\xc1\x00\xe4FA\xbd\xe1\xc8\xc0\xf0\xfe_\xc1\xb9|VA8M\xb7\xc0\x0bL`\xc1@\xf4OAN\x95\xf7\xc09u`\xc1N\x8fCA.\xa4\x07\xc1|Ya\xc1H\xd0\\A\x9ao\xfa\xc0z*S\xc1\xa7\x18ZA\x08\xf0\xfa\xc0\xb8\x96n\xc1\xb9D9A\xdf\xb7\xbb\xc0\x1e\x16s\xc1`\xfc3A\x9c\xad\xd4\xc0h}\x80\xc1b\x153A\x9b\xa5\x93\xc0\xff\xf8u\xc1\x0327A\x10\x19}\xc0\xf9\x85j\xc1\xae\x04%A\xf70\x82\xc0%I\x83\xc1j\x90&A\x01e\x93\xc0\xf1x\x8a\xc1-\xb6\x0bAk\xdd\x83\xc0P\x86\x80\xc1\xcb\x1a\x05A\xe3\x80K\xc0\xe9k\x82\xc1\xc3\x19\x0bA\xb2,\x82\xc0\x12\xd2n\xc1\'\x90\xfb@\xb1\xc7\xa6\xc0\xaeC\x85\xc1\xcdK\x03A\x99\xab\xb5\xc09\xac\x8c\xc1K\x95\xdc@\xfe\xcf\x96\xc01\xd2\x86\xc1\xf4\xd6\xf1@\x8e\xbf\xc9\xc0\x1a\xbcy\xc1\xacB\xce@GM\xcb\xc0H\xaaq\xc1@J\tA\x80\x99\xe4\xc0A]u\xc1\xf0\xb4\tA\x03_\xf3\xc0\x98Lg\xc1\xd6\x83\x16Af\x0c\xdf\xc0z\xb2}\xc1\x96N)A\x8c\xe3(\xc0O\xe9\x85\xc1\xe6\x9e2A\xb8\x1c\xef\xbfd\x1c\x80\xc1\xdd7"A\xa3\xdf\x17\xc0\xac\xed\x8f\xc1_I\x1bA\xd7@F\xc0e\x11\x94\xc1\xa1!$A\x1f\x80\x83\xbf9Z\x95\xc19\xfe4A\x9c\xf7[\xbf\r\x9a\x97\xc1\xb5i\x15Ae\xea\x8b\xbf\xcd\xcf\x9f\xc1+\xc5\x07A\xf0\xde\xd7\xbe\x1e\xc9\x9e\xc1\xd7"\x0eA@\xa0\x05\xc0\x91S\xa1\xc1\x98\x9c"A\xfc"\x1f\xbf\xd4\xb4\xa9\xc1e$\x18A((\xd9\xbe\xd4\x9f\xb0\xc1\xf0\xbc.AT\t\xae\xbf\xda\xff\xac\xc1\xd0M-A\x07\x8b/?w?\xa8\xc1\x93\xe5#A\x047\xed?\x9d\xbc\xa9\xc1!&AA\x9e:\x1b?\x877\xa7\xc1\xc2K\x1dA\x01\xb8+>\xcd1\x8e\xc1\xc7\xb8(AFw\x97?\xd0\xde\x8c\xc12\xf3\tAc\x9e\xcb=X\x9d\x89\xc1\x83$\x00A\r\x139\xbf\x8f\x06\x8a\xc1\xee^\x00A\xeb\xa2\x9b?\x10;\x83\xc1v\x1f\x02A\x19\xde\x08@\xd0\xb4\x87\xc18\xcf\xcf@\xa7\x93F?\xc2}\x82\xc1\xc5\xff\xc2@S\xb1\x1d?V\xd2\x8a\xc1\xad\xa2\xbd@k\xf0\xcd?\xfc\x05|\xc1s\x81\xc5@\xbc\x17\x03\xbf4\x05y\xc1x\x8a\x9f@\x00\xe2\x13\xbf\x92\xfcr\xc1\x92J\xde@\xb6\xe8\xb8\xbf\x90\xb2v\xc1K\x04\rA\'\xfa\xc1?:Sr\xc1\xd4\xc6\x11A\\[*@\x1f\xeek\xc1\x8d\x13\x13AwW\xc8>>\x1eh\xc1\x87\xb5\x0eA\xba\x03\xf4\xbe\xdd\x1dm\xc1\xb4\x9c\x1fAM\xb6\xd9>\xb0\x11T\xc1\xba(\x17A\x92\x9e|?[wI\xc1$\xca Ak\x9d\x82\xbfa^L\xc1x\xd7,A\xeb)\x99\xbf\x8dC?\xc1\xeb\x86\'A\x82\xae\xc8\xbf\x14$[\xc1\xef\xfb\x06A\xe8\x1a\xd8\xbfF\x01C\xc1\xe8\xd7\xfa@\xb8\xee\xbc\xbf\xa3\x1dV\xc1c76A\x8c\xa7{?_.W\xc1G.@A=n\xb0?.4G\xc1\x7f3?A\rl\x83?\xce\xc2j\xc1qZ5A\xa7\xff4?\xa4^v\xc1EBSAC\xd4\xdc?\x9e\x9bo\xc1RS_A\xd5=\x97?\xf0\x90e\xc1\x112[A\xe5\xf6\xcf?\xc1X\x83\xc1\x07\xe5SA9\xd2??\x82|\x87\xc1\x84bmA+\xce\xb6?\x00\r\x83\xc1\xc0\x9aXA\x1e\x0c8@\xde\xfa\x89\xc1K\x17bA\\\x86k@fk\x86\xc1>\x18GA\x8fSH@\xafG\x89\xc1?\x15`A\x83e4@\xc8-\x96\xc1\x9f\xfcWA\x8f\xd2\xf3?\xdc\x89\x99\xc1}\x92qA?\xcd5@\xda\xad\x98\xc1\x07\x1cVA\x10\xd5\x82@\xb0L\x9a\xc1\x88\x90SA\xab\x96\x9b@%\x1a\x95\xc1\xf64GA\x83~\x84@\xd8\x00\xa2\xc1\x98\xdbEA\xe7\xa2P@A\x92\xa9\xc1\x89QKA\n\xe1\x18@j\x1d\xa8\xc1aR6A\xe32B@"\xa8\xab\xc1??8A\x05}\xa2@}#\xa1\xc1S\xc54A*\xb3\xb0@\xf2\xfd\x99\xc1\xf9;/A\xfb\x88\xa2@c\x91\xa7\xc1.{TAD\xffJ@ \x96f\xc1\xa7beA\xb3Re@\xf8\x01^\xc1\x85xBA\xa6\x95~@F\xe9g\xc1\xb4m6A\n\xf2^@\xbe\x13n\xc1\xc8;@A\x9d\xf3\xae@7Lf\xc1G\xc8OA\xa4S\xbe@\xc0,j\xc1\xe6"-A\xbe\xe7\xbd@\xeb\xfdr\xc1\xfb},A\x19\xd3\xe0@\x8b\x17t\xc1\x00\xc9\x1eA\xc9\x03\xb2@u#i\xc1H\x8e-A\x1d\x90\xac@\xc7\x96\x84\xc1%\x02:A\xfe\x82\xb7@N\xa0\x8b\xc1.\x0b\x1eA5\xea\x8f@R\xd3\x86\xc1\x1d\t\x1fA\x8e\x82\x87@\xf1%\x8e\xc1\x16^\x16A\xa2\xec\x81@\xb4\x96\x80\xc1\x90;=A\xb5g\xb7@\x9b\x7fN\xc1\\\xafGA\xb0\xa7\xd1@\xce@D\xc1\xd1\xf4/A\x8f\x9d\x9b@\x9b\x11E\xc1\xfa\x13(Ad@\x89@?\xccO\xc1\xfd,1Af\x1d\x8f@\xa8\xe6.\xc1\x14\xc10A\xa2\xb4\xaa@\xde\xeb$\xc1\xb0\xa2?A\x95\x11x@\x19\x80/\xc1\xf1\xf9\x1eA5\x08i@h\xf3*\xc1\x86\xde\x13A tN@\xda\xdd9\xc1`s\x1aA\x9e\x0fY@\xdd\xd4\x16\xc1\xeb\x86"A\xe60x@T]\x0b\xc1(k\x07A\x1aV$@\xdb\xfa\x11\xc1*&\xf7@f\x804@\x01\xd3\x1d\xc1W\x8e\x0cA\xd1\x17\x8b?\x89\xf6\x10\xc1o\x00\x11A\xaf\xbeI?0\x9a!\xc1\x02\x15\xff@\x9e`\xe0>x\xa9\x0b\xc1\xbaW!A\x02;R?TY\x05\xc1\\\xd94A!\xb7\x1d?L\xeb\x0f\xc1\xe8-4A\xcf\xad#?Qz!\xc1\x82LHA\xf5\xe5\xa5>\t\xfe\x04\xc1\x04aVA\xf1\xa2\xa5=\x90p\r\xc1A\nFA#|U>L\x19\xde\xc0,\xe2SA\xfaMY\xbd\xc5\x90\xcd\xc0\x9e@"A\xd9\xf1n?\x8a\x01\xdc\xc0P\xc8\x13A\xd0\xd2\x9a?AK\xca\xc0=^3A\\\x1e\xc5>\x1e.\xc6\xc0M\x902A\xfd\x86+>7G\xa5\xc0*P\xfa@\xfe/A@&\xa3\xf7\xc0\x8ey\x06A\xa2\x13m@\x06\x94\xdb\xc0\x9c]\xd1@\x92u(@Q\xbc\xf0\xc0X2\xbe@\x8d\r\x0e@\x1b:\x03\xc1^\r\xbb@\x08\x9f6@\x9a\x93\xc8\xc0S\x8a\xcd@\xf9\xf6b@\xfc7\xb4\xc0\xe8\x14\x92@\x8byg@I\x1d\xd3\xc0\xf3\x7fy@9\xd0A@,\xd4\xe7\xc0\xd3\x8e\x9d@\xaa\xe9\x92@)h\xe5\xc0\x0b\x15n@\x16l}@\xe42\xae\xc0p5]@G}@@[T\xa0\xc0\xd2\x18\x89@\xc9\xf5\x9b@\xe6w\x8c\xc0\t\x9a\x9a@\xc5|\xb5@%\x9c\x9d\xc0\x7f\xfd\x9f@\x9el\x8b@2\xb6n\xc0\xbe\xa9X@sa\xab@e\tq\xc0}\xa8\x19@\x07\xbf\x90@\x9a\t\xc0\xc0\xfa\x97\xed?U\xf2j@\xc2\x88\xd1\xc0\xbeD\x1e@q\xaf\xab@\xd8\xe2\xd6\xc0\xa2n\xda?\xd1)\x9d@\xe4g\xa5\xc0]\x00\xb3@%O\xcb?2\x9c\xb2\xc0\r\x05\x98@7\xd3M?u*\xc2\xc0r\xdd\xc8@\xc7\xc9\x9b?\x9f\xa9\x90\xc0nQ\xe2@p\x1f\xd8?\xae\x0c\x83\xc0,\xa3\xbc@\x8d\xd45<\x85fq\xc0\xfe\xd3\xae@\xe9IA\xbf\x04\xa6\x8b\xc0\xdeC\xe4@\xbe\x06(\xbfC;H\xc0\xd7d\xdc@\x0f\xb4\xaf\xbf\xf3\xc2\x11\xc0\xa3h\xf2@\xed\xba\x84>\xbeF)\xc0B\xcd\x00A_\x9a\xb7\xbfB\xe0}\xc0\x7f\xe0\x03A\x9e\x19v\xbf\x87\xd9\x9e\xc0\xe8\xfa\x16AJ:\xbe\xbf\x98\xd9[\xc0|\xc2\x17AX\x1e\x03\xc0\xdc\xaf\x1e\xc0\xd2c\x1fA(\x07\x05\xbf\x8e\xf5S\xc0~\xe7 A\xd8\xa1\x01\xc0\xd5\x8e\x87\xc0\xa3F\xf3@\xd4;;\xc0\x05\x87\x85\xc0\xb6@\xd3@0fD\xc0\x9fL\x92\xc0{\xc8\xf4@\x0e(d\xc0A\xd3I\xc0d-\x05A\xba\xffR\xc02R\x9d\xc0\x00]\x9b@\x9b\xdd\x93>\xf0,/\xc0_d\xa3@\xda\xc8s?&\x96\xd9\xbf\xc9&k@Y\xfe\x8f\xbeK\x96=\xc0"\xc8i@\xe0\xcaT\xbf\x7f\x8co\xc02# @\x1a\xd0\xab\xbe~\x1e\n\xc0\xa7\xf4&@\x00\xa2\xe7>\x185\xb7\xbf3\xad\xa2?\x08\x8e\xa6\xbc\xa90B\xc0\x08-\xa8?\xfay\xf2\xbe}{\x83\xc0\xc9s\xa6?\xb6v\x88?\xa1FS\xc0<\'#\xbd\t\xd3\x82\xbe1\x86\x17\xc0\xee\xa0\x84\xbe\xb9\xf6\xc9>\xea\xb8\xa7\xbf\xd2\xc9^\xbf\x19\x85\x8f\xbf\xfd\xc62\xc0Kk\x16@\xad\x86\xcf\xbf-\x9f\xac\xbf\x8bn\x1f@WF.\xc0\xe8D\xe5\xbf\xe2X\x14@\xee\xd9\xbc\xbf*\xe93<\x81\xa0\x18@N\xc0\x17\xbf?\xcd\xca>c\x97\x0f@w\xf6\'\xc0\xad\x08c?u\xcc\xc4?\xf8vS\xc0\x1e\xdd\xc9>\xbf\xf9\x00@\x1e9\x0e\xc0xG\xf1?9.]@\xdb\x9e]\xc0\xed\x1d\x90?\x17\x13X@\x8c\xfa\x93\xc0\x11\xe0\xb8?YD\x94@eu6\xc0!\xd6\x88?\x8f:\x97@Z\xd4\xf6\xbf\x1e4C?:\xe5\xbb@>\x08h\xc0\xbaS\x8c?M,\xb6@\x8a]\x93\xc0v\x1a\xd0?\x8bp\xcc@\x97\x19r\xc0o\xb9\xa8\xbe\xfc\x9f\xd7@8\xe52\xc0\x88u/\xbf)\x0c\xb1@_s\x84\xc0)wd\xbfn\xfc\xed@k#\x9b\xc0uG\x00\xbf6\xbe\x0bA\x1e~\x92\xc0\xcbvh\xbfD\xd1\x12A\xcf\tb\xc0\xc5\xd1k\xbfD\x15\x1bA\xa7\x8b\xb2\xc0\x9d\xc9l\xbf\xc6^*A\xb2\xc2\xa8\xc0\xeb\xae\x93\xbfC\\\x16A\xbe(\xdd\xc0\xa2!\x19\xbfMw#A&\xcd\xf5\xc0\xcf\x13 \xbf\x9e\xbc\xe4@ y\xc5\xc0):\t\xbe\x91+\xc7@\x00\xfd\xcf\xc0k\x95\x96>\xd8\x1b\x01A\x85a\xe7\xc0`k\x04\xbem\xc0\xfa@5\xae\x02\xc1\xec\x97\xb8>^\r\xdb@\x7f21\xc0\x93\xaf\xf9?\x11F\xd5@\xce\xa0\xc6\xbf,\x9f\x02@\x9bQ\xfd@\x02vS\xc0\xfe\xd1 @\xd3v\x11A_\xef\x1c\xc0\xee\xd13@\x19\xc9\rA\xb2e\xea\xbf\x04"m@2\x9e\x13A\xe7N\xe2\xbf\xea\xa6\x02@vW\x02A\x11i\x96\xc0\x1c+6@F8\x01A>>\xac\xc0\x92y\x00@F=\x18A\xc8 \x96\xc0x?b@#8!A;j\xb4\xc0\x04\xe7V@/B\x16A%H\x91\xc0)\xcf\x93@\x97\x02$Ai\xefY\xc0\xcc^C@z\x02/A$nO\xc0}"v@\x98\x00.A\xc6\xbcf\xc0\xca\x86\x0c@(\xa3\xe4@X(\xa4\xc0jaz@2\xc6\xcd@\x8a\x16\x89\xc0\x0f\xd1\x8f@\xe2\x05\xe1@g6\xcd\xc0\xed*\x87@\xf4\xc6\xef@\xbe\x8e\xe4\xc0\x15"l@\x9a\xdc\xc5@\xe2\xeb\xdd\xc0\xf21\xaa@\xc1\x91\xad@\xfe\x07\xc6\xc0\xd9Y\xb4@$\x95\xab@F\xf6\x03\xc1\x88o\x9e@\xc3L\xa6@]\xcc\r\xc15\x03\xba@\xc8r\xbc@hi\x0e\xc1\xa8t\x85@F\xb7|@8\x93\xf9\xc0\x83\xc9\x8c@\xb0\x00_@\x94-\xe2\xc0\xd7\xd1\xa1@\x8c\x87R@\x00{\x0b\xc11\xb7\x8c@\x07P{@\x8dO\xe5\xc00i?@&\xd0\x98@\xf4\'\xcf\xc0\xf4"2@\x88\xe3G@\xb3\xf2\xcd\xc0\x0fYE@\x8c\xcbc@R:\x03\xc1\xdbw\xf6?\x83[\x89@ \x0f\x0f\xc1\xc5F\xea?)(-@:\xd0\x00\xc1F\xadu?\xa1\x8d\x02@\x07D\xdd\xc0)3n? \x88\x1c@\x9f(\xc2\xc0\xab\xde\xad?\xb7\x8e\xac?\xb0\xff\xda\xc0V\xe1]>\xcc\x15!@\x17\x96\x10\xc1\x9b{F=Sr@@\xeb\xdd\x1e\xc1QPq=\x93\xde\xfd?\xf3_\t\xc1\xb3\xf4G\xbf\x84\xb9\xdc@\x02\x8c\xe4\xc0.\x9e\xd3@m\xa8\xce@|)\xd7\xc0\xcep\xf5@\x95\x9e\xff@\x15\x05\xfa\xc0\x9f\xb8\xd1@3p\x05A\xd4\xee\x03\xc1\x82\x98\xb6@Ki\x0cA:\xa7\x04\xc1\xebT\xf4@J\xf3\x06AHs\x01\xc1\xd0P\nA#\xde\x0eAu\xaf\x1c\xc1\x05\xd4\xec@\xc1\xdb\x1aA\xde\x9c#\xc1N\x82\x01A\xda\x1c\x16AHl!\xc1\xda\xbd\xc1@\xdc!\x14AQ\xaf0\xc1\xfe\x19\xbe@~U\xf1@\xffU(\xc1\x86\xaf\xf4@\xac5\xd8@\x1f,$\xc1\xb9\x8d\xdd@*\xd2\xe2@\xa4{&\xc1%\xd7\nA\xbe\x9c\xf6@\xd5\xdc8\xc1r\x98\xef@\xf9o"A\xe8`\xf4\xc0N\x9e\xee@w\x9a&A\xaf6\xd9\xc0\xb6W\xd3@\xc8\x9e2A\xbe\x88\x00\xc1\x03C\x04AK\xb2.A\xf2m\n\xc1e%\x10A\xf3\xd5HA\x16{\xf4\xc0K\xbc\x01A\xd7LGAD*\xd2\xc0S\xda\xfc@\xb2\x12UA\x84\xaa\xfa\xc0\xd3\n\x17AE\xf8ZA*\xdf\x0e\xc1m\xfc\x18A\xc9\x9bjA\x16o\xe2\xc0\xd5\x85\x16AiekAS\xe2\xbf\xc0\xa9\t\x14A]\xebsAu\'\xf4\xc0?\xf1\nA\x1a\xcbqA\x0e\xa8\xe8\xc0\x96\xa5&A\xaf\xdbGAF\xe8\xeb\xc0\t\xdd*A\xfeKTA\xa1\xc1\xf0\xc0\x89W8Ao\r8A\x07"\x00\xc1c\xb2.A\x1d\x9a@A\x0c\x16\xbc\xc0/\xc7*A\xc7\xf62A\',\xbc\xc0\xaak\x1eA\xc3MMA\x86\xa2\xa5\xc0\xd19&A\xef\x97:A\x9dd\xb1\xc0\x1ee;AF\xc9TA\xe1\xd3\x03\xc1\xa8\x0e\xdd@[\x17_A\x84\x80\xf2\xc04\xae\xc4@\x8b\xdcQA\x11\x99\x18\xc1\x05\xa2\xd3@\xf3QMA\x80V*\xc1\xa3\xae\xf0@\xd7\xb5=A\x1d\xc71\xc1\xa5x\xed@\x8a\xd2QA"\xfb&\xc1\x8b\xc7\tA\xe4\x06_A\xd7\x90 \xc1\x87\x8b\xaf@[\x98nA\xeb\xf5\x1a\xc1\xc0\xb0\xaf@hv\\A5O8\xc18\xea\xb1@XCjAX/B\xc1\xa7\xad\xa2@;\x86MA\xea,=\xc1\x17\x83\xa1@<#\\AA\\<\xc1x.\xe1@A\xedRAu\\L\xc1\x9e\xe4\xe8@\x85\xdblA\xca\x81<\xc1eD\xef@\x1b\x89XA\xdcv\x18\xc1F\x0c\x83@\xaf\xa5eA\xeaG\x17\xc1B0L@\xd8\xdbDA#\xd9\x10\xc1g\x17\x81@\xf0o\x8aA\x15\x18\xd8\xc0\xcd\xdcZ@6\xf1\x8eAc\x1a\xbe\xc0\x16\x8cU@a\x10\x8fA\xc5\x10\xf7\xc0\xe6\xe3\x8d@x\x9a\x97AFK\x01\xc1M#\x88@\xaf6\x89A\x83\x13\t\xc18\x88\x91@\x85]\x90A\xc4G\xdd\xc0\xcfC\xb7@\xecQ\x98A\xd0i\xc2\xc0\xbd\xfd\xb8@bb\x89An\xf4\xe3\xc0\xd8\xb0\xd4@g\xec\x8aA=&\xef\xc0\r\xd6\x02@\'\xae\x92A8\xe6\xed\xc0\xcfu\xa4?h\xb2\x82A\\\x1c\x03\xc1\x9e\xcc\xd8?\xa1gwA\xc7\x05\x04\xc1\xe99\x0c@\xceQ\x82Am2\x0e\xc1x\xb9\xdb>8R\x8aA\xbe\xc3\x12\xc1\n\x1a/=*\xeeuA\xb7\xb5"\xc1\x9e~\x02?B\xc5dA\xf61\x1e\xc1\xd4$\xa7>X\x07xA\xcb\x92+\xc1\xe6\xb3\xbf?\xc9{yA\x04\x16/\xc1\rm\xb2\xbek\x8c|A`\x07\x00\xc1y\xef2\xbf\xbaVuAgm\x07\xc1\x87\r\xdc\xbf$\x1a~A\x13\xaf\xd5\xc0\xb0\x90\x08\xbf\xcf\x06\x81A\x9f\x8f\xcc\xc0\xd8\x00\xc4>P\xe0\x7fA\x9d\xdd\xb6\xc0\xc6\xab\xce\xbf\x08\\yA\xc0Q\xc4\xc0\xccO\x1f\xc0i\xf7rA\xcd`\x8e\xc06\xd3\xa1\xbf\x16|wA\x9a\xcaa\xc0\xdf\xcc\xee\xbf)\x8bvAdd\x83\xc0\x8d \x85\xbe\x7f\xe4YA\x9a\xd0\x97\xc0\x18)\xa7\xbf\x9d\xcbWA\x95\xa2\xb4\xc0\x9e\xc0#\xbf\xc4\x87SAk\xde\x9e\xc0\\\xa6\x12\xc0\xb4~IA\x86\xdcZ\xc0`\x0c"\xbf=\xdaMA\x19r\x19\xc0\xa7v\x04\xc0\\\x9fLAa\x9b=\xc0\xcc\xe5B\xc0\x06H]A\x1c\x9d\xe9\xbf4\xed\xee\xbf6\xc5@A\xf9\xe1\xce\xbf\x87\xba\xfd\xbfw\xd6\x8bA\xf57\xa8\xc0\x19I\xe8\xbf8\x91\x8eA\xf2\xfc\x93\xc0\xd1z1\xc0:\x19\x93A\xff\x92\xb1\xc0\x01\xfd_\xbf \xb9\x91A)\xb1\xc5\xc0Z\xb4(\xbe"\xf2\x9cA\xc5S\x99\xc0B\xf6Y\xbf\xdd5\x9dA\xc9\x1cy\xc0\x88\xd2\xb6\xbf{\xed\x9fA\x03\xcd\x8b\xc0\x8d\xf0\t?\xedf\xa8A\xf0B\x7f\xc0\xf1\x07\xe2>G=\xa0AH9\xa6\xc0\x9b\x94\xa0?f\xa7\x98AF/P\xc0\x7f\x85\x81?z\xc4\x8fA6\x8e[\xc0\xbc\xfbS?\xd1\x1e\x9aA\x8c$\x1c\xc0Bb\xb9>\xbc9\x99A\xf6\xce@\xc0x\x8c"@\xa6K\x95A\xcf\x88x\xc0\xab\xaaD@9\x17\x94A;u\x05\xc0=*/@\x94\xf2\xa3A\x9b\x15,\xc0u\xc6J@\xcb\x9f\xa7A\xf8|\xf0\xbf\n\xa5+@ \xba\xa9A2\x0bg\xc08\xe4B@\xdd\x94\xa1A\xdb\x9d\x19\xc0\x9d\x8e\x92@\xce\xe1\xa7A\x82\xcb\x18\xc0\xf4\xf8\xa6@\xb0\xa0\x9aA\xf0\xf29\xc0\xeb\x9c\x9e@\xdc\x95\x9fA\x82\xda\xb7\xbf\xc3\xc2\x90@\xf3\x80\xa6A\xdd\xae\xb2\xc0\xde\x06\xbf\xbf\xdb-\xafAZ\xd8\xa2\xc0\xba\x1e\xd9\xbf\x9e\xfd\xa5A\x7f\n\xdb\xc0\x89\xb7\xef\xbf\xacR\xa0A\xbd1\xf0\xc0F\x03\xd7\xbf\xdax\xadA\xa6:\xed\xc0\x80\xa15\xc0\x8f\x92\xb5AS\xd7\xe5\xc0D\x1c$\xc0\x17E\xacAz\xb5\x0f\xc1\xb9\x870\xc0\xc5\x93\xb2A\x93\x98\x14\xc1\xbf\xd4\x06\xc0i\x1b\xaeA%H\x19\xc1M[l\xc0\xf6\xff\xa1A\x8aj\x18\xc1\xf6\xfd\x08\xc0p\xf7\x9fA\xdcS\x0f\xc1\xf5\xa8\x9d\xbf\xfev\xa3A\xaf:)\xc1\x13$\xf5\xbf\x9d\xe3\x97A\x08\xf4\x16\xc1\x9aFC\xc0\xd2\x84\x94A\xc4\xf0&\xc1\xbf\x80p\xc0\x992\x93A\xb4\xd0\x04\xc1\x86%F\xc0e~\xabA\xfe\xaf\xdd\xc0b"\x86\xc0`\x1e\xb3A\xe7\x19\xcf\xc0$\xe0\x99\xc0\xfe\xf5\xa1AHp\xdd\xc0\xf4)\x97\xc0\xf6m\x9cAf1\xe9\xc0\xca\xaf\x81\xc0(\xdd\x9fA7\xd3\xcf\xc0]\xfa\xc1\xc0\xd8O\xa6A\xbe\x0b\xd8\xc0t\xad\xd6\xc0\x06\x8f\x95Ai;\xe6\xc0\xa1\x03\xd4\xc0\x83e\x8fA?/\xdc\xc08\xb7\xbc\xc0t\x1c\x95Ak\x8e\x05\xc1\xab\xe2\xd4\xc0\r\xed\x92A\xef\x95\xde\xc07\xfd\xf4\xc0\x9b\x9d\x9eA\xa0\xe4\x9e\xc0\xdc\xd8\xc5\xc0\xbc\x18\x9aA\x86\x1f\x90\xc0KC\xe4\xc0\xcf\x93\xa3A$!\x86\xc0\xa7!\xaa\xc0\xcc\xdd\xa6A(5\x96\xc0y\x03\x8f\xc0\xb8\x9d\xa5A\xfb\xc31\xc06\x94\xae\xc0\xcd\xef\xa7A\xd6. \xc0#\xe6\xcd\xc0\xc2\xa3\xabA\xf2\xfe*\xc0\xd5\xaf\x95\xc0E~\x9cA|\x84\xe8\xbf\x9d\xd3\xa1\xc0\xd0M\x9bAD\x95B\xbf\xec\n\xb5\xc0\xf0|\x94A\x04\x18\x0e\xc0\x00,\x8a\xc0!\xc9\x94A)dF\xc0\x98\xf8p\xc0\x05u\x8aA=\xd2\xbe\xbf2\x19\x87\xc0\xa4\x8f\x8aA8.5\xbf\xe2\x9d\x9d\xc0p\x84\x81A%\xfd\x15\xc0\xd09\x94\xc0\x1e-}A\x9a\xf26\xc0\'\xe9n\xc0\xaf\xbbpA\xd5\x10\xb6\xbfu\x0f\xa3\xc0\xff\x00vA\xc5I3\xbf\xdf\xaf\xbb\xc0\\\xb8kAw\x84a\xbf\xa2H\x86\xc0z\x9fbAG\xad\x00\xc0\xd3\xaa\xad\xc0F\x12\x84A\xac\xc4W\xc0\xe4;\xb6\xc0\xde\xa2\x88A\xc4\x03\x86\xc0\x0b\xa4\xa7\xc02\xb8\x88Ap\xe2=\xc0W\x9e\xcf\xc0v9tA\xe70\x82\xc0\xf4\xcd\xca\xc0m\xdbfA!\xeb\x87\xc0\xe5v\xb5\xc0\xaaNzAQ\x1f\xa1\xc0E[\xd9\xc0nPmA\xd7\x0bY\xc0_`\xe7\xc0R\x06\x89A9\xc55\xbf\xbc\n=\xc0\xc2\x85\x80A- 3\xbf\xf1A\x12\xc0\xdf\'\x91A\x9cA_=%\x9c%\xc0v\xcc\x97A\xfe\x18b\xbdpkF\xc0\xbb\xdf\x8fA\xfc\x86\x94?\xe5!\xd8\xbf\x04\xdc\x8bA\xef\xaaO?T/?\xbf8\\\x9aA\xb0\xbc\xe2?{\x81\xa4\xbf\xf5G\x99A\x87\r%@/C\xfa\xbe0\xf7\x9eAM^\xfc?\x9b\xbd\r\xc0\xa2\x10\xa1A\x11\xfa*?\xab\xc7)\xbf\x08\xaf\xa6A0\t\x93\xbd8\xd6\xac\xbfmk\xa1A\x05\xed\xf1>\x01e\'?\xc2%\xa6A(\xcb\xb2\xbe\x98N@\xc1\x80g\xc0\xd02YA7-H@\xe6\x9d\x03\xc01^NA.\xcbi@1v3\xc0"\x1aVA\xee}\xcc?.G\x0e\xc0\x15\xdeaA\xfd\xb9\x81?\x8f\x06\xd4\xbf\x02\xf6VA\xdb\x91\x8d?\xa8"R\xc0\\LFA\xa8\xf8\xb1?n\xe0\xe2\xbf\xccxSA\xd6\x1ed@\xef\x1b!\xbf\xf1\xd2TA)w\x91@\xed\xfe\xc5\xbe\xf8jZA\xce\xc6=@\xe9jM>E\xf9BA\x8bAK\x02]AP\xb9O\xc0\xf0\xb21A\x84OcA`\xc3j\xc0\x98\x177A\r\x18"A\x9a\xc7M\xc0\xc0\xca8A\x17\x05\x15A\xcb`v\xc0O\xbb;A1\xe96A<\x16l\xc0C\x1dCA\n\xb08A\xb3.\x95\xc0+\xae5A\x1f\x8e\xd0@v\n8\xbe\xbdI/AW\x8f\xb0@\xf2X;\xbf\xe9\xc01A\xad,\xd8@p\x13\x91?h-9A\x8d\xd0\xf1@\xe0U\xc4?\xe2>"A#\xde\xc2@\xfe\x1b\xf4?A\xd8\x19A\x98L\xab@\x08\xa5\xb4?3\xaa+AI\xba\xab@\xe7 E@c\x076A\xc9\xec\xc1@I\xfee@\x14\xfb\x1aAL,\x97@\xd6m\x81@\x0f\x1e\x11A\xe9\xb6}@0id@3\xbd\x10A\xc5\xd4\xb1@\xac6\x8e@m\x1c#A\xfd\xf5\x8a@6\xdd\x9b@\xaa\x919A\xb2H\x85@\xca\xe0!@{\xe6IA\xdc\xc0\x91@\x85]\x11@\xcd\xcb0AG7j@\xa4\xdd\xe1?\x89\xd7$J\xe9@\x1b\xc0\x02Alc\x1d\xbe\xc9\xe0\xb0@\xe5\xa7\x11A\xdaad\xbf\xbc\xa8\x91@\x1c\xbc\x18A>\xcc\xf6\xbe3\xb8\xa7@\x08\xf2\x01A\xe8\xd4\xa8\xbf.\x0b\xbf@b\x1d\x1dAY\x98\xd0\xbf\x0f|\xe5@b\xa9 A?\xabM?\xb2\xfd\x01A\xd4\xd7\x1dA\xa8\xfe\x98?m\x0e\xd0@\xe8S(A\xe6\x98\xc6?\xa0T\xeb@\xd7t-A\xde^\xab=\xdfv\xbc@\x89\x89\xdd@boo@c\x17\xae@\xb2\xd9\xb9@\xea\xf9`@E\x9f\xb9@5\xdb\xef@\xd9\xf6\x9d@\xff\xf7\xc9@pr\x05A\xed\x9d\xa0@\r-\xa5@\xaa\x1e\xdd@\xc6\x9f\xc3@C\x8e\x95@\xbf\x01\xc1@\xda\xb7\xba@\x8fB\xc3@Q\x9a\xd7@\xd9v\xea@4\x94\xd2@Z\xd6\xf7@0&\xf2@\xdc\x92\xde@H\x85\xc1@\xbc\xea\xe4@\xc6\x04\xab@\xf1\x91\xc2@D\xfc\x08A\x80\xa4\xa7@\xd0d\xa1@\xc8s\x08A\x12\xe5\x8b@\xd2R\xd0@\x02\x18\tAe\x86\xc1@\xb9M\xcd@$\x12\x1eAp\xe6\xe6@\xf5\xd6\xd9@\xb3\xd4\x1cA\xdf\x8c\xae@\x9bZ\xc3@\xce\x18/AKO\x80@\x00H\xfc@@\xbf\xce@\xc9\xde\x85@\x83\xe9\x11A6h\xcf@\xd4C3@\xa4\x1a\xec@\x8f\x8c\xd7@X\xfc.@@\xd0\xcd@\xe6\x0e\xde@no\xcb?T\x0c\x02Ao\x16\xd6@9\x9d\xdc?\x1er\x12A\xc3\x14\xcf@\x1d\xb9\x02?\xa99\xee@\x9d\xb5\xb6@\xed\xc8\x16\xbf\xf86\xf2@\xb2h\xbf@\xf4\\/?3\x0c\xcb@\xc9\xb2\xb4@/\xcf:?xY\xfc@*\xd7\x89@\x1bE\xce?[0\xe7@0tX@\x87\xb8\x14@m\x95\xcb@\xd6\x91e@1\x8f\xec?\xcfC\xf9@\x8ez\t@Fy(@g\x03\xea@v\x81\xc9?\xf0\x05\x94?\x94\xbc\x0eA\x80\xd6\xdc?\x92\x12\xb0?R\xf6\x16A\x0c\xeeC?\xc2&D>\xaf)\x12AB1|@\x1c\x0b\xc6\xbe~\x8f\x1bA\xc8\xa1\x96@\xa5\xaf\xa7>.\x10\x1aAp\x15\'@\xfd\x0f\x85\xbd\x84z)AN\x11\x16@YPl?;\xe7\xfc@z\xc3\x00A\xde\x00\x17?o\x15\xd9@/H\x06A\xdb\xa3N?\x0f\x9a\x0fA\xdc\x8f\x0cA\xb9\\\xb3?\xd26\x1dA@\xaa\x08A\t\x84\xb2=\x14\xec\x0fA\x1fU!Ab\xd9\x01>\xf0\xc4\xff@\x8dk)Au\xee\x11?\xe6\'"A\xda\x860A\x84\x16\x9d;\\\x86"A\x17\xeb?A\xd6\x8c\x12?p\x8d1A\xb66*A\xa2U\xf5?\xf2\xe3\x1aA\x8c\xd47ATU\x02@\xe3\x12\x0eAIaGA\xed\x10:@=\xa6\x1eA:R,A\xe7\xd9\xb3\xbf\xa8\xa4\x12A\x82) A\x11f\x00\xc0\x19\x1f$A\xcc\xc7\x1dA\xe8\x01\x04\xc0\xf9\xcc\xfc@\'\x00"Ap\xb2\xc6\xbfS\xae\xe2@s\xe9\x1eA\xc3\x94Z\xc05\\\xf8@C\xf4)A\n\xc7o\xc0\xe8\xfd\nAb\xe2.A\xf5\x9d\x88\xc0;\xc8\xdf@\x951\x1aA\xc0\xc8u\xc0"G\xbf@WH\x18A\x8c\xdf\xb7\xc0\x10\xa1\xd7@\xc8?"ACc\xca\xc0\x15\x11\xf5@-\xcb%A\xac8\xb5\xc0\xa4\xd6\xc0@\x05\x9b.A{\xd1\xca\xc0\x1b\xc1\xc5@\xeb\xf4\x14A\xb2\xd9\x8b\xc0\xb6\x8f\xfe@w\xc4\x06Ak\xe8U\xc0\x90\xd1\x00A\x04\x19\x00A\x81\xa6\x95\xc0\xc9M\x10A\xc1b\x0bA\x19\xad\xa0\xc0\x96\x8b\xef@OH\xf8@\x98\xb7N\xc06c\xdc@\xdc\xfe=A\xb2P\x1f\xc0\x04\xd3\xbc@\xec\xac;A\x03Hq\xc0\xd1W\xe4@\x88bPA"\x13\x91\xc0i\xdb\x04A\xd8\x1aVA\x8cB\xb1\xc0\x13\xdc\x02A\xef\x90NA\xb7:\x81\xc0\xb9 \x14A\xe2]PA\x02(d\xc0T\x0e\xc6@\x13\xddaAg^#\xc0\xe1\xd9\xbc@\xb00aA\x863\x7f\xc0\x0b\xe3\xdf@/\x01vAR\xf0C\xc0\xe7R\xea@\xeb\xca~Ar@\x94\xc0#T\xcc@\x03D\x80A\x8c\xa1\x94\xc0\xb4\xb6\x04A\x02\xf1nA\x8d\xf7\xb5\xc0\x01 \x06A\x9a\xb7tA[\x81\x82\xc0_\xdb\x12A\x03\xe6sAa\x96\x8f\xc0\xbb\x8e\xa1@\xd0o_A"\xbc\xae\xc02\x83\xa3@nESA\xca?\x85\xc0\t>}@\x0c\xdekA4?\xd1\xf0pA\x0bD\xca\xc0\xbc\xd6\x1e@\xde\x0epA1\\\xdf\xc0o\x8f\xc2?\xaa?iA\xa2\x07\xdc\xc0\xfdOZ@%\x0c~A\xd6\xb4\xca\xc0\x87\xe6\x83@xo\x82A,\xb0\x04\xc1q\t`@\x9b\xea\x80AE\xcf\n\xc1o\x9d\x1d@b\x84\x80A\x92\x8f\x08\xc1-2\x84@\xa9-\x8cA\xf4\x8a\x06\xc1n\x80V@\xabT\x92A\xc6t\x1a\xc1\xb2H\x8b@_\xb5\x8bA\xd3\xb0\xfb\xc0\xe3\x99\xae@\xa8\xae\x8fA6{\xda\xc0\xd7\xb6\xa6@\xe4\x8a\x90A\xd0\xb7\x01\xc1\xad\xe1\xb7@p\xd3\x97A\xbeg\x01\xc1=\xb7\xd5@f\xff\x87AVz\xe5\xc0\xd8\xce\xdc@\x83\xe6\x81A\xd6\x11\x13\xc1\xb9\x99\xe6@\x9e\x8b\x87A\xd3R\x10\xc1\xe6X\x82@\x90\x0foA\\3\x1e\xc1a\xdfU@\xa8MgA\xa7\xe2\t\xc1\xe3\xae\xa6@\xb5\xe2eA\xd4C\x03\xc1\x9e\xf3\xbb@\x00epA\xb3\x01\x12\xc1\xc6\xeb\xb8@\xc9\x0eSA7\x83"\xc1d\xf2\xc1@\xc6\x03UA\r\x94\x05\xc192\xe3@\x19\x08QA\x857\xea\xc0BC\xd8@e\xbfMA\xce\xdd\x07\xc1\x0f\x10\xf2@L\x8baA\xd5?\x0e\xc1V\xfb\x01A\xf1:@AC.\r\xc1\xa2T\xf0@\x1620A\xd6_$\xc1\xd9=\x08A\x06gDA\xad\xb0$\xc1\xcf \x0eA\x89\xfaTA\x82\x89.\xc1v"\xf4@\xc0\x11FAuc)\xc1\xe9d\x15A\x03+:AN\x9b\x00\xc1w\xbc\x15AA\xea\xf4\xf7\xc0\xf7\xeee@\xf4\xebJA\xd4{\x04\xc1\x10\xae*@\x8c\xce-AG&\x07\xc1\x84\x95F@I6\x1eAL|\xdf\xc0\xba\xf3\xe8?\\\xe3/A(F\xde\xc0\xe3\xaa\xa4?\xca\xea?A\x17f\xe0\xc0\xf2\xa3!?\xfb\xec\x1fA\xd4\x12\xea\xc0EHi?\x16 \x10Ae\xbf\xf1\xc0m\x80\x84\xbe"\x8e\'A\x9f\xdd\xbf\xc0IO\x9a>mK\x1eAY:\xb7\xc0\xa1\x9a)@\x0c.-Am\x1a\x9c\xc0^\x8e\x06@\xe6-4A\x96/\xba\xc0\xc3\xe8\\@\x7fp8A\x10\x1d\xb0\xc0\x06\x8eO@\xeb\x01\x18A\x02\xbc\xcc\xc0%6t@\xac\x9c\x11A\xb9\xb8\xa9\xc0\xf8o @\xf0\x96\nA\x9d\x03\x95\xc0\xfb\'|@\xcdc\x18A\xaa\x94\x17\xc1\nA\xe1?N\xa6/A\xdc\xb4\x1d\xc1\x1e\xd0\xa2?\xf5\x03\x1fA\xcc\x9c!\xc1.\xbf\xcc?\x0c\xa0BA\xcfi\x1c\xc1B\xd9\xf2?L\xc8PA\x01\xd76\xc1e;z?r\xe9BA\xbd@4\xc1\xb3\x04\x1e\xbd#\xba>Aj\x88?\xc17\xf4c?A\xf1YA\x8d\x19@\xc1\x8eX\xf4?U\xc3aA\xb8\x05W\xc1\xf2\x82\x0b>J(ZA\xfe7W\xc1\xf2\xa8W\xbf\xb1\xf1PA$\xcbb\xc1]\xe5\\?L[RA\xfdrZ\xc1\xdat\xfd=l\x18kAV}.\xc1\xfe\xf5)>\xcd\x0ciA+\x83\x1d\xc1\x07h\x97>TWcAy\xfd2\xc1\x9bld\xbf7\x87jAmi0\xc1\x9c\xbd\x1a?\xd7\xd1yA\xcd\x88F\xc1B(\xcc?5\x024A"\xc6N\xc1\xc3\xefv?/&%A\xd5 L\xc1\x0e\xa68@N\xed7A\x92\xc6E\xc1\xabGU@\xa1UEA\xcb\x1cY\xc1\x18\xb1k@\x9a\xc2*A\x8d\x9dh\xc1\x9fBG@\xccg+A\x8f\xca[\xc1\xb2\x13\xa0@.\xd16A\x02$N\xc1|\xe8\xb4@3?2AW\xc4\\\xc1\x13Y\x96@!\xe3GA\xd7\x07p\xc1&\xbc\xb6@x\xb00AQz\x80\xc1)v\xa4@\x03\xd26A\x86\xc7p\xc1\'z\xda@\xd9\xab&A\x9dtR\xc1\x03go@\xa7\x0c\x13A\xd8&^\xc1\x95\xe4Z@\x0cq\x03A&\x18>\xc1\xb7\xc0\x81@e\xf7\x0eA\x8d,5\xc1\x08\xac\x89@3\xe0\x1bAt\xe23\xc1\x01\xca~@\x8c\xbc\xf4@q\xa2=\xc1+z\x94@\xf3\xb9\xe2@n\x84\x1c\xc1\xc6\xb6\x92@k\xd7\xf0@*Q\x15\xc1\xa9\xed\x86@8\x85\xd3@,\x98\x13\xc1\xcb\xef\x88@Rq\x07A\xc7\x1d\x1f\xc1&"\xc5@p\xe6\xed@\xf9:)\xc1,\xc3\xd0@$}\x04A7\xae\'\xc17~\xcc@\r\x1c\xcf@&\x04\n\xc1\xdc\x8e\xda@\x1cY\xe7@\x1f\x05\x01\xc1\x11\xa0\xcc@\xd4^\xcd@;\x92\x01\xc1\x9eg\xd7@.h\x03A\x15"\x0e\xc1$<\x04A\x91K\xde@YR\x1b\xc1\xc5`\nA\x8c\xb1\xe9@y}\xff\xc0\xc5!\x12A\xfcK\xce@\xf7+\xda\xc0\xc3\xd2\nA\x96\xc5\xbe@\xd6\\\xdd\xc0\xdc\x96\xf8@i\xdf\xb0@0\xfc\xc2\xc0\xe5\xe0\x14Am\xe3\xc2@\\\xe3\x03\xc1\x96^&A0\x08\xca@U=\r\xc12X-AZ\xc3\xe0@\x8d\xa3\xf2\xc0\xd5#/AG\xc6\xbb@\x13\xb62\xc13\xe3%@nG\xdc@90*\xc1\x93\xc7\x1f@\xf0(\xb7@t\xe9:\xc1\xc8\x83\xc0?\xbc\x06\xf0@\xc9\x19<\xc1w`\xc7?\xa6Y\x07A\x8f\x12?\xc15\xd6\x81>\x8b\x98\xdb@|\xe68\xc1a\x1dT>Z3\xbc@\xfci5\xc1\xcc\xcba\xbf\xb8\xd0\xf2@\x82\xb7:\xc1]\xcc_\xbf\x85\xae\tAQ\xf79\xc1K\xa7\x13\xc0P\x18\xe0@Q\x7f3\xc1^2\x1d\xc0\xa3\xbd\xc0@\xb4bK\xc1\xa3c \xc0\x80\xc7\xdd@\xaf\xe32\xc1wG?\xc0\x8cF\xf7@s@\x1d\xc1\x17;!\xbfv\x91\xee@\xcfu\x19\xc1\x84\xaf\xdf>\xb6\x9a\xf2@\xf1\x91\x18\xc1\xd0(y\xbfw\xca\xcd@Pl\x10\xc1V\xde\xbd\xbf\xd4+\x05AT\xd2\x12\xc1\x9b\xe4!\xc0)\xce\x03A\x03\xe8\x12\xc1d\xa7\x9a\xbf\xb3\xfd\x15A(\x0f\xff\xc0\xd6 \xaf\xbf\x04\x96\x02A)\x80W\xc1a\xbe\x01>\xa3$\xd8@\xd4p_\xc1A\xbd\x9e\xbeJ\x9d\xb6@\x964e\xc1\x19(\xcd>\xbc\x97\xf9@\xb0\x19a\xc1C\x89\\?\x99V\nA\xd1>z\xc1q\xa1\x8b\xbc0>\xf6@\xd3\x94{\xc1\x93\x80z\xbfsB\xea@\xb2A\x83\xc1P\xf9P\xbe\x0c?\x10A\x95\xe2\x8b\xc1\xfc\x11\x1e\xbf\x99`\x0cA\xd7\x1a{\xc1\xae\xa5\x9f\xbf\x8a\x00\x1eA\xb8>i\xc1\x86\xe7v\xbf\x03\x7f\x1eA\x12\xad{\xc1\xbd\xd8\r\xc0\xef\xb6\x14A\x16C\x80\xc1@\xd7\xa3\xbfx\xdc.A\xf0\x89\x84\xc1 \xce\x86?\xc8\x93\x1eA\xe7E\x8a\xc1@\xe8\xda?i"\x18A\xf2\x90x\xc1j<\xc5?I\xad A\xd7 \x87\xc1\xb7\xa6??\xbd\x12/A\x9f\xe3\x83\xc1:,I?\xeb\x07\xd7@\x03\xf3\x8b\xc1\x94\xbaF>\x8a#\xc7@L\xa7\x81\xc1\xdaX\x03@Lg\xcc@\xa2et\xc1hE\x18@\xf3\xef\xd6@\xb6,\x87\xc1\x06\x11)@\xd0\xfd\xa8@,\x91\x85\xc1t\x97l@\x11\xf5\xac@RX\x8f\xc1\x83H\x17@\xbbO\xac@\xc5\x81\x83\xc1\x02\x9c\x15@\xc2%x@\xa6\xa2\x83\xc1t~P@#\xc1C@\x07\x96\x80\xc1\x81\x17\x89?\x94xa@\x99W\x7f\xc1\x17\xfe\xaa>I\xce\x86@\x90\x83t\xc1\xa4\xa0O?\xf3\x8b\x12@\xf7\x9dj\xc1\x17;\xd5?\xcfn\x0c@\xf3hh\xc1!\xa8\x06\xbf\x9c\xfd\x18@Tbs\xc1\xf8\xeb\xb1\xbf\x0b\xbf\x16@s\x03b\xc1s\x04\x08\xbff#Z@\xd0\x9dX\xc1\xc8eZ\xbf\xcc\xae\xa4?#\xf1_\xc1\xadx\x85\xbfmF\x85>\xcc^Q\xc1i\xcc\xee\xbf\x0b\x0f\xc5?\r;D\xc1\xb3qR\xbc\xc4\xd4\x87?.lG\xc1\x08\xce\x87?\x82\x9c\x82?\x00.=\xc1\xc9T\x81\xbe\xa8\x1d\xdc=t\xf44\xc1@\xf8\xff\xbe\x08\x8a\x04@\xc5\xe00\xc1`i\xbc\xbf\xffH\x05@}n.\xc1\xc4;.>\x8c\x83J@|c4\xc1\x8f\x95\xb0?D\xc9W@\xc4`C\xc1\x9c\xfc\xbe?\x89HC@\xdf\xd6/\xc1w\xc9\xe8?\xc1Q\x87@\x0bJ\x1f\xc1\xe3D\xab\xbex\x1a{@\xf5\xd8\x1b\xc1\xe4\xe6{\xae?M\x1a\x9e\xbd\xe2\xccn\xc1\xae\x93\x05@.\xff\xb5C\x89\xbf\xbf=\xbb\x85\xc1\xa3\xe2\x18@\xd6\xef\x00\xc0\x04\xa3\x86\xc1\xc8\xeb\x13@:rF\xc0\x15\xca\x81\xc1\xa7\x00X@p\xad\xe6\xbfn\x82\x91\xc1\x81\x8d\'@:\xad\xb9\xbf\xae\xcc\x94\xc1\xb7\xd4h@F\xca\xe5\xbf.n\x90\xc1j\x7f3@\x19\xda\xcd\xbe\x1bf\x99\xc1=d\xc9?@\xfe\xe7\xbf:\xb3\x96\xc1\xfa[\x00?\xf4\xfd\xcf\xbf\xb8\xab\x9a\xc1\xa5Z\xd8?\x8fD7\xc0\x02\xbf\xa2\xc13I\xf2?\xadKl\xbfp*\xa6\xc1`d.@\xf1\xdb\xad\xbfN\x1d\xa4\xc1}a\xb8?\x9e\xc6\xa0>\xa5(\xa0\xc1\xec\x1cn>\xdd\xe8&?\xd8\xe5\x9c\xc1\xf1~r\xbe\xac)\x91\xbd\x1d\xe2\xa1\xc1\xc3\xf2<\xbe\xed\xbd\xc1?\xfbB\xab\xc1\xaa\xc6\x01@c\x0f\x8e?7\x90\xad\xc1\t\xf4\xc3?\\\xda\xf2?H\xb1\xaf\xc1>\x9c4@\x0e\xdf$?\xbbXl\xc1=1??\xf9\xb2\x11\xc0\xeb\x9d^\xc1\xdf\x9d\xcb?\x94\xb8(\xc0\x01Vj\xc1\x8b\x84\xf6\xbe\xd7\xcb1\xc0j\tw\xc1\xc1X\x98\xbfO!,\xc0DxY\xc1FL^\xbf\xabZq\xc0\xc80O\xc1_r\xd5\xbc\x0e\x11|\xc0\xf6\x15L\xc1N\xc9\x04\xc0\xdc\x07U\xc0\xea\xbeB\xc1(\xd3\x1c\xc0\x1a\x0f\x86\xc0\x1cN;\xc19\x1b\xe3\xbfJx\x11\xc0\xe9E@\xc1\xd6\xf4\xf8\xbf\xbdx\x9a\xbf5\xd54\xc1H\xf9C\xbf8\xcc\x16\xc0!$-\xc1J\xf7\x19\xc0\xbc\xfa\x15\xc0\xf4MZ\xc1\xf3IN\xc0\xcd\xeb:\xc0\nmd\xc1\x01\xc0_\xc04\x07q\xc0j>d\xc1\xed\x9b:\xc0\x9f\xa0\x04\xc0x\xf0P\xc1\x86\xff\x84\xc0\xfe\'.\xc0\xc3\xf2c\xc1Y\x94\x9a\xbf\x89\xfa\xa2\xc0\x0b\x17r\xc1gv\xfa\xbf\x00Q\xa4\xc0\x02\xceZ\xc1W\xee:\xbfF6\xc7\xc0JiM\xc1U\xc3\t\xbe\xef\r\xc4\xc0\xfb\xbe`\xc1\xed\x83\x81\xbf\xe0{\xf2\xc0cCr\xc1:\x9bw\xbf{\xf8\xf7\xc0\xaf\xeaX\xc1\xacW\x85<\x8e\x89\n\xc1\x80\x9bG\xc1\xec\x15->\x00(\x08\xc1\xff\xc5a\xc1\xe5;}?\xe1\x85\x08\xc1\xbb\xa2O\xc1\x96u\xca=\xfbS0\xc1\x01\xa4B\xc1O\x0b??V\x08/\xc1\xd5\xf3\\\xc1\xb7\xaa\xb1\xbe@k \xc1s\xa5U\xc1\x04\xd1\x1e\xbf\x11\xa4A\xc1\x15\xaaM\xc1\'\x9f,\xbf\xbb\xe5Q\xc1\xf0ee\xc1\xfb\xd9\xb6\xbfo\xdb>\xc1\xf1bi\xc1MR\xad\xbfs\xaa)\xc1\xdeYw\xc1\xd6Z\x00\xc0\xa4\x0c%\xc1\x85\xefY\xc1\xb26\x19\xc0\x01n\xfe\xc0\x819G\xc1\x15;,\xc0\xb2a\xfe\xc0\x151i\xc1\x15\x15V\xc0\xeb\xf5\x03\xc1\xa2\x08x\xc1\xed7K\xc0\xd2)\xff\xc0M\x1af\xc1\xccb\x97\xc0\xd4\x82\x08\xc1\x85S_\xc1E]\xa1\xc0\xfe\xff\xf3\xc0\x1f+|\xc1\x9d\xfd\xac\xc0\xe5v\x0c\xc1\xf0\xd1\x82\xc1\x9a\xb4\x9f\xc0\x16\xa1\x19\xc1\xe0C\x83\xc1_\xff\xa8\xc04\xf4\xfc\xc0\x92\xa9z\xc1G\x98\xcf\xc0t\xac\x0f\xc1\xa1\\T\xc1\x97\xb3\xa4\xc0\x1c\x9d\x18\xc1\xf7\xe3C\xc1j \xb2\xc0\x00z\x0f\xc1\xe1\x14U\xc1\xea\x1b\xa4\xc0\x8d\x0b.\xc1%vf\xc1M\xe2\x93\xc0j\xad:\xc1\xda\xcbl\xc1\xb3\xd2j\xc0\xb5e4\xc1\x99\xcbs\xc1rt\xaa\xc0\x07\x8d;\xc1\xc2lC\xc1;\x9a\xaf\xc0\xdf_<\xc1\xbc\xee?\xc1\xcf+\xd0\xc0\xba\xee7\xc1\x9a\xdeK\xc1\xd7\xf7\xaa\xc0\xca\x1eS\xc1\xd7gP\xc1\x11\xf9\xc9\xc0\xf8\xeaX\xc1\x98v@\xc1S\x92\x9d\xc0\x042^\xc18\x91^\xc1$\x1c\x8e\xc0\xf3\x19Q\xc1\x8by[\xc1\x9f\x08U\xc0F1T\xc1\xf37l\xc1E\x1b\x97\xc0\xc1y\\\xc1a\xf2/\xc1VP\x92\xc0\x15\xfa9\xc1g?\x1e\xc1C9\xa5\xc0T\xc98\xc1\xe9\xae1\xc1@OM\xc0K+:\xc1\x83q?\xc1\x7f\xd74\xc0\x9a\xd39\xc1i\xac\x1d\xc1\x90\xfc\x13\xc0Z\xb2;\xc1\xac\xd1\x12\xc1g\xce=\xc0 E\xc1\xb8\xeb!\xc1\xad(\x89\xbfH\xa4K\xc1A\xfd/\xc1{\xef\xa4\xbf\x89JT\xc1\xbda\x14\xc1Hj\x91\xbfB\xb5W\xc1Q`#\xc1\'1\x8f>\xdb\xb4B\xc1\x05\xf5\x14\xc1\x8f~\x11?\xee\xe8?\xc1$ \x12\xc1\xea\x85\x03\xc0\xf20\'\xc1\xbf\x88\xfd\xc0\xc7\xc5\x00\xc0\x9f\x03\'\xc1\x1dF\x1d\xc1\xbe\x8c\xed\xbf\x01+\x15\xc1\xd3\xb5-\xc1\xce\x06\xff\xbf\xa8\xba\x14\xc1\x80P\x12\xc1|\xb1\xcd\xbf\xebf\x00\xc1\xb3-\x01\xc1\xc8n\xde\xbfV\x94\x02\xc1Z\xa5\x16\xc1\'\x15\x15\xc04\xbe\xe8\xc0\xdd!\x14\xc16\x96\x82\xbe\xaa\xe8\xe9\xc0w\x02\x0e\xc1\x9b\xc1\x1b\xbe\x84!\xc5\xc0\xd8\xca\x1d\xc1\x1d\x019?\x99B\x00\xc1\x9f\xd0!\xc1\x93|\n?\xfc\xbd\x0f\xc1g\x07"\xc1\xbb\xb5\x02@\xdb\xd9\xee\xc0\xcew\x13\xc1b\\\x1f@\x1f\xff\xe5\xc07)-\xc1\xfc\xf5>@\x16\xcd\x06\xc1\x91_+\xc1\xbd\x95\x80@E\x84\xfe\xc0(\xf6=\xc1l\xf5.@\x1f\xf7\x08\xc1\x1d|!\xc1W\xeaC@ \x87\x1d\xc1\xc3V"\xc1\xc1\xba\x05@\xd0A%\xc1\xbd\xd4\x10\xc1\xc1\xc0X@\x9e\x1a\x1b\xc1\xca\x1c,\xc1\xf5\x80\x83@\xd6i-\xc1\x7fo!\xc1xs\x85@\x12\xa1;\xc1!\xd4-\xc1\xe9\x06\xa4@\x06k&\xc1[\x02B\xc1\xb3\xe5l@\x18\xd13\xc1\xb1\xcaO\xc1\xd9\x0b\x80@d\xe3+\xc1\x9bQG\xc1\x83uT@\xd2\xa7G\xc1\x17\xce=\xc1o\xe9\x16@s\xadR\xc1\x86\xd96\xc1\xcax\xcc?\x05|J\xc1\xb5\xc1H\xc1\x97\x13\x00@\xcf\xdf]\xc1\xa1?Y\xc1`\xcbp@}\xc7P\xc1\x02tb\xc1\xc2\x14\x8e@\x04\x8aI\xc1\x8eR_\xc1\xb3{Q@\xf4\xc2]\xc1t\x00/\xc1\xd5-\x01@\xae\xa9\xc7\xc0U\x00=\xc1db\x9c?\x9e7\xc1\xc0\xc7v+\xc1V\x95E@r\r\xad\xc0W\xdc\x1f\xc1(rl@\x9eB\xb4\xc0G\x801\xc1(#=@\xd6\x1e~\xc0\x8b\xf4=\xc1\xc5\xa9\x0b@o\x89p\xc0\xab2\x1e\xc1\x842\x1b@\x13;G\xc0v\xae\x18\xc1\x1aw\xbc?\x1f\xcfg\xc0Y\xca\n\xc1\x14\xf8[@\xfda=\xc0Ay\x11\xc1\xad\x8b\x8a@\xc7\xcc\x1d\xc0\xb2E\x05\xc1\x1a\x89i@8\x9e|\xc0\x95\xd4\xfa\xc0\r\x8aH@\x0c\x14\x0f\xc0P\xb8%\xc1y\xcb\x01@\xda\xe9\xde\xbfkH2\xc1k\x84\xa7?\x15\xaf\xf3\xbf\xdcO+\xc1\xb4O=@W\xbc\xa6\xbf7\x1a\x19\xc1R[\xcd?o\\\x92\xbfN&;\xc1\x92-\x87@\xbe$Y\xc05\xe90\xc1PU\xa8@\xa8k`\xc0I\x11N\xc1\x92\xe8\x86@y\xa3+\xc0\x16\x9cV\xc1\x84\xf1T@\xfd\xb6*\xc0%\x80Y\xc1a)\xac@}\x05\r\xc0\x8d\xc4N\xc1LY\xc7@\xb5"\t\xc0\xea\x0bl\xc1@\xec\xbc@!\xffE\xc0\xf7\xc3r\xc1o\xb5\xdc@\\\xe33\xc0z\xd7y\xc1\xa1z\xa4@&\x1fD\xc0\x1b\x12f\xc1\xb9B\xc4@A@\x91\xc0\xb3\xbfg\xc1|]\xa2@}x\xae\xc0\xaf\xadj\xc1~\xc9\x82@?G\xa8\xc02Mc\xc1\xeb\xfc\xa9@\xd2s\xd9\xc0\xaa9c\xc1\xe7\xd0\x8f@Q\xbf\xf0\xc0\xa0\x06a\xc1?\x1c\xd3@c\xb7\xe9\xc0\xad|\\\xc1\xf5_\xd9@\x07\x00\n\xc1N\xdc_\xc1\xa5>\xc1@\xaa\xf7\x13\xc1\'\x8ad\xc1\xfe\xab\xef@\xb0\x92\xa1\xc0 \xdfe\xc1\x8f;\x05A\x9d\xf4\x8c\xc07\xd2`\xc1x\xb1\xf4@\r\x05\xcd\xc0o\xc7^\xc1\xc3\xde\tA\xd6v\xd9\xc05&a\xc1\x9f\xb4\x9f@\xfc\rU\xbf;|`\xc1\x0c\xa1x@\xa2q\xd5\xbe\x05\x88h\xc1<\xda\xc0@\xdb\xc7\x80\xbdYbi\xc1\x01#\xde@\r\xa7\xfe\xbe\xc0\x19p\xc1\xbdK\xbc@\x03k\xa3?\xebut\xc1`R\x9b@\x99\xe0\xbb?n\xdf\\\xc1\xa9\x12\xc3@\xbc\xe6\x12@,c\\\xc1\xe0v\xe6@(S\x1b@h\xb7M\xc1j\xe2\xb7@\xf7\xa4\xef?.\xe7i\xc1\r\xac\xbf@\xa1\x07\x97@\x9fwo\xc1\xe1|\xdb@#\x13\x9e@\xe3\xf5^\xc1\x8a#\xb0@\xf5\x82g@\xac\xb3f\xc1\xed\xc9\xa2@e\xf6\xb6@\xed\xd4m\xc1\xb5R\xa8@\xda\x8c\xd5@c\xfd[\xc1\xb5\xb4\x80@\xa9\x0c\xa8@k\xf6V\xc1af\x89@|\x0b|@)SJ\xc1?\x88n@\xacxZ@\n\xcc\x80\xc1\xc7\xb6\xdd@\x84\xe6\xd5?K\xff~\xc1\x8a\xb8\x02A\xa5&\xcb?\x8f\x8d\x8a\xc1\xf6\xe8\xcc@iR\xfe?\xbf\xa5\x8b\xc1\x16S\xac@\xf5\xf4\xf9?/g\x94\xc1\x02\x01\xe6@\xca\xcf\x00@\xc4\xa8\x95\xc1I\xc6\xf6@@\x18\x84?\xba&\x9e\xc1\x15\xa0\xc8@.\xbf\x0e@\x8fS\xa5\xc1y\xf6\xe0@+A\r@?,\x9f\xc1\xf3\xfe\xaa@\x85[\x86?\xc7\x98\x97\xc16\xb0\x9c@/n0?\x7f\xa1\xa2\xc1\x97\xa6\xbb@\x93\xab->:\xc1\xa4\xc1o\xb8\x91@\x93\n\xa1?\x08\xe5\x9d\xc1Y\xcb\xaf@\xdd\xdae@~\xba\x9f\xc1V`\xc6@\xb3\x98\x90@\x13:\x96\xc1\xa9\n\xa2@\x0cEy@;\x95\xa3\xc1En\x93@\xef\xe7d@\x1fI\x94\xc1$<\x04A\x14\xcbD@;\n\x99\xc1\xd9\x19\x15A\xc2\xdd=@a\xe8\x8f\xc1\xe2j\x00AT\xc0\x87@\xc3\x85\x8d\xc1>\xc1\xe4@\xd6\xef\x8b@Vp\x8d\xc1\x16\\\x10A\xa5s\xa7@4\xde\x94\xc1\xa2\xf5\x18A\xae\x08\xae@9\xf2\x89\xc1\x9f\xa5\x04A\xfbk\xd1@y\x92\x89\xc1\xa7\x80\x10AMh\xec@\x0b\t\x82\xc1\x8es\xfa@\xc6\xea\xcd@\xd2r\x92\xc1\xa2\x1f\xe9@E\xe0\xdf@\xcb\xde\x92\xc1\xafR\xce@JI\xcb@w\x9b\x9a\xc1\x89q\xf5@\xb2\xcd\xe0@\xc7\xd8\x8f\xc1\\\xda\xd7@\x88\xed\x06A\x92\xfd\x86\xc1\x12t\xd0@\x94\xf2\x06A\x90\xa9\x94\xc1I\xe8\xba@\xf7\x99\x08A\xd6\xef\x91\xc1\xdbD\xf7@Z@\x19A\xec=\x9b\xc1Y\x96\xfa@H\xf5\x1bA\r-\x8e\xc1\x0b\xae\x0bAA\xb6\x14A\xe7\x92\x8d\xc1z\x1c\xe9@r\x0b-A\xfa(\x90\xc1\xe8\xe2\xcb@\xa6\x810A\xe0H\x8e\xc1\xc9\t\xfe@\xe1\x999A~\x90\x85\xc1\x07\xce\xe4@\x86\xb1*A\xab\xb3\x84\xc1\x06`!A\xdd\xad\x9f@D\x03\x84\xc1\x86\xcc1Ac.\xb5@+Sz\xc1\xde\xd0\x1dA)&\x83@\xda\xadz\xc1\xb7~\x11Aa\xb7^@>\xfce\xc1r\xe6\'A\xc3F\x82@u\xbcf\xc1\xa7\xe45A\xc8\x05\x98@\xaemR\xc1\xa0\x98\x19AP\xe5\x90@k\x0cD\xc15\xbd"A\xb8\xe5\x89@\xd2|S\xc1\x0b\xe8\nATox@Y\xaeQ\xc1B\xcb\x14A\x92\xee\xc0@\xb0\xe2R\xc1\xee{%Az<\xdf@?|U\xc1\xc2\xa75A\xd8\x8d\xd2@RmR\xc1\xdd\xf3\x1fA\xf5\xa5\x05A5lS\xc1\xebD,A\xf1E\x11AoQP\xc1\xbd<\nA\x82\xbd\x0bA\xb9xN\xc1\xc5K\x06AM\x8f\x1cA\xda\xb3M\xc1:m\x00A\x1e\xcc\xca@\x03\x86L\xc1\xad\xb2\xe5@\xb6\x8a\xb5@\xf4\xf0M\xc1\x0ec\xf6@*\xc9\xf5@j\x16J\xc1f\xc5\xd3@\x17X\xfd@\x04\xf4`\xc1\xc7U1AEM*@\xcer[\xc1BkDA\r\x88"@\x19\xe9a\xc1o\xd0%An\xae\xc7?Vyh\xc1\x89\x8f\x16A0f\xd5?\x83\x1e]\xc1\x18k.A\xf1\xd0P>\xa0\xa4`\xc1C\x8a?AY\x13\xa8=[\x96E\xc1\xc3\x97*A\x8f\x1e\x1e\xbe\x08\xdaA\xc16\xe9\x19AAs\\\xbe8\x1e;\xc1#p1A{\xc3\x1d?\xbaX?\xc1\xf3G8A\xe1J\xb0\xbf\x18\xc93\xc1\xa5\xe4GA\xef\x0b\x98\xbf\x93?G\xc1\xb3\xa02A\xad1#\xc0/\xedD\xc1\x00F\xbf\xcc\xc2\x84\xc1\xab\x0b>A\'\xcc\t\xbf\xf15\x7f\xc1M+KA\x0b\x8f\x83\xbf6\xed\x84\xc1\x86\xeaAA\x1d@\x12?\x1e\xea\x88\xc1c\xce\x1aA\xe2?\xaa\xbf\xe6\xc1\x88\xc1$\xca\nA\xb1\x0bb\xbf\x1du\x93\xc1&\x84\'A\xd5f|\xbfl\xb4\x94\xc1vW$A\xce\x15\xee=\x0f\xee\x99\xc1\xe4-$A\x1eu\xd8\xbf\xe1C\x90\xc1f\xb5>A\xea[\x8a\xbf4\x03\x90\xc1U\xa4DAO0\x06\xc0\xf35\x95\xc1\xa3\x13JAh\x08\xfb\xbe\xa3\xd5\x86\xc1\x87\x93\x17A\x1eo6\xc0\xba\xa5\x7f\xc1\xea^#A\x9c\xe1R\xc0\xb2F\x8d\xc1\xaa\xec\nAOCe\xc0?\x0c\x93\xc1\xc2\x00\xf1@\xadWG\xc0\x90\x99\x99\xc12C\xf7@\xc4\xcb\x17\xc0l\xc9\x8d\xc1\xc1[\xcd\x8a\xc1\xf6NKA\xda\x81*\xc1%\x14\x8d\xc1a\x85=AA\xd01\xc1/b\x8a\xc1\xd4:GA\xd3\x80\x1a\xc1\xce}\x82\xc1\xeaaNA\xd6\x86+\xc1\xd2\x1e\xae\xc1\xeb\x0b%A\xd9\xd2\xdb\xc0\xf4\xf8\xb3\xc1-\xdf-A\x99\xe8\xc2\xc0\x10\xa6\xb0\xc1{l\x11Aj\xda\xeb\xc0i?\xab\xc1GF\tA\xdf\x16\xfd\xc0\x0e(\xba\xc1\x12y\x06A\xce\x7f\xe3\xc0g\xb5\xbf\xc1)-\x10AJJ\xd0\xc0\xb7\xa1\xc0\xc1\xe9\xfe\x00Ap\xf7\x05\xc1\xb7\x17\xbc\xc1}\xb2\xe9@\x8cu\x0e\xc1\xda\x8f\xcb\xc1\xb1c\xec@t\x13\xfd\xc0\x9c\xc8\xcf\xc14\xfa\x01Ae\x7f\xe7\xc0\x14\x01\xca\xc1\x81\x18\xcc@\xb7\x1b\xef\xc0\xd7\x99\xd1\xc1z*\xe7@\xda0\x0b\xc1(\xa6\xc1\xc1\x19M\x15Av\xf1\x13\xc1\x84\\\xba\xc17\xe3\x1aA\xe5`\x1b\xc1ah\xc4\xc1T\xa5#A\xdaR\n\xc1UY\xc6\xc1\xbaR\x13A\xbd\xb9!\xc1\x10\x17\xb7\xc1xe\xe7@\xef\xea\xc4\xc0\xd6\xfc\xaf\xc1\xe4z\xcd@R\xde\xce\xc0\xa0\x0c\xbc\xc1\xd5M\xe3@\xc98\x9e\xc0(~\xc0\xc1\xef\x13\xfc@YV\x92\xc0oV\xb9\xc1\x9f\x86\xc0@\xb6\xb3\x81\xc0\xfb\xea\xb0\xc1)\\\xc5@\x7f\x0c{\xc0\x7f:\xbd\xc1\xfcK\xc3@\xcd\xd0$\xc0\xd7\xce\xc2\xc1\x94T\xa8@I$\x19\xc0\x84\xf6\xc0\xc1P\x10\xe3@\x12* \xc0e\x97\xb4\xc1\xac<\xbf@M-\xbd\xbf\xba\xd9\xb7\xc1\xf5\xef\xc6@C\x9d\x07\xbf\xb5*\xae\xc1\x82\xfe\xd6@\xdf\xcb\xd0\xbf\x9b0\xb0\xc1\x84W\x93@n\xf9\xaa\xbf!\xe3\xb3\xc1\x15\xc3y@\xcc\x85\xc7\xbe\x97q\xa9\xc1\xf6\xff\x84@6:\x0c\xc0fv\xbb\xc1\xb8^\x94@9\x99\x97\xc0%W\xc3\xc1\xd8\xb3\x8d@\x15\x96\xad\xc0\xb2p\xb3\xc1\x0cbk@zk\x92\xc0\xe9\\\xae\xc1\x11\xc0~@\x80\x8du\xc0\x95\x9b\xb2\xc1\xb9\xec\x11@\xcb\x14\xa1\xc0\x97\xa7\xba\xc1\xf2\xb2\xf7?g\xea\xa5\xc0\x90I\xae\xc1;m\xce?]\x95\x8b\xc0\x10\x80\xae\xc1\xb7\xfa\x0f@\x95\x96\xd0\xc0m\xe6\xac\xc1R\xb5\x98?\xc6\xbe\xe3\xc0\x82M\xad\xc1\x8f\x08Y@\xb2\xd2\xe5\xc0\xb0\xd9\xad\xc1\xfc\x1a\x89@\xed\xa7\xd5\xc0\x85)\xa8\xc1\xcc%`@-k\x08\xc1,&\xa5\xc1\x1e\xa2\x1d@\xe0\xfb\x0c\xc1I\x17\xb0\xc1\xb4H\x82@\xc3\xe9\x19\xc1I\xc9\xab\xc1d\x9d\x82@)\xc7(\xc1E\x97\xb3\xc1Rf\xa0@b\x82\x12\xc1\xcfJ\xb9\xc1y\xdbE@\x05\x96\x1d\xc1,\xcf\xc0\xc1\r][@\x82\xfe&\xc1\xf6\xe6\xbb\xc1h\x123@\r\xcb\x0c\xc11\x93\xb5\xc1\xcf{\xf0?\xf9\x8c*\xc1:8\xad\xc1\xb9r\xcc?\xae7&\xc168\xb5\xc1I\xea\x06@\xcc\xd7;\xc1\xcc\x08\xbd\xc1\x85\xef+?x\xaa)\xc1\x0b\xce\xbb\xc1S{\xa6\xbd\x9b\xf55\xc1M\xa5\xc5\xc1\x14P\x81?\'\xf5)\xc1\xd83\xbb\xc1@\x14\xcd\xbb\x8cs\x15\xc1C\x7f\xb3\xc1\x00\n\xa1=\x12W\x0f\xc1\x07}\xbb\xc1q\x18\x8d\xbf^\x9f\x15\xc1\x00^\xc0\xc1m7\x84>\x8du\x08\xc1\x07D\x9e\xc1\xdd\x81\x8f@o\xd7\x07\xc1\xfd\\\x9d\xc1\x1b\x0e\xaa@\xcd\x99\xf5\xc0nf\x96\xc1*\xcd\x85@\xe1R\x16\xc1\xcb\x86\x97\xc1B\xfe\\@\xa5\xac \xc1\x89\xb6\x8c\xc1\'\xe9\x9d@\xa7\x90\x18\xc1\x05\xd3\x88\xc1Cs\x9e@\x92\x93\x08\xc1\xa4o\x85\xc1!\xe1\x83@;\xcb\'\xc1\xc3d\x88\xc1\x91\x93\x82@M\x148\xc1\x05#\x84\xc1\xc8JE@@S \xc1\xcd\xb2u\xc1\x1b\xa0\x98@)\xa5+\xc1\x12pe\xc1\xe4A\x92@\x82\xb4\x1f\xc1\x1c\x99s\xc1\xde\x10\xae@F\xa7<\xc1U\x8d\x8e\xc1fO\xcd@\xbcn\x1e\xc1\x1e\xb0\x96\xc1\xf4\xb6\xd9@\x03\xf8&\xc1\x12\xdf\x86\xc1\r\xf1\xe7@J\x8f\x19\xc1\xf2U\x80\xc1\xf7\xf7\xdc@}O\x12\xc1\xf38\x87\xc1\xc2D\nA=\xfd\x1d\xc1\xfd]\x8f\xc1\xab\t\rA\xc0\\\x1a\xc1\xffa~\xc1 \xc3\x14A\x0es\x0c\xc1\x8aBn\xc1LD\x0eA/\xc7\r\xc1v\xcd\x81\xc1|?\x11A\x05\xe9\xf6\xc0\x05@~\xc1\xec0-A\xafg\x10\xc1\x9f\xd6\x86\xc16\xc87Ak\xa6\x07\xc1\x7f\xfcq\xc1\xad\xcc6A\xf7\xe9\x1c\xc1\xeay\x85\xc1$t\x10A\xa6^5\xc1\r\x12\x8a\xc1"\xa6 A\xb6\xe7<\xc11Z~\xc1\xd6\xee\x03A\xae\xb5A\xc1\x1bux\xc1n\x04\xed@\xcc.<\xc1(ow\xc1\x17v\tA$GV\xc1k\x84{\xc1Yh\x19AI\x9cW\xc1\xcd\xca_\xc1\xa0"\x05A4\xcaW\xc1U\xacZ\xc1(\x94\xe9@\xb0\x81S\xc1\xe0\xa2V\xc1\x14\x84\x07A\xe5\no\xc1\xacKY\xc1\xc0\xed\x17A\x94\xe6u\xc1\xbb\x17]\xc1\xa8\x91\xf5@\xa7\xc5y\xc1\xa1\xffD\xc1\x9b\x83\x07A\x7f\xb9n\xc1usR\xc1\xca7\x13A>DG\xc1\xf9\'Z\xc1y\xc6\rAW\xad6\xc13*U\xc1\xc1X$A\x8c\'K\xc1O\xd5B\xc1`\x8b\rA\x1a@F\xc1*\x0c\x82\xc1o\x80\xfc@\xac\ng\xc1\xb4\x1f\x87\xc1r\x95\tA>\xd8s\xc1\x03!\x81\xc1lU\xd1@\xd4qh\xc1F\x0ez\xc1\xc0W\xc0@+\x03]\xc1\x97\xdc\x85\xc1\xe5\xb5\xb7@\xcf\xa1z\xc1\xe8\x98\x87\xc1s\xcb\xca@F4\x84\xc1\xed\xa6\x80\xc1\x00\x13\x90@\n;\x81\xc1\xc0\x7f\x86\xc1\x1c{|@\x17\xea\x85\xc1R\xf9|\xc1P\xb9l@\x83\xa7o\xc1\x9f\xc3s\xc1\xc2*:@\x94\x0bs\xc1YJl\xc1\x11\xef\x9b@J_\x87\xc1\x1a\xbda\xc1D\xeb\xaf@\x06\xd9\x81\xc15Vn\xc1\x19{\xae@\x80\xcb\x8e\xc1/\xd7d\xc1\xf6\x01}@\xf4A\x8a\xc1X{\x90\xc1\xbd\xc8\xa8@\xfd\xe0r\xc1\xa4?\x98\xc1z`\xa6@0\xbd\x7f\xc1\x8e\xe3\x90\xc1I\x0e\x9f@\tL^\xc1\x9e\x1c\x8a\xc1\xfe[\xa1@\xb3\xcbT\xc1\xa73\x9a\xc1\xed\xa9\x8b@\x03\xcaU\xc1\xbe\xd3\xa1\xc1L$\x96@\x8e\x87^\xc1]B\x9a\xc1\x9e\xbd\x94@\x1a:E\xc1\xcb\x92\x9a\xc1w_9@\xf7\x1fU\xc1\x8d\x1c\xa3\xc1|\x93\x16@\xce\xa9Q\xc1\xe9;\x91\xc1%\x9c\x12@\x19\x92S\xc1\n]\x8b\xc1P\x078@\xfe:T\xc1\xd6\xe1\x8f\xc1\x03"m?O\xd9N\xc1,x\x94\xc1\x89\xcd\x81>\xcf2Y\xc1q*\x84\xc16S\t?\xcb3R\xc1`\xd5\x83\xc1m.\xf7\xbe\xb53K\xc1\xc1b}\xc1\x7f\x07\x95?[%H\xc1\x8c\xad\x80\xc1\rs\xd5>2\xb4i\xc1G\xf2\x82\xc1\x0c9\xaa?"\x00s\xc1\x14\x12\x84\xc1\xc9\x02\x00\xbf\x8e\xd9p\xc1\x02Fh\xc1m\xc5\xf0>\xabgl\xc1N\x86^\xc1\xfbr\x0f\xbfY\xfbq\xc1\xf6\xcf_\xc1o\xc6\xcb?\n\rh\xc1\x86\xe8\x93\xc1cu\x18?p\x9f7\xc1G\x88\x95\xc1U\x99\xb7?\x00])\xc1p~\x94\xc1\x15*8\xbf\xb9\xfc1\xc1$.\x93\xc1mU\xc1\xbfR\x81:\xc1O\t\x99\xc1\xc7\x8b\x8f\xbft(\x1d\xc1W\xf9\x9f\xc1\xe8]\x08\xbf\xd5\x0f\x19\xc1\xa0\xe7\x9d\xc1S{!\xc0\xe6d \xc1\xf6\x82\x96\xc1\x96\xf0H\xc02P$\xc1\xdb8\xa3\xc1\x0b\xf5\x1e\xc0\xa5\x1e.\xc14\xd0\xa3\xc1\x0fPF\xc0b\xbe\x0e\xc1U\x82\xa0\xc1?\xe7E\xc0\x88`\xfe\xc0,j\xa4\xc1\xba\xc3\x84\xc0\x93:\x15\xc1\x86]\xae\xc1\x99\xdd\x1a\xc0\x8e\xfd\x0c\xc1~\x05\xb5\xc1\x97\xe7\x1d\xc0\xd6\x02\x1c\xc1\x9a\x85\xb0\xc1\x80b\xdd\xbf\xc7\x0c\xf9\xc0\x94\x80\x91\xc1\xd7\xf3\x8f\xbf\xd2\x92\t\xc1~\xce\x88\xc1\xea\x08\xe2\xbf{\x0e\t\xc1Y\x9f\x95\xc1D\xf4\x05\xbf\x04\x7f\xf1\xc08\x1a\x9e\xc1\xe5"]\xbe\xf5Z\xf1\xc0N\x88\x90\xc1\xd4\xb6\xe0\xbeZP\xc8\xc0\xd1/\x88\xc1d\xc2\x1a\xbf\x90\x8e\xcc\xc0T\x84\x90\xc1\xb1\xf6u?u\xe7\xb3\xc0\x0eC\x8c\xc1\xd3\x94n?D\xb4\x96\xc0\xbc+\x99\xc1\xb7`\x9d?8\x02\xad\xc0\x1c;\x8c\xc1\xeb\x92\t@Y\x82\xce\xc0\xf8\x02\x91\xc1\x1d\xcc\t@\x0b\xe1\xed\xc0\x8f\xd5\x8e\xc1\xdcC[@\xa9\x15\xb6\xc0\xe9?\x89\xc1\xe2\x81_@\xb5T\x9c\xc0\xd7&\x97\xc1\xae\x05\\@X\xbe\xa7\xc0`4\x8e\xc1C\x90\x88@\x1e}\xcb\xc0\x9c\xf0\x7f\xc13\xa8\x03@\x19\xa2\xd5\xc0\xfcq{\xc1\x07d\x85?hk\xe3\xc0\x1e(w\xc1\x18\xed\x00@\xd0\x07\xb7\xc0#\xe2x\xc19\x9a8@l\xf0\xe7\xc0\xa2\xc9\x94\xc1\x159\xb5\xbf\xe17\xa4\xc0\xa9#\x9e\xc1}H\xa4\xbf`\xa0\x95\xc0\xa9\x19\x8e\xc1\xbft\x17\xc0m\x99\x94\xc0\x95\xa5\x86\xc1\x12\x17!\xc0Cd\x9e\xc0\xc6\xbe\x91\xc1\xae\xecQ\xc0\x8c\x01f\xc0\xb4\xb9\x99\xc1\x05qK\xc0wZY\xc0&U\x8f\xc1c\xb0\x96\xc0\x8dl\x83\xc0\x89:\x93\xc1\x89M\xac\xc0\'\xddW\xc0\xc2\x0f\x84\xc1\xb9\xa6\x9f\xc0v\xc0\x86\xc0{\n\x82\xc1\xfc\xf2\xa9\xc0\x91\x8eS\xc0 \xe7\x94\xc1/\x9b\x9e\xc0I\xfa\xae\xc0\x1f\x83\x90\xc1y\x91\x8a\xc0@\r\xc7\xc0e\x7f\x9d\xc1\x9b\xd0\x97\xc0bK\xad\xc0\xfc\x0f\x94\xc1\x92\xfc\xc0\xc09f\xb7\xc0\xd5!\x8d\xc1\x9c\x16A\xc0\t\xa6\x11\xc0\xd49\x87\xc1\x94\xd3\x04\xc0\xd5y\x05\xc0\x84\xcb\x8e\xc1Q#w\xc0LF\xa3\xbf\x9a\xba\x93\xc1q4\x95\xc0\'\xaf\xaf\xbf\x18u\x87\xc1\x19\xa1\x80\xc0\xce\x1c,\xbe\xf4\x9c\x83\xc1E\xf9F\xc0\xce \xcd=Hc\x8c\xc1\xd4#\x8c\xc0NE\x94?\xfc\x9c\x86\xc1\xc5a\x94\xc0\xea\xca\xff?~\x07\x93\xc1\xa6\xc3\xb0\xc0\x1c\xbd\x8a?HC\x96\xc1(\xd3\xb4\xc0yC\xfa?\xc8V\x92\xc1\x15.K\xc0j\x18\xde?I\x91\x98\xc1\xd6>/\xc0c\x03@g\xec\x96\xc1\x86Sb\xc0\x92\x1f)@\x96\x9d}\xc1\xe7\xe0\xa2\xc0\xec\x8d\x15\xbfs\xda\x7f\xc1\x9c\t\xb7\xc0\xbd\xc2\xd0\xbf6\xf4k\xc1\x9e\xb8\xa6\xc0\xe3\x01I>p\xecj\xc1\x93k\x94\xc0\x98\xfe\x83?7\x1c\\\xc1\x02L\xc7\xc018\xd4\xbc{^b\xc1\xee\xed\xd8\xc0X-Y\xbf\xdc8F\xc1\x1c\x95\xb3\xc0\x82.~\xbe\xed\xc5?\xc1a\x9e\xa7\xc0\xed`.?\xefAI\xc1\xf1\xca\x93\xc0lUC\xbfM\xd96\xc1\xda\x0f\xd0\xc0E\x01\x8e\xbf!\xd5A\xc1\xf6h\xd8\xc0\xcb~\x04\xc0\x9e\xf14\xc14\xb0\xee\xc0\xed\xf7\x16\xbf0\x90!\xc1\xfd\x17\xba\xc0\xd0H\xbe\xbfW\x0e$\xc1\x00\x83\x9b\xc0s\r\x04\xc0R\xf6\x16\xc1J\xfb\xcd\xc0*\x83\n\xc0H\x88\x16\xc1\x82\xd1\xb5\xc0\x11\x99K\xbeI>\x1c\xc1\x9d\x9c\xc9\xc0:\x9b\x11? \x01\x0c\xc1VC\x92\xc0p\xb95>\xdf\xcc\x02\xc1\r\xe0n\xc0\xeb7/\xbf\xb8"\x03\xc1s|x\xc0\x1c\xd2\xde\xbfk\xf1\xee\xc0\x10>L\xc0\xd0h\x85\xbe\xd2\xb5\x08\xc1\x15\x82\x8f\xc0\x0b\xb9\xc0?\xda\x1a\x11\xc1\x1b\xb2o\xc0\xdb*\xfa?\xed\x86\x0e\xc1\xe0\x97\xa8\xc0\x1d \xfb?gNZ\xc1(\x88\xe6\xc0\x16\x02\x8b?\x0b\xe1^\xc1\xd4\xc7\xdd\xc0s\x8e\x0f@\x0e\xd1T\xc1\xf6_\x07\xc1\xed\x9eb?\xec\x9fO\xc1W\x8e\x0b\xc1kw\xcc<\x1d\xfbW\xc1\x16%\x17\xc1s\x1d\xf9?G\x89h\xc1\xf6e\x16\xc1\xc6Y\x12@\x87\xa7V\xc1\x94D,\xc1\x19\xe0\x90?_\xdec\xc1Z\t.\xc1\xd8D\x04?<\x03Y\xc1yf8\xc1\x1a\x18\xf8?\x9f&B\xc1ZL2\xc1\xf9\x04\xd0>U\xfe4\xc1\x16")\xc1j\xa9g?HUC\xc1\x80\x8e,\xc1\x03#\x1e\xbf\xbb*<\xc1y\xc1I\xc1?\x89\xe3>\xb0\xef;\xc1\xd8\x83N\xc1\xf1\xf7\xc5?+M+\xc1\xdc\xfaK\xc1SW,>\x94\x8bJ\xc1\xedIZ\xc1\x87\xd8\xa6\xbewlJ\xc1"rW\xc1\xf2N\xb8\xbf\xd8\xe2Z\xc1 \xe7V\xc1\x8a{"=\xb6\xb7B\xc1Eeo\xc1?h\xe6=Q\x0eH\xc1\xb0\x8c|\xc1\xb59\x03\xbf\xad\xf2E\xc1\xf3|u\xc1\x13\x8e\x86?\x87,1\xc1\x8c\xb1m\xc1j\xdc\xbb=\x03\x02I\xc1a6\x18\xc1\xb0}F@\x9edL\xc1\xb8\xf8#\xc1\x99\xca\x7f@cE8\xc1dt\x0b\xc1\x9aZK@v\xdb2\xc1R\xab\x02\xc1\xcd\x1e\x1a@\x1b\xf6*\xc1\xd4~\x07\xc1c\xa5\x8c@\x80z-\xc1\xb1\xbc\x13\xc1\x16|\xa1@\xc6\xe7\x12\xc1wJ\x06\xc1\x82\x88{@KQ\x0e\xc1\xbfS\x17\xc1\x87Pc@I\x18\x07\xc1]B\x02\xc1^\x1c\x96@\xae6\x0e\xc1\x83}\xef\xc0\xfdn1@\xff\x9e\x1c\xc1\xe0{\xe8\xc0\xfe;\xf7?\x05\xbe\xf7\xc0\xf6\x91\xdf\xc0 \x1e.@\xb1\xdf1\xc1\xecZ\xe6\xc0Da\xa1@\r\xac,\xc1\xc13\xdf\xc0\x1f\xf5\xc6@)\xac=\xc1\xbfC\xcc\xc0\xa5\xac\x8b@\x10XA\xc1%\x9f\xd1\xc0\x8d\xcfX@r\xabB\xc1\x08%\xa2\xc0=\xe7\x9c@K\x1e8\xc1\xfd\x14\x9d\xc0\xb5\xc8\xb7@/\x90A\xc1\xd5\x0f|\xc0\xd8$x@JFK\xc1\xb6\x99C\xc0\xbfL\x88@o\x99H\xc1\xcb\x15\x89\xc0\xc3\x0c>@\xd8`*\xc1\x17\x96i\xc0\xac\xc8b@1\xd9\x1b\xc1\xfa\xa5\x80\xc06\xf9\x88@)M\'\xc1K\xe79\xc0\xa5\x92$@\xe5\x0cX\xc1\x8e\x99\xa1\xc0cG\xb4@\xff\xb4f\xc1\xfbj\x8b\xc03\xc4\xa7@X\xd1Z\xc1\x81\xea\xb7\xc0\x88m\xd9@g8Q\xc1\x1cH\xd1\xc0:\x18\xde@\xacfm\xc1N\x9e\xb5\xc0\x93Q\xf6@\x1b\xcds\xc1\x06\xb2\x95\xc0\xe1S\xef@\xb8\xa2\x7f\xc1\xbf\xae\xd6\xc0a\xd3\xed@\xc4\xec\x82\xc1\x13T\xd2\xc0Fz\xcb@\xbck\x86\xc1\xfd\x9b\xcf\xc0w\x89\x01A\x15\x9fz\xc1\x8b\xdb\x03\xc1\xd0}\xf2@R\xb0\x84\xc1p\x1a\x0e\xc1\n\x87\xf1@\x81\xc5r\xc1\xd8@\x08\xc1\xf3p\x08AZ\xa3k\xc1\x93I\x0c\xc1\xa7\xa5\xd1@`^X\xc1\xa6\xb4\x0e\xc1\x8e\xb2\xd9@_\xa7s\xc1\xed\xed\x12\xc1\xb9\xb6\xac@\xf9Ri\xc1\xcf\xbc\x18\xc1v\x18\x97@WO\x81\xc1\x91\x06\x0f\xc1\xd6&\xa5@\xf9Bg\xc1\x9c\xc3\xbe\xc0^\xa0\x11A9\xbfW\xc1I\x8b\xd7\xc0G\xa6\x15Ak\xf6q\xc1Q\x9d\xa9\xc0\xa1\xb9 A\xaa\xb8{\xc1\x15\xa1\x92\xc0\x9b\xa0\x1cA[\xe5q\xc1\r\xcb\xaf\xc0\xffr7A\xcb\x07p\xc1\xfbW\x8e\xc0\xb3\x96=A\x90\x9b\x83\xc1\xab\x06\xbe\xc0%\xc7AA!Z\x83\xc1\x17\x84\xdc\xc0\xb5\xfdKA\x94\xe2\x89\xc1\xf6\xb2\xc0\xc0\xff\xb35A\xd9\x99\x87\xc1\x18\xe5\x9a\xc0\xfe_QA\x8ar\x8f\xc1S\xaf\xa7\xc0\xa2\x1eWA=\xc8\x88\xc1\xd4\x84v\xc0\x1c\x8fJA\xb3$\x81\xc1\xe0+\x98\xc0\xb8\x81eAS2\x81\xc1\xf8dk\xc0\xef\xfeoA\\\xe5w\xc1\x04a\xb7\xc0\xf1"kA6\xfd]\xc1L\x98\xc5\xc0\xeduAAg\xfeK\xc1\xdc3\xb8\xc0O\xce>Afz_\xc1\xc8W\xe9\xc0:$LA\x84Cm\xc1\x10\x03\xf7\xc0\xe5GMA\r\xdaM\xc1\xd8}\xfe\xc0zVXAX\xc1I\xc1\xa5\x86\xe6\xc0\x92 eA[\xbbV\xc1\x8e\xcd\x13\xc1\r\x19cA)\x86O\xc1\x95\xd4!\xc1\x8a\xe0\\A\x84\xeff\xc1\xfa+\x14\xc1\x7f\xd1\\A\x95\xafW\xc1\xbf\x94\x13\xc1\x93i{A\xe9\x1e]\xc1\xe6\xb6#\xc1T\xc9\x80A.\xabc\xc1\x13o\x08\xc1\xe8K\x81A\\CB\xc1I\xf3\x0f\xc1\x83S\x83A\x0418\xc1\x83\xb9 \xc1\xb8\x0c\x86A\xfc-;\xc1\x9b\x15\xfb\xc0sH\x84A\x87e:\xc1\x1fa\x05\xc1\x9d+KA\xad+(\xc1ba\x07\xc1\xa0\x8dSA?\xaa<\xc1~\x8c\x07\xc1+=5A\xd7\xd8J\xc1n\xb9\x05\xc1e\x10.AG\x00+\xc1(W\x0b\xc1\xbb\xff%A\x13\xc0!\xc1k\xe2\x17\xc1\x96e,AHg1\xc1\x81\xdb\x0f\xc1\xb0\'\x0fA\x1ei7\xc1\xcc7\x01\xc1\xc2%\x08A\x9e\rB\xc1\x083\x1f\xc1\x03\xa0\x10A\xd3\xd0J\xc1,\xbd\x19\xc1\xd2Q\x05A_\xb2 \xc1\x8a(\x1a\xc1N9\x00AH\x1b\x18\xc1Q\xbc(\xc1}J\x06A\xc8T\x14\xc1Bk\x0e\xc1u=\xf5@6\x05)\xc1wv\x1f\xc1\xc9p\xe4@\x90\xd2\x1b\xc1\xc1M\xf1\xc0\x9b\x9d$A\x83\x1b\x08\xc10\xbc\xf4\xc0\x9b\xcf A\xa8\xf2#\xc15s\xca\xc0\xa7\t*As\x9c3\xc1\x80\x1e\xc7\xc0l\x0c-A\xad\x01\x17\xc1\x84\xd2\xa3\xc0\xfb10A\xd7[\x0e\xc1C\xa7\x9e\xc0\xff\x04"A\x10"%\xc1x\x80|\xc0\x85\xf76A\x1bv/\xc1C+\x88\xc0\x89BEAf\xe8\x15\xc1\x9bS.\xc0\x87^}AB%\x02\xc1S[\xa9\xc0x1\x84A\xec\x88\x12\xc19\x0e\xd7\xc0,\xc5\x82A:\xa7 \xc1]*\x99\xc0\xd0\x13~AV\xb0-\xc1\x8e6\xa4\xc0\x084sA+\x0e\x1b\xc1?\xa6t\xc0\x08\x1fyA\n\x9d+\xc17\r\x98\xc0\xe3\x15\x8aArG\x1e\xc1\xc4\xce\x8a\xc0\x96\x9b\x8fA\xc6\x021\xc1.\xb6\xb8\xc08\xeb\x8cA\xc8\xc6>\xc1\xe59r\xc0\xf0\xad\x88A\x98\xe1;\xc1\xf5_2\xc0\x8f\xe6\x89A\xa8oR\xc1ne\x83\xc0HO\x85A\x13PW\xc1??\xac\xc0\x9b\xcd\x81A\x144M\xc1Z\xa0\xc1\xc0\x85X\x80AF\xb2d\xc1X*\xae\xc0S\x0f{A%\xb2a\xc1\x80\xc9K\xc0\x03p\x83Ah\xd4p\xc1\xe0\x0fX\xc0\x14\x08\x80A:Ja\xc1\xb5\xd6\x13\xc0\xee\xe4\x86A\x12/\xeb\xc0:p\xeb\xc0\x0e{hA;\xf5\xe5\xc0\xabI\xfe\xc0\x15myA\xb2\x10\xe0\xc0l\xff\xfb\xc0\xf5wUA\xecx\xea\xc0\xd6@\xec\xc0VXIA\x1c\xb0\xc3\xc0\xe6o\x0f\xc1\xebaPAW\xfc\xb4\xc0\x04\xae\x16\xc1\xa7%^A\x16l\xd9\xc0\x98\xd6"\xc1(TDA\x11\xce\xc1\xc0\x88\x08+\xc1\r&8A\x19\xa2\xf2\xc0\x1b\xd3\x1b\xc1#[:Ax\x8c\xea\xc0\xe1|5\xc1v\x92RA\x93\x1f\xd9\xc0\xb2\xc64\xc1FebA\x1c>\xe3\xc05\xacD\xc12\xdfJA\x8en\r\xc1\x1b^4\xc1TNUA2\xf0\x13\xc1\xd2nD\xc1\xcd\x92NA\xc6\x94\x14\xc1\x14Z\'\xc1C%LA*\xd2\x15\xc1\xcc"3\xc1s\xedlA\xd1\x83\x0c\xc1\x92\xf3<\xc1\xd3\x05yA+\x8d&\xc1z<8\xc1rPnAO\xc5\x14\xc1\x05M\x1d\xc1\xd8\xe7tAP\xba\x1f\xc1\x07\x9f\x1d\xc1\xdbI\x81A\xf6m\x1a\xc1\x90^\x12\xc1mYiA=\x08\x06\xc1\x91b\x18\xc18iyA4\x1b\x9f\xc0\x93\xcf\x06\xc1\x0b\x15DA\xe2\x07u\xc02Z\x07\xc1\xe0\xe5JA^\xcb\xa6\xc0\xdb5\xfc\xc0\xbc\x1e2A\x1f\xe7\xc6\xc0\xf9&\xfa\xc0\xf2\xd5.A\xdc\xd7\x8a\xc0\xe6\xc8\xe2\xc0\xb2\xbb$A\x19yf\xc0\x8b\xea\xf8\xc0_\x0f\x1fA\xd4a\xa3\xc0r\xe5\xd3\xc0[@\x11AQ\xf8\x8b\xc0\xe8~\xc3\xc0MS\x07A\xb1W\xbc\xc0^\xef\xbc\xc0\xfa\xf8\x14A\xbd\x17\xb8\xc0\xb7|\xf9\xc0\xa6=\x03AyN\xd2\xc0Y\xc2\x03\xc1N\x94\x0cA\xbeJ\x9f\xc0\xb4g\t\xc1\x0f\xf0\x01A\x8c \xc9\xc0S\x01\xe9\xc0\xd3\xeb\xda@`\x82\xd5\xc0\x85y\x02\xc1\xf6\x82\xc8@\x1d\x88\xae\xc0w\xdf\xd7\xc0@\x9e\xc9@.\xe6\xeb\xc0+\xdb\xca\xc0A\xa1\xe5@\xe3\x84\xfc\xc0\x14\xe3\xcf\xc0\xdd\xb4\xfe@\xe6)\xfc\xc06\x1d\xae\xc0\x9c\xe7\xc7@\xc1\x1b\xf0\xc0\x1d\xcc\xa7\xc0\xb3P\xa0@0\x98\xe4\xc0\x9e\xbf\xc2\xc0{\x86\x90@\xd9W\xfe\xc0\xae\x95\x92\xc0\x0e\xa2\x90@\xf8K\x10\xc1\xe3\xeb\x99\xc0\x19\xdc\xd2@\x90.\x16\xc1\xd5\x8b\x8a\xc0\x16\xcd\xb7@\x86\x89\x19\xc1\xc3\x92\xac\xc0\x8a\x9a\xe4@\xf67e\xc0\x11\x08\xbe\xc0\xe7\xc20A\x8c<\x1a\xc0\xfd\x84\xb9\xc0\xab\x98+A%\x89\x87\xc0\xb3 \xaa\xc0~+BA\x1e\xa5\xa7\xc0\xbb\x0e\xad\xc0>\xd8EA\x0f\x9a]\xc0cU\x8e\xc0\xf8\xe2PA}aD\xc0G`k\xc0\x03uFA\xd9p\x8a\xc0\xc6Rl\xc0\xdb9bA\x1eik\xc0kkB\xc0\xe7\xbflA\xac\xcd\x97\xc0\xfa\xca\x04\xc1\xd55>A\xd2%i?\xfb\r\x11\xc1\xba\xd1EA\xf09\xa3\xbe\xb6\xae\n\xc1\x13\xba(Ako\xf1>\xb4!\x0f\xc1\xb8\xb4\x1dAeub\xbf\x11\xd6\xf8\xc0}\xff"A\xc1!\xac\xbf\xb5K\x1e\xc1i\xcb+A\x1b\xc0\x02\xc0\xd4\xb0 \xc12\xd0\x1eA}\xc6\xf8\xbf?O\x1b\xc1\xab`:A(\x9a0\xbf1 5\xc18].A\x82\xff\xd5\xbe\xa9\x0e?\xc1o\xaa\x1dA\xe9\x18(\xbf=e?\xc1\xc6\xc6?A5\x1c\x9f?\xea\x1d\xe3\xc0Q\xd4:A\xee\xbe\x1b@\x03\x1c\xe8\xc0f3\xc5g4A*\xd1\n@,\x96\xdc?Z\x8a5A\x8b\xa4\xf0?\xef\xc7\x07@>\xa6BA\xb4\xa5\xb6>R\xa2\xa6\xbfv\x89EAf\xb1\xc4\xbe2-\xcb\xbf\xef\x12QA\xc7\xd7`?\xce\xa24\xbcW\xa0EA\xd4\xae5?Oj+?\xb4qRA\xe9\xbf\x04@q\xf6\x89\xc0r\xb3LAO\x05S@V\xf0\x86\xc0\xdcZIA\rC\xc1??\xe6\x85\xc0\xe7z`A^\x1b\x0b?\x9e\x9e\x82\xc0{\xf2aA\xde\x1d\x0b@\xb0\xacy\xc0JIuA\x83Y\x1d@\xb9V9\xc0^*vA\xe6\\\x9f?`{\x82\xc0\\Y\x85AD\x86\xec?\x0eun\xc0\x16j\x8cA\x13*z?rE\xa4\xc0\xf8\xee\x85AA\x10\xcb\xbe\xf9\x07\n\xc09b\x83A\x16\x05I>#>\xbf\xbf6\xf4~A\x9dl\xe7\xbd\xaan\\\xc0\xa3"\x86A\x8a\xd6\xd4\xbf\xdc\xdb\xf6\xbf/\n\x86A\x12\x87\x06\xc0\xd1It\xbf \xd8\x84AA\xdb\n\xc0h\xcd?\xc0\r\x84\x8aAL\xf3\x98\xbfH\xee~\xc00;\x8aA\xdaF\xaa\xbf\x1f\xc8\x9f\xc0"5\x8dA\xd5\x1d]@\xa7I\x99\xc0\xc7$yAP\x02\x8f@F.\x8a\xc0, \x81A\x03\x07[@\x96\x18\xc1\xc0Y\x99qA\xda7*@\x14\x1b\xcc\xc0\x80\x82iA3\x12\x90@Tc\xe0\xc0\xfe\xe8tA\xd0`\xa0@\x0cO\xd7\xc0\xf7S\x81A\xf7\xf6\x7f@\xeeV\x07\xc1\x0f\x02uA\xd1\xc1\x9c@q\x0c\x11\xc1\xd9\xb1pAY\x08Q@\xf9\xdb\x08\xc1X\xb7gA\xf0\xc2T@\t\x88\r\xc1\'f\x85A\xad\xe2\x1a@a\xf5\x04\xc1\x92\x9c\x84A\x94\x02x@\xf0k\x08\xc1]\xdf\x8cA\x1b\x8bE@B\x89%\xc1.\x11\x87A\xdf\xffx@i\xec/\xc1\xf4\xc1\x8bAH\xe8\xf4?q\xd0-\xc1\xeb\xf8\x82A\xb5\xad\xe3?\xf3\xc7=\xc1}w\x84A\xdb\x83\xa4?\xd8\xcf$\xc1\xea\xf4|A\x91u\xb2@fz\xdb\xc0E cA\x81\xbb\xd6@\xdfA\xd0\xc0\xc3BhA\x18_\xa9@\xb9J\xe3\xc0}dNA\x98&\x8b@\x05w\xea\xc0\x11\xbeKA\xdb\x9a\xc9@\x06\x91\xe8\xc0t!>A\x037\xe7@g:\xf5\xc0\x16\xabEAoV\xb9@Da\x05\xc1\xa8\xf8-A=e\xd3@\xff\xfd\x06\xc1\xb2a!A\x9a\xa5\x9b@b\x18\x01\xc1\xdc\x92%A\xfb\x8f\xb5@N\x06\x1c\xc1,25A\x17\xfe\xa8@Ls#\xc1,g\'A?t\x9c@\xd6\x86\x1c\xc1\x02\xd2?AE\xcc\xe3@u\xc2*\xc1\x00\xd3@Ayp\xc0@\xec7B\xc1\x01\x84DA\xce\xd0\xb3@\x116H\xc1\x81\xff4A^\xee\xa2@=m>\xc1\xb0INA_\xa8\xd1@}sP\xc1\x1b\xe0LA\x17\x18\xd3@\xbbI\xbf\xc0\x99p1A\xc0X\xf8@N\xa3\xb4\xc0\x89\xd5,A[Z\xb2@R\x15\xa7\xc0\xa81,A\xf0\xfc\x93@\xc98\xb2\xc0\xbd\xda.AT\xee\xb0@i\x1d\x84\xc0\xf5;\x1dA|\xb4\xca@\xba&\x89\xc0\xac\xef\x10AX\x9d\x89@\xf6\x99z\xc0\'\xab\x11A\x06Mc@\xa1\x11T\xc0\x0f\x8d\x1bAyFt@$~\xa5\xc0:\xce\nAa\x11\x93@\xc5\xd3\xb5\xc0C\xd1\x07A\xf3\x06\x8e@\xc7VB\xc0\xa9\xb4\xf9@\x0f/\xa3@\xd8\x9ec\xc0-\xdd\xe1@\xc6\xb6\x9a@\x99\x12\x00\xc0\x15\x0e\xff@6\xac[@j\xa7E\xc02?\xea@M\xa0\xbf@\xf2P6\xc0=\xe0\'A\xc0\xe0\xda@\xcf\xe2\r\xc0,"\x1eAe\xcf\xad@\xe4A \xc0S8;A\xbd\xd9\x98@3\xd7H\xc0\xaa\x9bAA\xe0\x91\xbc@\x155\xa4\xbf\x9c\x80FA\x0c\xb5\xb5@d\x06\xe4\xbe\xd6\xf0;A{;\xa7@\xb1?\x8c\xbfr\x8a\\A\xb6\xbb\xb0@68\xec\xbf<\x83gA\xfe\xb1\x84@\x82\xe6\x99\xbf\x0e\'\\A$C\xae@\xc3\xa4?\xbd(\xbf`A\x02k\xee@\xd37\x9b\xbf>\xddIA\xb0*\xfd@\x9a\x13\x04\xbe6\\GA\xe9\x80\x04A[]\x10\xc0|nMA\x93\xfd\xfb@tS]\xc0\x01\xc9XA\xcf,\xec@p\xee\x84\xc0\xe0\xc9LAQh\xe4@\x9a\xdbS\xc0?\x08eA\xbe\x94\x1bA^%\x07\xc0\x00\xd1NA\xad\x10 A\x92\x92\xbb\xbf\xcd\x11\\A(\xa8"A\x02Q`\xc0\xfesTA(\xf51A\x97\x93V\xc0ig\\A\xbf\xdd#A\xd2`\x81\xc0V\x87DA\xf9\xd5\x11A\xef\xf3\x85\xc0\xd0\xb8aA\xdcW\x10A\xe5B\xa9\xc0\xb9\xbe`A)\x1b\x13A\xf9by\xc09\xb9rA\xcc\xf9\'A\xb8;\xc6\xbf/\xc0A\xa0\xe8\xfb?\xa5tAAD02A\x02l\xad?\xa2\xa8FAmNSA\x97\xef\xe2?h\x90JA\x9e\xd0PA*Sg?\xe9\xd4TA6\xe5VA\xfb\xb1-@\xe0;SAh^eAB\xc5\xb7?\xf4\x1b;A\x18\xa6vAo\x89\xff?IR:A\x9e\xd5`AeD\xdb>\xde\'-A\nTSA7TN\xbd\x19f.A\xa5\xbfoA<\x99\xaf\xbd~\x90\x1dA\x84\x1b~A\xf5\xd6\xa6\xbeP\x9b&A\x84\xcdeA$/\xb2\xbf\x87G\x15A\x8d\x9bVA6\x8a\x9d\xbf\xad\x8b\rA\x7f\x1dcAg\x17\x07\xc07\xf0!AA\xe0sAT\x10\xff\xbf\x9by\x04A;!wA\xf2\xd2\xbc\xbfen\xdf@\x96\xf2nA\xbd\x0b*\xbf\xf2B\xd1@-:\x83A\xb3\xce\x01\xc0\x7fy\xc4@\xd2\x14\x84A\xa1\xbd\xcb\xbf\x90\x16\xa4@\xe8\x95\x88A\xa8\x87J\xc0\xd6\xee\xd0@\xf0\xec\x8fA=\x04m\xc0Y2\xb4@u\xfd\x90A\xf2 \x96\xc0\xa1^\xba@\x99&\x80AC\xdcG\xc0=\xb6\nA\x8e\xdf~Ar\xd8[\xc0\xd8\xd7\x1aA\x93o\x87A\xa7\xa6q\xc0\x98#\xfa@m{\x8cA{\xa1\x93\xc0j\x87\x01A\x8d\xdftA]\xac}?x5\rAzj\x83A\xf0\x84\xac?\x7f\xf4\x0bA\xa6\xedcA`\x8d\xc4?\xa6\xe1\x01AZNUA!\xe0\x94?\xe7S\x02A\xf3\xeeeA\xd0\x85!@\xb2\xbd\xe2@\n\xc4tAv\x1a\x12@\x87\xd6\xcf@nmQA%\xd1 @\xae\x1b\xc4@A\xa1QA\xd2\xbeY@\xaa\xe9\xaf@\x08*BA\x833\x1b@*h\xd8@X\xb4SAg\xba\xb1?\xb0=\xa3@\xa5\x03dA#q\xb9?\x8d%\x84@\xd3\xecnA\x0f\xaa\x10@\x07S\x87@\xf5peA\xb0J\x0c?i\x91D@\xfe\xddqAT\xfc>?BN\x18@[\x08WA\x1f\xb2\xe6\xbea\x00A@\xcc7WA\xceS\xab\xbfj\x9e\xfc?\xd6qeA\x06{\xb5\xbf\'\x02\xce?\xffxEA\x05\x82\xb6>\xa7\xfd\xa0@\xfcf8ATZ[>[\xb1\xb8@\xb3*FA+\xfd\x0c\xbf\xbe\x0c\x7f@%\x8d9A1\xba\x9e\xbf\xa6\x86\x80@a~jA@h{@2]\xf1@z\xfdoA\xc7\xbb\x99@\x93;\xd7@\x85aiAt\xa5\x87@\xd5\x07\x0eAp0bA\xc4\ng@\xc6n\x18A\xa4\xf1qAR\xfd\xae@\x10\x0c\x17A\xdd\x9bnA\xef\xed\xc9@\r\r\x0cA\xf2WA\xe7\x8d\xa2A\x95D\x92@\x13\xf4_A\x13\x03\x9fAkc\xaa@\x15\xe4VA\xfb1\xa7A\x10\xd2\xa7@+1hA\x862\x9cA(\xf4\x87@\x0e(iA\xf9"\x9bA\xfdb\x87@3\xae\x06A\xc9\xa2\xa3A\xf0\x98\x9b@\xe3d\x05A9\x11\x96A&]x@ho\xe9@\xeaF\x8fAR\xadS@\x94\t\xe7@Q\xbc\x99A\x10<\x84@\x94\x9d\xbe@\x91\xdf\xa0A\xf79g@\xdb\xe7\xb6@\xad\xef\x91A\x97\xcb\\@\xb4c\x9c@\x92-\x96A\x980`@\x13ly@\x19\xd9\x89A\xfc\xf6z@\xc8\xd6\x9a@\xcc2\x90A\xe9\xe0\xf5?\xba`\xa3@\xb5\xec\x87AHe\xdf?e\xa5\x9a@\x90\x08\x91A\x8b\xb5\xd6?h\xa6\xc4@V\xb2\x96An\xff\x85?\xbd\xc1\x85@\xca\xa6\x95AF]\x8f?\x9a\xfe8@\x03I\x9dA\xd9\x9e$>,m\x92@oC\x9aAs\x8c\xb3@\xf0\x1b\xb6@}\xdd\xa0A\xc3\xee\xc3@\xbd\x1b\x9e@\x0b\xd0\x92A\x10\xb1\xcb@\xbaI\xc9@?\x06\x8eA\xe3\xad\xbb@\xb5P\xdc@\xfb\x1b\x91A\xfd\x07\xfb@\x16\xbb\xc7@\xfa~\x93A\x08*\x01At\t\xa6@\x13\xe2\x85A\xfa\xcc\x04A\xf38\xd4@\x11\xf5\x83A\x81{\x00A\x8f/\xf6@M\xab~A\xadr\xfe@\x13W\xbd@\xff\xb5\x85A\x9f}\x16A\xfa\x15\xd1@Zg\x99Avu\tA\xe1\xdb\xe3@)G\x9eA*%\x18A[\x0b\xd4@\xc2e\x9bA\x95m\x02A\xde\x1c\x06AT\xdb\x96A\x8e0\xef@\x92j\x0eAz\xa4\xa4A@\x9f\x0bA!!\x12A\xd1n\xa2Am\xa4\x1cA\xc5\x83\x15A5L\xa6A\x89\xd8\x00A\tA\xb2\\\x05A\xdf\xca\xb5A\xfb\x8e\x16A``\x05A\xce#\xb0A\xac\xed\xec@0g\xf7@I\xe1\xa9Ah\xa6\xd8@\xebo\xf4@!\xa2\xb9AZ\x0b\xe3@\x87\xc4\xdc@\x8a\xe6\xc0A\xe6\xa6\xef@:\xb4\xed@\x1e\xc3\xbaA\xc2\x03\xb2@}8\xd4@\xc2\x16\xb4A\x8ck\xa4@>\xb4\xc0@\xb7L\xbbA\xb0\xc1\xa4@\x143\xf6@\xaa\xb2\xc2Ag\x0b\xa9@\xc8\xe2\xc3@z\x9b\xb9A\x84\xf1\xf5@\xb5q\xb1@\xc3t\xc1A\xe1\x19\xf4@\xd3f\x99@\x17\xd9\xb0A\x8a#\x07Ae\xf3\xa7@\xd3\xf3\xabAn\xb4\tA{\x96\xbe@\xf2\xea\xafA\x82[\x14A\xa5\xbd\x80@\x1b\xc2\xb7A!\t\x1dAK\xe6|@\n\xc3\xa8Ak\xd2\x1dA\xa3c\x85@\x0bI\xaeA\x90\xb2\x08AF\xf0.@\xb3S\xb1A\xf2\x1c\x10A\x8a\x80\xd5?\x99w\xa8A\xec\x02\xee@\xfd(/@\xb7\xb4\xa4A\xf2\x16\xe3@\x9e\xcea@V\xc9\xa6Aj\xae\xd0@\xae\x89\xd1?\xc6\xa2\xabA\x9e\x19\xdf@]-X?\x8f1\xabA\x10\x8a\xa1@\xb7\x95\xea?\xf2&\xaaA\xb5\x1b\x91@2GQ?\x0cn\xa6A}\xaa\x8f@x\r\'@\x84\x81\xb6APn\xa1@>\x08\x1a@\x9d\xa8\xb9A\xc7t}@q\xdd3@=\xdc\xbcA\xb8\x80\xc3@\x9e\xc5\x15@J\xe7\xc3A\xf2\x18\xc3@z\xd8/@\x0bC\xb9AJ\xb0\xde@\x01\xa7\x07@\x91H\x9bAW\xd8\xd0@\x13I\x92?~\x05\x99A\x0c\xf5\xc1@m\xf4{\xbc\xddN\x93A\xfc\xc8\xe3@\x84\xc8\xf1?\x83n\x95Ap\xab\xed@\xe4F/@=\xbf\x88Am]\xe7@?s\xaa?\xe2\xfd\x88A\xda\xe3\xe8@v\x00y>\xd0\xa6\x81A;\xea\xbe@=Y\xdc?\xd8\xb3\x86A\xee?\xa2@\x0e\x84\xc0?\xfaCqA\xb2\x8f\xbc@\x94\xb1d?n\xbewA\xa7\xa6\xb9@\xfb[\xd0\xbcv#|A\xb3n\xbc@H\xddN@0\xfcnA=\xd4\xd4@4\xa6^@\x0cL\x85A\xa3M\xbf@C\x89x@\x850tA\xab\xcf\x9c@\xbc\xfd]@Y|\x84A4\xe1\x07A\xe0D\xfc?\xbe\xa3\x88A/\x15\x11Aa\xd1<@\x0b\xdbvA\xc6e\x10A\xb5\xce\xb4?\xc7\xbenAu\xc0\tA\x8b\x05\x1c?\xbf\xb1kAF\xd6"A\xff\xd9\xec?x\xf1uA\xad\x11*A\x9d@\'@D\x04jA\x83\xb44A\xbc\x19>?\xe4OaAl\x83-A5\xd5\xba\xbd\xa4zyA\xd7\x986A\xe5y<>\x000`A\xf6iJA\x9dT\x87?_SkAH\xd5RA\x80\xd7\xe2?Y\xa4OA\xd5\x80GA7\x17\xbb?\xe22_As!XAU\xc8Z\xbe|9WA\x8d\xa5NA\xb1\x19\x89\xbf\x1a7oA\x14=]A|>\xf6\xbe\xd20OA\xeb\xd8kA\x9f\xa0<=\xc5jVA\xf6LxA\xd2\x14F?_\x1c@A\xaa\xc4eA*\xbb\xf8>\xa8\x12MA\x1b\x15xA\x8a4\x97\xbfM\xcdKA\xe6\xaenA\xda\x9e\x00\xc0)\xd9ZA\xd6\xfc\x80A/<\xa5\xbf\xa0/>A\xd0\x01\x80A[\xc1\x92\xbf\xf9;WA\xbb\xe2\x1bANX$@EzFAp`\x17A\xc44\xf8?z\xceXA\xefj\x17Au\x8fw@n\x89fA4\xfe\x17A\x9b\x9f\x8a@\x9a0FAV\x89\x10A\xb8J\x93@\x1fM=AO\xec\x04A\x92\xa1\x80@\xbc\x92MA\x0cq\x06A\x97B\xbd@4\xc7QA\xd86\x12A\xf3\xcd\xd5@\x0fb[A\x9c\xc7\xf8@h\xa2\xb9@.\x84=A&A\xf0@\x14\xe1\xd3@8$.A\xda\xb9\x01A,\xfc\xed@\xf8u.A\xfd\xbd\x12A\xb6\xba\xeb@\xf3\xd2\x1eAK\xcc\xeb@\x85\xe8\x02A\x8e\xc0\x11A9\x84\xfb@\xb4\xaf\nAwn\x1fA\x05A\xc0@Pa\x00A\x06n\x0eA\xf4\xd6\xa7@\xed\xd2\x07A\xb8\xf9\x05Agi\xbc@\xde\xce\x10A\x18j?A:\x83\xc3@N\xff\xd7@\xfb\xb7JA\xb8\x8b\xb2@\xf1b\xc6@\x18\xfa0A>>\xac@Hy\xf0@\xf8\x8a1AhB\x8a@\xef\xa9\xf2@\xfd\x9c8A\x9c\xef#A\'j\x9d@C\xfeAA~\x854A\x9a\xa7\xab@\x8f\xce#A\x97\x9a"A\x0e\xa2\x99@\xa2\x89\x1dA\x1f\xa3\x15A0F\x8e@\xd5p\x16Ap\xf03AD\x07\xa4@\xe1\x89\x1eA\xec\xaf?A\xbf\t\xb8@Z\xb4\x0fA\x0b\x03>A\xcfDp@\xfah\x08A_D2ASBB@vE\x1eAS\x99DA\x91IM@!\n\x05A\x1f\xdfKA\x8dd\x7f@\x88\xa2\x03A\x0c\xff)AW\x89\xbd@\xcd\xc3\xee@\xabi\x1cA&\xd0\xaf@\xb3v\x00A\xe6@\xef]%A0\x07AA2\xce\xe2@\x13\x1f\x0bAC@5A\xd7U\xad@\x05F\x13Aa-IA\xa8?\x9b@_x#A\x08gLA\x12g\xbc@p.\x0cA\xca\xe6WA\xa4v\x91@\xa74\x04A\x85\x0eAA\xaf!k@Y\xa6\x03A\xea\xe8HA\x0b\x1c\x9f@\xbb\xcb\xea@U\xc9=AQg\x84@y\xcc\x08AG\xcd2A\xf0\x19\xbb@2\xfcAA\xcf\xce\xf8@\x08\x92\xc8@\xd5hTA\x86h\xfe@\xcc\xe6\x93@\xa3,=A%\x85\xeb@N\x1d\x8b@9\xf8.AH\xb3\xe5@\xdaGj@\xa6\x13MA*\x02\xdd@H`~@b\xee[APG\xea@\x02\x0ce@\xae3PA\xf4\xf0\xaa@g\x8a8@L.]A\xb4\x00\xa8@1"\x9e@1yXA\x91\xee\x98@\x1e\x9b\xb7@l\x83JA\x14$\x97@\xc6\x90\xa8@\xd6\xa7fAY\x0b\xaa@\x99,\x9a@\x1b\xbd\\A\xab\xb9l@\xdf\x94>@\xfd|=A0Z\x91@\x81\xc2\xf6?\xcc\xe3:A&R\x9b@\xbf/e@\xf3)/A\x00S\x9a@\xdf\xb1>@\xac\xc4CA\xc0\x90a@\xfa\xef\x13@\x98\x19GA\xd2\xa0\xed@\xa6\x06\xfd?\xfdG5A\xb4\xb9\xf5@\x1c\xe6\xb9?\x01\xd2XAI\xe6\xf3@\xaf\xd8\xd8?q\xdceA)\xcd\xe6@7\xb7X=\xc6\xe2WA\x1c@\xfe@=\x9c\xb7\xbd\xdb\xc6PA\xf8}\x0eA\xe4e\xcb\xbeY\xb5nAq\xac\x01A\'\x0b\xff\xbe\xc7RwA\xb2R\xe3@\xdb\x95\xb0>\x05\x01yA\x9fp\nA\xa7\x02\xda\xbf\xb2\x0eqA\xceW\x0eA\x10\x13#\xc0H\xb8bA\x85|\x0cAp\xa5\xf1\xbf\x07"\x80Af\xb7\x1aA\xb8\xe3.\xbf\xf8(JAu>\xdd@=\x1b\xcb\xbeT\xebIA\xa5G\xb6@\r\xac\xda\xbf\x10v?A\xf4\xb9\xeb@\x1a\xcd\xfc\xbf\xa8\xea=A\xb7\xda\x05A*O*\xc0\xa5\xe04A\xd8\r\xcf@\xa1\xe5\x14\xc0\xf4\xcd$A\xc9M\xc8@\x9e\xc31\xc0~\xa7>AK\x15\xb2@\xb0\xb8\x82\xc0\x18\xa56A\xb5=\xe1@eR\xa0\xc0`b,A\x00k\xd1@\x86\xf0\x87\xc0\xcf\x9dBA\xe5\x93\x01A\xab/b\xc0\x84qLA1\xcc\x05Ab\xc5\xb0\xc0\x0b\xb3EAOg\rAx>\xbe\xc0\xa2d5A2\xfd\x0fAA\xe8\xaa\xc0\xee-OA\xdc\x13#AI\x10\xcd\xc0\xc1APA\xf8\xbc)A,\x05\x9a\xc0m\x92cA\xf2("A\xbd\xffy\xc0\xd8\x1adA\xd99\x1cA\xe0<\x8c\xc0\xd1\x94BA\xa8\xf20A\x88\x02P\xc0\xa3^EA\x1e\x7f-A+q\x90\xc0W#1AxL2A0\x01\x92\xc0\xce\xd1FA\x13\xfaAA3\x90\xd1\xc0L\x90RA\xd1\xde\x00A\xe45\xf6\xc0\xfc\x10MA\xc3D\xfc@ \xb2\xc1\xc0\x84\xc6cA5\xcc\xed@xy\xa5\xc0\xef\x90hAY?\xf6@\x08e\xd6\xc0p\xdepA\xfcl\xce@\xb4\xaa\xf0\xc0\xef\xc0yA\xc8\xc0\xdd@2c\xb1\xc0i\x88\x7fA\xab\xc9\xbe@\xb3\xd7\xbb\xc0\x8a\x18\x86AX\x83\xa7@U\xe2\x97\xc0\xa3&wA\x84\xf5\xae@\x83.\x96\xc0gf\x85Amq\xe2@\x90\xcc\x84\xc0\x89\xa4\x7fA\xd9\x1e\xf7@v\n\xa8\xc0;\x8c\x8aA\xd4\x99\xf9@#\x15n\xc0.\xb9\x8cA\x94\xe6\xca@;F\x8a\xc0R\xc8\x92A\xe5\x86\xb8@\xc4\\S\xc0\xfd0\x87A\x14\xb5\xb1@\x18\xa2-\xc0\xc0\xba\x93A\x9f\x97\xe4@@\r\x0c\xc0#\xd2\x8dA\xa0\x9a\xf9@\x0c\xa1I\xc0\xea\x1c\x9bA=\x1f\xf5@\xa6\xdf\xd0\xbf\xd4\xff\x96A\xb0\x1e\xc5@\xc5\xc4\xfa\xbf\xf8=\x9dA\xb1\xb9\xb0@n\x94\xad\xbf\x04\xd9\x90A\xaf\xe7\xb0@\xb6\xa78\xbf\xc2+\x99A\xa4\xd8\xce@\xab\x1e\xea\xc07_dA6\xbd\xa6@\x05\xcb\xdf\xc0V#RA\r&\x9f@&\x85\x02\xc1\xe1\xf7lA\xcbK\x8c@\xe6\x1e\x0b\xc1\xa2\x94\x81A\xff\xf2\x8f@\xa9=\xfa\xc0f\xbe\x87A>8\x91@\xcc\xc5\x12\xc1\xdd\xb9\x82A*J\xb1@\x9f\x81\x07\xc17KeA\xbehA@,\x9d\t\xc1>\x98SA\xe0.D@p\xb6\x1c\xc1\x0b\xf0pA}\xad-@Tg*\xc1\xf7\xb2hA\xa8\xf4M@\x10N \xc1\xc9XsA\xd5\xbf\xce?\xe6\x8b\x19\xc1\x03\x14\x84A\x06\xa1W@g\xab\x11\xc1\xcd\xec\x88A\xee\x8a$@\x9fz)\xc1\t\x8d\x87A\x1ajd@\xedN\xef\xc0\xfd,iAu\x16\xeb?\xc4,\xce\xc0\xa3\xb5sA\xcd\xbe\xf5?\x95\x1c\xf9\xc0A;_AE\x9b,?\xb4\x91\n\xc1l\nXA\xa8\xe01?\xa6\xd2\xde\xc0\xb8F\\A3\xce\x00\xbf\x8eh\xc4\xc0\x93]RA\xf2/{\xbe\xf9\x15\xf6\xc0\x90\xb5NA\x0ed\xc7\xbf\\\x8f\x0b\xc1\x06\xc5UAp\xd8\xe8\xbf\xb6\xbe\xde\xc0`\xecJA:\x1a6\xc0\xe4\x1c\xc0\xc0\x84\xd8CA\x1c\xb9(\xc04v\xd5\xc0\x99\tXA\xd4\x06_\xc0\xf8\xbe\xf1\xc0m\x0f?A\xee\x98e\xc0\x1e\xe8\x00\xc1\xbce8A\xce\x81l\xbf\x93\xda\r\xc1\x1e;8A\x133X\xbeW\xba\xe3\xc0\xeb\xb42A\xdfm\xc3\xbe\xb9\x8a\x04\xc1R\xd7+A\xb8\xa0\xd5\xbf6\xcb\xc9\xc0\xea\x8dpAE\xa7\x87\xbf\xeb\xe3\xa2\xc0\xe5\xf0pA\'\xf9\xa7\xbf=\x95\xde\xc0N\xe4\x81A\xb3\xb0\x96\xbfY\xc1\xfd\xc0K\xb8\x81A\x94\x05x\xbf\xb6\xe5\xcc\xc0\xff\x90\x8cA\xaf\xa7\xcb\xbfR\xf1\xc6\xc0\xc0\xdf\x8bA[\xc3)\xc0\xeeE\xf0\xc05~\x95A\x9eW\xb6\xbfID\xf4\xc0EM\x96A{\x98\x97\xbe\xda\x11\x07\xc1\r5\x92A\x9cY\xf0\xbfS\xa5\xea\xc0\xfd,\x9dA\x9b\xb3\x00\xc0\x1e\xb8\xa4\xc0\x1a\xe0\x8eAi\xaaH\xbf\xadK\x83\xc0\xcb\xea\x90Aq\'\xa4\xbfH\xe0\xa7\xc0F\x11\x8fA\x87\xa5\x10?\xb6\x0b\xbf\xc06\xeb\x8aA6\xcf\x8b?\xc3\xcc\x85\xc0Z\xbf\x92A\x8b\x04\xb7?\xfcoj\xc0.\xd1\x99A\x93\t\x84?\x88f\x98\xc0\xf6G\x97A\x80\xb1.@\xc9\xc4\x89\xc0 S\x92A\xd0\xe6c@d\x96\xba\xc0\xefW\x96AP~.@\xb7}\x8d\xc0\x1c_\xa3A\x8d\x9b<@x\xc3\x9c\xc0\xc4\n\xa6A?\xb7w@X\xa1\x9c\xc0\xdb\x0f\xa8A\x05\xb1\t@\x99d:\xc0.\x1b\xa6A!\xf9I@WM\x11\xc0}\x8f\xa8A\x86$\n@,\'\x1a\xc0\xaa\x82\xa5A\xda\xb3\x8a@\xd4\x07E\xc0\x1eH\x8bA\xe5\xa6\xcc?\xda\x96\xf4\xbf\x15\xe4\x8dA\xf2\x8b\xb8?r@W\xc0D\xdb\x80At\xc3\xe9?\xadJ\x8b\xc0\xfc\xb2~A\xe3\x16\x00@\xa6/\x15\xc0\x05\x02qA\xf0U\x00@g\xf5\xce\xbf\x9f:vA\x95\xaa.@\x01\x8b>\xc0;\xa7[A\xc2\x9f\r@uPi\xc0\n\xb1UA\x0bE\xad?\xcf\x94\xe8\xbf\x9f\x7fLA\xa8#"@g\xc1\xb3\xbfD\x89QA\xfdmZ@G\xc6t\xbf\x9e\xf6LA\xe1\x06\xe9?\xde\xce\r\xc0\x9eb;A\xe7k)@\xcf=v\xc0\xa5\xbe]AlN\\@\x85\x8f\x99\xc0L\xd0cA\x80GI@\x94\x85[\xc0+\x12iA\xcb\xe2\x85@\x82\xe3\x7f\xc0\xcd\xdcNAj\x00\x82@\xa3\x1d\xcb\xbfPVoA\x8d\xde*?\x7f\xe5\xbd\xbe\xd4\xbblA<\x94*?;\x03\x16\xc0\xef\xc2qAi\xfb\xf3\xbe\xf9TS\xc0\x08RvA\x86\xe1\xc0\xbe\xf0\xe5\xcc\xbf>\x1dtA\xfd\x14\xe6\xbf\xa1\xcfu\xbfU\xdcfA\xb1\xf7\xff\xbf,n%\xc0\xe7\x7fwA\\{<\xc0LeU\xc0l\xbf\x81A\x1b\x0c#\xc0\xa2\xc7G\xc0\x87\x1egA}\xdaF\xc0\xd5]\xf4\xbf\xd9U\x80Ab\x9e\x89\xc0\xc8\xd3\x80\xbf\x11\xdcxA5\x89\x95\xc0\xda\x88\xd3\xbfi*\x89A\x86\x96\x81\xc0)\x99;\xc0\x91\xd3\x80A\x0eq\xb1\xc0\x0fsm\xc0\xc9\xc3\x86A$_\xaa\xc0\xb5\xd8O\xc06rrA\x01^\xbb\xc08\x96\x02\xc0\xe0\x1d\x86A\xbb\x99\xd2\xc0\xc1;\x98\xbf0\xb9\x89A-\x99\xcb\xc0\xf2\xcd\xf2\xbfJ\x0b\x82A@\xef\xf8\xc0\xc1\x9c2\xc0\x18\x90wAd\xf4\x05\xc1\xb7\xaeg\xc0\r\x08wA@)\xfa\xc0\xef\x17&\xc0\x0eHoAO\x10\x14\xc1\x14\x81F\xbf\xf8]\x84A%\xdb\x06\xc1\xb6\x16*\xbfv\xf4}AJ\x90\x12\xc1oW\xc9\xbcS\x9d\x86Al\xe4\xfa\xc0\xd7\xdc\x12\xbf\xe8\x9c\x82A\x8bs\xda\xbfz#\x1f?L\xc6\x80AZ\xcb\x01\xc0EI\x85\xbfe\xe9\x8bA\xd15\xa5\xbf|l\x01\xc0\xc6\r\x8cAg\xfb\x81\xbf\xf3\xdc\x86\xbe=&\x95A\xd4\xd1\x88\xbf\xf4\xb3\x8c>\x03\xf6\x96A\x98x\xf9\xbfY\x94\x8b\xbfE\x01\x9fA\xa0\xa3Q\xbfw\x85\xee\xbf\xc3\xc9\x9eA\x18Q\x1a<\r\xb0\xcb\xbf\x89\xba\xa0AE\xed\xe4\xbfy\n\xa9\xbe\x85\xba\xa5A\xfcA"\xbf\x92\xa6^?Ls\x94AD\xf2\x98\xbc\x9b\x14\xf1?\x95\x15\x99A\xb0\xb1v\xbe\x16\xdb:?\x06{\x8eA\xf4\xad\x83?\x9aKN\xbeV2\x8cA\xc9;\xa4?\x01\x91\xe8?\xf3\x98\x8bA\xbd\xc8\xfd?\xd0i\x08@\xfdD\x93AS\xc2\x14@MY\xac?\x04\xc3\x85A\xfb\x0eP@;\xde\t@\x84P\x83A\xc6[\x80@\xf898\xec\x8cA\x88\xe9\x82@\xb2\xfb^?\xcd\x06\x96A~\xbd\x8d@/p1\xbfs\x0f\x89A\x86\x9b\x8b@r0=@}\xaa\x85At\xd0\xb1?7\x8f\x83@\xcaV\x87AW\x95\xdd?\xecI#@\x99\x93}A\x8a\x9d\xf1>jb\xc7?*]{A\tR\xd9>t)a@TOqAY\xc8\x84\xbek\x99\x8a@\xd5\x91lA\xf7\x0e\xb6>Di;@^^]A6XU\xbf\xef\xe5i@M\x18TAsd\xc1\xbfn\'\x02@/\x93bA\tR\xbb\xbf\xea\xd4\x1a@F\x15NA\xab@`>%\xff\xfd?i\x00VA\x18\xf8\x8f?Y$\xb1?\\\x19@AE\xcf\xce\xbe\x19\xa5\xe1?\xb2\x0e6AM9\x9f\xbf\xde\xa2\xf6>\xbd\xd8IA\xad\xf9,\xbfT\xc3\x8d?\x80\xcb5A\xd9W\xe0>\xac,c@\xbfd?Am\x1f5?b\x04\x88@\x01\x97GAH\xba\xb6?\x99F\x86@\xe1\xed9A\xd0"\x1f\xbe\xde\xf0H@\xdc\xe22A\x1e\xc1\xaa?f\xbf\x85@\xe9\x9f\x7fA\x1c\xfb\x9d\xbf\xab\n\xac@e\xf8\x7fAo\xe3\xb0\xbf\xbfd`@\x87\xcb\x85An\xe3\x06\xc0\xbcL @\xf0\x9a\x84A\xad\xf5\x13\xc0\x86(\x87@\xc4\x96\x8cA\x06ZH\xc0m\xc4\x98@>V\x87A\xb3\xaer\xc0I\xacL@\xf8\xb9\x91A\x9c\xf5\x82\xc0\x92\xfac@R\xba\x96A\xdc\x0e\x9b\xc0=\x0e"@\\q\x96A\xe9\x1d_\xc0\x1a\x91"@\xca\xd6\x88AU*\xa0\xc0-\xe4\x03@\xa9\xb8\x82AX.\x8f\xc0\x90dX@\xb7\x0c\x85A\xeb\xe0\xb0\xc0\xe5,\xe1?!\x07\x8eA\xdf\xe6\xc2\xc0\xa1\x82\x16?\xee6\x8bA\x05 \xc7\xc0(.\x19@J+\x94A\x83\xcc\xd9\xc0v5\xa7@})\x95A\x06\x10!\xc0\xa8[\xcb@\xc6$\x97A\xdb\x1d=\xc0N\xf4\x9d@\x99\x0c\x99A\x17\xab\xa3\xbf\x9ap\x81@"\x91\x97A\xb2\x8cf\xbfw\'\xb5@P)\xa0A\xcfb\xda\xbe\xfb\x9b\xbb@\xc9{\xa7A\x8f%\x83\xbf\x87\xe5\x9d@\xf1k\xa2A\xf4os?\xe0D\xb5@\xf7m\xa4Ao\xf5\xe1?\x130\x90@\x8d\x96\x9aA\xb0\x06\x9a?\x1e=q@\x84E\xaaA\xbb\x08\x81?4TD@K\xcb\xa8A\xf7\x8c\xf4=\x0eI\x83@\xaa\xda\xb2A\x99\xfan?\xea\x11<@m\xc6\xa9Ab=\x17@\xd0\xe7^@r\xac\xaeAR,D@h,A@\xaa\xda\xa1A\x1c\xea1@T:\xb9?\xdcv\xadA\x8c\xff!@\xad\x12\xa5A\x1a]&@t\x0c\xe1>\xf8\xde\xa0AR\\b@Wy\xfc>\xd9g\x9fA\xe2\xdb\xe8?D7\n\xbf\xdb\x80\xa8A\xe2B\x1f@\xe9C\xe2@\xf9\xe5\x9aA\'?t\xbd\r\x9e\x01A\xc8z\x9fAd\xee[>\xf9\xa2\xe0@4\xfe\x8fAf\xcf\x06\xbe4\xbc\xc3@\x18\x80\x8dA\xdf\xb8\xa9\xbeF\xfc\x02A7\xfd\x88AfH\x8f>\x16]\x10A\'\x94\x8dA\x9b\xb3\x1e?"\xa9\xf9@\xfa\x88\x81A\xa5\x1d\xb9?\xc8f\xde@\x9f\xefwA|W\x8b?C\xfc\rA\xa2\x1fsA\x9aF\xe0?\xd6E\x1eA\xed\xbfxA\xbb\x7f\xe0?\x05?\x0eA\xc7kgA\xbb\xf0\\?+\xd4\x0bAy\xa6iA\xdc_*@\xa5/\xec@,\x80\x88A\xb4\xc0-@\xb5x\xce@\x19\x04A\xfb7\x8eA\xa927@\xba\xc6\xe2@\xfaQ\x82A\xc8\x9e\x7f@\xf6\xf0\xfe@#\'{A\xaa9\x8b@Mv\xc3@|\x12zA8\x1du@\x9d\xee\xd7@\x97T\x88AuM\x98@@?\x0bA\xbd\x9b\x81A\x946c\xbf\xeex\x1fA\xee2\x80Ay\xf5u\xbfc9\xfd@\x95\xfdzA\x96*\xe9\xbfo\x13\xdd@)\xb3\x7fA2\xbc\xe1\xbf\x13\xde\x04Az;lA\xe3\xdb=\xc0\xf5\xce\x11A`=aA\x93\x9f%\xc0\x82\xea\xe0@\x8eBaA&tc\xc0]3\xe3@\xec\x1e^A\x13\xdb\x96\xc06\xb7\xc6@\x90\x08mA\x03\xe8[\xc00q\xd4@L\xbeKAH\xdb9\xc0\x91S\xd2@\x1c\x97NA=Q\xdf\xbf1V\xaa@\x89\x95CA\x05n^\xc0\x91\x99\xad@\xc1\xab@A\xb0|\x92\xc0Q\xef\x92@\xb7\xbdQA/PR\xc0\x0f,\xa4@\x1f03A\xae\xddH\xc0\xa4n\xfa@k\x10A*A\x0bT\x8d@c\x0b"\xc02\xa5\x0eA\xea\x80\xa5@\x8c\xc4d\xc0C\x8e\x01AC\xe3\x95@\xf0\\\x84\xc0\r\xba\x04Ao\xbe\xb7@M#\x0e\xc0\x8f*\x10A\xba\xaa\xbf@\x05 \xc0\xbfBy\xf5@\x92;\x9d@\xd8\x86\xf1\xbf>\xed\xf1@\x94+\xd1@7.\x1f\xc0c\xa4\x19AZ\'\xc8@\xf6q\x8d\xc0\xe4\xa9\x1eA\x98\xe5\xb7@\x15\x97\xaa\xc08C\'A+F\xd8@\xb0\xdbu\xc0(j\tA\xb4?\xeb@\xa1\xef\x9a\xc0\n\x9a\x07A\x90\xc3\xfe@\x1f\x97z\xc00*\xf2@{M\xde@\x84L\xa1\xc0\xd9\x1e\rA\x85s\xff@\xea\xc4\xb7\xc0VH\x13A\xe4U=@l\xa1\x1f\xc0\xe6>\nA\xbb\x8c\x04@i\x88B\xc0!\xab\x12A\x15\xf1;@\xba\xb5\x97\xbf\x81\x85\x1bA\x05\x06l@\xfc\x16C\xbf\x96\x9a\x04A`\xf0\t@\xf1\xb5\x8a\xbe\x83\xa0\xfc@\xdcq\xaf?\x1d\xe3U\xbfS\xaf\x0fA\xbb\xe2\xbb?\xdc\xc7`?RR\x15A\x12\xa5\x10@\xe7\xd6\xcc?\xf3\xba\xff@\xdbe\r?|\xa4\xd5?(\xa5\xf3@\xaeh\x9e\xbe\x143\x86?,\xba\xe1@\xb2V\x91?\xda\x06\x04@\x0b\xb8\x05A\x9f\x0c/=\xe0\xb9#@|\x1d$AQ8D?\xad\xe7\x97>?\x1c/A\xa1s\xcc?\xe5D\x94=J\x12!Azwr>Zd(\xbfA\xa2/A\x90\xa0\x97\xbd\xd4\x81\xb0?\xdc\xbd3A\x0c\xe8\x14?\x07@\x0f@S\x96=A\xd8\x87\xf2\xbe >J?\x06c%A\xa4\x1ai\xbf\x8a\x1d\xe0?\xa8\xc2\xe6@\x92\x13G@\xb8\x89\x19>\xa1C\xee@\x92m\x88@\xf8\xd4\x00?\x0eu\xbe@\xd8\xd8&@\x05V">U\xf6\xb8@\x149\xd6?}f\x16\xbev\xd2\x9a@\x0e\xd8I@\\@o?}M\xa6@\xc3\x85\x85@p\x1e\xa1?o\xba_@\x907B@\x19\xcd\x8c>\xc0\xec(@E\x9a[@\x1bvh?\x04\x9cO@\r\x9d\xf3?s\xe3j=\xca\xd4M@>\xb8v@NA\x81\xbf0\x04~@\x8a\xe4X@\x98\xe3\xe1\xbfM\xfa\xeb?\x0e\xc0k@\x9f\xcc\xce\xbf|\x93\xeb?$\xa9\x83@\xda\xb9\'\xc0]\x15\x8b?\x9f\xeb\x87@i&\x86\xbf\xb2\x99\xd8?\nt%@\x8f\x89\xc8\xbf\xe7\x0bd@\xc2\x0b\xac@=\xefK\xbf^\xff\x93@e\x97\xb2@\'M\x12\xbf\xe1VB@8\x06\xb8@\x92\xc3\x8b=\n\xa4F@\x14\x8e\xc0@\r\xe5\xd2\xbf1\n\x95@57\x18@\x178\x10@\xa5\xd2\x84@b\x98\xa3?\xa4\xd8\x11@V,\xa0@\xf9\xdf<@\xee\'Z@=\xa6\xae@\xcc\x16w@\xac,[@\\T\x98@$\xb3\x18@\x18K\x96@Kb\x96@\xce\xeb\xa3?\x89\x05\x94@0r\xb9@\x03\x844@\xfa\xa8\xb7@\xf8\xd5\xaf@\xda\x04r@6M\xc5@=\xad\xd7@\xc9\x1dB@\xc4\xcc\xa3@\xaa1\xc3@\x87\x92\xd5?|Y\xd9@M\x18\xa6@\xf4V\x8f?\x1f\x04\xe4@\x9b\x10\xdf@\x93J\x17?W\xd8\xc5@\xca\xd8\xf9@\xe4~\x81?\xaer\xb3@\xb9\x84\xcf@L\xf86=\x8a~\xab@\x7f\x1c\xea@\xa3\x9c\x14\xbe\xfe\x02\xdd@I\x9a\xdc@\xd1A\x16@A\x87\xff@\xa0\xe1\xc6@\xa4\xbaH@n\x8b\x06A\x8fp\xfa@\xe9\xe94@z\xef\xf3@p\xae\xe3@\xee\xb4\xc8?i\xfa\x0bA\xba\xbdU@\x19j6@qM\x9e@\x9c%\'@\x94gW@\x82)\x81@\x00\x863@:\x84*@E\x1e\xc5@\xcd|V@\xcb\xe8\x0e@\x84\x15\xdb@w\x90\xbf?iPL@\\c\xd1@cW\x94?\x0b\xb8{@\xea\xe8\xb9@\xfc\xce\xcd?g\x91f@\xdc-\xf0@Bx\xba>\x9a\x93\x0c@\xbe>\xd2@\x8b\xc6\x04? \xd1\x8e?\n\x0c\xc0@\xc2\x84E\xbfh\xc1"@@\xa8\xe5@\xcc3k\xbf\xc0\xc1]@o\x18\xf3@\xfc\xe8\xe7\xbf\xb7s\xcb?1#\xee@0\xb7\xba\xbf\xae\x94\x07?`\x96\xea@\xb3\xa6\x14\xc0\xfc\xaa\xfb?~\xf8\rA+\xaf)\xc0n#C@\xe8+\x10AW\x05\xb8\xbf)\x1e\xf2?\xfc\x10\x19A\x18/@\xc0\xb2\x9e\xa0?1\xb0\x15A\xdd\xda8\xc0\x99\xe0\xce?\xfd\xd8\xc9@~6=\xc0\x0f\x99"@\x90\x92\xad@\x1c^o\xc0\x81\x0f\r?\x10\x9c\xc5@-`v\xc0}\t\x0e\xbf\xab\x1e\xe4@\xddS|\xc0"G{\xbe\xd2\x1d\x03A\xaa\'7\xc0a\xeb\x89\xbf\x92T\xe7@p\xb2\x90\xc0\x8frk>\xde\xc3\x9e@P+\x7f\xc0|\xee\xa6>\x0c\xb0\x82@\xfe\x8d\x9c\xc05\xc9\x9a\xbfZ4\xa4@hy\x81\xc0d\xdd\xe3\xbf\x01\x1b\x97@\xe6\x1b\xbb\xc0_\x18\xc1\xbf\x97\xa7\x95@\'\xf6\x9e\xc0\xc1\x80\xb9\xbf\x1e)\xd4@7)\xbd\xc0\x13\xfa\x94\xbfXB\xe1@?\x12\x98\xc0\xe0Q \xc0!\x94\xdd@\x1a\x04\xba\xc0o\xbc\x8b?\xf5\xa8\x99@{\xd9\xd8\xc05\xd5C?WL\x81@\xe9R\xb8\xc0[|\r@\x195\xb0@\n\x8f\x9e\xc0\xd8\xad\x11@)C\xc2@\xb7t\xd6\xc0o\xbfW@_\xd2\xab@NU\xee\xc0pJO@\x0f\x1c\xc5@O\xf3\xe3\xc03\xb3R@%\xa2\x8c@\xed\xdd\xc5\xc0\xc2j\x99@\x14\xd0\xaa@]\x8a\xdc\xc0\x10[\xb9@$\xc7\xb0@x`\x9b\xc0\x9d\xb2\x9d@\xac0\xa4@\xcd^\x87\xc0\xd9\xf0\x84@"\xc2\x9c@W\xe6\x87\xc0\x02 \xc8@8\x82\xa1@t\x0b\x9a\xc0a\xb7\xe1@;\xf3\xb0@\x07\xfe9\xc0\x07\xc0\xc8@\x04\xaf\xb7@-3\x0e\xc0\x0c\xdf\xb4@\xe0U\xa2@Z\xfeF\xc0\xe0\x1d\xbb@\xb1O\xd8@\xe2\n\x1f\xc0\x01K\xe9@\xc0!\xbe@q\xd2\x85\xc0\xeb\x8e\xd4@g\x1ae@\x10\xde\x9b\xc0,4\xc5@\x82j+@\xcevV\xc0\xee\x87\xf3@?\xa6L@\xea\xbc,\xc0\xc5\xf8\xff@\x80:w@+\x15T\xc0u\xd6\x00AE\xc6\xdf?\xb2\xaa1\xc0\x80\xdb\x0fAz\x95\xd8?\x12B\x8b\xc0J\xfb\x02A_\x89\xc4?\xee !\xc0\xea:\xe1@s$^?\x8bN\xaa\xbf5,\xe8@D$\x1c?4\x0cD\xc0\xae\xbb\xba@"\xb4\xe0>\xa9\xdf}\xc0\x82\x8a\xb3@\xc3\xa24?\x0f\xa6\x10\xc0\xfd\x1c\x9c@4\t\xa6\xbe\x17\n\x9b\xbf,\xfc\xa3@A\x03\x8b\xbe$\xc8\x18\xc0V\xde`@\xa68\xac>\x8b\xf1\x02\xc0\x01\xbe/@\xb2\xde\xdd\xbe1\xb8W\xc0\x1a\xc4U@\xca?1?\xef\xa3\xaf\xbf\xdc\xd1T@\xaaU\xb5?HJ\xa8\xbf\xa19\x85@\xaf}\n@V\x8c\xe7\xbe\xc6<]@*\xe6m?\xdf\x1d\xba\xbf\xcc\xbd\x01@h.\x0b@\xac\x05\xb5\xbf\xf8\xe6\x97?\xd9\x91\xbe?\xc0C\x13\xc07\xc9\x01@\x7f\x963@$\xd9q\xbeS\xd1\xe3?\x1e\xe5F@\xdf\x92\x14\xbe\x00\x03e?\x98\xdbp@\x10\xbb0\xbdI\xab+@\x96eq@\xac\xb2p?\xaa\xb5\xec?\xa98\x0f@X"\xe2?\x7f|\xfc?\xad\xe66@\x9e\x1eW?yS"@\xed\xbf\xb9?:@\x8f?\x125r?"\xa9\xd9?\xa2k0\xc0+6\x9b@\xdc\xb0\xe1\xbf=_\x0b\xc0\xa1\xe8\xae@\x97\x16,\xc0.\xd0r\xc0L\x19\x83@\x9f)\x02\xc0/j\x86\xc0\xe1-b@\xe6_\xa3\xbf\'\xb9\x8a\xc0\xfb\xbc}@\xe8fZ\xc0F.\xa4\xc0\x9a\xa9P@\x0f\x9c^\xc0\x10>Z\xc0_\x10i@\x8d\xbf\x7f\xc0y\xfe\x98\xc0\xf4\x1e\xa5@xV\x83\xc0u\xf6\x9d\xc0[\xdd\xa9@y.\xac\xc0[\\\xa4\xc0\x0e\xd4\xc6@\xa9\xa5V\xc0\xff\xa5\xa8\xc0\xfc\x17\xc6@\xcb\x9c\x19\xc0_\x97\xae\xc0\xbaw\xf0@\xb9=z\xc0\x19x\xc1\xc0\xb9D\xed@I\xe7\x99\xc0`q\xc1\xc0\xabY\x07A\xa3V0\xc0\x16+\xbe\xc0\x86(\x19A\x0e2>\xc0`\xa5\xaf\xc0\xbc\x93\x03AY\xc9\xbb\xbf\xaf\xbf\xa5\xc0\xfb\x8f\x11A\xc2F\xa2\xbf\xfb\xd9\xf2\xc0\xbcu\x03A$\xe1#\xc0\xaew\xf2\xc0\x03Q\xe3@\x8e\x9a\x1e\xc0\xe6\x83\x04\xc1\xe6;\x07A\xb5\xdc[\xc0\xd1L\x00\xc1\x91\x13\x0bAj\x8a\xce\xbf\xff\xbd\x85\xc0\x93\xb2\x02A\xd0\xb6\x8b\xc0_\xb8\x86\xc0\x98\xd9\rA\xe5q\xac\xc0f\xa5C\xc0\xa6{\x01A\xd1\xbbc\xc0\xfa0C\xc04\x94\xef@\xf6i5\xc0\xa2\xe1\xe5\xbf\xc6/\rA?\x91q\xc0gt\xfb\xbfvh\x1dA\x06\x0f\x86\xc0\xb9\x9c\x80\xbf\xdas\x0fA&\x9f\x1d\xc0o\xaf\xac\xbd\xe7\x00\x18A\xae_*\xc0\x7f\x87P\xbf\xa4\xdc\xff@5 \x04\xc0"\xa0\xde\xbf\x0e\x17\x1cA!\xbd\xa7\xbf\xdd\x9b\x8a\xbf\xc6\xdd!A\xe0]\xf0\xbe\xfb\xb8\x1c\xc0L\x14\x12A4\xe06\xbf\xa8\xb8*\xc0\xf2=.A\xf5\x82\xdf\xbf\x93\xc2x\xc0\xfa\xbd+A{s\xec\xbf\xa0\x89\t\xc0I\xcbAA{\x1c\xfe\xbfW?7\xc0qVKA\xdf\x00\x13\xc0\xeen\x9d\xbfa\x92EAP\x02\xe0\xbf\xbe\xb0{\xbf{Z\x04A8\x00\x9c\xc0i^\x1a\xbf\x9d\xb5\x10A\xa1j\xb8\xc0\x0e\xd3Z\xbfh\x02\xdd@\x04P\x9e\xc0\xec\x06\xaf\xbfmJ\xcc@\x9aL\x88\xc0\x82[H\xbe\x86k\xc6@\'\xca\xc0\xc0o\xa6[?\x18\xa3\xcc@\x0c=\xc2\xc0\x93o\n\xbf{n\x97@\x05{\xba\xc0CS\xc3\xbf\x99p\x8c@C\xe3\xc7\xc0V#\x10\xbf\xdd\xce\x8d@\x1e*\x97\xc0\x07\x9f\x8a>\xa4V\x84@\xe0F\xca\xc0BY+\xbf\xe8\xcf\xd3@:\xb9\xee\xc0\xff\xa37>?/\xd2@r\xca\x05\xc1eo\xf5\xbf\x0e\x91\xe3@x\x82\xf3\xc0%\xd9#\xc0=I\xe9@\xa0\xbb\xdc\xc0QE\x0e\xc0\xa3B\xfb@>\xaf\r\xc1\x03<\x07\xc0\x9b\xa6\xe4@\x0bA\x1a\xc1\xf4\x96g\xc0n^\x05A\xf4\x89\x0e\xc1\x14Ht\xc0\x02\x01\x0fA\x0f\x9b\x1d\xc1\x1f\x86k\xc0\xa6\xff\x0fA\xb76\x01\xc1\x11\xb1\x93\xc0\x9bE\xe6@\xea\x11\t\xc1\xbe\xf4\x89\xc0j\x95\xd5@Xg\xf3\xc0\xbbZ\x92\xc0T\xb1\xcc@yQ\x16\xc1\x89H\xc2\xc0\x11\xce\xf6@2\xfc\x05\xc1\x15Q\xe1\xc0\xe3\x98\xe7@r\x03\x11\xc1\xea\xfe\xc8\xc0C\xd5\nAc\xe6\xed\xc0\x1e\\\xe7\xc0\xff\x01\x0fA\x11o\xeb\xc0^\xbb\xaf\xc0\xa4\x11\x0fAUz\xda\xc0\\\xe2\xa0\xbfZ\xad\x0fA\xaf\xb6\x14\xc1T\xbd4\xbf!\x07\x10AY\xb7&\xc1\x0b\x99\x88\xbf\'\xbd Ao\'\x07\xc1[1\xac\xbfur\x1eAwA\xf0\xc0\xb43\x02\xbe\xb9v1A\x10\xb6\r\xc1f\\\xfe\xbe\x02\xad4A\xa0\x97\x1e\xc1\xc2\xab\x9e\xbe\xd2uFA6\x91\x02\xc1\x81Y\xae\xbf?\xd3JA\xbc*\xfd\xc0\xb2/\xc3\xbcfDTAH\xb0\x0c\xc1\x80\xee\xd4>\xc7.GA\xc2Z\xda\xc0\x8e\xa9\xe0?d PA%\x0b\xda\xc0\xb5\x89\n@\x7f\xbaSA\xd1\xa4\xfa\xc0\xe0\xdc @\x88~PAj^\xb5\xc0~\xbaa@8\x15XA\xe3\\\xb5\xc0\x1c\x90\xff?\x8b\x1fHA\xa2\xcb\x8f\xc0,\xd4,@\xb4\xa3GA\xfc\x94j\xc0\x9a\xc75\xbe\x19\xe6@A\x95!\xb5\xc0p\x95\x95\xbfa\x0f\xba\xee:A4Lc\xc0\x19\x02\xb4?\r\x93*A\x88\x17\x0f\xc1ec\x0e@\x12P4A\x02\x17\x1b\xc1^M\xe1?T\xa9\x1aA\xceF\x02\xc1x,\x90?\x87^\x15A\x14\xe6\xec\xc0\xb8\x8cG@\xd0\xab\x12A;s\x01\xc1\x07\xcet@\xbap A\xfe\xb7\x00\xc1\xf4\xa7R@3i\x04Af\xa8\xdb\xc0M/\x1d@Qo\xf0@.*\xdd\xc0\xf3\xb4\x93@Y\x07\xf0@\x18\xf8\xd8\xc0X\x18\xae@\xce\x98\x03A\x083\xd8\xc0\xb4\x7f\x95@K9\xdc@\xf7\xb0\xf5\xc0#j\x93@\xf0;\xd8@\xb1\xd5\xbd\xc09\x84G@\x10Y\x13A\xd7\xcf\xb3\xc0\xea\x80\x13@\x99\xf3\x1fA-\x97\xb8\xc0\xe3\x86\x82@=&\x1bA\t.\xa9\xc0\\\xd3\'@>P\x06A6o\x8d\xc0ph&@eh\x11AWZa\xc0\xe7\xbbM@`!\xee@X\xb6\x88\xc0\n\xc4\xcb?\xba\x9b\x01A4=\x92\xc0f\xee[@\x9c>\x06A\x9a\x8e\x15\xc16\x89\x8f@k\r\x08A\xa2\xbc\x1f\xc1\x08\x81\x1b@\x1a\x18\xf8@uj\x1f\xc1\x85\x04\xc0?\x19\xe2\xf2@\xb9\x97\x17\xc1b.\x1d@\x19\x08\xe8@^\xe24\xc15\x0fT@\xaf\xd4\xd4@\xad78\xc1\x12\t\x9e?\xad\x83\xcb@8\xb58\xc1^n\x88>\xb7h\xdb@\xbfn:\xc1\xc4\x87\x9d?\x1d-\xb9@\x06\xa4)\xc1k\xe7\xbe?\x1c\xde\xad@ahL\xc1\xde\xd8$@Eg\xa5@\n\xd7M\xc16\xf5\x92?\xbc\xa5\xba@\x98\x1c[\xc1\x87\x8c\n?\xdf\xf7w@\x82QG\xc1\xfap\x8b\xbf\x9a9\x90@\xa0\xb3M\xc1e\xcf\xa1\xbf\x0c\x17\x89@k\x85_\xc1\x0bX\xa2\xbf"?\xb2@Z\x04N\xc1^\xf0\xf7\xbf\xd7\x15}@L\xd0E\xc1\xe0\xd4 @b\x12\x04AD\xd0G\xc1\xa7xX@\xf1b\x03AE\xa7U\xc1\xc2F\xd2??\xaf\x14A\x14vF\xc1\xb6\xd6}?\xf8.\x12A\xce\x1d;\xc1\xa5\x02\xcb?\xaf,)A\x1fmR\xc1\xa3\xff\xa7?\xdee%AHOc\xc1\x12\xff\xf7>4\r7A\xb6*G\xc1?\xdcS?6d7Aj\x906\xc1\x8e\xcc\xe6\xbe\xd1Y-A\x80\xe9E\xc1U\xea\x81>?)NA\xc4\x17Q\xc1\r\x0f\x13\xbf\x02\xc8OA\xb3\x12]\xc1j\xa4\x90?\xc7QTAA9Y\xc1\x94\xb58\xbe\xaeQ^Af\xd7?\xc1@\xd9\xa0\xbf"\xb0]A\xda\xd05\xc18\xd4)?"\xc0lAK\xf2;\xc1 E6@^\x8f5A\xad\x0eT\xc1.\x91U@\xac\xff7A~Tf\xc1\xd2\x88\\@\xb6\xecJ\x9dB\xc1\xc9J\x8a@\xc5/\x0b?b\xe0R\xc1\xc5e|@\xde\x92\x1a\xbf\xe6\x7f>\xc1\x04\xd2\xc1@\x05\xaa\xbd=\xf6LB\xc1\x93C\xcb@\x9c\xd5\xb3\xbe\xa7\xbf2\xc1\xd9\x01\xcc@\xf7[%\xbf\x7f\x9dM\xc16_\x8a@s\xce\xa5?\xd9`\x1d\xc1\x9b2\xad@\xccb\xbb?\xb0\xe4\x13\xc1\xcb\x14G@\xfd@q?\x1c\xbb\x15\xc1\x05\xbb\x19@\x1dre?j\xf0\x1f\xc1\x0c\xfc8@\x89\x16\xf7>uR\x00\xc1%\x84r@\xf4\x9e\'?\x86\xc8\xec\xc0\x02\xe2\xc4?\xe9\xef\x81?\x07\xe8\xe9\xc0`$5?Up\x1d??\x07\xfc\xc0\x82V\xc1?\x1e\xf8\t@`|\xf0\xc0Y2\xa8?\x07\xb1\x19?\xf6\xd4\xb8\xc0n\xfc\x07@\xc4\x02\x8e?6\x92\xa2\xc0qL\x99?c\xd4\x05\xbfw\xfe\xb6\xc0\xd3\xb7\x84\xbc\xef\x0c\x97?\xb1\xf2\xa8\xc0\x13\x8d\x83\xbfX\x13\xa6?K\x8d\xbf\xc09G\x05\xbe\xbeK\xb5?\x01\xec|\xc0\xa7\xc0\x82\xbf9n\x9f?\xec\xc7c\xc0\x0cj\x1c?\xda?\xd2?8\xa1Z\xc0\xe5\x819@E\x9d\x85\xbf\x00\xff\x00\xc1\x9d)\x1c@\'W\xda\xbf\x1f@\x10\xc1\x95\x11_@\x9c\x01\xca\xbf\xa3r\xdf\xc0K=\x82@\xd7\xed\x88\xbfK\xcc\xc9\xc0,\xbdY@T\xa4>\xc0\xdc\xca\xd2\xc0+\xbb2@\x93\xfba\xc0\x14\xf8\xe9\xc0\x05\xe7\x93@\xc8\x86x\xc0\x06\xf3\xd5\xc0\x19\x83\xab@\r\xa7k\xc07.\xbe\xc0\x1e\xf9\x86@\x0c\x1a\xab\xc0\x12\x13\xd6\xc0\xa7l\xa5@B\x0f\xbd\xc0\x15\x85\xd0\xc0\x81\x18r@\x97\xe4\xb6\xc0\xf0\x1c\xf4\xc0;\x1bh@\x8b\xce\xb4\xc0\xd4\xe2\xba\xc0\xed,\xaa@\xeeBb\xc0\xc4\x1e\x00\xc1\x0c\xe3\xaf@\xd5\x8a\x1a\xc0\x9c\x06\x01\xc16\xbb\x92@\x87\xa0r\xc0]\x97\r\xc1\xba"\xd6@j\xfd\x87\xc0\xa4\xb2\x01\xc1\x1cb\xe5@?\xdaz\xc0\xcc\xfb\x11\xc1\x12\x12\xd5@\xd0\x91\xaa\xc0z%\xff\xc0z\xed\xea@3Yx\xc0\xbf\xa9\xea\xc0,~4@\xd9\x16J\xc0\x0f\x05\xa6\xc0\x83l`@$]A\xc0\xf2O\x86\xc06\xf4\xc8?\xab\x9cf\xc0\xdc\x15\xa5\xc0\xd4\xa3\x82?\xd5>m\xc0\xc7h\xbf\xc0\xea\xd8^?B\x1au\xc0\x98\xdex\xc0\xac+\xba?\x19\x00V\xc0\xbe\xdfA\xc0\x94a\x1d\xbf\xdf\xb8V\xc0\'\ty\xc0\xd4\x90\x9c\xbf:\x17|\xc0}C\x93\xc0\xe9=\x15\xbf\xf9\x05\x11\xc0s\xf7\x86\xc0:\xa5\x8b\xbf[\xf5]\xc0-\x8a"\xc07\x85\xf7\xbf,\xe8>\xc0\x04\x98\x1b\xc0\xd8Rl?]\x86\xaa\xc0\xc9"b\xc0g\xc1\x96=\x95%\xc5\xc0\xbb\x95z\xc0C=\xf7?V\x9d\xb9\xc0\x9d\xc01\xc0\xb6\x8f,@rI\xa6\xc0j\xfc"\xc0\xb2]\x0e@k\x00\xe9\xc0\x99\x8b5\xc0l\xad\n@\xc8p\xf3\xc0ekv\xc0\xd7dd@9\xcf\xf5\xc0ks\x18\xc0\xf79o@\r\xd2\n\xc1Y\xbb9\xc0\xefxt@\xdc\xe6\xf6\xc0\x1b\to\xbf\xce\x82\x86@ \xbc\xda\xc0^wA\xbfW`\x93@[\xf4\xd4\xc0T\xfe5\xc0\x8d_\x93@oY\xb3\xc0;\\\x17\xc0\xd6%\x90@\x14\xc6\xd2\xc0@\xd3y\xc0\x8b\x83\xb3@\x0e\xa8\xe2\xc0" \'\xc0\xa2\x02\x97?\xe9\x1c\x05\xc1b\xbe\x0e\xc0W\xd0\x83?\x81\xc1\x15\xc1\xa9\x9a3\xc0\xbdd\xdc>A\xd2\x00\xc1\xaf\x89\x89\xbf\xc0#\xa4\x94\xc0\x91V\xe2\xc0\xa3AD\xc0\x05\xf8\x9e\xc0\x03\x1f\xd4\xc0\xbf5\x80\xc0\x96\xcb\x88\xc0n\xa0\xc8\xc0a\xce\x19\xc0c\xb6\xbe\xc0\t"\xf5\xc0M\xd6 \xc0\xe3i\xcc\xc0\r[\x0b\xc1j\xdb>\xc0a\xe8\xd1\xc0\xcf\x0c\xde\xc0}1\xd4\xbfC\xc4F\xc0Z\x81\x06\xc1WY\x93\xc0\xf8\x1du\xc0\xb4\xcf\x11\xc1\x16|\xab\xc0:\xb3\xef\xbfV\xcc\x00\xc1\xf6!\xa1\xc0\xf5!\xa8\xbfF\xf2\xed\xc0\'\x8c\x90\xc0\xe2\x1c\xa6\xbf#\x8a\t\xc1c\x1e\xc7\xc0\xaf7\x01\xc0Zm\x08\xc1`<\xe2\xc0\xe5\xf1\xa3\xbd\xb5\x90\xf7\xc0!\x9f\xd6\xc084\xe6>\x95{\x04\xc1\xfe>\xf1\xc0\xad\xfa3?/H\xed\xc0\xb2\xf6\xbe\xc0$\x9d+\xbfL4\xcd\xc0`\xdd\xe7\xc0o\xf7\x88\xbf\xed\xf5\xb7\xc0\xdf\x82\xcf\xc0\x1c1\xb1\xbfaj\xd3\xc0o;\x00\xc1Lk\x1b?mF\xaa\xc0\xeao\xff\xc0\xda\xf0\x10\xbf\'\x8b~\xc0#\x80\x04\xc1,\xf2\x8f\xbf\xddIg\xc02\xc7\xec\xc0\x95\x02\x9a\xbfc\x03\x8e\xc0\xb3\x14\x11\xc1\xf48\x05\xbe\xdcnE\xc0&=\x0c\xc1K\xe9\x86\xbf\x85:"\xc1\xe2\x07\xc9\xc0\x12\xf5p\xbf\xcfm*\xc1\x9f\xc1\xeb\xc0*M\x85\xbf\xd1j.\xc1\x8c|\xa6\xc0\xd8\xaf\x9a\xbfm\xb0\'\xc1\xe0|\x89\xc0].\x8b\xbfH2E\xc1\xc2\x1e\xa4\xc0 ;\xaa\xbeJ\xaeJ\xc1_\xeb\xba\xc0\x90\xb0\x16\xbf\x17bO\xc1\xa2\x17\xc0\xc8r\xcf\xc0U@S\xc1\x94\x06\xc7\xbf\x8b\x9a\xf4\xc0\x07dL\xc1\xd6^6\xc0B\xcb\xd9\xc0\x83\xd01\xc1#\x98\xe8\xbf\x15\xfa\xd3\xc0=\xeb%\xc1\x99T\x19\xc0\xa7X\xf0\xc0I\xad*\xc1\x1f/J\xbf\x1cm\xfa\xc0\x1e\xa16\xc1\x81f\x9a>\xcea\xe4\xc0\xa1\x07A\xc1\x0cz\t?\xe1\x01\x03\xc1\\",\xc1\x01r\x83?\xdb\xf1\xf8\xc06\x81\x15\xc1:e6\xbf`-\x02\xc1\xa9\x05\x11\xc1\x07![>\xcb\xc8\xe9\xc0I\xec\x0b\xc1\xa1\xd8\xb1\xbf\xd9\xe2\x9d\xc0\x19t<\xc1T_\xe5\xc0\xa7\xaf\xb9\xc0/\xc0D\xc1{\xea\xfb\xc0>\xee\x83\xc0b\xea,\xc1\\?\xf6\xc0\x85\xaf[\xc0\x95\x80%\xc1F7\xe0\xc0Ni\x81\xc0\xabH&\xc1l\x11\x12\xc1\x9cI\xa0\xc0\xaa\x05(\xc1\xc5 \x18\xc1\xd2}g\xc0\xbc$\x0e\xc1\x9d\x8e\x12\xc1\x91b&\xc0u\xb5\r\xc1\xd9\xa0\r\xc1\xf2\'\x87\xc0\x8d-\x05\xc1/\xaa\x07\xc1\xc0is\xc0\xeb\xf2\x07\xc1\xd3Q#\xc1\xf1\nM\xc0\xaf\x924\xc1Y\x02!\xc1=E`\xc0\xa9\xc76\xc1\'P4\xc1\xdb\xf2\x14\xc0\'>B\xc12d\x18\xc1\xc4\x96\t\xc09\x0bA\xc1\x19\x0e\x08\xc1D\xd2\xec\xbfD\xdbT\xc1\xc0 %\xc1\x00\x10\xc6\xbf-gN\xc1\xe6}5\xc1Z\x12\x18\xbfh\x91\\\xc1r\xc3\x1a\xc1\xb1\xd8I\xbfY\xdac\xc1\xd4\x80\x0b\xc1\xc8(w=\x195M\xc13\xc3\x15\xc1\x95S\x1b=\x0cFh\xc1h\x9a$\xc1\xfc\xe86\xc0}Be\xc1\x9e!*\xc1O\xf7:\xc0\xe6nm\xc1\x90\xea;\xc1Xyn\xc0+\xeaj\xc1\xa8~\x1a\xc1\xd5\x1f[\xc0a\xf3f\xc1C\x1c\x0b\xc1\xee7\x9a\xc0\r\xfbx\xc1\xcf)\x1d\xc1\xa3\xce\x8d\xc0d\x04\x84\xc1.\x9c"\xc17\xd6\xb3\xc0\x03\x95}\xc1Jl\t\xc1l\x8b\xc5\xc0>\xafn\xc1\x8ak\x04\xc1\x15\x94\xd7\xc0w8\x87\xc1w\xa2\r\xc14\xd9\xca\xc0#\xa0\x8f\xc1\x02\xf1\x10\xc1\x04\xe8\xea\xc0\x92r\x85\xc1\x86\\\x1c\xc1\xc5\x05\xed\xc0v>\x87\xc1\x045\xff\xc0\xb7Q\x96\xc0\x02\x1b\x82\xc1\xf3B\xee\xc0\xd4\x97\x80\xc0\x8d+w\xc1\xb2\x05\xe3\xc0dv\x82\xc0\xec\xd1\x88\xc12\xbd\xf7\xc0X\xc7\xab\xc0I9\x84\xc1>\xf7\xd2\xc0\n\x0f\xb9\xc0\xee\x1dp\xc1\xe2+.\xc1\nW\xc4\xc0cIx\xc1\xa0\xdb>\xc17j\xc6\xc0\x96\xfe[\xc1{\x0e*\xc1\xdbz\xbf\xc0\x8c\x86V\xc1\xf0\xb2\x1b\xc1\x1a$\xe2\xc0L\x11O\xc1v\xb38\xc1\xd1\x0f\xfd\xc0 \xe5X\xc1q\xd7<\xc1E\xe8\xf3\xc0\xe6\x0b;\xc1j\xd3,\xc1\x85\x16\xdf\xc0\xd2\xac-\xc1\xbc\xd1-\xc1\x80\xef\xf4\xc0\xde\x87=\xc1\xf6\x0f\x1b\xc1\x1f\x1f\x11\xc1\xbe>7\xc1\x80o3\xc1\x1f\x1b\x1b\xc1\x03\xa6E\xc1\xebJ/\xc1zy\x11\xc1\x1b\xd85\xc1\xd9IE\xc1\x9c\xbb\x19\xc1\xa8\xc0"\xc1)\x98)\xc17\x8f\x0e\xc1\xf3\x97\x16\xc1\xfc\xb50\xc1\x06\x90\x16\xc1\xdc\xda#\xc1:\xe7\x17\xc1\x14\xbe1\xc1\x9d\x9e\x1b\xc1.,/\xc1\xe6N>\xc1\xbd;&\xc1\xfe\xf9(\xc1\xc0\x054\xc1\xf0u\x1a\xc1=\x19@\xc1\x86h4\xc1\xc4o\x05\xc1\x9c\x00&\xc1\xea\x80A\xc1\xbaD\x05\xc1\x96\x1e\x1c\xc1\x0e\x1d6\xc1\xb1\xb5\xf6\xc0\xca42\xc1s\xe7&\xc1\xd3\xf9\x04\xc1m\xd7\x1c\xc1{\x9c\xcf\xc0q3H\xc1\xa2\xe2N\xc1\xb1\x1b\xe2\xc0\x12\x899\xc1i\x92X\xc1\xe5x\xaa\xc0\xb7kQ\xc1q\x82T\xc1\x9f[\x9d\xc0=j[\xc1\x14zI\xc1\x9d\n\x94\xc0\xb7GN\xc1\x8aSi\xc1\t\x86\xaa\xc0\xfe\xf2F\xc1P\xe8t\xc1\xa3<\\\xc0\x14\xa8?\xc1\x85\x92g\xc1\xeb\x9fm\xc0\xd8\x1f/\xc1gcb\xc12X?\xc0\x10\xa8>\xc1C\x07x\xc1\xbf\xd9\x1e\xc0\xac\x0bH\xc1\xb0\xcdX\xc1\xc6\xeb-\xc0^\xd4@\xc1:BK\xc1\x83\xf7\x80\xc0{"c\xc1\xf0\xf8r\xc1(\xdc\x81\xc0D7e\xc14c\x83\xc1q\xd2[\xc0\xd1\xf1r\xc1GTg\xc1\xd4\x08X\xc0&\xa7q\xc1\xf2HX\xc1$\xed0\xc0\xafA\x83\xc1\x0b\xcdo\xc1\xa2\x9bD\xc0v \x84\xc1\x11\xf3\x7f\xc1y4F\xc0\x15\xe0\x89\xc1\xdbRe\xc1\rV\xa1\xbf\xb3\xf9\x81\xc1\xb7\xf2m\xc1b4\x0f\xbfx\x93\x87\xc1\r\xeby\xc1j\xed4\xbf\xa5\xb8u\xc1\xc8*`\xc1\xce\x94\xa6\xbfp5m\xc1\xdeAV\xc1\xc2\xf7??\xae-q\xc1\x16\xa5_\xc1[2\x87?\xeb8q\xc1\'\x80p\xc1\xf6\x00q?\x96\xd4Z\xc1\xa5PU\xc1 s\xff?\xba\xbaV\xc1\xe9\xd5N\xc1\x9b1\xa1>\xa9r\\\xc1\x92\xf1F\xc1\x1f\x97w>$ K\xc1\x7f\xe8b\xc1*\xb9*\xbf/\x91I\xc1j\x97]\xc1|0\xb4?\xbd\x94\x80\xc1\x17OQ\xc1B\xea\x8a?\xf9\xb5\x80\xc1e\xaa>\xc1\xf36\x10@\xd0|\x87\xc1\x0b\x92Z\xc1\x8a\x86\x1b@\x00\xc2\x87\xc1\x8b"j\xc10\xbe\x1c@W\x06\x92\xc1\xb4rP\xc1\x02N\xc2?v\xba\x95\xc1\xeb\xf1L\xc14!C@\x11\xc2\x99\xc1d\x1db\xc15\x12\x82@\xad\xd2\x97\xc1\xafAg\xc1\xeca\x1b@\xd3\x1b\x98\xc1!\xd0p\xc1\xde\xd6A@a\xf8\xa5\xc1\x8f\xae]\xc1:dr@1M\xa8\xc13CR\xc1\x9ahT@\x05\xe3\xaa\xc1\x10\xd0k\xc1\x12O\xde?E\xae\xa9\xc1\x13\x04T\xc1K\x8e6?\x14\xd7\xaa\xc1\xe6\xa5^\xc1}\x94\xec?\xcbR\xab\xc1]\xe9?\xc1\xd8\x13O@\xef4\x92\xc1\xf3\x85<\xc1n+-@\xcf\xbb\x93\xc1\x1ax+\xc1a\xd5\x91@\xbd\xd8\x8f\xc1\xa6\xc5>\xc1\x0b\x92\x9e@\x15\x12\x90\xc1pfN\xc1\x1aN\xb0@\x9fT\x8d\xc1\x19j-\xc1v\xbb\xb1@,6\x94\xc1?h$\xc1-\x14\xdd@\x1f6\x8a\xc1\xf6x6\xc1\x9a\xd4\xd9@\xe8\x13\x83\xc1n\xc7A\xc1\xd5)\xe5@\xba\xab\x91\xc1\xc3\xd4?\xc1\xef\x08\x01A$\xef\x87\xc1\xd6B&\xc1\x1e$\xf2@\x8e;\x81\xc1ou\x1d\xc1w\x04\x08A\xb3\x06\x91\xc1\xd0\xfe\x16\xc1P\xaa\rA4\xd9\x97\xc1\xe7\xd0\x1f\xc1\xd5\xa9\xf5@T\x01\x94\xc1`\xf7\r\xc1\xad\x06\x14Ae\x9f\x8d\xc192\x0c\xc1\xd4{\x14A@\xe1\x83\xc1\xee:3\xc1VW!A\x1d\xd9\x80\xc1\x90I)\xc1\xb5\x94\rAw\xcc{\xc1r)>\xc1*\xe0\x1aA\xcf\xd4\x8a\xc1\xba$=\xc1j\xa0\x9e@T\xae\x84\xc1\xea\x16\x1e\xc1\x7f\xe7\x9d@#\x12w\xc1I>$\xc1<\xef\x8d@F\x83\x87\xc1\xeao\x0b\xc1\xa4v\x90@\x95\x1a\x8f\xc1Mk\x07\xc1VFu@\xea\xf5~\xc1;\xed\xf7\xc0-\xe4p@\xf2\xa6n\xc1?\x06\x04\xc16\x9a\x8f@1\xd0}\xc1d\xd3\xde\xc0\x85> @f\\\x82\xc1A\xc5\xe7\xc07L\x08@\x86\xe8}\xc1\xda\xdb\xc3\xc0\xaf)\xdc?\x0e\x10\x89\xc1\x1b,\x00\xc1\x97\x9f\xfb?\nI\x8b\xc1\xd0\xc8\x0e\xc1\n-\xa0>o\xd5\x8b\xc1\xc0*\xf4\xc0\x9d\x89(<7\xaf\x85\xc1\x05\x17\xdf\xc0\xb1\x18H\xbf\xed\x95\x8c\xc1\x97\x0b\x0c\xc1\xa2ZD\xbf \xbe\x83\xc1S\x16\x12\xc1(R\xe6\xbf\xdc\xfb\x8d\xc1\x87\xb9\x04\xc1R\xdc\x03\xbf\xb9\x84\x94\xc1|i\x1c\xc1\x0e\xea\\\xbe\xb1\xa4\x9c\xc1n3\x17\xc1,\xb0\xa7>6\xf7\x91\xc1\x93P\'\xc1TN\xd7\xbf\x05\x1c\x95\xc1>\xe3+\xc1K\xad\xfd\xbf\x02\'\x8d\xc1\x9f\xdd.\xc1\xa2U"\xc0\xebD\x99\xc1Y\x12$\xc1a\xfa\xae\xbf\xc5\x88\x99\xc1\xa8?A\xc1Y\x12\xf5\xbe\xb6\x05\x95\xc1W\xf4H\xc1\x9c7\r\xc0\xaaU\x99\xc1\xa2LL\xc1\xa3\xc3E\xbf\t\xe3\xa3\xc1\x8a\x03>\xc1\x1c3\xa0\xbf\x99R\xa9\xc1\xaf,5\xc1\xf8\x94B>79\xa3\xc1\x14\xdf6\xc1\xc3s$\xbfw\xb9\xa7\xc1D\x00M\xc1\xe0\xd9\x8f>\x90r\x95\xc1\x0f\xec\xd9\xc0\xe1\x98A\xbfn\xe2\x98\xc1R\x1d\xca\xc0\x07;\xb6?\xe4\x9d\x9a\xc116\xd1\xc0#%\x15@\x1a\xd7\x96\xc1\x7f\t\xd9\xc0E!\xc8? \r\xa4\xc1\xa3\x02\xb3\xc0\t\xeeL?z\xe5\xa9\xc1\xe3O\xbb\xc0\xf7N@@f\xbf\xa9\xc1\x96\xe6\xb2\xc0\x0f58@\x0c{\xb0\xc1d\xce\x9a\xc0F\xa6o@\x16\xce\xa4\xc1Y1\xa3\xc0\xad\xb3b@1Q\xae\xc1\x17\x05\xde\xc0\x9c\xf37@\xa2\xe4\xb4\xc1&\x10\xe6\xc0\x186\x92@\xbe\xf6\xb0\xc1\xa3P\xd8\xc0\xa9Qg@H\x88\xa6\xc1\x94\x92\x01\xc1\xdc\xb9\x88@\xc5(\x9e\xc1\xe9\x8b\xfe\xc0\x16\xfb:@\x11\xcc\xa8\xc1%$\x13\xc1\xd5\x8f3@\xc7\xea\xa3\xc1\x06\x10\x1f\xc1\x1dL\x18@\xec\xf1\xaf\xc1\xd1\xe4\x13\xc1s\x99\x91?{\xef\xa0\xc1\xb5-\x83\xc0\xa18\xda>8\xa2\xa6\xc1\xac\xd5]\xc0\xe8n\xbc?\xcb\x86\x97\xc1\xa6ak\xc0?U\x04@(a\x93\xc1\xc1\xf8\x87\xc0\x9f\xe8\x82?\x89\xf4\x93\xc1\x1c8\x15\xc0\nKF?\xea\xd8\x9a\xc1\x9e\xfb\xde\xbf\xa1\\\x0c@h\xfa\x8c\xc1\xab)\xd2\xbf\xba\x8e%@9F\x88\xc1V\xba \xc0\xcf\xd4A@\x89\xc7\x91\xc1\x81I\xb1\xbf\x05/\xee?X\xf7\x87\xc1\xfc\x7fH\xbf\x86\x9ap\xbe\xb7y\x8d\xc1\xd1f\x17\xc0V#\xbf\xbe\x8a\x8c\x84\xc1\xa0\x0f\xe6\xbf\xd9\x93\xa5\xbf~\'\x92\xc1\xfep<\xc0G\xad\x8f\xbf@\xa4\x99\xc1\x89\xc1U\xc0\xc9\x88)\xc0I%\x8e\xc1$\xe9C\xc0\xe4\x86+\xc0\xf5\xae\x85\xc1G\x9fZ\xc0d\x99^\xc0\xe3\xf7\x95\xc1\xfe\x9c\x7f\xc0\xc5\x98Z\xc0+\x9c\x9e\xc1\xf4\xd1i\xc0\r7D\xc0FY\x95\xc1=\xbf\xa0\xc0\xaf\xf9\x9d\xc0w\xbe\x93\xc1\x05S\x87\xc0_b\x9f\xc0\x1fx\x8c\xc1ni\x98\xc0\xdc\xd6\xad\xc0\xc9\xe9\x91\xc1\xe6-R\xc0\r\x9b\xb2\xc0\xd8\x02\x9d\xc1\xfb4\x9f\xc0\x02y\xa9\xc0\xb7\xb4\xa4\xc1\x1b\xc0\x8c\xc0\xbc@\xa7\xc0\\n\x9d\xc1%\xc9\xbf\xc0(\xa9\xe4\xc0\n^\x9c\xc1\xde\x9e\x9f\xc0\xaf\xa8\xee\xc0I8\xa4\xc1\x96E\xae\xc0d\x9a\xef\xc0\x07}\x95\xc1\xbfW\xb2\xc0\xdfK\xf5\xc0\xeb\x8d\x9b\xc1^Qi\xc0\xf1\x1c\xfc\xc0\xf6l\x93\xc1\x0b\xc7`\xc0\xbdy\xe0\xc0\xc9\xfa\x9d\xc1\xa7\xb8;\xc0mB\x08\xc1\xa1\xe1\x9f\xc1\x81Ka\xc0.\x06W\xc0\xb8X\x8e\xc1\xe0\x0c\xde\xbf\x82\xb6i\xc0@p\x86\xc1\x03\xce\x90\xbf\t\x7fi\xc0\x9e\x0f\x98\xc1\x96e\x9f\xbfr\xdb[\xc0\xdf\xca\x9e\xc1\xfdU\xe3\xbfi5\x91\xc0\xf0\x97\x9a\xc1\x07Z*\xbe\x9f\xa6\xb2\xc0\x0e\xbe\x97\xc11\x93M\xbe\xe8Y\x97\xc0\\\xca\xa6\xc1\xb7\x96|\xbe\xe6\x93\xab\xc0\x97\x07\xab\xc1\x83\xe6\x11?AKj\xc0\xe7\x8a\xaa\xc1v\xa5^\xbe\xeb9\xad\xc0w\x9d\xa8\xc1\x86m\xc5\xbf_\xa4\xd1\xc0\xeb\xd3\xa4\xc1f0\xd0\xbf\x90z\x99\xc0\xbe*\xad\xc1\xb6S\x1f\xc0<(\x81\xc0\x87H\x97\xc1\xc8\xf6\x9d?\x9eK\x99\xc0\x9fe\x98\xc1\xba\x7f\x0c@:F8\xc0\xae\xca\x91\xc1\x1c\xef\xae?P\x80\x0e\xc0@\x89\x91\xc1\xe7\x95%?\x14\x89\x1d\xc0\x99\xde\x8b\xc1\xc8\xe3"@!\x80,\xc0m<\x90\xc1*8a@\xca\x13m\xbf\x82q\x8a\xc1ss"@S\x1f8\xbf\x91[\x86\xc1\xb9\x98\xd0?\x04e\xd3\xbe\xe3I\x83\xc1\xd2;r@\xb2\xb3p\xbf\xb9\xbc\x86\xc1\x85\xfc\x97@Vh\x1d\xbf\xddMu\xc1\xc8\x94n@\xa5\xcb=?\x04\xc7\x83\xc1\xcd\x02v@*\xe0\x8b\xbe\x06\xc2\x95\xc1I.\x1b@Oa\x1b\xbf\x15\xeb\x9b\xc1Q\x93\xdc?\xfa:\xd3\xbe9\xb6\x99\xc1\xa4$Z@\xd1\xaf\x9a?h\x1d\x95\xc1Xm\x06@[I\xdb?\x18\x04\x9c\xc1\xff\xba\x1d@\x872\xdd?a\xc6\x8e\xc1^)*@\x8a\xd6\xae?\xb9X\x95\xc1f\x9c}?\xd1\xc9J\xc0]\x0f\x81\xc1\x03\xc7\'@Z_u\xc0\x88\xdb}\xc1\x95\xfej@j\x83J\xc0\xf5Vv\xc1\x00\x7f\xbf?\xcf\x91.\xc0\x94q|\xc1\xbaZ\x1f?p\x86q\xc0\x84\xbaa\xc1Z\xff\xb7?\x16\xd2r\xc0:\x1aZ\xc1w~\x1b@\x04EB\xc0\x85\x8aS\xc1\xe1\xaa\xe7>\xb2\x00o\xc0P\rJ\xc1\xf9O\x06\xbe\x1c\xbb"\xc0\xce\xf3]\xc1\xa6<\x89\xbe\x17\xde\x01\xc0\xd47C\xc1\xa6\x19\x90?U\xf1\xbc\xbf\xb7\xf3<\xc1E\xe6~>\x9b\t\xa3\xbf\x8d\xcbK\xc1\xc7\x14\xdd?I\xbd4\xc0\xa2\x81-\xc1\xed`\x06@8\xc6z\xc0\xc5\x11!\xc1{HZ?04e\xc0xW\x11\xc1Y\xfe\x08?\x83\xac\x9f\xc0\x1f\x8c \xc1nL\x93?\xb4\xafw\xc0\x1a`+\xc1\xc9g%\xbd+#\xa6\xc0b\x05c\xc1\x93\xb8z?\x01\x1b\xc2\xc0&\xbcT\xc1i\xd6\xa3?\xe4\xfd\xb0\xc0\xef\xc8t\xc1\xcb\xe9\x85>kJ\x99\xc0k\xe9~\xc1\xef\xb1S>\xfe[\xde\xc0\x92\xb3z\xc1\x91b\xe8\xbd\xd5V\xea\xc0\xae\xd1k\xc1n\xa9\xb5\xbe\xf4K\xe2\xc0\x83e\x85\xc1+\x93\x9f\xbf*\xdd\xe7\xc0\xd5\x01\x8e\xc1ea~\xbf\x1b\x94\xc6\xc0;\x9d\x84\xc1\xf0Z\xfa\xbf\x01\xa4\x04\xc1\xe8\x00\x83\xc1\xcc\xac\x05\xc0~\xe4\x11\xc1\xb7\xd2w\xc1.-\xd8\xbf=\xee\x07\xc1C\x02\x88\xc1\x19\xd9I\xc0\xa98\xf6\xc0K\xd6\x80\xc1\xf1.\x91?\xc3S\x0c\xc1\x91\xccz\xc1\x1bR\xb0?\xcb-\xe1\xc0\xdb\xd9\x86\xc1<\xdd\x06@X\x14\xc3\xc0\x92\x01\x8a\xc1\xcaZ\x02@\x02\x1a\xf7\xc0\xa3\xad\x88\xc1H\xe6U@w\x89\x0b\xc1}\x06\x8b\xc1\x94sJ@\xcc\xd2\xe6\xc00W\x92\xc1\x80c\x83@\xa4\x00\xc4\xc0X\x1f\x91\xc11\xda\x86@\xc9\x9f\xec\xc0\xf8E\x99\xc1\xc1\xea`@\xf8R\xf7\xc0\x00E\x93\xc1g\t\xa4@\xf1\xf7\xf5\xc0\x13\xf4}\xc1\xba\xf2\x89@\x1d\x9a\x0b\xc1t\xc3s\xc1$Q\x8e@\xdc\xaf\xd2\xc0:\x0ew\xc18\x83\x9f@Nb\xb5\xc0\xb8\xd0|\xc1\xd3\xf8\x98@\x18y\xd3\xc0f\x19d\xc1\xd0&\xb9@}\x0f\xf1\xc0\xc5\x0ce\xc1c\x16\xce@DT\xd0\xc0E`V\xc1L\x07\xa4@\xce\x9f\xaf\xc0y\xc0`\xc1\xa6\xb7\xd9@\xb1\x1f\xb7\xc0\x9c{[\xc1\xe5,\xfe@[\xd8\x87\xc0\xc4\xaea\xc1&\x1a\xca@\xef\x96\x80\xc0\xe0\xa6e\xc1DT\xab@\x10>G\xc0\x16\x07Y\xc1\xc4\xda\xe2@\xdf\x92X\xc0\xdd\xa5K\xc1\x83\xef\xf6@G\r"\xc0\x00\x83h\xc1\'\x06\x02A\xaeI\xee\xbf\x90Rt\xc1\xe1\xaa\xf0@w\xadT\xc0\xd5\xedq\xc1"\x07\tA\xe1\x84\xe8\xbf\x95\xa1]\xc1L-\x14A\xafq#\xc0A\xd8Z\xc1\x8e\x1d A\x8d@\xb4\xbf3\xc5M\xc1f\x9b\x10A{\x0b#\xbf\xe5\x12j\xc1\x11=\x1eA\x0c\'\x89>7\xf3h\xc1@7\x13AM\xb3k\xbf\xbc\x11{\xc1-\x06\x1bAa\x84\xdb\xbd\xea\xaab\xc1\xe9#4A\x0c\xd6\x0e?e\xa0m\xc1(`:A"\x11u\xbf\xe2\xda`\xc1\x95\xa7?A\x8a\xa8\r?-AM\xc1/\xc61A\x93\x069\xbe\xf5\x9fB\xc1s\x8d+A\x93\xb2\xa4?JPL\xc1\x0b\x89&A\xf0\x00^?\xcb\x0eH\xc1\x0f\x9e@A{\xec\x03\xc0$\xc6R\xc1\xec\xf8\xc0@\x81\xa6\x07\xc0\xaf\x9bY\xc1\xeaB\x9c@%\x84\x93\xbf\xd0\x96C\xc1\xefF\xc9@q)\x9f\xbf\x8fX;\xc1\x89\xeb\xe3@\x8a\xf1\x80\xbds\xb1>\xc1\x93\x0c\xab@\x9f\xe0\t\xbf\xcc\xc1:\xc1\x0b\xfc\x8d@\xe5\xd8T?K_,\xc1bo\xbc@\x86\x94\xcc?n\xf6%\xc1\xcc\xfa\xa3@Q\x1d\xa6?d\xf13\xc1\x98\xe6\xd8@\xafx\xcc\xbdu9\x1a\xc1\xa9.\xcc@\xcc\x82I\xbf\xeb\x03!\xc1\xb7\x02\xe4@;\x7fU?A\x1a\t\xc1\xd9\xc3\xe0@\x9e\xde\x97>\xce\x0b\xf8\xc0Y&\xf3@\x1d\xa4\xaf?\xd7\xb0\xff\xc0\xae\x8a\xc8@\x95\x98\xbf?L\xff\x11\xc1\xc4\x05\xf5@\xd6(v\xbf\x08\xbf\x0e\xc1\xdc\x1c\xaa@\xc3#\xeb\xbf\xb9\xab\x17\xc1{}\x9c@E\xc0\xc8\xbe\xc4`\x08\xc1Bb\x8e@\x80\x9f\xa1\xbf\xda\x19\xff\xc0\x08\x05\xb7@K\xa3Y??%Q\xc1>\xf1\xa0@\xcb\x1a\x8c?\xa7\x00^\xc1<\x93\xbc@\x81^\xb4?\x0ecQ\xc1\xb1\x02r@}\xf0\x80?\xc3uH\xc1\xd4KF@H\x83\x1a@u\x96`\xc1\xa4\x96T@\xbd\xa1\x0b@\x15\xffo\xc1\xc5ok@\xba\xbf\x1f@&\xfb`\xc1\x15\xe0\xe0?\xa3\x80&@\xbfKQ\xc1\xb4\xbd\x9f?\xbc"g@\xa7\x9ao\xc1Wd\x93?9\xbe_@\xebw\x80\xc1/\x03\xc0?\xb6\x00\x96@\xdc\xe7k\xc1\xd8\x1b\xb2?\x05\x14d@\x16:p\xc1\x12\xe3\x95=f\x86\x9b?;\x15l\xc1\x0c7\x98? \xb1\xb0?\xaf?p\xc1\x80\xaf\xfb=p\xf3u>?\xcad\xc1\x8c\x8f\xaf?:3\x9f?<\x07|\xc1=y\xd9?\xa2\xdbo@\x8coY\xc1\xc5-}@\x8b\xc8\x7f@\xcbTG\xc11\xb1\x8b@\x12\xd7\x93@\x84\xdei\xc1\xb6\x96\x80@!\xce\x90@\xb5\xbfy\xc1n~p@\x86K\xc1@|\xf8g\xc1\xb0\xde\x8d@\xf6\x05\xc3@\x9c\xa4_\xc1\xf5@\xab@\xe3\x92\xd3@\xb1\xe4}\xc1=\xa2\x9b@\x92\xe1\xf6@\x87\xbe}\xc1-\xf0\x9c@\xb2\x1f\xc4@_\x15\x87\xc1\xf6t\x7f@K\x0e\xdf@\xa7X\x89\xc1}\xf7_@\xe8\xe4\xbe@\xd1\x1e\x82\xc1G\x8b\xc7@\x1a\xfe\x9a@n\x1d\x81\xc1:\x90\xc1@\xa9\x1b\xca@\xa8\xa3z\xc1n\xb1\xe3@\xa2\x89\xc7@.\xc3\x8a\xc1q\x07\xcd@\xfcD\xdd@\xb8n[\xc1Kr]@\x96R\xd3@3{I\xc1naE@\x7fJ\x00A\x08\re\xc1.\xcf>@\xc0\x0f\xff@\x1e+u\xc1\xe7\xb6=@\x8c\x05\x12Ar=Y\xc15E)@~\xe0\x0eA#UH\xc1\xdf\xa7(@\xac\x18$A\xf8\xa5]\xc1\x02\x8dn@0$3AV\x10X\xc1I\xceO@\n\xd7%AC`o\xc1\xbc\xed}@\xeah!Ah\xbdQ\xc1\xbd\xbe\xa0@&\xdc0A\x97\xd3H\xc1\xc2M\xb1@f\x00\x0fA\x8dyO\xc1\xce\xb9\xad@a\xe9\x1bA\x1d6_\xc1\x0c\x89\xa2?1\x1a\x1bA\xf8\xcaR\xc1)\xf0\xa6>3\x88$A_^\xe75A\xf2Y\x8d\xc1]v\xa3?\xde\xd83A$\xf3\x8f\xc1S\xf7\x10\xbfJW\x14A#\x18\x91\xc1\xd1\x99\x17?\x06\xa1\x17A)\xb7\x97\xc1=\xb4\xa0?f\x1d\rA\x99\x88\x93\xc1;\xbb\xbd\xbe\xf4X\x03A2\xb2\x89\xc1\x87\xcc\xa0?\xe03\x04AF\x89\x87\xc1b\xf0\x1c@\xf8\xf0\xe9@\xbeu\x86\xc1\xe0\xde\x12?\xe6\xa0%A\x84\x16z\xc1s\x9e\xa7\xbf\xf8\x971A#\xdeq\xc1\xae\xd6\x08\xc0St\x11A\xe2\x1c\x7f\xc1\xd1\xf8\xcf\xbfB\xed\x07A\xe6\xa6\x82\xc1\xea\x88a\xbf\x83~\tA>)|\xc1/NA\xc0\x9bc\x17A\xbdE~\xc1D(i\xc0\xf1|\xec@\xd4\x91\x85\xc1\xce\x11K\xc0\x94\x02\xd7@\xfe\x00\x83\xc1\x88\x03\x16\xc0\xa0\xdb\xf6@H\xae\x8d\xc1\xe17>\xc0\xc6\x9d\xcc@\x854\x85\xc1iH\x89\xc0\x17\xff\xbf@\x1cmy\xc1\xe0s\x8c\xc0\x90\x07\xe4@\t\x15\x88\xc1\xfc\xc1\xb4\xc0\x1ar\xf8@\x9a\x8a\x8f\xc1&>\xb1\xc0\x91X\xfe@d\x19\x82\xc1\xf1\xa1\xbc\xc0\xef\xbf\xcb@\x02\xe8\x86\xc1VA\xce\xc0\x94\xc5\xa4@\x18r\x8c\xc1\xed\x94\x82\xc0\'x\x94@\x98\xf1\x8a\xc1\x85\'J\xc0\x8c\xf6\xaa@\x10M\x95\xc1Q6\x84\xc0xR\x8f@\xa7\xc3\x8a\xc1\xe5\xf5\x9e\xc0t\x86\x03A\xaa\xc9d\xc1%}U\xc0\xa05\x04A\xef\xde\\\xc1\x80\xff\x8e\xc0\xfb5\xfe@\x9a\x8dX\xc1C\xc4\x0e\xc0\xac\xd2\x00A%c_\xc17\xe1\xaa\xbfh\xd1\xf0@\x9amB\xc1\xd0\x14\x16\xc0u[\xdc@_\x1fA\xc1\xd0\x00P\xc0 u\xd0@\\\xcc:\xc1H\xaa\x9f\xbf\'\x9f\xe4@\xdci8\xc1\xfa\x8d\xc8\xbe.f\xbb@:\xb3$\xc1\x96=\xdb\xbf\xfc\xc2\xb1@>\xe7&\xc1\x8e\xd9.\xc0\x0f\x91\xd5@\xd5%\x19\xc1BR\xd0\xbfv\xc6\x9d@\x84a \xc1\x1e\xcf\x8d\xbf\x8c\xab\xac@-\xcdK\xc1\x08\xdb\x8c\xbfC\x02\xb8@\xbe\xa0[\xc1@})\xbf\xceA\xa3@\xa4\x9cN\xc1\xac\r\x0b\xc0\xce\x9b\x91@\x8a\xadE\xc1\x8f\x00\x15\xbf\xa2n\nA\x87\xf92\xc1U\xdc\x1f\xc00\xb8\x08A>\xa6#\xc1\xd0%N\xc0\x04\x7f\x1dA\x90=7\xc1[\x0b\xf5\xbf\xc8j\x1cAb\xbbC\xc1\xf6D\xa5\xbf\xf2\xe22A%\xe6.\xc1!c\x10\xc0\x1f\x881A\x04C\x1e\xc1*O\x05\xc0\x04\xbcDA\x1c\x908\xc1\xce_\xbc\xbf\x8dSDA\xcecJ\xc1\xde\xa7\xcb\xbf\xe3\xc8ZAqt0\xc1a\xb2\x05\xc0lPXA\x12A\x1e\xc1\xd6\xde\x0f\xc0s^]A\xdf\x059\xc1\xa8\xc8I\xc0\xbf\xbagA\x98\xb03\xc1EC\xba\xbf_\x00CA#p3\xc1\x8b\x0e,=\x05\xc21A5\x900\xc1!\xf7\x8f>b9JA\xcd\x8e#\xc1\xe8\x05R>\xce\xaaLA\xa6NE\xc1\x0e\x01v?\x9d\x10NA\xb1\xa5?\xc1\xbb\xc7\x03@\xbc\x8d[A9~J\xc1\\\x11\n?\x1a\x1fBA18T\xc1\xf8 m?\x1a\xd67AZ\xf8/\xc1Elo\xc0\xce\xe6=A*\x9f \xc1s)\x8b\xc0\xefm4A1\xd9C\xc1\x94\xe7\x8b\xc0\xf5c.A\x97$P\xc1-qt\xc0\xd8\x0f;A}\xd9G\xc1\xfc\x08\xb9\xc0\xf3\x9fKAq\xbfB\xc1l\xa0\xbd\xc0\xcd\x1e;A1"`\xc1\xdc\xa1\xc6\xc0\xe5\x0b+A\xf7\xd4g\xc1\xc56\xc3\xc0V\xe5GA\x966j\xc1\x11\xc2\xb7\xc0\xcd\xea?A6\x1da\xc1WR\xe8\xc0\x14\x81,A\x8d\xe69\xc1S\xd0\xd6\xc0\n\xf70A\x0c\xba1\xc1S\xdc\xf8\xc0\x08N\x17A\xd2|8\xc1\x003\xc9\xc0\xdaD\x14AS\xa7@\xc1U\x10\xb0\xc0%w\x08A\xc9\xaf*\xc1\x8e\x1a\xe1\xc0\x89b\x0bA\xda\xbc+\xc1\x97~\x01\xc1\xab\x1d\xe1@\x19\x030\xc1\x10\xa5\xda\xc0\xce=\xcd@\xbc8%\xc1\\J\xef\xc0\x91\xb7\xd9@\xfd\x01,\xc1s\xd9\xb7\xc0\xdf\x12\xd8@G.G\xc1\x03B\xe2\xc0\xf1#\xf1@\x92\xf8P\xc1o>\xd0\xc08\x81\xac@\xaf\xbfJ\xc1S$\xcc\xc0\xc9o\xa3@8\x12[\xc1d\xbf\xcc\xc0\xc3/\x93@\x99\x81?\xc1:\r\xd9\xc0P\xd6\xb1@N\x0fF\xc1\xd4\x8c\xab\xc0\x88o\xd8@3sM\xc1\xa9 \x08\xc1\xb1\xd2\xfb@g0M\xc1q\xd2\x0e\xc1\x06\xd5\xc4@-LB\xc1w\xc9\x11\xc1t9\xcd@]5_\xc1"\x0f\t\xc1\x8cG\x0bA{n\x13\xc1P\x9e\xd4\xc0\x03\x84\xff@\x07]\x06\xc1 \x01\xe6\xc0XR\x1aA\'\xa0\r\xc1<\x1c\xb8\xc0[\xaf\x1fA\xf2\xe5\x17\xc1\x08\x16\xa4\xc0\xb93\x1fA@\x11\xee\xc0\xee\xc8\xae\xc0\xd6\x90\x12Ax\x9e\xd9\xc0\x11\xe7\xbc\xc0\x1en!A\xddi\xe3\xc0\x86\xa9\x80\xc0\x9fE+A\x14C\xfd\xc0\x82\xacg\xc0B\xef-A\'q\xba\xc0\xab\xc6m\xc0c\xaf)A\x8f\xe3\x9f\xc01\xf9\x8a\xc0M\x05@A:\xc3\xba\xc0[\x84v\xc0\x99v,A\x1bD\xb0\xc0w\xa5+\xc0 {\x0bAH^\xe1\xc0\xbc,W\xc0\x88\xba\x02A)\x05\x00\xc1\xfb6g\xc0\x19\x9c\x02A\xa2\xdc\xc3\xc0\r\xc0o\xc0\xf9\xfc\x0cA\xe3\x98\xe0\xc0V\xfe\x11\xc0I\x803A&\xdf\xe5\xc0\x86\xd3\xc7\xc0BP3A\x8c\x0b\xc6\xc0\xf6\xc1\xe0\xc0\xc0\xdfEAv\xb6\xfe\xc0L\x17\xc3\xc0zKDA\x0b\xe8\x0c\xc1X\xc4\xb3\xc0~\x9c[A\x9a \xf1\xc0\xd0y\xcb\xc0\xc2\xe4\\A\xfd\x9d\xcd\xc01\xb8\xc8\xc0\xd8\xd2iAMb\x01\xc1\xce\xa3\xa6\xc0\x1bHlA\xfb#\x11\xc1\x7f\xfb\xae\xc0.\x11`A\xc7\x82\xfc\xc0\x96\x1e\x8a\xc0Q\x1e\x7fA\xbf\xcf\xea\xc0&\x8d\xa4\xc0LE}A}\xba\xca\xc0\xaba\x98\xc0@\xcf\x83A\xafX\xe8\xc0\xe9\x03\xc3\xc0\xc9d\x88A\x95O\x01\xc1%\xc3\x8b\xc0:\xa8\x85A\xe6S\x04\xc1\xf4\xfaY\xc0j\xe1\x8fA|V\xec\xc0v\xb0\x86\xc0c\x10\x8cAR\x83\x14\xc1T\x1c\xa6\xc0\xf0\xf4\x94A\xaa\x10\x14\xc1\x1a\x1b\xa7\xc0\xb0\x1b\x88A8\x16\x16\xc1D\x14\xc7\xc0%E\x89Ay\xbc\'\xc1u\xbc\x8e\xc0\xfax\x81A\xa6u&\xc1\xc4\xce\x85\xc0\xec\x8b\x8eA\xbdX)\xc1M\xcdg\xc0\xb1\x1b\x8aA\x15\xb75\xc1\xf3*\xa4\xc0\x14jeAK\x1e\xfd\xc0<%\xf8\xc0O\x92lA\x02\xfa\xde\xc0\xb2\xed\x05\xc1\x9c\xa9dA\x85\xcf\x12\xc1\x9aa\x03\xc1\xe8\xbfcA*a\x1d\xc1E\xbd\xed\xc0e\x94jA\xad\xc8\x1b\xc1\xdf\xbe\x17\xc1\xe2\x18{A\x19\x9b\x16\xc1\x0f\x08\x1d\xc1\xd6.hAk\xfa4\xc1\xcd\xf4\x15\xc1\x9b\xd7jA\x04\xb2;\xc1<\x0b&\xc1\xd2dYA\xac\x8e9\xc1\xecN\x0f\xc1\x11[zA\xb3\x1dA\xc1\xea\xf4\x07\xc1\xc5\x1a\x85AK\xab?\xc1\xde\xb1\x0f\xc1\xc2CtA+2Q\xc1`\x7f\n\xc1\x19\x9f{A\xe9*<\xc1\xbaB\xe0\xc0\xdc|\x86A\x8b\xb2@\xc1\xb2-\xce\xc0\xe5\x1clA\xad\x842\xc1\xd4\xf5\xcd\xc0\x8a\xf0ZA\xd1\t\x13\xc1^\xc4(\xc1\xb1^aAo{\x0e\xc1!\xf2:\xc1\xf8MGAS8\x0e\xc1|e"\xc1u\x8cBA\xa3\xdf\x13\xc1\xbc\x1a\x14\xc1\xe6\xbc7A[\x13\x01\xc1\x0c\x11.\xc1\xec\xa73A\x9a\xd4\x08\xc1G\xc3=\xc1\xf7b#A\t\xde\xfc\xc0\xb9# \xc1uE(A\x97\x0f\xeb\xc0\xec\xfc\x10\xc1Ry\x1fA\xcd\x0e\x0f\xc1\x91u\x19\xc1\xde\xde\x0fA\xa9M\xe7\xc0`\xbe(\xc1\x19p\x12Ad,\xc4\xc0\x8c\xc7+\xc1\xdc5\x01A\xd2\xe3\xeb\xc0\x82\x0f\x1d\xc1F\xd3\x06A\xf1>\xf7\xc0\x19\x1b>\xc1\\R\xfb@ns\x0b\xc1x\xab;\xc1Q\xe6\x12A`\xd8\xf9\xc0\x11\xe7J\xc1$\xb0\xec@\xf8\xae\xd9\xc0\xebFF\xc1c\xee\xce@\xb6%\xd9\xc0VaA\xc1\xc0H\xf7@\x93\xdc\xb6\xc0wzR\xc1\xccq\x0eA\x11@\xac\xc0@\xba[\xc1\xbf(\x1aA\x10)\xc2\xc0\xfb\xff\\\xc1\xd5\xd2\x0fA\x99\xcf\x91\xc0\x87~e\xc1\x03\xa0\xd9@\xfef\x97\xc0P\x80T\xc1\x0f\x83\xbc@d\x94\x99\xc0lGO\xc1x\xae\xe3@\xf9\x14z\xc0>\xc1]\xc1\x8fN@A\xdc\xc9\xd4\xc0\xb3k5\xc1\xfe\xa15An\xc3\xc3\xc0\x86XC\xc1*\xbbPA;<\xc3\xc0\x8b\xba+\xc1\xbdmVA\xc0\xab\xcf\xc0b\x14\x1e\xc1\xf8sWA\xc7A\x97\xc0\x1e\xfb/\xc1x#IA\x90\xf5\x87\xc09\x042\xc1\x8avbAV\xcb\x83\xc0\x1a\xe4\x1c\xc1\x1a}pA\x8e\xfa\x99\xc0}\xf5\x17\xc1\xe8whA\xbaS*\xc0#\xb1!\xc1\xb7\xf6ZAYQ\x04\xc0Ot\'\xc1\xe8\xb7uA\xe9\x08$\xc0\xdb\x9f-\xc1\xde\xeenA\x9ed\t\xc0jh\x14\xc1N_RA\x85\xcf\x86\xc0]\x9b\t\xc1\xd7\xf0IA\x02\xbf\xa5\xc0_k\x07\xc1R|EA\xf82[\xc0\xc3@\x0c\xc1hS[Ab\xcdw\xc03B\xe7\xc0\xac\xafaAD\xa84\xc0\xf4\xba\xe5\xc08=iAJ\xbe\x91\xc0\x84\xef\xdf\xc0\xbc\x0fPA\x19\xbc\x82\xc0\x87\x11\xcd\xc0\xd7\x91dA\xd7,\x95\xc0\xf6\x92C\xc1\'\x90eAY\xbfi\xc0lbN\xc1\\nkA\x85\xf2\xbb\xc0F\xe2K\xc1\xc1ufAlX\xd7\xc0\x93SE\xc1\x86\xe6xAv*\xbe\xc0\xeb\x93^\xc1\x04\x07\x82A\xe7\xe2\xa4\xc0\x10\xed]\xc1\xfb\x1b\x82AC\x87\xe8\xc0/\x1f^\xc1\x8fmyAL"\x02\xc1\r{[\xc1\xd7b\x87Al\x93\xe9\xc0\x07\xb3P\xc1\x99\xc2\x86Al\xf7\xf0\xc0\x9a\xd0k\xc1H\xdelAH\xfc\xba\xc0\xbb\xc2s\xc1\xaffoAk\xd5\xd6\xc0?\xd2\x80\xc1\xc0\xef]A\x16c\x9a\xc0\x8a\xd7t\xc1\xaa\xb2\\A\xbf\x88\x87\xc0\xb0\xeeg\xc1z\xb6OA\xcf\xcb\x92\xc0\xcc\xac\x82\xc1\xc7\x87VAz2\x9e\xc0\xd5.\x8a\xc1\xd1h9A\x11\xe3\xaa\xc0d\x17\x81\xc1\xb0e.Ad\x17\x9e\xc0\x17X\x87\xc13\xc40A\x96\x8b\xa3\xc0\xe0as\xc1\n\x0c:A\xbf8\xdd\xc0B\x19\x83\xc1\x8e\xeaHA\xde\xc3\xe3\xc04\x15\x88\xc1\x0e\x86*A\x1b\t\xe4\xc0\xb2\xc7\x87\xc1\x99~9A@z\xf7\xc0Cgr\xc1&\x8f\'A\xff!\xf8\xc0\\\xb0i\xc1\xe6KKAx=\x04\xc1\xcd_j\xc14\x84JA\xea<\x0e\xc1\xd2\x1a]\xc1\xff YA\xcb\xe8\x01\xc1\xa0\x06q\xc1\xa5PMAc\xa1J\xc0\xf6\xad\x84\xc1g\x1cQA\x00\x97\x16\xc0+\xbe{\xc1\xf1pEA\x15\xaf4\xc0|\x0c\x8e\xc1el@A\x08#d\xc0\xcc\x17\x92\xc1\xeb)EA\x96\xc6\xbb\xbfE\x8e\x92\xc1\xfd\xdbTA\xad\xd3\x80\xbf\x89\xfa\x92\xc1\xe4\xcd=A\x18\x9e\xc3\xbf\x91G\x9e\xc1\x1b\x986Ai\x06\x11\xbf\x83\xe3\xa0\xc1\x1f@0A\xf5\xea\x0f\xc0|V\x9f\xc1\x02\x00OA\xee\x18\x08\xc0\x81x\xa6\xc1\xd1\xcfFA\xdce\x17\xc0{\x86\xad\xc1\xc4\xf1VA\xbf\x91>\xc0\x81\x1e\xa3\xc1V\xce_A;\x99\x91\xbf,K\xa8\xc1\xb9wZAE\xca\xb3;Y\\\xab\xc1\x1cIsA\xe0M\xc1\xbf\xdd\xc2\xa6\xc11\x846A\xb3)\x05\xbf\xcf\x88\x8c\xc1\xdf\xeb:A!z.?\xa9S\x8c\xc1\x9a6&A\x85\xb3\x81\xbf\x90\x0e\x87\xc1\x84\xc1"AX`\xfd\xbf\xd5\xbb\x85\xc1\x16\x1c\x19An\x19\x1f\xbe3.\x80\xc1\xdeE\x18A\x14{K?\xa1\xca\x83\xc1\\b\x02A\x8d\xa7N\xbf\x8dT}\xc1\x00\xe9\xf4@\xebxl\xbfY\xb0\x86\xc1\xd2=\xf1@\xb1.\xec\xbd\xa1\x1bu\xc1\xca9\x01A\\\xd1\n\xc0\xb3kr\xc1\x9d$\xe0@e\x97\'\xc0\x1c\x8bk\xc1\x97\xff\x11A}\xb38\xc0\x9f\x1fs\xc1\x98D$AR\xad\xdd=>Lk\xc1\xb2\xbc(A9\x14\x9f?\xb9\xbdd\xc1p\xa3(A\x88\xd8b\xbf\xeb2_\xc16\xa8$A\xa5\xda\xe2\xbf;\xc7e\xc1r\xb3/A\xe7\x0bf\xbf\'\xe0H\xc1\x11\xf5%A\x03B\xe0\xbd\xc8\xb4@\xc1\x98/-AA\xe3\x10\xc0\x19\x94>\xc1\x1au6A\x0f{\x13\xc0\x9d\x0e/\xc1]k2A\xb8\xe2G\xc0O\xd6H\xc1\xdc\x95\x11A\xa9f\x1c\xc0P\x866\xc1S\xa7\x13AP\xe0e\xc0!&,\xc1\x86\x9aFA=\x1c\xc3\xbe\x0c\x96F\xc1\x0c\xafLAP\xea(>Jk5\xc1e\x90TA\x8c\xa6\xdb\xbe\xc2\x81W\xc1\x94\x07PAk\x07\x83\xbf\x02\xebc\xc1\xf0QkAH\x01\x8a=!\x05W\xc1\xdfArAzZ\xd3\xbe\x82\x81I\xc1\xf6\x01yA\xf4n\xd0\xbe&Fj\xc1s\x9cyALr\xc9\xbfZ\xd1j\xc1\xb8\x85\x84A\xb6\x9cb\xbe\xfb\xaed\xc14\x10sAj\xc1Y=\xe6\x88\x80\xc1\xd3=aA\x9f\xeb\x93>\x98\x00\x81\xc1,\xa3uA\x16\xa54\xbf\xf2\t\x86\xc1\xf6Q}A@\xfe\xa8?[$\x85\xc1et\x86AR\xeb\x99?\x83;\x88\xc1\xc8\x02\x7fA\x19\xe7\x00@\xf9\xc4{\xc1m\xcemA\x9c-\xfd?\xac\xdb\x8c\xc1\x08pdA\xf2\xa3+@,0\x89\xc1\xce}jA\xf5y\xd0?-\x01\x97\xc1PIyA\xde\xe8c?\xd1\x93\x9c\xc1\x81\xbc\x81AB6\xc2>\xe6\x10\x98\xc1\'\xfasAZ7\x9b>\xf8\x90\xa2\xc1\xa4\x95XA\xd9\x18\xed?\x92\n\x9c\xc1\xcf0KA\x1b.\xf1?\xc5\x9c\x97\xc1\x04qWA\xb3l\xa3?VJ\xa3\xc1\x08PlA\xf5v\xd0?/\x07T\xc1Jz|A\xd1\xc5\x0b@\xe0\x16M\xc1\xd9\xd2ZA\xd6\xf8\x14@\xcb\x06Y\xc1\x97\xa1MA\xec\x17\xed?\x13\xfc]\xc1_\xbcYA\xcf\x17q@\xf5\xedU\xc1\xdb"hA`\xae\x87@\xb9YY\xc1\xc5iGA\xa1\xd4\x89@6Uc\xc1\xd3\xcaCAL\xa5\xad@\xf8\xbac\xc1\xbe,8AA\xe3k@\xf0\xd1]\xc1W)KA=\xb8~@l\xb2z\xc1D^\\Ap\xc9\x86@\x11\xed\x81\xc1P\x00AG\xd9M@6\xb7\x8a\xc1\xdc\xf52A)~2@\xb1\xaa}\xc1\x1c\xc5SA\xa2\xf8\x80@\x03\x8a>\xc1\x1b\xa7\\Ar\xd8\x9b@\xb3)2\xc1f\xcfCA\x90YT@\x0c\xb18\xc1\xedh>A\xd2\xe3\'@\xc8\xe9B\xc1\xf7\x98:A$\xccX@\xe4b$\xc1\xa2>5A\xa8\xf3\x8d@\n\xc6#\xc1\x18\xc8EAD\x00A@\xb5\xfd\x18\xc1 \xc1&A-\x9c @\xac\x8e"\xc1N\x91\x1eA\xd6\xc1\xf9?\xf3R1\xc1\xce\xb3\x1dA\xfcq\x18@\xc1\x98\x0e\xc1o\xe7$A\x81\x00*@\xc8\x1c\x01\xc12\xe3\nA\x94F\xd2?*\x07\n\xc1&\xc4\xfd@g\x06\xd6?\xe9\xac\x16\xc1\xd3\xde\x0fA\xadQ\xb9=\xd56\x07\xc1\x06J\x14A\xb3\x1a\xe1\xbeO\x0e\x16\xc1\xee\xa2\x02AG\x1d\xfe\xbe\x88\xf3\x01\xc1\xe0\x86#A\xe2\x826\xbe\\&\xf3\xc03\x1b8A\x8f}\xc7\xbe\xeeV\x00\xc1\x15$\x98\x15\xac\xc0!P\xd0@;\xf4\x05?\xb2\x19z\xc03b\xe9@\xd5\x0b\x81?B\xf4`\xc0\xea\xf1\xc0@\xf0\xf3*\xbfA\x0cP\xc0\xa8\xd8\xb6@\xb5W\xb2\xbfl\xd8\x7f\xc0z\x10\xea@C\x94\xa7\xbf\xb0\xe2$\xc0\xcf\x9e\xdd@\xbcG\x01\xc0\x9f\xa6\xe6\xbf\xcf\xa5\xf9@o\xed\xf9\xbe\xb0k\x06\xc0?\xa8\x04AS\xc8\x04\xc0\x0flX\xc0\x1f\x0c\x0eA\xf9\x94\xb1\xbf\x10*\x82\xc0\x9d#\x16A\xa6\xcd"\xc0\t=\x17\xc0\xb6\x9f\rA\xc8fJ\xc0\x82\x8b\xcc\xbf\xbc\xae\x1eAI\x9d\xdb\xbfF0\xed\xbfmD!A\x16"H\xc0I\r@\xc0\xfb\xd6\xef@\x0e;P\xc0\xa7\x02\x81\xc0\x9d1\xdf@\x97\xd4=\xc0\x00\xdc\x9e\xc0\xf8\xe9\xd8@\xff\x05u\xc0\xf0\x81V\xc0\x05`\x05A\x1fx}\xc0\'\x7f\x89\xc0\xda\xb8\x9f@:\x0e\xdd\xbe\xfe:\x0b\xc0\x80\xc4\xa4@\x0e\xe6\xf0>\xb4\xc1\x80?}Y\x0f\xbf\xba\x08A@\x13\x00&\xc08\xa4\x8e\xbe\xa4\xe8P@\x189f\xc0\x8c:j\xbf\x9fK&@\xad\x961\xc0\xbbL\x80?\xd8+\x11@}p\xf0\xbf|t\xb2?\xa4\x82"@e\xa6\x82\xc0j\xd1\xd7?\xfd\xa3\xd7?\xaeq\x96\xc0\xf62\xae?\x928\x1a@\x1f\x85p\xc0\x91&+@}\x0en@\xf3F\x9f\xc0\xe3\n\xd6?\xd7\xb4l@"\xc6\xc6\xc0h\xe5\xe7?\xd0\xaf\x9b@\xbd\xeb\x89\xc0p\xa7\xc4?\xd2\x99\x9c@PmQ\xc0\xe1\xdf\xc1?{\x10\xc5@\xf5F\x9d\xc0\r\x1e\xda?\xc1\xcd\xc3@\xf1[\xba\xc0\xd9\x90\x10@\xf5\x0c\xd4@\xc5\x13\xa8\xc0\xec4\x90>\xb6\xa9\xd6@\xd6\xe3\x8c\xc0<4\xc9\xbe\xcc\xca\xbd@\nB\xbf\xc0<\xcd\t\xbe\x1e\x07\x00A\xf7\xb2\xbf\xc0SC\x98>lW\x14Aj\x86\xaa\xc0\xf2&\xb4>\xe0\xcd\x14A\x1c\xdb\x89\xc0\xa7\xf1\xf1>HK\'A\xf1\xa3\xc3\xc0\xfd-\xb1>t\x1c7A\xcdA\xb3\xc0~\xa8\xb9>8\x02\'Al\xc1\xef\xc0h\x0b\x7f>\xe3\x196A*^\x00\xc1\x90\xa5K>\xe8]\x00A\x07\x8e\xeb\xc0%\xd8p>\xaa\xe1\xe0@\xef;\xfc\xc0\xc2\xaeP>\x9e\x9f\x13A\xf4}\x02\xc1`\x95p>\xac\xf6\x13A\x9de\x13\xc1~\x04>>G\x08\xe1@\x81#w\xc0\xac|\x15@\x14\xe7\xd8@\xce\xbf+\xc0\xe8Y\x07@C\xfa\xfd@\xa9\x1a\x86\xc0p\xbeN@|\x18\rA\xa1$J\xc0\xf2\x0cr@ \xf4\x03A\x87\x12\x13\xc0\x0fO\x86@\xbbJ\x1aA\x85j3\xc0\x90^B@\x83\x80\x01Am\x17\xb0\xc0\xcd$x@\x19,\xff@\x16\x8f\xc8\xc0\xe3}I@\x04\xa3\x17AeO\xab\xc0L=\x90@\xd4a#A\xd3\xa6\xb2\xc0\xf0\x01q@\xdfl\x1aA.\xea\xc0\xc0\x14\xc2\xac@\xc3a\x19A\xa7}v\xc02v\x9b@)\xbc\x11A\x81\xb7g\xc0\xab\xae\xb9@\x01\xa3*A\xc0\x8cg\xc0\xd5\x19\x9b@\x9f\x00\xe2@\xa1\x12\xb7\xc08E\x9f@\xd9\x0b\xcd@E\xb0\x98\xc0-e\xac@\xe2\x9b\xde@\x0e\xe4\xdd\xc0\x95\xd0\xae@8\x1d\xec@\x86\xb6\xf3\xc0_\xbf\x9b@\xe83\xca@\x0eV\xeb\xc0\xb2#\xd6@\x01U\xb3@\xdf{\xd1\xc0)e\xe0@HI\xb0@\xdaH\n\xc1\xa9\x17\xd2@\x94\x86\xac@\xa4\x12\x12\xc1\xa8i\xf2@\xb2T\xc2@\xd3}\x15\xc1(\r\xbf@\xaee\x83@\x1e\xfe\x07\xc1\xear\xbd@\xc7Qj@\xe0m\xef\xc0+\xb6\xc5@Q\x18g@O\x1d\x17\xc1\xe5[\xcb@\xb4B\x7f@=\x92\x06\xc1\xd6\x9c\x8a@G\x9b\x99@%\x88\xf2\xc0\x06\xb5\x81@\x1f\x15>@\x9d:\x01\xc1[\xbd\x82@\xffw\x8c@\xa6\xa0\x1b\xc1\xdd\x07j@\xdc\x95\x88@\xac\xcb)\xc1\xe3\x1d\x81@\xd0\x0c\x97@\xbdO\x1c\xc1q\xfe\x17@\x1dQ\x97@\x08\x92\n\xc1\x95\xcc\xd3?#\x17\x89@\x00R\xfb\xc0\xc6\x00\x03@\xd9H\x97@_[\x0b\xc1\xe8?(?\x10\xf3\x9d@y\xa1.\xc1\xab\xb1\xe6?\xc0\xa5\xa5@\xa3\xfb8\xc1\xc4X @\x95\xa1\xad@\xbb[-\xc1\x9c^w?\xe7\xd2\xed@\xb9s\xf1\xc0]\xfe\xf8@\x08e\xee@\x0f\x83\xdf\xc0;\x93\x0eA\xe3\xbd\x05Ak\x1b\x06\xc1)\x8f\xed@u\xf6\x07A\xf2O\r\xc1\x947\xd3@\xd9\xe0\x16A\x95\xd2\x0b\xc1)H\x05A\xa8\xd0\x11A,\xb9\n\xc1#\x04\x15A\xa8\xa9\x1fA\xbcj"\xc1G8\x02A\xe4\x18*Ar\xa9&\xc1f\xb5\x0fA\x7f\xe4)A\x92y&\xc1\x1a\xf8\xdb@\x8c\x08)A\xa3\xc35\xc1\xda^\xd4@\x04\xf9\x0cA\xe662\xc1\xbbv\x04A5i\x03AX\xfa3\xc1\xd4\xff\xeb@t\x15\x01AD$-\xc1\x06\x83\x10A\x83\x8c\x14AQ\xd9A\xc1M\x8e\x06A\x83\xf5(A\xb7\xdc\xf9\xc0c\x06\x02A\xaa\x0e(A\x8cU\xd8\xc0T \xee@w\xc8;A\xe3^\x02\xc1\xf4\xa1\rA\xb7\xe4\x18\xc1\xeb\xa3\xe8@\xcd\xbfXAN\x19*\xc1\x8fh\x02A[\xebHA\x10\xae1\xc1\x04\x8e\xfe@\xa3iXA\xdb %\xc1C\x9c\x13A)djAf\xae\x1f\xc1\xb6n\xc5@\xf3\xddxA\x14c\x18\xc1\x1d_\xc6@W\xaekA\xd2\xcd7\xc1\x87\xe4\xc8@\x80BzA3\x01?\xc1{\x1e\xbb@\xd3\xa2]Av\xc1@\xc1\xe3\x94\xba@.\x92iA\xdf\xe4:\xc1{=\xfa@\x9d\xcabA\xd7\xafJ\xc1F/\x00A\xed\xe1wA\x9e\xee7\xc16\xef\x07A\x0e\x81`A\xbd\x91\x1a\xc1:\n\x9e@H\xf9jA\xff\xf3\x19\xc1d\xcdx@\xb4|KA`\x86\x15\xc1E\xde\x9d@\x8f\x9dBA\x98\x92\x19\xc1\x94r\xb6@\n{@Ajn\r\xc1\xc5\xbdn@\xc3NBA3\xb0\x19\xc1\xb4#=@\xa2\x07(A;(\n\xc1G/y@\xacV"Ae\xc1\xfc\xc0kgK@\xbe\xf6$A\xaf\xea\x04\xc1\xfdW\x9e@\x8e\xe2\x1bA\x84^\x1f\xc1\xc6\xfa^@n>"A\x192-\xc1\x99N\x80@\xa8)\x1dAY\xd1"\xc1\x98\x12\x16@\x9a\xb3\x04A\x87\xa9\x1c\xc1\xa8\xe9x@,-\xf1@t\xb1\r\xc1/>b@\xcc\x00\xfa@0\x05*\xc1\x9b\xeb\x99@id\x05A\x16\xf76\xc1\x7f\xb8\xa1@V\xe5\xda@\x9f\xf3+\xc1\x95\xb0\x99@\xb0\x13LA\x86\x1f\xf2\xc0\xd8&R@\x16\x04RA{\xaa\xed\xc08\xc6\x03@\x9cmOA|\xec\xd2\xc0\x9c\xcd\x87@\xe3\xc8KAo\x8c\xd4\xc0*\x14\xa7@\xf8b\\A\xd8\xe1\xad\xc0Bk~@E\xb3VA\x9d\xd7\x9d\xc0N\x9eD@\xf9\xf9XA\xcc\xa1\x8e\xc0\xae\x83\xa5@\x0e\xcd[A*\xcb\x9e\xc0Q\x1e\xc6@DFGA\xbd\xe1\x85\xc0\xb5\xfa\xa5@\xc4\xfcbA{\x99d\xc0\xad\xe5\xa2@l\xf1sA:\xd5\xb7\xc0\xc7\xb3o@\xcd_~A\xfe\xc0\xa9\xc0\x84\x165@\xadw}A\xff\x7f\xd2\xc0\xde\x00\x92@\xda\xfduA}\xd0\xdc\xc0\x1b*\xad@+\x96\x8aA\x94P\xd8\xc0\xb9T\x90@\xd4\xb9\x8eA\xb8\xee\xba\xc0X\xb4\x8c@\xdd\xf9\x8eAl\x11\xe9\xc04K\xbb@o!\x97A\xc3\x17\xf7\xc0\xd2\xd4\xb9@\x16\xfe\x88A\xd0f\xff\xc0\xe4\x98\xc5@\xbb\xa5\x8eA\xc4\x12\xc5\xc0vM\xda@\x064\x94A\xa0\x03\xa5\xc0&\xce\xd2@n\xbb\x88A\xcf\xf9\xc9\xc0X\xfe\xf9@T\x98\x8dA\xed\x97\xf1\xc0\xc3\x91O@\xc9\x99\x96A\xcb\x02\xed\xc0\xad\x82.@\x99\xf1\x85A\xe8\x92\x06\xc1\xf5\xfa(@\x16}~A>0\t\xc1,AJ@\xe4\xfb\x86AT\x1a\x10\xc1\xf9\x08\xae?:\n\x8fAc\x1b\x14\xc12\x03\x97?\x1e\xa7\x81A\t\xfa&\xc1\xf6t\xab?\xd1\xcbqA(\xf0%\xc1(9\xb2?)\x84\x83AS\x032\xc1r\xec\x0e@\x7fp\x84A\x99\x00/\xc1^.\xe3>\x97\x81\x83AXo\x02\xc1\xf7\x07\x16>#\xdd\x81ACx\n\xc1`\x16\x83\xbfD\xed\x82A\xa8\x9d\xda\xc0e\xeeu>\x8f\x81\x81A\x0c\xa1\xce\xc0\xc5W\x97?i\xeb\x84A\xa2\x01\xbf\xc0\xea_r\xbf\xd0!\x84A\xfb\xd3\xcf\xc0\x19!\xf2\xbfb~{A\xa2|\x95\xc0^\xab{\xbf\x06\xd1\x80A\x1aYv\xc0\xbeu\xd5\xbf\xf5\x12yA\xcd\xd9\x87\xc0~LS=\xc3sdA.O\xa1\xc0\x8b\xd3\xbc\xbf\x0f\xc6_A\xfdH\xbb\xc0\xb3VJ\xbf\xf7\xefeA\xa9\xf2\xb2\xc0bJ\x1e\xc0\x93\xdcRA\xc9\x1dc\xc0\xd0\xaf\xbc\xbf&\\]A\x96\xfc*\xc0\x91\xa2<\xc0\xb6(QA(0\x03\xc0\xfdmZ\xc0I\xf7aA\x805]\xc0\xf6\xc7l\xc0[\x9alA\xe9\xc9\n\xc0\xbf\x0b-\xc0Wv\x90A\xc7n\xad\xc0\x92EY\xbf\'f\x94A\x03K\x96\xc0\'\x14\xd9\xbf\xf3Q\x97A\xef\xbc\xb7\xc0\x87\xbc\\>\xdf\xe2\x94A\x9dI\xd0\xc0\xda\xa5^?\xc9x\xa1A#\x13\xa2\xc0|\xb3\xf2>\x0f\x0f\xa2A\x18\x9b\x83\xc0^z\xbd\xbdW\xa7\xa1A\xe7O\x8f\xc0\xbd\xfd\xf4?\x97\x97\xa8A\r\ns\xc0z\xcd\x00@\xb4\xe8\xa2A\x1e\x8d\xab\xc0\xc6\xc5$@G\x81\x97A\xecfn\xc0\xa1\xf4\x12@\xdbi\x90Ad\xbd\x8c\xc0\xffT\r@\xd9\x8d\x95As\xa0<\xc0\x96\xd9\xc1?7 \x98A#\xdfJ\xc0]\xe8o@&U\x9cAT\xcf\x08\xc0\xf7\xbds@\xd6\x1b\x9dA1d{\xc0?\x86\x8c@8\r\x8dAl\xd4=\xc0~\xed\x89@\n\x05\x88A\xc1@x\xc0%\xf0\x84@c\xaf\x88A\xcbf\x0b\xc0\x93\x1ft@9F\x8dA\xc5\x0e.\xc0\x90\xd0\xb6@M\x91\x85A\xf8\xb38\xc0\x9e5\xc4@\xe7Q\x8eA?\x18\xd5\xbf\x0e\xe0\xba@\x94\xf8\x92A\xf3\x81U\xc0\x84@\xc5@\x16\xc3\xaaAs\x17\xbc\xc0E\x0c5>\n\xd6\xb3A\xed\x0c\xad\xc0G\xa3\x12>\xab\xa3\xa9A<\xbf\xe3\xc0\x881j\xbe8\x0f\xa3A\x80\xb5\xf3\xc0`\x08\xe2\xbe\x80,\xb2A\xa0\xac\xfe\xc0<\xd4G\xbf\x1d2\xb9AW)\xf9\xc0\xd4\x01B\xbe\xc6\xa1\xafA\x8c\xbf\x18\xc1\x9dc@\xbf\xe9\xe1\xb2A\xb6\x14 \xc1\x12\xb9i>|{\xb3A\xcf^!\xc1H|\xd1\xbf\xeb\xe3\xa3A0\x13 \xc1s\x92:\xbf\x05\xff\x9fA\x90\xee\x17\xc1\xc1\xd7\xd8=\xbc6\xa3A\xa2\xa51\xc1\xbb5+\xbf\x01-\x9dATl\x19\xc1\xc2}\xf1\xbf\x0e\xa1\x97A\xa5\x12(\xc1X9\x1d\xc0xF\x9cA\x8b\xfd\x05\xc1v\x7f\x11\xc0\xbdQ\xb6Awq\xee\xc0dj\x07\xc0\x03\xf3\xbfA\x1eu\xe7\xc0\x9f\x9f\x11\xc0pg\xafAG\x03\xe6\xc0\xb3#D\xc0\xfb\t\xa8A\x9f\xaf\xf2\xc0\x80\xc89\xc0\xa2J\xb1A\x0c9\xce\xc0uA\x89\xc0\x05\x95\xb9A\xd3\xee\xd1\xc0\xa8\x83\x8f\xc0+\xd6\xa9A\x01\xd8\xe2\xc0\x82\x85\xac\xc0n\x85\xa1A\x0b\xaf\xd4\xc0\x00\xa3\xa6\xc0\xb0\xd1\xaaAjf\x03\xc1\xf7\xa4\xaa\xc0\xe4p\xadAsg\xd6\xc0=\x0b\xc9\xc0m\xee\xafA\xc5\\\x9c\xc0\x93\x85\x86\xc0\x90\x9b\xafA\t\xc8\x84\xc0U\xf9\xa5\xc0\xbc\xdf\xafA\xf8m\x8d\xc0\xe0\x08;\xc0\xac\xbe\xb0ABv\xa3\xc0\xc7\x1e\x0c\xc0\xba\xf0\xb0AH\x97?\xc0\r\x96(\xc0\xb0\x86\xb7Ai\x1a+\xc0\xc90M\xc0\x02\xda\xb2Ag\xa49\xc0\x10D\xd1\xbf\xbfa\xa8A\x15?\x01\xc0\xd5\xf98\xc0\xdbH\xaaA\x06\x84O\xbfN\\H\xc0\xef~\x9eA\x01\x17\x1d\xc0\x15\xb09\xc09\x05\x9dA<\xc1Z\xc0.\xb0-\xc0\x11k\x95A\x0c\x90\xde\xbf\x14\xda_\xc0\x16\x13\x98A\xd5\xfe}\xbfw1\x85\xc0w1\x8dA\xcam\'\xc0\xaeM\x8b\xc0\xf1}\x88Ax\xa7N\xc0G,e\xc0\xb2H\x84AG\xe6\xde\xbf\x0fZ\xa5\xc0\xf1 \x87AJQ\x83\xbf\xde\x80\xbb\xc0\xd5(\x7fA\x06@\x99\xbf\xfal\x8e\xc0\xcbn\x7fA\x81\xc7\x17\xc0x\x03\xb8\xc0\xeen\x93Ab!n\xc0f\x83\xa6\xc0\xc6\xcb\x97A\xa4\xf5\x8d\xc0\x8e,\x91\xc0y]\x99A.\xf6I\xc0\xf0\xbb\xbb\xc0\x1a\x06\x8dA\x96\xed\x93\xc0\x87\xfc\xc5\xc0\x02\x8a\x84A?\xae\x96\xc0{=\xb9\xc0\xd8\x90\x91A\x1e\xb3\xb1\xc0\xca?\xc8\xc0\xb3\x05\x8dA\x9d\xb3\x84\xc0\xb8\x87\xe5\xc0?\xc9\x8fA\xac;}\xbf\x1c\x1f\x16\xc0j\xe6\x85A\xf3Of\xbf\xb8\x07\r\xc0\x8b\xbf\x95A3\xc3u\xbe\xc1Z\xb9\xbf\xe1\x95\x9dA\x1eP\xa2\xbe\x91\x08\xc2\xbf\xb8\x95\x90A\x98{)?\x02\x19\xf5\xbe!\r\x8aA\xb4cW=~\xd0W\xbd\xc3\x84\x97A\xe0j\xa2?\x95\xe1\x1d?HN\x93A\x9d\x89\xfb?\x9b\x03\x9d?\xfaS\x9eA\xb5b\xe9?\xf6\xd3\n>\x83\xcf\x9bA\xa1\x0cH>\xbf\x80\xc7?]\xa3\xa2AX\x1e-\xbf\x17\xf8\xa7?\xb2\xef\x97A?\xaf\xa4>\x8e16@"U\x9aA\xce\x15\xa0\xbe\x05[b@|k\x90AO]$?\xa9h=@\xebt\x8bAV\xae\xde?\xb5\xc3\xa5\xbf\x0cL\x90A\xc3\x00\n@\xb6>\x10\xc0eP\x81A\x8f\xaa\x04@\xb0hv\xbf/K}A\xc2\x1c\xeb?/\'/\xbdXsuA\xa8\x11?@\xce\xdb\xdb\xbf.\xd5wA/T8@_v2\xc0\xa2m]A\xc7\xf1*@\x90\x86\xa7\xbf;\xa4PA~\xebT@\xfd\xb9\xdf\xbfJ?XA)\xf3\x9d?\x9e\xb8\xe0\xbf@\xbd_A%c\x12?p\xf5x\xbf\xfe\xfc\\A\xc0\x15\x87?+\x1b6\xc0\xb5\xa3FA\x0c>\x8c?kM\xd5\xbf!MZA\xc1L7@\xbc_<>K\x99]A\xf1\xe4x@\xa5w\xe6>\r\xc8cA\xe7\xad\x12@l\x00W?\x97\xddIA\x0fc @\xc3\x8f\x03?\x10\xc1yA*\xd7\x8c@\xb4*\xc1\xbf\xd2\xbb\x81A\x90\xe4\x9b@\xa7W\x0b\xbf\x00[sAx\x7f\xa5@]\xf4$\xc0\n\xc7jA\x14\xb5\x98@r\xedT\xc0\xa8\x85vA}\x93\xd2@\xcb\x96,\xc0\xea\xe5\x83A\x8b\xcb\xda@@\x1b+\xc0\xcaanA\x1a\x11\xe5@2\xaf\x82\xc0G\x03uA`\xc7\x03As"\x81\xc0\xa4r\\A=\x9c\xe5@B\x87}\xc0\\\xa2tA\x12\xef\xd0@(\xb4\xac\xc0\xb4\x94xA\xf1\xba\xa8@\xff\xd6\xaf\xc0\xf2\x96rA\x07\n\xe7@\xca\xdb\xce\xc0\x8d\xb0jA\x87\x18\xea@\xd3\xec\xca\xbf\x08msA\xf4m\x02A\xa1\x9f]\xbf;\xd3UA!\x08\xdc@\xc0g\xac\xbf\xd2\x9cQAd<\xc3@\xee\xd0\xf8\xbf#aEA4\xf3\xea@\xb7\x97\xbf\xbe\xbaXMA\xac\x86\xf6@T\xf33A\x8e}\x03A>q\x86\xbf.\xdc$A\x8e"\x04A\x00}\xe8\xbe\x82<0A\xa3_\xf7@ \x97\xfd\xbf\x13\x95;Ai\xf8\x18A\xce-\xb3\xbfR~9Ag\xb6)A\x93\xc0\xe7\xbe\xcc\xf61AM\xb5&A\xf1\x04\x04?\xfdi@AAE>AvnA\xbf\xf4\x1c=A\xf7\xe4JAK\xeeY\xbd\xbc0IA\x14\x93BA\xb8\xd7\x02\xc0\xf5IPA\x89`VA\xee\xdb\x17\xc0\xd1\xb5JAO\xb1XA\xd2\xd0R\xc0\xf7gCA\xb0\x95\x1dA,\x89-\xc0\xf1\xa1BA\xd7 \x11A\xe3\x10a\xc0\xc0\xa6HA\xab\xde2A\xff\xae?\xc0\xeeBKA\xa6G6A\x06\x07\x7f\xc0\x12Q7Awk\xc7@B\x9d\x89>x\xca0A\x87-\xa8@z\x96\xaa\xbe\xf7\x132A\x14A\xcc@\x8a\xa0\xc8?\xbaW5A\xd3\x13\xe7@\xa8\x90\x06@\xe6!#A\x04\xc6\xb1@i\x81\x11@\xa7\x9d\x1cA\x8f \x9d@3[\xbf?\x8a(-A\xad\x9e\x9b@\xdf\xae^@\xee\xa13Ap,\xb2@w\xc6\x85@\x81\xda\x1cA6\xc3z@\x1c\x1c\x84@\xe86\x16A&\xc9L@M\xeeY@\xdf}\rA0\x92\x89@\xce\xb7\x90@)\xc8#A\xe90Z@\xf0\xdd\x9f@\x1a\x85?A\xf0\xd3{@\xb9C;@\xba\xb3JA\x94(\x92@\x94\xce\x18@\xd5\xae9A\xa6\xb4J@\x82\xc9\x0b@+\xb3HA2\xe7^@\xf2\'n@\x9d\xdc\x11A\x89\xd7\xd2@k\xb82@m\xbb\x17A"\xdb\xf2@\x8f\x04\\@sM\xfc@\xcc6\xce@2\xea\x18@K\xab\xf5@\xb1\x9c\xb3@\xd3>\xfa?\x0c\xe1\xd6@\x9c\xe7\xeb@\xef\xaf\'@\xcb\x01\xe1@N\xf6\x05A\xa3\xf36@k\x03\xbe@\x06\x80\xf0@\x9bS\xa1?J\xc4\xa5@\xa7\x12\x05A\xe3\x1a\xcc?\x9b\xfd\xaf@\xf0\x8f\xd0@\xa8~\x82?d\x11\xda@xb\x00A\xa1\xee\x9a=\xba \xf2@\x9d,\xe8@\xcc\xe7B\xbe\xfe\\\xbd@\xe7\xd6\x05A\xa1\x8f\x88\xbf\xe9\x0f\xa9@y\x04\x14A\xa8\x9bL\xbf%\x1e\xaf@\x13\x8f\xee@MQ\xc0\xbf\x9b+\xcf@\x05g\rA\x82A\xfc\xbf4\x0e\xf7@\x06P\x14A\xe2\x96\xc5>\'\xb7\x05A<\x95\x16A#0\x0c\xbfQ\xa7\x05A\x97[\x12AWs\xac?\xca\r\xe3@\x91\xf0#A9\x03\x15?Fr\xb8@\xf3\xbf\xd8@\xc9\x9eh@\x04\x88\xab@\xa8\xb4\xb3@i\xd6\\@\xf3\x9d\xaf@\x1a\x1f\xee@\xd7\xc9\x97@\x1c\xc6\xba@g\x10\x06A\xa7\x03\x9d@\xfb"\x8f@\t\xd5\xdc@\xd0\xb1\xb4@\xb5\xf2{@j\x16\xc3@M\xc0\xa7@\xde\xce\xa3@\xe6\xa8\xd3@\x8a\xbf\xe1@\xe7\x08\xb1@\xa45\xf3@\xc8\x07\xee@tG\xc0@\xd9\xc2\xbf@M)\xd9@\xe7\\\x87@\xe6+\xbf@\xbeh\x02A!\x04\x81@-\x14\x9e@\x92y\xff@b^Q@\x17-\xd0@\x10\xb1\x03AH\x8c\x9a@\xb83\xc1@\x93\xcd\x18A\x98m\xc0@\xdej\xcc@Q\x90\x1aA\xb6j\x82@\xedW\xbd@\xd9F(A\xf6\x8dY@\x93S\x00A\\?\xbc@k\x86m@\xd2\xdb\x12AZ\xbc\xb8@+w\r@\x8dd\xf2@\xba\xff\xc8@\x02@\n@\x9c\xed\xd6@\r\xb0\xd6@\xef\xaf\x83?\x1d\xee\x06A\xec\x1c\xc9@\x11\xf3\x9f?\x0c\xc9\x17Am9\xc7@\xad\xe2\x88=\x82\xe9\xfd@\x04\xb2\xa4@\xc5\xd8L\xbfV\x9c\tA_\xbb\xa2@v\xb8\xc4\xbeJ\xbc\xdd@\xdc\xb2\xab@\\\x9b;?A\x88\xff@\n/y@\x80\xae\xbd?\xa9\x11\xdb@!eb@\x8fs\xc5?\x11\xf3\xbf@\x01\n\x87@\x80\x8f\x10@\x1b\xed\xd8@S\xd5\x15@\xc1Y=@\xac\xfc\xbd@A\xb9\x05@\x13Z\x13@\xc6m\xfe@\xdc\x7f\xc3?\xda\xeb6@\x1fK\xff@G\xfc\x10?g\xff\x15?\x1e\xbd\x0fAP\xc2<@\x0f\x1a\xe5\xbc_e\x1dA\x0cRH@\x1eg\xb2?\xabL\x10A/\x93\xec?Q\x17\xa3?\x8c\xaf\x1dA\xc6\xb4\x8c?7\xfe\xc0>y\x1e\x04A6V\xf3@r\x94\x07\xbe}\xf3\xe5@\x06&\xfd@\\\xb8\x9d>\xa8\xee\x15A\x92\x1a\x06A\xab@w?S\xce"Ak\xb1\x02A-\xc6\xb6\xbe\xa7\xe6\x14A;y\x1aAS\xa1,\xbe\x019\x06A}6"A\xbc:Y>\x1b\xcb\'A\xec\xfe\'AQ\xc1\xb6\xbe\xab\xa8)A\xd2S7A\xe3@U>\x8cI6A\x94\xf6\x1eA)\xe0\xd2?\x08\xa3!A\xa3\xfe-A\x1dF\xef?\xeae\x19A\'\xe4?Aq\xdd\x1f@\xd6\xab A\xb4\xea\x1eA\xeb\x8a\xf5\xbf#\xb2\x15A\x0c\xd5\x18A`\xdb(\xc0\x9b\xfe%A\xda\xcb\x1aA~\x7f\x1f\xc0\x1e\x1e\x02A>\x90\x19A\xa1\xa1\xf2\xbfI1\xeb@5\t\x16A\x9fvv\xc0\x9c$\xfc@\xe1\xea\x1fAY\xb4\x8a\xc0*N\x0cA#\xe0%A9<\x9a\xc0\x98\x0b\xe8@\xc8\x13\x10A\x0e\x8d\x85\xc0\xa2q\xcd@\xac\x16\tA\xd0C\xc5\xc0g\x15\xda@\xbdp\x1aAI4\xd7\xc0tX\xc3@\xce\xa5\x10A\x04)\xda\xc0}\x1b\xf6@\xc8\x8b\x1fAgG\xbd\xc0\x15\xd8\xc4@!0(A\xe2\xc6\xa0\xc0\x9e\xca\x06A|\x9b\xfc@z\x1b\x84\xc0\xa7\xef\nA\xc07\xe8@\x99\x9b\xa8\xc0\x066\x15A\xfd\xa7\x06A\x81\x99\xb9\xc0\x04\xcd\xff@%\xa3\xe8@h\x93u\xc0\xd9\xbf\xe0@M)4A\xde\xfbb\xc01\xe2\xba@8{2A%\xa8\x88\xc0\n\x12\xf0@\xf0\xe7FA\x0b`\x92\xc0\xf8\x10\x0fA\x84\xabLA\xeaJ\xb6\xc0\xa3-\x12A\xcfsMA\xa9\xaf\x80\xc0\x9b\xd5\x19A\xc3\x86AA\xfeX\x86\xc0j\xed\xd3@\rDYAmJM\xc0U\xe1\xc3@K|WA\xf3\x84\x8c\xc0\xb3\xec\xf4@\xf29lA\x87\xfft\xc0\xe2\xb9\xe6@\xcbazA\xa0S\xae\xc0\x86\x0e\xf9@(PqAa\'\x80\xc0=\xb9\x0fAf\xc4bA\x0e\x97\x8d\xc0\x82\xc2\x1bA\xa7\xe9mA\xc4\x0e9\xc0\xa1\x87\x13A\x97obA\xa3\xf2\xa9\xc0\x13\xe9\xaf@\xcb\xb8YA\xbc\x0f\xc7\xc0\xf1@\xaf@\xb1\xe0KA\xf6\xdc\xa8\xc0D+\x92@2\xb9hA\xfe\xc9\x90\xc0\xe3}\x92@\x9a&sA\xf0A\xbd\xc0\xa0\x94P@!\x92fA\xff5\xb6\xc0\x8aX=@\x93\xd1VA\x1dk\xa7\xc0\xda\x9a\x13@{\xeauA\x87)\xb7\xc0\xc3\x1d\xa6?\xe7\xb8qA\x0e\xe6\xb0\xc0\xa7\x90*@hi\x83A\xa6\x95o\xc0\xfeI\x12@,\xderA\xf5fV\xc0\x16C\xa3?\xefKgA\x15!B\xc0YXM@\xfcRyA\x1a\xf1\xee\xc0^\xc0X@i#hA\xab_\x04\xc1\xbe\xa1\x1e@\xfa\xdebA&\xb8\xfd\xc0\xec\x1e\x92@\xea\x8coA\x98\x15\xea\xc0?\xbc\xaa@V\x8fpAH\t\x15\xc1T\x07\x9d@\xfa\x91rA\x07b\x1e\xc1\x9d\xb4\x81@\xeb\xb8uA\x8a\xed\x19\xc1\x1fo\xba@\xe5\xd4\x82A\xd9\x88\x16\xc1\xac\xc9\xa5@\x0b\x07\x8aA|8+\xc1\x11\x0b\xc1@\xedK\x83A\xea\xd2\n\xc1\n\xde\xe4@w\xe3\x84AE\x88\xf5\xc0\xcf[\xd6@\x05\x9d\x85A\x0cx\x10\xc1\xc0\xc2\xf6@\xc2\x9e\x8cA\x85\xe5\x0c\xc1#\r\x01A\x93\xeeuA\xc4G\xfb\xc0\xda\xa3\xff@\xe3CiA8\xad\x1b\xc1:G\x0eA\x80LsA\xafV\x1e\xc1\xc0\xcb\xac@\xb8\xcf\\A\x89\xdd.\xc1\x15\x8b\x9d@A\xbfUAB\xb0\x12\xc1\xec\xc3\xc9@\x92\x01QA\xd6R\x08\xc1i\x16\xdd@\x81\xddWA-\x00\x1b\xc1\xdd_\xd3@/m;A\xa0\xfc\x13\xc1_L\nAU*FA\x16K\x14\xc1\x08\x9f\rA\xecu$A~\x18\r\xc1\xbb\xff\x04A\xfeN\x17A?h,\xc1\xb4\xfa\x12A\x80\xb2\x1fAM\xbf3\xc1\xf8\xdc\x18A\xdap.A\xf4\x803\xc1"=\x03AI\xdb\x1bA\xa6\xfe*\xc1z\xa5\x1dA\xff\xf6\x10A\xe9k\x06\xc1\xde\xfd!A\x89\xb9&A\\!\xeb\xc0\x10\xca\x1cA7\xfd(A\x87\xb2\x0b\xc1b^,A\x83\xa14AJ[\x05\xc1\t\xe7,Ai;\x19Ac\xfb\x14\xc1\xdc>\xb3@_j+AZ\xdd\x1f\xc1\x9f\x8f\xb2@J\x01\x1bA\xbf\xe9\x06\xc1\xed\x92\x95@n\x9e0A\xab\x00\xf9\xc0\xf6\xfd\x9c@\xe2\xaal\xb7"A\\\xb7\xc9\xc0q<\x18?W\x1d#A\xa0\xb6\xba\xc0\x88LF@\xc9\xe9#AN(\x9e\xc0t\x0f @\x85M*A\x8b\xc4\xb9\xc0Y\x1c}@\xb9\xbb-AS\x88\xae\xc0\x95\x9aV@Z7\x0cA\x91\x8b\xc9\xc0\xe3Vu@\x1eL\x04A\x0c\xf6\xa0\xc0H\xe6\x1d@W\xf7\x03A\xd7\x05\x93\xc0\'~\x81@\xf3\xe3\x0cA\xc9\xf7\x19\xc1i\xd6)@R)$A\xc7\xbe\x1f\xc1p\x80\r@@\x13\x13A\x12\xb0#\xc1\x08\xa8\x1e@\xc0\xa67A^B\x1c\xc1\x11b2@\xe5\xf0DA\xb7I8\xc1=\x19\xf3?S\xf89A\x8d\x898\xc1@\xfb]?\xec35AO\x0cB\xc1;\x7f\xf0?A\x8eOA\xf7^E\xc1\xc1U;@"UVA\xc3\x8cW\xc1\xcd\xe7\x81?\x98\x94PA&\xebT\xc1M^\x98=geGAn\xe9d\xc1BA\xcc?/\xfbHA%{X\xc1t\xc3T?&_bA\x9b_1\xc1\xed\xbc\x8e?KH^A\x9c5#\xc1P\xd4\xdf?.;bA\xaa\xdc*\xc1\xcbz:>\x86\x7fXA\x90\x958\xc1^\xfb[?M\xdenA\x05\x19I\xc1\xef\xfc!@@\xa4+A\xee\xecQ\xc14\xa4\xef?*\x04\x1eA\xde\xfbL\xc1\xa0\xadr@\x80M/A2\x10H\xc1s\x8b\x83@\xa28>A\xa7\x02[\xc1\xf9t\x95@\x06Z!AR\xcbj\xc1qh\x88@\x88\x94%A\xaf\x17X\xc1E\xf8\xc3@v\xff(Ae\xbdI\xc18\x1c\xd5@m\xfa#A\x85tY\xc16\xe4\xc7@\x04\x1d;A\xc9\xf5j\xc1\x9d\xb2\xdd@\xd1\xd6\x1fA\xe2{}\xc1o\xdc\xdc@m\xa2(AN\x19g\xc1\xd8\xed\xfa@\x92\x0c\x13A\xc5iW\xc1\xfbM\x8d@\x7f\xeb\x08A\xb3tf\xc1Ke\x82@\x7f_\xfa@\x88hC\xc1\x8d\xd4\x94@R\xb7\xff@\xf5\x946\xc1\xbe\x1b\xa4@\x7f5\x06As\xce=\xc17\x18\x8a@\x9c\x8f\xd4@p\xc1I\xc1\xa7\x0b\x9b@#\x08\xc0@w\x8f\'\xc1!\xe3\x9d@I\xe3\xc7@\xc08"\xc1\xcf\xbf\x8f@\xf08\xa9@`\xf2\x19\xc1\xecc\x94@\xa4\x19\xdb@\x05{(\xc1\xba\x7f\xce@W\xe6\xbb@\xce%6\xc1\xe4\xac\xd3@\xf7\xbf\xa4@R\x80\x1a\xc1]\xe4\xd4@\xaa1\xa8@\x19N)\xc1\x0c\x18\xef@\x9f\x08\xe1@\xbd\xba\x1e\xc1A\x8e\xe6@\xb8\xa2\xfd@v\x0c9\xc1\xc80\xf2@\x95\x03\xf0@\xc3\xc7&\xc1\xe4\xd5\x0cA\x9f`\xd0@\x18\t5\xc1\xe5+\x15A\x91(\xca@\xef\x18\x14\xc1Yl\x17A\x128\xc9@a\xa4\x01\xc1\x9a\x98\x0eA\x97\x19\xcf@Tr\xfe\xc0\xf7i\xfe@iF\xd7@q\xd5\xea\xc0G]\x17A\x90{\xc3@/\x16\x16\xc15\x91+An\x87\xb9@\xabm#\xc1\x92\xb84Aq\xfb\xb9@}\x15\x08\xc1k\x861A\x00\xc6\xb0@J\x88@\xc1I\xa16@E6\xc6@\x8d\xdc?\xc1+\r)@\xa7\x10\x9e@\xd5\xc4B\xc1V\x1d\xee?\xa5\x89\xe3@Z\xc6A\xc1\xaa\x99\r@\xa4_\x01AHsI\xc1pc\n?/\xc2\xd7@`\x17I\xc1\xeb\xab\xb2>\x89 \xb7@\xb4\xe2;\xc1\x8f0\x18\xbf\x90B\xee@\xbdG=\xc1\xa9/\x01\xbf}F\x08A\xa5WD\xc17\xdd\xf9\xbf\xd6I\xdf@\xc1&D\xc1c\xfd\x01\xc0\xcdX\xbb@\n\xc5T\xc1\x9e\xa7\x03\xc0\xfb\x90\xeb@\x13\xcf:\xc1m\xf11\xc0^\x8b\xeb@c\x80$\xc1nG\xe9\xbeY\xfb\xe0@lB\x1f\xc1V]!?uK\xe3@\xd3\xd7$\xc17\rA\xbfr\n\xbe@>\x95\x14\xc1&\x94\xa6\xbf\xcf\xe2\xf8@\xfa\xf0\x17\xc1AY\x17\xc0\x92_\xf2@\xcb~\x14\xc19x\x8a\xbf3C\rA+\xb2\x03\xc1\x83\xab\x93\xbf\x8e\r\xef@\xb8Fb\xc1\x02\xbc\xb5>\x8b\xbe\xdd@\x06`l\xc1qo\x86\xbe]e\xc2@\xa0\x94m\xc1H\xf3h?\xe6J\xfe@\x84ye\xc1;y\xb4?g9\nA\xe0!\x82\xc1\x99{)?\xf7\xb5\x02ABA\x84\xc1\x12\xdb\xb8\xbe\xd1\x18\xff@\x91\xba\x85\xc1(\n8?\xaf\xc9\x19A\x1cQ\x8e\xc1s\xbf\xd2>P\x97\x19A\xeaZ\x7f\xc1Qz\xbc\xbe\xe8\x84%A\xafLn\xc1\xac\x9d\x9f\xbeD\xa4 A`\x7f\x82\xc1\xdd\xde\xb8\xbff9"A\xa3\x1a\x80\xc1\xce\x9a4\xbe2\x1d7A*\xcd\x84\xc1_\xa6\n@\xecO#AU\xa1w\xc1L\xee\x11@\x91\xa7%A\xc1h\x87\xc1\xd9\x12\x17@\xbe\x933A\x97\xdb\x87\xc1\xdao9@\x07h\x17A\xfa\xed\x88\xc1`\x88\xac?\xc9\x0f\xe3@\xc7s\x8f\xc1t\x1f,?\x92:\xce@\xe1c\x87\xc1\xf40(@\xc4\xca\xd7@\x84v\x82\xc1\xa2\x9aQ@Sd\xe6@s1\x8c\xc1\x84\xf1K@/\x8e\xaf@B\x95\x8b\xc1\x94\xdd\x87@KN\xb3@\xe4\x06\x94\xc1\xf0\xcb:@\xceo\xa9@m\x95\x86\xc1\x8a7>@h\xe8\x85@]\xf8\x85\xc1\xfc\x81{@\xec\xe8Y@\xef\xca\x82\xc1\x86?\xd9?\x81\xfb}@\x96\xf2\x82\xc1n1\x86?\xac|\x96@\x98\x1cz\xc1L\x1a\xa2?\xb0|0@\xd3\x86t\xc1\xc7\xc9\x08@\xfd\xa5\x12@6+g\xc1\t\xd1\xac>Y\xf1<@\xd6\xbbl\xc1me\x08\xbfw\xe2b@$\x8b[\xc1B\xabj?5\xe7d@-\xb5Z\xc1\x85\xfe\xb3\xbd\xd39\xd5?M\x9ad\xc1\xfcZ\xd7>\xd8\xd2\\?\xcb\x9f]\xc1\x00l\x96\xbf\xe5\xdd\xc2?\xdb\xd5C\xc1\xa7~\xb0>\xe3.\xcf?\x03\x0bD\xc1\x9c\xef\xb1?\x0fk\xfe?O\x92<\xc1\xb3\xdb\xbd>\x97i\x1c?z$7\xc1\xfb\xf2\x0e\xbf\xda\x16\x1a@\\\xf28\xc1\xd2\xc6\xc6\xbf\xde\x1e\x17@\x94P#\xc1\x08\x7f"\xbe\xe2\x80=@\x08f\x1e\xc1\xf5H\x8c?D\x98D@$]+\xc1\xd9\xc6\xdf?\x0b\xe0>@\xe9N\x0f\xc1\xd1\xfa\x9f?^\xd3R@O/\x17\xc1\xc3N\x8d\xbf\xbf\x87_@.\xad\t\xc1%\xa9<\xbf4\x8by@\x1ep\x1e\xc1\x06\xb5\xf8\xbf\x1b\xc2k@\xc2\x9a\x85\xc1\x8b\x00:?`\xbf\xdd?\xcdF\x87\xc1x{\x05\xbf\t\xc8\xd0?\x98#\x8b\xc1\xe7\xe1\xd4?c\xd6\x83?5\xa9\x88\xc1\xb7f\'@+\x80\x86?9 \x94\xc1\x9a%\xaa?\xb8sJ>[q\x98\xc1\xd5j\x03?\xba^+?d\xb0\x9c\xc1\x90\x0e!@\xe3!\xf7=\xf4\xd7\xa2\xc1\xb3v\x19@\x07\x803\xbf\xb9\xa6\x97\xc1d\x8d[@\x9e\r{\xbd\x014\xa3\xc1\x94\x964@\rI\xad?\x14n\xa6\xc1;\x07v@b\xae\xa9?`\x06\x9e\xc1*\xed8@8O\x0c@?\xa0\xac\xc1\xb8\x9a\xe9?*{\xd1?\xfal\xac\xc14\x99\xda?\xec\xf1.@\xf3\xdf\xa9\xc1G\xffW?\xca;\x92?\x9c\xd8\xb6\xc1T\xbe\x1c@\x1cT\x88?\x06\xcf\xb7\xc1\xe5\x0f^@\xd0\x98\x80?\t\xe1\xbf\xc1\x856\xe4?\x98\x1cs?\x13\x86\xc1\xc1-\xce\xfe>\x85\x99}?\xf5\xba\xba\xc1\xd0\x7f\xa0<\xeb>d?\xdd\xb0\xc8\xc1\xa8\xb2(>\x93\x983?\x90\xea\xc8\xc1\xfa\xa8 @\x99\xc3O?\xe4\xe5\xcf\xc1\xbf\x08\r@W\x08\x90?\xbd\xa2\xc7\xc1\x18\x94]@\x8f\xda\x95?t\x13\x90\xc1_\xfe\x89?\xf8\x91\x9b\xbf\xd4\xbf\x8c\xc1p\xcd\xfd?\xd5r\xf3\xbf\xa4>\x8f\xc1E\x98M\xbe:\x07\xce\xbf\x9cb\x92\xc1\xe5\xf1_\xbfS\x93\x80\xbf\xec\xf2\x8a\xc1\nw\r\xbf\xe9f6\xc0\x00\xd7\x88\xc1\xae2z>\xcd\xc3X\xc0*\xc1\x80\xc1\xb9\x9e\xae\xbfNK4\xc0\xd5\xc5z\xc1\xcc\xd8\xce\xbf\xbc\xd0s\xc0\xe1yq\xc1\xdd\xb3\x00\xbfU\xc0\xff\xbf\xc6\x19t\xc1\xaf\xbf\x12?{\x1c\r\xc0\x9c\x00a\xc1>\xcbU\xbfNC\x17\xc0\x99\x16t\xc1\xa0\xb3O\xbf\xf6\rt\xbf\xc2\x97\x82\xc1W\x800\xc0\xcf0\x11\xc0a%\x86\xc1\xc8\xcdU\xc0\xcf\xadK\xc0aT\x87\xc1(\xc4,\xc0\x9ap\xa6\xbfE\xe3u\xc1\xefiM\xc0\x11\xb5\x08\xc0 \xb9\x92\xc1i\xb7\xae\xbf( l\xc0t\xac\x99\xc1\xc1\xa0\xfc\xbf\xe5\xe8M\xc0\xfd\xb4\x91\xc1\xe4\xf1\xb2\xbf\xf7\xf0\xa0\xc0L\xb9\x8c\xc1OV%\xbf\xb3^\xac\xc0\xd6i\x97\xc1*\xbc\x17\xc02z\xb9\xc0%\xef\x9e\xc1\x12\x10,\xc0\x7f\xa8\xaa\xc0?\x16\x9c\xc1i\xd9\xe9\xbf\x97B\xe3\xc0p\x1c\x95\xc1\x81\xbf\xc9\xbf\xa5]\xf7\xc0\xe8\xf0\xa0\xc1,\']\xbf[\xc2\xdb\xc0-;\xa4\xc1\xcf\x7fA\xc0o\x82\x13\xc1e<\xa1\xc1\xab\xfc\x19\xc0\x11~\x1f\xc1\xc4\x1e\xa3\xc1\x11\x134\xc0\xfc\x1b\xfa\xc0\x95F\xac\xc1\xa9\xb9{\xc0\xc0*\x17\xc1|\xfd\xae\xc18*\x7f\xc0\x0cV\'\xc1\xa6\xa3\xb0\xc1}S\x8a\xc0\xc2G\x04\xc1\xb4\xba\xaa\xc1rih\xc0(\x8b\xe9\xc0\'\xbd\xac\xc1\x17\tj\xc0P\xfd\xc7\xc0)\x87\x90\xc1\xc9\x9cc\xc0\xddM\xc4\xc0im\x87\xc1\x84\x01S\xc0\x97\x96\xd4\xc0\x06\xfa\x92\xc1m-\x98\xc0\x9c\xd7\xb7\xc0\xdc@\x99\xc1\xd12\x9d\xc0\xeb4\xa4\xc0\x17\x0b\x8c\xc1\xe6\x93\xbb\xc0\x00}\xb4\xc0\x91\x86\x84\xc1h\x11\xb1\xc0d]\xa7\xc0\xce\xc0\x90\xc1/(\xe0\xc0)\x92\x9a\xc0\x0e\xa4\x97\xc1oa\xeb\xc0_v\xab\xc0*\xb6\x93\xc1q\x1a\xd2\xc0s\xe2v\xc06\xb1\x8a\xc1\xa1\xbc\xf8\xc0\xeaW\x95\xc0\xfd\x01\x88\xc1\xa0\xd9\xca\xc0\xf0\xe3\xe0\xc0\x11z{\xc1\xf7\x87\xcf\xc0\x1e\xa5\xe5\xc0\xaf\xe2\x8d\xc1\xf2\x8c\xcf\xc0Eh\x02\xc1+\xbc\x99\xc1F\x99\xc8\xc0\x90\xd5\x02\xc1Hh\x9b\xc1\x19\xba\xa6\xc0\x92\x9b\x03\xc1\xc2\xa8\x9e\xc1.m\xd4\xc0\xc9R\xea\xc0\x1e\x99\x89\xc1$^\xdc\xc0\xe1\x04\x17\xc1m1\x84\xc1%b\xf8\xc0])\x14\xc1\x90\xd9\x93\xc1N9\xdf\xc0\x84\x0f%\xc1\x8eU\x93\xc1\x03p\x00\xc1\x96\x10-\xc1:\x06\x95\xc1"\xe2\xc5\xc0\x8eO1\xc1d{\x9d\xc1\x1e\xc6\xe0\xc0d\xf9\x15\xc1\xc1-\xa5\xc1\xedm\xd4\xc0\xd6H\x1c\xc1U\x94\x9f\xc1\x8f\x9b\x01\xc1f9\x11\xc1\x9b*\x82\xc1\xd3}\xbd\xc0n&"\xc1\x9d\x01x\xc1\x9d\xf5\xca\xc0\x01\xe9.\xc1\xdb\x16\x83\xc1\x88\xb0\x93\xc0b\xcc\x1d\xc1P\xa6\x88\xc1{\xdf\x89\xc0~\x04\x13\xc1\xe6\x00|\xc1\x05(a\xc04\xf4)\xc1r6t\xc1kFx\xc0\x12z8\xc1>\xe2\x86\xc1\xde\xbd"\xc0\xed\xdd1\xc1\xdeU\x8d\xc1\xcazH\xc0\xb7\xa78\xc1\xb8J\x83\xc1\xbb(\xf8\xbf!#?\xc1\x8f\xe4\x8b\xc1\xe0\x8f\xda\xbf\xd7c"\xc1\x19X\x93\xc1\xcb\x9b\xc5\xbf\x02\xf1%\xc16\xdei\xc1^\xaa8\xc0 >\x1d\xc1=\xf1V\xc1GUF\xc0\xaeI"\xc1}\xa3o\xc1\xc0Z\x16\xc0\x974\n\xc1\xc8\xa8~\xc1\x80[\x1e\xc0\xa1\x9b\x06\xc1\xa3\ra\xc1\x98\xf7\xf3\xbf\xea\xfd\xf2\xc0\xd9kP\xc1;\xca\x07\xc0\'\xc3\xfc\xc0~qg\xc1I\xf8\x18\xc0>\x1a\xd6\xc0\x97\x00a\xc1HY\xf0\xbe@\xc1\xe8\xc0\x9beP\xc1#\x05\xb9\xbd\x94L\xd8\xc0\x06\xa0q\xc1\xb7\xf9\xae>g\x1d\xf4\xc0&\xd3~\xc1\xdb(\xd5\xbdky\x01\xc1YRq\xc1\xa7\xa4\xe0?\xe8\xe5\xea\xc0\xe3Ga\xc1\xe2\x84\x07@\xc6\x14\xf1\xc0[x\x80\xc1\xa8\xbc#@`n\x03\xc1\x1cj|\xc1gJh@\xa9\r\x00\xc1$\xe0\x88\xc1\xc0\xae\x19@r}\xfc\xc0\xe2\x88{\xc1\xd8~\x17@\x0f\x1d\x1b\xc1\x9dK~\xc1|\x1b\xaa?\x88\xb1\x1f\xc1\xfdGj\xc11\xfe\x1f@r\xac\x1d\xc1\\E\x83\xc1F,X@\x1c\xd3*\xc1,s\x80\xc1D\xa9S@\x02\xe5:\xc1\xf8`\x82\xc1\x0bM\x8d@\x1c{%\xc1\x10\x1d\x8f\xc1m1G@\xf5\xaa*\xc1o\xaf\x93\xc1\xc71o@\x84\xb9 \xc1_W\x94\xc1kP\x15@\x10O8\xc1K,\x91\xc1\xae\xbe\x8f?Y\x83?\xc1O\xdc\x8c\xc1\xf4\xdd\x07?446\xc1,H\x97\xc1\x8d\r)?/\xaeF\xc1\xf0\x91\x9e\xc1\xcc\xee!@\xa5\xf1;\xc1\xe1v\xa2\xc1];L@tl2\xc1\xa9\x93\xa2\xc1Y\\\xdc?\xfa:@\xc1i\x9ev\xc1b`\xfb?\x1f\xd3\xb8\xc0|\xd1\x80\xc1"\x8e\x9f?Uh\xa4\xc0\xf6~l\xc1?bA@\x1d9\xa4\xc0\xbfXb\xc1\xd1\xcc_@\x1d\xe2\xb6\xc0\x8b8l\xc1\xe1kG@\x8b\xa2l\xc0\xa2gw\xc14\xa8\x1e@\xe0\x83S\xc0}\xb5U\xc1\x03j,@\x0b\x10J\xc0\xd9KS\xc1#L\xd6?\xd5V^\xc0\x13}D\xc1\xb0\xbd\\@-g{\xc0\r\x1cE\xc1\xbb\x9a\x8f@\x9ews\xc0KVE\xc1W\xbbO@[\x05\xa0\xc0\x16\xe54\xc1\xfe\xacD@~\x9ad\xc0WZS\xc1\xe8j7@\xa7p\xd8\xbf\'\x9da\xc1\xe6V\x1a@\xe5-\x9a\xbf\xd4\x04R\xc1\x19\x12z@c\xe3\xa7\xbf\xb3\xf0E\xc1\xbd\xb5\x12@\xba#\x9f\xbf\x1d\x98r\xc1\x9f\x8b\x90@\x07\x1aI\xc0)\xf1h\xc1\xe1\xe4\xb0@\x0f!c\xc0}\x1a\x81\xc1O\r\x91@\xb3\xc4\x0f\xc0\xee\x14\x85\xc1\x8a\x85l@]\xfc\xf4\xbf\xf10\x85\xc1\x7f\xcf\xb8@\xf8\xfb\xda\xbf\xd9,\x80\xc1\x99\xcb\xd2@\x08(\x00\xc0\xbd>\x91\xc1p\x91\xbd@\xdbz\x05\xc0^\xbc\x93\xc1>M\xde@\xe8z\xe0\xbf4|\x96\xc1\xaf\xcf\xa4@%$\xd2\xbfZ\x08\x93\xc1\x1f\xcc\xbb@\xfd0e\xc0\xd0\t\x96\xc1S~\x93@,\x83\x82\xc0b\xb2\x98\xc1\xa4Y{@\xee\x0bW\xc0\x15E\x97\xc1!\x91\x8d@\xe90\xae\xc0_8\x9a\xc1\xb6\xaf^@\xb5\xf7\xbb\xc0\xdf8\x94\xc1l!\xae@7>\xcb\xc0Z\x1b\x94\xc1\x9fI\xa6@|\x8a\xf7\xc06\x96\x97\xc1\xc7g\x89@\x14i\xfd\xc0\xebc\x90\xc1)\xe1\xdd@\x08\xd8\x8d\xc0\xf7\x11\x8f\xc1$\x9b\xfc@\x9d*\x80\xc0\xef \x90\xc1\x8f\x01\xd4@\x98\xe0\xba\xc0\xa9\xd9\x8d\xc1\xbc)\xec@\x9f\xdc\xd1\xc0k`\x84\xc1\x13\x9d\xb4@Lu:\xbe!B\x86\xc1\xf6\x0f\x94@Lp\xbd>\x15\xad\x81\xc1\xbd\x17\xd8@-\xc1\xd9>\xed\xc3~\xc1\xa9\xae\xf1@]*\x0f\xbe\xd5\x8b\x80\xc1\xa4I\xdc@T\x83\xed?t\x03\x83\xc1z\xd8\xbe@:\xe8\x11@w.j\xc1Gh\xe2@\x87d\x18@<2i\xc1\xf8\xf5\xee@g\x99X@O\x8ba\xc1\x1a}\xf9@\xc2J\xe3?\xd5\x01c\xc1\t\x05\x96@\x9d\xcfI@R\xa7o\xc1\xcc\xba\x8f@.\xdce@\\\xed^\xc1\x9a+\xba@\x9e\x8c\x15@\x0f9S\xc1\xd4\x81r@\xd7D4@\xda@S\xc1\xaf91@1\xa2B@\x1aAF\xc1>}\x85@@A\xf3?b\x84M\xc1\x8c\xf9\xad@\xe5\xfe\xcb?\xf6\xfeD\xc1\xb1\xb1\xc0@Y\xdbV?\xdb\xab\x87\xc1^\xcf\xfe@a\xc9!@\xcb\xb0\x83\xc1F`\x10A\xecu<@\xbe\xbb\x91\xc1\xc4l\xf4@D\x182@\xe0\x11\x94\xc1\xb1\x10\xd7@O\xf6 @\xed\xe0\x9a\xc1\xe3\x03\x07A\xeb[Q@7<\x9d\xc1k\x8c\rA3\x13\x14@p\x90\x88\xc1xnJAm@\x98\xbd\x81\xb0v\xc1\x1d\x979A9\xec=\xbf\x87\xcaz\xc1\xef\x07;A\xe16\xe6\xbf5gp\xc1\x97\xd4)A\xe1u<\xbf\x05ed\xc1o\x95HAV{\xf7\xbe*\xb4Q\xc1fPDA\xf8%3\xbfw\x9eh\xc1:\xb4\\A\x83\xc3\xa4\xbdYl\\\xc1\xc1\xcdgAM\xb94\xbd\x05\x8aw\xc1\xd3:bA@\xd5\xda=\xf9\x9b\x9b\xc1\xa0?CAvu*?\xc5=\x99\xc1\xaa\x87PA\x8e\xe1\xe4\xbcf\x05\x98\xc1\xd6\xbeCA\x97\xb3\xd4?\x02\xc7\xa0\xc1\xe2@$An\x97\xcd\xbe\x97\xac\x9f\xc1j\xd2\x13A\xf3\x80j\xbe\x1f\xb5\xaa\xc14\x92-A\xbfa\xb9>\xecJ\xab\xc1\xd6\xfa"A\xd7\xaf\x9f?l\xca\xb1\xc1s\xbb,A\x0c\xeb\x98\xbe{\xdd\xa7\xc1\xd3\xcdCA\xa7\xfb:?\xa6x\xab\xc1d\xf1LA(\xd2\xa8\xbd\xe6\x7f\xab\xc1Q\xf3FAU\xf6\xdd?\xf2\x00\xa2\xc1\xe1\xdc&A\x15\xa3\xe8\xbfp\xc4\x9d\xc1\xaa\x157A\xb4\x84\x15\xc0]\x97\xa7\xc1\x83H\x18A\x9dB%\xc0@\xee\xaa\xc164\x02AY\xc2\n\xc0\x8bF\xb0\xc1\x91\xff\x03A_\xf1\xa2\xbf8\xc4\xa3\xc1\x11\xb6\xf2@D\xa1\xee\xbf\xaa\xaf\xab\xc1\x04\x08\x1eAM\x8bw\xc0\x87\t\xa6\xc1N*\'A\xb8\xc7\x8e\xc0\xcaj\xae\xc1Zg\x07A\xdcU\x91\xc0{\x02\xa7\xc11w\x02A&\xa8\xa1\xc0\xe2\xc4\xb4\xc1t\xba\x08A\xd0j\xa5\xc0\xe6\xb1\xb0\xc1$\x88\xef@\xfd\xb0W\xc0\x8d`\xb9\xc1\x16\x07\xee@\xb8xG\xc0\x90\x18\xac\xc12\xc8\xd2@\xa9\x03b\xc0\xc4|\xb5\xc1\x98W+A\xdd\xc3r\xc0\xa1\x1e\xb9\xc1\x8a\xfb2AU\x1a-\xc0\\\x9c\xba\xc1\x17\xd10ALr\x9c\xc0\xf56\xb8\xc1\xf8\xab,A\xdf\xd7\xb8\xc0_\xcd\xc3\xc1c\x98?A\x9b\x0c\x9b\xc0\xc0[\xc1\xc13\xc6MA\xa1\x9a\x87\xc0N\xdf\xc6\xc1c2EA\xca$\xcb\xc0]\xe7\xcd\xc1\xb3,PA\xae4\xc5\xc0H\x9c\xca\xc1u\xfe5A\xcf\xc7\xd5\xc0\xb3\x15\xbf\xc1^\xe1OAn\x9e\xe9\xc0\x82\xde\xb6\xc1\x8e\x14HA\x80\xac\xe3\xc0K\xdb\xbd\xc1!\xe3_A\xb7\x0e\xda\xc0(z\xc1\xc1\nMOA\xcen\x0c\xc1~\xf3\xc5\xc1\x0c\xbe]A%\xa5\x0e\xc1R4\xc7\xc1v AA\x1b\x8b\x0e\xc1\xe36\xb8\xc1\xd8\xb7NA\x94\x9f\x1b\xc1\xc9\x80\xb1\xc1AEYAc\x1b\x16\xc1\xed\x93\xba\xc1\xb4\xf3SA\x99\x18,\xc1\xcb\x83\xb4\xc13\x189A\x9aj\x1b\xc1n\xff\xb7\xc1C\x10-A\xcf\x8b$\xc1\xff\xd0\xb4\xc1\x9a\xc00A\xba\xed\x0b\xc1*\x99\xab\xc1\xfb\x199A\xbd\xd9\x1d\xc1\x05\xbb\xcd\xc1\xb2\x9f6Apa\x84\xc0u\x84\xd2\xc1\xaboBAR\xa8W\xc0\xbb\xdb\xd0\xc1\xf9\xe3!A&\xc8\x8c\xc0\x17\xc9\xcb\xc1\xcb\xa4\x18A\xba4\xa0\xc04\'\xd9\xc1\x84N\x17A\x8e\x01q\xc0\x88\x91\xdd\xc1\x0eH"A\xe1bD\xc0\x1c\x08\xe1\xc1\xffc\x0fA;\xf0\x99\xc0\xab\x82\xde\xc1\x0cg\x00AQ\x87\xab\xc0\xf1X\xeb\xc1\x8c\x89\x0bA\xe4\xca\x81\xc0\xc6c\xee\xc1x\xa0\x19A*\x94]\xc0/\xc2\xe9\xc1L\x19\xfd@X\xd1R\xc0\xea\xfc\xf1\xc1$\xad\x04A\xe8\x1c\x94\xc0\xd0\xca\xe2\xc15"!AV@\xbb\xc0\xb3\xd6\xdb\xc1\xd4O$A\xf4\xb7\xd0\xc0\x05p\xe5\xc1Rw0A\xba\xb2\xaf\xc0\xad\x97\xe8\xc1\xe6\xb6\x1aAf\x93\xd1\xc0p_\xd5\xc1\x0e\x10\x04A\xb34@\xc0.\xf9\xd3\xc1Y\xa4\xe4@\xc0\xdcc\xc0v*\xd4\xc1n\xf6\x06A\x84\xd8\xd6\xbf\x19\xd4\xd4\xc1\xcc\xbd\x15A\xec\xd8\xa7\xbf\xac\xd0\xd0\xc1\x1b\xb0\xea@\x8dUN\xbf/\xd8\xc9\xc1X:\xe2@f\xa3\xa9\xbfY}\xce\xc1-\x9d\xf6@$\x8d%? \xac\xd5\xc1\xac\x9a\xeb@\xe7\x14\x9d?)\xd3\xcd\xc1\xca\x9e\rA0\x1aB?p\'\xc4\xc1F\xc8\xe4@c\xa3\xa2?N%\xc5\xc1\xa0R\xec@zj\x17@aq\xbd\xc1\xb6\x1b\xf5@\xd9\xdf[?`\'\xc2\xc1\xeed\xb5@\x13s\x8d?\x93\xd8\xc8\xc1\xaal\x9c@\x98\xf8\xd0?&_\xba\xc1\xae\'\xa7@)\x85\x13?\xbc\xd3\xd8\xc1\x1c\x1b\xc2@\xc8\xe4z\xbf\x7fv\xe2\xc1\xd7;\xc4@?|\x92\xbf\xd6\xe1\xd3\xc1g\x88\x9e@\xbfs\xa1\xbf\xf1\xe6\xcb\xc1F\xec\x9e@\x916\x99\xbf\x08\xb1\xd9\xc1\xa1To@Y!\xd8\xbf\xd5\x10\xe2\xc1\xe7\xed|@sE\xe1\xbf\xf1\xc1\xd7\xc1\x8fs8@#@\x83\xbf\xad\x8c\xd5\xc1\xd4\xbfN@n\xc88\xc0}\xcb\xd3\xc1\xe2`\x00@\x02\x90B\xc0\xbb*\xd3\xc1\xb8\xb1\x83@N\xady\xc0\xfe\x80\xd3\xc1\xa7\xd8\xa3@ rt\xc0\x17\xc3\xcf\xc1J\xc1e@Gh\xa6\xc0\xb7\x86\xcd\xc1\xbam\'@\xff\xc4\xa3\xc029\xd9\xc14\x12w@Al\xc5\xc0\xae\xff\xd6\xc1\xafQo@\x9f \xe7\xc0\x00-\xdc\xc1\xa1\xb3\x9c@\xbb3\xc2\xc0\xbd#\xe3\xc1`\xa3>@S\xd4\xbd\xc03\xb4\xe9\xc1\xec\xdd^@0a\xd0\xc0\xdfR\xe6\xc1jB=@E\x8f\x9c\xc0a(\xe2\xc1\x84\x1e\xc9?\x0e"\xd4\xc0o\xd9\xda\xc1i%\xbf?nF\xe8\xc0\x9ee\xe9\xc1\x1ee\xbb?P8\xec\xc0S\xa3\xe3\xc1b\n\xff>\xd1\x91\xb4\xc0_u\xe6\xc1\x91.\x0c\xbfZ\xd0\xc1\xc0\x9a\xf9\xe9\xc1B\xad;?\x1c?\x9c\xc0>\x7f\xd9\xc1\xb9+\\>\xe9\xb6\x9c\xc0\xedP\xd3\xc1C\x9e\xab>B\xe2\xb1\xc0\xc6K\xd9\xc1;gB\xbf\xa1\x1e\x90\xc0T\xf8\xd8\xc1A\xf7k?\xa8L\x84\xc0`\x1a\xc5\xc1\xa5m\x88@\xad\xa1\xb4\xc063\xc2\xc12\r\xa9@e\xbb\xa1\xc0\xf1\x0f\xc0\xc1+\x99k@\x81q\xd6\xc0\xff \xc2\xc1~\xb73@P\xd9\xe2\xc0\xbd\xc8\xb6\xc1\x1eW\x87@0Q\xec\xc0\xd4\xa5\xb0\xc13M\x8d@;j\xd4\xc0[\xad\xb2\xc1\x0fuD@\xedj\x04\xc1\xd9\x8b\xb8\xc1\r\x11\'@W\x82\x10\xc1\xa8\xd5\xae\xc1X\x1f\x18@\xf2\xb7\xf1\xc0\xcbp\xa9\xc1\x84\x80f@@\xc0\xe7b\xc1\xc2\xf3\xab\xc1\xdd\x93e@\xfc&[\xc1.@\xb5\xc1$\x95Y@2\x9cq\xc1\xb7r\xad\xc1\x07$\x03@\xc9\xc5e\xc1\xfc\x98\xcc\xc1G;k@\n~E\xc1L\t\xd5\xc1\xb7\xaco@\x0c\xc2N\xc1\xda"\xcc\xc1V\x97Q@\x8d\xad1\xc1\x0ff\xc5\xc1\xe7\x03]@\xb4#(\xc1/\xf2\xd4\xc1\xfaj\'@~\x87%\xc1*\xdb\xdb\xc1\x1f\xae\x1f@D`1\xc1E\xbd\xd6\xc1\x87\x11Q@\x12\xf4\x17\xc1c\x13\xd1\xc1\xa9\xd0\xa7?\xfe\x0c\x1d\xc1\\\x87\xd7\xc1\xc3\xdb\xf6>\xbf"\x17\xc1.u\xc6\xc1\x1a<{?\xe9\xca\x1e\xc1\x92\x99\xc1\xc1*\xf0\xcc?SN\'\xc1mR\xc1\xc1\x97\xa6\x07\xbe\xc5\x8b\x14\xc1\xd1"\xc5\xc1&\x82\x80\xbf\x93/\x19\xc1\x07\x84\xb5\xc1\xea(>\xbe\xd6f\x1b\xc1\xdbe\xb1\xc1\xa4tM\xbf\xc3\xba\x10\xc1\xaex\xb2\xc1\xc8\x1eY?1w\x17\xc1\xf4\xc8\xb2\xc1\x14v:\xbf\xaa\xff1\xc1\x96\xa8\xb8\xc1\x8f\x88\xb2\xbeQ\xc2=\xc1\xbe\xfb\xb4\xc1\x1di\xe2\xbf4\xc8/\xc1\x83\xe4\xa6\xc1\x10\x06\xf2\xbeu\x18:\xc11\xf2\x9e\xc1\xa4\x9b\x80\xbf\x1b\x0b1\xc1\xf2\xaf\xa6\xc1d\x0e\xa3>=`I\xc1g7\xc3\xc1\x93L]\xbed\x1f\xf8\xc0\xb4\xff\xc6\xc1\x8cv??9\x8d\xe3\xc0\xe3\x9f\xbf\xc1\xff\xf9\xa9\xbf\xcbj\xe3\xc0<\x81\xbb\xc1~k\x06\xc0N\x17\xf0\xc0g\xbe\xc1\xc1R\xfd\xcc\xbfl}\xb6\xc0\xf2s\xc8\xc1V\xbc\x80\xbf\xbb\xcb\xab\xc0Gk\xc4\xc1JZF\xc0%\x8f\xb2\xc0\x06\x08\xbd\xc1\xe62m\xc07-\xb6\xc0\x18\x08\xca\xc1)-W\xc0\x02,\xcd\xc0Ax\xc9\xc1\xc7m]\xc0\xce\x94\x86\xc0\xdaL\xc4\xc1\xc4\x97X\xc0u`V\xc02\xd1\xcd\xc1e\x95\x8c\xc0#+\x84\xc0@\x8d\xd2\xc1\x05\xeb \xc0\x03ex\xc0.\xf6\xda\xc1\xdf\x92\x19\xc0\xdb\x9c\x93\xc0\xd9\xd3\xd0\xc1\xc0\xc4\xd6\xbf:|?\xc0\x96\x8a\xb8\xc1\x87B\xa0\xbf\x03\x1e\x99\xc0^\xa6\xaf\xc1\t\x9a\x93\xbfg\x0c\xa6\xc0\xcd\xdc\xba\xc1\x90\xfds\xbf\x93\x07_\xc0\x87o\xc2\xc1:Y\x90\xbf\xf4\xb7M\xc0&6\xb3\xc1\xcb\xce\xe3\xbe\x8b\x1d&\xc0\xe0\xd8\xaa\xc15\xc6H\xbei\x9aA\xc0\xac\x04\xb6\xc11\x0by?\xe3\xa5\x07\xc0\xeeI\xaf\xc1?Z\x99?\xec\x08\xb0\xbf\x97~\xbe\xc1L\xc7Y?\x87\\\xd7\xbf"Q\xb7\xc1"\x04\x08@2tH\xc0\xbd\xcf\xbe\xc1r\xa6\xf5?C:s\xc0\xb0\xd4\xb8\xc1\x8b\x05[@a\x9f\x14\xc0\r\xfe\xb1\xc1!@m@\x90\r\xda\xbf\x8e\xa0\xbf\xc1\x9fPY@vz\xd1\xbf\x15\xff\xb9\xc1g\xa1\x89@Bz;\xc0\x9d"\xad\xc1\xec\x19\x0e@?\n\x81\xc0kS\xab\xc1\t\xe5\x9a?\xbf\xbc\x8f\xc0\x16\x1f\xa6\xc1\xae\xd9\x1d@\xa1\xaaV\xc0R\xac\xad\xc1\xa5\x82<@x\x85\x9b\xc0\x90\x81\xb1\xc1\x02\x86\xad\xbf\xa1\xbd\xba\xbf\'"\xb4\xc13\xc3\x97\xbf\x06Z\xa0\xbe\x9d\xe7\xab\xc1y\t\x1e\xc05t\xe2\xbf\'\xd7\xa8\xc1\xe2Q%\xc0\x8aJ-\xc0\x8fa\xa8\xc1&^c\xc0\xc6\x14w\xbf\x1eE\xaf\xc1\x0f\xd6v\xc0$\x13\xd0\xbe\xea^\xa5\xc1\xd2\x1f\x9a\xc0\x1c\xd3\xe7\xbf\x03\xe1\x9f\xc1_\x13\xb0\xc0El\xa8\xbf\x1d\n\xa1\xc1\x1bx\x8e\xc0GTH\xc0\xdaP\x9e\xc1\x15|a\xc0\xfej>\xc0\rY\xaf\xc1M\x00\xb8\xc0\xde\xc9\x03\xc0\x11\x02\xb6\xc1\xa0G\xa9\xc0Y\x11$\xc0\xcf\xd6\xb1\xc1\xf4\xe8\xc2\xc0\x8f\x08\x84\xbf\xbb\x14\xad\xc1\xb1h\xd3\xc05\x8e/\xc0\xf4\xeb\x9e\xc1\xe9\xd8L\xc0\x0b\x9a\x82\xbd\x1a\x1e\x9a\xc1Kr\x08\xc01\xd4x\xbe\x15\xd2\x9b\xc1\x9c\x8a\x82\xc0\xcc\x1fU?\xdc\xf8\x9f\xc1\xb7\xbe\x9e\xc0\x87\xd3j?\x13\x16\x91\xc1\xfa\xca\x7f\xc0\xc1\x8c\xb4?\xc6\xa3\x8d\xc1\'z?\xc0#\x80\xa8?EO\x90\xc1\xdd\xe7\x88\xc0\xb8\x968@\xbe\x00\x88\xc1\x1e\xb6\x82\xc0\x95XO@\x0e\x05\x93\xc1\x8ab\xb4\xc0U\xf9K@M\x17\x8d\xc16&\xc1\xc0v\x96e@o\xba\x97\xc1\x84^X\xc0\x1e\xb4o@\x13\x9b\x9f\xc19\x02i\xc0\xfd\x9dW@.\xb8\x95\xc1\x03&\x11\xc0\x9b7j@\xd4\x0c\x97\xc1\x80\xfdk\xc0x8\x99@\xbb\x01\x89\xc12\x88\x9a\xc0\xb04\x1e?,\x16\x8c\xc1;\r\xb4\xc0dkN\xbe!\xc5{\xc1\x7f\x0f\x98\xc0\xa9Wq?t\xdex\xc1\xe2\x90\x84\xc0_\x13\xdf?\x8e\x91k\xc1\xf3n\xb3\xc0\xca\xc5\x8b>\xfc?r\xc1\\\x95\xbe\xc0\xce\x9e%\xbf\x88\xc6V\xc1\xfb.\x9c\xc0H`\x9c\xbb\xff\xceM\xc1\x99S\x96\xc0\xf8xh?S\xa7[\xc1\x87\xe0z\xc0\x0e\xee\xe7\xbe\xa3hF\xc1\xcb\xf1\xae\xc0e\xc5\x88\xbf_\x97Q\xc1\x8d\x89\xb5\xc0\xce\x8a\xf2\xbfT\x93@\xc1\xc0\x82\xcd\xc0S\x8bS\xbf\xea[4\xc1A\\\x8f\xc0\x1d\xa3\xb4\xbf{\xd49\xc1\x97\xf1`\xc0s\r\xe5\xbf\xcc\x15*\xc1\x13\xd0\x98\xc0\xbeU\x14\xc0&+\'\xc1*5\x89\xc0\x17q\x11\xbe\xc8\xf4-\xc1\xe6\xd0w\xc0\x8c!\x14?\xa6\xe8\x15\xc1\xb1\x82\xa0\xc0\xc0\xc1\xa6=\x0f\xbd\x0c\xc1~\xd4\xbb\xc0\xe8`H\xbf\xbb?\x11\xc1tl\xb9\xc0\xd44\xdc\xbf\x12\x9a\xfa\xc0\nx\xc6\xc0\x03\x0e"\xbf\xe4\xa5\r\xc1\xce\x1d\xa1\xc0\xd1\xcd\xa2?\x12\xbc\x19\xc1\xc5\xb3\x9a\xc0t\xec\xf0?\xda\x8b\t\xc10`\xbf\xc0,\x1f\xb3?|\xefh\xc1T\x1f\xdb\xc0iX\x8d?\x89\xcbk\xc1\xe8r\xda\xc0n\x9d\x14@\xbf\x86b\xc1\xef[\x00\xc1\xfe=\x07?\xc2\x8c_\xc1\xdb\xa7\xff\xc0\xcb\xd7\xe1\xbe\x1a\xb3c\xc1\xda\xdd\x13\xc1\nS\xa4?\x82\xe4u\xc1\xa0\xf8\x15\xc1\xf1Q\xce?\xe3\xee^\xc1\x99\xe9(\xc1S\xce\xf0>`\xf2i\xc1)*(\xc1\xfc\xff\xb6\xbe\xd5\x8ee\xc1\xedn7\xc1\x15\xe2\x87?\xb7?G\xc1\x15\x92.\xc1\xe5\x92"=\x954?\xc1\xd0\x8e,\xc1\xce\x14\x86?\xc7\x81?\xc1\x13b#\xc1\xe7\xc28\xbf\xf2\xc3C\xc1\xa9\x13F\xc1\x03\xa4p\xbeiLJ\xc1R\xbfH\xc11}\xa1\xbf\x97\xebM\xc1\xe8#O\xc1Q\x9f\x0c?L\xd8+\xc1\xd5\tM\xc1\xc2\x00\x87\xbd\xd9e\'\xc1\xc8\x8cF\xc13\x0bx?\xc0\xa3!\xc1\xc9^F\xc1\xa2Sc\xbf\xfas(\xc1\x1b\xfdc\xc1YxA<\xf2\x1b8\xc1L\x87k\xc1\x02\xef\x89=\x98\xb0\x1e\xc1\xd2\x04i\xc1\xe5\xceN?\xff\x90 \xc1\x18$i\xc1\x91\xe8_\xbf-\xe6W\xc1\xb5\x9e\x16\xc1\xd5e&@\xd6a_\xc1"\xa3"\xc1\x87\xa4\\@\x87\xbaF\xc1\xe2\xf6\n\xc1\xd3&5@"*@\xc1h\x85\x02\xc1\x19\xc7\x0b@\x17\xe49\xc1F[\x0b\xc1\xfb\xbf\x82@$k@\xc1A\t\x17\xc1La\x9a@\x00\xe3 \xc1\xfc6\x12\xc1\xf6(v@\xfb\xeb\x1f\xc1go#\xc1\xcc\xaf|@\xd4\xcc\x17\xc1\xcc\xa7\x0c\xc1.g\x95@\x17\x07\x17\xc16W\x0b\xc1\xe8\xaa\x1f@_\x14\x11\xc1b\x02\x1a\xc1\xcbv\xda?fi\x15\xc1\xf9\xdb\xef\xc0w\xf6\x0e@\xfc0=\xc1\x8e\xe8\xea\xc0!\xce\x98@\xd6\x8a8\xc1\xfd\xbf\xe3\xc0\xc4\xc4\xbd@\xdd\xe4F\xc1\xe3h\xca\xc0\xa0?\x84@\x07\xbeL\xc1\x84\xf8\xd1\xc0LJP@\x02\xa9M\xc1\xedO\xa3\xc0|\x19\x9b@?DC\xc1\x17\x9f\x96\xc0\x9c1\xb3@s\x15M\xc1\xf4\x16\x80\xc0{\x07s@\x07wU\xc1<^G\xc0\xc7\x89\x83@]oS\xc1V/\x8d\xc0\x86$5@lB6\xc1\xea\xcff\xc0xKb@(!(\xc1\xc7+f\xc0\x87\xc3\x8d@}\x0f0\xc1\xfb\x92X\xc0\x92@\x15@+\x86d\xc1Y;\xa7\xc0d\xee\xab@Scs\xc1\x94\x7f\x96\xc0s^\x9b@\xcc\xeef\xc1\x98\xb4\xbf\xc02\xaf\xcf@sz[\xc1\xe9\xa4\xd3\xc0\xb3h\xda@p8y\xc1#\xae\xb8\xc0uo\xeb@Ik\x7f\xc1\x88~\x9a\xc0\xba\x87\xe4@P\xb6\x85\xc1o\xad\xd9\xc0X\x18\xe5@\x0c\xc2\x87\xc1\xa4\x04\xdb\xc0F\xd8\xbf@\xf9\x08\x8d\xc1\x94\xfc\xd0\xc0-&\xf4@\xf24\x83\xc1\x14\xa6\x03\xc1\x0b\xf4\xf4@I\x89\x8a\xc1\x90\xc1\x0e\xc1\r>\xf7@\xe1A~\xc1T\xd4\x02\xc1\xebU\x0bA\xf3\xdcu\xc1/\xa6\x10\xc1\xbb\x8d\xd7@\xbexd\xc1k\x8a\x17\xc1\xd1\xa4\xe1@\x83\xfe|\xc1\x1d\x02\x13\xc1\xfa\x98\xae@n\'s\xc1o\xee\x19\xc1_\xc0\x98@\x9ad\x85\xc1\xca\xe3\n\xc1`\x02\xa9@\x8b\xe9q\xc1\xb4\x19\xb5\xc0\x15 \rALm^\xc1\xe8\x17\xbb\xc0\xb6"\x11A\xa7\x13\x80\xc1\x8e\x10\xaa\xc0]\xf1\x1bA{\xce\x87\xc1\xceZ\xa5\xc0\xb5\x93\x18A\x93\xc5{\xc1\x99\x84\x9a\xc0y\x821Al\xa4u\xc1\xae\x96v\xc03>0A\xa9K\x89\xc1^\xf9\x96\xc0HJ=A\x90\xe3\x8b\xc1\x05\x85\xb7\xc0\x80hDA2\xb1\x8f\xc1\xa9z\x8b\xc0\xd8\x143A\xd2\xae\x89\xc1Ekh\xc0"\xe0MA\x15\xd4\x91\xc1aae\xc0\x01yVA\x95<\x88\xc1\x9a\xe0&\xc0\xb5rGA<\xe1\x81\xc1\x91\xb4r\xc0\xad1`A~\xa2u\xc1?\xe3;\xc0\xaa\xb5cA;,\x82\xc1\xc91\x9a\xc0\xb6lkA\x93\xc2k\xc1E\xd9\xb1\xc0\xfbc>A\x0e\x00Z\xc1 E\xa4\xc0\xd1\xdcAA\xbc\xb9o\xc1\xe8k\xd7\xc0m\xf7GA\xe0\x99~\xc1\xde\xaf\xde\xc0\r\xddHAf\xfa`\xc1\x81\xa2\xef\xc0\xd2\x0bVA\xf2K^\xc1\xab\xb6\xdc\xc0V\x10eA\x964m\xc1\xc3\xe7\r\xc1F\x9bZAg\xbfd\xc1o/\x1b\xc1\x81\xf7RA\x81_}\xc1\xf1\xc8\r\xc1\x1dyTA\x98\xe5q\xc13\x83\x12\xc1VgrA\x04\xe0x\xc1\xf3\x90"\xc1\x97IsA,\xc3~\xc1\xad1\x08\xc1F\x15yA\xe8\x16_\xc16\x81\x12\xc1\x11\x99\x80A\xa5CZ\xc18\xfe"\xc1\x976\x85A\x8d\xaaS\xc1^\x89\x02\xc1>/\x81A+\xd0I\xc1\xf1\xe1\xf8\xc0\x97\xcaLA\xedr9\xc1\xbb\xc2\x01\xc1o\x94VA\xd5\xdbI\xc1t\x16\xf9\xc0O\xdf7A\xb0+W\xc1\xc2\xb6\xfd\xc0\xc3\x8d0A\x0f=8\xc1\x9f\xb5\x00\xc1\xccE)A\x15\xe5,\xc1\xa1.\x0c\xc1\x9d\xeb0A)m@\xc1\xa4\x92\n\xc1|?\x15A\xc9\x0eI\xc1[\x92\x00\xc19\xa3\tAU\xb1P\xc1{\x1d\x1a\xc1\x0f\x05\x19A\xf78W\xc1\xe8"\x1b\xc1\xd6S\x0bA~\xc3.\xc1\x1bp\x15\xc1\x17\xdd\x07A\xc6\xdd#\xc1\x0b\xf4\x1f\xc10S\x12A]\x8d$\xc1\xc5\xf5\x08\xc1\x1er\x00A\x9ek5\xc1]G\x1f\xc1A\x19\xf5@Z\xc2*\xc1\x9aF\xd9\xc0\xa7\xd4%A3b\x17\xc1:s\xdc\xc0h\xda\x1fA\xca\xcb3\xc1\xa8}\xb4\xc09\xb7+A\xbf!C\xc1\x98e\xb3\xc0\x06\x15/A\xed\x1b&\xc1r,\x8d\xc0,\xc20AP<\x1c\xc1\x02\xb1\x89\xc0\xd5\xf4!AIh2\xc1\xe9\x8aG\xc0!\x1f5A{\xa49\xc1\x08\x9bL\xc0\xf7\xf1EA\xb7\x9a"\xc1\x02`\xf1\xbf\xd7\xdf6A\xf8k\x14\xc1Jq\x05\xc0\x1f\xb9,A\x88\xbb \xc1w\xb8\xd9\xbf\x8b\x81GA\x01\xcd)\xc1\xc6Rr\xbf\xaf\x810Ag=E\xc1p\xb5/\xc0\xc5[&A\x13RO\xc1\x7fy\xee\xbf\x9c\xea+A\xeb\x1dQ\xc1\xef!f\xc0\x80\xd7%A\xf2\x1fA\xc1\x94g\x1c\xc0E\xf4\x15A\xe7\xcd\x15\xc1\xe2\x07\x95\xc0\x11DBAZ\x8f\x02\xc1\x82\xc2\x91\xc0_=@A/\'\x1e\xc1\xa8\xe7\xa1\xc0\xb4\xa0UA\x06\x81.\xc1\x05\xc5\xa4\xc0\x86\xbeVA\xc2\xa6\x12\xc1\x9f*\xa8\xc0\xde\x9fhA\xd7_\x0b\xc1\xdf4\x89\xc0\xf7\x11kA\xcd\xe1!\xc1\x1bq\xb8\xc01\xe8zA)n\x16\xc1\xd3\xca\xba\xc00\xa8\x84A\xf3\x07)\xc1\x9b1\xd8\xc0\xf4VuA\xe3\xf24\xc1\xca\xdc\x99\xc0\\>\x80A\x7fU@\xc1\xd5\x9d\x92\xc0\x80.sAF\x0b,\xc1\xc4\xf2v\xc0\x05_\x81AJ\xbe=\xc1\xa0\xcc\xa4\xc0b\x07\x8bA{\x012\xc1\x96\\\xa3\xc0\xf4\xd7\x91A8\xafB\xc1\x8e\xcf\xc5\xc0\xa3\xcf\x8aA\xbdxP\xc1\xcb\x02\x89\xc0\xf1)\x8dA\xa9aM\xc16\x12U\xc0\x0f\xfe\x8fA\x9f\xe2b\xc1\t$\x91\xc0fz\x88Au\xf5g\xc1[\xe9\xb4\xc0H\x02\x84A\xa7\xcfa\xc1[\xdf\xd3\xc03\xfc\x84A\x11\xb4s\xc1\xae\x11\xb3\xc0\xdag|Aq\xe5n\xc1\xac\xc3Y\xc0\xf8h\x86A,7{\xc1`=j\xc0}g\x81A\xceMg\xc1\t\xe3-\xc0>\x84\x82A\xbc\x9e\x00\xc1\x94\xc5\xc6\xc0\xfa.gA\x8d\xf7\xdd\xc0\xa6\xc7\xbe\xc0o\x1aoA7\x05\x05\xc1\xf6D\xe9\xc0H\xe9[A\xd2\x05\x14\xc1CU\xeb\xc05\xe7UANZ\xed\xc0\x135\x05\xc1\xf0TWA\x08\xcd\xdd\xc0;0\t\xc1\x88\x91eA\xba\x12\x04\xc1\xfdC\x18\xc1e\xf5LA\x18w\xf2\xc0\xa8e"\xc1\xbe3CAE\xd5\x10\xc1+\xfe\x11\xc1\x8b\x8cBA\x9a\x85\r\xc1a|%\xc1\xd6\x12_A]$\x12\xc1\x1f*\x1c\xc1\xd1\x1cmAl)\x00\xc1>\xcf0\xc1\xddTcA\x1ca \xc17\xd32\xc1&+WAO\x97\x19\xc1\x84|B\xc1\x9e\x8dRA\x93O)\xc1\xce\xe0)\xc1[\x9aJA\xa0\xf60\xc1\x9f{7\xc1\xd9\xa2iA\x1c\xe5+\xc1*RB\xc1\xc2\x14wAx\x04>\xc1\x95\xb8@\xc1,\x07bA\x0b\x178\xc1\xf0\x82#\xc1;\xaftA\xf5SF\xc1;\x93%\xc1v\xb7}A\x95\x96;\xc1_\xb4\x19\xc1D\nhA0U-\xc1v\xb0\x1b\xc1\x8c\\~A\x12$\xcc\xc09.\x00\xc1\xb97GA\x19\xeb\xa9\xc0B\xaa\t\xc1\xcd\xadHA\x02\xb4\xd3\xc0\xe8v\xe3\xc0n|7AJ\x03\xee\xc0\xafe\xd3\xc0\xa7\xdf6A-\xa7\xb2\xc0\xdd\n\xd6\xc0}})A\x9d\x82\x9a\xc0\xb3\x95\xed\xc0\xf4r&A:D\xc7\xc0\xd4\x01\xc6\xc0i\xe0\x13A\xab2\xaf\xc0\xc1\xed\xb3\xc0\xcee\nA\x8c\xa4\xdf\xc0\xd8-\xad\xc0\xa7\x99\x15A\x12g\xd4\xc0\x18o\xef\xc0\xf7,\x08A\x1aQ\xed\xc0\x87\xe3\x00\xc1 j\x11A\x84\x7f\xb7\xc0\xa5E\x02\xc1V\x07\x07A\x99\xfd\xeb\xc0i\xd5\xea\xc0\x0ba\xe3@\x82\xa7\xf8\xc0c\xe7\x05\xc10\x8a\xd9@M\x0c\xd9\xc0\xbaC\xdc\xc0\x1b\xca\xc9@\x0c\xaa\t\xc1\x08\xbd\xcf\xc0*\x8f\xed@\x03\xe9\x0e\xc19\x01\xc9\xc0\x8c\n\x06A\xda\xfc\x11\xc1\x91\xa9\xb4\xc0\x1a\xe0\xcd@~\xc2\x0c\xc1@\x8a\xb5\xc0\xc5\xcf\xa4@\xfc1\t\xc1b5\xd1\xc0\xae\n\x9a@\xc8\x0c\x14\xc1aR\x9d\xc0(\x0b\x96@\x88\xd1\x1e\xc1\xb1\x9c\x96\xc0\x03\xb8\xda@\xf1/$\xc1NF\x82\xc0\xf8\xb6\xc3@\xb1r\'\xc1\x11|\x9e\xc0\xcc\x8b\xf5@\xcd\xa2\x98\xc0|f\xb0\xc0\xa0b3A\xe9\x9ej\xc0\xf2\xe0\xa5\xc0\xf1\x0c,A\xd3P\xa9\xc0$=\x9c\xc0\x03v\xd6\xc0\xe9\xea\x84A\xccL\x80\xc0us\xf0\xc063\x8eA\x15\x87\xaa\xc0\x13\xdc\x06\xc1\x85\xdc\x87A\x9c,\xee\xbfI\xca\xe5\xc0\xfa\x1acA\xbd\xac1\xbf_\xc0\xe5\xc0\x14\xd3hA\xb8"\r\xc0b\x05\xed\xc0_\x08OA2`G\xc0!\x9b\xec\xc0\x14\xb4JA\xf2\x91\x95\xbf\xdb\xf0\xf6\xc0\x85\xd9=A\xf8i\x07\xbf\xae3\x08\xc1\xdf9CAc\xe7\xe4\xbfs@\x00\xc1\xb08)A\x87%\x8c\xbf\x00!\x00\xc1\x9f\x07\x1bA\xb5A#\xc0Z0\xe8\xc0)v$Ao\x13\x1e\xc0\xa0n\x16\xc1la)A\x16\xf5G\xc0\xfb\x8d\x18\xc1~\xd0\x1aA/\xa2K\xc0<\xc3\x14\xc1\xcb\x8d6A(X\xc4\xbf\xd9\xb3(\xc1I5+Ax\x16<\xbf\xfeT.\xc1\xa1\xbb\x1cA\x8eq\xc6\xbf+c3\xc1\x97\x0fo\xf4U\xbf\xa4\x9a A}Q\xe8>Q\xa2\xbe\xbf\xe5\xb2\x13A\x1f8=?\x0c\xff\xe5>\xaf&#A>\xdd\xbb?\x94`d?\xf0\xba\x17A\xf1gA>D\xf1\x9f?m\xf43A\xe9\xf3\x01?Z>(@\xc9b2A\xb3p\x8b>l\x1d;@\x93\x16AAt\x0b\x8a\xbf\x04\xeb!\xbf[-AA\xd9#\xe4\xbf9I\x84\xbf\\(MA\x8f\xbc;\xbf\xcb\x8a5?\xb7\x9eBA\x8d\xa8\x93\xbfg\x8a\x9a?\xaeIPA\xc5YI?\xc3&k\xc0\xff%IA"\xe3\xf4?\x00;J\xc0zxHAJ\xa5\x85>&\xbd~\xc0\xe7\xc5\\A\xb1\xbd"\xbfF:\x8a\xc0,b_A[\x03\x87?.Sn\xc09spA\x0c\xcd\xb2?+\n,\xc0U\xeaoA\x90``>\xaf\xc2v\xc0\x9dV\x82AXM`?m\x99r\xc0\xf3\x98\x89A\xc0\x1dl\xbe\x8e\x10\x9b\xc0\x07\xa2\x82A\x1e;\x88\xbft5\xda\xbf\xda;\x7fA \x9d\xf8\xbeK\xcf\xa1\xbfz\ruA\xea[{\xbfb\x06?\xc0\xe6\xf8\x82A\t\x8d\x18\xc0\x9a\xa1\xa3\xbf\x10\xed\x80A\xed$-\xc0\xeeD|\xbe\xd1a\x80AX;F\xc0\\\xfc\x13\xc0\xa5M\x85Aa%\x0e\xc0J\x16V\xc0\x9e\xf3\x86A\x07\xf8"\xc0\xeb\xaf\x84\xc0B\xe4\x8bAU\x94\x0f@-V\x96\xc0\x11KsAq\xf4U@(\xb2\x88\xc0\x9c\x87xA\xa1\xca\x01@\xf1e\xc0\xc0\xee nA\x0e\xc4\x88?\xe3n\xcc\xc0\xa1\x0fkA\x12\xa3J@\xf13\xdd\xc0\t:jA0\xc6e@\xa5\xa4\xe6\xc0\xaf\x97zA@\xf2$@\xfc\xb1\x03\xc1\xf1t`A\xac\xd4`@2\x9a\r\xc1\xc1\x19[A\xe6"\xe8?\xc54\x01\xc1\xad.SAB`\xfe?.\xbf\x13\xc1\x0b\xaepA\xa8;\xa4?\xab\n\x0c\xc1K\x0c|A\xfc[2@7~\x1a\xc1\xea[zA\x80<\xa0?Q.&\xc1\x12bdA\xbf\x0b\xdf?z\x806\xc1\xdd=[AuR\xab\xbdp\xb0"\xc1n\xe5aA\xc0\t\x19\xbf\xf7T+\xc1\xe3HWA\xff\x98\x02\xbf\x07\r\x15\xc1\x0f8dA\x15\r\x89@\x8d\x99\xcb\xc0\x9eb\\A\x95F\xad@8\xfa\xc4\xc0\x88\x03bA\xa3\xbcv@\xcd\xc1\xc3\xc0\xabbIAR\xaf5@\x86<\xc7\xc0\x14\xa8GAK6\x96@\x87\xd7\xbe\xc0\xda67A\x89<\xaf@\xa1\x02\xd8\xc0\xee\x7f5A8!|@]<\xc6\xc0\xa9\xe6!A\xa4\x89\x94@\xd0s\xbe\xc0\xffY\x14A\x97\xb4E@XU\xb0\xc0\xfb\x88 A\x85yX@*q\xf3\xc0O\xfb\x1eA\x87c=@+\x82\xf7\xc0m.\x0eA\x8eQ#@M\x84\xf3\xc0\x90n*Ar\x9b\x8f@\t\xb0\x0e\xc1\x80\x19#A\xa8\xb8T@z\xee!\xc1\xe9R-A\xb2Tv@m\xc2+\xc1vH9A0\x9b6@c\xfb,\xc1F{ A\x90B\x1f@\xca\xb9\x1b\xc1(\x917A\x02 \xa8@\xdb\x11\x91\xc0\xe3\xd24AO7\xcd@p\xba\x8a\xc0\xef\xbc0A\x92\x8a\x8b@\x91\xcad\xc0\x96\xdc4A\xf4\xa8Y@\x84{r\xc0\x01_6A>\xd4\x96@\xa7\xd6\r\xc0F\xf6.A\xa5\xdf\xb2@\xe6\xf4\x17\xc0\xdd\x0f%A\xd8\x15l@9\xfa\xbf\xbffK"A0\xa76@\xda\x0b\x92\xbf\xb76,A\x15\xc5H@\xf9\xb7\x11\xc0\xec\xde\x11AY~r@V\x91=\xc0I\xf6\x0eAE7\x8f@\x97c\xce\xbe\xff\t\x17A\xe0l\xab@\xb3F1\xbf\xcc.\x0eA\xab\xc8\x96@H\'\xb8>\xdc\xcc"Acao@\x00\xcf=>ma\x0bA\xb7\x0e\xa9@\x8f\x89\xb4\xbfA\x0eAA\xbcA\xc3@\xf4(\x08\xbf\x06n\x03\xbckA\xda+\xfc@\x86\xf0\xf8\xbf\xf9\x9fhA\xfc3\xed@\xbaFT\xc0P#iA\xf4\xda\xd5@=Q\\\xc0/\xb0\\A}\xa5\xe0@\xb8\xd5d\xc0tcyA\xc5\x96\x15A\r\xc0\xee\xbft\xa9dA\xbb\xb4\x19Ad\x04\x9b\xbf\x8b\x12rA4~\x1dA\xa1\xbdR\xc0\x94\xf1iA\xc9\'!A\x1c\x90Z\xc0\xdaL{A\x9c\xb4*AH\x9f_\xc0GS_A`*\nA\x98R\x87\xc0\xdd3eA\xba\x85\nA\x8a\x1a\x91\xc0=ZTA\xcei\x08A\r\x06\xa2\xc0\x9e\xe4oA\xe9R\x1dA\xec\xc6\xaf\xbfe\xedNA}\xad/A|\x1fs\xbf\x0cgMA\xe1\xfa\x0fA\xb1.\xb2\xbfP\xa8>A\xea\x05\x01A\x90.\xe9\xbf\xc4\x17=At\xab\x18AY\xc5u\xbf\xaf\xce(A\n\x04(A\x1d\x10\xa8\xbf\xcbw&A\x8b{\x08A\xacm\xc1\xbf\x0c\xd2\x16A\t\xea\nA\xc3\xa7\\\xbf\xaf\x05\tA\xf9\xf2\xed@\xa5\xbe\xc2\xbf\xb2\xce\x1cA\xe3\x10\rA\xe9\x84>\xc0\x16\xa1\x0fA\xed\x93\x0cA\xb8Qd\xc0\xad~\x1eAr\x0f\xf5@\xc5IZ\xc0\x10a\x02A\xba\xbd\xf0@5\'7\xc0sN\xe5@&\x13\xd7@\r\x8fK\xc0\x87G\nA\x11i\xf5@\xf99\x8e\xc0S5\xfe@\x8a\x1a!Ab]?\xc0\x15Y\x03AL\xe3,A\x9c\x07)\xc0$+\x0eA\x1e\xf6 A\x15h\x11\xc0\xef\x1c\xeb@H\xa2\'As\t}\xc0\xabP\xfa@\x12"\x19A\x0f\xca\x0b?YU(AH\t&A\xceL\x90?\xf3\xf5\x1cA}\xf7\x0bA\x1d\xe3\x99?\x99b6A\x85\xfd\x03A\xc8\x96 ?\xe5\x9b?A\xcc\xa7\x0cA\x07\x11(@\xa7#:A\r\xce\rAA\xbfI@\x81\xab+A\x9e\xd2\xf4@\xe5~K@\xa2}FA\xa1\xd6\xef@\x1c\xab%@=eUA%\xed\xfc@\xc6K\x95@\x9d\xafLA\xae\xf0\xe4@3?\x9f@U\xccWA\xcc\x1f\xfd@@\x13\xaa@!4?A6\xab\x0cA\x1b\xd8\x99@\'\xcdVA\xcev\xcb@K\xecE@\xd6\xe68A^b\xcb@\x96f\x05@\x1c\xfe3A\x8dP\xca@\x19\x91t@lW+A\x10\xaf\xa0@I]O@&\x07EA\tQ\x86@/TO@\x17\xb29Apq\xa5@\xc4\xbf\x84@\xe0\nMALn\x9e@\xaa^\x18@-pPA\x12\x0c"At\xd5:@\xaa\x1bDAH]0A\xdf\x0ea@\x1cG:A]\x01\'A\xdf\xe0\x11@\xa3\xf0VA\x91\xcf\x1bA\x89 \xd7?\xd5\xd2]Az4;A\xceq\x1f@\x08laA\xc6\x98:Aea\xe6?\x86\xf1mA\x13\xa2\x12\x7fGA\xbe\xff_AMJ ?G\x938A\xd5\xe3mA\x17\xec\x1d?\x80\xbeAA\xba\xbcZA.?a\xbf\x16\xb24A\x9b\x02IA\xd1 x\xbf\xb9\xa71A\xb1\x90^A\x7fh\xac\xbf\x034EA\x1a\x08eA\xe36\xc8\xbf\xfaD"A">YAw\xfe\xdb\xbfix\x0fA\x8a\xc8IA#\x0c\x95\xbf\xceu\rAl\x92`A\xa7\xe7(\xc0|\x83\x00AR\xd3VA\xa1\x92)\xc0\xd0\xc6\xe4@TksA\xcc=V\xc0f1\x03A\x81\xdd{A\x02\xda\x84\xc0$S\xe7@T\x85\x81A\xb7\x99\x9e\xc0\xe81\xf3@\x0bxwAE\xc1\x10\xc0\x8c\xd5&A3v\x7fA\xddr\x03\xc0#\xe05A\xa8\xa0}A\xb6\rM\xc0\x03I\x17A\xba\xc7\x86A\xaeUi\xc0D\xba\x19A\xebCdA \xa1\xbf?Dp$A\xf7-vA\xc9f\xe4?\xb8\xa8 A\x97(TAN\xc3\xf2?N\xd6\x17A\xb4FEA\xc9\xa0\xd5?q\x8e\x1aAUFUA5q-@\x92u\x04A6\x18cAJ\xf4\x1c@\xa4k\xf8@\x03\x9dAA\xd7\xdc"@\x9aq\xe9@0\xe9@A\x88T`@\xf0"\xd4@y#3A;\xf2\x1e@5\xd3\xfd@\x99\xd6DA\x99\x87\xb2?\x08\x90\xcd@\xa4LVA\x174\x92?b+\xb7@QdeAq\x86\xda?5+\xbd@\xdb\\XA\x84N\x93=PC\x99@\xc0\x9efAx\x9b\xb5<\x89L\x89@\x92\x01GA\xbb4H\xbfL\xc3\x93@~uGA\xf1+\xe8\xbf8jl@\xce,VAz\xa7\xe2\xbf\xeb9U@j;3A\x1f\xb9\n?4\xaf\xc8@\x9d\x1d%AY$`?I^\xd9@\\/4A\x07\x11\n\xbfU\xd1\xab@\x9a\x1b&A\xe6\xe3\x90\xbfQ\xf8\xa6@s\xd5WA\xa2}\x84@\xa3v\x0bA)\xbccAs\x9a\x9c@\xc7\x8b\x02A\xf3\x9aMA\xf8\xd6\x92@\xe3H\x1dAnQBA\x8f\x1b\x81@\x02\x0c%ACHWA\xbc\xbf\xb7@\x0e\x9d)A+NTA(*\xd5@\xe0:\x1fA\x02WOAO\xf5\xbb@\x96hAA+\xabWA\xbb\x1e\xd4@\x88\x1dKAP\x04RAf\xfe\x9d@\xa6|IA\x1e\xe69A\xa3D\xca@\xc3\xfd@A\x8e\xf50A~A\xb1@\xbc0A\x87/\x87A{\x7f\x16A\xd0_RA\xbb\xad\x86A\x1bS\xeb@\xe0\x8d^A\x17;\x8cAX\x07\xf2@\x81\xa0nA\xe5\xba\x7fAi\x84\xcd@\xcc\xcc\\Ag\x14\xa3AE)\tAi\xde+A(\xdf\xa9Ad\xb8\x16A\xa8\x81/A\xcaZ\xa5A\xe0\xde\xea@\xce\x1e$A\xdb\x9c\x9fAQ\xcd\xd3@\xe7\x88!A\xa1\xd1\xafA(\x1f\xda@V\xa1\x1dAx5\xb5Aa\x08\xdd@\xe7\x8e*A\n\xed\xaeA3\xce\xaa@\x18\x88\x17A\xe9\xf6\xa7Ay\x9d\xa5@\xcaY\rA\xae=\xadA\x96$\x9a@\xf7\x9f&A\xdb\xa2\xb6A:\xea\x9f@\xd4-\x0eA\xee\x00\xb4A\xcf\xad\xf1@\x12[\tA\x0b\x10\xbdA\x0c\xe4\x00A\xd8\xaf\x07A\xe6\xc6\xacA\x18\xa0\xf5@\x99\xd5\xf0@2r\xa5A\xda\xb7\xe8@/h\xf1@\x1fn\xafA\x7f\x89\x04A\xabz\xc8@\xbb\xc9\xb6A\xea\xb6\x0cA\x18\xc7\xcd@%\xee\xa8A\xdc\xa1\x0eA\xdc0\xbf@\x06\xdf\xafA\xfbi\xec@\xff\xe0\xa2@b^\xb7A\xcf\xa1\xec@Y@\x88@\xc9|\xa7A\xbe\x00\xd3@\x00\x07\x9f@\xa0\xcd\xa1A\x89\x8e\xd1@\xb6\xfa\xb6@C\xc8\xa6A;\n\xb6@X/v@\xfe\xf5\xadA\xb13\xb9@p\xeaO@`b\xa5A$s\x85@\xdd\x96\x8a@c@\xa6A\n:d@\xfb?[@\\\xe0\x9dA\xa3ow@\xdb\x88\x9b@\xd4|\xaeA\x08\xc9l@\xd3\x0f\xa7@$\x11\xadA\x03\xea5@s\xbc\xc1@\x86x\xb8AK\xb6\x84@\xfe\x86\x9f@z\xab\xbeA\xbc\xd6q@fS\xb2@r\xfa\xb9A3\xb2\x99@\x8f/\x8a@\x9dV\x9dA\x04\x01\xc0@\xa5\x99<@\x1a\xe7\x9cA\xdb$\xab@:\xc3\xf1?\x8c\r\x96A/l\xda@H\xf3W@\xba\x90\x96A\xcd$\xe5@}o\x8a@\xec\t\x8cAv\x1a\xe4@\x17K)@\xb9M\x8eA\xbfG\xe2@w\xd2\xc8?\x84e\x83Ad\xe4\xbe@5\xc8,@>\x98\x87A\x1d\x81\xa3@TF\x1d@\xf5\xa1vA:\xf1\xc5@\x18~\xd9?\x18\x06{A\xad3\xb4@\x1ddb?8\x13|A\x9c\xbc\xbb@\x97\xa1\x83@&\xb7rA\xdc]\xd7@\xf2\xb4\x8d@\xc4\x0e\x85A\r\xe6\xb5@C2\x98@\xa6\xcdpA\x14d\x9f@kp\x86@\xa3\x17\x87A\xfd\xce\x06A\xebKB@\x0b*\x8bA\x07/\x12Ao\x8aw@\xa0\xa5|A\x80p\x0eA\x0c\x86\x19@\xf9\x7fvA\xc73\x05AT\x17\xd3?\x0b\xb8pA\xed3!A\x1b(4@3\xddwA\xa7\xeb\'A\xd0\rn@^)rA-B4ATU\xe3?\xd1`hA\xfc\x89.A\xb1>m?\xa2\xc8\x81A\\y6A\xcbm\xbe?\xb3\xaehA\x03\x9dJA\xc8?\x10@>ptAV\x0fSA\x93\x18A@\xbd\xdcYA\xf6OHA"\xe0-@\xd6ghA\x95\xc8XA?\xb6~?\xd5*`A\xe8[PA\x99\n\xf8=\x1b\xaaxAS\xd7[A3\xef\x07?2\x1b^A\x9a\x18oA\xa5\xec\x8b?\xb7\x05iA\xc9*yAA/\xde?\xce\xadMA\xec\xfckAw\x14\xcf?D4YAf\xe7vA\x99\x0e\x8c\xbev\xf4_A\xf4\x10mA\x07\xf6\x85\xbf\x12\xfa]Ar\xd3\x83A\xc0\x97\xba\xbe\xcb\xcbHAC\xfcvA\x8e\xa3\xcb\xbe\xfc\x8cYA]\xfd\x1aA\x1d^P@\n\xb2LA\x7fR\x14AK\x86\x1a@\x93cUA\x7fQ\x1cA\x0f\xfe\x93@\xc1K`A!|"A\xcb\xd7\xa8@\x8f\xdb@AgV\x14Al\x8c\xa2@\x18\x95:A\xf8\x8c\x07A!_\x8f@\xc7\x08DA3\xcd\x0bA*y\xd2@\xd5lEA6a\x19A\xecz\xea@\xd2\xa2QAMP\x01A\xbfl\xd3@\x91\xb40A>\xb7\xfb@Ki\xde@\x99X A\x83\x97\x05A\tS\xf8@M\xce\x1eAPM\x16A\xbbg\xfe@\x1f\x1f\x11A\x01l\xee@\xdf \x05A\xa6\xcc\x01A\xdc\x1c\xfc@\x08\xd9\x0cA\\p\x12A8M\xc2@\xbd)\x01A\x1eD\x01A\xf5\xc0\xa8@\x18\x16\x07AP\x99\xec@\xd7\x08\xbc@\x9e$\rAu\xcc2A\x94H\xcf@@\xe4\xd8@\xe3\x0eAA\x8f\x86\xc5@\xa6\xcd\xc8@{\xbd#AF\xe3\xb1@\xac]\xea@\x05\x97&A\xb4K\x91@\xe7}\xe6@\x0cJ0Ae\xf9%A\xf8\xe2\xa4@\xdb\x125A\x9a\xa87AkR\xb2@A0\x1cA\xa3\xcf!AyA\x93@\x12\xb7\x18A\xc1\xbd\x12A{\xb4\x87@\x01\xa3\x0bA\xa2\xe41AZ$\x91@\xbf\xd6\x0fA\x98\x0c@AY\xcf\x9f@Y\x84\x05A\x11\x9a8A#:E@=\x8d\x00A\xb8\x8e+A\x88\x01\x1d@P\x85\x13Ay\x9e\xa8EA%}D@\x050\xf3@\xda\xf0)Af\x0e\xac@\x1b\xda\xdf@)/\x19AP\x07\xa3@\xf31\xe9@8\xeb5A\x90\xe5\xcc@l\x8c\xf8@\x80,CA\x86\x99\xd8@\x1e9\xc6@\xf0\x941A\x9a\x1b\xea@p\xda\xba@\r\n#A~?\xdf@-\xc7\xd2@\xc5\xfa/A5\xb6\x0cADp\xde@8c@A\xbed\x12AO\x9e\xee@\x1bU$AR\xaa\x0cA\x1cW\xb0@\x1d\xf9\'Af\xfa\x1bA\xaf\x12\x9e@K\xd5\x1bA\xd5\xa2\x11A\xe4\xa1\x9a@\xff\xd84A\x8d\xbd\x1fA@\x9e\xc3@\x14&\x1cA\xc2;/A\xa8\xcf\xd6@\xa6"(A\xd2\x918A\r\xe8\xd8@\x8e\x8b\x0eA\xb6\xe9*A\xf9h\xa2@Z~\x12A\xf4\xf8=A\x02\x95\x92@\xb8\x88 A\xf5\xc2EA\xad\xc5\xad@@\xcb\tA\xbcRLA\xb8\xdd\x82@\x08\x10\x07A \x1b2A\xbfZN@\x8cR\tA8\x1b=A\nk\xd0@\xda\x97j@}0/A)\x1b\xc9@\x0c <@\xe8hNA\xe9\xac\xc2@~\x87G@\x8e1]A\x9f\xd5\xd4@\x9d\x91;@*\xa7RA\xd8\x86\x93@P\x95\x07@\xfa\xd0^AA}\x8d@\x94\xa5\x89@\xdbG]A#\xad\x88@\x93O\xa4@\xd7\xe6RA.\xbd\x93@!_\x8b@(\xealA\x19\x98\x9a@C\xff\x8b@\x9a\x8caAc\xfaM@o\x06,@\x98,@A5qm@d\xcf\xe9?\xd6\x8f6A?\xcf\x83@I\x1fc@\x10>5A\\\xf6r@8\x87\x1d@J\x18FA\x82\xdc(@\xa4D\xc5?\x18\x91HA#\x84\xd3@O\xfd\xa8?\x99t;A\xc8\xdc\xef@\xeb>\xe5>\xa3\xedRA\x8e\x7f\xc1@\x94E\x02?+\xc5_A\x01\xbd\xae@\xd2\xb5T\xbf\xf0\xe9NACq\xd3@\xb36Y\xbf\xe7YKA\xc1\x8a\xf6@\xb8p\xb2\xbfT\xb2eA\x96\x00\xd0@I\x02\x99\xbfi\xd6lA$u\xb0@r5C\xbfX\xednA\x9dR\xe7@\xd8\xc27\xc0\x81,gA\xf44\xdd@N\xbbR\xc0sw\\A\xa9B\xfc@\xcc*p\xc0\x03\xbenA\xf6r\xc3@}\xc9\xd7\xbfFC>Ap@\xbb@\x90\xa5\xa0\xbf\x19\x8d3A/\xfd\x9b@+R>\xc0\x99\x08:A\xf9$\xc9@9LM\xc0"OBA\x19C\xe4@g\x9a}\xc0\xe0\x821A\xe0\x99\xad@D\\y\xc0\xb4. A\x16,\xaf@+^o\xc0\xdb\x1f7AAF\x8d@BK\xab\xc0\xa3\x886A2X\xbd@\xcd\x8d\xcb\xc0Z\xfb-A\x06\xc6\xaf@m\xd3\xae\xc0\xc1\x06FAy\xcd\xdb@|\x82\x92\xc0\x7f\x0cMAr\xc8\xe5@\xd5\xc6\xd6\xc0\xee\x14PA\x05\xc5\xeb@\x19\xaa\xed\xc0\xd8pBA\x1b\xd7\xee@I;\xd3\xc0T\xc6YA\xed\xac\x0cA\xc3\x93\xf4\xc0j]^A\xad\x17\x11A\xd0\xcd\xb8\xc0\xee\xd7kA\xf9\xe9\x0bAb\xbb\x9b\xc0vnhA\x90\x1d\x06AL\x8d\xc0\xc0wdKA\x03\x00\x1fA\xfb`\x9d\xc0\x16JIA\x85\x0b\x1cA\x89\xa6\xd1\xc0\x98\xe3\t\xc1=\xfc\x8dA\xc2q^@\xd7r\xfb\xc0\'\x18\x94A\xc70o@a\x8f\x12\xc1\x1cy\x8dA#\xd2\x8e@1\x84\x08\xc1\xa6\xef\x81A\xaf\xf4\xd2?t\xec\x14\xc1\x1fpxA1"\xe7?\x85y\x13\xc1%\xaa\x8cA\xff\x16\x9b?&\x8a\x1f\xc1v\xf1\x8aAA5\xce>f\xfa\x07\xc1Cu\x93A\xb0\x1fk?\x10O\x1b\xc1N\x8a\x91A#;#@\x7f\x04\x1f\xc1\x89\xf3\x99A4f&@\x01\xa9+\xc1\xd5\x96\x8dA\x03\x8d,@\x97\t\xec\xc0jA}A}C4?\x92D\xc8\xc0\xe3\x9a\x82A\xfd\xfb\\?Hj\xf5\xc0\x08CnAB\\\x80\xbeG\xeb\x07\xc1\xa0XgA\x82\xc4\x89\xbe*u\xd9\xc0\xa3\xedcA\xd2&\x94\xbf\xa5 \xcc\xc0\xb4dVA%\xd3\x1c\xbfu\xf9\xf0\xc0\x13\xddYA0F\x18\xc0$\x88\x00\xc1\x02\xceeA\xe6\xa4?\xc0%G\xd1\xc0\xccLLA\x83|T\xc0\xd8\x05\xc7\xc0\xabU=A\xef\xf2-\xc0OC\xb4\xc0\x86\x10TAN\xc4j\xc0\xaf\xfd\xe4\xc0\xb2\xc7FA\x0e\x1f\x85\xc0\x1d\xf3\x08\xc1YXJA\xf8\xcb\xe9\xbf\xd8\x80\x03\xc1B\xb0EAywR\xbf\xb7\xca\n\xc1\xaep;A\xae<\x1e\xc0\r6\x19\xc1~\xd5PA\xfd!\xdf\xbf\x11\xa0\xb6\xc0\xcc^rA:$\xd8\xbfy\xf8\x90\xc0\x0c\x16nA\x96:\xc3\xbf\xa4>\xc6\xc0|\xbd\x81A\x82\x14\x18\xc0\xaaJ\xe4\xc0\x8fx\x82A;p\x19\xc0\x8a\xfa\xac\xc0+\x97\x8aA\xbe\x828\xc0\xd3^\x9c\xc0\xdfG\x87A\xb7Nm\xc0@\xe9\xc9\xc0\x1f\xe1\x93Aj\x96S\xc0\xeb{\xdb\xc0\xb7L\x97A$\x95\x1c\xc0\xfa\xac\xde\xc0[\xbc\x91Ay\xaf\x84\xc0\x99\xac\xb4\xc0\x1e\x0c\x9bAM\xbff\xc0Uu\x88\xc0\x81\xa7\x8eAjm\xfa\xbf\xa1BH\xc0+\x82\x8fA(\xb5\x1b\xc0{\xe6\x8f\xc0a\x1a\x91A&\xb6$\xbf3F\xac\xc0\xe29\x90A\xfe\x1c\x80\xbeR\xb7[\xc0\xdbK\x94A\x13\x00\x85>\xfe\xbf4\xc0D"\x9aAS\xb6\x88\xbe5\x98\x81\xc0bY\x99A\xdc\x83\xd2??en\xc0ez\x94Aec"@cB\xa5\xc0\x18Z\x98A\x92)\xc4?\'+o\xc0\xde&\xa5A\xe6r\xea?,\'\x89\xc0\xa0R\xa8A,\xdd.@#\x0f\x86\xc0\xd9\xd5\xa9A\xb0#\x80?b\x8f\x13\xc0\r}\xa8A6\xf7\x07@\x1c\x81\xc0\xbf[\xcd\xaaAD\xbf\x9e? \xf1\xf8\xbf\x82\xbb\xa7Ae\xe3U@\x0e?\x1d\xc0\xd6\xeb\x8bA!Q7?{,\xa4\xbf5\x1d\x8eA\xe4\xdc~?\x99\xd3<\xc0\x8fu\x81AI\x88M?\xf0!|\xc0.\x8c\x80A\x10\xda6?\x9b~\n\xc0\x01\xcapA\x8e\xc7\x84?4z\xbd\xbf4\xc8vA\x063\xee?3\xb4C\xc0\x8b8^A\xc1\x0c\xce??\xc5\x80\xc0\x86P]A\xe9\x8c|?\xe2\x80\x1b\xc0P\x1bGAD\t\xd9?X\xca\xb6\xbfSeHA\xd2[\x06@\t\x16\x11\xc0Y\x0eAA\xa4\x95*?\xccq=\xc0\xbb\xaa;AY4\x16@\x1c\x1d\\\xc0\xc20dA\xea_A@\xc5Xw\xc0\xb2\x85tA\x027G@\xfbb%\xc0\x1c\xe8cA5\xcbm@\x0b\xcd\x84\xc0\xac\x93XAg\xaa[@\xf2;\xac\xbf\xb4\xa6jA/\xbc*\xbe\xa1\xd7n\xbe/\xfa`Ae\x89\x92\xbd\xad^\xe9\xbf?xqAV-\xb1\xbfQ\xc0.\xc0\xdd\xacuA\x1fi\xbc\xbf\x8c(]\xbf\xcf\x8arA\xd9\\\x1f\xc01\xeb\xe9\xbeY>bA!\x9b%\xc0\x85\x1f\xc7\xbf\xd3AvA\x90\xa4z\xc0NF\x14\xc00\xb6\x81A\x8a/|\xc0E\xa8\x06\xc0U#fAb.\x84\xc0\xba\xef\x08\xbf\x11\x8d{A\xd9\xd7\xa1\xc0\xa5\xd18>\r\xb0nA\xbc\x91\xa7\xc0t-*\xbdN\x07\x85A"\xbb\x9a\xc0\xf6M\xa8\xbfj\x1f\x80A\xff\x11\xcb\xc0\x01O\xf9\xbff\x1f\x87A\xb9\x80\xca\xc0\x0f(\xfa\xbftvtA6\x8f\xd8\xc0\xf2ct\xbe}V\x82A\x7f\xec\xea\xc0\xbb\x84;?\xc0\'\x83A\xa7\xf7\xde\xc0\xd3A\x98\xbe\xe1\xa3}AR\xa3\t\xc1\xa1O\xb1\xbfq\xbdxA\\\x13\x15\xc1\xc2\xa1\x14\xc0\x1f!{AzH\x10\xc1$\xbe\x9e\xbf\xfe\xaaqA\xf9+$\xc1z8^?-\xf7zA\x0bz\x13\xc1\xae\x8aw?)zwA\xeeQ#\xc1=\xd4\xd1?\xbb\xee|A\xc5\xb2\t\xc1\xb9\x95C>\xc8y\x81A\x0c\x8b\x11\xc08\x03\xb0?\x13\xc0}Aq#\r\xc0\x03\x85_\xbem\x9b\x8bAu\x1d\x01\xc0\x9d(\x9a\xbf\xb3~\x8cA\xfe\xb5\xee\xbf\xff\x9c\'?\x86\xd7\x94AW\xae\xe5\xbf\x9f\xa9\x9d?3\xc6\x96A\x0b\x8b+\xc0\xd5\xcb\xd2\xbe\x19\xb8\x9dA\x9a\xcf\xb3\xbf\x16\x91\x83\xbf\xd1I\x9aA\r\xba\x1f\xbf\xed\x93\x94\xbf\x1b.\x9eAD\xfe\x0c\xc0\xe0\x91\x9f=\x93|\xa5A\xc7\xcf\x96\xbf\xb4\xca\xd5?6\xce\x92A\xf9\x9d1\xbf\xf9\xf14@\xac3\x96Ao\xe4:\xbf2\x13\xb2?T)\x8dA9\\\xf3>\xec\xd2\xce>\xa6\x01\x8cAv\xd9\x1c?\xca\xab\x19@E\xe0\x8aA\xb3\xfb\xc5?\x1b\x93/@\xe1\xe0\x92AS&\xe9?\xd6G\xda?m\xb1\x85A+80@\r, @\x9b\x1e\x82A>\\[@\x9d\x96{?\x8d\xd0~A\xd7\xa1\x1d@t[{?\xaaU\x89A\xa3T\x92@Q\xf2c@\xb0\x8b\x83A\xe92\x8c?\xc5u\x97@.\x17\x85A?\xe1\xb0?\xb8XR@\x8a\xfcvA\x0c6\xa0>W\xa0\x16@\x06\x1btA\xf6\xd1*<}\xd9\x87@4\x12jA\xec\x00\xd9\xbe\x08,\x9c@KAdA1 \xa3>=c_@\xb5\xf0XAC\x89\x9d\xbf\xc3\xc2\x85@+\x95PA;\xcb\xf4\xbfe\x8e*@5\xfa_A\xea#\xe5\xbf\xddGA@\xea\xd9FA\xbb=\x8c\xbe\xa9\xd1\x08@\xa3\x1eMA\xb8\xf9\x83>;\x8c(@\xd5\xed3A\xaf\xd7\x8e\xbf\xd9\x92\x16@\'Q&AHT\x06\xbf\xed$]@\'!/A\x1fx\xe2\xbfy\x19\xd7?tm8Ab(\xdb\xbf\xdf\xf1\x83@\xd4\x03=A\x94P\x0c?\x16/\x91@\x17\xb3HA%\x14\xa8?I\x94\x9a@a\x8f5A\r\x06\x0f\xbe\xaf\x96p@*\xd9.A\x94\x0b\x90?\xff\xff\xa2@\x18YwA\xb9B\xb1\xbf\x9dM\xca@\x08\x0evA\x98\x81\xa4\xbfM+\x90@g\t\x82AB\x16\x12\xc0,\xfda@f)\x81A\xfb\xd8\x19\xc07F\xa7@\xd3@\x89A^:G\xc0\x84q\xbc@\xae1\x85AQ\xe9v\xc0\xec\x17\x85@\xc6^\x90A\xc58s\xc0e\x89\x96@\xcf\xb5\x96A1)\x8b\xc0\xadtg@C\xd9\x94A\xa3\x14>\xc0\x9c\x97@@\xcdU\x8aA\xe1Y\x93\xc0r\xfe\x06@\x9b\xb5\x8fA\xdc"\x8f\xc0B\xa91@_7\x82AH8\x83\xc0\xda\xb5N@+\x9b\x88A\x0c\\\xc5\xc0\x94\x82\x16@\xec\x8d\x83Au\xb6\xd9\xc0\xef\xd2\x85@@\x1d\x8dAM\x88\xd7\xc0\xac\x7f\xc5@\xcb:\x90A\xf2\x94\x18\xc0\x1f{\xe9@\xc0\xc4\x90A\x9e\x82)\xc0\xd8s\xb7@\x85m\x95Az\xb2\xa7\xbf}\xdb\x97@i\x99\x94A|\xbd\x80\xbfZ{\xd1@\xdb\x12\x9bA{E\xad\xbe\r\xc2\xd9@\x9bP\xa2A\x04\xcbR\xbf7a\xb8@7b\x9fA\xce\x9e^?\x85\r\xce@\xad\xb0\xa3A\xcd\x99\xd0?I\xa6\xa7@\xb5h\x99A\x02\xf2\xbc?PN\x94@L\x8f\xa7A\xfd\xe0\xfe>\xb3(\x82@NL\xa4A\x89\x05\xb3\xbe\x1d\x8d\xa3@\xdd3\xafA\xabuI>\x9e\xb1c@Q\x01\xa9A\xdc\xd2\xd5?lBx@\x95.\xafA\xeb\xf0\x15@\x1a\xb5_@\xcc\xe0\xa0A+\xd0\x0e@\xba\x89\x04@\xa8Y\xabAi\x10\x9f?(\xcd\xeb?C:\xa7AL\xe3\xa4>\x8d\x11\x07@\xa7\xca\xb3A\x8eH_?g\x9ar?c.\xaaAZ\x9a\x0e@\xf2&m?\xac\x90\xb0A\xf8\xff;@\xbb\xac\x88?>\xe2\xa2A\xec`2@\xe3(\x9b:j\xe8\xa9A\xad\xbf\xe0?6l\xfb@*H\x96Ay\x18->\xb6\t\rAe\x14\x9cA\x0b\xbf\x08?\xdb\x16\xfc@N#\x8bA\xd0\x16\xc2>\xb1r\xe5@\xe9\x0f\x87A\xbe\x86\xae\xbd\xbb\xeb\x10A\x93\x0f\x85A)\xe6f?%\xd4\x1cA\xfeK\x8aA\x99\xae\xb0?L\xc5\tA\x93\xedyA\xcb\x15\x01@\xa4\xf2\xff@\x1f\xfckA\xd6f\xcf?=W\x1fA\x07\xe1qA\x04\x84)@vS(A\xcd~\x7fA\xcb\x93D@s\xe4\'A\xdf*iA >\xea?\xcax\x1aA\xb9\xaafA\xcf\xc0\\@\xf2\x99\xf9@H \x83A\x9b\xb0G@\xe6\xf0\xda@)\xfb\x86A \xf83@\xab\x8e\x07Ab1\x89A\xf7\xb3b@\xf5_\xea@})wA\xb6=\x89@\xbd\x12\xd6@\x03\xa5\x80A4\x1f\x9d@jt\x02A\xe1\x16qA\x1ca\x9b@\xea\xb0\xd7@\xcc\\iA\x91\xe1v@\x93\xec\x1cA\x82T}A\xb1J7\xbeW\x1d0A\xa6\x07~A%\x14\x0c\xbe\xf7.\x12At\xf7qA\x00Q\x8c\xbf\xaf\x93\x02A\n\nY\xc0M,\xdf@5\xbb?A\xa3\xca\x8c\xc0!\xfd\xb5@\xc6\x80PA*p\\\xc0\xc6\xb1\xc8@\xcb\x825A\x11D>\xc0\xf8\x9a\x0cA\xba\xe8;A!\x96\x1f\xc0\xa4m\x13A\xe4\xc8:ATMe\xc0\x08F\x06A\xc9\xed*AC\x03\r\xc0\xb1P\x19Ae\xc0=A\xefB\xde\xbf\xc1\xef&A\xe9SzA\x05\x92M\xc0$c:A#tyA\xacQK\xc0\x82\xe1\x1bA\xef\\\x83A\x96\xc0\x82\xc0@\xa2\x0bA2E\x83A\xe4^}\xc0\xdc$$Ah\xa5\x8aA\xacH\xa2\xc0\xe7p5A\xb6!\x8aA3/\xa2\xc0\xb2\xb7\x1eA\xcf\'\x92A\xd5r\x99\xc0\x9f\xa7\x19Av&\x87A\\\x97\xcd\xc0\xb8\x85\x0bA\xdb[\x8dA\xf3T\xe0\xc0\x9cA\x1bAt\xd3zA\x91d\xd7\xc0' -tba. \ No newline at end of file diff --git a/testsuite/MDAnalysisTests/datafiles.py b/testsuite/MDAnalysisTests/datafiles.py index 526c0b5bb24..0be316a898f 100644 --- a/testsuite/MDAnalysisTests/datafiles.py +++ b/testsuite/MDAnalysisTests/datafiles.py @@ -151,9 +151,9 @@ from pkg_resources import resource_filename legacy_DCD_NAMD_coords = resource_filename(__name__, -'data/legacy_DCD_NAMD_coords.p') +'data/legacy_DCD_NAMD_coords.npy') legacy_DCD_ADK_coords = resource_filename(__name__, -'data/legacy_DCD_adk_coords.p') +'data/legacy_DCD_adk_coords.npy') AUX_XVG_LOWF = resource_filename(__name__, 'data/test_lowf.xvg') AUX_XVG_HIGHF = resource_filename(__name__, 'data/test_highf.xvg') XVG_BAD_NCOL = resource_filename(__name__, 'data/bad_num_col.xvg') diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 8351be8a22b..09cbc77e698 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -18,8 +18,6 @@ from MDAnalysisTests import tempdir import numpy as np import os -import pickle -import sys class DCDReadFrameTest(TestCase): @@ -62,17 +60,12 @@ def test_read_coord_values(self): # to reduce repo storage burden, we only compare for a few # randomly selected frames - if sys.version_info[0] > 2: - self.legacy_DCD_frame_data = pickle.load(open(self.legacy_data, - 'rb'), encoding='latin1') - else: - self.legacy_DCD_frame_data = pickle.load(open(self.legacy_data, - 'rb')) - - for frame_num in self.selected_legacy_frames: + self.legacy_DCD_frame_data = np.load(self.legacy_data) + + for index, frame_num in enumerate(self.selected_legacy_frames): self.dcdfile.seek(frame_num) actual_coords = self.dcdfile.read()[0] - desired_coords = self.legacy_DCD_frame_data.pop(0) + desired_coords = self.legacy_DCD_frame_data[index] assert_equal(actual_coords, desired_coords) diff --git a/testsuite/setup.py b/testsuite/setup.py index 2a73c4930f9..1480a88fb8a 100755 --- a/testsuite/setup.py +++ b/testsuite/setup.py @@ -207,7 +207,6 @@ def dynamic_author_list(): 'data/coordinates/*', 'data/*xvg', 'data/*.mmtf', 'data/*.mmtf.gz', 'data/analysis/*', - 'data/*.p' ], }, classifiers=CLASSIFIERS, From 03368e215289ca7ab23b6d71a47717b10529d3bc Mon Sep 17 00:00:00 2001 From: tylerjereddy Date: Tue, 9 May 2017 15:06:10 -0600 Subject: [PATCH 077/107] The use of read_dcdsubset in DCDFile Cython code has been replaced by the expected read_dcdstep. Unit cell handling behavior in the latter C-level function has been patched to reflect previous adjustment in MDA relating to DCD file unit cell formatting. All unit tests passing, including the reading of the NAMD DCD unit cell info --- .../MDAnalysis/lib/formats/include/readdcd.h | 27 +++++++++++++++++++ package/MDAnalysis/lib/formats/libdcd.pyx | 2 +- .../MDAnalysisTests/formats/test_libdcd.py | 10 ++++--- 3 files changed, 35 insertions(+), 4 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index 3888c51f81a..f850a91b5b8 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -530,6 +530,9 @@ static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, int first, int *indexes, float *fixedcoords, int reverseEndian, int charmm) { int ret_val; /* Return value from read */ + float alpha, beta, gamma; + unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; + unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; if ((num_fixed==0) || first) { int tmpbuf[6]; /* temp storage for reading formatting info */ @@ -619,6 +622,30 @@ static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, if (ret_val) return ret_val; } + + if (unitcell[1] >= -1.0 && unitcell[1] <= 1.0 && + unitcell[3] >= -1.0 && unitcell[3] <= 1.0 && + unitcell[4] >= -1.0 && unitcell[4] <= 1.0) { + /* This file was generated by Charmm, or by NAMD > 2.5, with the angle */ + /* cosines of the periodic cell angles written to the DCD file. */ + /* This formulation improves rounding behavior for orthogonal cells */ + /* so that the angles end up at precisely 90 degrees, unlike acos(). */ + /* (changed in MDAnalysis 0.9.0 to have NAMD ordering of the angles; */ + /* see Issue 187) */ + alpha = 90.0 - asin(unitcell[4]) * 90.0 / M_PI_2; + beta = 90.0 - asin(unitcell[3]) * 90.0 / M_PI_2; + gamma = 90.0 - asin(unitcell[1]) * 90.0 / M_PI_2; + } else { + /* This file was likely generated by NAMD 2.5 and the periodic cell */ + /* angles are specified in degrees rather than angle cosines. */ + alpha = unitcell[4]; + beta = unitcell[3]; + gamma = unitcell[1]; + } + unitcell[4] = alpha; + unitcell[3] = beta; + unitcell[1] = gamma; + return DCD_SUCCESS; } diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index a74b126beea..b5ab722ed1c 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -277,7 +277,7 @@ cdef class DCDFile: cdef int lowerb = 0 cdef int upperb = self.n_atoms - 1 - ok = read_dcdsubset(self.fp, self.n_atoms, lowerb, upperb, + ok = read_dcdstep(self.fp, self.n_atoms, &x[0], &y[0], &z[0], unitcell.data, self.nfixed, first_frame, diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 09cbc77e698..57dd431519e 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -31,6 +31,8 @@ def setUp(self): self.selected_legacy_frames = [5, 29] self.legacy_data = legacy_DCD_ADK_coords self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' + self.expected_unit_cell = np.array([ 0., 0., 0., 90., 90., 90.], + dtype=np.float32) def tearDown(self): del self.dcdfile @@ -75,9 +77,7 @@ def test_read_unit_cell(self): # MDAnalysis implementation of DCD file handling dcd_frame = self.dcdfile.read() unitcell = dcd_frame[1] - expected = np.array([ 0., 0., 0., 90., 90., 90.], - dtype=np.float32) - assert_equal(unitcell, expected) + assert_equal(unitcell, self.expected_unit_cell) def test_seek_over_max(self): # should raise IOError if beyond 98th frame @@ -416,3 +416,7 @@ def setUp(self): self.selected_legacy_frames = [0] self.legacy_data = legacy_DCD_NAMD_coords self.expected_remarks = 'Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,' + # expected unit cell based on previous DCD framework read in: + self.expected_unit_cell = np.array([ 38.42659378, 38.39310074, 44.75979996, + 90. , 90. , 60.02891541], + dtype=np.float32) From 868936d2e029019b530c9fe0b3154ae9b4869547 Mon Sep 17 00:00:00 2001 From: tylerjereddy Date: Tue, 9 May 2017 15:36:50 -0600 Subject: [PATCH 078/107] Testing of unit cell data writing has been restricted--NAMD unit cell data writing is not currently supported. --- .../MDAnalysisTests/formats/test_libdcd.py | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 57dd431519e..a6b66abf01c 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -242,16 +242,14 @@ def test_written_dcd_coordinate_data_shape(self): def test_written_unit_cell(self): # written unit cell dimensions should match for all frames - expected = np.array([ 0., 0., 0., 90., 90., 90.], - dtype=np.float32) - with DCDFile(self.testfile) as f: - if f.n_frames > 1: - for frame in f: - unitcell = f.read()[1] - assert_equal(unitcell, expected) - else: - unitcell = f.read()[1] - assert_equal(unitcell, expected) + test = DCDFile(self.testfile) + ref = DCDFile(self.readfile) + curr_frame = 0 + while curr_frame < test.n_frames: + written_unitcell = test.read()[1] + ref_unitcell = ref.read()[1] + curr_frame += 1 + assert_equal(written_unitcell, ref_unitcell) def test_written_num_frames(self): with DCDFile(self.testfile) as f: @@ -394,6 +392,11 @@ def setUp(self): ts_between_saves=f_in.nsavc, remarks=f_in.remarks) + def test_written_unit_cell(self): + # there's no expectation that we can write unit cell + # data in NAMD format at the moment + pass + class DCDWriteHeaderTestNAMD(DCDWriteHeaderTest, TestCase): # repeat header writing tests for NAMD format DCD From 1275e55bc3a0d8503581d1e04714fc1bd3111847 Mon Sep 17 00:00:00 2001 From: Date: Tue, 9 May 2017 23:27:06 -0600 Subject: [PATCH 079/107] Unit cell debug work. --- .../MDAnalysis/lib/formats/include/readdcd.h | 4 +-- package/MDAnalysis/lib/formats/libdcd.pyx | 15 ++++++++--- .../MDAnalysisTests/formats/test_libdcd.py | 26 ++++++++++++++----- 3 files changed, 32 insertions(+), 13 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index f850a91b5b8..efebc4a9bb4 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -531,8 +531,8 @@ static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, int reverseEndian, int charmm) { int ret_val; /* Return value from read */ float alpha, beta, gamma; - unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; - unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; + /*unitcell[0] = unitcell[2] = unitcell[5] = 0.0f;*/ + /*unitcell[1] = unitcell[3] = unitcell[4] = 90.0f;*/ if ((num_fixed==0) || first) { int tmpbuf[6]; /* temp storage for reading formatting info */ diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index b5ab722ed1c..651fa9fd18c 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -301,7 +301,8 @@ cdef class DCDFile: e1, e2, e3 = H[[0,1,3]], H[[1,2,4]], H[[3,4,5]] uc = triclinic_box(e1, e2, e3) - unitcell = uc + unitcell = uc.astype(np.float32) + print 'Cython unitcell read-in:', unitcell return DCDFrame(xyz, unitcell) @@ -339,7 +340,8 @@ cdef class DCDFile: self.current_frame = frame def _write_header(self, remarks, int n_atoms, int starting_step, - int ts_between_saves, double time_step): + int ts_between_saves, double time_step, + int charmm): if not self.is_open: raise IOError("No file open") @@ -351,6 +353,7 @@ cdef class DCDFile: cdef int len_remarks = 0 cdef int with_unitcell = 1 + if isinstance(remarks, six.string_types): try: remarks = bytearray(remarks, 'ascii') @@ -359,7 +362,7 @@ cdef class DCDFile: ok = write_dcdheader(self.fp, remarks, n_atoms, starting_step, ts_between_saves, time_step, with_unitcell, - self.charmm) + charmm) if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) @@ -398,9 +401,13 @@ cdef class DCDFile: if self.current_frame == 0: self._write_header(remarks=remarks, n_atoms=xyz.shape[0], starting_step=step, ts_between_saves=ts_between_saves, - time_step=time_step) + time_step=time_step, + charmm=charmm) self.n_atoms = xyz.shape[0] + print('box in Cython write function:', box[0], box[1], + box[2], box[3], box[4], box[5], + 'for frame:', self.current_frame) ok = write_dcdstep(self.fp, step, self.current_frame, self.n_atoms, &x[0], &y[0], &z[0], diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index a6b66abf01c..19193aec204 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -33,6 +33,7 @@ def setUp(self): self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' self.expected_unit_cell = np.array([ 0., 0., 0., 90., 90., 90.], dtype=np.float32) + print('self.expected_unit_cell:', self.expected_unit_cell) def tearDown(self): del self.dcdfile @@ -75,6 +76,7 @@ def test_read_coord_values(self): def test_read_unit_cell(self): # confirm unit cell read against result from previous # MDAnalysis implementation of DCD file handling + print('self.dcdfile.fname:', self.dcdfile.fname) dcd_frame = self.dcdfile.read() unitcell = dcd_frame[1] assert_equal(unitcell, self.expected_unit_cell) @@ -163,7 +165,8 @@ def test_write_header_crude(self): # header for a new / empty file self.dcdfile._write_header(remarks='Crazy!', n_atoms=22, starting_step=12, ts_between_saves=10, - time_step=0.02) + time_step=0.02, + charmm=1) self.dcdfile.close() # we're not actually asserting anything, yet @@ -179,7 +182,8 @@ def test_write_header_mode_sensitivy(self): with self.assertRaises(IOError): self.dcdfile_r._write_header(remarks='Crazy!', n_atoms=22, starting_step=12, ts_between_saves=10, - time_step=0.02) + time_step=0.02, + charmm=1) @@ -198,12 +202,14 @@ def setUp(self): with self.dcdfile_r as f_in, self.dcdfile as f_out: for frame in f_in: - frame = frame._asdict() - f_out.write(xyz=frame['x'], - box=frame['unitcell'].astype(np.float64), + frame_dict = frame._asdict() + box=frame_dict['unitcell'].astype(np.float64) + print('setUp box:', box) + f_out.write(xyz=frame_dict['x'], + box=box, step=f_in.istart, - natoms=frame['x'].shape[0], - charmm=0, + natoms=frame_dict['x'].shape[0], + charmm=1, # DCD should be CHARMM time_step=f_in.delta, ts_between_saves=f_in.nsavc, remarks=f_in.remarks) @@ -246,8 +252,11 @@ def test_written_unit_cell(self): ref = DCDFile(self.readfile) curr_frame = 0 while curr_frame < test.n_frames: + print('curr_frame:', curr_frame) written_unitcell = test.read()[1] + print('written_unitcell:', written_unitcell) ref_unitcell = ref.read()[1] + print('ref_unitcell:', ref_unitcell) curr_frame += 1 assert_equal(written_unitcell, ref_unitcell) @@ -423,3 +432,6 @@ def setUp(self): self.expected_unit_cell = np.array([ 38.42659378, 38.39310074, 44.75979996, 90. , 90. , 60.02891541], dtype=np.float32) + + def tearDown(self): + del self.dcdfile From 16fb6239c28ea4fc82b45f8a39cf87da97195259 Mon Sep 17 00:00:00 2001 From: tylerjereddy Date: Wed, 10 May 2017 17:43:37 -0600 Subject: [PATCH 080/107] Adjustments to DCD unit cell handling code that enable a read-write-read unit cell cycle for the DCD test file, and also allow a read-write-read cycle for randomly generated charmm unit cell data. --- .../MDAnalysis/lib/formats/include/readdcd.h | 6 +- package/MDAnalysis/lib/formats/libdcd.pyx | 31 +++++--- .../MDAnalysisTests/formats/test_libdcd.py | 73 ++++++++++++++++--- 3 files changed, 88 insertions(+), 22 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index efebc4a9bb4..d668088919f 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -136,7 +136,7 @@ static int write_dcdheader(fio_fd fd, const char *remarks, int natoms, * Output: 0 on success, negative error code on failure. * Side effects: coordinates are written to the dcd file. */ -static int write_dcdstep(fio_fd fd, int curstep, int curframe, +static int write_dcdstep(fio_fd fd, int curframe, int curstep, int natoms, const float *x, const float *y, const float *z, const double *unitcell, int charmm); @@ -531,8 +531,8 @@ static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, int reverseEndian, int charmm) { int ret_val; /* Return value from read */ float alpha, beta, gamma; - /*unitcell[0] = unitcell[2] = unitcell[5] = 0.0f;*/ - /*unitcell[1] = unitcell[3] = unitcell[4] = 90.0f;*/ + unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; + unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; if ((num_fixed==0) || first) { int tmpbuf[6]; /* temp storage for reading formatting info */ diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 651fa9fd18c..5405f3df6b9 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -92,7 +92,7 @@ cdef extern from 'include/readdcd.h': int write_dcdheader(fio_fd fd, const char *remarks, int natoms, int istart, int nsavc, double delta, int with_unitcell, int charmm); - int write_dcdstep(fio_fd fd, int curstep, int curframe, + int write_dcdstep(fio_fd fd, int curframe, int curstep, int natoms, const float *x, const float *y, const float *z, const double *unitcell, int charmm); @@ -274,9 +274,6 @@ cdef class DCDFile: first_frame = self.current_frame == 0 - cdef int lowerb = 0 - cdef int upperb = self.n_atoms - 1 - ok = read_dcdstep(self.fp, self.n_atoms, &x[0], &y[0], &z[0], @@ -301,8 +298,7 @@ cdef class DCDFile: e1, e2, e3 = H[[0,1,3]], H[[1,2,4]], H[[3,4,5]] uc = triclinic_box(e1, e2, e3) - unitcell = uc.astype(np.float32) - print 'Cython unitcell read-in:', unitcell + unitcell = uc return DCDFrame(xyz, unitcell) @@ -397,6 +393,7 @@ cdef class DCDFile: cdef FLOAT_T[::1] x = xyz[:, 0] cdef FLOAT_T[::1] y = xyz[:, 1] cdef FLOAT_T[::1] z = xyz[:, 2] + cdef float alpha, beta, gamma, a, b, c; if self.current_frame == 0: self._write_header(remarks=remarks, n_atoms=xyz.shape[0], starting_step=step, @@ -405,10 +402,24 @@ cdef class DCDFile: charmm=charmm) self.n_atoms = xyz.shape[0] - print('box in Cython write function:', box[0], box[1], - box[2], box[3], box[4], box[5], - 'for frame:', self.current_frame) - ok = write_dcdstep(self.fp, step, self.current_frame, + # looks like self.nsavc is just 0 all the time + step = self.current_frame * self.nsavc + + # we only support writing charmm format unit cell info + alpha = box[3] + beta = box[4] + gamma = box[5] + a = box[0] + b = box[1] + c = box[2] + box[0] = a + box[1] = gamma + box[2] = b + box[3] = beta + box[4] = alpha + box[5] = c + + ok = write_dcdstep(self.fp, self.current_frame, step, self.n_atoms, &x[0], &y[0], &z[0], &box[0], charmm) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 19193aec204..2145a9a129d 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -5,6 +5,7 @@ from numpy.testing import assert_equal, assert_array_equal from numpy.testing import assert_array_almost_equal from numpy.testing import assert_almost_equal +from numpy.testing import assert_allclose from MDAnalysis.lib.formats.libdcd import DCDFile from MDAnalysisTests.datafiles import (PSF, DCD, DCD_NAMD_TRICLINIC, @@ -18,6 +19,7 @@ from MDAnalysisTests import tempdir import numpy as np import os +import math class DCDReadFrameTest(TestCase): @@ -33,7 +35,6 @@ def setUp(self): self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' self.expected_unit_cell = np.array([ 0., 0., 0., 90., 90., 90.], dtype=np.float32) - print('self.expected_unit_cell:', self.expected_unit_cell) def tearDown(self): del self.dcdfile @@ -76,7 +77,6 @@ def test_read_coord_values(self): def test_read_unit_cell(self): # confirm unit cell read against result from previous # MDAnalysis implementation of DCD file handling - print('self.dcdfile.fname:', self.dcdfile.fname) dcd_frame = self.dcdfile.read() unitcell = dcd_frame[1] assert_equal(unitcell, self.expected_unit_cell) @@ -204,7 +204,6 @@ def setUp(self): for frame in f_in: frame_dict = frame._asdict() box=frame_dict['unitcell'].astype(np.float64) - print('setUp box:', box) f_out.write(xyz=frame_dict['x'], box=box, step=f_in.istart, @@ -248,15 +247,12 @@ def test_written_dcd_coordinate_data_shape(self): def test_written_unit_cell(self): # written unit cell dimensions should match for all frames - test = DCDFile(self.testfile) ref = DCDFile(self.readfile) + test = DCDFile(self.testfile) curr_frame = 0 while curr_frame < test.n_frames: - print('curr_frame:', curr_frame) written_unitcell = test.read()[1] - print('written_unitcell:', written_unitcell) ref_unitcell = ref.read()[1] - print('ref_unitcell:', ref_unitcell) curr_frame += 1 assert_equal(written_unitcell, ref_unitcell) @@ -329,9 +325,7 @@ def test_relative_frame_sizes(self): general_frame_size = self.dcdfile._framesize for frame in test: - print('frame iteration') written_coords = test.read()[0] - print('after test read') ref_coords = ref.read()[0] assert_equal(written_coords, ref_coords) @@ -435,3 +429,64 @@ def setUp(self): def tearDown(self): del self.dcdfile + +class DCDWriteTestRandom(TestCase): + + def setUp(self): + self.tmpdir = tempdir.TempDir() + self.testfile = self.tmpdir.name + '/test.dcd' + self.readfile = DCD + self.dcdfile = DCDFile(self.testfile, 'w') + self.dcdfile_r = DCDFile(self.readfile, 'r') + self.natoms = 3341 + self.expected_frames = 98 + self.seek_frame = 91 + self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' + + # we should probably pin down the random seed in a numpy + # array rather than having tests that are actually random + # between runs + self.list_random_unit_cell_dims = [] + with self.dcdfile_r as f_in, self.dcdfile as f_out: + for frame in f_in: + random_unitcell = np.random.random(6).astype(np.float64) + self.list_random_unit_cell_dims.append(random_unitcell) + frame_dict = frame._asdict() + box=frame_dict['unitcell'].astype(np.float64) + f_out.write(xyz=frame_dict['x'], + box=random_unitcell, + step=f_in.istart, + natoms=frame_dict['x'].shape[0], + charmm=1, # DCD should be CHARMM + time_step=f_in.delta, + ts_between_saves=f_in.nsavc, + remarks=f_in.remarks) + + def tearDown(self): + try: + os.unlink(self.testfile) + except OSError: + pass + del self.tmpdir + + def test_written_unit_cell_random(self): + # written unit cell dimensions should match for all frames + # using randomly generated unit cells but some processing + # of the cosine data stored in charmm format is needed + # as well as shuffling of the orders in the unitcell + # array based on the prcoessing performed by + # DCDFile read and more generally relating to Issue 187 + test = DCDFile(self.testfile) + curr_frame = 0 + while curr_frame < test.n_frames: + written_unitcell = test.read()[1] + ref_unitcell = self.list_random_unit_cell_dims[curr_frame] + ref_unitcell[1] = math.degrees(math.acos(ref_unitcell[1])) + ref_unitcell[3] = math.degrees(math.acos(ref_unitcell[3])) + ref_unitcell[4] = math.degrees(math.acos(ref_unitcell[4])) + + _ts_order = [0, 2, 5, 4, 3, 1] + ref_unitcell = np.take(ref_unitcell, _ts_order) + curr_frame += 1 + assert_allclose(written_unitcell, ref_unitcell, + rtol=1e-05) From 0e4ab6cf2f6c36d8811dbdabdee54ef546419ad3 Mon Sep 17 00:00:00 2001 From: tylerjereddy Date: Wed, 10 May 2017 18:26:26 -0600 Subject: [PATCH 081/107] Added Charmm36 triclinic trajectory data unit tests -- all of them pass. --- .../data/legacy_DCD_c36_coords.npy | Bin 0 -> 9080 bytes testsuite/MDAnalysisTests/datafiles.py | 3 + .../MDAnalysisTests/formats/test_libdcd.py | 78 +++++++++++++++++- 3 files changed, 79 insertions(+), 2 deletions(-) create mode 100644 testsuite/MDAnalysisTests/data/legacy_DCD_c36_coords.npy diff --git a/testsuite/MDAnalysisTests/data/legacy_DCD_c36_coords.npy b/testsuite/MDAnalysisTests/data/legacy_DCD_c36_coords.npy new file mode 100644 index 0000000000000000000000000000000000000000..065a51cfeaae974f910b693dacb889cd8f22550c GIT binary patch literal 9080 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 Date: Wed, 10 May 2017 21:47:16 -0600 Subject: [PATCH 082/107] Removed extraneous unit cell handling code from C-level read_dcdsubset. --- .../MDAnalysis/lib/formats/include/readdcd.h | 25 ------------------- 1 file changed, 25 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index d668088919f..f4f7b99e5da 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -431,9 +431,6 @@ static int read_dcdsubset(fio_fd fd, int N, int lowerb, int upperb, float *X, fl //int ret_val; /* Return value from read */ fio_size_t seekpos; int input_integer; - float alpha, beta, gamma; - unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; - unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; if ((num_fixed==0) || first) { int rc, range; @@ -499,28 +496,6 @@ static int read_dcdsubset(fio_fd fd, int N, int lowerb, int upperb, float *X, fl } else { return DCD_BADFORMAT; } - if (unitcell[1] >= -1.0 && unitcell[1] <= 1.0 && - unitcell[3] >= -1.0 && unitcell[3] <= 1.0 && - unitcell[4] >= -1.0 && unitcell[4] <= 1.0) { - /* This file was generated by Charmm, or by NAMD > 2.5, with the angle */ - /* cosines of the periodic cell angles written to the DCD file. */ - /* This formulation improves rounding behavior for orthogonal cells */ - /* so that the angles end up at precisely 90 degrees, unlike acos(). */ - /* (changed in MDAnalysis 0.9.0 to have NAMD ordering of the angles; */ - /* see Issue 187) */ - alpha = 90.0 - asin(unitcell[4]) * 90.0 / M_PI_2; - beta = 90.0 - asin(unitcell[3]) * 90.0 / M_PI_2; - gamma = 90.0 - asin(unitcell[1]) * 90.0 / M_PI_2; - } else { - /* This file was likely generated by NAMD 2.5 and the periodic cell */ - /* angles are specified in degrees rather than angle cosines. */ - alpha = unitcell[4]; - beta = unitcell[3]; - gamma = unitcell[1]; - } - unitcell[4] = alpha; - unitcell[3] = beta; - unitcell[1] = gamma; return DCD_SUCCESS; } From 9a67273243ce890e68d145b14cc2311b2b1dfd3f Mon Sep 17 00:00:00 2001 From: Date: Wed, 10 May 2017 21:55:06 -0600 Subject: [PATCH 083/107] test_header_remarks has been adjusted to perform a direct string comparison, as requested in PR comments. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 7 ------- 1 file changed, 7 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 4ec5550d41c..8d5d7ac86a3 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -45,13 +45,6 @@ def tearDown(self): def test_header_remarks(self): # confirm correct header remarks section reading with self.dcdfile as f: - list_chars = [] - for element in f.remarks: - list_chars.append(element) - - list_chars = [] - for element in self.expected_remarks: - list_chars.append(element) assert_equal(len(f.remarks), len(self.expected_remarks)) def test_read_coords(self): From 6f9f28d49dbd05149ecd030e33f69e4542f111ec Mon Sep 17 00:00:00 2001 From: Date: Wed, 10 May 2017 22:02:23 -0600 Subject: [PATCH 084/107] Simplified code in test_iteration() unit test based on PR comments. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 8d5d7ac86a3..34b9265176d 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -93,13 +93,9 @@ def test_seek_negative(self): self.dcdfile.seek(-78) def test_iteration(self): - expected = 0 - while self.num_iters > 0: + for i in range(self.num_iters): self.dcdfile.__next__() - self.num_iters -= 1 - expected += 1 - - assert_equal(self.dcdfile.tell(), expected) + assert_equal(self.dcdfile.tell(), self.num_iters) def test_zero_based_frames(self): expected_frame = 0 From ab20b0a7145483fcc3a2a5e5fa09f34aefa24c94 Mon Sep 17 00:00:00 2001 From: Date: Wed, 10 May 2017 22:15:45 -0600 Subject: [PATCH 085/107] DCDWriteTestRandom now pins down the random seed for testing robustness. --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 34b9265176d..2a25d2e1326 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -506,18 +506,14 @@ def setUp(self): self.seek_frame = 91 self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' - # we should probably pin down the random seed in a numpy - # array rather than having tests that are actually random - # between runs - self.list_random_unit_cell_dims = [] + np.random.seed(1178083) + self.random_unitcells = np.random.random((self.expected_frames, 6)).astype(np.float64) with self.dcdfile_r as f_in, self.dcdfile as f_out: - for frame in f_in: - random_unitcell = np.random.random(6).astype(np.float64) - self.list_random_unit_cell_dims.append(random_unitcell) + for index, frame in enumerate(f_in): frame_dict = frame._asdict() box=frame_dict['unitcell'].astype(np.float64) f_out.write(xyz=frame_dict['x'], - box=random_unitcell, + box=self.random_unitcells[index], step=f_in.istart, natoms=frame_dict['x'].shape[0], charmm=1, # DCD should be CHARMM @@ -543,7 +539,7 @@ def test_written_unit_cell_random(self): curr_frame = 0 while curr_frame < test.n_frames: written_unitcell = test.read()[1] - ref_unitcell = self.list_random_unit_cell_dims[curr_frame] + ref_unitcell = self.random_unitcells[curr_frame] ref_unitcell[1] = math.degrees(math.acos(ref_unitcell[1])) ref_unitcell[3] = math.degrees(math.acos(ref_unitcell[3])) ref_unitcell[4] = math.degrees(math.acos(ref_unitcell[4])) From 1ed3324da9628bf84e86d17241bed21a315a5014 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 22 May 2017 09:20:00 +0200 Subject: [PATCH 086/107] fixes in libdcd fix repeated iteration of dcd file fix repeated context manager of dcd file --- package/MDAnalysis/lib/formats/libdcd.pyx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 5405f3df6b9..40c3042a899 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -134,6 +134,8 @@ cdef class DCDFile: def __enter__(self): """Support context manager""" + if not self.is_open: + self.open(self.fname, self.mode) return self def __exit__(self, exc_type, exc_val, exc_tb): @@ -178,9 +180,10 @@ cdef class DCDFile: "ErrorCode: {}".format(self.fname, ok)) self.is_open = True self.current_frame = 0 + self.reached_eof = False + # Has to come last since it checks the reached_eof flag if self.mode == 'r': self.remarks = self._read_header() - self.reached_eof = False def close(self): if self.is_open: From 51bbc3aed934b1cac47c3c20d0cf1eacdb4266f6 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 23 May 2017 14:26:26 +0200 Subject: [PATCH 087/107] Refactor libdcd test - remove TestCase usage - use context manager with short lived files - stop leaking of file dscriptors --- .../MDAnalysisTests/formats/test_libdcd.py | 357 ++++++++---------- 1 file changed, 167 insertions(+), 190 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 2a25d2e1326..1d9984d5bfa 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -2,9 +2,7 @@ from __future__ import absolute_import from nose.tools import raises -from numpy.testing import assert_equal, assert_array_equal -from numpy.testing import assert_array_almost_equal -from numpy.testing import assert_almost_equal +from numpy.testing import assert_equal from numpy.testing import assert_allclose from MDAnalysis.lib.formats.libdcd import DCDFile @@ -16,18 +14,17 @@ PSF_TRICLINIC, DCD_TRICLINIC) -from unittest import TestCase -import MDAnalysis from MDAnalysisTests.tempdir import run_in_tempdir from MDAnalysisTests import tempdir import numpy as np import os import math -class DCDReadFrameTest(TestCase): + +class TestDCDReadFrame(): def setUp(self): - self.dcdfile = DCDFile(DCD) + self.dcdfile = DCD self.natoms = 3341 self.traj_length = 98 self.new_frame = 91 @@ -39,18 +36,16 @@ def setUp(self): self.expected_unit_cell = np.array([ 0., 0., 0., 90., 90., 90.], dtype=np.float32) - def tearDown(self): - del self.dcdfile - def test_header_remarks(self): # confirm correct header remarks section reading - with self.dcdfile as f: + with DCDFile(self.dcdfile) as f: assert_equal(len(f.remarks), len(self.expected_remarks)) def test_read_coords(self): # confirm shape of coordinate data against result from previous # MDAnalysis implementation of DCD file handling - dcd_frame = self.dcdfile.read() + with DCDFile(self.dcdfile) as dcd: + dcd_frame = dcd.read() xyz = dcd_frame[0] assert_equal(xyz.shape, (self.natoms, 3)) @@ -60,55 +55,58 @@ def test_read_coord_values(self): # to reduce repo storage burden, we only compare for a few # randomly selected frames - self.legacy_DCD_frame_data = np.load(self.legacy_data) + legacy_DCD_frame_data = np.load(self.legacy_data) - for index, frame_num in enumerate(self.selected_legacy_frames): - self.dcdfile.seek(frame_num) - actual_coords = self.dcdfile.read()[0] - desired_coords = self.legacy_DCD_frame_data[index] - assert_equal(actual_coords, - desired_coords) + with DCDFile(self.dcdfile) as dcd: + for index, frame_num in enumerate(self.selected_legacy_frames): + dcd.seek(frame_num) + actual_coords = dcd.read()[0] + desired_coords = legacy_DCD_frame_data[index] + assert_equal(actual_coords, + desired_coords) def test_read_unit_cell(self): # confirm unit cell read against result from previous # MDAnalysis implementation of DCD file handling - dcd_frame = self.dcdfile.read() + with DCDFile(self.dcdfile) as dcd: + dcd_frame = dcd.read() unitcell = dcd_frame[1] assert_allclose(unitcell, self.expected_unit_cell, rtol=1e-05) + @raises(IOError) def test_seek_over_max(self): # should raise IOError if beyond 98th frame - with self.assertRaises(IOError): - self.dcdfile.seek(102) + with DCDFile(DCD) as dcd: + dcd.seek(102) def test_seek_normal(self): # frame seek within range is tested - self.dcdfile.seek(self.new_frame) - assert_equal(self.dcdfile.tell(), self.new_frame) + with DCDFile(self.dcdfile) as dcd: + dcd.seek(self.new_frame) + assert_equal(dcd.tell(), self.new_frame) + @raises(IOError) def test_seek_negative(self): # frame seek with negative number - with self.assertRaises(IOError): - self.dcdfile.seek(-78) + with DCDFile(self.dcdfile) as dcd: + dcd.seek(-78) def test_iteration(self): - for i in range(self.num_iters): - self.dcdfile.__next__() - assert_equal(self.dcdfile.tell(), self.num_iters) + with DCDFile(self.dcdfile) as dcd: + for i in range(self.num_iters): + dcd.__next__() + assert_equal(dcd.tell(), self.num_iters) def test_zero_based_frames(self): expected_frame = 0 - assert_equal(self.dcdfile.tell(), expected_frame) + with DCDFile(self.dcdfile) as dcd: + assert_equal(dcd.tell(), expected_frame) def test_length_traj(self): expected = self.traj_length - assert_equal(len(self.dcdfile), expected) - - def test_context_manager(self): - with self.dcdfile as f: - f.seek(self.context_frame) - assert_equal(f.tell(), self.context_frame) + with DCDFile(self.dcdfile) as dcd: + assert_equal(len(dcd), expected) @raises(IOError) def test_open_wrong_mode(self): @@ -119,7 +117,8 @@ def test_raise_not_existing(self): DCDFile('foo') def test_n_atoms(self): - assert_equal(self.dcdfile.n_atoms, self.natoms) + with DCDFile(self.dcdfile) as dcd: + assert_equal(dcd.n_atoms, self.natoms) @raises(IOError) @run_in_tempdir() @@ -129,37 +128,42 @@ def test_read_write_mode_file(self): @raises(IOError) def test_read_closed(self): - self.dcdfile.close() - self.dcdfile.read() + with DCDFile(self.dcdfile) as dcd: + dcd.close() + dcd.read() def test_iteration_2(self): - with self.dcdfile as f: - for frame in f: - pass + with DCDFile(self.dcdfile) as dcd: + with dcd as f: + for frame in f: + pass + # second iteration should work from start again + for frame in f: + pass + -class DCDWriteHeaderTest(TestCase): +class TestDCDWriteHeader(): def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' - self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(DCD, 'r') + self.dcdfile = DCD def tearDown(self): - try: + try: os.unlink(self.testfile) except OSError: pass del self.tmpdir - + def test_write_header_crude(self): # test that _write_header() can produce a very crude # header for a new / empty file - self.dcdfile._write_header(remarks='Crazy!', n_atoms=22, - starting_step=12, ts_between_saves=10, - time_step=0.02, - charmm=1) - self.dcdfile.close() + with DCDFile(self.testfile, 'w') as dcd: + dcd._write_header(remarks='Crazy!', n_atoms=22, + starting_step=12, ts_between_saves=10, + time_step=0.02, + charmm=1) # we're not actually asserting anything, yet # run with: nosetests test_libdcd.py --nocapture @@ -168,62 +172,63 @@ def test_write_header_crude(self): for element in f: print(element) + @raises(IOError) def test_write_header_mode_sensitivy(self): # an exception should be raised on any attempt to use # _write_header with a DCDFile object in 'r' mode - with self.assertRaises(IOError): - self.dcdfile_r._write_header(remarks='Crazy!', n_atoms=22, - starting_step=12, ts_between_saves=10, - time_step=0.02, - charmm=1) + with DCDFile(self.dcdfile) as dcd: + dcd._write_header(remarks='Crazy!', n_atoms=22, + starting_step=12, ts_between_saves=10, + time_step=0.02, + charmm=1) -class DCDWriteTest(TestCase): +class TestDCDWrite(): def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' self.readfile = DCD - self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(self.readfile, 'r') self.natoms = 3341 self.expected_frames = 98 self.seek_frame = 91 self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' + self._write_files() - with self.dcdfile_r as f_in, self.dcdfile as f_out: + def _write_files(self): + with DCDFile(self.readfile) as f_in, DCDFile(self.testfile, 'w') as f_out: for frame in f_in: - frame_dict = frame._asdict() - box=frame_dict['unitcell'].astype(np.float64) - f_out.write(xyz=frame_dict['x'], + box=frame.unitcell.astype(np.float64) + f_out.write(xyz=frame.x, box=box, step=f_in.istart, - natoms=frame_dict['x'].shape[0], + natoms=frame.x.shape[0], charmm=1, # DCD should be CHARMM time_step=f_in.delta, ts_between_saves=f_in.nsavc, remarks=f_in.remarks) def tearDown(self): - try: + try: os.unlink(self.testfile) except OSError: pass del self.tmpdir + @raises(IOError) def test_write_mode(self): # ensure that writing of DCD files only occurs with properly # opened files - with self.assertRaises(IOError): - self.dcdfile_r.write(xyz=np.zeros((3,3)), - box=np.zeros(6, dtype=np.float64), - step=0, - natoms=330, - charmm=0, - time_step=22.2, - ts_between_saves=3, - remarks='') + with DCDFile(self.readfile) as dcd: + dcd.write(xyz=np.zeros((3,3)), + box=np.zeros(6, dtype=np.float64), + step=0, + natoms=330, + charmm=0, + time_step=22.2, + ts_between_saves=3, + remarks='') def test_written_dcd_coordinate_data_shape(self): # written coord shape should match for all frames @@ -239,14 +244,13 @@ def test_written_dcd_coordinate_data_shape(self): def test_written_unit_cell(self): # written unit cell dimensions should match for all frames - ref = DCDFile(self.readfile) - test = DCDFile(self.testfile) - curr_frame = 0 - while curr_frame < test.n_frames: - written_unitcell = test.read()[1] - ref_unitcell = ref.read()[1] - curr_frame += 1 - assert_equal(written_unitcell, ref_unitcell) + with DCDFile(self.testfile) as test, DCDFile(self.readfile) as ref: + curr_frame = 0 + while curr_frame < test.n_frames: + written_unitcell = test.read()[1] + ref_unitcell = ref.read()[1] + curr_frame += 1 + assert_equal(written_unitcell, ref_unitcell) def test_written_num_frames(self): with DCDFile(self.testfile) as f: @@ -273,158 +277,137 @@ def test_written_remarks(self): def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written # to file, is preserved in the written DCD file - expected = self.dcdfile_r.nsavc - actual = DCDFile(self.testfile).nsavc - assert_equal(actual, expected) + with DCDFile(self.readfile) as dcd_r, DCDFile(self.testfile) as dcd: + assert_equal(dcd.nsavc, dcd_r.nsavc) def test_written_istart(self): # ensure that istart, the starting timestep, is preserved # in the written DCD file - expected = self.dcdfile_r.istart - actual = DCDFile(self.testfile).istart - assert_equal(actual, expected) + with DCDFile(self.readfile) as dcd_r, DCDFile(self.testfile) as dcd: + assert_equal(dcd.istart, dcd_r.istart) def test_written_delta(self): # ensure that delta, the trajectory timestep, is preserved in # the written DCD file - expected = self.dcdfile_r.delta - actual = DCDFile(self.testfile).delta - assert_equal(actual, expected) + with DCDFile(self.readfile) as dcd_r, DCDFile(self.testfile) as dcd: + assert_equal(dcd.delta, dcd_r.delta) def test_coord_match(self): # ensure that all coordinates match in each frame for the # written DCD file relative to original - test = DCDFile(self.testfile) - ref = DCDFile(self.readfile) - curr_frame = 0 - while curr_frame < test.n_frames: - written_coords = test.read()[0] - ref_coords = ref.read()[0] - curr_frame += 1 - assert_equal(written_coords, ref_coords) + with DCDFile(self.testfile) as test, DCDFile(self.readfile) as ref: + curr_frame = 0 + while curr_frame < test.n_frames: + written_coords = test.read()[0] + ref_coords = ref.read()[0] + curr_frame += 1 + assert_equal(written_coords, ref_coords) -class DCDByteArithmeticTest(TestCase): + +class TestDCDByteArithmetic(): def setUp(self): - self.dcdfile = DCDFile(DCD, 'r') + + self.dcdfile = DCD self._filesize = os.path.getsize(DCD) def test_relative_frame_sizes(self): # the first frame of a DCD file should always be >= in size # to subsequent frames, as the first frame contains the same # atoms + (optional) fixed atoms - first_frame_size = self.dcdfile._firstframesize - general_frame_size = self.dcdfile._framesize + with DCDFile(self.dcdfile) as dcd: + first_frame_size = dcd._firstframesize + general_frame_size = dcd._framesize - for frame in test: - written_coords = test.read()[0] - ref_coords = ref.read()[0] - assert_equal(written_coords, ref_coords) + # for frame in test: + # written_coords = test.read()[0] + # ref_coords = ref.read()[0] + # assert_equal(written_coords, ref_coords) -class DCDByteArithmeticTest(TestCase): + +class TestDCDByteArithmetic(): def setUp(self): - self.dcdfile = DCDFile(DCD, 'r') + self.dcdfile = DCD self._filesize = os.path.getsize(DCD) def test_relative_frame_sizes(self): # the first frame of a DCD file should always be >= in size # to subsequent frames, as the first frame contains the same # atoms + (optional) fixed atoms - first_frame_size = self.dcdfile._firstframesize - general_frame_size = self.dcdfile._framesize - self.assertGreaterEqual(first_frame_size, general_frame_size) + with DCDFile(self.dcdfile) as dcd: + first_frame_size = dcd._firstframesize + general_frame_size = dcd._framesize + + assert_equal(first_frame_size >= general_frame_size, True) def test_file_size_breakdown(self): # the size of a DCD file is equivalent to the sum of the header # size, first frame size, and (N - 1 frames) * size per general # frame expected = self._filesize - actual = self.dcdfile._header_size + self.dcdfile._firstframesize + \ - ((self.dcdfile.n_frames - 1) * self.dcdfile._framesize) + with DCDFile(self.dcdfile) as dcd: + actual = dcd._header_size + dcd._firstframesize + ((dcd.n_frames - 1) * dcd._framesize) assert_equal(actual, expected) def test_nframessize_int(self): - # require that the (nframessize / framesize) value used by DCDFile + # require that the (nframessize / framesize) value used by DCDFile # is an integer (because nframessize / framesize + 1 = total frames, # which must also be an int) - nframessize = self._filesize - self.dcdfile._header_size - \ - self.dcdfile._firstframesize - self.assertTrue(float(nframessize) % float(self.dcdfile._framesize) == 0) + with DCDFile(self.dcdfile) as dcd: + nframessize = self._filesize - dcd._header_size - dcd._firstframesize + assert_equal(float(nframessize) % float(dcd._framesize), 0) -class DCDByteArithmeticTestNAMD(DCDByteArithmeticTest, TestCase): + +class TestDCDByteArithmeticNAMD(TestDCDByteArithmetic): # repeat byte arithmetic tests for NAMD format DCD def setUp(self): - self.dcdfile = DCDFile(DCD_NAMD_TRICLINIC, 'r') + self.dcdfile = DCD_NAMD_TRICLINIC self._filesize = os.path.getsize(DCD_NAMD_TRICLINIC) -class DCDByteArithmeticTestCharmm36(DCDByteArithmeticTest, TestCase): + +class TestDCDByteArithmeticCharmm36(TestDCDByteArithmetic): # repeat byte arithmetic tests for Charmm36 format DCD def setUp(self): - self.dcdfile = DCDFile(DCD_TRICLINIC, 'r') + self.dcdfile = DCD_TRICLINIC self._filesize = os.path.getsize(DCD_TRICLINIC) - -class DCDWriteTestNAMD(DCDWriteTest, TestCase): + +class TestDCDWriteNAMD(TestDCDWrite): # repeat writing tests for NAMD format DCD def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' - self.dcdfile = DCDFile(self.testfile, 'w') self.readfile = DCD_NAMD_TRICLINIC - self.dcdfile_r = DCDFile(self.readfile, 'r') self.natoms = 5545 self.expected_frames = 1 self.seek_frame = 0 self.expected_remarks = '''Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,''' - - with self.dcdfile_r as f_in, self.dcdfile as f_out: - for frame in f_in: - frame = frame._asdict() - f_out.write(xyz=frame['x'], - box=frame['unitcell'].astype(np.float64), - step=f_in.istart, - natoms=frame['x'].shape[0], - charmm=0, - time_step=f_in.delta, - ts_between_saves=f_in.nsavc, - remarks=f_in.remarks) + self._write_files() def test_written_unit_cell(self): # there's no expectation that we can write unit cell # data in NAMD format at the moment pass -class DCDWriteTestCharmm36(DCDWriteTest, TestCase): + +class TestDCDWriteCharmm36(TestDCDWrite): # repeat writing tests for Charmm36 format DCD # no expectation that we can write unit cell info though (yet) def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' - self.dcdfile = DCDFile(self.testfile, 'w') self.readfile = DCD_TRICLINIC - self.dcdfile_r = DCDFile(self.readfile, 'r') self.natoms = 375 self.expected_frames = 10 self.seek_frame = 7 self.expected_remarks = '* CHARMM TRICLINIC BOX TESTING * (OLIVER BECKSTEIN 2014) * BASED ON NPTDYN.INP : SCOTT FELLER, NIH, 7/15/95 ' - - with self.dcdfile_r as f_in, self.dcdfile as f_out: - for frame in f_in: - frame = frame._asdict() - f_out.write(xyz=frame['x'], - box=frame['unitcell'].astype(np.float64), - step=f_in.istart, - natoms=frame['x'].shape[0], - charmm=0, - time_step=f_in.delta, - ts_between_saves=f_in.nsavc, - remarks=f_in.remarks) + self._write_files() def test_written_unit_cell(self): # there's no expectation that we can write unit cell @@ -432,29 +415,29 @@ def test_written_unit_cell(self): pass -class DCDWriteHeaderTestNAMD(DCDWriteHeaderTest, TestCase): +class TestDCDWriteHeaderNAMD(TestDCDWriteHeader): # repeat header writing tests for NAMD format DCD def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' - self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(DCD_NAMD_TRICLINIC, 'r') + self.dcdfile = DCD_NAMD_TRICLINIC -class DCDWriteHeaderTestCharmm36(DCDWriteHeaderTest, TestCase): + +class TestDCDWriteHeaderCharmm36(TestDCDWriteHeader): # repeat header writing tests for Charmm36 format DCD def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' - self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(DCD_TRICLINIC, 'r') + self.dcdfile = DCD_TRICLINIC + -class DCDReadFrameTestNAMD(DCDReadFrameTest, TestCase): +class TestDCDReadFrameTestNAMD(TestDCDReadFrame): # repeat frame reading tests for NAMD format DCD def setUp(self): - self.dcdfile = DCDFile(DCD_NAMD_TRICLINIC) + self.dcdfile = DCD_NAMD_TRICLINIC self.natoms = 5545 self.traj_length = 1 self.new_frame = 0 @@ -465,17 +448,15 @@ def setUp(self): self.expected_remarks = 'Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,' # expected unit cell based on previous DCD framework read in: self.expected_unit_cell = np.array([ 38.42659378, 38.39310074, 44.75979996, - 90. , 90. , 60.02891541], - dtype=np.float32) + 90. , 90. , 60.02891541], + dtype=np.float32) - def tearDown(self): - del self.dcdfile -class DCDReadFrameTestCharmm36(DCDReadFrameTest, TestCase): +class TestDCDReadFrameTestCharmm36(TestDCDReadFrame): # repeat frame reading tests for Charmm36 format DCD def setUp(self): - self.dcdfile = DCDFile(DCD_TRICLINIC) + self.dcdfile = DCD_TRICLINIC self.natoms = 375 self.traj_length = 10 self.new_frame = 2 @@ -486,21 +467,17 @@ def setUp(self): self.expected_remarks = '* CHARMM TRICLINIC BOX TESTING * (OLIVER BECKSTEIN 2014) * BASED ON NPTDYN.INP : SCOTT FELLER, NIH, 7/15/95 * TEST EXTENDED SYSTEM CONSTANT PRESSURE AND TEMPERATURE * DYNAMICS WITH WATER BOX. * DATE: 7/ 7/14 13:59:46 CREATED BY USER: oliver ' # expected unit cell based on previous DCD framework read in: self.expected_unit_cell = np.array([ 35.44603729, 35.06156158, 34.15850067, - 91.32801819, 61.73519516, 44.4070282], - dtype=np.float32) + 91.32801819, 61.73519516, 44.4070282], + dtype=np.float32) - def tearDown(self): - del self.dcdfile -class DCDWriteTestRandom(TestCase): +class TestDCDWriteRandom(): # should only be supported for Charmm24 format writing (for now) def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' self.readfile = DCD - self.dcdfile = DCDFile(self.testfile, 'w') - self.dcdfile_r = DCDFile(self.readfile, 'r') self.natoms = 3341 self.expected_frames = 98 self.seek_frame = 91 @@ -508,7 +485,7 @@ def setUp(self): np.random.seed(1178083) self.random_unitcells = np.random.random((self.expected_frames, 6)).astype(np.float64) - with self.dcdfile_r as f_in, self.dcdfile as f_out: + with DCDFile(self.readfile) as f_in, DCDFile(self.testfile, 'w') as f_out: for index, frame in enumerate(f_in): frame_dict = frame._asdict() box=frame_dict['unitcell'].astype(np.float64) @@ -535,17 +512,17 @@ def test_written_unit_cell_random(self): # as well as shuffling of the orders in the unitcell # array based on the prcoessing performed by # DCDFile read and more generally relating to Issue 187 - test = DCDFile(self.testfile) - curr_frame = 0 - while curr_frame < test.n_frames: - written_unitcell = test.read()[1] - ref_unitcell = self.random_unitcells[curr_frame] - ref_unitcell[1] = math.degrees(math.acos(ref_unitcell[1])) - ref_unitcell[3] = math.degrees(math.acos(ref_unitcell[3])) - ref_unitcell[4] = math.degrees(math.acos(ref_unitcell[4])) - - _ts_order = [0, 2, 5, 4, 3, 1] - ref_unitcell = np.take(ref_unitcell, _ts_order) - curr_frame += 1 - assert_allclose(written_unitcell, ref_unitcell, - rtol=1e-05) + with DCDFile(self.testfile) as test: + curr_frame = 0 + while curr_frame < test.n_frames: + written_unitcell = test.read()[1] + ref_unitcell = self.random_unitcells[curr_frame] + ref_unitcell[1] = math.degrees(math.acos(ref_unitcell[1])) + ref_unitcell[3] = math.degrees(math.acos(ref_unitcell[3])) + ref_unitcell[4] = math.degrees(math.acos(ref_unitcell[4])) + + _ts_order = [0, 2, 5, 4, 3, 1] + ref_unitcell = np.take(ref_unitcell, _ts_order) + curr_frame += 1 + assert_allclose(written_unitcell, ref_unitcell, + rtol=1e-05) From d0aa8abbaaca6f74199e63e9007265e1df933aaa Mon Sep 17 00:00:00 2001 From: Date: Fri, 26 May 2017 11:36:34 -0600 Subject: [PATCH 088/107] Added new property-based unit test, test_written_remarks_property(), which reveals that DCDFile is not able to handle writing when an empty REMARKS string is provided. --- .../MDAnalysisTests/formats/test_libdcd.py | 33 ++++++++++++++++--- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 1d9984d5bfa..6ed1b005303 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -19,6 +19,8 @@ import numpy as np import os import math +from hypothesis import given +import hypothesis.strategies as st class TestDCDReadFrame(): @@ -189,16 +191,23 @@ class TestDCDWrite(): def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' + self.testfile2 = self.tmpdir.name + '/test2.dcd' self.readfile = DCD self.natoms = 3341 self.expected_frames = 98 self.seek_frame = 91 self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' - self._write_files() + self._write_files(testfile=self.testfile, + remarks_setting='input') + + def _write_files(self, testfile, remarks_setting): - def _write_files(self): with DCDFile(self.readfile) as f_in, DCDFile(self.testfile, 'w') as f_out: for frame in f_in: + if remarks_setting == 'input': + remarks = f_in.remarks + else: # accept the random remarks strings from hypothesis + remarks = remarks_setting box=frame.unitcell.astype(np.float64) f_out.write(xyz=frame.x, box=box, @@ -207,7 +216,7 @@ def _write_files(self): charmm=1, # DCD should be CHARMM time_step=f_in.delta, ts_between_saves=f_in.nsavc, - remarks=f_in.remarks) + remarks=remarks) def tearDown(self): try: @@ -274,6 +283,16 @@ def test_written_remarks(self): with DCDFile(self.testfile) as f: assert_equal(f.remarks, self.expected_remarks) + @given(st.text()) # handle the full unicode range of strings + def test_written_remarks_property(self, remarks_str): + # property based testing for writing of a wide range of string + # values to REMARKS field + self._write_files(testfile=self.testfile2, + remarks_setting=remarks_str) + expected_remarks = remarks_str + with DCDFile(self.testfile2) as f: + assert_equal(f.remarks, expected_remarks) + def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written # to file, is preserved in the written DCD file @@ -382,12 +401,14 @@ class TestDCDWriteNAMD(TestDCDWrite): def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' + self.testfile2 = self.tmpdir.name + '/test2.dcd' self.readfile = DCD_NAMD_TRICLINIC self.natoms = 5545 self.expected_frames = 1 self.seek_frame = 0 self.expected_remarks = '''Created by DCD pluginREMARKS Created 06 July, 2014 at 17:29Y5~CORD,''' - self._write_files() + self._write_files(testfile=self.testfile, + remarks_setting='input') def test_written_unit_cell(self): # there's no expectation that we can write unit cell @@ -402,12 +423,14 @@ class TestDCDWriteCharmm36(TestDCDWrite): def setUp(self): self.tmpdir = tempdir.TempDir() self.testfile = self.tmpdir.name + '/test.dcd' + self.testfile2 = self.tmpdir.name + '/test2.dcd' self.readfile = DCD_TRICLINIC self.natoms = 375 self.expected_frames = 10 self.seek_frame = 7 self.expected_remarks = '* CHARMM TRICLINIC BOX TESTING * (OLIVER BECKSTEIN 2014) * BASED ON NPTDYN.INP : SCOTT FELLER, NIH, 7/15/95 ' - self._write_files() + self._write_files(testfile=self.testfile, + remarks_setting='input') def test_written_unit_cell(self): # there's no expectation that we can write unit cell From 1d4ceeccba4122bc1903430061fd33377b8c3f62 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 12:11:23 +0200 Subject: [PATCH 089/107] fix write_file function use testfile from function arguments --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 6ed1b005303..94818ec703b 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -202,7 +202,7 @@ def setUp(self): def _write_files(self, testfile, remarks_setting): - with DCDFile(self.readfile) as f_in, DCDFile(self.testfile, 'w') as f_out: + with DCDFile(self.readfile) as f_in, DCDFile(testfile, 'w') as f_out: for frame in f_in: if remarks_setting == 'input': remarks = f_in.remarks From 1f23ffc8649cbfef0d906c14e5b7048d465b9a4d Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:03:38 +0200 Subject: [PATCH 090/107] add write dtype handling --- package/MDAnalysis/lib/formats/libdcd.pyx | 17 ++++-- .../MDAnalysisTests/formats/test_libdcd.py | 56 ++++++++++++++++--- 2 files changed, 60 insertions(+), 13 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 40c3042a899..29e53cb9be2 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -365,15 +365,15 @@ cdef class DCDFile: if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) - def write(self, xyz, double [:] box, int step, int natoms, + def write(self, xyz, box, int step, int natoms, int ts_between_saves, int charmm, double time_step, remarks): """write one frame into DCD file. Parameters ---------- - xyz : ndarray, shape=(n_atoms, 3) + xyz : array_like, shape=(n_atoms, 3) cartesion coordinates - box : ndarray, shape=(3, 3) + box : array_like, shape=(6) Box vectors for this frame step : int current step number, 1 indexed @@ -393,6 +393,15 @@ cdef class DCDFile: 'in mode "w"'.format('self.mode')) #cdef double [:,:] unitcell = box + xyz = np.asarray(xyz, order='F', dtype=np.float32) + cdef DOUBLE_T[::1] c_box = np.asarray(box, order='C', dtype=np.float64) + + if c_box.size != 6: + raise ValueError("box size is wrong should be 6, got: {}".format(box.size)) + + if xyz.shape != (natoms, 3): + raise ValueError("xyz shape is wrong should be (natoms, 3), got:".format(xyz.shape)) + cdef FLOAT_T[::1] x = xyz[:, 0] cdef FLOAT_T[::1] y = xyz[:, 1] cdef FLOAT_T[::1] z = xyz[:, 2] @@ -425,6 +434,6 @@ cdef class DCDFile: ok = write_dcdstep(self.fp, self.current_frame, step, self.n_atoms, &x[0], &y[0], &z[0], - &box[0], charmm) + &c_box[0], charmm) self.current_frame += 1 diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 94818ec703b..70e5beaf220 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -283,15 +283,15 @@ def test_written_remarks(self): with DCDFile(self.testfile) as f: assert_equal(f.remarks, self.expected_remarks) - @given(st.text()) # handle the full unicode range of strings - def test_written_remarks_property(self, remarks_str): - # property based testing for writing of a wide range of string - # values to REMARKS field - self._write_files(testfile=self.testfile2, - remarks_setting=remarks_str) - expected_remarks = remarks_str - with DCDFile(self.testfile2) as f: - assert_equal(f.remarks, expected_remarks) + # @given(st.text()) # handle the full unicode range of strings + # def test_written_remarks_property(self, remarks_str): + # # property based testing for writing of a wide range of string + # # values to REMARKS field + # self._write_files(testfile=self.testfile2, + # remarks_setting=remarks_str) + # expected_remarks = remarks_str + # with DCDFile(self.testfile2) as f: + # assert_equal(f.remarks, expected_remarks) def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written @@ -322,6 +322,44 @@ def test_coord_match(self): curr_frame += 1 assert_equal(written_coords, ref_coords) + def test_write_wrong_dtype(self): + """we should allow passing a range of dtypes""" + for dtype in (np.int32, np.int64, np.float32, np.float64): + with DCDFile(self.testfile, 'w') as out: + natoms = 10 + xyz = np.ones((natoms, 3), dtype=dtype) + box = np.ones(6, dtype=dtype) + out.write(xyz=xyz, box=box, step=1, natoms=natoms, charmm=1, time_step=0, + ts_between_saves=1, remarks='test') + + def test_write_array_like(self): + """we should allow passing a range of dtypes""" + for array_like in (np.array, list): + with DCDFile(self.testfile, 'w') as out: + natoms = 10 + xyz = array_like([[1, 1, 1] for i in range(natoms)]) + box = array_like([i for i in range(6)]) + out.write(xyz=xyz, box=box, step=1, natoms=natoms, charmm=1, time_step=0, + ts_between_saves=1, remarks='test') + + @raises(ValueError) + def test_write_wrong_shape_xyz(self): + with DCDFile(self.testfile, 'w') as out: + natoms = 10 + xyz = np.ones((natoms+1, 3)) + box = np.ones(6) + out.write(xyz=xyz, box=box, step=1, natoms=natoms, charmm=1, time_step=0, + ts_between_saves=1, remarks='test') + + @raises(ValueError) + def test_write_wrong_shape_box(self): + with DCDFile(self.testfile, 'w') as out: + natoms = 10 + xyz = np.ones((natoms, 3)) + box = np.ones(8) + out.write(xyz=xyz, box=box, step=1, natoms=natoms, charmm=1, time_step=0, + ts_between_saves=1, remarks='test') + class TestDCDByteArithmetic(): From ad21ae29703f446e7194e7131f9862a1bb12b755 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:12:38 +0200 Subject: [PATCH 091/107] check tell in iteration --- testsuite/MDAnalysisTests/formats/test_libdcd.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 70e5beaf220..e4e3e861660 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -96,7 +96,7 @@ def test_seek_negative(self): def test_iteration(self): with DCDFile(self.dcdfile) as dcd: - for i in range(self.num_iters): + for _ in range(self.num_iters): dcd.__next__() assert_equal(dcd.tell(), self.num_iters) @@ -137,11 +137,11 @@ def test_read_closed(self): def test_iteration_2(self): with DCDFile(self.dcdfile) as dcd: with dcd as f: - for frame in f: - pass + for i, _ in enumerate(f): + assert_equal(i + 1, f.tell()) # second iteration should work from start again - for frame in f: - pass + for i, _ in enumerate(f): + assert_equal(i + 1, f.tell()) class TestDCDWriteHeader(): From 0d93ea18efcca80b5791db6664e2b713d426edbc Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:23:18 +0200 Subject: [PATCH 092/107] use sensible warnings when only a header is written We shouldn't do that but other programs might produce a dcd with a header and no frames stored. --- package/MDAnalysis/lib/formats/libdcd.pyx | 15 +++++++++---- .../MDAnalysisTests/formats/test_libdcd.py | 22 ++++++++++++++++--- 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 29e53cb9be2..4a764fb048b 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -224,8 +224,13 @@ cdef class DCDFile: self.b_read_header = True # make sure fixed atoms have been read - self.read() - self.seek(0) + try: + self.read() + self.seek(0) + except: + # if this fails the file is empty. Set flag and warn using during read + if self.n_frames != 0: + raise IOError("DCD is corrupted") if sys.version_info[0] < 3: py_remarks = unicode(py_remarks, 'ascii', "ignore") @@ -266,6 +271,8 @@ cdef class DCDFile: if self.mode != 'r': raise IOError('File opened in mode: {}. Reading only allow ' 'in mode "r"'.format('self.mode')) + if self.n_frames == 0: + raise IOError("opened empty file. No frames are saved") cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=FLOAT, order='F') @@ -359,8 +366,8 @@ cdef class DCDFile: except UnicodeDecodeError: remarks = bytearray(remarks) - ok = write_dcdheader(self.fp, remarks, n_atoms, starting_step, - ts_between_saves, time_step, with_unitcell, + ok = write_dcdheader(self.fp, remarks, n_atoms, starting_step, + ts_between_saves, time_step, with_unitcell, charmm) if ok != 0: raise IOError("Writing DCD header failed: {}".format(DCD_ERRORS[ok])) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index e4e3e861660..7a03b951eeb 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -170,9 +170,25 @@ def test_write_header_crude(self): # we're not actually asserting anything, yet # run with: nosetests test_libdcd.py --nocapture # to see printed output from nose - with open(self.testfile, "rb") as f: - for element in f: - print(element) + with DCDFile(self.testfile) as dcd: + assert_equal(dcd.remarks, 'Crazy!') + assert_equal(dcd.n_atoms, 22) + + @raises(IOError) + def test_write_header_only(self): + # test that _write_header() can produce a very crude + # header for a new / empty file + with DCDFile(self.testfile, 'w') as dcd: + dcd._write_header(remarks='Crazy!', n_atoms=22, + starting_step=12, ts_between_saves=10, + time_step=0.02, + charmm=1) + + # we're not actually asserting anything, yet + # run with: nosetests test_libdcd.py --nocapture + # to see printed output from nose + with DCDFile(self.testfile) as dcd: + dcd.read() @raises(IOError) def test_write_header_mode_sensitivy(self): From ae5eb16d0e709bc8d54145610dd2d3b28bab07a3 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:24:53 +0200 Subject: [PATCH 093/107] remove double definition --- .../MDAnalysisTests/formats/test_libdcd.py | 23 +------------------ 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 7a03b951eeb..6c6ef56573e 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -377,28 +377,7 @@ def test_write_wrong_shape_box(self): ts_between_saves=1, remarks='test') -class TestDCDByteArithmetic(): - - def setUp(self): - - self.dcdfile = DCD - self._filesize = os.path.getsize(DCD) - - def test_relative_frame_sizes(self): - # the first frame of a DCD file should always be >= in size - # to subsequent frames, as the first frame contains the same - # atoms + (optional) fixed atoms - with DCDFile(self.dcdfile) as dcd: - first_frame_size = dcd._firstframesize - general_frame_size = dcd._framesize - - # for frame in test: - # written_coords = test.read()[0] - # ref_coords = ref.read()[0] - # assert_equal(written_coords, ref_coords) - - -class TestDCDByteArithmetic(): +class TestDCDByteArithmetic(object): def setUp(self): self.dcdfile = DCD From e464e452a1d6ab096e2c6ca2ec083fd7264a9fed Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:27:23 +0200 Subject: [PATCH 094/107] restucture libdcd test order --- .../MDAnalysisTests/formats/test_libdcd.py | 111 +++++++++--------- 1 file changed, 55 insertions(+), 56 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 6c6ef56573e..20061361350 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -377,57 +377,6 @@ def test_write_wrong_shape_box(self): ts_between_saves=1, remarks='test') -class TestDCDByteArithmetic(object): - - def setUp(self): - self.dcdfile = DCD - self._filesize = os.path.getsize(DCD) - - def test_relative_frame_sizes(self): - # the first frame of a DCD file should always be >= in size - # to subsequent frames, as the first frame contains the same - # atoms + (optional) fixed atoms - with DCDFile(self.dcdfile) as dcd: - first_frame_size = dcd._firstframesize - general_frame_size = dcd._framesize - - assert_equal(first_frame_size >= general_frame_size, True) - - def test_file_size_breakdown(self): - # the size of a DCD file is equivalent to the sum of the header - # size, first frame size, and (N - 1 frames) * size per general - # frame - expected = self._filesize - with DCDFile(self.dcdfile) as dcd: - actual = dcd._header_size + dcd._firstframesize + ((dcd.n_frames - 1) * dcd._framesize) - assert_equal(actual, expected) - - def test_nframessize_int(self): - # require that the (nframessize / framesize) value used by DCDFile - # is an integer (because nframessize / framesize + 1 = total frames, - # which must also be an int) - with DCDFile(self.dcdfile) as dcd: - nframessize = self._filesize - dcd._header_size - dcd._firstframesize - assert_equal(float(nframessize) % float(dcd._framesize), 0) - - - -class TestDCDByteArithmeticNAMD(TestDCDByteArithmetic): - # repeat byte arithmetic tests for NAMD format DCD - - def setUp(self): - self.dcdfile = DCD_NAMD_TRICLINIC - self._filesize = os.path.getsize(DCD_NAMD_TRICLINIC) - - -class TestDCDByteArithmeticCharmm36(TestDCDByteArithmetic): - # repeat byte arithmetic tests for Charmm36 format DCD - - def setUp(self): - self.dcdfile = DCD_TRICLINIC - self._filesize = os.path.getsize(DCD_TRICLINIC) - - class TestDCDWriteNAMD(TestDCDWrite): # repeat writing tests for NAMD format DCD @@ -543,19 +492,18 @@ def setUp(self): self.random_unitcells = np.random.random((self.expected_frames, 6)).astype(np.float64) with DCDFile(self.readfile) as f_in, DCDFile(self.testfile, 'w') as f_out: for index, frame in enumerate(f_in): - frame_dict = frame._asdict() - box=frame_dict['unitcell'].astype(np.float64) - f_out.write(xyz=frame_dict['x'], + box=frame.unitcell.astype(np.float64) + f_out.write(xyz=frame.x, box=self.random_unitcells[index], step=f_in.istart, - natoms=frame_dict['x'].shape[0], + natoms=frame.x.shape[0], charmm=1, # DCD should be CHARMM time_step=f_in.delta, ts_between_saves=f_in.nsavc, remarks=f_in.remarks) def tearDown(self): - try: + try: os.unlink(self.testfile) except OSError: pass @@ -582,3 +530,54 @@ def test_written_unit_cell_random(self): curr_frame += 1 assert_allclose(written_unitcell, ref_unitcell, rtol=1e-05) + + +class TestDCDByteArithmetic(object): + + def setUp(self): + self.dcdfile = DCD + self._filesize = os.path.getsize(DCD) + + def test_relative_frame_sizes(self): + # the first frame of a DCD file should always be >= in size + # to subsequent frames, as the first frame contains the same + # atoms + (optional) fixed atoms + with DCDFile(self.dcdfile) as dcd: + first_frame_size = dcd._firstframesize + general_frame_size = dcd._framesize + + assert_equal(first_frame_size >= general_frame_size, True) + + def test_file_size_breakdown(self): + # the size of a DCD file is equivalent to the sum of the header + # size, first frame size, and (N - 1 frames) * size per general + # frame + expected = self._filesize + with DCDFile(self.dcdfile) as dcd: + actual = dcd._header_size + dcd._firstframesize + ((dcd.n_frames - 1) * dcd._framesize) + assert_equal(actual, expected) + + def test_nframessize_int(self): + # require that the (nframessize / framesize) value used by DCDFile + # is an integer (because nframessize / framesize + 1 = total frames, + # which must also be an int) + with DCDFile(self.dcdfile) as dcd: + nframessize = self._filesize - dcd._header_size - dcd._firstframesize + assert_equal(float(nframessize) % float(dcd._framesize), 0) + + + +class TestDCDByteArithmeticNAMD(TestDCDByteArithmetic): + # repeat byte arithmetic tests for NAMD format DCD + + def setUp(self): + self.dcdfile = DCD_NAMD_TRICLINIC + self._filesize = os.path.getsize(DCD_NAMD_TRICLINIC) + + +class TestDCDByteArithmeticCharmm36(TestDCDByteArithmetic): + # repeat byte arithmetic tests for Charmm36 format DCD + + def setUp(self): + self.dcdfile = DCD_TRICLINIC + self._filesize = os.path.getsize(DCD_TRICLINIC) From 09b079ccfaafc302f771b0f6145b23719ce5abb0 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:36:59 +0200 Subject: [PATCH 095/107] deactivate correl tests for now --- .../MDAnalysisTests/coordinates/test_dcd.py | 380 +++++++++--------- 1 file changed, 191 insertions(+), 189 deletions(-) diff --git a/testsuite/MDAnalysisTests/coordinates/test_dcd.py b/testsuite/MDAnalysisTests/coordinates/test_dcd.py index baf9d5989fc..18757cc1489 100644 --- a/testsuite/MDAnalysisTests/coordinates/test_dcd.py +++ b/testsuite/MDAnalysisTests/coordinates/test_dcd.py @@ -157,31 +157,31 @@ def test_volume(self): err_msg="wrong volume for unitcell (no unitcell " "in DCD so this should be 0)") - def test_timeseries_slicing(self): - # check that slicing behaves correctly - # should before issue #914 resolved - x = [(0, 1, 1), (1,1,1), (1, 2, 1), (1, 2, 2), (1, 4, 2), (1, 4, 4), - (0, 5, 5), (3, 5, 1), (None, None, None)] - for start, stop, step in x: - yield self._slice_generation_test, start, stop, step - - def test_backwards_stepping(self): - x = [(4, 0, -1), (5, 0, -2), (5, 0, -4)] - for start, stop, step in x: - yield self._failed_slices_test, start, stop, step - - def _slice_generation_test(self, start, stop, step): - self.u = mda.Universe(PSF, DCD) - ts = self.u.trajectory.timeseries(self.u.atoms) - ts_skip = self.u.trajectory.timeseries(self.u.atoms, start, stop, step) - assert_array_almost_equal(ts[:, start:stop:step,:], ts_skip, 5) - - @knownfailure - def _failed_slices_test(self, start, stop, step): - self.u = mda.Universe(PSF, DCD) - ts = self.u.trajectory.timeseries(self.u.atoms) - ts_skip = self.u.trajectory.timeseries(self.u.atoms, start, stop, step) - assert_array_almost_equal(ts[:, start:stop:step,:], ts_skip, 5) + # def test_timeseries_slicing(self): + # # check that slicing behaves correctly + # # should before issue #914 resolved + # x = [(0, 1, 1), (1,1,1), (1, 2, 1), (1, 2, 2), (1, 4, 2), (1, 4, 4), + # (0, 5, 5), (3, 5, 1), (None, None, None)] + # for start, stop, step in x: + # yield self._slice_generation_test, start, stop, step + + # def test_backwards_stepping(self): + # x = [(4, 0, -1), (5, 0, -2), (5, 0, -4)] + # for start, stop, step in x: + # yield self._failed_slices_test, start, stop, step + + # def _slice_generation_test(self, start, stop, step): + # self.u = mda.Universe(PSF, DCD) + # ts = self.u.trajectory.timeseries(self.u.atoms) + # ts_skip = self.u.trajectory.timeseries(self.u.atoms, start, stop, step) + # assert_array_almost_equal(ts[:, start:stop:step,:], ts_skip, 5) + + # @knownfailure + # def _failed_slices_test(self, start, stop, step): + # self.u = mda.Universe(PSF, DCD) + # ts = self.u.trajectory.timeseries(self.u.atoms) + # ts_skip = self.u.trajectory.timeseries(self.u.atoms, start, stop, step) + # assert_array_almost_equal(ts[:, start:stop:step,:], ts_skip, 5) def test_DCDReader_set_dt(dt=100., frame=3): @@ -394,10 +394,12 @@ def test_read_triclinic(self): def test_write_triclinic(self): """test writing of triclinic unitcell (Issue 187) for NAMD or new CHARMM format (at least since c36b2)""" + print("writing") with self.u.trajectory.OtherWriter(self.dcd) as w: for ts in self.u.trajectory: w.write(ts) w = mda.Universe(self.topology, self.dcd) + print("reading\n") for ts_orig, ts_copy in zip(self.u.trajectory, w.trajectory): assert_almost_equal(ts_orig.dimensions, ts_copy.dimensions, 4, @@ -463,167 +465,167 @@ def test_coordinates(self): ts_orig.frame)) -class TestDCDCorrel(TestCase): - def setUp(self): - # Note: setUp is executed for *every* test ! - import MDAnalysis.core.Timeseries as TS - self.universe = mda.Universe(PSF, DCD) - self.dcd = self.universe.trajectory - self.ts = self.universe.coord - self.collection = TS.TimeseriesCollection() - self.collection_slicing = TS.TimeseriesCollection() - C = self.collection - C_step = self.collection_slicing - all = self.universe.atoms - ca = self.universe.s4AKE.atoms.CA - ca_termini = ca[[0, -1]] - # note that this is not quite phi... HN should be C of prec. residue - phi151 = self.universe.select_atoms('resid 151').select_atoms( - 'name HN', 'name N', 'name CA', 'name CB') - C.addTimeseries(TS.Atom('v', ca_termini)) # 0 - C.addTimeseries(TS.Bond(ca_termini)) # 1 - C.addTimeseries(TS.Bond([ca[0], ca[-1]])) # 2 - C.addTimeseries(TS.Angle(phi151[1:4])) # 3 - C.addTimeseries(TS.Dihedral(phi151)) # 4 - C.addTimeseries(TS.Distance('r', ca_termini)) # 5 - C.addTimeseries(TS.CenterOfMass(ca)) # 6 - C.addTimeseries(TS.CenterOfGeometry(ca)) # 7 - C.addTimeseries(TS.CenterOfMass(all)) # 8 - C.addTimeseries(TS.CenterOfGeometry(all)) # 9 - - C_step.addTimeseries(TS.Atom('v', ca_termini)) - - # cannot test WaterDipole because there's no water in the test dcd - C.compute(self.dcd) - C_step.compute(self.dcd, step=10) - - def tearDown(self): - del self.collection - del self.collection_slicing - del self.universe - del self.dcd - del self.ts - - def test_correl(self): - assert_equal(len(self.collection), 10, "Correl: len(collection)") - - def test_Atom(self): - assert_equal(self.collection[0].shape, (2, 3, 98), - "Correl: Atom positions") - - def test_Bonds(self): - C = self.collection - assert_array_equal(C[1].__data__, C[2].__data__, - "Correl: Bonds with lists and AtomGroup") - - def test_Angle(self): - C = self.collection - avg_angle = 1.9111695972912988 - assert_almost_equal(C[3].__data__.mean(), - avg_angle, - err_msg="Correl: average Angle") - - def test_Dihedral(self): - C = self.collection - avg_phi151 = 0.0088003870749735619 - assert_almost_equal(C[4].__data__.mean(), - avg_phi151, - err_msg="Correl: average Dihedral") - - def test_scalarDistance(self): - C = self.collection - avg_dist = 9.7960210987736236 - assert_almost_equal(C[5].__data__.mean(), - avg_dist, - err_msg="Correl: average scalar Distance") - - def test_CenterOfMass(self): - C = self.collection - avg_com_ca = np.array([0.0043688, -0.27812258, 0.0284051]) - avg_com_all = np.array([-0.10086529, -0.16357276, 0.12724672]) - assert_array_almost_equal(C[6].__data__.mean(axis=1), - avg_com_ca, - err_msg="Correl: average CA CenterOfMass") - assert_almost_equal(C[8].__data__.mean(axis=1), - avg_com_all, - err_msg="Correl: average all CenterOfMass") - - def test_CenterOfGeometry(self): - C = self.collection - avg_cog_all = np.array([-0.13554797, -0.20521885, 0.2118998]) - assert_almost_equal(C[9].__data__.mean(axis=1), - avg_cog_all, - err_msg="Correl: average all CenterOfGeometry") - - def test_CA_COMeqCOG(self): - C = self.collection - assert_array_almost_equal( - C[6].__data__, - C[7].__data__, - err_msg="Correl: CA CentreOfMass == CenterOfGeometry") - - def test_clear(self): - C = self.collection - C.clear() - assert_equal(len(C), 0, "Correl: clear()") - - def test_Atom_slicing(self): - assert_equal(self.collection_slicing[0].shape, (2, 3, 10), - "Correl: Atom positions") - assert_array_almost_equal(self.collection[0][:, :, ::10], - self.collection_slicing[0]) - -# notes: -def compute_correl_references(): - universe = mda.Universe(PSF, DCD) - - all = universe.atoms - ca = universe.s4AKE.CA - ca_termini = mda.core.AtomGroup.AtomGroup([ca[0], ca[-1]]) - phi151 = universe.select_atoms('resid 151').select_atoms( - 'name HN', 'name N', 'name CA', 'name CB') - - C = mda.collection - C.clear() - - C.addTimeseries(TS.Atom('v', ca_termini)) # 0 - C.addTimeseries(TS.Bond(ca_termini)) # 1 - C.addTimeseries(TS.Bond([ca[0], ca[-1]])) # 2 - C.addTimeseries(TS.Angle(phi151[1:4])) # 3 - C.addTimeseries(TS.Dihedral(phi151)) # 4 - C.addTimeseries(TS.Distance('r', ca_termini)) # 5 - C.addTimeseries(TS.CenterOfMass(ca)) # 6 - C.addTimeseries(TS.CenterOfGeometry(ca)) # 7 - C.addTimeseries(TS.CenterOfMass(all)) # 8 - C.addTimeseries(TS.CenterOfGeometry(all)) # 9 - - C.compute(universe.dcd) - - results = { - "avg_angle": C[3].__data__.mean(), - "avg_phi151": C[4].__data__.mean(), - "avg_dist": C[5].__data__.mean(), - "avg_com_ca": C[6].__data__.mean(axis=1), - "avg_com_all": C[8].__data__.mean(axis=1), - "avg_cog_all": C[9].__data__.mean(axis=1), - } - C.clear() - return results - - -class TestDCDTimestep(BaseTimestepTest): - Timestep = mda.coordinates.DCD.Timestep - name = "DCD" - has_box = True - set_box = True - unitcell = np.array([10., 90., 11., 90., 90., 12.]) - uni_args = (PSF, DCD) - - def test_ts_order_define(self): - """Check that users can hack in a custom unitcell order""" - old = self.Timestep._ts_order - self.ts._ts_order = [0, 2, 5, 1, 3, 4] - self.ts.dimensions = np.array([10, 11, 12, 80, 85, 90]) - assert_allclose(self.ts._unitcell, np.array([10, 80, 11, 85, 90, 12])) - self.ts._ts_order = old - self.ts.dimensions = np.zeros(6) +# class TestDCDCorrel(TestCase): +# def setUp(self): +# # Note: setUp is executed for *every* test ! +# import MDAnalysis.core.Timeseries as TS +# self.universe = mda.Universe(PSF, DCD) +# self.dcd = self.universe.trajectory +# self.ts = self.universe.coord +# self.collection = TS.TimeseriesCollection() +# self.collection_slicing = TS.TimeseriesCollection() +# C = self.collection +# C_step = self.collection_slicing +# all = self.universe.atoms +# ca = self.universe.s4AKE.atoms.CA +# ca_termini = ca[[0, -1]] +# # note that this is not quite phi... HN should be C of prec. residue +# phi151 = self.universe.select_atoms('resid 151').select_atoms( +# 'name HN', 'name N', 'name CA', 'name CB') +# C.addTimeseries(TS.Atom('v', ca_termini)) # 0 +# C.addTimeseries(TS.Bond(ca_termini)) # 1 +# C.addTimeseries(TS.Bond([ca[0], ca[-1]])) # 2 +# C.addTimeseries(TS.Angle(phi151[1:4])) # 3 +# C.addTimeseries(TS.Dihedral(phi151)) # 4 +# C.addTimeseries(TS.Distance('r', ca_termini)) # 5 +# C.addTimeseries(TS.CenterOfMass(ca)) # 6 +# C.addTimeseries(TS.CenterOfGeometry(ca)) # 7 +# C.addTimeseries(TS.CenterOfMass(all)) # 8 +# C.addTimeseries(TS.CenterOfGeometry(all)) # 9 + +# C_step.addTimeseries(TS.Atom('v', ca_termini)) + +# # cannot test WaterDipole because there's no water in the test dcd +# C.compute(self.dcd) +# C_step.compute(self.dcd, step=10) + +# def tearDown(self): +# del self.collection +# del self.collection_slicing +# del self.universe +# del self.dcd +# del self.ts + +# def test_correl(self): +# assert_equal(len(self.collection), 10, "Correl: len(collection)") + +# def test_Atom(self): +# assert_equal(self.collection[0].shape, (2, 3, 98), +# "Correl: Atom positions") + +# def test_Bonds(self): +# C = self.collection +# assert_array_equal(C[1].__data__, C[2].__data__, +# "Correl: Bonds with lists and AtomGroup") + +# def test_Angle(self): +# C = self.collection +# avg_angle = 1.9111695972912988 +# assert_almost_equal(C[3].__data__.mean(), +# avg_angle, +# err_msg="Correl: average Angle") + +# def test_Dihedral(self): +# C = self.collection +# avg_phi151 = 0.0088003870749735619 +# assert_almost_equal(C[4].__data__.mean(), +# avg_phi151, +# err_msg="Correl: average Dihedral") + +# def test_scalarDistance(self): +# C = self.collection +# avg_dist = 9.7960210987736236 +# assert_almost_equal(C[5].__data__.mean(), +# avg_dist, +# err_msg="Correl: average scalar Distance") + +# def test_CenterOfMass(self): +# C = self.collection +# avg_com_ca = np.array([0.0043688, -0.27812258, 0.0284051]) +# avg_com_all = np.array([-0.10086529, -0.16357276, 0.12724672]) +# assert_array_almost_equal(C[6].__data__.mean(axis=1), +# avg_com_ca, +# err_msg="Correl: average CA CenterOfMass") +# assert_almost_equal(C[8].__data__.mean(axis=1), +# avg_com_all, +# err_msg="Correl: average all CenterOfMass") + +# def test_CenterOfGeometry(self): +# C = self.collection +# avg_cog_all = np.array([-0.13554797, -0.20521885, 0.2118998]) +# assert_almost_equal(C[9].__data__.mean(axis=1), +# avg_cog_all, +# err_msg="Correl: average all CenterOfGeometry") + +# def test_CA_COMeqCOG(self): +# C = self.collection +# assert_array_almost_equal( +# C[6].__data__, +# C[7].__data__, +# err_msg="Correl: CA CentreOfMass == CenterOfGeometry") + +# def test_clear(self): +# C = self.collection +# C.clear() +# assert_equal(len(C), 0, "Correl: clear()") + +# def test_Atom_slicing(self): +# assert_equal(self.collection_slicing[0].shape, (2, 3, 10), +# "Correl: Atom positions") +# assert_array_almost_equal(self.collection[0][:, :, ::10], +# self.collection_slicing[0]) + +# # notes: +# def compute_correl_references(): +# universe = mda.Universe(PSF, DCD) + +# all = universe.atoms +# ca = universe.s4AKE.CA +# ca_termini = mda.core.AtomGroup.AtomGroup([ca[0], ca[-1]]) +# phi151 = universe.select_atoms('resid 151').select_atoms( +# 'name HN', 'name N', 'name CA', 'name CB') + +# C = mda.collection +# C.clear() + +# C.addTimeseries(TS.Atom('v', ca_termini)) # 0 +# C.addTimeseries(TS.Bond(ca_termini)) # 1 +# C.addTimeseries(TS.Bond([ca[0], ca[-1]])) # 2 +# C.addTimeseries(TS.Angle(phi151[1:4])) # 3 +# C.addTimeseries(TS.Dihedral(phi151)) # 4 +# C.addTimeseries(TS.Distance('r', ca_termini)) # 5 +# C.addTimeseries(TS.CenterOfMass(ca)) # 6 +# C.addTimeseries(TS.CenterOfGeometry(ca)) # 7 +# C.addTimeseries(TS.CenterOfMass(all)) # 8 +# C.addTimeseries(TS.CenterOfGeometry(all)) # 9 + +# C.compute(universe.dcd) + +# results = { +# "avg_angle": C[3].__data__.mean(), +# "avg_phi151": C[4].__data__.mean(), +# "avg_dist": C[5].__data__.mean(), +# "avg_com_ca": C[6].__data__.mean(axis=1), +# "avg_com_all": C[8].__data__.mean(axis=1), +# "avg_cog_all": C[9].__data__.mean(axis=1), +# } +# C.clear() +# return results + + +# class TestDCDTimestep(BaseTimestepTest): +# Timestep = mda.coordinates.DCD.Timestep +# name = "DCD" +# has_box = True +# set_box = True +# unitcell = np.array([10., 90., 11., 90., 90., 12.]) +# uni_args = (PSF, DCD) + +# def test_ts_order_define(self): +# """Check that users can hack in a custom unitcell order""" +# old = self.Timestep._ts_order +# self.ts._ts_order = [0, 2, 5, 1, 3, 4] +# self.ts.dimensions = np.array([10, 11, 12, 80, 85, 90]) +# assert_allclose(self.ts._unitcell, np.array([10, 80, 11, 85, 90, 12])) +# self.ts._ts_order = old +# self.ts.dimensions = np.zeros(6) From 685ae94c705a378b6f65cb7e4689ab20f13c0c54 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 13:54:48 +0200 Subject: [PATCH 096/107] start work on new dcd reader --- package/MDAnalysis/coordinates/DCD.py | 650 +++++--------------------- 1 file changed, 127 insertions(+), 523 deletions(-) diff --git a/package/MDAnalysis/coordinates/DCD.py b/package/MDAnalysis/coordinates/DCD.py index e8e44ebf572..439a91373e8 100644 --- a/package/MDAnalysis/coordinates/DCD.py +++ b/package/MDAnalysis/coordinates/DCD.py @@ -87,563 +87,167 @@ from ..exceptions import NoDataError from . import base from . import core -# Add the c functions to their respective classes so they act as class methods -from . import _dcdmodule +from ..lib.formats.libdcd import DCDFile # dcdtimeseries is implemented with Pyrex - hopefully all dcd reading functionality can move to pyrex -from . import dcdtimeseries +# from . import dcdtimeseries +class DCDReader(base.ReaderBase): + """DCD Reader -class Timestep(base.Timestep): - #: Indices into :attr:`Timestep._unitcell` (``[A, gamma, B, beta, alpha, - #: C]``, provided by the :class:`DCDReader` C code) to pull out - #: ``[A, B, C, alpha, beta, gamma]``. - _ts_order = [0, 2, 5, 4, 3, 1] - - @property - def dimensions(self): - """unitcell dimensions (*A*, *B*, *C*, *alpha*, *beta*, *gamma*) - - lengths *A*, *B*, *C* are in the MDAnalysis length unit (Ã…), and - angles are in degrees. - - :attr:`dimensions` is read-only because it transforms the actual format - of the unitcell (which differs between different trajectory formats) to - the representation described here, which is used everywhere in - MDAnalysis. - - The ordering of the angles in the unitcell is the same as in recent - versions of VMD's DCDplugin_ (2013), namely the `X-PLOR DCD format`_: - The original unitcell is read as ``[A, gamma, B, beta, alpha, C]`` from - the DCD file (actually, the direction cosines are stored instead of the - angles but the underlying C code already does this conversion); if any - of these values are < 0 or if any of the angles are > 180 degrees then - it is assumed it is a new-style CHARMM unitcell (at least since c36b2) - in which box vectors were recorded. - - .. warning:: The DCD format is not well defined. Check your unit cell - dimensions carefully, especially when using triclinic - boxes. Different software packages implement different conventions - and MDAnalysis is currently implementing the newer NAMD/VMD convention - and tries to guess the new CHARMM one. Old CHARMM trajectories might - give wrong unitcell values. For more details see `Issue 187`_. - - .. versionchanged:: 0.9.0 - Unitcell is now interpreted in the newer NAMD DCD format as ``[A, - gamma, B, beta, alpha, C]`` instead of the old MDAnalysis/CHARMM - ordering ``[A, alpha, B, beta, gamma, C]``. We attempt to detect the - new CHARMM DCD unitcell format (see `Issue 187`_ for a discussion). - - .. _`X-PLOR DCD format`: http://www.ks.uiuc.edu/Research/vmd/plugins/molfile/dcdplugin.html - .. _Issue 187: https://github.com/MDAnalysis/mdanalysis/issues/187 - .. _DCDplugin: http://www.ks.uiuc.edu/Research/vmd/plugins/doxygen/dcdplugin_8c-source.html#l00947 - """ - - # Layout of unitcell is [A, alpha, B, beta, gamma, C] --- (originally CHARMM DCD) - # override for other formats; this strange ordering is kept for historical reasons - # (the user should not need concern themselves with this) - ## orig MDAnalysis 0.8.1/dcd.c (~2004) - ##return np.take(self._unitcell, [0,2,5,1,3,4]) - - # MDAnalysis 0.9.0 with recent dcd.c (based on 2013 molfile - # DCD plugin, which implements the ordering of recent NAMD - # (>2.5?)). See Issue 187. - uc = np.take(self._unitcell, self._ts_order) - # heuristic sanity check: uc = A,B,C,alpha,beta,gamma - # XXX: should we worry about these comparisons with floats? - if np.any(uc < 0.) or np.any(uc[3:] > 180.): - # might be new CHARMM: box matrix vectors - H = self._unitcell - e1, e2, e3 = H[[0,1,3]], H[[1,2,4]], H[[3,4,5]] - uc = core.triclinic_box(e1, e2, e3) - return uc - - @dimensions.setter - def dimensions(self, box): - """Set unitcell with (*A*, *B*, *C*, *alpha*, *beta*, *gamma*) - - .. versionadded:: 0.9.0 - """ - # note that we can re-use self._ts_order with put! - np.put(self._unitcell, self._ts_order, box) - - -class DCDWriter(base.WriterBase): - """Writes to a DCD file - - Typical usage:: - - with DCDWriter("new.dcd", u.atoms.n_atoms) as w: - for ts in u.trajectory - w.write_next_timestep(ts) - - Keywords are available to set some of the low-level attributes of the DCD. - - :Methods: - ``d = DCDWriter(dcdfilename, n_atoms, start, step, delta, remarks)`` - - .. Note:: - - The Writer will write the **unit cell information** to the DCD in a - format compatible with NAMD and older CHARMM versions, namely the unit - cell lengths in Angstrom and the angle cosines (see - :class:`Timestep`). Newer versions of CHARMM (at least c36b2) store the - matrix of the box vectors. Writing this matrix to a DCD is currently not - supported (although reading is supported with the - :class:`DCDReader`); instead the angle cosines are written, - which *might make the DCD file unusable in CHARMM itself*. See - `Issue 187`_ for further information. - - The writing behavior of the :class:`DCDWriter` is identical to - that of the DCD molfile plugin of VMD with the exception that - by default it will use AKMA time units. - - .. _Issue 187: https://github.com/MDAnalysis/mdanalysis/issues/187 """ format = 'DCD' - multiframe = True flavor = 'CHARMM' units = {'time': 'AKMA', 'length': 'Angstrom'} - def __init__(self, filename, n_atoms, start=0, step=1, - delta=mdaunits.convert(1., 'ps', 'AKMA'), dt=None, - remarks="Created by DCDWriter", convert_units=None): - """Create a new DCDWriter - - :Arguments: - *filename* - name of output file - *n_atoms* - number of atoms in dcd file - *start* - starting timestep - *step* - skip between subsequent timesteps (indicate that *step* MD - integrator steps (!) make up one trajectory frame); default is 1. - *delta* - timestep (MD integrator time step (!), in AKMA units); default is - 20.45482949774598 (corresponding to 1 ps). - *remarks* - comments to annotate dcd file - *dt* - **Override** *step* and *delta* so that the DCD records that *dt* ps - lie between two frames. (It sets *step* = 1 and *delta* = ``AKMA(dt)``.) - The default is ``None``, in which case *step* and *delta* are used. - *convert_units* - units are converted to the MDAnalysis base format; ``None`` selects - the value of :data:`MDAnalysis.core.flags` ['convert_lengths']. - (see :ref:`flags-label`) - - .. Note:: - - The keyword arguments set the low-level attributes of the DCD - according to the CHARMM format. The time between two frames would be - *delta* * *step* ! For convenience, one can alternatively supply the - *dt* keyword (see above) to just tell the writer that it should - record "There are dt ps between each frame". + def __init__(self, filename, convert_units=True, **kwargs): + """Parameters + ---------- + filename : str + trajectory filename + convert_units : bool (optional) + convert units to MDAnalysis units + **kwargs : dict + General reader arguments. """ - if n_atoms == 0: - raise ValueError("DCDWriter: no atoms in output trajectory") - elif n_atoms is None: - # probably called from MDAnalysis.Writer() so need to give user a gentle heads up... - raise ValueError("DCDWriter: REQUIRES the number of atoms in the 'n_atoms' argument\n" + - " " * len("ValueError: ") + - "For example: n_atoms=universe.atoms.n_atoms") - self.filename = filename - # convert length and time to base units on the fly? - self.convert_units = flags['convert_lengths'] if convert_units is None \ - else convert_units - self.n_atoms = n_atoms - - self.frames_written = 0 - self.start = start - if dt is not None: - if dt > 0: - # ignore step and delta - self.step = 1 - self.delta = mdaunits.convert(dt, 'ps', 'AKMA') - else: - raise ValueError("DCDWriter: dt must be > 0, not {0}".format(dt)) - else: - self.step = step - self.delta = delta - self.dcdfile = open(self.filename, 'wb') - self.remarks = remarks - self._write_dcd_header(self.n_atoms, self.start, self.step, self.delta, self.remarks) - - def _dcd_header(self): - """Returns contents of the DCD header C structure:: - typedef struct { - fio_fd fd; // FILE * - fio_size_t header_size; // size_t == sizeof(int) - int natoms; - int nsets; - int setsread; - int istart; - int nsavc; - double delta; - int nfixed; - int *freeind; - float *fixedcoords; - int reverse; - int charmm; - int first; - int with_unitcell; - } dcdhandle; - - .. deprecated:: 0.7.5 - This function only exists for debugging purposes and might - be removed without notice. Do not rely on it. + super(DCDReader, self).__init__(filename, + convert_units=convert_units, + **kwargs) + self._file = DCDFile(self.filename) + self.n_atoms = self._file.n_atoms - """ - # was broken (no idea why [orbeckst]), see Issue 27 - # 'PiiiiiidiPPiiii' should be the unpack string according to the struct. - # struct.unpack("LLiiiiidiPPiiii",self._dcd_C_str) - # seems to do the job on Mac OS X 10.6.4 ... but I have no idea why, - # given that the C code seems to define them as normal integers - desc = [ - 'file_desc', 'header_size', 'natoms', 'nsets', 'setsread', 'istart', - 'nsavc', 'delta', 'nfixed', 'freeind_ptr', 'fixedcoords_ptr', - 'reverse', 'charmm', 'first', 'with_unitcell'] - return dict(zip(desc, struct.unpack("LLiiiiidiPPiiii", self._dcd_C_str))) - - def write_next_timestep(self, ts=None): - ''' write a new timestep to the dcd file - - *ts* - timestep object containing coordinates to be written to dcd file - - .. versionchanged:: 0.7.5 - Raises :exc:`ValueError` instead of generic :exc:`Exception` - if wrong number of atoms supplied and :exc:`~MDAnalysis.NoDataError` - if no coordinates to be written. - ''' - if ts is None: - try: - ts = self.ts - except AttributeError: - raise NoDataError("DCDWriter: no coordinate data to write to trajectory file") - if not ts.n_atoms == self.n_atoms: - raise ValueError("DCDWriter: Timestep does not have the correct number of atoms") - unitcell = self.convert_dimensions_to_unitcell(ts).astype(np.float32) # must be float32 (!) - if not ts._pos.flags.f_contiguous: # Not in fortran format - ts = Timestep.from_timestep(ts) # wrap in a new fortran formatted Timestep - if self.convert_units: - pos = self.convert_pos_to_native(ts._pos, - inplace=False) # possibly make a copy to avoid changing the trajectory - self._write_next_frame(pos[:, 0], pos[:, 1], pos[:, 2], unitcell) - self.frames_written += 1 - def convert_dimensions_to_unitcell(self, ts, _ts_order=Timestep._ts_order): - """Read dimensions from timestep *ts* and return appropriate native unitcell. + dt = self._file.delta - .. SeeAlso:: :attr:`Timestep.dimensions` - """ - # unitcell is A,B,C,alpha,beta,gamma - convert to order expected by low level DCD routines - lengths, angles = ts.dimensions[:3], ts.dimensions[3:] - self.convert_pos_to_native(lengths) - unitcell = np.zeros_like(ts.dimensions) - # __write_DCD_frame() wants uc_array = [A, gamma, B, beta, alpha, C] and - # will write the lengths and the angle cosines to the DCD. NOTE: It - # will NOT write CHARMM36+ box matrix vectors. When round-tripping a - # C36+ DCD, we loose the box vector information. However, MDAnalysis - # itself will not detect this because the DCDReader contains the - # heuristic to deal with either lengths/angles or box matrix on the fly. - # - # use np.put so that we can re-use ts_order (otherwise we - # would need a ts_reverse_order such as _ts_reverse_order = [0, 5, 1, 4, 3, 2]) - np.put(unitcell, _ts_order, np.concatenate([lengths, angles])) - return unitcell + self.ts = self._Timestep(self.n_atoms, **self._ts_kwargs) + frame = self._file.read() + self._frame = 0 + self._frame_to_ts(frame, self.ts) + # these should only be initialized once + self.ts.dt = dt + self._file.seek(0) + self.ts.dimensions = frame.unitcell + if self.convert_units: + self.convert_pos_from_native(self.ts.dimensions[:3]) def close(self): - """Close trajectory and flush buffers.""" - if hasattr(self, 'dcdfile') and self.dcdfile is not None: - self._finish_dcd_write() - self.dcdfile.close() - self.dcdfile = None + """close reader""" + self._file.close() + @property + def n_frames(self): + """number of frames in trajectory""" + return len(self._file) -class DCDReader(base.ReaderBase): - """Reads from a DCD file - - :Data: - ts - :class:`Timestep` object containing coordinates of current frame - - :Methods: - ``dcd = DCD(dcdfilename)`` - open dcd file and read header - ``len(dcd)`` - return number of frames in dcd - ``for ts in dcd:`` - iterate through trajectory - ``for ts in dcd[start:stop:skip]:`` - iterate through a trajectory - ``dcd[i]`` - random access into the trajectory (i corresponds to frame number) - ``data = dcd.timeseries(...)`` - retrieve a subset of coordinate information for a group of atoms - ``data = dcd.correl(...)`` - populate a :class:`MDAnalysis.core.Timeseries.Collection` object with computed timeseries - - .. Note:: - - The DCD file format is not well defined. In particular, NAMD - and CHARMM use it differently. Currently, MDAnalysis tries to - guess the correct format for the unitcell representation but it - can be wrong. **Check the unitcell dimensions**, especially for - triclinic unitcells (see `Issue 187`_ and - :attr:`Timestep.dimensions`). A second potential issue are the - units of time (TODO). - - .. versionchanged:: 0.9.0 - The underlying DCD reader (written in C and derived from the - catdcd/molfile plugin code of VMD) is now reading the unitcell in - NAMD ordering: ``[A, B, C, sin(gamma), sin(beta), - sin(alpha)]``. See `Issue 187`_ for further details. - - .. _Issue 187: https://github.com/MDAnalysis/mdanalysis/issues/187 - - .. versionchanged:: 0.11.0 - Frames now 0-based instead of 1-based - Native frame number read into ts._frame - Removed skip keyword and functionality - """ - format = 'DCD' - flavor = 'CHARMM' - units = {'time': 'AKMA', 'length': 'Angstrom'} - _Timestep = Timestep - - def __init__(self, dcdfilename, **kwargs): - super(DCDReader, self).__init__(dcdfilename, **kwargs) + def _reopen(self): + """reopen trajectory""" + self.ts.frame = 0 + self._frame = -1 + self._file.close() + self._file.open(self.filename.encode('utf-8'), 'r') + + def _read_frame(self, i): + """read frame i""" + self._frame = i - 1 + try: + self._file.seek(i) + timestep = self._read_next_timestep() + except IOError: + warnings.warn('seek failed, recalculating offsets and retrying') + offsets = self._file.calc_offsets() + self._file.set_offsets(offsets) + self._read_offsets(store=True) + self._file.seek(i) + timestep = self._read_next_timestep() + return timestep - self.dcdfilename = self.filename # dcdfilename is legacy - self.dcdfile = None # set right away because __del__ checks + def _read_next_timestep(self, ts=None): + """copy next frame into timestep""" + if self._frame == self.n_frames - 1: + raise IOError(errno.EIO, 'trying to go over trajectory limit') + if ts is None: + ts = self.ts + frame = self._file.read() + self._frame += 1 + self._frame_to_ts(frame, ts) + return ts - # Issue #32: segfault if dcd is 0-size - # Hack : test here... (but should be fixed in dcd.c) - stats = os.stat(self.filename) - if stats.st_size == 0: - raise IOError(errno.EIO, "DCD file is zero size", self.filename) + def Writer(self, filename, n_atoms=None, **kwargs): + """Return writer for trajectory format""" + if n_atoms is None: + n_atoms = self.n_atoms + return self._writer(filename, n_atoms=n_atoms, **kwargs) - self.dcdfile = open(self.filename, 'rb') - self.n_atoms = 0 - self.n_frames = 0 - self.fixed = 0 - self.periodic = False + def _frame_to_ts(self, frame, ts): + """convert a trr-frame to a mda TimeStep""" + ts.time = self._file.tell() * self._file.delta + ts.frame = self._frame + ts.data['step'] = self._file.tell() - # This reads skip_timestep and delta from header - self._read_dcd_header() + ts.dimensions = frame.unitcell + ts.positions = frame.x - # Convert delta to ps - delta = mdaunits.convert(self.delta, self.units['time'], 'ps') + if self.convert_units: + self.convert_pos_from_native(ts.dimensions[:3]) + self.convert_pos_from_native(ts.positions) - self._ts_kwargs.setdefault('dt', self.skip_timestep * delta) - self.ts = self._Timestep(self.n_atoms, **self._ts_kwargs) - # Read in the first timestep - self._read_next_timestep() - - def _dcd_header(self): # pragma: no cover - """Returns contents of the DCD header C structure:: - typedef struct { - fio_fd fd; // FILE * - fio_size_t header_size; // size_t == sizeof(int) - int natoms; - int nsets; - int setsread; - int istart; - int nsavc; - double delta; - int nfixed; - int *freeind; - float *fixedcoords; - int reverse; - int charmm; - int first; - int with_unitcell; - } dcdhandle; - - .. deprecated:: 0.7.5 - This function only exists for debugging purposes and might - be removed without notice. Do not rely on it. + return ts - """ - # was broken (no idea why [orbeckst]), see Issue 27 - # 'PiiiiiidiPPiiii' should be the unpack string according to the struct. - # struct.unpack("LLiiiiidiPPiiii",self._dcd_C_str) - # seems to do the job on Mac OS X 10.6.4 ... but I have no idea why, - # given that the C code seems to define them as normal integers - desc = [ - 'file_desc', 'header_size', 'natoms', 'nsets', 'setsread', 'istart', - 'nsavc', 'delta', 'nfixed', 'freeind_ptr', 'fixedcoords_ptr', 'reverse', - 'charmm', 'first', 'with_unitcell'] - return dict(zip(desc, struct.unpack("LLiiiiidiPPiiii", self._dcd_C_str))) - def _reopen(self): - self.ts.frame = -1 - self._reset_dcd_read() +class DCDWriter(base.WriterBase): + """Base class for libmdaxdr file formats xtc and trr""" - def _read_next_timestep(self, ts=None): - """Read the next frame + format = 'DCD' + multiframe = True + flavor = 'CHARMM' + units = {'time': 'AKMA', 'length': 'Angstrom'} - .. versionchanged 0.11.0:: - Native frame read into ts._frame, ts.frame naively iterated + def __init__(self, filename, n_atoms, convert_units=True, **kwargs): """ - if ts is None: - ts = self.ts - ts._frame = self._read_next_frame(ts._x, ts._y, ts._z, ts._unitcell, 1) - ts.frame += 1 - return ts - - def _read_frame(self, frame): - """Skip to frame and read - - .. versionchanged:: 0.11.0 - Native frame read into ts._frame, ts.frame naively set to frame + Parameters + ---------- + filename : str + filename of trajectory + n_atoms : int + number of atoms to be written + convert_units : bool (optional) + convert from MDAnalysis units to format specific units + **kwargs : dict + General writer arguments """ - self._jump_to_frame(frame) - ts = self.ts - ts._frame = self._read_next_frame(ts._x, ts._y, ts._z, ts._unitcell, 1) - ts.frame = frame - return ts + self.filename = filename + self._convert_units = convert_units + self.n_atoms = n_atoms + self._file = self._file(self.filename, 'w') - def timeseries(self, asel=None, start=None, stop=None, step=None, skip=None, - format='afc'): - """Return a subset of coordinate data for an AtomGroup - - :Arguments: - *asel* - :class:`~MDAnalysis.core.groups.AtomGroup` object - Defaults to None, in which case the full set of coordinate data - is returned. - *start*, *stop*, *step* - A range of the trajectory to access, with start being inclusive - and stop being exclusive. - *format* - the order/shape of the return data array, corresponding - to (a)tom, (f)rame, (c)oordinates all six combinations - of 'a', 'f', 'c' are allowed ie "fac" - return array - where the shape is (frame, number of atoms, - coordinates) - :Deprecated: - *skip* - Skip has been deprecated in favor of the standard keyword step. - """ - if skip is not None: - step = skip - warnings.warn("Skip is deprecated and will be removed in" - "in 1.0. Use step instead.", - category=DeprecationWarning) - - start, stop, step = self.check_slice_indices(start, stop, step) - - if asel is not None: - if len(asel) == 0: - raise NoDataError("Timeseries requires at least one atom to analyze") - atom_numbers = list(asel.indices) - else: - atom_numbers = list(range(self.n_atoms)) - - if len(format) != 3 and format not in ['afc', 'acf', 'caf', 'cfa', 'fac', 'fca']: - raise ValueError("Invalid timeseries format") - # Check if the atom numbers can be grouped for efficiency, then we can read partial buffers - # from trajectory file instead of an entire timestep - # XXX needs to be implemented - return self._read_timeseries(atom_numbers, start, stop, step, format) - - def correl(self, timeseries, start=None, stop=None, step=None, skip=None): - """Populate a TimeseriesCollection object with timeseries computed from the trajectory - - :Arguments: - *timeseries* - :class:`MDAnalysis.core.Timeseries.TimeseriesCollection` - *start, stop, step* - A subset of the trajectory to use, with start being inclusive - and stop being exclusive. - :Deprecated: - *skip* - Skip has been deprecated in favor of the standard keyword step. - """ - if skip is not None: - step = skip - warnings.warn("Skip is deprecated and will be removed in" - "in 1.0. Use step instead.", - category=DeprecationWarning) - - start, stop, step = self.check_slice_indices(start, stop, step) - atomlist = timeseries._getAtomList() - format = timeseries._getFormat() - lowerb, upperb = timeseries._getBounds() - sizedata = timeseries._getDataSize() - atomcounts = timeseries._getAtomCounts() - auxdata = timeseries._getAuxData() - return self._read_timecorrel(atomlist, atomcounts, format, auxdata, - sizedata, lowerb, upperb, start, stop, step) + def write_next_timestep(self, ts): + """Write timestep object into trajectory. - def close(self): - if self.dcdfile is not None: - self._finish_dcd_read() - self.dcdfile.close() - self.dcdfile = None - - def Writer(self, filename, **kwargs): - """Returns a DCDWriter for *filename* with the same parameters as this DCD. - - All values can be changed through keyword arguments. - - :Arguments: - *filename* - filename of the output DCD trajectory - :Keywords: - *n_atoms* - number of atoms - *start* - number of the first recorded MD step - *step* - indicate that *step* MD steps (!) make up one trajectory frame - *delta* - MD integrator time step (!), in AKMA units - *dt* - **Override** *step* and *delta* so that the DCD records that *dt* ps - lie between two frames. (It sets *step* = 1 and *delta* = ``AKMA(dt)``.) - The default is ``None``, in which case *step* and *delta* are used. - *remarks* - string that is stored in the DCD header [XXX -- max length?] - - :Returns: :class:`DCDWriter` - - .. Note:: - - The keyword arguments set the low-level attributes of the DCD - according to the CHARMM format. The time between two frames would be - *delta* * *step* ! - - .. SeeAlso:: :class:`DCDWriter` has detailed argument description - """ - n_atoms = kwargs.pop('n_atoms', self.n_atoms) - kwargs.setdefault('start', self.start_timestep) - kwargs.setdefault('step', self.skip_timestep) - kwargs.setdefault('delta', self.delta) - kwargs.setdefault('remarks', self.remarks) - # dt keyword is simply passed through if provided - return DCDWriter(filename, n_atoms, **kwargs) + Parameters + ---------- + ts: TimeStep - @property - def dt(self): - """Time between two trajectory frames in picoseconds.""" - return self.ts.dt + See Also + -------- + .write(AtomGroup/Universe/TimeStep) + The normal write() method takes a more general input + """ + xyz = ts.positions.copy() + time = ts.time + step = ts.frame + dimensions = ts.dimensions + if self._convert_units: + xyz = self.convert_pos_to_native(xyz, inplace=False) + dimensions = self.convert_dimensions_to_unitcell(ts, inplace=False) -DCDReader._read_dcd_header = types.MethodType(_dcdmodule.__read_dcd_header, None, DCDReader) -DCDReader._read_next_frame = types.MethodType(_dcdmodule.__read_next_frame, None, DCDReader) -DCDReader._jump_to_frame = types.MethodType(_dcdmodule.__jump_to_frame, None, DCDReader) -DCDReader._reset_dcd_read = types.MethodType(_dcdmodule.__reset_dcd_read, None, DCDReader) -DCDReader._finish_dcd_read = types.MethodType(_dcdmodule.__finish_dcd_read, None, DCDReader) -DCDReader._read_timeseries = types.MethodType(_dcdmodule.__read_timeseries, None, DCDReader) + self._file.write(xyz=xyz, box=dimensions, step=step, natoms=xyz.shape[0], + charmm=1, time_step=ts.dt * step, ts_between_saves=1, remarks='test') -DCDWriter._write_dcd_header = types.MethodType(_dcdmodule.__write_dcd_header, None, DCDWriter) -DCDWriter._write_next_frame = types.MethodType(_dcdmodule.__write_next_frame, None, DCDWriter) -DCDWriter._finish_dcd_write = types.MethodType(_dcdmodule.__finish_dcd_write, None, DCDWriter) + def close(self): + """close trajectory""" + self._file.close() -#DCDReader._read_timeseries = types.MethodType(dcdtimeseries.__read_timeseries, None, DCDReader) -DCDReader._read_timecorrel = types.MethodType(dcdtimeseries.__read_timecorrel, None, DCDReader) + def __del__(self): + self.close() From 390196e9ea952a3e5e5944c2bd345e264bde5fe0 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 14:45:11 +0200 Subject: [PATCH 097/107] fix unicode name in open --- package/MDAnalysis/lib/formats/libdcd.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 4a764fb048b..cf9087d3f9f 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -172,7 +172,7 @@ cdef class DCDFile: fio_mode = FIO_WRITE else: raise IOError("unkown mode '{}', use either r or w".format(mode)) - self.mode = mode + self.mode = str(mode) ok = fio_open(self.fname, fio_mode, &self.fp) if ok != 0: From a2d0791f9ca5390b1041f072979caae7678b4104 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 15:39:52 +0200 Subject: [PATCH 098/107] improve dt unit handling --- package/MDAnalysis/coordinates/DCD.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/package/MDAnalysis/coordinates/DCD.py b/package/MDAnalysis/coordinates/DCD.py index 439a91373e8..fe7ae1310b2 100644 --- a/package/MDAnalysis/coordinates/DCD.py +++ b/package/MDAnalysis/coordinates/DCD.py @@ -118,7 +118,8 @@ def __init__(self, filename, convert_units=True, **kwargs): self.n_atoms = self._file.n_atoms - dt = self._file.delta + delta = mdaunits.convert(self._file.delta, self.units['time'], 'ps') + dt = delta * self._file.nsavc self.ts = self._Timestep(self.n_atoms, **self._ts_kwargs) frame = self._file.read() @@ -194,6 +195,10 @@ def _frame_to_ts(self, frame, ts): return ts + @property + def dt(self): + return self.ts.dt + class DCDWriter(base.WriterBase): """Base class for libmdaxdr file formats xtc and trr""" From 0a655ac32e4c5426e582fd30a7d949126344808f Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 May 2017 15:38:15 +0200 Subject: [PATCH 099/107] Fix unitcell handling Unitcells are not handled uniformly. We take a [A, B, C, alpha, beta, gamma] and return the same as well. --- .../MDAnalysis/lib/formats/include/readdcd.h | 27 --- package/MDAnalysis/lib/formats/libdcd.pyx | 155 ++++++++++-------- .../MDAnalysisTests/formats/test_libdcd.py | 20 +-- 3 files changed, 94 insertions(+), 108 deletions(-) diff --git a/package/MDAnalysis/lib/formats/include/readdcd.h b/package/MDAnalysis/lib/formats/include/readdcd.h index f4f7b99e5da..b248097f4db 100644 --- a/package/MDAnalysis/lib/formats/include/readdcd.h +++ b/package/MDAnalysis/lib/formats/include/readdcd.h @@ -505,9 +505,6 @@ static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, int first, int *indexes, float *fixedcoords, int reverseEndian, int charmm) { int ret_val; /* Return value from read */ - float alpha, beta, gamma; - unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; - unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; if ((num_fixed==0) || first) { int tmpbuf[6]; /* temp storage for reading formatting info */ @@ -597,30 +594,6 @@ static int read_dcdstep(fio_fd fd, int N, float *X, float *Y, float *Z, if (ret_val) return ret_val; } - - if (unitcell[1] >= -1.0 && unitcell[1] <= 1.0 && - unitcell[3] >= -1.0 && unitcell[3] <= 1.0 && - unitcell[4] >= -1.0 && unitcell[4] <= 1.0) { - /* This file was generated by Charmm, or by NAMD > 2.5, with the angle */ - /* cosines of the periodic cell angles written to the DCD file. */ - /* This formulation improves rounding behavior for orthogonal cells */ - /* so that the angles end up at precisely 90 degrees, unlike acos(). */ - /* (changed in MDAnalysis 0.9.0 to have NAMD ordering of the angles; */ - /* see Issue 187) */ - alpha = 90.0 - asin(unitcell[4]) * 90.0 / M_PI_2; - beta = 90.0 - asin(unitcell[3]) * 90.0 / M_PI_2; - gamma = 90.0 - asin(unitcell[1]) * 90.0 / M_PI_2; - } else { - /* This file was likely generated by NAMD 2.5 and the periodic cell */ - /* angles are specified in degrees rather than angle cosines. */ - alpha = unitcell[4]; - beta = unitcell[3]; - gamma = unitcell[1]; - } - unitcell[4] = alpha; - unitcell[3] = beta; - unitcell[1] = gamma; - return DCD_SUCCESS; } diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index cf9087d3f9f..7c147944ff9 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -26,6 +26,8 @@ cimport numpy as np from libc.stdio cimport SEEK_SET, SEEK_CUR, SEEK_END +from libc.math cimport M_PI_2, asin + _whence_vals = {"FIO_SEEK_SET": SEEK_SET, "FIO_SEEK_CUR": SEEK_CUR, "FIO_SEEK_END": SEEK_END} @@ -263,54 +265,6 @@ cdef class DCDFile: (self.charmm & DCD_HAS_EXTRA_BLOCK)) - def read(self): - if self.reached_eof: - raise IOError('Reached last frame in DCD, seek to 0') - if not self.is_open: - raise IOError("No file open") - if self.mode != 'r': - raise IOError('File opened in mode: {}. Reading only allow ' - 'in mode "r"'.format('self.mode')) - if self.n_frames == 0: - raise IOError("opened empty file. No frames are saved") - - cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=FLOAT, - order='F') - cdef np.ndarray unitcell = np.empty(6, dtype=DOUBLE) - - cdef FLOAT_T[::1] x = xyz[:, 0] - cdef FLOAT_T[::1] y = xyz[:, 1] - cdef FLOAT_T[::1] z = xyz[:, 2] - - first_frame = self.current_frame == 0 - - ok = read_dcdstep(self.fp, self.n_atoms, - &x[0], - &y[0], &z[0], - unitcell.data, self.nfixed, first_frame, - self.freeind, self.fixedcoords, - self.reverse_endian, self.charmm) - if ok != 0 and ok != -4: - raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) - - # we couldn't read any more frames. - if ok == -4: - self.reached_eof = True - raise StopIteration - - self.current_frame += 1 - - _ts_order = [0, 2, 5, 4, 3, 1] - uc = np.take(unitcell, _ts_order) - if np.any(uc < 0.) or np.any(uc[3:] > 180.): - # might be new CHARMM: box matrix vectors - H = unitcell - e1, e2, e3 = H[[0,1,3]], H[[1,2,4]], H[[3,4,5]] - uc = triclinic_box(e1, e2, e3) - - unitcell = uc - - return DCDFrame(xyz, unitcell) def seek(self, frame): """Seek to Frame. @@ -398,13 +352,20 @@ cdef class DCDFile: if self.mode != 'w': raise IOError('File opened in mode: {}. Writing only allowed ' 'in mode "w"'.format('self.mode')) + if len(box) != 6: + raise ValueError("box size is wrong should be 6, got: {}".format(box.size)) + + # print("box to write ", box) #cdef double [:,:] unitcell = box xyz = np.asarray(xyz, order='F', dtype=np.float32) - cdef DOUBLE_T[::1] c_box = np.asarray(box, order='C', dtype=np.float64) - if c_box.size != 6: - raise ValueError("box size is wrong should be 6, got: {}".format(box.size)) + # we only support writing charmm format unit cell info + # The DCD unitcell is written as ``[A, gamma, B, beta, alpha, C]`` + _ts_order = [0, 5, 1, 4, 3, 2] + box = np.take(box, _ts_order) + # print("writting box ", box) + cdef DOUBLE_T[::1] c_box = np.asarray(box, order='C', dtype=np.float64) if xyz.shape != (natoms, 3): raise ValueError("xyz shape is wrong should be (natoms, 3), got:".format(xyz.shape)) @@ -423,24 +384,86 @@ cdef class DCDFile: # looks like self.nsavc is just 0 all the time step = self.current_frame * self.nsavc - - # we only support writing charmm format unit cell info - alpha = box[3] - beta = box[4] - gamma = box[5] - a = box[0] - b = box[1] - c = box[2] - box[0] = a - box[1] = gamma - box[2] = b - box[3] = beta - box[4] = alpha - box[5] = c - ok = write_dcdstep(self.fp, self.current_frame, step, self.n_atoms, &x[0], &y[0], &z[0], &c_box[0], charmm) self.current_frame += 1 + + def read(self): + if self.reached_eof: + raise IOError('Reached last frame in DCD, seek to 0') + if not self.is_open: + raise IOError("No file open") + if self.mode != 'r': + raise IOError('File opened in mode: {}. Reading only allow ' + 'in mode "r"'.format('self.mode')) + if self.n_frames == 0: + raise IOError("opened empty file. No frames are saved") + + cdef np.ndarray xyz = np.empty((self.n_atoms, 3), dtype=FLOAT, + order='F') + cdef np.ndarray unitcell = np.empty(6, dtype=DOUBLE) + unitcell[0] = unitcell[2] = unitcell[5] = 0.0; + unitcell[4] = unitcell[3] = unitcell[1] = 90.0; + + cdef FLOAT_T[::1] x = xyz[:, 0] + cdef FLOAT_T[::1] y = xyz[:, 1] + cdef FLOAT_T[::1] z = xyz[:, 2] + + first_frame = self.current_frame == 0 + ok = read_dcdstep(self.fp, self.n_atoms, + &x[0], + &y[0], &z[0], + unitcell.data, self.nfixed, first_frame, + self.freeind, self.fixedcoords, + self.reverse_endian, self.charmm) + if ok != 0 and ok != -4: + raise IOError("Reading DCD header failed: {}".format(DCD_ERRORS[ok])) + + # we couldn't read any more frames. + if ok == -4: + self.reached_eof = True + raise StopIteration + + self.current_frame += 1 + + if (unitcell[1] >= -1.0 and unitcell[1] <= 1.0 and + unitcell[3] >= -1.0 and unitcell[3] <= 1.0 and + unitcell[4] >= -1.0 and unitcell[4] <= 1.0): + # This file was generated by Charmm, or by NAMD > 2.5, with the angle + # cosines of the periodic cell angles written to the DCD file. + # This formulation improves rounding behavior for orthogonal cells + # so that the angles end up at precisely 90 degrees, unlike acos(). + # (changed in MDAnalysis 0.9.0 to have NAMD ordering of the angles; + # see Issue 187) */ + alpha = 90.0 - asin(unitcell[4]) * 90.0 / M_PI_2; + beta = 90.0 - asin(unitcell[3]) * 90.0 / M_PI_2; + gamma = 90.0 - asin(unitcell[1]) * 90.0 / M_PI_2; + else: + # This file was likely generated by NAMD 2.5 and the periodic cell + # angles are specified in degrees rather than angle cosines. + alpha = unitcell[4]; + beta = unitcell[3]; + gamma = unitcell[1]; + + unitcell[4] = alpha; + unitcell[3] = beta; + unitcell[1] = gamma; + + # The original unitcell is read as ``[A, gamma, B, beta, alpha, C]`` + _ts_order = [0, 2, 5, 4, 3, 1] + uc = np.take(unitcell, _ts_order) + + # heuristic sanity check: uc = A,B,C,alpha,beta,gamma + # XXX: should we worry about these comparisons with floats? + if np.any(uc < 0.) or np.any(uc[3:] > 180.): + # might be new CHARMM: box matrix vectors + H = unitcell + e1, e2, e3 = H[[0,1,3]], H[[1,2,4]], H[[3,4,5]] + uc = triclinic_box(e1, e2, e3) + + unitcell = uc + + return DCDFrame(xyz, unitcell) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index 20061361350..ca56178990c 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -272,8 +272,8 @@ def test_written_unit_cell(self): with DCDFile(self.testfile) as test, DCDFile(self.readfile) as ref: curr_frame = 0 while curr_frame < test.n_frames: - written_unitcell = test.read()[1] - ref_unitcell = ref.read()[1] + written_unitcell = test.read().unitcell + ref_unitcell = ref.read().unitcell curr_frame += 1 assert_equal(written_unitcell, ref_unitcell) @@ -476,7 +476,7 @@ def setUp(self): dtype=np.float32) -class TestDCDWriteRandom(): +class TestDCDWriteRandom(object): # should only be supported for Charmm24 format writing (for now) def setUp(self): @@ -489,7 +489,8 @@ def setUp(self): self.expected_remarks = '''* DIMS ADK SEQUENCE FOR PORE PROGRAM * WRITTEN BY LIZ DENNING (6.2008) * DATE: 6/ 6/ 8 17:23:56 CREATED BY USER: denniej0 ''' np.random.seed(1178083) - self.random_unitcells = np.random.random((self.expected_frames, 6)).astype(np.float64) + self.random_unitcells = np.random.uniform(high=80,size=(self.expected_frames, 6)).astype(np.float64) + with DCDFile(self.readfile) as f_in, DCDFile(self.testfile, 'w') as f_out: for index, frame in enumerate(f_in): box=frame.unitcell.astype(np.float64) @@ -510,23 +511,12 @@ def tearDown(self): del self.tmpdir def test_written_unit_cell_random(self): - # written unit cell dimensions should match for all frames - # using randomly generated unit cells but some processing - # of the cosine data stored in charmm format is needed - # as well as shuffling of the orders in the unitcell - # array based on the prcoessing performed by - # DCDFile read and more generally relating to Issue 187 with DCDFile(self.testfile) as test: curr_frame = 0 while curr_frame < test.n_frames: written_unitcell = test.read()[1] ref_unitcell = self.random_unitcells[curr_frame] - ref_unitcell[1] = math.degrees(math.acos(ref_unitcell[1])) - ref_unitcell[3] = math.degrees(math.acos(ref_unitcell[3])) - ref_unitcell[4] = math.degrees(math.acos(ref_unitcell[4])) - _ts_order = [0, 2, 5, 4, 3, 1] - ref_unitcell = np.take(ref_unitcell, _ts_order) curr_frame += 1 assert_allclose(written_unitcell, ref_unitcell, rtol=1e-05) From 1ff37c86675deb25966145e4931e1f7e274e9b2d Mon Sep 17 00:00:00 2001 From: Max Linke Date: Mon, 29 May 2017 21:29:06 +0200 Subject: [PATCH 100/107] fix failing tests --- package/MDAnalysis/coordinates/DCD.py | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/package/MDAnalysis/coordinates/DCD.py b/package/MDAnalysis/coordinates/DCD.py index fe7ae1310b2..a3d6b612b2c 100644 --- a/package/MDAnalysis/coordinates/DCD.py +++ b/package/MDAnalysis/coordinates/DCD.py @@ -100,7 +100,7 @@ class DCDReader(base.ReaderBase): flavor = 'CHARMM' units = {'time': 'AKMA', 'length': 'Angstrom'} - def __init__(self, filename, convert_units=True, **kwargs): + def __init__(self, filename, convert_units=True, dt=None, **kwargs): """Parameters ---------- filename : str @@ -119,8 +119,11 @@ def __init__(self, filename, convert_units=True, **kwargs): delta = mdaunits.convert(self._file.delta, self.units['time'], 'ps') - dt = delta * self._file.nsavc + if dt is None: + dt = delta * self._file.nsavc + self.skip_timestep = self._file.nsavc + self._ts_kwargs['dt'] = dt self.ts = self._Timestep(self.n_atoms, **self._ts_kwargs) frame = self._file.read() self._frame = 0 @@ -171,7 +174,8 @@ def _read_next_timestep(self, ts=None): ts = self.ts frame = self._file.read() self._frame += 1 - self._frame_to_ts(frame, ts) + ts = self._frame_to_ts(frame, ts) + self.ts = ts return ts def Writer(self, filename, n_atoms=None, **kwargs): @@ -182,8 +186,8 @@ def Writer(self, filename, n_atoms=None, **kwargs): def _frame_to_ts(self, frame, ts): """convert a trr-frame to a mda TimeStep""" - ts.time = self._file.tell() * self._file.delta ts.frame = self._frame + ts.time = ts.frame * self.ts.dt ts.data['step'] = self._file.tell() ts.dimensions = frame.unitcell @@ -208,7 +212,7 @@ class DCDWriter(base.WriterBase): flavor = 'CHARMM' units = {'time': 'AKMA', 'length': 'Angstrom'} - def __init__(self, filename, n_atoms, convert_units=True, **kwargs): + def __init__(self, filename, n_atoms, convert_units=True, step=1, dt=None, **kwargs): """ Parameters ---------- @@ -224,7 +228,9 @@ def __init__(self, filename, n_atoms, convert_units=True, **kwargs): self.filename = filename self._convert_units = convert_units self.n_atoms = n_atoms - self._file = self._file(self.filename, 'w') + self._file = DCDFile(self.filename, 'w') + self.step = step + self.dt = dt def write_next_timestep(self, ts): """Write timestep object into trajectory. @@ -247,8 +253,11 @@ def write_next_timestep(self, ts): xyz = self.convert_pos_to_native(xyz, inplace=False) dimensions = self.convert_dimensions_to_unitcell(ts, inplace=False) + dt = self.dt if self.dt is not None else ts.dt + dt = mdaunits.convert(dt, 'ps', self.units['time']) + self._file.write(xyz=xyz, box=dimensions, step=step, natoms=xyz.shape[0], - charmm=1, time_step=ts.dt * step, ts_between_saves=1, remarks='test') + charmm=1, time_step=dt, ts_between_saves=self.step, remarks='test') def close(self): """close trajectory""" From 90d4278431dbe18ae599657b5145dc4de553d46b Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 30 May 2017 07:58:49 +0200 Subject: [PATCH 101/107] enable new style reader/writer tests --- package/MDAnalysis/coordinates/DCD.py | 8 ++- testsuite/MDAnalysisTests/coordinates/base.py | 7 +-- .../MDAnalysisTests/coordinates/test_dcd.py | 47 ++++++++++++++++-- .../data/coordinates/create_data.py | 1 + .../MDAnalysisTests/data/coordinates/test.dcd | Bin 0 -> 1056 bytes testsuite/MDAnalysisTests/datafiles.py | 2 + 6 files changed, 55 insertions(+), 10 deletions(-) create mode 100644 testsuite/MDAnalysisTests/data/coordinates/test.dcd diff --git a/package/MDAnalysis/coordinates/DCD.py b/package/MDAnalysis/coordinates/DCD.py index a3d6b612b2c..80a110ba693 100644 --- a/package/MDAnalysis/coordinates/DCD.py +++ b/package/MDAnalysis/coordinates/DCD.py @@ -126,11 +126,15 @@ def __init__(self, filename, convert_units=True, dt=None, **kwargs): self._ts_kwargs['dt'] = dt self.ts = self._Timestep(self.n_atoms, **self._ts_kwargs) frame = self._file.read() + # reset trajectory + if self._file.n_frames > 1: + self._file.seek(1) + else: + self._file.seek(0) self._frame = 0 self._frame_to_ts(frame, self.ts) # these should only be initialized once self.ts.dt = dt - self._file.seek(0) self.ts.dimensions = frame.unitcell if self.convert_units: self.convert_pos_from_native(self.ts.dimensions[:3]) @@ -182,7 +186,7 @@ def Writer(self, filename, n_atoms=None, **kwargs): """Return writer for trajectory format""" if n_atoms is None: n_atoms = self.n_atoms - return self._writer(filename, n_atoms=n_atoms, **kwargs) + return DCDWriter(filename, n_atoms=n_atoms, **kwargs) def _frame_to_ts(self, frame, ts): """convert a trr-frame to a mda TimeStep""" diff --git a/testsuite/MDAnalysisTests/coordinates/base.py b/testsuite/MDAnalysisTests/coordinates/base.py index 2adc80231df..b482dd19407 100644 --- a/testsuite/MDAnalysisTests/coordinates/base.py +++ b/testsuite/MDAnalysisTests/coordinates/base.py @@ -242,13 +242,13 @@ def test_get_writer_2(self): assert_equal(W.n_atoms, 100) def test_dt(self): - assert_equal(self.reader.dt, self.ref.dt) + assert_almost_equal(self.reader.dt, self.ref.dt) def test_ts_dt_matches_reader(self): assert_equal(self.reader.ts.dt, self.reader.dt) def test_total_time(self): - assert_equal(self.reader.totaltime, self.ref.totaltime) + assert_almost_equal(self.reader.totaltime, self.ref.totaltime) def test_first_dimensions(self): self.reader.rewind() @@ -1067,7 +1067,8 @@ def assert_timestep_almost_equal(A, B, decimal=6, verbose=True): 'A.frame = {}, B.frame={}'.format( A.frame, B.frame)) - if A.time != B.time: + # if A.time != B.time: + if not np.allclose(A.time, B.time): raise AssertionError('A and B refer to different times: ' 'A.time = {}, B.time={}'.format( A.time, B.time)) diff --git a/testsuite/MDAnalysisTests/coordinates/test_dcd.py b/testsuite/MDAnalysisTests/coordinates/test_dcd.py index 18757cc1489..4d10cfd9857 100644 --- a/testsuite/MDAnalysisTests/coordinates/test_dcd.py +++ b/testsuite/MDAnalysisTests/coordinates/test_dcd.py @@ -31,12 +31,49 @@ assert_allclose, dec) from unittest import TestCase -from MDAnalysisTests.datafiles import (DCD, PSF, DCD_empty, CRD, PRMncdf, NCDF) +from MDAnalysisTests.datafiles import (DCD, PSF, DCD_empty, CRD, PRMncdf, NCDF, + COORDINATES_TOPOLOGY, COORDINATES_DCD) from MDAnalysisTests.coordinates.reference import (RefCHARMMtriclinicDCD, RefNAMDtriclinicDCD) -from MDAnalysisTests.coordinates.base import BaseTimestepTest +# from MDAnalysisTests.coordinates.base import BaseTimestepTest + +from MDAnalysisTests.coordinates.base import (MultiframeReaderTest, BaseReference, + BaseWriterTest, + assert_timestep_almost_equal) + from MDAnalysisTests import module_not_found, tempdir -from MDAnalysisTests.plugins.knownfailure import knownfailure +# from MDAnalysisTests.plugins.knownfailure import knownfailure + + +class DCDReference(BaseReference): + def __init__(self): + super(DCDReference, self).__init__() + self.trajectory = COORDINATES_DCD + self.topology = COORDINATES_TOPOLOGY + self.reader = mda.coordinates.DCD.DCDReader + self.writer = mda.coordinates.DCD.DCDWriter + self.ext = 'xtc' + self.prec = 3 + self.changing_dimensions = True + + +class TestDCDReader(MultiframeReaderTest): + def __init__(self, reference=None): + if reference is None: + reference = DCDReference() + super(TestDCDReader, self).__init__(reference) + + +class TestDCDWriter(BaseWriterTest): + def __init__(self, reference=None): + if reference is None: + reference = DCDReference() + super(TestDCDWriter, self).__init__(reference) + + +################ +# Legacy tests # +################ @attr('issue') def TestDCD_Issue32(): @@ -65,7 +102,7 @@ def test_with_statement(self): err_msg="with_statement: DCDReader does not read all frames") -class TestDCDReader(object): +class TestDCDReader_old(object): def setUp(self): self.universe = mda.Universe(PSF, DCD) self.dcd = self.universe.trajectory @@ -193,7 +230,7 @@ def test_DCDReader_set_dt(dt=100., frame=3): assert_almost_equal(u.trajectory.dt, dt, err_msg="trajectory.dt does not match set dt") -class TestDCDWriter(TestCase): +class TestDCDWriter_old(TestCase): def setUp(self): self.universe = mda.Universe(PSF, DCD) ext = ".dcd" diff --git a/testsuite/MDAnalysisTests/data/coordinates/create_data.py b/testsuite/MDAnalysisTests/data/coordinates/create_data.py index d9f8790a502..9a2b3ede853 100644 --- a/testsuite/MDAnalysisTests/data/coordinates/create_data.py +++ b/testsuite/MDAnalysisTests/data/coordinates/create_data.py @@ -32,6 +32,7 @@ def main(): create_test_trj(u, 'test.xtc') create_test_trj(u, 'test.trr') create_test_trj(u, 'test.gro') + create_test_trj(u, 'test.dcd') if __name__ == '__main__': main() diff --git a/testsuite/MDAnalysisTests/data/coordinates/test.dcd b/testsuite/MDAnalysisTests/data/coordinates/test.dcd new file mode 100644 index 0000000000000000000000000000000000000000..1c625476dba98235f12b1dc36c2161e9689e4724 GIT binary patch literal 1056 zcmd^+F;2rU6o!p}P7IOC09%d_DF?u55EBwrNe8wpg`Pm^y Date: Tue, 30 May 2017 08:04:22 +0200 Subject: [PATCH 102/107] fix up docs --- package/MDAnalysis/coordinates/DCD.py | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/package/MDAnalysis/coordinates/DCD.py b/package/MDAnalysis/coordinates/DCD.py index 80a110ba693..2768c734e43 100644 --- a/package/MDAnalysis/coordinates/DCD.py +++ b/package/MDAnalysis/coordinates/DCD.py @@ -64,8 +64,6 @@ Classes ------- -.. autoclass:: Timestep - :inherited-members: .. autoclass:: DCDReader :inherited-members: .. autoclass:: DCDWriter @@ -107,6 +105,8 @@ def __init__(self, filename, convert_units=True, dt=None, **kwargs): trajectory filename convert_units : bool (optional) convert units to MDAnalysis units + dt : float (optional) + overwrite time delta stored in DCD **kwargs : dict General reader arguments. @@ -158,22 +158,13 @@ def _reopen(self): def _read_frame(self, i): """read frame i""" self._frame = i - 1 - try: - self._file.seek(i) - timestep = self._read_next_timestep() - except IOError: - warnings.warn('seek failed, recalculating offsets and retrying') - offsets = self._file.calc_offsets() - self._file.set_offsets(offsets) - self._read_offsets(store=True) - self._file.seek(i) - timestep = self._read_next_timestep() - return timestep + self._file.seek(i) + return self._read_next_timestep() def _read_next_timestep(self, ts=None): """copy next frame into timestep""" if self._frame == self.n_frames - 1: - raise IOError(errno.EIO, 'trying to go over trajectory limit') + raise IOError('trying to go over trajectory limit') if ts is None: ts = self.ts frame = self._file.read() @@ -226,6 +217,10 @@ def __init__(self, filename, n_atoms, convert_units=True, step=1, dt=None, **kwa number of atoms to be written convert_units : bool (optional) convert from MDAnalysis units to format specific units + step : int (optional) + number of steps between frames to be written + dt : float (optional) + use this time step in DCD. If ``None`` guess from written TimeStep **kwargs : dict General writer arguments """ From c65ae72de04c9c1ed5846f7a3caa876deeed1d48 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 30 May 2017 08:05:36 +0200 Subject: [PATCH 103/107] remove old C dcd reader --- package/MDAnalysis/coordinates/src/dcd.c | 949 ----------------------- 1 file changed, 949 deletions(-) delete mode 100644 package/MDAnalysis/coordinates/src/dcd.c diff --git a/package/MDAnalysis/coordinates/src/dcd.c b/package/MDAnalysis/coordinates/src/dcd.c deleted file mode 100644 index 782c163b35a..00000000000 --- a/package/MDAnalysis/coordinates/src/dcd.c +++ /dev/null @@ -1,949 +0,0 @@ -/* -*- Mode: C; tab-width: 4; indent-tabs-mode:nil; -*- */ -/* vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4 */ -/* - - MDAnalysis --- http://www.mdanalysis.org - Copyright (c) 2006-2016 The MDAnalysis Development Team and contributors - (see the file AUTHORS for the full list of names) - - Released under the GNU Public Licence, v2 or any higher version - - Please cite your use of MDAnalysis in published work: - - R. J. Gowers, M. Linke, J. Barnoud, T. J. E. Reddy, M. N. Melo, S. L. Seyler, - D. L. Dotson, J. Domanski, S. Buchoux, I. M. Kenney, and O. Beckstein. - MDAnalysis: A Python package for the rapid analysis of molecular dynamics - simulations. In S. Benthall and S. Rostrup editors, Proceedings of the 15th - Python in Science Conference, pages 102-109, Austin, TX, 2016. SciPy. - - N. Michaud-Agrawal, E. J. Denning, T. B. Woolf, and O. Beckstein. - MDAnalysis: A Toolkit for the Analysis of Molecular Dynamics Simulations. - J. Comput. Chem. 32 (2011), 2319--2327, doi:10.1002/jcc.21787 - -*/ - - -/* I have to fix error handling in these functions */ - -#include -#include - -#include "readdcd.h" - -typedef struct { - fio_fd fd; - fio_size_t header_size; - int natoms; - int nsets; - int setsread; - int istart; - int nsavc; - double delta; - int nfixed; - int *freeind; - float *fixedcoords; - int reverse; - int charmm; - int first; - int with_unitcell; -} dcdhandle; - - -int jump_to_frame(dcdhandle *dcd, int frame); - -static PyObject * -__write_dcd_header(PyObject *self, PyObject *args) -{ - /* At this point we assume the file has been opened for writing */ - PyObject *temp = NULL; - dcdhandle *dcd = NULL; - fio_fd fd; - int rc = 0; - int natoms = 0; - const char *remarks = "DCD"; - int istart = 0; /* starting timestep of DCD file */ - int nsavc = 1; /* number of timesteps between written DCD frames */ - double delta = 1.0; /* length of a timestep */ - int with_unitcell = 1; /* contains unit cell information (charmm format) */ - int charmm = DCD_IS_CHARMM; /* charmm-formatted DCD file */ - if (with_unitcell) - charmm |= DCD_HAS_EXTRA_BLOCK; - - if (! self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "Oi|iids", &self, &natoms, &istart, &nsavc, &delta, &remarks) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "i|iids", &natoms, &istart, &nsavc, &delta, &remarks) ) - return NULL; - } - - // Get the file object from the class - if (!PyObject_HasAttrString(self, "dcdfile")) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "dcdfile is not an attribute"); - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "dcdfile")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "dcdfile is not an attribute"); - return NULL; - } - - if (!PyFile_CheckExact(temp)) { - // Raise exception - PyErr_SetString(PyExc_TypeError, "dcdfile does not refer to a file object"); - Py_DECREF(temp); - return NULL; - } - fd = fileno(PyFile_AsFile(temp)); - // No longer need the reference to temp - Py_DECREF(temp); - - dcd = (dcdhandle *)malloc(sizeof(dcdhandle)); - memset(dcd, 0, sizeof(dcdhandle)); - dcd->fd = fd; - - if ((rc = write_dcdheader(dcd->fd, remarks, natoms, istart, nsavc, delta, with_unitcell, charmm)) < 0) { - PyErr_SetString(PyExc_IOError, "Cannot write header of DCD file"); - free(dcd); - return NULL; - } - - dcd->natoms = natoms; - dcd->nsets = 0; - dcd->istart = istart; - dcd->nsavc = nsavc; - dcd->delta = delta; - dcd->with_unitcell = with_unitcell; - dcd->charmm = charmm; - temp = PyCObject_FromVoidPtr(dcd, free); // Creates a New Reference - if (PyObject_SetAttrString(self, "_dcd_C_ptr", temp) == -1) { - // Raise exception - who knows what exception to raise?? - PyErr_SetString(PyExc_AttributeError, "Could not create attribute _dcd_C_ptr"); - Py_DECREF(temp); - return NULL; - } - Py_DECREF(temp); - - // For debugging purposes - temp = PyBuffer_FromMemory(dcd, sizeof(dcdhandle)); // Creates a New Reference - if (PyObject_SetAttrString(self, "_dcd_C_str", temp) == -1) { - // Raise exception - who knows what exception to raise?? - PyErr_SetString(PyExc_AttributeError, "Could not create attribute _dcd_C_str"); - Py_DECREF(temp); - return NULL; - } - Py_DECREF(temp); - - Py_INCREF(Py_None); - return Py_None; -} - -static PyObject * -__write_next_frame(PyObject *self, PyObject *args) -{ - dcdhandle *dcd; - PyObject *temp; - PyArrayObject *x, *y, *z, *uc; - int rc, curstep; - float* uc_array; - double unitcell[6]; - - if (!self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "OO!O!O!O!", &self, &PyArray_Type, &x, &PyArray_Type, &y, &PyArray_Type, &z, &PyArray_Type, &uc) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "O!O!O!O!", &PyArray_Type, &x, &PyArray_Type, &y, &PyArray_Type, &z, &PyArray_Type, &uc) ) - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - Py_DECREF(temp); - dcd->nsets++; - curstep = dcd->istart + dcd->nsets * dcd->nsavc; - - uc_array = (float*) uc->data; - unitcell[0] = uc_array[0]; /* A */ - unitcell[2] = uc_array[2]; /* B */ - unitcell[5] = uc_array[5]; /* C */ - /* write angle cosines with NAMD ordering [orbeckst] */ - /* (changed in MDAnalysis 0.9.0) */ - unitcell[4] = sin((M_PI_2 / 90.0 ) * (90.0 - uc_array[4])); /* cos(alpha) */ - unitcell[3] = sin((M_PI_2 / 90.0 ) * (90.0 - uc_array[3])); /* cos(beta) */ - unitcell[1] = sin((M_PI_2 / 90.0 ) * (90.0 - uc_array[1])); /* cos(gamma) */ - - if ((rc = write_dcdstep(dcd->fd, dcd->nsets, curstep, dcd->natoms, (float*)x->data, (float*)y->data, (float*)z->data, - dcd->with_unitcell ? unitcell: NULL, - dcd->charmm)) < 0) - { - PyErr_SetString(PyExc_IOError, "Could not write timestep to dcd file"); - return NULL; - } - - Py_INCREF(Py_None); - return Py_None; -} - -static PyObject * -__finish_dcd_write(PyObject *self, PyObject *args) -{ - //PyObject* temp; - //dcdhandle *dcd; - - if (! self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "O", &self) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "") ) - return NULL; - } - - /*if ( !PyObject_HasAttrString(self, "_dcd_C_ptr") ) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - free(dcd); - Py_DECREF(temp);*/ - - if ( PyObject_DelAttrString(self, "_dcd_C_ptr") == -1) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - Py_INCREF(Py_None); - return Py_None; -} - -static PyObject * -__read_dcd_header(PyObject *self, PyObject *args) -{ - - /* At this point we assume the file has been checked for existence and opened, and the DCD class - * contains a reference to the file (which can be used to retrieve the file descriptor) - */ - PyObject *temp; - fio_fd fd; - int rc; - char *remarks = NULL; - int len_remarks = 0; - dcdhandle *dcd = NULL; - - if (! self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "O", &self) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "") ) - return NULL; - } - - // Get the file object from the class - if (!PyObject_HasAttrString(self, "dcdfile")) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "dcdfile is not an attribute"); - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "dcdfile")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "dcdfile is not an attribute"); - return NULL; - } - - if (!PyFile_CheckExact(temp)) { - // Raise exception - PyErr_SetString(PyExc_TypeError, "dcdfile does not refer to a file object"); - goto error; - } - fd = fileno(PyFile_AsFile(temp)); - // No longer need the reference to temp - Py_DECREF(temp); - - dcd = (dcdhandle *)malloc(sizeof(dcdhandle)); - memset(dcd, 0, sizeof(dcdhandle)); - dcd->fd = fd; - - if ((rc = read_dcdheader(dcd->fd, &dcd->natoms, &dcd->nsets, &dcd->istart, - &dcd->nsavc, &dcd->delta, &dcd->nfixed, &dcd->freeind, - &dcd->fixedcoords, &dcd->reverse, &dcd->charmm, &remarks, &len_remarks))) { - // Raise exception - PyErr_SetString(PyExc_IOError, "Cannot read DCD header"); - goto error; - } - - /* - * Check that the file is big enough to really hold all the frames it claims to have - */ - { - off_t ndims, firstframesize, framesize, extrablocksize; - off_t filesize; - struct stat stbuf; - - extrablocksize = dcd->charmm & DCD_HAS_EXTRA_BLOCK ? 48 + 8 : 0; - ndims = dcd->charmm & DCD_HAS_4DIMS ? 4 : 3; - firstframesize = (dcd->natoms+2) * ndims * sizeof(float) + extrablocksize; - framesize = (dcd->natoms-dcd->nfixed+2) * ndims * sizeof(float) - + extrablocksize; - - // Get filesize from file descriptor - memset(&stbuf, 0, sizeof(struct stat)); - if (fstat(dcd->fd, &stbuf)) { - PyErr_SetString(PyExc_IOError, "Could not stat file"); - goto error; - } - - // Size of header - dcd->header_size = fio_ftell(dcd->fd); - - /* - * It's safe to use ftell, even though ftell returns a long, because the - * header size is < 4GB. - */ - filesize = stbuf.st_size - fio_ftell(dcd->fd) - firstframesize; - if (filesize < 0) { - PyErr_SetString(PyExc_IOError, "DCD file appears to contain no timesteps"); - goto error; - } - dcd->nsets = filesize / framesize + 1; - dcd->setsread = 0; - } - - // We are at the first frame - dcd->first = 1; - - temp = Py_BuildValue("s#", remarks, len_remarks); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "remarks", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute remarks"); - goto error; - } - Py_DECREF(temp); - temp = Py_BuildValue("i", dcd->natoms); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "n_atoms", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute n_atoms"); - goto error; - } - Py_DECREF(temp); - temp = Py_BuildValue("i", dcd->nsets); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "n_frames", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute n_frames"); - goto error; - } - Py_DECREF(temp); - temp = Py_BuildValue("i", dcd->nfixed); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "fixed", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute fixed"); - goto error; - } - Py_DECREF(temp); - temp = Py_BuildValue("i", dcd->istart); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "start_timestep", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute fixed"); - goto error; - } - Py_DECREF(temp); - temp = Py_BuildValue("i", dcd->nsavc); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "skip_timestep", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute fixed"); - goto error; - } - Py_DECREF(temp); - temp = Py_BuildValue("d", dcd->delta); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "delta", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute fixed"); - goto error; - } - Py_DECREF(temp); - - temp = PyCObject_FromVoidPtr(dcd, NULL); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "_dcd_C_ptr", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute _dcd_C_ptr"); - goto error; - } - - if ((dcd->charmm & DCD_IS_CHARMM) && (dcd->charmm & DCD_HAS_EXTRA_BLOCK)) { - dcd->with_unitcell = 1; - temp = Py_True; - } else { - temp = Py_False; - } - Py_INCREF(temp); - if (PyObject_SetAttrString(self, "periodic", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute periodic"); - goto error; - } - Py_DECREF(temp); - - // For debugging purposes - temp = PyBuffer_FromMemory(dcd, sizeof(dcdhandle)); - if (temp == NULL) goto error; - if (PyObject_SetAttrString(self, "_dcd_C_str", temp) == -1) { - PyErr_SetString(PyExc_AttributeError, "Could not create attribute _dcd_C_str"); - goto error; - } - Py_DECREF(temp); - - Py_INCREF(Py_None); - return Py_None; - - error: - Py_XDECREF(temp); - if (dcd != NULL) free(dcd); - if (remarks != NULL) free(remarks); - return NULL; -} - -static PyObject * -__read_timeseries(PyObject *self, PyObject *args) -{ - PyObject *temp = NULL; - PyArrayObject *coord = NULL; - PyListObject *atoms = NULL; - int lowerb = 0, upperb = 0, range=0; - float *tempX = NULL, *tempY = NULL, *tempZ = NULL; - int rc; - int i, j, index; - int n_atoms = 0, n_frames = 0; - - /* Stop = -1 is incorrect and causes an error, look for a fix of this in line - 469 */ - int start = 0, stop = -1, step = 1, numskip = 0, remaining_frames=0; - dcdhandle *dcd = NULL; - int *atomlist = NULL; - npy_intp dimensions[3]; - float unitcell[6]; - const char* format = "afc"; - - if (!self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "OO!|iiis", &self, &PyList_Type, &atoms, &start, &stop, &step, &format) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "O!|iiis", &PyList_Type, &atoms, &start, &stop, &step, &format) ) - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - Py_DECREF(temp); - - n_frames = ((stop-start) / step); - if ((stop-start) % step > 0) { n_frames++; } - //n_frames = dcd->nsets / skip; - n_atoms = PyList_Size((PyObject*)atoms); - if (n_atoms == 0) { - PyErr_SetString(PyExc_Exception, "No atoms passed into _read_timeseries function"); - return NULL; - } - atomlist = (int*)malloc(sizeof(int)*n_atoms); - memset(atomlist, 0, sizeof(int)*n_atoms); - - // Get the atom indexes - for (i=0;ifd, dcd->header_size, FIO_SEEK_SET); - dcd->setsread = 0; - dcd->first = 1; - - // Jump to starting frame - jump_to_frame(dcd, start); - - // Now read through trajectory and get the atom pos - tempX = (float*)malloc(sizeof(float)*range); - tempY = (float*)malloc(sizeof(float)*range); - tempZ = (float*)malloc(sizeof(float)*range); - if ((tempX == NULL) | (tempY == NULL) || (tempZ == NULL)) { - PyErr_SetString(PyExc_MemoryError, "Can't allocate temporary space for coordinate arrays"); - goto error; - } - - remaining_frames = stop-start; - for (i=0;i 1 && i>0) { - // Check if we have fixed atoms - // XXX not done - /* Figure out how many steps to step over, if step = n, np array - slicing treats this as skip over n-1, read the nth. */ - numskip = step -1; - /* If the number to skip is greater than the number of frames left - to be jumped over, just take one more step to reflect np slicing - if there is a remainder, guaranteed to have at least one more - frame. - */ - if(remaining_frames < numskip){ - numskip = 1; - } - rc = skip_dcdstep(dcd->fd, dcd->natoms, dcd->nfixed, dcd->charmm, numskip); - if (rc < 0) { - // return an exception - PyErr_SetString(PyExc_IOError, "Error skipping frame from DCD file"); - goto error; - } - } - // on first iteration, numskip == 0, first set is always read. - dcd->setsread += numskip; - //now read from subset - rc = read_dcdsubset(dcd->fd, dcd->natoms, lowerb, upperb, tempX, tempY, tempZ, - unitcell, dcd->nfixed, dcd->first, dcd->freeind, dcd->fixedcoords, - dcd->reverse, dcd->charmm); - dcd->first = 0; - dcd->setsread++; - remaining_frames = stop - dcd->setsread; - if (rc < 0) { - // return an exception - PyErr_SetString(PyExc_IOError, "Error reading frame from DCD file"); - goto error; - - } - - - // Copy into Numeric array only those atoms we are interested in - for (j=0;jdata + a*coord->strides[0] + b*coord->strides[1] + c*coord->strides[2]) - */ - if (strncasecmp(format, "afc", 3) == 0) { - *(double*)(coord->data + j*coord->strides[0] + i*coord->strides[1] + 0*coord->strides[2]) = tempX[index]; - *(double*)(coord->data + j*coord->strides[0] + i*coord->strides[1] + 1*coord->strides[2]) = tempY[index]; - *(double*)(coord->data + j*coord->strides[0] + i*coord->strides[1] + 2*coord->strides[2]) = tempZ[index]; - } else if (strncasecmp(format, "acf", 3) == 0) { - *(double*)(coord->data + j*coord->strides[0] + 0*coord->strides[1] + i*coord->strides[2]) = tempX[index]; - *(double*)(coord->data + j*coord->strides[0] + 1*coord->strides[1] + i*coord->strides[2]) = tempY[index]; - *(double*)(coord->data + j*coord->strides[0] + 2*coord->strides[1] + i*coord->strides[2]) = tempZ[index]; - } else if (strncasecmp(format, "fac", 3) == 0) { - *(double*)(coord->data + i*coord->strides[0] + j*coord->strides[1] + 0*coord->strides[2]) = tempX[index]; - *(double*)(coord->data + i*coord->strides[0] + j*coord->strides[1] + 1*coord->strides[2]) = tempY[index]; - *(double*)(coord->data + i*coord->strides[0] + j*coord->strides[1] + 2*coord->strides[2]) = tempZ[index]; - } else if (strncasecmp(format, "fca", 3) == 0) { - *(double*)(coord->data + i*coord->strides[0] + 0*coord->strides[1] + j*coord->strides[2]) = tempX[index]; - *(double*)(coord->data + i*coord->strides[0] + 1*coord->strides[1] + j*coord->strides[2]) = tempY[index]; - *(double*)(coord->data + i*coord->strides[0] + 2*coord->strides[1] + j*coord->strides[2]) = tempZ[index]; - } else if (strncasecmp(format, "caf", 3) == 0) { - *(double*)(coord->data + 0*coord->strides[0] + j*coord->strides[1] + i*coord->strides[2]) = tempX[index]; - *(double*)(coord->data + 1*coord->strides[0] + j*coord->strides[1] + i*coord->strides[2]) = tempY[index]; - *(double*)(coord->data + 2*coord->strides[0] + j*coord->strides[1] + i*coord->strides[2]) = tempZ[index]; - } else if (strncasecmp(format, "cfa", 3) == 0) { - *(double*)(coord->data + 0*coord->strides[0] + i*coord->strides[1] + j*coord->strides[2]) = tempX[index]; - *(double*)(coord->data + 1*coord->strides[0] + i*coord->strides[1] + j*coord->strides[2]) = tempY[index]; - *(double*)(coord->data + 2*coord->strides[0] + i*coord->strides[1] + j*coord->strides[2]) = tempZ[index]; - } - } - // Check if we've been interupted by the user - if (PyErr_CheckSignals() == 1) goto error; - } - - // Reset trajectory - rc = fio_fseek(dcd->fd, dcd->header_size, FIO_SEEK_SET); - dcd->setsread = 0; - dcd->first = 1; - free(atomlist); - free(tempX); - free(tempY); - free(tempZ); - return PyArray_Return(coord); - - error: - // Reset trajectory - rc = fio_fseek(dcd->fd, dcd->header_size, FIO_SEEK_SET); - dcd->setsread = 0; - dcd->first = 1; - Py_XDECREF(coord); - if (atomlist != NULL) free(atomlist); - if (tempX != NULL) free(tempX); - if (tempY != NULL) free(tempY); - if (tempZ != NULL) free(tempZ); - return NULL; -} - - -static PyObject * -__read_next_frame(PyObject *self, PyObject *args) -{ - dcdhandle *dcd; - PyObject *temp; - PyArrayObject *x, *y, *z, *uc; - int skip=1; - int rc,numskip; - float* unitcell; - float alpha, beta, gamma; - - if (!self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "OO!O!O!O!|i", &self, &PyArray_Type, &x, &PyArray_Type, &y, &PyArray_Type, &z, &PyArray_Type, &uc, &skip) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "O!O!O!O!|i", &PyArray_Type, &x, &PyArray_Type, &y, &PyArray_Type, &z, &PyArray_Type, &uc, &skip) ) - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - Py_DECREF(temp); - - unitcell = (float*) uc->data; - unitcell[0] = unitcell[2] = unitcell[5] = 0.0f; - unitcell[1] = unitcell[3] = unitcell[4] = 90.0f; - - /* Check for EOF here; that way all EOF's encountered later must be errors */ - if (dcd->setsread == dcd->nsets) { - // Is this an exception? - PyErr_SetString(PyExc_IOError, "End of file reached for dcd file"); - return NULL; - //return MOLFILE_EOF; - } - if (skip > 1) { - if (dcd->first && dcd->nfixed) { - /* We can't just skip it because we need the fixed atom coordinates */ - rc = read_dcdstep(dcd->fd, dcd->natoms, (float*)x->data, (float*)y->data, (float*)z->data, - unitcell, dcd->nfixed, dcd->first, dcd->freeind, dcd->fixedcoords, - dcd->reverse, dcd->charmm); - dcd->first = 0; - if (rc < 0) { - // return an exception - PyErr_SetString(PyExc_IOError, "Error reading first frame from DCD file"); - //fprintf(stderr, "read_dcdstep returned %d\n", rc); - return NULL; - //return MOLFILE_ERROR; - } - dcd->setsread++; - temp = Py_BuildValue("i", dcd->setsread); - return temp; - //return rc; /* XXX this needs to be updated */ - } - dcd->first = 0; - // Figure out how many steps to skip - numskip = skip - (dcd->setsread % skip) - 1; - /* XXX this needs to be changed */ - rc = skip_dcdstep(dcd->fd, dcd->natoms, dcd->nfixed, dcd->charmm, numskip); - if (rc < 0) { - // return an exception - PyErr_SetString(PyExc_IOError, "Error skipping frame from DCD file"); - //fprintf(stderr, "read_dcdstep returned %d\n", rc); - return NULL; - //return MOLFILE_ERROR; - } - dcd->setsread+=numskip; - } - rc = read_dcdstep(dcd->fd, dcd->natoms, (float*)x->data, (float*)y->data, (float*)z->data, unitcell, - dcd->nfixed, dcd->first, dcd->freeind, dcd->fixedcoords, - dcd->reverse, dcd->charmm); - dcd->first = 0; - dcd->setsread++; - if (rc < 0) { - // return an exception - PyErr_SetString(PyExc_IOError, "Error reading frame from DCD file"); - //fprintf(stderr, "read_dcdstep returned %d\n", rc); - return NULL; - //return MOLFILE_ERROR; - } - - if (unitcell[1] >= -1.0 && unitcell[1] <= 1.0 && - unitcell[3] >= -1.0 && unitcell[3] <= 1.0 && - unitcell[4] >= -1.0 && unitcell[4] <= 1.0) { - /* This file was generated by Charmm, or by NAMD > 2.5, with the angle */ - /* cosines of the periodic cell angles written to the DCD file. */ - /* This formulation improves rounding behavior for orthogonal cells */ - /* so that the angles end up at precisely 90 degrees, unlike acos(). */ - /* (changed in MDAnalysis 0.9.0 to have NAMD ordering of the angles; */ - /* see Issue 187) */ - alpha = 90.0 - asin(unitcell[4]) * 90.0 / M_PI_2; - beta = 90.0 - asin(unitcell[3]) * 90.0 / M_PI_2; - gamma = 90.0 - asin(unitcell[1]) * 90.0 / M_PI_2; - } else { - /* This file was likely generated by NAMD 2.5 and the periodic cell */ - /* angles are specified in degrees rather than angle cosines. */ - alpha = unitcell[4]; - beta = unitcell[3]; - gamma = unitcell[1]; - } - unitcell[4] = alpha; - unitcell[3] = beta; - unitcell[1] = gamma; - - // Return the frame read - temp = Py_BuildValue("i", dcd->setsread); - return temp; -} - -static PyObject * -__finish_dcd_read(PyObject *self, PyObject *args) -{ - PyObject* temp; - dcdhandle *dcd; - - if (! self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "O", &self) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "") ) - return NULL; - } - - if ( !PyObject_HasAttrString(self, "_dcd_C_ptr") ) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - - close_dcd_read(dcd->freeind, dcd->fixedcoords); - free(dcd); - Py_DECREF(temp); - Py_INCREF(Py_None); - return Py_None; -} -int jump_to_frame(dcdhandle *dcd, int frame) -{ - int rc; - if (frame > dcd->nsets) { - return -1; - } - // Calculate file offset - { - off_t extrablocksize, ndims, firstframesize, framesize; - off_t pos; - extrablocksize = dcd->charmm & DCD_HAS_EXTRA_BLOCK ? 48 + 8 : 0; - ndims = dcd->charmm & DCD_HAS_4DIMS ? 4 : 3; - firstframesize = (dcd->natoms+2) * ndims * sizeof(float) + extrablocksize; - framesize = (dcd->natoms-dcd->nfixed+2) * ndims * sizeof(float) - + extrablocksize; - // Use zero indexing - if (frame == 0) { - pos = dcd->header_size; - dcd->first = 1; - } - else { - pos = dcd->header_size + firstframesize + framesize * (frame-1); - dcd->first = 0; - } - rc = fio_fseek(dcd->fd, pos, FIO_SEEK_SET); - } - dcd->setsread = frame; - return rc; -} - -static PyObject * -__jump_to_frame(PyObject *self, PyObject *args) -{ - PyObject* temp; - dcdhandle *dcd; - int frame; - - if (! self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "Oi", &self, &frame) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "i", &frame) ) - return NULL; - } - - if ( !PyObject_HasAttrString(self, "_dcd_C_ptr") ) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - Py_DECREF(temp); - - /*if (frame > dcd->nsets) { - PyErr_SetString(PyExc_IndexError, "Invalid frame"); - return NULL; - } - - // Calculate file offset - { - off_t extrablocksize, ndims, firstframesize, framesize; - off_t pos; - extrablocksize = dcd->charmm & DCD_HAS_EXTRA_BLOCK ? 48 + 8 : 0; - ndims = dcd->charmm & DCD_HAS_4DIMS ? 4 : 3; - firstframesize = (dcd->natoms+2) * ndims * sizeof(float) + extrablocksize; - framesize = (dcd->natoms-dcd->nfixed+2) * ndims * sizeof(float) - + extrablocksize; - // Use zero indexing - if (frame == 0) { - pos = dcd->header_size; - } - else { - pos = dcd->header_size + firstframesize + framesize * (frame-1); - } - rc = fio_fseek(dcd->fd, pos, FIO_SEEK_SET); - } - dcd->setsread = frame; - dcd->first = 0;*/ - jump_to_frame(dcd, frame); - - temp = Py_BuildValue("i", dcd->setsread); - return temp; -} - -static PyObject * -__reset_dcd_read(PyObject *self, PyObject *args) -{ - PyObject* temp; - dcdhandle *dcd; - int rc; - - if (! self) { - /* we were in fact called as a module function, try to retrieve - a matching object from args */ - if( !PyArg_ParseTuple(args, "O", &self) ) - return NULL; - } else { - /* we were obviously called as an object method so args should - only have the int value. */ - if( !PyArg_ParseTuple(args, "") ) - return NULL; - } - - if ( !PyObject_HasAttrString(self, "_dcd_C_ptr") ) { - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - if ((temp = PyObject_GetAttrString(self, "_dcd_C_ptr")) == NULL) { // This gives me a New Reference - // Raise exception - PyErr_SetString(PyExc_AttributeError, "_dcd_C_ptr is not an attribute"); - return NULL; - } - - dcd = (dcdhandle*)PyCObject_AsVoidPtr(temp); - rc = fio_fseek(dcd->fd, dcd->header_size, FIO_SEEK_SET); - dcd->setsread = 0; - dcd->first = 1; - Py_DECREF(temp); - Py_INCREF(Py_None); - return Py_None; -} - -static PyMethodDef DCDMethods[] = { - {"__write_dcd_header", __write_dcd_header, METH_VARARGS, "Write a DCD header."}, - {"__write_next_frame", __write_next_frame, METH_VARARGS, "Write the next timestep."}, - {"__finish_dcd_write", __finish_dcd_write, METH_VARARGS, "Clean up and data for handling dcd file."}, - {"__read_dcd_header", __read_dcd_header, METH_VARARGS, "Read in a DCD header."}, - {"__read_next_frame", __read_next_frame, METH_VARARGS, "Read in the next timestep."}, - {"__jump_to_frame", __jump_to_frame, METH_VARARGS, "Jump to specified timestep."}, - {"__reset_dcd_read", __reset_dcd_read, METH_VARARGS, "Reset dcd file reading."}, - {"__finish_dcd_read", __finish_dcd_read, METH_VARARGS, "Clean up any data for handling dcd file."}, - {"__read_timeseries", __read_timeseries, METH_VARARGS, "Return a Numpy array of the coordinates for a set of atoms for the whole trajectory."}, - {NULL, NULL, 0, NULL} /* Sentinel */ -}; - -PyMODINIT_FUNC -init_dcdmodule(void) -{ - (void) Py_InitModule("_dcdmodule", DCDMethods); - import_array(); -} From 1ccf270b3312b2d9d33634566d54d50b24d697b3 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 30 May 2017 08:11:09 +0200 Subject: [PATCH 104/107] remove duplicate tests --- .../MDAnalysisTests/coordinates/test_dcd.py | 135 ++++-------------- 1 file changed, 31 insertions(+), 104 deletions(-) diff --git a/testsuite/MDAnalysisTests/coordinates/test_dcd.py b/testsuite/MDAnalysisTests/coordinates/test_dcd.py index 4d10cfd9857..e00b559ebad 100644 --- a/testsuite/MDAnalysisTests/coordinates/test_dcd.py +++ b/testsuite/MDAnalysisTests/coordinates/test_dcd.py @@ -21,6 +21,7 @@ # from __future__ import absolute_import import MDAnalysis as mda +from MDAnalysis.coordinates.DCD import DCDReader import numpy as np import os from six.moves import zip, range @@ -63,28 +64,12 @@ def __init__(self, reference=None): reference = DCDReference() super(TestDCDReader, self).__init__(reference) + @staticmethod + def test_empty_dcd(): + assert_raises(IOError, mda.Universe, PSF, DCD_empty) -class TestDCDWriter(BaseWriterTest): - def __init__(self, reference=None): - if reference is None: - reference = DCDReference() - super(TestDCDWriter, self).__init__(reference) - - -################ -# Legacy tests # -################ - -@attr('issue') -def TestDCD_Issue32(): - """Test for Issue 32: 0-size dcds lead to a segfault: now caught with - IOError""" - assert_raises(IOError, mda.Universe, PSF, DCD_empty) - - -class TestDCDReaderClass(TestCase): - def test_with_statement(self): - from MDAnalysis.coordinates.DCD import DCDReader + @staticmethod + def test_with_statement(): try: with DCDReader(DCD) as trj: @@ -102,6 +87,22 @@ def test_with_statement(self): err_msg="with_statement: DCDReader does not read all frames") +class TestDCDWriter(BaseWriterTest): + def __init__(self, reference=None): + if reference is None: + reference = DCDReference() + super(TestDCDWriter, self).__init__(reference) + + +################ +# Legacy tests # +################ + + +class TestDCDReaderClass(TestCase): + pass + + class TestDCDReader_old(object): def setUp(self): self.universe = mda.Universe(PSF, DCD) @@ -122,10 +123,6 @@ def test_next_dcd(self): self.dcd.next() assert_equal(self.ts.frame, 1, "loading frame 1") - def test_jump_dcd(self): - self.dcd[15] # index is 0-based and frames are 0-based - assert_equal(self.ts.frame, 15, "jumping to frame 15") - def test_jump_lastframe_dcd(self): self.dcd[-1] assert_equal(self.ts.frame, 97, "indexing last frame with dcd[-1]") @@ -155,45 +152,6 @@ def test_reverse_dcd(self): assert_equal(frames, list(range(20, 5, -1)), "reversing dcd [20:5:-1]") - def test_n_atoms(self): - assert_equal(self.universe.trajectory.n_atoms, 3341, - "wrong number of atoms") - - def test_n_frames(self): - assert_equal(self.universe.trajectory.n_frames, 98, - "wrong number of frames in dcd") - - def test_dt(self): - assert_almost_equal(self.universe.trajectory.dt, - 1.0, - 4, - err_msg="wrong timestep dt") - - def test_totaltime(self): - # test_totaltime(): need to reduce precision because dt is only precise - # to ~4 decimals and accumulating the inaccuracy leads to even lower - # precision in the totaltime (consequence of fixing Issue 64) - assert_almost_equal(self.universe.trajectory.totaltime, - 97.0, - 3, - err_msg="wrong total length of AdK trajectory") - - def test_frame(self): - self.dcd[15] # index is 0-based and frames are 0-based - assert_equal(self.universe.trajectory.frame, 15, "wrong frame number") - - def test_time(self): - self.dcd[15] # index is 0-based and frames are 0-based - assert_almost_equal(self.universe.trajectory.time, - 15.0, - 5, - err_msg="wrong time of frame") - - def test_volume(self): - assert_almost_equal(self.ts.volume, 0.0, 3, - err_msg="wrong volume for unitcell (no unitcell " - "in DCD so this should be 0)") - # def test_timeseries_slicing(self): # # check that slicing behaves correctly # # should before issue #914 resolved @@ -230,7 +188,7 @@ def test_DCDReader_set_dt(dt=100., frame=3): assert_almost_equal(u.trajectory.dt, dt, err_msg="trajectory.dt does not match set dt") -class TestDCDWriter_old(TestCase): +class TestDCDWriter_old(object): def setUp(self): self.universe = mda.Universe(PSF, DCD) ext = ".dcd" @@ -247,26 +205,6 @@ def tearDown(self): del self.Writer del self.tmpdir - @attr('issue') - def test_write_trajectory(self): - """Test writing DCD trajectories (Issue 50)""" - t = self.universe.trajectory - W = self.Writer(self.outfile, t.n_atoms, dt=t.dt, step=t.skip_timestep) - for ts in self.universe.trajectory: - W.write_next_timestep(ts) - W.close() - - uw = mda.Universe(PSF, self.outfile) - - # check that the coordinates are identical for each time step - for orig_ts, written_ts in zip(self.universe.trajectory, - uw.trajectory): - assert_array_almost_equal(written_ts._pos, orig_ts._pos, 3, - err_msg="coordinate mismatch between " - "original and written trajectory at " - "frame %d (orig) vs %d (written)" % ( - orig_ts.frame, written_ts.frame)) - def test_dt(self): DT = 5.0 t = self.universe.trajectory @@ -314,24 +252,8 @@ def test_single_frame(self): 3, err_msg="coordinates do not match") - def test_with_statement(self): - u = mda.Universe(PSF, CRD) - try: - with mda.Writer(self.outfile, u.atoms.n_atoms) as W: - W.write(u.atoms) - except AttributeError: # misses __exit__ - raise AssertionError("DCDWriter: does not support with statement") - w = mda.Universe(PSF, self.outfile) - assert_equal(w.trajectory.n_frames, 1, - "with_statement: single frame trajectory has wrong " - "number of frames") - assert_almost_equal(w.atoms.positions, - u.atoms.positions, - 3, - err_msg="with_statement: coordinates do not match") - -class TestDCDWriter_Issue59(TestCase): +class TestDCDWriter_Issue59(object): def setUp(self): """Generate input xtc.""" self.u = mda.Universe(PSF, DCD) @@ -402,7 +324,7 @@ def test_OtherWriter(self): dcd.trajectory.frame)) -class _TestDCDReader_TriclinicUnitcell(TestCase): +class _TestDCDReader_TriclinicUnitcell(object): def setUp(self): self.u = mda.Universe(self.topology, self.trajectory) self.tempdir = tempdir.TempDir() @@ -455,7 +377,7 @@ class TestDCDReader_NAMD_Unitcell(_TestDCDReader_TriclinicUnitcell, pass -class TestNCDF2DCD(TestCase): +class TestNCDF2DCD(object): @dec.skipif(module_not_found("netCDF4"), "Test skipped because netCDF is not available.") def setUp(self): @@ -502,6 +424,11 @@ def test_coordinates(self): ts_orig.frame)) +### +# Correl / Timeseries tests +### + + # class TestDCDCorrel(TestCase): # def setUp(self): # # Note: setUp is executed for *every* test ! From dc08bf1eb6bc5a0c2213dce5dbc6a4f06d1d2d1c Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 30 May 2017 08:19:33 +0200 Subject: [PATCH 105/107] add header property --- package/MDAnalysis/lib/formats/libdcd.pyx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/package/MDAnalysis/lib/formats/libdcd.pyx b/package/MDAnalysis/lib/formats/libdcd.pyx index 7c147944ff9..32e753a85fb 100644 --- a/package/MDAnalysis/lib/formats/libdcd.pyx +++ b/package/MDAnalysis/lib/formats/libdcd.pyx @@ -133,6 +133,10 @@ cdef class DCDFile: def __dealloc__(self): self.close() + if self.fixedcoords != NULL: + free(self.fixedcoords) + if self.freeind != NULL: + free(self.freeind) def __enter__(self): """Support context manager""" @@ -245,6 +249,18 @@ cdef class DCDFile: return py_remarks + @property + def header(self): + return {'n_atoms': self.n_atoms, + 'nsets': self.nsets, + 'istart': self.istart, + 'nsavc': self.nsacv, + 'delta': self.delta, + 'nfixed': self.nfixed, + 'reverse_endian': self.reverse_endian, + 'charmm': self.charmm, + 'remarks': self.remarks} + def _estimate_n_frames(self): extrablocksize = 48 + 8 if self.charmm & DCD_HAS_EXTRA_BLOCK else 0 self._firstframesize = (self.n_atoms + 2) * self.n_dims * sizeof(float) + extrablocksize From 308496d8f370bcde07c517dfd83f502f6e24c5e3 Mon Sep 17 00:00:00 2001 From: Date: Tue, 30 May 2017 15:45:44 -0600 Subject: [PATCH 106/107] Removed setup.py refs to old dcd framework. --- package/setup.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/package/setup.py b/package/setup.py index 404219dbf4a..fe79aef5398 100755 --- a/package/setup.py +++ b/package/setup.py @@ -294,11 +294,6 @@ def extensions(config): include_dirs = [get_numpy_include] - dcd = MDAExtension('coordinates._dcdmodule', - ['MDAnalysis/coordinates/src/dcd.c'], - include_dirs=include_dirs + ['MDAnalysis/coordinates/include'], - define_macros=define_macros, - extra_compile_args=extra_compile_args) libdcd = MDAExtension('lib.formats.libdcd', ['MDAnalysis/lib/formats/libdcd' + source_suffix], include_dirs=include_dirs + ['MDAnalysis/lib/formats/include'], @@ -361,7 +356,7 @@ def extensions(config): include_dirs = include_dirs+['MDAnalysis/analysis/encore/dimensionality_reduction/include'], libraries=["m"], extra_compile_args=["-O3", "-ffast-math","-std=c99"]) - pre_exts = [dcd, libdcd, dcd_time, distances, distances_omp, qcprot, + pre_exts = [libdcd, dcd_time, distances, distances_omp, qcprot, transformation, libmdaxdr, util, encore_utils, ap_clustering, spe_dimred] cython_generated = [] From 1b04abe8e7f8cdb7236be0977d5517e830f650bd Mon Sep 17 00:00:00 2001 From: Date: Tue, 30 May 2017 16:41:58 -0600 Subject: [PATCH 107/107] test_written_remarks_property() test now works properly for printable ASCII REMARKS section strings. --- .../MDAnalysisTests/formats/test_libdcd.py | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/testsuite/MDAnalysisTests/formats/test_libdcd.py b/testsuite/MDAnalysisTests/formats/test_libdcd.py index ca56178990c..698966617b1 100644 --- a/testsuite/MDAnalysisTests/formats/test_libdcd.py +++ b/testsuite/MDAnalysisTests/formats/test_libdcd.py @@ -19,8 +19,9 @@ import numpy as np import os import math -from hypothesis import given +from hypothesis import given, example import hypothesis.strategies as st +import string class TestDCDReadFrame(): @@ -299,15 +300,18 @@ def test_written_remarks(self): with DCDFile(self.testfile) as f: assert_equal(f.remarks, self.expected_remarks) - # @given(st.text()) # handle the full unicode range of strings - # def test_written_remarks_property(self, remarks_str): - # # property based testing for writing of a wide range of string - # # values to REMARKS field - # self._write_files(testfile=self.testfile2, - # remarks_setting=remarks_str) - # expected_remarks = remarks_str - # with DCDFile(self.testfile2) as f: - # assert_equal(f.remarks, expected_remarks) + @given(st.text(alphabet=string.printable, + min_size=0, + max_size=500)) # handle the printable ASCII strings + @example('') + def test_written_remarks_property(self, remarks_str): + # property based testing for writing of a wide range of string + # values to REMARKS field + self._write_files(testfile=self.testfile2, + remarks_setting=remarks_str) + expected_remarks = remarks_str[:240] + with DCDFile(self.testfile2) as f: + assert_equal(f.remarks, expected_remarks) def test_written_nsavc(self): # ensure that nsavc, the timesteps between frames written