OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 781 to Rev 782
    Reverse comparison

Rev 781 → Rev 782

/trunk/orp/orp_soc/sw.old/mad-xess/_ansi.h
0,0 → 1,71
/* Provide support for both ANSI and non-ANSI environments. */
 
/* Some ANSI environments are "broken" in the sense that __STDC__ cannot be
relied upon to have it's intended meaning. Therefore we must use our own
concoction: _HAVE_STDC. Always use _HAVE_STDC instead of __STDC__ in newlib
sources!
 
To get a strict ANSI C environment, define macro __STRICT_ANSI__. This will
"comment out" the non-ANSI parts of the ANSI header files (non-ANSI header
files aren't affected). */
 
#ifndef _ANSIDECL_H_
#define _ANSIDECL_H_
 
#include <sys/config.h>
 
/* First try to figure out whether we really are in an ANSI C environment. */
/* FIXME: This probably needs some work. Perhaps sys/config.h can be
prevailed upon to give us a clue. */
 
#ifdef __STDC__
#define _HAVE_STDC
#endif
 
#ifdef _HAVE_STDC
#define _PTR void *
#define _AND ,
#define _NOARGS void
#define _CONST const
#define _VOLATILE volatile
#define _SIGNED signed
#define _DOTS , ...
#define _VOID void
#define _EXFUN(name, proto) name proto
#define _DEFUN(name, arglist, args) name(args)
#define _DEFUN_VOID(name) name(_NOARGS)
#define _CAST_VOID (void)
#ifndef _LONG_DOUBLE
#define _LONG_DOUBLE long double
#endif
#ifndef _PARAMS
#define _PARAMS(paramlist) paramlist
#endif
#else
#define _PTR char *
#define _AND ;
#define _NOARGS
#define _CONST
#define _VOLATILE
#define _SIGNED
#define _DOTS
#define _VOID void
#define _EXFUN(name, proto) name()
#define _DEFUN(name, arglist, args) name arglist args;
#define _DEFUN_VOID(name) name()
#define _CAST_VOID
#define _LONG_DOUBLE double
#ifndef _PARAMS
#define _PARAMS(paramlist) ()
#endif
#endif
 
/* Support gcc's __attribute__ facility. */
 
#ifdef __GNUC__
#define _ATTRIBUTE(attrs) __attribute__ (attrs)
#else
#define _ATTRIBUTE(attrs)
#endif
 
#endif /* _ANSIDECL_H_ */
trunk/orp/orp_soc/sw.old/mad-xess/_ansi.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/xess.ld =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/xess.ld (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/xess.ld (revision 782) @@ -0,0 +1,30 @@ +MEMORY + { + reset : ORIGIN = 0x00000100, LENGTH = 0x00001f00 + ram : ORIGIN = 0x80000000, LENGTH = 0x00200000 + } + +SECTIONS +{ + .reset : + { + *(.reset) + _src_beg = .; + } > reset + .text : + AT ( ADDR (.reset) + SIZEOF (.reset) ) + { + _dst_beg = .; + *(.text) + } > ram + .data : + AT ( ADDR (.reset) + SIZEOF (.reset) + SIZEOF (.text)) + { + *(.data) + _dst_end = .; + } > ram + .bss : + { + *(.bss) + } > ram +}
trunk/orp/orp_soc/sw.old/mad-xess/xess.ld Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/makes2 =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/makes2 (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/makes2 (revision 782) @@ -0,0 +1,8 @@ +#!/bin/sh +../utils/loader tmp.mfs $@ +../utils/bin2c < tmp.mfs > flash.c +make +or32-rtems-objcopy -O binary minimad minimad.bin +../utils/bin2srec minimad.bin > minimad.s2 +../utils/bin2flimg 1 minimad.bin > minimad.mem +
trunk/orp/orp_soc/sw.old/mad-xess/makes2 Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/audio.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/audio.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/audio.c (revision 782) @@ -0,0 +1,171 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: audio.c,v 1.1 2002-03-28 20:38:50 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "audio.h" +# include "mad.h" + +#ifndef EMBED +# include +# include +extern FILE *fo; +int printf(char *fmt, ...); +#endif + +char const *audio_error; + +static mad_fixed_t left_err, right_err; + +#define AUDIO_DBG 0 + +#if AUDIO_DBG +//unsigned short wave_dump[(0x40000/2)]; +//int wave_seg_index[0x10000]; +int wave_seg_nb = 0; +int wave_index = 0; +#endif + +/* + * NAME: audio_linear_dither() + * DESCRIPTION: generic linear sample quantize and dither routine + */ +inline +signed long audio_linear_dither(unsigned int bits, mad_fixed_t sample, + mad_fixed_t *error, struct audio_stats *stats) +{ + mad_fixed_t quantized; + + /* dither */ + sample += *error; + +# if 1 + /* clip */ + quantized = sample; + if (sample >= stats->peak_sample) { + if (sample >= MAD_F_ONE) { + quantized = MAD_F_ONE - 1; + ++stats->clipped_samples; + if (sample - quantized > stats->peak_clipping && + mad_f_abs(*error) < (MAD_F_ONE >> (MAD_F_FRACBITS + 1 - bits))) + stats->peak_clipping = sample - quantized; + } + stats->peak_sample = quantized; + } + else if (sample < -stats->peak_sample) { + if (sample < -MAD_F_ONE) { + quantized = -MAD_F_ONE; + ++stats->clipped_samples; + if (quantized - sample > stats->peak_clipping && + mad_f_abs(*error) < (MAD_F_ONE >> (MAD_F_FRACBITS + 1 - bits))) + stats->peak_clipping = quantized - sample; + } + stats->peak_sample = -quantized; + } +# else + /* clip */ + quantized = sample; + if (sample >= MAD_F_ONE) + quantized = MAD_F_ONE - 1; + else if (sample < -MAD_F_ONE) + quantized = -MAD_F_ONE; +# endif + + /* quantize */ + quantized &= ~((1L << (MAD_F_FRACBITS + 1 - bits)) - 1); + + /* error */ + *error = sample - quantized; + + /* scale */ + return quantized >> (MAD_F_FRACBITS + 1 - bits); +} + + +static struct audio_stats stats; + +/* + * NAME: audio_pcm_s16le() + * DESCRIPTION: write a block of signed 16-bit little-endian PCM samples + */ +unsigned int audio_pcm_s16le(unsigned char *data, unsigned int nsamples, + mad_fixed_t const *left, mad_fixed_t const *right) +{ + unsigned int len; + register signed int sample0, sample1; + + len = nsamples; +#if AUDIO_DBG +// wave_seg_index[wave_seg_nb] = wave_index; +// wave_seg_nb++; +report(wave_index); +#endif + + while (len--) { + sample0 = audio_linear_dither(16, *left++, &left_err, &stats); + sample1 = audio_linear_dither(16, *right++, &right_err, &stats); + +#ifdef EMBED +#ifdef OR1K +#ifndef OR1K_SIM + *(volatile unsigned short *)0x40000000 = sample0; +// *(volatile unsigned long *)0x40000000 = sample0; +// *(volatile unsigned long *)0x40000000 = sample1; +// *(volatile unsigned long *)0x40000000 = sample1; + +#if AUDIO_DBG +// wave_dump[wave_index] = (unsigned short)sample0; + wave_index++; +// wave_dump[wave_index] = (unsigned short)sample1; + wave_index++; +#endif + +#else +// asm volatile("l.mtspr r0,%0,0x01234" : : "r" (sample0 | (sample1 << 16))); + asm volatile("l.mtspr r0,%0,0x0FFFE" : : "r" (sample0 >> 0)); + asm volatile("l.mtspr r0,%0,0x0FFFE" : : "r" (sample0 >> 8)); + asm volatile("l.mtspr r0,%0,0x0FFFE" : : "r" (sample1 >> 0)); + asm volatile("l.mtspr r0,%0,0x0FFFE" : : "r" (sample1 >> 8)); +#endif +#else + printf("l.mtspr (0x0000FFFE) <- %x\n", (sample0 >> 0)); + printf("l.mtspr (0x0000FFFE) <- %x\n", (sample0 >> 8)); + printf("l.mtspr (0x0000FFFE) <- %x\n", (sample1 >> 0)); + printf("l.mtspr (0x0000FFFE) <- %x\n", (sample1 >> 8)); +#endif +#else + data[0] = sample0 >> 0; + data[1] = sample0 >> 8; + data[2] = sample1 >> 0; + data[3] = sample1 >> 8; + if (fo) { + fputc (data[0], fo); + fputc (data[1], fo); + fputc (data[2], fo); + fputc (data[3], fo); + } + data += 4; +#endif + } + return nsamples * 2 * 2; +}
trunk/orp/orp_soc/sw.old/mad-xess/audio.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/reset.S =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/reset.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/reset.S (revision 782) @@ -0,0 +1,162 @@ + .section .reset + .extern _main + .extern _src_beg + .extern _dst_beg + .extern _dst_end + .extern _main + .extern _c_reset + +_reset: + l.nop + l.nop + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Copy form flash to sram */ + + l.movhi r3,hi(_src_beg) + l.ori r3,r3,lo(_src_beg) + l.movhi r4,hi(_dst_beg) + l.ori r4,r4,lo(_dst_beg) + l.movhi r5,hi(_dst_end) + l.ori r5,r5,lo(_dst_end) + l.sub r5,r5,r4 + l.sfeqi r5,0 + l.bf 2f + l.nop +1: l.lwz r6,0(r3) + l.sw 0(r4),r6 + l.addi r3,r3,4 + l.addi r4,r4,4 + l.addi r5,r5,-4 + l.sfgtsi r5,0 + l.bf 1b + l.nop + +2: + + /* Verify sram data */ +/* l.movhi r3,hi(_src_beg) + l.ori r3,r3,lo(_src_beg) + l.addi r3,r3,4 + l.movhi r4,hi(_dst_beg) + l.ori r4,r4,lo(_dst_beg) + l.addi r4,r4,4 + l.movhi r5,hi(_dst_end) + l.ori r5,r5,lo(_dst_end) + l.sub r5,r5,r4 + l.sfeqi r5,0 + l.bf 2f + l.nop +1: l.lwz r6,0(r3) + l.lwz r7,0(r4) + l.sfeq r6,r7 + l.bnf img_err + l.nop + l.addi r3,r3,4 + l.addi r4,r4,4 + l.addi r5,r5,-4 + l.sfgtsi r5,0 + l.bf 1b + l.nop +2: +*/ + l.movhi r1,hi(0x80200000) + l.addi r1,r1,lo(0x80200000) + l.addi r1,r1,-4 + + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 + +img_err: + l.movhi r15,hi(0x80000000) + l.addi r15,r15,lo(0x80000000) + + l.addi r8,r6,0 + l.addi r9,r7,0 + l.addi r10,r3,0 + l.addi r11,r4,0 + + l.sw 0(r15),r8 + + l.srli r8,r8,8 + l.sw 0(r15),r8 + + l.srli r8,r8,8 + l.sw 0(r15),r8 + + l.srli r8,r8,8 + l.sw 0(r15),r8 + + l.sw 0(r15),r10 + + l.srli r10,r10,8 + l.sw 0(r15),r10 + + l.srli r10,r10,8 + l.sw 0(r15),r10 + + l.srli r10,r10,8 + l.sw 0(r15),r10 + + + l.sw 0(r15),r9 + + l.srli r9,r9,8 + l.sw 0(r15),r9 + + l.srli r9,r9,8 + l.sw 0(r15),r9 + + l.srli r9,r9,8 + l.sw 0(r15),r9 + + l.sw 0(r15),r11 + + l.srli r11,r11,8 + l.sw 0(r15),r11 + + l.srli r11,r11,8 + l.sw 0(r15),r11 + + l.srli r11,r11,8 + l.sw 0(r15),r11 + + l.addi r8,r0,0xee + l.sw 0(r15),r8 + + l.j img_err + l.nop
trunk/orp/orp_soc/sw.old/mad-xess/reset.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/simmem.cfg =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/simmem.cfg (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/simmem.cfg (revision 782) @@ -0,0 +1,3 @@ +00000000 00200000 flash 0 5 5 +40000000 00000010 RAM 2 1 1 +80000000 00200000 RAM 1 1 2
trunk/orp/orp_soc/sw.old/mad-xess/simmem.cfg Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/sim.cfg =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/sim.cfg (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/sim.cfg (revision 782) @@ -0,0 +1,89 @@ +/* sim.cfg -- Simulator configuration script file + Copyright (C) 2001, Marko Mlinar, markom@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +section memory + memory_table_file = "simmem.cfg" + /*random_seed = 12345 + type = random*/ + pattern = 0x00 + type = unknown /* Fastest */ +end + +section cpu + ver = 0x1200 + rev = 0x0001 + /* upr = */ + superscalar = 0 + hazards = 0 + history = 0 + dependstats = 0 + dependency = 0 + slp = 0 + btic_sim = 0 + bpb = 0 +end + +section debug + /*enabled = 0 + gdb_enabled = 0*/ + server_port = 9999 +end + +section sim + debug = 0 + verbose = 0 + profile = 0 + prof_fn = "sim.profile" + + /* iprompt = 0 */ + exe_log = 1 + exe_log_fn = "executed.log" +end + +section mc + enabled = 0 + baseaddr = 0xa0000000 + POC = 0x00000008 /* Power on configuration register */ +end + +section uart + enabled = 0 + nuarts = 1 + + device 0 + baseaddr = 0x80000000 + rxfile = "/tmp/uart0.rx" + txfile = "/tmp/uart0.tx" + jitter = -1 /* async behaviour */ + enddevice +end + +section dma + enabled = 0 + ndmas = 1 + + device 0 + baseaddr = 0x90000000 + irq = 4 + enddevice +end + +section VAPI + enabled = 0 +end
trunk/orp/orp_soc/sw.old/mad-xess/sim.cfg Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/memmove.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/memmove.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/memmove.c (revision 782) @@ -0,0 +1,148 @@ +/* +FUNCTION + <>---move possibly overlapping memory + +INDEX + memmove + +ANSI_SYNOPSIS + #include + void *memmove(void *<[dst]>, const void *<[src]>, size_t <[length]>); + +TRAD_SYNOPSIS + #include + void *memmove(<[dst]>, <[src]>, <[length]>) + void *<[dst]>; + void *<[src]>; + size_t <[length]>; + +DESCRIPTION + This function moves <[length]> characters from the block of + memory starting at <<*<[src]>>> to the memory starting at + <<*<[dst]>>>. <> reproduces the characters correctly + at <<*<[dst]>>> even if the two areas overlap. + + +RETURNS + The function returns <[dst]> as passed. + +PORTABILITY +<> is ANSI C. + +<> requires no supporting OS subroutines. + +QUICKREF + memmove ansi pure +*/ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#ifdef EMBED +#include +#include <_ansi.h> +#include +#include + +/* Nonzero if either X or Y is not aligned on a "long" boundary. */ +#define UNALIGNED(X, Y) \ + (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) + +/* How many bytes are copied each iteration of the 4X unrolled loop. */ +#define BIGBLOCKSIZE (sizeof (long) << 2) + +/* How many bytes are copied each iteration of the word copy loop. */ +#define LITTLEBLOCKSIZE (sizeof (long)) + +/* Threshhold for punting to the byte copier. */ +#define TOO_SMALL(LEN) ((LEN) < BIGBLOCKSIZE) + +/*SUPPRESS 20*/ +_PTR +_DEFUN (memmove, (dst_void, src_void, length), + _PTR dst_void _AND + _CONST _PTR src_void _AND + size_t length) +{ +#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__) + char *dst = dst_void; + _CONST char *src = src_void; + + if (src < dst && dst < src + length) + { + /* Have to copy backwards */ + src += length; + dst += length; + while (length--) + { + *--dst = *--src; + } + } + else + { + while (length--) + { + *dst++ = *src++; + } + } + + return dst_void; +#else + char *dst = dst_void; + _CONST char *src = src_void; + long *aligned_dst; + _CONST long *aligned_src; + int len = length; + + if (src < dst && dst < src + len) + { + /* Destructive overlap...have to copy backwards */ + src += len; + dst += len; + while (len--) + { + *--dst = *--src; + } + } + else + { + /* Use optimizing algorithm for a non-destructive copy to closely + match memcpy. If the size is small or either SRC or DST is unaligned, + then punt into the byte copy loop. This should be rare. */ + if (!TOO_SMALL(len) && !UNALIGNED (src, dst)) + { + aligned_dst = (long*)dst; + aligned_src = (long*)src; + + /* Copy 4X long words at a time if possible. */ + while (len >= BIGBLOCKSIZE) + { + *aligned_dst++ = *aligned_src++; + *aligned_dst++ = *aligned_src++; + *aligned_dst++ = *aligned_src++; + *aligned_dst++ = *aligned_src++; + len -= BIGBLOCKSIZE; + } + + /* Copy one long word at a time if possible. */ + while (len >= LITTLEBLOCKSIZE) + { + *aligned_dst++ = *aligned_src++; + len -= LITTLEBLOCKSIZE; + } + + /* Pick up any residual with a byte copier. */ + dst = (char*)aligned_dst; + src = (char*)aligned_src; + } + + while (len--) + { + *dst++ = *src++; + } + } + + return dst_void; +#endif /* not PREFER_SIZE_OVER_SPEED */ +} +#endif
trunk/orp/orp_soc/sw.old/mad-xess/memmove.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/audio.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/audio.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/audio.h (revision 782) @@ -0,0 +1,105 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: audio.h,v 1.1 2002-03-28 20:38:50 lampret Exp $ + */ + +# ifndef AUDIO_H +# define AUDIO_H + +# include "mad.h" + +# define MAX_NSAMPLES (1152 * 3) /* allow for resampled frame */ + +enum audio_command { + AUDIO_COMMAND_INIT, + AUDIO_COMMAND_CONFIG, + AUDIO_COMMAND_FINISH +}; + +enum audio_mode { + AUDIO_MODE_ROUND = 0x0001, + AUDIO_MODE_DITHER = 0x0002 +}; + +struct audio_stats { + unsigned long clipped_samples; + mad_fixed_t peak_clipping; + mad_fixed_t peak_sample; +}; + +union audio_control { + enum audio_command command; + + struct audio_init { + enum audio_command command; + char const *path; + } init; + + struct audio_config { + enum audio_command command; + unsigned int channels; + unsigned int speed; + } config; + + struct audio_play { + enum audio_command command; + unsigned int nsamples; + mad_fixed_t const *samples[2]; + enum audio_mode mode; + struct audio_stats *stats; + } play; + + struct audio_finish { + enum audio_command command; + } finish; +}; + +extern char const *audio_error; + +typedef int audio_ctlfunc_t(union audio_control *); + +audio_ctlfunc_t *audio_output(char const **); + +audio_ctlfunc_t audio_oss; +audio_ctlfunc_t audio_empeg; +audio_ctlfunc_t audio_sun; +audio_ctlfunc_t audio_win32; + +audio_ctlfunc_t audio_raw; +audio_ctlfunc_t audio_wave; +audio_ctlfunc_t audio_snd; +audio_ctlfunc_t audio_hex; +audio_ctlfunc_t audio_null; + +signed long audio_linear_round(unsigned int, mad_fixed_t, + struct audio_stats *); +signed long audio_linear_dither(unsigned int, mad_fixed_t, mad_fixed_t *, + struct audio_stats *); + +unsigned int audio_pcm_s16le(unsigned char *, unsigned int, + mad_fixed_t const *, mad_fixed_t const *); + +unsigned char audio_mulaw_round(mad_fixed_t); +unsigned char audio_mulaw_dither(mad_fixed_t, mad_fixed_t *); + +unsigned int audio_pcm_mulaw(unsigned char *, unsigned int, + mad_fixed_t const *, mad_fixed_t const *, + enum audio_mode, struct audio_stats *); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/audio.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.h (revision 782) @@ -0,0 +1,115 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: frame.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_FRAME_H +# define LIBMAD_FRAME_H + +# include "fixed.h" +# include "timer.h" +# include "stream.h" + +enum mad_layer { + MAD_LAYER_I = 1, /* Layer I */ + MAD_LAYER_II = 2, /* Layer II */ + MAD_LAYER_III = 3 /* Layer III */ +}; + +enum mad_mode { + MAD_MODE_SINGLE_CHANNEL = 0, /* single channel */ + MAD_MODE_DUAL_CHANNEL = 1, /* dual channel */ + MAD_MODE_JOINT_STEREO = 2, /* joint (MS/intensity) stereo */ + MAD_MODE_STEREO = 3 /* normal LR stereo */ +}; + +enum mad_emphasis { + MAD_EMPHASIS_NONE = 0, /* no emphasis */ + MAD_EMPHASIS_50_15_US = 1, /* 50/15 microseconds emphasis */ + MAD_EMPHASIS_CCITT_J_17 = 3 /* CCITT J.17 emphasis */ +}; + +struct mad_frame { + struct mad_header { + enum mad_layer layer; /* audio layer (1, 2, or 3) */ + enum mad_mode mode; /* channel mode (see above) */ + int mode_extension; /* additional mode info */ + enum mad_emphasis emphasis; /* de-emphasis to use (see above) */ + + unsigned long bitrate; /* stream bitrate (bps) */ + unsigned int samplerate; /* sampling frequency (Hz) */ + + unsigned short crc_check; /* frame CRC accumulator */ + unsigned short crc_target; /* final target CRC checksum */ + + int flags; /* flags (see below) */ + int private_bits; /* private bits (see below) */ + + mad_timer_t duration; /* audio playing time of frame */ + } header; + + int options; /* decoding options (from stream) */ + + mad_fixed_t sbsample[2][36][32]; /* synthesis subband filter samples */ + mad_fixed_t (*overlap)[2][32][18]; /* Layer III block overlap data */ +}; + +# define MAD_NCHANNELS(header) ((header)->mode ? 2 : 1) +# define MAD_NSBSAMPLES(header) \ + ((header)->layer == MAD_LAYER_I ? 12 : \ + (((header)->layer == MAD_LAYER_III && \ + ((header)->flags & MAD_FLAG_LSF_EXT)) ? 18 : 36)) + +enum { + MAD_FLAG_NPRIVATE_III = 0x0007, /* number of Layer III private bits */ + MAD_FLAG_INCOMPLETE = 0x0008, /* header but not data is decoded */ + + MAD_FLAG_PROTECTION = 0x0010, /* frame has CRC protection */ + MAD_FLAG_COPYRIGHT = 0x0020, /* frame is copyright */ + MAD_FLAG_ORIGINAL = 0x0040, /* frame is original (else copy) */ + MAD_FLAG_PADDING = 0x0080, /* frame has additional slot */ + + MAD_FLAG_I_STEREO = 0x0100, /* uses intensity joint stereo */ + MAD_FLAG_MS_STEREO = 0x0200, /* uses middle/side joint stereo */ + MAD_FLAG_FREEFORMAT = 0x0400, /* uses free format bitrate */ + + MAD_FLAG_LSF_EXT = 0x1000, /* lower sampling freq. extension */ + MAD_FLAG_MC_EXT = 0x2000, /* multichannel audio extension */ + MAD_FLAG_MPEG_2_5_EXT = 0x4000 /* MPEG 2.5 (unofficial) extension */ +}; + +enum { + MAD_PRIVATE_HEADER = 0x0100, /* header private bit */ + MAD_PRIVATE_III = 0x001f /* Layer III private bits (up to 5) */ +}; + +void mad_header_init(struct mad_header *); + +# define mad_header_finish(header) /* nothing */ + +int mad_header_decode(struct mad_header *, struct mad_stream *); + +void mad_frame_init(struct mad_frame *); +void mad_frame_finish(struct mad_frame *); + +int mad_frame_decode(struct mad_frame *, struct mad_stream *); + +void mad_frame_mute(struct mad_frame *); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.c (revision 782) @@ -0,0 +1,37 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: fixed.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# include "fixed.h" + +/* + * NAME: fixed->abs() + * DESCRIPTION: return absolute value of a fixed-point number + */ +mad_fixed_t mad_f_abs(mad_fixed_t x) +{ + return x < 0 ? -x : x; +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.c (revision 782) @@ -0,0 +1,2412 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: layer3.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# ifndef EMBED +# include +# include +# include +# ifdef HAVE_LIMITS_H +# include +# else +# define CHAR_BIT 8 +# endif +#else + +# define assert(x) +# define CHAR_BIT 8 +#endif + +# include "fixed.h" +# include "bit.h" +# include "stream.h" +# include "frame.h" +# include "huffman.h" +# include "layer3.h" + +/* --- Layer III ----------------------------------------------------------- */ + +enum { + count1table_select = 0x01, + scalefac_scale = 0x02, + preflag = 0x04, + mixed_block_flag = 0x08 +}; + +struct sideinfo { + unsigned int main_data_begin; + unsigned int private_bits; + + unsigned char scfsi[2]; + + struct granule { + struct channel { + /* from side info */ + unsigned short part2_3_length; + unsigned short big_values; + unsigned short global_gain; + unsigned short scalefac_compress; + + unsigned char flags; + unsigned char block_type; + unsigned char table_select[3]; + unsigned char subblock_gain[3]; + unsigned char region0_count; + unsigned char region1_count; + + /* from main_data */ + unsigned char scalefac[39]; /* scalefac_l and/or scalefac_s */ + } ch[2]; + } gr[2]; +}; + +/* + * scalefactor bit lengths + * derived from section 2.4.2.7 of ISO/IEC 11172-3 + */ +static +struct { + unsigned char slen1; + unsigned char slen2; +} const sflen_table[16] = { + { 0, 0 }, { 0, 1 }, { 0, 2 }, { 0, 3 }, + { 3, 0 }, { 1, 1 }, { 1, 2 }, { 1, 3 }, + { 2, 1 }, { 2, 2 }, { 2, 3 }, { 3, 1 }, + { 3, 2 }, { 3, 3 }, { 4, 2 }, { 4, 3 } +}; + +/* + * number of LSF scalefactor band values + * derived from section 2.4.3.2 of ISO/IEC 13818-3 + */ +static +unsigned char const nsfb_table[6][3][4] = { + { { 6, 5, 5, 5 }, + { 9, 9, 9, 9 }, + { 6, 9, 9, 9 } }, + + { { 6, 5, 7, 3 }, + { 9, 9, 12, 6 }, + { 6, 9, 12, 6 } }, + + { { 11, 10, 0, 0 }, + { 18, 18, 0, 0 }, + { 15, 18, 0, 0 } }, + + { { 7, 7, 7, 0 }, + { 12, 12, 12, 0 }, + { 6, 15, 12, 0 } }, + + { { 6, 6, 6, 3 }, + { 12, 9, 9, 6 }, + { 6, 12, 9, 6 } }, + + { { 8, 8, 5, 0 }, + { 15, 12, 9, 0 }, + { 6, 18, 9, 0 } } +}; + +/* + * MPEG-1 scalefactor band widths + * derived from Table B.8 of ISO/IEC 11172-3 + */ +static +unsigned char const sfb_48000_long[] = { + 4, 4, 4, 4, 4, 4, 6, 6, 6, 8, 10, + 12, 16, 18, 22, 28, 34, 40, 46, 54, 54, 192 +}; + +static +unsigned char const sfb_44100_long[] = { + 4, 4, 4, 4, 4, 4, 6, 6, 8, 8, 10, + 12, 16, 20, 24, 28, 34, 42, 50, 54, 76, 158 +}; + +static +unsigned char const sfb_32000_long[] = { + 4, 4, 4, 4, 4, 4, 6, 6, 8, 10, 12, + 16, 20, 24, 30, 38, 46, 56, 68, 84, 102, 26 +}; + +static +unsigned char const sfb_48000_short[] = { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, + 6, 6, 6, 6, 6, 10, 10, 10, 12, 12, 12, 14, 14, + 14, 16, 16, 16, 20, 20, 20, 26, 26, 26, 66, 66, 66 +}; + +static +unsigned char const sfb_44100_short[] = { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, + 6, 6, 8, 8, 8, 10, 10, 10, 12, 12, 12, 14, 14, + 14, 18, 18, 18, 22, 22, 22, 30, 30, 30, 56, 56, 56 +}; + +static +unsigned char const sfb_32000_short[] = { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, + 6, 6, 8, 8, 8, 12, 12, 12, 16, 16, 16, 20, 20, + 20, 26, 26, 26, 34, 34, 34, 42, 42, 42, 12, 12, 12 +}; + +static +unsigned char const sfb_48000_mixed[] = { + /* long */ 4, 4, 4, 4, 4, 4, 6, 6, + /* short */ 4, 4, 4, 6, 6, 6, 6, 6, 6, 10, + 10, 10, 12, 12, 12, 14, 14, 14, 16, 16, + 16, 20, 20, 20, 26, 26, 26, 66, 66, 66 +}; + +static +unsigned char const sfb_44100_mixed[] = { + /* long */ 4, 4, 4, 4, 4, 4, 6, 6, + /* short */ 4, 4, 4, 6, 6, 6, 8, 8, 8, 10, + 10, 10, 12, 12, 12, 14, 14, 14, 18, 18, + 18, 22, 22, 22, 30, 30, 30, 56, 56, 56 +}; + +static +unsigned char const sfb_32000_mixed[] = { + /* long */ 4, 4, 4, 4, 4, 4, 6, 6, + /* short */ 4, 4, 4, 6, 6, 6, 8, 8, 8, 12, + 12, 12, 16, 16, 16, 20, 20, 20, 26, 26, + 26, 34, 34, 34, 42, 42, 42, 12, 12, 12 +}; + +/* + * MPEG-2 scalefactor band widths + * derived from Table B.2 of ISO/IEC 13818-3 + */ +static +unsigned char const sfb_24000_long[] = { + 6, 6, 6, 6, 6, 6, 8, 10, 12, 14, 16, + 18, 22, 26, 32, 38, 46, 54, 62, 70, 76, 36 +}; + +static +unsigned char const sfb_22050_long[] = { + 6, 6, 6, 6, 6, 6, 8, 10, 12, 14, 16, + 20, 24, 28, 32, 38, 46, 52, 60, 68, 58, 54 +}; + +# define sfb_16000_long sfb_22050_long + +static +unsigned char const sfb_24000_short[] = { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 6, 6, 8, + 8, 8, 10, 10, 10, 12, 12, 12, 14, 14, 14, 18, 18, + 18, 24, 24, 24, 32, 32, 32, 44, 44, 44, 12, 12, 12 +}; + +static +unsigned char const sfb_22050_short[] = { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 6, 6, 6, + 6, 6, 8, 8, 8, 10, 10, 10, 14, 14, 14, 18, 18, + 18, 26, 26, 26, 32, 32, 32, 42, 42, 42, 18, 18, 18 +}; + +static +unsigned char const sfb_16000_short[] = { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 6, 6, 8, + 8, 8, 10, 10, 10, 12, 12, 12, 14, 14, 14, 18, 18, + 18, 24, 24, 24, 30, 30, 30, 40, 40, 40, 18, 18, 18 +}; + +static +unsigned char const sfb_24000_mixed[] = { + /* long */ 6, 6, 6, 6, 6, 6, + /* short */ 6, 6, 6, 8, 8, 8, 10, 10, 10, 12, + 12, 12, 14, 14, 14, 18, 18, 18, 24, 24, + 24, 32, 32, 32, 44, 44, 44, 12, 12, 12 +}; + +static +unsigned char const sfb_22050_mixed[] = { + /* long */ 6, 6, 6, 6, 6, 6, + /* short */ 6, 6, 6, 6, 6, 6, 8, 8, 8, 10, + 10, 10, 14, 14, 14, 18, 18, 18, 26, 26, + 26, 32, 32, 32, 42, 42, 42, 18, 18, 18 +}; + +static +unsigned char const sfb_16000_mixed[] = { + /* long */ 6, 6, 6, 6, 6, 6, + /* short */ 6, 6, 6, 8, 8, 8, 10, 10, 10, 12, + 12, 12, 14, 14, 14, 18, 18, 18, 24, 24, + 24, 30, 30, 30, 40, 40, 40, 18, 18, 18 +}; + +/* + * MPEG 2.5 scalefactor band widths + * derived from public sources + */ +# define sfb_12000_long sfb_16000_long +# define sfb_11025_long sfb_12000_long + +static +unsigned char const sfb_8000_long[] = { + 12, 12, 12, 12, 12, 12, 16, 20, 24, 28, 32, + 40, 48, 56, 64, 76, 90, 2, 2, 2, 2, 2 +}; + +# define sfb_12000_short sfb_16000_short +# define sfb_11025_short sfb_12000_short + +static +unsigned char const sfb_8000_short[] = { + 8, 8, 8, 8, 8, 8, 8, 8, 8, 12, 12, 12, 16, + 16, 16, 20, 20, 20, 24, 24, 24, 28, 28, 28, 36, 36, + 36, 2, 2, 2, 2, 2, 2, 2, 2, 2, 26, 26, 26 +}; + +# define sfb_12000_mixed sfb_16000_mixed +# define sfb_11025_mixed sfb_12000_mixed + +/* the 8000 Hz short block scalefactor bands do not break after the first 36 + frequency lines, so this is probably wrong */ +static +unsigned char const sfb_8000_mixed[] = { + /* long */ 12, 12, 12, + /* short */ 4, 4, 4, 8, 8, 8, 12, 12, 12, 16, 16, 16, + 20, 20, 20, 24, 24, 24, 28, 28, 28, 36, 36, 36, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 26, 26, 26 +}; + +static +struct { + unsigned char const *l; + unsigned char const *s; + unsigned char const *m; +} const sfbwidth_table[9] = { + { sfb_48000_long, sfb_48000_short, sfb_48000_mixed }, + { sfb_44100_long, sfb_44100_short, sfb_44100_mixed }, + { sfb_32000_long, sfb_32000_short, sfb_32000_mixed }, + { sfb_24000_long, sfb_24000_short, sfb_24000_mixed }, + { sfb_22050_long, sfb_22050_short, sfb_22050_mixed }, + { sfb_16000_long, sfb_16000_short, sfb_16000_mixed }, + { sfb_12000_long, sfb_12000_short, sfb_12000_mixed }, + { sfb_11025_long, sfb_11025_short, sfb_11025_mixed }, + { sfb_8000_long, sfb_8000_short, sfb_8000_mixed } +}; + +/* + * scalefactor band preemphasis (used only when preflag is set) + * derived from Table B.6 of ISO/IEC 11172-3 + */ +static +unsigned char const pretab[22] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3, 3, 2, 0 +}; + +/* + * table for requantization + * + * rq_table[x].mantissa * 2^(rq_table[x].exponent) = x^(4/3) + * MM: shortened table + */ +#define RQ_START_BITS 7 +static +struct fixedfloat { + unsigned long mantissa : 27; + unsigned short exponent : 5; +} const rq_table[512] = { +# include "rq_short.dat" +}; + +/* + * fractional powers of two + * used for requantization and joint stereo decoding + * + * root_table[3 + x] = 2^(x/4) + */ +static +mad_fixed_t const root_table[7] = { + MAD_F(0x09837f05) /* 2^(-3/4) == 0.59460355750136 */, + MAD_F(0x0b504f33) /* 2^(-2/4) == 0.70710678118655 */, + MAD_F(0x0d744fcd) /* 2^(-1/4) == 0.84089641525371 */, + MAD_F(0x10000000) /* 2^( 0/4) == 1.00000000000000 */, + MAD_F(0x1306fe0a) /* 2^(+1/4) == 1.18920711500272 */, + MAD_F(0x16a09e66) /* 2^(+2/4) == 1.41421356237310 */, + MAD_F(0x1ae89f99) /* 2^(+3/4) == 1.68179283050743 */ +}; + +/* + * coefficients for aliasing reduction + * derived from Table B.9 of ISO/IEC 11172-3 + * + * c[] = { -0.6, -0.535, -0.33, -0.185, -0.095, -0.041, -0.0142, -0.0037 } + * cs[i] = 1 / sqrt(1 + c[i]^2) + * ca[i] = c[i] / sqrt(1 + c[i]^2) + */ +static +mad_fixed_t const cs[8] = { + +MAD_F(0x0db84a81) /* +0.857492926 */, +MAD_F(0x0e1b9d7f) /* +0.881741997 */, + +MAD_F(0x0f31adcf) /* +0.949628649 */, +MAD_F(0x0fbba815) /* +0.983314592 */, + +MAD_F(0x0feda417) /* +0.995517816 */, +MAD_F(0x0ffc8fc8) /* +0.999160558 */, + +MAD_F(0x0fff964c) /* +0.999899195 */, +MAD_F(0x0ffff8d3) /* +0.999993155 */ +}; + +static +mad_fixed_t const ca[8] = { + -MAD_F(0x083b5fe7) /* -0.514495755 */, -MAD_F(0x078c36d2) /* -0.471731969 */, + -MAD_F(0x05039814) /* -0.313377454 */, -MAD_F(0x02e91dd1) /* -0.181913200 */, + -MAD_F(0x0183603a) /* -0.094574193 */, -MAD_F(0x00a7cb87) /* -0.040965583 */, + -MAD_F(0x003a2847) /* -0.014198569 */, -MAD_F(0x000f27b4) /* -0.003699975 */ +}; + +/* + * IMDCT coefficients for short blocks + * derived from section 2.4.3.4.10.2 of ISO/IEC 11172-3 + * + * imdct_s[i/even][k] = cos((PI / 24) * (2 * (i / 2) + 7) * (2 * k + 1)) + * imdct_s[i /odd][k] = cos((PI / 24) * (2 * (6 + (i-1)/2) + 7) * (2 * k + 1)) + */ +static +mad_fixed_t const imdct_s[6][6] = { +# include "imdct_s.dat" +}; + +# if !defined(ASO_IMDCT) +/* + * windowing coefficients for long blocks + * derived from section 2.4.3.4.10.3 of ISO/IEC 11172-3 + * + * window_l[i] = sin((PI / 36) * (i + 1/2)) + */ +static +mad_fixed_t const window_l[36] = { + MAD_F(0x00b2aa3e) /* 0.043619387 */, MAD_F(0x0216a2a2) /* 0.130526192 */, + MAD_F(0x03768962) /* 0.216439614 */, MAD_F(0x04cfb0e2) /* 0.300705800 */, + MAD_F(0x061f78aa) /* 0.382683432 */, MAD_F(0x07635284) /* 0.461748613 */, + MAD_F(0x0898c779) /* 0.537299608 */, MAD_F(0x09bd7ca0) /* 0.608761429 */, + MAD_F(0x0acf37ad) /* 0.675590208 */, MAD_F(0x0bcbe352) /* 0.737277337 */, + MAD_F(0x0cb19346) /* 0.793353340 */, MAD_F(0x0d7e8807) /* 0.843391446 */, + + MAD_F(0x0e313245) /* 0.887010833 */, MAD_F(0x0ec835e8) /* 0.923879533 */, + MAD_F(0x0f426cb5) /* 0.953716951 */, MAD_F(0x0f9ee890) /* 0.976296007 */, + MAD_F(0x0fdcf549) /* 0.991444861 */, MAD_F(0x0ffc19fd) /* 0.999048222 */, + MAD_F(0x0ffc19fd) /* 0.999048222 */, MAD_F(0x0fdcf549) /* 0.991444861 */, + MAD_F(0x0f9ee890) /* 0.976296007 */, MAD_F(0x0f426cb5) /* 0.953716951 */, + MAD_F(0x0ec835e8) /* 0.923879533 */, MAD_F(0x0e313245) /* 0.887010833 */, + + MAD_F(0x0d7e8807) /* 0.843391446 */, MAD_F(0x0cb19346) /* 0.793353340 */, + MAD_F(0x0bcbe352) /* 0.737277337 */, MAD_F(0x0acf37ad) /* 0.675590208 */, + MAD_F(0x09bd7ca0) /* 0.608761429 */, MAD_F(0x0898c779) /* 0.537299608 */, + MAD_F(0x07635284) /* 0.461748613 */, MAD_F(0x061f78aa) /* 0.382683432 */, + MAD_F(0x04cfb0e2) /* 0.300705800 */, MAD_F(0x03768962) /* 0.216439614 */, + MAD_F(0x0216a2a2) /* 0.130526192 */, MAD_F(0x00b2aa3e) /* 0.043619387 */, +}; +# endif /* ASO_IMDCT */ + +/* + * windowing coefficients for short blocks + * derived from section 2.4.3.4.10.3 of ISO/IEC 11172-3 + * + * window_s[i] = sin((PI / 12) * (i + 1/2)) + */ +static +mad_fixed_t const window_s[12] = { + MAD_F(0x0216a2a2) /* 0.130526192 */, MAD_F(0x061f78aa) /* 0.382683432 */, + MAD_F(0x09bd7ca0) /* 0.608761429 */, MAD_F(0x0cb19346) /* 0.793353340 */, + MAD_F(0x0ec835e8) /* 0.923879533 */, MAD_F(0x0fdcf549) /* 0.991444861 */, + MAD_F(0x0fdcf549) /* 0.991444861 */, MAD_F(0x0ec835e8) /* 0.923879533 */, + MAD_F(0x0cb19346) /* 0.793353340 */, MAD_F(0x09bd7ca0) /* 0.608761429 */, + MAD_F(0x061f78aa) /* 0.382683432 */, MAD_F(0x0216a2a2) /* 0.130526192 */, +}; + +/* + * coefficients for intensity stereo processing + * derived from section 2.4.3.4.9.3 of ISO/IEC 11172-3 + * + * is_ratio[i] = tan(i * (PI / 12)) + * is_table[i] = is_ratio[i] / (1 + is_ratio[i]) + */ +static +mad_fixed_t const is_table[7] = { + MAD_F(0x00000000) /* 0.000000000 */, + MAD_F(0x0361962f) /* 0.211324865 */, + MAD_F(0x05db3d74) /* 0.366025404 */, + MAD_F(0x08000000) /* 0.500000000 */, + MAD_F(0x0a24c28c) /* 0.633974596 */, + MAD_F(0x0c9e69d1) /* 0.788675135 */, + MAD_F(0x10000000) /* 1.000000000 */ +}; + +/* + * coefficients for LSF intensity stereo processing + * derived from section 2.4.3.2 of ISO/IEC 13818-3 + * + * is_lsf_table[0][i] = (1 / sqrt(sqrt(2)))^(i + 1) + * is_lsf_table[1][i] = (1 / sqrt(2))^(i + 1) + */ +static +mad_fixed_t const is_lsf_table[2][15] = { + { + MAD_F(0x0d744fcd) /* 0.840896415 */, + MAD_F(0x0b504f33) /* 0.707106781 */, + MAD_F(0x09837f05) /* 0.594603558 */, + MAD_F(0x08000000) /* 0.500000000 */, + MAD_F(0x06ba27e6) /* 0.420448208 */, + MAD_F(0x05a8279a) /* 0.353553391 */, + MAD_F(0x04c1bf83) /* 0.297301779 */, + MAD_F(0x04000000) /* 0.250000000 */, + MAD_F(0x035d13f3) /* 0.210224104 */, + MAD_F(0x02d413cd) /* 0.176776695 */, + MAD_F(0x0260dfc1) /* 0.148650889 */, + MAD_F(0x02000000) /* 0.125000000 */, + MAD_F(0x01ae89fa) /* 0.105112052 */, + MAD_F(0x016a09e6) /* 0.088388348 */, + MAD_F(0x01306fe1) /* 0.074325445 */ + }, { + MAD_F(0x0b504f33) /* 0.707106781 */, + MAD_F(0x08000000) /* 0.500000000 */, + MAD_F(0x05a8279a) /* 0.353553391 */, + MAD_F(0x04000000) /* 0.250000000 */, + MAD_F(0x02d413cd) /* 0.176776695 */, + MAD_F(0x02000000) /* 0.125000000 */, + MAD_F(0x016a09e6) /* 0.088388348 */, + MAD_F(0x01000000) /* 0.062500000 */, + MAD_F(0x00b504f3) /* 0.044194174 */, + MAD_F(0x00800000) /* 0.031250000 */, + MAD_F(0x005a827a) /* 0.022097087 */, + MAD_F(0x00400000) /* 0.015625000 */, + MAD_F(0x002d413d) /* 0.011048543 */, + MAD_F(0x00200000) /* 0.007812500 */, + MAD_F(0x0016a09e) /* 0.005524272 */ + } +}; + +/* + * NAME: III_sideinfo() + * DESCRIPTION: decode frame side information from a bitstream + */ +static +enum mad_error III_sideinfo(struct mad_bitptr *ptr, unsigned int nch, + int lsf, struct sideinfo *si, + unsigned int *data_bitlen, + unsigned int *priv_bitlen) +{ + unsigned int ngr, gr, ch, i; + enum mad_error result = 0; + + *data_bitlen = 0; + *priv_bitlen = lsf ? ((nch == 1) ? 1 : 2) : ((nch == 1) ? 5 : 3); + + si->main_data_begin = mad_bit_read(ptr, lsf ? 8 : 9); + si->private_bits = mad_bit_read(ptr, *priv_bitlen); + + ngr = 1; + if (!lsf) { + ngr = 2; + + for (ch = 0; ch < nch; ++ch) + si->scfsi[ch] = mad_bit_read(ptr, 4); + } + + for (gr = 0; gr < ngr; ++gr) { + struct granule *granule = &si->gr[gr]; + + for (ch = 0; ch < nch; ++ch) { + struct channel *channel = &granule->ch[ch]; + + channel->part2_3_length = mad_bit_read(ptr, 12); + channel->big_values = mad_bit_read(ptr, 9); + channel->global_gain = mad_bit_read(ptr, 8); + channel->scalefac_compress = mad_bit_read(ptr, lsf ? 9 : 4); + + *data_bitlen += channel->part2_3_length; + + if (channel->big_values > 288 && result == 0) + result = MAD_ERROR_BADBIGVALUES; + + channel->flags = 0; + + /* window_switching_flag */ + if (mad_bit_read(ptr, 1)) { + channel->block_type = mad_bit_read(ptr, 2); + + if (channel->block_type == 0 && result == 0) + result = MAD_ERROR_BADBLOCKTYPE; + + if (!lsf && channel->block_type == 2 && si->scfsi[ch] && result == 0) + result = MAD_ERROR_BADSCFSI; + + channel->region0_count = 7; + channel->region1_count = 36; + + if (mad_bit_read(ptr, 1)) + channel->flags |= mixed_block_flag; + else if (channel->block_type == 2) + channel->region0_count = 8; + + for (i = 0; i < 2; ++i) + channel->table_select[i] = mad_bit_read(ptr, 5); + +# if defined(DEBUG) + channel->table_select[2] = 4; /* not used */ +# endif + + for (i = 0; i < 3; ++i) + channel->subblock_gain[i] = mad_bit_read(ptr, 3); + } + else { + channel->block_type = 0; + + for (i = 0; i < 3; ++i) + channel->table_select[i] = mad_bit_read(ptr, 5); + + channel->region0_count = mad_bit_read(ptr, 4); + channel->region1_count = mad_bit_read(ptr, 3); + } + + /* [preflag,] scalefac_scale, count1table_select */ + channel->flags |= mad_bit_read(ptr, lsf ? 2 : 3); + } + } + + return result; +} + +/* + * NAME: III_scalefactors_lsf() + * DESCRIPTION: decode channel scalefactors for LSF from a bitstream + */ +static +unsigned int III_scalefactors_lsf(struct mad_bitptr *ptr, + struct channel *channel, + struct channel *gr1ch, int mode_extension) +{ + struct mad_bitptr start; + unsigned int scalefac_compress, index, slen[4], part, n, i; + unsigned char const *nsfb; + + start = *ptr; + + scalefac_compress = channel->scalefac_compress; + index = (channel->block_type == 2) ? + ((channel->flags & mixed_block_flag) ? 2 : 1) : 0; + + if (!((mode_extension & 0x1) && gr1ch)) { + if (scalefac_compress < 400) { + slen[0] = (scalefac_compress >> 4) / 5; + slen[1] = (scalefac_compress >> 4) % 5; + slen[2] = (scalefac_compress % 16) >> 2; + slen[3] = scalefac_compress % 4; + + nsfb = nsfb_table[0][index]; + } + else if (scalefac_compress < 500) { + scalefac_compress -= 400; + + slen[0] = (scalefac_compress >> 2) / 5; + slen[1] = (scalefac_compress >> 2) % 5; + slen[2] = scalefac_compress % 4; + slen[3] = 0; + + nsfb = nsfb_table[1][index]; + } + else { + scalefac_compress -= 500; + + slen[0] = scalefac_compress / 3; + slen[1] = scalefac_compress % 3; + slen[2] = 0; + slen[3] = 0; + + channel->flags |= preflag; + + nsfb = nsfb_table[2][index]; + } + + n = 0; + for (part = 0; part < 4; ++part) { + for (i = 0; i < nsfb[part]; ++i) + channel->scalefac[n++] = mad_bit_read(ptr, slen[part]); + } + + while (n < 39) + channel->scalefac[n++] = 0; + } + else { /* (mode_extension & 0x1) && gr1ch (i.e. ch == 1) */ + scalefac_compress >>= 1; + + if (scalefac_compress < 180) { + slen[0] = scalefac_compress / 36; + slen[1] = (scalefac_compress % 36) / 6; + slen[2] = (scalefac_compress % 36) % 6; + slen[3] = 0; + + nsfb = nsfb_table[3][index]; + } + else if (scalefac_compress < 244) { + scalefac_compress -= 180; + + slen[0] = (scalefac_compress % 64) >> 4; + slen[1] = (scalefac_compress % 16) >> 2; + slen[2] = scalefac_compress % 4; + slen[3] = 0; + + nsfb = nsfb_table[4][index]; + } + else { + scalefac_compress -= 244; + + slen[0] = scalefac_compress / 3; + slen[1] = scalefac_compress % 3; + slen[2] = 0; + slen[3] = 0; + + nsfb = nsfb_table[5][index]; + } + + n = 0; + for (part = 0; part < 4; ++part) { + unsigned int max, is_pos; + + max = (1 << slen[part]) - 1; + + for (i = 0; i < nsfb[part]; ++i) { + is_pos = mad_bit_read(ptr, slen[part]); + + channel->scalefac[n] = is_pos; + gr1ch->scalefac[n++] = (is_pos == max); + } + } + + while (n < 39) { + channel->scalefac[n] = 0; + gr1ch->scalefac[n++] = 0; /* apparently not illegal */ + } + } + + return mad_bit_length(&start, ptr); +} + +/* + * NAME: III_scalefactors() + * DESCRIPTION: decode channel scalefactors of one granule from a bitstream + */ +static +unsigned int III_scalefactors(struct mad_bitptr *ptr, struct channel *channel, + struct channel const *gr0ch, unsigned int scfsi) +{ + struct mad_bitptr start; + unsigned int slen1, slen2, sfbi; + + start = *ptr; + + slen1 = sflen_table[channel->scalefac_compress].slen1; + slen2 = sflen_table[channel->scalefac_compress].slen2; + + if (channel->block_type == 2) { + unsigned int nsfb; + + sfbi = 0; + + nsfb = (channel->flags & mixed_block_flag) ? 8 + 3 * 3 : 6 * 3; + while (nsfb--) + channel->scalefac[sfbi++] = mad_bit_read(ptr, slen1); + + nsfb = 6 * 3; + while (nsfb--) + channel->scalefac[sfbi++] = mad_bit_read(ptr, slen2); + + nsfb = 1 * 3; + while (nsfb--) + channel->scalefac[sfbi++] = 0; + } + else { /* channel->block_type != 2 */ + if (scfsi & 0x8) { + for (sfbi = 0; sfbi < 6; ++sfbi) + channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; + } + else { + for (sfbi = 0; sfbi < 6; ++sfbi) + channel->scalefac[sfbi] = mad_bit_read(ptr, slen1); + } + + if (scfsi & 0x4) { + for (sfbi = 6; sfbi < 11; ++sfbi) + channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; + } + else { + for (sfbi = 6; sfbi < 11; ++sfbi) + channel->scalefac[sfbi] = mad_bit_read(ptr, slen1); + } + + if (scfsi & 0x2) { + for (sfbi = 11; sfbi < 16; ++sfbi) + channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; + } + else { + for (sfbi = 11; sfbi < 16; ++sfbi) + channel->scalefac[sfbi] = mad_bit_read(ptr, slen2); + } + + if (scfsi & 0x1) { + for (sfbi = 16; sfbi < 21; ++sfbi) + channel->scalefac[sfbi] = gr0ch->scalefac[sfbi]; + } + else { + for (sfbi = 16; sfbi < 21; ++sfbi) + channel->scalefac[sfbi] = mad_bit_read(ptr, slen2); + } + + channel->scalefac[21] = 0; + } + + return mad_bit_length(&start, ptr); +} + +/* + * NAME: III_exponents() + * DESCRIPTION: calculate scalefactor exponents + */ +static +void III_exponents(struct channel const *channel, + unsigned char const *sfbwidth, signed int exponents[39]) +{ + signed int gain; + unsigned int scalefac_multiplier, sfbi; + + gain = (signed int) channel->global_gain - 210; + scalefac_multiplier = (channel->flags & scalefac_scale) ? 2 : 1; + + if (channel->block_type == 2) { + unsigned int l; + signed int gain0, gain1, gain2; + + sfbi = l = 0; + + if (channel->flags & mixed_block_flag) { + unsigned int premask; + + premask = (channel->flags & preflag) ? ~0 : 0; + + /* long block subbands 0-1 */ + + while (l < 36) { + exponents[sfbi] = gain - + (signed int) ((channel->scalefac[sfbi] + (pretab[sfbi] & premask)) << + scalefac_multiplier); + + l += sfbwidth[sfbi++]; + } + } + + /* this is probably wrong for 8000 Hz short/mixed blocks */ + + gain0 = gain - 8 * (signed int) channel->subblock_gain[0]; + gain1 = gain - 8 * (signed int) channel->subblock_gain[1]; + gain2 = gain - 8 * (signed int) channel->subblock_gain[2]; + + while (l < 576) { + exponents[sfbi + 0] = gain0 - + (signed int) (channel->scalefac[sfbi + 0] << scalefac_multiplier); + exponents[sfbi + 1] = gain1 - + (signed int) (channel->scalefac[sfbi + 1] << scalefac_multiplier); + exponents[sfbi + 2] = gain2 - + (signed int) (channel->scalefac[sfbi + 2] << scalefac_multiplier); + + l += 3 * sfbwidth[sfbi]; + sfbi += 3; + } + } + else { /* channel->block_type != 2 */ + if (channel->flags & preflag) { + for (sfbi = 0; sfbi < 22; ++sfbi) { + exponents[sfbi] = gain - + (signed int) ((channel->scalefac[sfbi] + pretab[sfbi]) << + scalefac_multiplier); + } + } + else { + for (sfbi = 0; sfbi < 22; ++sfbi) { + exponents[sfbi] = gain - + (signed int) (channel->scalefac[sfbi] << scalefac_multiplier); + } + } + } +} + +/* + * NAME: III_requantize() + * DESCRIPTION: requantize one (positive) value + */ +static +mad_fixed_t III_requantize(unsigned int value, signed int exp) +{ + mad_fixed_t requantized; + signed int frac; + struct fixedfloat const *power; + + /* + * long blocks: + * xr[i] = sign(is[i]) * abs(is[i])^(4/3) * + * 2^((1/4) * (global_gain - 210)) * + * 2^-(scalefac_multiplier * + * (scalefac_l[sfb] + preflag * pretab[sfb])) + * + * short blocks: + * xr[i] = sign(is[i]) * abs(is[i])^(4/3) * + * 2^((1/4) * (global_gain - 210 - 8 * subblock_gain[w])) * + * 2^-(scalefac_multiplier * scalefac_s[sfb][w]) + * + * where: + * scalefac_multiplier = (scalefac_scale + 1) / 2 + */ + + frac = exp % 4; + exp /= 4; + + /* MM: recalculation for short table */ + if (value < (1 << RQ_START_BITS)) + power = &rq_table[value]; + else { + int bits = 0, tmp = value; + while (tmp != 0) { + tmp <<= 1; + bits++; + } + bits -= RQ_START_BITS; + value &= ~((1 << bits) - 1); + power = &rq_table[value]; + } + + requantized = power->mantissa; + exp += power->exponent; + + if (exp < 0) { + if (-exp >= sizeof(mad_fixed_t) * CHAR_BIT) { + /* underflow */ + requantized = 0; + } + else + requantized >>= -exp; + } + else { + if (exp >= 5) { + /* overflow */ +# if defined(DEBUG) + fprintf(stderr, "requantize overflow (%f * 2^%d)\n", + mad_f_todouble(requantized), exp); +# endif + requantized = MAD_F_MAX; + } + else + requantized <<= exp; + } + + return frac ? mad_f_mul(requantized, root_table[3 + frac]) : requantized; +} + +/* we must take care that sz >= bits and sz < sizeof(long) lest bits == 0 */ +# define MASK(cache, sz, bits) \ + (((cache) >> ((sz) - (bits))) & ((1 << (bits)) - 1)) +# define MASK1BIT(cache, sz) \ + ((cache) & (1 << ((sz) - 1))) + +/* + * NAME: III_huffdecode() + * DESCRIPTION: decode Huffman code words of one channel of one granule + */ +static +enum mad_error III_huffdecode(struct mad_bitptr *ptr, mad_fixed_t xr[576], + struct channel *channel, + unsigned char const *sfbwidth, + unsigned int part2_length) +{ + signed int exponents[39], exp; + signed int const *expptr; + struct mad_bitptr peek; + signed int bits_left, cachesz; + register mad_fixed_t *xrptr; + mad_fixed_t const *sfbound; + register unsigned long bitcache; + + bits_left = (signed) channel->part2_3_length - (signed) part2_length; + if (bits_left < 0) + return MAD_ERROR_BADPART3LEN; + + III_exponents(channel, sfbwidth, exponents); + + peek = *ptr; + mad_bit_skip(ptr, bits_left); + + /* align bit reads to byte boundaries */ + cachesz = mad_bit_bitsleft(&peek); + cachesz += ((32 - 1 - 24) + (24 - cachesz)) & ~7; + + bitcache = mad_bit_read(&peek, cachesz); + bits_left -= cachesz; + + xrptr = &xr[0]; + + /* big_values */ + { + unsigned int region, rcount; + struct hufftable const *entry; + union huffpair const *table; + unsigned int linbits, startbits, big_values, reqhits; + mad_fixed_t reqcache[16]; + + sfbound = xrptr + *sfbwidth++; + rcount = channel->region0_count + 1; + + entry = &mad_huff_pair_table[channel->table_select[region = 0]]; + table = entry->table; + linbits = entry->linbits; + startbits = entry->startbits; + + if (table == 0) + return MAD_ERROR_BADHUFFTABLE; + + expptr = &exponents[0]; + exp = *expptr++; + reqhits = 0; + + big_values = channel->big_values; + + while (big_values-- && cachesz + bits_left > 0) { + union huffpair const *pair; + unsigned int clumpsz, value; + register mad_fixed_t requantized; + + if (xrptr == sfbound) { + sfbound += *sfbwidth++; + + /* change table if region boundary */ + + if (--rcount == 0) { + if (region == 0) + rcount = channel->region1_count + 1; + else + rcount = 0; /* all remaining */ + + entry = &mad_huff_pair_table[channel->table_select[++region]]; + table = entry->table; + linbits = entry->linbits; + startbits = entry->startbits; + + if (table == 0) + return MAD_ERROR_BADHUFFTABLE; + } + + if (exp != *expptr) { + exp = *expptr; + reqhits = 0; + } + + ++expptr; + } + + if (cachesz < 21) { + unsigned int bits; + + bits = ((32 - 1 - 21) + (21 - cachesz)) & ~7; + bitcache = (bitcache << bits) | mad_bit_read(&peek, bits); + cachesz += bits; + bits_left -= bits; + } + + /* hcod (0..19) */ + + clumpsz = startbits; + pair = &table[MASK(bitcache, cachesz, clumpsz)]; + + while (!pair->final) { + cachesz -= clumpsz; + + clumpsz = pair->ptr.bits; + pair = &table[pair->ptr.offset + MASK(bitcache, cachesz, clumpsz)]; + } + + cachesz -= pair->value.hlen; + + { + int xy_sel; + + /* MM: joint x and y */ + value = pair->value.x; + + /* x (0..14) and y (0..14) and x (0..1) and y (0..1) */ + for (xy_sel = 0; xy_sel < 2; xy_sel++) { + if (value == 0) + xrptr[xy_sel] = 0; + else { + if (value == 15 && linbits) { + if (cachesz < linbits + 2 - xy_sel) { + bitcache = (bitcache << 16) | mad_bit_read(&peek, 16); + cachesz += 16; + bits_left -= 16; + } + + value += MASK(bitcache, cachesz, linbits); + cachesz -= linbits; + + requantized = III_requantize(value, exp); + } + else { + if (reqhits & (1 << value)) + requantized = reqcache[value]; + else { + reqhits |= (1 << value); + requantized = reqcache[value] = III_requantize(value, exp); + } + } + xrptr[xy_sel] = MASK1BIT(bitcache, cachesz--) ? + -requantized : requantized; + } + value = pair->value.y; + } + } + + xrptr += 2; + } + } + + if (cachesz + bits_left < 0) + return MAD_ERROR_BADHUFFDATA; /* big_values overrun */ + + /* count1 */ + { + union huffquad const *table; + register mad_fixed_t requantized; + + table = mad_huff_quad_table[channel->flags & count1table_select]; + + requantized = III_requantize(1, exp); + + while (cachesz + bits_left > 0 && xrptr <= &xr[572]) { + union huffquad const *quad; + + /* hcod (1..6) */ + + if (cachesz < 10) { + bitcache = (bitcache << 16) | mad_bit_read(&peek, 16); + cachesz += 16; + bits_left -= 16; + } + + quad = &table[MASK(bitcache, cachesz, 4)]; + + /* quad tables guaranteed to have at most one extra lookup */ + if (!quad->final) { + cachesz -= 4; + + quad = &table[quad->ptr.offset + + MASK(bitcache, cachesz, quad->ptr.bits)]; + } + + cachesz -= quad->value.hlen; + + /* MM: code joined */ + { + int sel_12; + int vw_xy_sel = *((int *) &quad->value); + for (sel_12 = 0; sel_12 < 2; sel_12++) { + if (xrptr == sfbound) { + sfbound += *sfbwidth++; + + if (exp != *expptr) { + exp = *expptr; + requantized = III_requantize(1, exp); + } + + ++expptr; + } + { + int tmp = MASK1BIT(bitcache, cachesz--) ? -requantized : requantized; + + /* v (0..1) or x (0..1) */ + xrptr[0] = vw_xy_sel&4 ? tmp : 0; + + /* w (0..1) or y (0..1) */ + xrptr[1] = vw_xy_sel&8 ? tmp : 0; + } + xrptr += 2; + vw_xy_sel >>= 2; + } + } + } + + if (cachesz + bits_left < 0) { +# if 0 && defined(DEBUG) + fprintf(stderr, "huffman count1 overrun (%d bits)\n", + -(cachesz + bits_left)); +# endif + + /* technically the bitstream is misformatted, but apparently + some encoders are just a bit sloppy with stuffing bits */ + + xrptr -= 4; + } + } + + assert(-bits_left <= MAD_BUFFER_GUARD * CHAR_BIT); + +# if 0 && defined(DEBUG) + if (bits_left < 0) + fprintf(stderr, "read %d bits too many\n", -bits_left); + else if (cachesz + bits_left > 0) + fprintf(stderr, "%d stuffing bits\n", cachesz + bits_left); +# endif + + /* rzero */ + while (xrptr < &xr[576]) { + xrptr[0] = 0; + xrptr[1] = 0; + + xrptr += 2; + } + + return 0; +} + +# undef MASK +# undef MASK1BIT + +/* + * NAME: III_reorder() + * DESCRIPTION: reorder frequency lines of a short block into subband order + */ +static +void III_reorder(mad_fixed_t xr[576], struct channel const *channel, + unsigned char const sfbwidth[39]) +{ + mad_fixed_t tmp[32][3][6]; + unsigned int sb, l, sfbi, f, w, sbw[3], sw[3]; + + /* this is probably wrong for 8000 Hz mixed blocks */ + + if (channel->flags & mixed_block_flag) + sb = 2, sfbi = 3 * 3; + else + sb = 0, sfbi = 0; + + for (w = 0; w < 3; ++w) { + sbw[w] = sb; + sw[w] = 0; + } + + f = sfbwidth[sfbi]; + w = 0; + + for (l = 18 * sb; l < 576; ++l) { + tmp[sbw[w]][w][sw[w]++] = xr[l]; + + if (sw[w] == 6) { + sw[w] = 0; + ++sbw[w]; + } + + if (--f == 0) { + if (++w == 3) + w = 0; + + f = sfbwidth[++sfbi]; + } + } + + memcpy(&xr[18 * sb], &tmp[sb], (576 - 18 * sb) * sizeof(mad_fixed_t)); +} + +/* + * NAME: III_stereo() + * DESCRIPTION: perform joint stereo processing on a granule + */ +static +enum mad_error III_stereo(mad_fixed_t xr[2][576], + struct granule const *granule, + struct mad_header *header, + unsigned char const *sfbwidth) +{ + short modes[39]; + unsigned int sfbi, l, n, i; + + enum { + i_stereo = 0x1, + ms_stereo = 0x2 + }; + + if (granule->ch[0].block_type != + granule->ch[1].block_type || + (granule->ch[0].flags & mixed_block_flag) != + (granule->ch[1].flags & mixed_block_flag)) + return MAD_ERROR_BADSTEREO; + + for (i = 0; i < 39; ++i) + modes[i] = header->mode_extension; + + /* intensity stereo */ + + if (header->mode_extension & i_stereo) { + struct channel const *right_ch = &granule->ch[1]; + mad_fixed_t const *right_xr = xr[1]; + unsigned int is_pos; + + header->flags |= MAD_FLAG_I_STEREO; + + /* first determine which scalefactor bands are to be processed */ + + if (right_ch->block_type == 2) { + unsigned int lower, start, max, bound[3], w; + + lower = start = max = bound[0] = bound[1] = bound[2] = 0; + + sfbi = l = 0; + + if (right_ch->flags & mixed_block_flag) { + while (l < 36) { + n = sfbwidth[sfbi++]; + + for (i = 0; i < n; ++i) { + if (right_xr[i]) { + lower = sfbi; + break; + } + } + + right_xr += n; + l += n; + } + + start = sfbi; + } + + w = 0; + while (l < 576) { + n = sfbwidth[sfbi++]; + + for (i = 0; i < n; ++i) { + if (right_xr[i]) { + max = bound[w] = sfbi; + break; + } + } + + right_xr += n; + l += n; + w = (w + 1) % 3; + } + + if (max) + lower = start; + + /* long blocks */ + + for (i = 0; i < lower; ++i) + modes[i] = header->mode_extension & ~i_stereo; + + /* short blocks */ + + w = 0; + for (i = start; i < max; ++i) { + if (i < bound[w]) + modes[i] = header->mode_extension & ~i_stereo; + + w = (w + 1) % 3; + } + } + else { /* right_ch->block_type != 2 */ + unsigned int bound; + + bound = 0; + for (sfbi = l = 0; l < 576; l += n) { + n = sfbwidth[sfbi++]; + + for (i = 0; i < n; ++i) { + if (right_xr[i]) { + bound = sfbi; + break; + } + } + + right_xr += n; + } + + for (i = 0; i < bound; ++i) + modes[i] = header->mode_extension & ~i_stereo; + } + + /* now do the actual processing */ + + if (header->flags & MAD_FLAG_LSF_EXT) { + unsigned char const *illegal_pos = granule[1].ch[1].scalefac; + mad_fixed_t const *lsf_scale; + + /* intensity_scale */ + lsf_scale = is_lsf_table[right_ch->scalefac_compress & 0x1]; + + for (sfbi = l = 0; l < 576; ++sfbi, l += n) { + n = sfbwidth[sfbi]; + + if (!(modes[sfbi] & i_stereo)) + continue; + + if (illegal_pos[sfbi]) { + modes[sfbi] &= ~i_stereo; + continue; + } + + is_pos = right_ch->scalefac[sfbi]; + + for (i = 0; i < n; ++i) { + register mad_fixed_t left; + + left = xr[0][l + i]; + + if (is_pos == 0) + xr[1][l + i] = left; + else { + register mad_fixed_t opposite; + + opposite = mad_f_mul(left, lsf_scale[(is_pos - 1) / 2]); + + if (is_pos & 1) { + xr[0][l + i] = opposite; + xr[1][l + i] = left; + } + else + xr[1][l + i] = opposite; + } + } + } + } + else { /* !(header->flags & MAD_FLAG_LSF_EXT) */ + for (sfbi = l = 0; l < 576; ++sfbi, l += n) { + n = sfbwidth[sfbi]; + + if (!(modes[sfbi] & i_stereo)) + continue; + + is_pos = right_ch->scalefac[sfbi]; + + if (is_pos >= 7) { /* illegal intensity position */ + modes[sfbi] &= ~i_stereo; + continue; + } + + for (i = 0; i < n; ++i) { + register mad_fixed_t left; + + left = xr[0][l + i]; + + xr[0][l + i] = mad_f_mul(left, is_table[ is_pos]); + xr[1][l + i] = mad_f_mul(left, is_table[6 - is_pos]); + } + } + } + } + + /* middle/side stereo */ + + if (header->mode_extension & ms_stereo) { + register mad_fixed_t invsqrt2; + + header->flags |= MAD_FLAG_MS_STEREO; + + invsqrt2 = root_table[3 + -2]; + + for (sfbi = l = 0; l < 576; ++sfbi, l += n) { + n = sfbwidth[sfbi]; + + if (modes[sfbi] != ms_stereo) + continue; + + for (i = 0; i < n; ++i) { + register mad_fixed_t m, s; + + m = xr[0][l + i]; + s = xr[1][l + i]; + + xr[0][l + i] = mad_f_mul(m + s, invsqrt2); /* l = (m + s) / sqrt(2) */ + xr[1][l + i] = mad_f_mul(m - s, invsqrt2); /* r = (m - s) / sqrt(2) */ + } + } + } + + return 0; +} + +/* + * NAME: III_aliasreduce() + * DESCRIPTION: perform frequency line alias reduction + */ +static +void III_aliasreduce(mad_fixed_t xr[576], int lines) +{ + mad_fixed_t const *bound; + int i; + + bound = &xr[lines]; + for (xr += 18; xr < bound; xr += 18) { + for (i = 0; i < 8; ++i) { + register mad_fixed_t *aptr, *bptr, a, b; + register mad_fixed64hi_t hi; + register mad_fixed64lo_t lo; + + aptr = &xr[-1 - i]; + bptr = &xr[ i]; + + a = *aptr; + b = *bptr; + +# if defined(ASO_ZEROCHECK) + if (a | b) { +# endif + MAD_F_ML0(hi, lo, a, cs[i]); + MAD_F_MLA(hi, lo, -b, ca[i]); + + *aptr = MAD_F_MLZ(hi, lo); + + MAD_F_ML0(hi, lo, b, cs[i]); + MAD_F_MLA(hi, lo, a, ca[i]); + + *bptr = MAD_F_MLZ(hi, lo); +# if defined(ASO_ZEROCHECK) + } +# endif + } + } +} + +# if defined(ASO_IMDCT) +void III_imdct_l(mad_fixed_t const [18], mad_fixed_t [36], unsigned int); +# else +/* + * NAME: imdct36 + * DESCRIPTION: perform X[18]->x[36] IMDCT + */ +static inline +void imdct36(mad_fixed_t const X[18], mad_fixed_t x[36]) +{ + mad_fixed_t t0, t1, t2, t3, t4, t5, t6, t7; + mad_fixed_t t8, t9, t10, t11, t12, t13, t14, t15; + register mad_fixed64hi_t hi; + register mad_fixed64lo_t lo; + + MAD_F_ML0(hi, lo, X[4], MAD_F(0x0ec835e8)); + MAD_F_MLA(hi, lo, X[13], MAD_F(0x061f78aa)); + + t6 = MAD_F_MLZ(hi, lo); + + MAD_F_MLA(hi, lo, (t14 = X[1] - X[10]), -MAD_F(0x061f78aa)); + MAD_F_MLA(hi, lo, (t15 = X[7] + X[16]), -MAD_F(0x0ec835e8)); + + t0 = MAD_F_MLZ(hi, lo); + + MAD_F_MLA(hi, lo, (t8 = X[0] - X[11] - X[12]), MAD_F(0x0216a2a2)); + MAD_F_MLA(hi, lo, (t9 = X[2] - X[9] - X[14]), MAD_F(0x09bd7ca0)); + MAD_F_MLA(hi, lo, (t10 = X[3] - X[8] - X[15]), -MAD_F(0x0cb19346)); + MAD_F_MLA(hi, lo, (t11 = X[5] - X[6] - X[17]), -MAD_F(0x0fdcf549)); + + x[7] = MAD_F_MLZ(hi, lo); + x[10] = -x[7]; + + MAD_F_ML0(hi, lo, t8, -MAD_F(0x0cb19346)); + MAD_F_MLA(hi, lo, t9, MAD_F(0x0fdcf549)); + MAD_F_MLA(hi, lo, t10, MAD_F(0x0216a2a2)); + MAD_F_MLA(hi, lo, t11, -MAD_F(0x09bd7ca0)); + + x[19] = x[34] = MAD_F_MLZ(hi, lo) - t0; + + t12 = X[0] - X[3] + X[8] - X[11] - X[12] + X[15]; + t13 = X[2] + X[5] - X[6] - X[9] - X[14] - X[17]; + + MAD_F_ML0(hi, lo, t12, -MAD_F(0x0ec835e8)); + MAD_F_MLA(hi, lo, t13, MAD_F(0x061f78aa)); + + x[22] = x[31] = MAD_F_MLZ(hi, lo) + t0; + + MAD_F_ML0(hi, lo, X[1], -MAD_F(0x09bd7ca0)); + MAD_F_MLA(hi, lo, X[7], MAD_F(0x0216a2a2)); + MAD_F_MLA(hi, lo, X[10], -MAD_F(0x0fdcf549)); + MAD_F_MLA(hi, lo, X[16], MAD_F(0x0cb19346)); + + t1 = MAD_F_MLZ(hi, lo) + t6; + + MAD_F_ML0(hi, lo, X[0], MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[3], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[5], -MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[6], MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[8], -MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[9], MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[11], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[15], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x0f9ee890)); + + x[6] = MAD_F_MLZ(hi, lo) + t1; + x[11] = -x[6]; + + MAD_F_ML0(hi, lo, X[0], -MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[2], -MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[3], MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[5], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[6], MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[8], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[9], -MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[15], MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[17], MAD_F(0x04cfb0e2)); + + x[23] = x[30] = MAD_F_MLZ(hi, lo) + t1; + + MAD_F_ML0(hi, lo, X[0], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[3], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[5], MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[6], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[8], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[9], -MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[11], MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[15], MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x0acf37ad)); + + x[18] = x[35] = MAD_F_MLZ(hi, lo) - t1; + + MAD_F_ML0(hi, lo, X[4], MAD_F(0x061f78aa)); + MAD_F_MLA(hi, lo, X[13], -MAD_F(0x0ec835e8)); + + t7 = MAD_F_MLZ(hi, lo); + + MAD_F_MLA(hi, lo, X[1], -MAD_F(0x0cb19346)); + MAD_F_MLA(hi, lo, X[7], MAD_F(0x0fdcf549)); + MAD_F_MLA(hi, lo, X[10], MAD_F(0x0216a2a2)); + MAD_F_MLA(hi, lo, X[16], -MAD_F(0x09bd7ca0)); + + t2 = MAD_F_MLZ(hi, lo); + + MAD_F_MLA(hi, lo, X[0], MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[3], -MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[5], MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[6], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[8], -MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[9], MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[12], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[15], MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[17], MAD_F(0x0f426cb5)); + + x[5] = MAD_F_MLZ(hi, lo); + x[12] = -x[5]; + + MAD_F_ML0(hi, lo, X[0], MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[2], -MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[3], MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[5], -MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[6], -MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[8], MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[9], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[11], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[15], MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x0bcbe352)); + + x[0] = MAD_F_MLZ(hi, lo) + t2; + x[17] = -x[0]; + + MAD_F_ML0(hi, lo, X[0], -MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[2], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[3], -MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[5], MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[6], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[8], MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[9], MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[14], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[15], -MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x03768962)); + + x[24] = x[29] = MAD_F_MLZ(hi, lo) + t2; + + MAD_F_ML0(hi, lo, X[1], -MAD_F(0x0216a2a2)); + MAD_F_MLA(hi, lo, X[7], -MAD_F(0x09bd7ca0)); + MAD_F_MLA(hi, lo, X[10], MAD_F(0x0cb19346)); + MAD_F_MLA(hi, lo, X[16], MAD_F(0x0fdcf549)); + + t3 = MAD_F_MLZ(hi, lo) + t7; + + MAD_F_ML0(hi, lo, X[0], MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[3], -MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[5], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[6], MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[8], MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[9], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[12], MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[15], -MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x0ffc19fd)); + + x[8] = MAD_F_MLZ(hi, lo) + t3; + x[9] = -x[8]; + + MAD_F_ML0(hi, lo, X[0], -MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[3], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[5], -MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[6], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[8], MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[9], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[14], -MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[15], MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[17], MAD_F(0x07635284)); + + x[21] = x[32] = MAD_F_MLZ(hi, lo) + t3; + + MAD_F_ML0(hi, lo, X[0], -MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[3], MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[5], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[6], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[8], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[9], MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[12], MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[15], -MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x0898c779)); + + x[20] = x[33] = MAD_F_MLZ(hi, lo) - t3; + + MAD_F_ML0(hi, lo, t14, -MAD_F(0x0ec835e8)); + MAD_F_MLA(hi, lo, t15, MAD_F(0x061f78aa)); + + t4 = MAD_F_MLZ(hi, lo) - t7; + + MAD_F_ML0(hi, lo, t12, MAD_F(0x061f78aa)); + MAD_F_MLA(hi, lo, t13, MAD_F(0x0ec835e8)); + + x[4] = MAD_F_MLZ(hi, lo) + t4; + x[13] = -x[4]; + + MAD_F_ML0(hi, lo, t8, MAD_F(0x09bd7ca0)); + MAD_F_MLA(hi, lo, t9, -MAD_F(0x0216a2a2)); + MAD_F_MLA(hi, lo, t10, MAD_F(0x0fdcf549)); + MAD_F_MLA(hi, lo, t11, -MAD_F(0x0cb19346)); + + x[1] = MAD_F_MLZ(hi, lo) + t4; + x[16] = -x[1]; + + MAD_F_ML0(hi, lo, t8, -MAD_F(0x0fdcf549)); + MAD_F_MLA(hi, lo, t9, -MAD_F(0x0cb19346)); + MAD_F_MLA(hi, lo, t10, -MAD_F(0x09bd7ca0)); + MAD_F_MLA(hi, lo, t11, -MAD_F(0x0216a2a2)); + + x[25] = x[28] = MAD_F_MLZ(hi, lo) + t4; + + MAD_F_ML0(hi, lo, X[1], -MAD_F(0x0fdcf549)); + MAD_F_MLA(hi, lo, X[7], -MAD_F(0x0cb19346)); + MAD_F_MLA(hi, lo, X[10], -MAD_F(0x09bd7ca0)); + MAD_F_MLA(hi, lo, X[16], -MAD_F(0x0216a2a2)); + + t5 = MAD_F_MLZ(hi, lo) - t6; + + MAD_F_ML0(hi, lo, X[0], MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[3], MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[5], MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[6], MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[8], -MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[9], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[12], MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[14], -MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[15], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x0d7e8807)); + + x[2] = MAD_F_MLZ(hi, lo) + t5; + x[15] = -x[2]; + + MAD_F_ML0(hi, lo, X[0], MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[2], MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[3], MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[5], MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[6], -MAD_F(0x00b2aa3e)); + MAD_F_MLA(hi, lo, X[8], MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[9], -MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[11], MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[14], MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[15], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[17], MAD_F(0x0e313245)); + + x[3] = MAD_F_MLZ(hi, lo) + t5; + x[14] = -x[3]; + + MAD_F_ML0(hi, lo, X[0], -MAD_F(0x0ffc19fd)); + MAD_F_MLA(hi, lo, X[2], -MAD_F(0x0f9ee890)); + MAD_F_MLA(hi, lo, X[3], -MAD_F(0x0f426cb5)); + MAD_F_MLA(hi, lo, X[5], -MAD_F(0x0e313245)); + MAD_F_MLA(hi, lo, X[6], -MAD_F(0x0d7e8807)); + MAD_F_MLA(hi, lo, X[8], -MAD_F(0x0bcbe352)); + MAD_F_MLA(hi, lo, X[9], -MAD_F(0x0acf37ad)); + MAD_F_MLA(hi, lo, X[11], -MAD_F(0x0898c779)); + MAD_F_MLA(hi, lo, X[12], -MAD_F(0x07635284)); + MAD_F_MLA(hi, lo, X[14], -MAD_F(0x04cfb0e2)); + MAD_F_MLA(hi, lo, X[15], -MAD_F(0x03768962)); + MAD_F_MLA(hi, lo, X[17], -MAD_F(0x00b2aa3e)); + + x[26] = x[27] = MAD_F_MLZ(hi, lo) + t5; +} + +/* + * NAME: III_imdct_l() + * DESCRIPTION: perform IMDCT and windowing for long blocks + */ +static +void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36], + unsigned int block_type) +{ + unsigned int i; + + /* IMDCT */ + + imdct36(X, z); + + /* windowing */ + + switch (block_type) { + case 0: /* normal window */ +# if defined(ASO_INTERLEAVE1) + { + register mad_fixed_t tmp1, tmp2; + + tmp1 = window_l[0]; + tmp2 = window_l[1]; + + for (i = 0; i < 34; i += 2) { + z[i + 0] = mad_f_mul(z[i + 0], tmp1); + tmp1 = window_l[i + 2]; + z[i + 1] = mad_f_mul(z[i + 1], tmp2); + tmp2 = window_l[i + 3]; + } + + z[34] = mad_f_mul(z[34], tmp1); + z[35] = mad_f_mul(z[35], tmp2); + } +# elif defined(ASO_INTERLEAVE2) + { + register mad_fixed_t tmp1, tmp2; + + tmp1 = z[0]; + tmp2 = window_l[0]; + + for (i = 0; i < 35; ++i) { + z[i] = mad_f_mul(tmp1, tmp2); + tmp1 = z[i + 1]; + tmp2 = window_l[i + 1]; + } + + z[35] = mad_f_mul(tmp1, tmp2); + } +# elif 1 + for (i = 0; i < 36; i += 4) { + z[i + 0] = mad_f_mul(z[i + 0], window_l[i + 0]); + z[i + 1] = mad_f_mul(z[i + 1], window_l[i + 1]); + z[i + 2] = mad_f_mul(z[i + 2], window_l[i + 2]); + z[i + 3] = mad_f_mul(z[i + 3], window_l[i + 3]); + } +# else + for (i = 0; i < 36; ++i) z[i] = mad_f_mul(z[i], window_l[i]); +# endif + break; + + case 1: /* start block */ + for (i = 0; i < 18; ++i) z[i] = mad_f_mul(z[i], window_l[i]); + /* (i = 18; i < 24; ++i) z[i] unchanged */ + for (i = 24; i < 30; ++i) z[i] = mad_f_mul(z[i], window_s[i - 18]); + for (i = 30; i < 36; ++i) z[i] = 0; + break; + + case 3: /* stop block */ + for (i = 0; i < 6; ++i) z[i] = 0; + for (i = 6; i < 12; ++i) z[i] = mad_f_mul(z[i], window_s[i - 6]); + /* (i = 12; i < 18; ++i) z[i] unchanged */ + for (i = 18; i < 36; ++i) z[i] = mad_f_mul(z[i], window_l[i]); + break; + } +} +# endif /* ASO_IMDCT */ + +/* + * NAME: III_imdct_s() + * DESCRIPTION: perform IMDCT and windowing for short blocks + */ +static +void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36]) +{ + mad_fixed_t y[36], *yptr; + mad_fixed_t const *wptr; + int w, i; + register mad_fixed64hi_t hi; + register mad_fixed64lo_t lo; + + /* IMDCT */ + + yptr = &y[0]; + + for (w = 0; w < 3; ++w) { + register mad_fixed_t const (*s)[6]; + + s = imdct_s; + + for (i = 0; i < 3; ++i) { + MAD_F_ML0(hi, lo, X[0], (*s)[0]); + MAD_F_MLA(hi, lo, X[1], (*s)[1]); + MAD_F_MLA(hi, lo, X[2], (*s)[2]); + MAD_F_MLA(hi, lo, X[3], (*s)[3]); + MAD_F_MLA(hi, lo, X[4], (*s)[4]); + MAD_F_MLA(hi, lo, X[5], (*s)[5]); + + yptr[i + 0] = MAD_F_MLZ(hi, lo); + yptr[5 - i] = -yptr[i + 0]; + + ++s; + + MAD_F_ML0(hi, lo, X[0], (*s)[0]); + MAD_F_MLA(hi, lo, X[1], (*s)[1]); + MAD_F_MLA(hi, lo, X[2], (*s)[2]); + MAD_F_MLA(hi, lo, X[3], (*s)[3]); + MAD_F_MLA(hi, lo, X[4], (*s)[4]); + MAD_F_MLA(hi, lo, X[5], (*s)[5]); + + yptr[ i + 6] = MAD_F_MLZ(hi, lo); + yptr[11 - i] = yptr[i + 6]; + + ++s; + } + + yptr += 12; + X += 6; + } + + /* windowing, overlapping and concatenation */ + + yptr = &y[0]; + wptr = &window_s[0]; + + for (i = 0; i < 6; ++i) { + z[i + 0] = 0; + z[i + 6] = mad_f_mul(yptr[ 0 + 0], wptr[0]); + + MAD_F_ML0(hi, lo, yptr[ 0 + 6], wptr[6]); + MAD_F_MLA(hi, lo, yptr[12 + 0], wptr[0]); + + z[i + 12] = MAD_F_MLZ(hi, lo); + + MAD_F_ML0(hi, lo, yptr[12 + 6], wptr[6]); + MAD_F_MLA(hi, lo, yptr[24 + 0], wptr[0]); + + z[i + 18] = MAD_F_MLZ(hi, lo); + + z[i + 24] = mad_f_mul(yptr[24 + 6], wptr[6]); + z[i + 30] = 0; + + ++yptr; + ++wptr; + } +} + +/* + * NAME: III_overlap() + * DESCRIPTION: perform overlap-add of windowed IMDCT outputs + */ +static +void III_overlap(mad_fixed_t const output[36], mad_fixed_t overlap[18], + mad_fixed_t sample[18][32], unsigned int sb) +{ + unsigned int i; + +# if defined(ASO_INTERLEAVE2) + { + register mad_fixed_t tmp1, tmp2; + + tmp1 = overlap[0]; + tmp2 = overlap[1]; + + for (i = 0; i < 16; i += 2) { + sample[i + 0][sb] = output[i + 0] + tmp1; + overlap[i + 0] = output[i + 0 + 18]; + tmp1 = overlap[i + 2]; + + sample[i + 1][sb] = output[i + 1] + tmp2; + overlap[i + 1] = output[i + 1 + 18]; + tmp2 = overlap[i + 3]; + } + + sample[16][sb] = output[16] + tmp1; + overlap[16] = output[16 + 18]; + sample[17][sb] = output[17] + tmp2; + overlap[17] = output[17 + 18]; + } +# elif 0 + for (i = 0; i < 18; i += 2) { + sample[i + 0][sb] = output[i + 0] + overlap[i + 0]; + overlap[i + 0] = output[i + 0 + 18]; + + sample[i + 1][sb] = output[i + 1] + overlap[i + 1]; + overlap[i + 1] = output[i + 1 + 18]; + } +# else + for (i = 0; i < 18; ++i) { + sample[i][sb] = output[i] + overlap[i]; + overlap[i] = output[i + 18]; + } +# endif +} + +/* + * NAME: III_overlap_z() + * DESCRIPTION: perform "overlap-add" of zero IMDCT outputs + */ +static inline +void III_overlap_z(mad_fixed_t overlap[18], + mad_fixed_t sample[18][32], unsigned int sb) +{ + unsigned int i; + +# if defined(ASO_INTERLEAVE2) + { + register mad_fixed_t tmp1, tmp2; + + tmp1 = overlap[0]; + tmp2 = overlap[1]; + + for (i = 0; i < 16; i += 2) { + sample[i + 0][sb] = tmp1; + overlap[i + 0] = 0; + tmp1 = overlap[i + 2]; + + sample[i + 1][sb] = tmp2; + overlap[i + 1] = 0; + tmp2 = overlap[i + 3]; + } + + sample[16][sb] = tmp1; + overlap[16] = 0; + sample[17][sb] = tmp2; + overlap[17] = 0; + } +# else + for (i = 0; i < 18; ++i) { + sample[i][sb] = overlap[i]; + overlap[i] = 0; + } +# endif +} + +/* + * NAME: III_freqinver() + * DESCRIPTION: perform subband frequency inversion for odd sample lines + */ +static +void III_freqinver(mad_fixed_t sample[18][32], unsigned int sb) +{ + unsigned int i; + +# if 1 || defined(ASO_INTERLEAVE1) || defined(ASO_INTERLEAVE2) + { + register mad_fixed_t tmp1, tmp2; + + tmp1 = sample[1][sb]; + tmp2 = sample[3][sb]; + + for (i = 1; i < 13; i += 4) { + sample[i + 0][sb] = -tmp1; + tmp1 = sample[i + 4][sb]; + sample[i + 2][sb] = -tmp2; + tmp2 = sample[i + 6][sb]; + } + + sample[13][sb] = -tmp1; + tmp1 = sample[17][sb]; + sample[15][sb] = -tmp2; + sample[17][sb] = -tmp1; + } +# else + for (i = 1; i < 18; i += 2) + sample[i][sb] = -sample[i][sb]; +# endif +} + +/* + * NAME: III_decode() + * DESCRIPTION: decode frame main_data + */ +static +int III_decode(struct mad_bitptr *ptr, struct mad_frame *frame, + struct sideinfo *si, unsigned int nch) +{ + struct mad_header *header = &frame->header; + unsigned int sfreqi, ngr, gr; + + { + unsigned int sfreq; + + sfreq = header->samplerate; + if (header->flags & MAD_FLAG_MPEG_2_5_EXT) + sfreq *= 2; + + /* 48000 => 0, 44100 => 1, 32000 => 2, + 24000 => 3, 22050 => 4, 16000 => 5 */ + sfreqi = ((sfreq >> 7) & 0x000f) + + ((sfreq >> 15) & 0x0001) - 8; + + if (header->flags & MAD_FLAG_MPEG_2_5_EXT) + sfreqi += 3; + } + + /* scalefactors, Huffman decoding, requantization */ + + ngr = (header->flags & MAD_FLAG_LSF_EXT) ? 1 : 2; + + for (gr = 0; gr < ngr; ++gr) { + struct granule *granule = &si->gr[gr]; + unsigned char const *sfbwidth = 0; + mad_fixed_t xr[2][576]; + unsigned int ch; + enum mad_error error; + + for (ch = 0; ch < nch; ++ch) { + struct channel *channel = &granule->ch[ch]; + unsigned int part2_length; + + sfbwidth = sfbwidth_table[sfreqi].l; + if (channel->block_type == 2) { + sfbwidth = (channel->flags & mixed_block_flag) ? + sfbwidth_table[sfreqi].m : sfbwidth_table[sfreqi].s; + } + + if (header->flags & MAD_FLAG_LSF_EXT) { + part2_length = III_scalefactors_lsf(ptr, channel, + ch == 0 ? 0 : &si->gr[1].ch[1], + header->mode_extension); + } + else { + part2_length = III_scalefactors(ptr, channel, &si->gr[0].ch[ch], + gr == 0 ? 0 : si->scfsi[ch]); + } + + error = III_huffdecode(ptr, xr[ch], channel, sfbwidth, part2_length); + if (error) + return error; + } + + /* joint stereo processing */ + + if (header->mode == MAD_MODE_JOINT_STEREO && header->mode_extension) { + error = III_stereo(xr, granule, header, sfbwidth); + if (error) + return error; + } + + /* reordering, alias reduction, IMDCT, overlap-add, frequency inversion */ + + for (ch = 0; ch < nch; ++ch) { + struct channel const *channel = &granule->ch[ch]; + mad_fixed_t (*sample)[32] = &frame->sbsample[ch][18 * gr]; + unsigned int sb, l, i, sblimit; + mad_fixed_t output[36]; + + if (channel->block_type == 2) { + III_reorder(xr[ch], channel, sfbwidth_table[sfreqi].s); + +# if !defined(OPT_STRICT) + /* + * According to ISO/IEC 11172-3, "Alias reduction is not applied for + * granules with block_type == 2 (short block)." However, other + * sources suggest alias reduction should indeed be performed on the + * lower two subbands of mixed blocks. Most other implementations do + * this, so by default we will too. + */ + if (channel->flags & mixed_block_flag) + III_aliasreduce(xr[ch], 36); +# endif + } + else + III_aliasreduce(xr[ch], 576); + + l = 0; + + /* subbands 0-1 */ + + if (channel->block_type != 2 || (channel->flags & mixed_block_flag)) { + unsigned int block_type; + + block_type = channel->block_type; + if (channel->flags & mixed_block_flag) + block_type = 0; + + /* long blocks */ + for (sb = 0; sb < 2; ++sb, l += 18) { + III_imdct_l(&xr[ch][l], output, block_type); + III_overlap(output, (*frame->overlap)[ch][sb], sample, sb); + } + } + else { + /* short blocks */ + for (sb = 0; sb < 2; ++sb, l += 18) { + III_imdct_s(&xr[ch][l], output); + III_overlap(output, (*frame->overlap)[ch][sb], sample, sb); + } + } + + III_freqinver(sample, 1); + + /* (nonzero) subbands 2-31 */ + + i = 576; + while (i > 36 && xr[ch][i - 1] == 0) + --i; + + sblimit = 32 - (576 - i) / 18; + + if (channel->block_type != 2) { + /* long blocks */ + for (sb = 2; sb < sblimit; ++sb, l += 18) { + III_imdct_l(&xr[ch][l], output, channel->block_type); + III_overlap(output, (*frame->overlap)[ch][sb], sample, sb); + + if (sb & 1) + III_freqinver(sample, sb); + } + } + else { + /* short blocks */ + for (sb = 2; sb < sblimit; ++sb, l += 18) { + III_imdct_s(&xr[ch][l], output); + III_overlap(output, (*frame->overlap)[ch][sb], sample, sb); + + if (sb & 1) + III_freqinver(sample, sb); + } + } + + /* remaining (zero) subbands */ + + for (sb = sblimit; sb < 32; ++sb) { + III_overlap_z((*frame->overlap)[ch][sb], sample, sb); + + if (sb & 1) + III_freqinver(sample, sb); + } + } + } + + return 0; +} + +unsigned char g_main_data[MAD_BUFFER_MDLEN]; +mad_fixed_t g_frame_overlap [2][32][18]; + +/* + * NAME: layer->III() + * DESCRIPTION: decode a single Layer III frame + */ +int mad_layer_III(struct mad_stream *stream, struct mad_frame *frame) +{ + struct mad_header *header = &frame->header; + unsigned int nch, priv_bitlen, next_md_begin = 0; + unsigned int si_len, data_bitlen, md_len; + unsigned int frame_space, frame_used, frame_free; + struct mad_bitptr ptr; + struct sideinfo si; + enum mad_error error; + int result = 0; + + /* allocate Layer III dynamic structures */ + + if (!stream->main_data) + stream->main_data = (unsigned char *)stream->buffer; //&g_main_data; + frame->overlap = &g_frame_overlap; + + nch = MAD_NCHANNELS(header); + si_len = (header->flags & MAD_FLAG_LSF_EXT) ? + (nch == 1 ? 9 : 17) : (nch == 1 ? 17 : 32); + + /* check frame sanity */ + + if (stream->next_frame - mad_bit_nextbyte(&stream->ptr) < + (signed int) si_len) { + stream->error = MAD_ERROR_BADFRAMELEN; + stream->md_len = 0; + return -1; + } + + /* check CRC word */ + + if (header->flags & MAD_FLAG_PROTECTION) { + header->crc_check = + mad_bit_crc(stream->ptr, si_len * CHAR_BIT, header->crc_check); + + if (header->crc_check != header->crc_target && + !(frame->options & MAD_OPTION_IGNORECRC)) { + stream->error = MAD_ERROR_BADCRC; + result = -1; + } + } + + /* decode frame side information */ + + error = III_sideinfo(&stream->ptr, nch, header->flags & MAD_FLAG_LSF_EXT, + &si, &data_bitlen, &priv_bitlen); + if (error && result == 0) { + stream->error = error; + result = -1; + } + + header->flags |= priv_bitlen; + header->private_bits |= si.private_bits; + + /* find main_data of next frame */ + + { + struct mad_bitptr peek; + unsigned long header; + + mad_bit_init(&peek, stream->next_frame); + + header = mad_bit_read(&peek, 32); + if ((header & 0xffe60000L) /* syncword | layer */ == 0xffe20000L) { + if (!(header & 0x00010000L)) /* protection_bit */ + mad_bit_skip(&peek, 16); /* crc_check */ + + next_md_begin = + mad_bit_read(&peek, (header & 0x00080000L) /* ID */ ? 9 : 8); + } + + mad_bit_finish(&peek); + } + + /* find main_data of this frame */ + + frame_space = stream->next_frame - mad_bit_nextbyte(&stream->ptr); + + if (next_md_begin > si.main_data_begin + frame_space) + next_md_begin = 0; + + md_len = si.main_data_begin + frame_space - next_md_begin; + + frame_used = 0; + + if (si.main_data_begin == 0) { + ptr = stream->ptr; + stream->md_len = 0; + + frame_used = md_len; + } + else { + if (si.main_data_begin > stream->md_len) { + if (result == 0) { + stream->error = MAD_ERROR_BADDATAPTR; + result = -1; + } + } + else { + mad_bit_init(&ptr, + stream->main_data + stream->md_len - si.main_data_begin); + + if (md_len > si.main_data_begin) { + assert(stream->md_len + md_len - + si.main_data_begin <= MAD_BUFFER_MDLEN); + + memcpy(stream->main_data + stream->md_len, + mad_bit_nextbyte(&stream->ptr), + frame_used = md_len - si.main_data_begin); + stream->md_len += frame_used; + } + } + } + + frame_free = frame_space - frame_used; + + /* decode main_data */ + + if (result == 0) { + error = III_decode(&ptr, frame, &si, nch); + if (error) { + stream->error = error; + result = -1; + } + } + + /* designate ancillary bits */ + + stream->anc_ptr = ptr; + stream->anc_bitlen = md_len * CHAR_BIT - data_bitlen; + + /* fprintf(stderr, + "main_data_begin:%u, md_len:%u, frame_free:%u, " + "data_bitlen:%u, anc_bitlen: %u\n", + si.main_data_begin, md_len, frame_free, + data_bitlen, stream->anc_bitlen);*/ + + /* preload main_data buffer with up to 511 bytes for next frame(s) */ + + if (frame_free >= next_md_begin) { + memcpy(stream->main_data, + stream->next_frame - next_md_begin, next_md_begin); + + stream->md_len = next_md_begin; + } + else { + if (md_len < si.main_data_begin) { + unsigned int extra; + extra = si.main_data_begin - md_len; + if (extra + frame_free > next_md_begin) + extra = next_md_begin - frame_free; + + if (extra < stream->md_len) { + memmove(stream->main_data, + stream->main_data + stream->md_len - extra, extra); + stream->md_len = extra; + } + } + else + stream->md_len = 0; + + memcpy(stream->main_data + stream->md_len, + stream->next_frame - frame_free, frame_free); + stream->md_len += frame_free; + } + return result; +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.h (revision 782) @@ -0,0 +1,102 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: stream.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_STREAM_H +# define LIBMAD_STREAM_H + +# include "bit.h" + +# define MAD_BUFFER_GUARD 8 +# define MAD_BUFFER_MDLEN (511 + 2048 + MAD_BUFFER_GUARD) + +enum mad_error { + MAD_ERROR_BUFLEN = 0x0001, /* input buffer too small (or EOF) */ + MAD_ERROR_BUFPTR = 0x0002, /* invalid (null) buffer pointer */ + + MAD_ERROR_NOMEM = 0x0031, /* not enough memory */ + + MAD_ERROR_LOSTSYNC = 0x0101, /* lost synchronization */ + MAD_ERROR_BADLAYER = 0x0102, /* reserved header layer value */ + MAD_ERROR_BADBITRATE = 0x0103, /* forbidden bitrate value */ + MAD_ERROR_BADSAMPLERATE = 0x0104, /* reserved sample frequency value */ + MAD_ERROR_BADEMPHASIS = 0x0105, /* reserved emphasis value */ + + MAD_ERROR_BADCRC = 0x0201, /* CRC check failed */ + MAD_ERROR_BADBITALLOC = 0x0211, /* forbidden bit allocation value */ + MAD_ERROR_BADSCALEFACTOR = 0x0221, /* bad scalefactor index */ + MAD_ERROR_BADFRAMELEN = 0x0231, /* bad frame length */ + MAD_ERROR_BADBIGVALUES = 0x0232, /* bad big_values count */ + MAD_ERROR_BADBLOCKTYPE = 0x0233, /* reserved block_type */ + MAD_ERROR_BADSCFSI = 0x0234, /* bad scalefactor selection info */ + MAD_ERROR_BADDATAPTR = 0x0235, /* bad main_data_begin pointer */ + MAD_ERROR_BADPART3LEN = 0x0236, /* bad audio data length */ + MAD_ERROR_BADHUFFTABLE = 0x0237, /* bad Huffman table select */ + MAD_ERROR_BADHUFFDATA = 0x0238, /* Huffman data overrun */ + MAD_ERROR_BADSTEREO = 0x0239 /* incompatible block_type for JS */ +}; + +# define MAD_RECOVERABLE(error) ((error) & 0xff00) + +struct mad_stream { + unsigned char const *buffer; /* input bitstream buffer */ + unsigned char const *bufend; /* end of buffer */ + unsigned long skiplen; /* bytes to skip before next frame */ + + int sync; /* stream sync found */ + unsigned long freerate; /* free bitrate (fixed) */ + + unsigned char const *this_frame; /* start of current frame */ + unsigned char const *next_frame; /* start of next frame */ + struct mad_bitptr ptr; /* current processing bit pointer */ + + struct mad_bitptr anc_ptr; /* ancillary bits pointer */ + unsigned int anc_bitlen; /* number of ancillary bits */ + + unsigned char (*main_data); + /* Layer III main_data() */ + unsigned int md_len; /* bytes in main_data */ + + int options; /* decoding options (see below) */ + enum mad_error error; /* error code (see above) */ +}; + +enum { + MAD_OPTION_IGNORECRC = 0x0001, /* ignore CRC errors */ + MAD_OPTION_HALFSAMPLERATE = 0x0002, /* generate PCM at 1/2 sample rate */ +# if 0 /* not yet implemented */ + MAD_OPTION_LEFTCHANNEL = 0x0010, /* decode left channel only */ + MAD_OPTION_RIGHTCHANNEL = 0x0020, /* decode right channel only */ + MAD_OPTION_SINGLECHANNEL = 0x0030, /* combine channels */ +# endif +}; + +void mad_stream_init(struct mad_stream *); +void mad_stream_finish(struct mad_stream *); + +# define mad_stream_options(stream, opts) ((stream)->options = (opts)) + +void mad_stream_buffer(struct mad_stream *, + unsigned char const *, unsigned long); +void mad_stream_skip(struct mad_stream *, unsigned long); + +int mad_stream_sync(struct mad_stream *); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.h (revision 782) @@ -0,0 +1,454 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: fixed.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_FIXED_H +# define LIBMAD_FIXED_H + +# if SIZEOF_INT >= 4 +typedef signed int mad_fixed_t; + +typedef signed int mad_fixed64hi_t; +typedef unsigned int mad_fixed64lo_t; +# else +typedef signed long mad_fixed_t; + +typedef signed long mad_fixed64hi_t; +typedef unsigned long mad_fixed64lo_t; +# endif + +/* + * Fixed-point format: 0xABBBBBBB + * A == whole part (sign + 3 bits) + * B == fractional part (28 bits) + * + * Values are signed two's complement, so the effective range is: + * 0x80000000 to 0x7fffffff + * -8.0 to +7.9999999962747097015380859375 + * + * The smallest representable value is: + * 0x00000001 == 0.0000000037252902984619140625 (i.e. about 3.725e-9) + * + * 28 bits of fractional accuracy represent about + * 8.6 digits of decimal accuracy. + * + * Fixed-point numbers can be added or subtracted as normal + * integers, but multiplication requires shifting the 64-bit result + * from 56 fractional bits back to 28 (and rounding.) + * + * Changing the definition of MAD_F_FRACBITS is only partially + * supported, and must be done with care. + */ + +# define MAD_F_FRACBITS 28 + +# if MAD_F_FRACBITS == 28 +# define MAD_F(x) ((mad_fixed_t) (x##L)) +# else +# if MAD_F_FRACBITS < 28 +# warning "MAD_F_FRACBITS < 28" +# define MAD_F(x) ((mad_fixed_t) \ + (((x##L) + \ + (1L << (28 - MAD_F_FRACBITS - 1))) >> \ + (28 - MAD_F_FRACBITS))) +# elif MAD_F_FRACBITS > 28 +# error "MAD_F_FRACBITS > 28 not currently supported" +# define MAD_F(x) ((mad_fixed_t) \ + ((x##L) << (MAD_F_FRACBITS - 28))) +# endif +# endif + +# define MAD_F_MIN ((mad_fixed_t) -0x80000000L) +# define MAD_F_MAX ((mad_fixed_t) +0x7fffffffL) + +# define MAD_F_ONE MAD_F(0x10000000) + +#ifndef EMBED +# define mad_f_tofixed(x) ((mad_fixed_t) \ + ((x) * (double) (1L << MAD_F_FRACBITS) + 0.5)) +# define mad_f_todouble(x) ((double) \ + ((x) / (double) (1L << MAD_F_FRACBITS))) +#endif + +# define mad_f_intpart(x) ((x) >> MAD_F_FRACBITS) +# define mad_f_fracpart(x) ((x) & ((1L << MAD_F_FRACBITS) - 1)) + /* (x should be positive) */ + +# define mad_f_fromint(x) ((x) << MAD_F_FRACBITS) + +# define mad_f_add(x, y) ((x) + (y)) +# define mad_f_sub(x, y) ((x) - (y)) + +# if defined(FPM_64BIT) + +/* + * This version should be the most accurate if 64-bit (long long) types are + * supported by the compiler, although it may not be the most efficient. + */ +# if defined(OPT_ACCURACY) +# define mad_f_mul(x, y) \ + ((mad_fixed_t) \ + ((((signed long long) (x) * (y)) + \ + (1L << (MAD_F_SCALEBITS - 1))) >> MAD_F_SCALEBITS)) +# else +# define mad_f_mul(x, y) \ + ((mad_fixed_t) (((signed long long) (x) * (y)) >> MAD_F_SCALEBITS)) +# endif + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- Intel --------------------------------------------------------------- */ +# elif defined(FPM_INTEL) + +/* + * This Intel version is fast and accurate; the disposition of the least + * significant bit depends on OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("imull %3" \ + : "=a" (lo), "=d" (hi) \ + : "%a" (x), "rm" (y) \ + : "cc") + +# if defined(OPT_ACCURACY) +/* + * This gives best accuracy but is not very fast. + */ +# define MAD_F_MLA(hi, lo, x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + MAD_F_MLX(__hi, __lo, (x), (y)); \ + asm ("addl %2,%0\n\t" \ + "adcl %3,%1" \ + : "=rm" (lo), "=rm" (hi) \ + : "r" (__lo), "r" (__hi), "0" (lo), "1" (hi) \ + : "cc"); \ + }) +# endif /* OPT_ACCURACY */ + +# if defined(OPT_ACCURACY) +/* + * Surprisingly, this is faster than SHRD followed by ADC. + */ +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed64hi_t __hi_; \ + mad_fixed64lo_t __lo_; \ + mad_fixed_t __result; \ + asm ("addl %4,%2\n\t" \ + "adcl %5,%3" \ + : "=rm" (__lo_), "=rm" (__hi_) \ + : "0" (lo), "1" (hi), \ + "ir" (1L << (MAD_F_SCALEBITS - 1)), "ir" (0) \ + : "cc"); \ + asm ("shrdl %3,%2,%1" \ + : "=rm" (__result) \ + : "0" (__lo_), "r" (__hi_), "I" (MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) +# else +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + asm ("shrdl %3,%2,%1" \ + : "=rm" (__result) \ + : "0" (lo), "r" (hi), "I" (MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) +# endif /* OPT_ACCURACY */ + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- ARM ----------------------------------------------------------------- */ + +# elif defined(FPM_ARM) + +/* + * This ARM V4 version is as accurate as FPM_64BIT but much faster. The + * least significant bit is properly rounded at no CPU cycle cost! + */ +# if 1 +/* + * There's a bug somewhere, possibly in the compiler, that sometimes makes + * this necessary instead of the default implementation via MAD_F_MLX and + * mad_f_scale64. It may be related to the use (or lack) of + * -finline-functions and/or -fstrength-reduce. + * + * This is also apparently faster than MAD_F_MLX/mad_f_scale64. + */ +# define mad_f_mul(x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + mad_fixed_t __result; \ + asm ("smull %0, %1, %3, %4\n\t" \ + "movs %0, %0, lsr %5\n\t" \ + "adc %2, %0, %1, lsl %6" \ + : "=&r" (__lo), "=&r" (__hi), "=r" (__result) \ + : "%r" (x), "r" (y), \ + "M" (MAD_F_SCALEBITS), "M" (32 - MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) +# endif + +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("smull %0, %1, %2, %3" \ + : "=&r" (lo), "=&r" (hi) \ + : "%r" (x), "r" (y)) + +# define MAD_F_MLA(hi, lo, x, y) \ + asm ("smlal %0, %1, %2, %3" \ + : "+r" (lo), "+r" (hi) \ + : "%r" (x), "r" (y)) + +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + asm ("movs %0, %1, lsr %3\n\t" \ + "adc %0, %0, %2, lsl %4" \ + : "=r" (__result) \ + : "r" (lo), "r" (hi), \ + "M" (MAD_F_SCALEBITS), "M" (32 - MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- MIPS ---------------------------------------------------------------- */ + +# elif defined(FPM_MIPS) + +/* + * This MIPS version is fast and accurate; the disposition of the least + * significant bit depends on OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("mult %2,%3" \ + : "=l" (lo), "=h" (hi) \ + : "%r" (x), "r" (y)) + +# if defined(HAVE_MADD_ASM) +# define MAD_F_MLA(hi, lo, x, y) \ + asm ("madd %2,%3" \ + : "+l" (lo), "+h" (hi) \ + : "%r" (x), "r" (y)) +# elif defined(HAVE_MADD16_ASM) +/* + * This loses significant accuracy due to the 16-bit integer limit in the + * multiply/accumulate instruction. + */ +# define MAD_F_ML0(hi, lo, x, y) \ + asm ("mult %2,%3" \ + : "=l" (lo), "=h" (hi) \ + : "%r" ((x) >> 12), "r" ((y) >> 16)) +# define MAD_F_MLA(hi, lo, x, y) \ + asm ("madd16 %2,%3" \ + : "+l" (lo), "+h" (hi) \ + : "%r" ((x) >> 12), "r" ((y) >> 16)) +# define MAD_F_MLZ(hi, lo) ((mad_fixed_t) (lo)) +# endif + +# if defined(OPT_SPEED) +# define mad_f_scale64(hi, lo) \ + ((mad_fixed_t) ((hi) << (32 - MAD_F_SCALEBITS))) +# define MAD_F_SCALEBITS MAD_F_FRACBITS +# endif + +/* --- SPARC --------------------------------------------------------------- */ + +# elif defined(FPM_SPARC) + +/* + * This SPARC V8 version is fast and accurate; the disposition of the least + * significant bit depends on OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("smul %2, %3, %0\n\t" \ + "rd %%y, %1" \ + : "=r" (lo), "=r" (hi) \ + : "%r" (x), "rI" (y)) + +/* --- PowerPC ------------------------------------------------------------- */ + +# elif defined(FPM_PPC) + +/* + * This PowerPC version is tuned for the 4xx embedded processors. It is + * effectively a tuned version of FPM_64BIT. It is a little faster and just + * as accurate. The disposition of the least significant bit depends on + * OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("mulhw %1, %2, %3\n\t" \ + "mullw %0, %2, %3" \ + : "=&r" (lo), "=&r" (hi) \ + : "%r" (x), "r" (y)) + +# define MAD_F_MLA(hi, lo, x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + MAD_F_MLX(__hi, __lo, (x), (y)); \ + asm ("addc %0, %2, %3\n\t" \ + "adde %1, %4, %5" \ + : "=r" (lo), "=r" (hi) \ + : "%r" (__lo), "0" (lo), "%r" (__hi), "1" (hi)); \ + }) + +# if defined(OPT_ACCURACY) +/* + * This is accurate and ~2 - 2.5 times slower than the unrounded version. + * + * The __volatile__ improves the generated code by another 5% (fewer spills + * to memory); eventually they should be removed. + */ +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + mad_fixed64hi_t __hi_; \ + mad_fixed64lo_t __lo_; \ + asm __volatile__ ("addc %0, %2, %4\n\t" \ + "addze %1, %3" \ + : "=r" (__lo_), "=r" (__hi_) \ + : "r" (lo), "r" (hi), "r" (1 << (MAD_F_SCALEBITS - 1))); \ + asm __volatile__ ("rlwinm %0, %2,32-%3,0,%3-1\n\t" \ + "rlwimi %0, %1,32-%3,%3,31" \ + : "=&r" (__result) \ + : "r" (__lo_), "r" (__hi_), "I" (MAD_F_SCALEBITS)); \ + __result; \ + }) +# else +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + asm ("rlwinm %0, %2,32-%3,0,%3-1\n\t" \ + "rlwimi %0, %1,32-%3,%3,31" \ + : "=r" (__result) \ + : "r" (lo), "r" (hi), "I" (MAD_F_SCALEBITS)); \ + __result; \ + }) +# endif /* OPT_ACCURACY */ + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* ------ OR32 ------------------------------------------------------------- */ + +# elif defined(FPM_OR32) + +/* We assume here that we always call macros in following sequence: + MAD_F_ML0 + MAD_F_MLA + ... + MAD_F_MLA + MAD_F_MLX +*/ + +# define MAD_F_MLX(hi, lo, x, y) \ + asm volatile ("l.mac %0,%1" : : "%r" (x), "r" (y)) + +# define MAD_F_MLA(hi, lo, x, y) MAX_F_MLX(hi, lo, x, y) + + +# define MAX_F_ML0(hi, lo, x, y) MAX_F_MLX(hi, lo, x, y) + +# define MAX_F_MLZ(hi, lo, x, y) \ + asm volatile ("l.macrc %0" : "=r" (lo)) + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- Default ------------------------------------------------------------- */ + +# elif defined(FPM_DEFAULT) + +/* + * This version is the most portable but it loses significant accuracy. + * Furthermore, accuracy is biased against the second argument, so care + * should be taken when ordering operands. + * + * The scale factors are constant as this is not used with SSO. + * + * Pre-rounding is required to stay within the limits of compliance. + */ +# define mad_f_mul(x, y) ( (((x) + (1L << 11)) >> 12) * \ + (((y) + (1L << 15)) >> 16) ) +/*# define mad_f_mul(x, y) ((x)+(y))*/ +/* --- Default 16 ------------------------------------------------------------- */ + +# elif defined(FPM_DEFAULT16) + +/* + * This version is the most portable but it loses significant accuracy. + * Furthermore, accuracy is biased against the second argument, so care + * should be taken when ordering operands. + * + * The scale factors are constant as this is not used with SSO. + * + * Pre-rounding is required to stay within the limits of compliance. + */ +# define mad_f_mul(x, y) (( (((x) + (1L << 15)) >> 16) * \ + (((y) + (1L << 15)) >> 16) ) << 4) +/* ------------------------------------------------------------------------- */ + +# else +# error "no FPM selected" +# endif + +/* default implementations */ + +# if !defined(mad_f_mul) +# define mad_f_mul(x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + MAD_F_MLX(__hi, __lo, (x), (y)); \ + mad_f_scale64(__hi, __lo); \ + }) +# endif + +# if !defined(MAD_F_MLA) +# define MAD_F_ML0(hi, lo, x, y) ((lo) = mad_f_mul((x), (y))) +# define MAD_F_MLA(hi, lo, x, y) ((lo) += mad_f_mul((x), (y))) +# define MAD_F_MLZ(hi, lo) ((void) (hi), (mad_fixed_t) (lo)) +# endif + +# if !defined(MAD_F_ML0) +# define MAD_F_ML0(hi, lo, x, y) MAD_F_MLX((hi), (lo), (x), (y)) +# endif + +# if !defined(MAD_F_MLZ) +# define MAD_F_MLZ(hi, lo) mad_f_scale64((hi), (lo)) +# endif + +# if !defined(mad_f_scale64) +# if defined(OPT_ACCURACY) +# define mad_f_scale64(hi, lo) \ + ((((mad_fixed_t) \ + (((hi) << (32 - (MAD_F_SCALEBITS - 1))) | \ + ((lo) >> (MAD_F_SCALEBITS - 1)))) + 1) >> 1) +# else +# define mad_f_scale64(hi, lo) \ + ((mad_fixed_t) \ + (((hi) << (32 - MAD_F_SCALEBITS)) | \ + ((lo) >> MAD_F_SCALEBITS))) +# endif +# define MAD_F_SCALEBITS MAD_F_FRACBITS +# endif + +/* miscellaneous C routines */ + +mad_fixed_t mad_f_abs(mad_fixed_t); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/fixed.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.h (revision 782) @@ -0,0 +1,30 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: layer3.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_LAYER3_H +# define LIBMAD_LAYER3_H + +# include "stream.h" +# include "frame.h" + +int mad_layer_III(struct mad_stream *, struct mad_frame *); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/layer3.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/global.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/global.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/global.h (revision 782) @@ -0,0 +1,45 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: global.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_GLOBAL_H +# define LIBMAD_GLOBAL_H + +/* conditional debugging */ + +# if defined(DEBUG) && defined(NDEBUG) +# error "cannot define both DEBUG and NDEBUG" +# endif + +# if defined(DEBUG) +# include +# endif + +/* conditional features */ + +# if defined(OPT_SPEED) && defined(OPT_ACCURACY) +# error "cannot optimize for both speed and accuracy" +# endif + +# if defined(OPT_SPEED) && !defined(OPT_SSO) +# define OPT_SSO 1 +# endif + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/global.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.c (revision 782) @@ -0,0 +1,134 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: decoder.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# include "stream.h" +# include "frame.h" +# include "synth.h" +# include "decoder.h" + +extern int test_button(void); + +inline void mad_decoder_init(struct mad_decoder *decoder, void *data, + enum mad_flow (*input_func)(void *, struct mad_stream *), + enum mad_flow (*error_func)(void *, struct mad_stream *, struct mad_frame *frame)) +{ + decoder->mode = -1; + + decoder->options = 0; + + decoder->sync = 0; + + decoder->cb_data = data; + + decoder->input_func = input_func; + decoder->error_func = error_func; +} + +inline +int mad_decoder_finish(struct mad_decoder *decoder) +{ + return 0; +} + + +/* Both parameters are required. */ +inline static +int run_sync(struct mad_decoder *decoder) +{ + enum mad_flow (*error_func)(void *, struct mad_stream *, struct mad_frame *); + void *error_data; + int bad_last_frame = 0; + struct mad_stream *stream; + struct mad_frame *frame; + struct mad_synth *synth; + int result = 0; + + error_func = decoder->error_func; + error_data = decoder->cb_data; + + stream = &decoder->sync->stream; + frame = &decoder->sync->frame; + synth = &decoder->sync->synth; + + mad_stream_init(stream); + mad_frame_init(frame); + mad_synth_init(synth); + + mad_stream_options(stream, decoder->options); + + do { + switch (decoder->input_func(decoder->cb_data, stream)) { + case MAD_FLOW_STOP: + goto done; + case MAD_FLOW_BREAK: + goto fail; + case MAD_FLOW_IGNORE: + continue; + case MAD_FLOW_CONTINUE: + break; + } + + while (1) { + if (mad_frame_decode(frame, stream) == -1) { + if (!MAD_RECOVERABLE(stream->error)) + break; + + error_func(error_data, stream, frame); + goto done; + } + else + bad_last_frame = 0; + + mad_synth_frame(synth, frame); + if(test_button()) + return 1; + } + } + while (stream->error == MAD_ERROR_BUFLEN); + + fail: + result = -1; + + done: + mad_synth_finish(synth); + mad_frame_finish(frame); + mad_stream_finish(stream); + + return result; +} + +inline int mad_decoder_run(struct mad_decoder *decoder, enum mad_decoder_mode mode) +{ + int result; + struct dec_sync_struct sync; + decoder->sync = &sync; + + result = run_sync(decoder); + + decoder->sync = 0; + return result; +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.c (revision 782) @@ -0,0 +1,765 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: synth.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# include "fixed.h" +# include "frame.h" +# include "synth.h" +# include "../audio.h" + +#ifndef EMBED +# include +#endif + +/* + * NAME: synth->mute() + * DESCRIPTION: zero all polyphase filterbank values, resetting synthesis + */ +void mad_synth_mute(struct mad_synth *synth) +{ + unsigned int ch, s, v; + + for (ch = 0; ch < 2; ++ch) { + for (s = 0; s < 16; ++s) { + for (v = 0; v < 8; ++v) { + synth->filter[ch][0][0][s][v] = synth->filter[ch][0][1][s][v] = + synth->filter[ch][1][0][s][v] = synth->filter[ch][1][1][s][v] = 0; + } + } + } +} + +/* + * NAME: synth->init() + * DESCRIPTION: initialize synth struct + */ +inline void mad_synth_init(struct mad_synth *synth) +{ + mad_synth_mute(synth); + + synth->phase = 0; + + synth->pcm.samplerate = 0; + synth->pcm.channels = 0; + synth->pcm.length = 0; +} + +/* + * An optional optimization called here the Subband Synthesis Optimization + * (SSO) improves the performance of subband synthesis at the expense of + * accuracy. + * + * The idea is to simplify 32x32->64-bit multiplication to 32x32->32 such + * that extra scaling and rounding are not necessary. This often allows the + * compiler to use faster 32-bit multiply-accumulate instructions instead of + * explicit 64-bit multiply, shift, and add instructions. + * + * SSO works like this: a full 32x32->64-bit multiply of two mad_fixed_t + * values requires the result to be right-shifted 28 bits to be properly + * scaled to the same fixed-point format. Right shifts can be applied at any + * time to either operand or to the result, so the optimization involves + * careful placement of these shifts to minimize the loss of accuracy. + * + * First, a 14-bit shift is applied with rounding at compile-time to the D[] + * table of coefficients for the subband synthesis window. This only loses 2 + * bits of accuracy because the lower 12 bits are always zero. A second + * 12-bit shift occurs after the DCT calculation. This loses 12 bits of + * accuracy. Finally, a third 2-bit shift occurs just before the sample is + * saved in the PCM buffer. 14 + 12 + 2 == 28 bits. + */ + +/* FPM_DEFAULT without OPT_SSO will actually lose accuracy and performance */ + +# if defined(FPM_DEFAULT) && !defined(OPT_SSO) +# define OPT_SSO +# endif + +/* second SSO shift, with rounding */ + +# if defined(OPT_SSO) +# define SHIFT(x) (((x) + (1L << 11)) >> 12) +# else +# define SHIFT(x) (x) +# endif + +/* possible DCT speed optimization */ + +# if defined(OPT_SPEED) && defined(MAD_F_MLX) +# define OPT_DCTO +# define MUL(x, y) \ + ({ mad_fixed64hi_t hi; \ + mad_fixed64lo_t lo; \ + MAD_F_MLX(hi, lo, (x), (y)); \ + hi << (32 - MAD_F_SCALEBITS - 3); \ + }) +# else +# undef OPT_DCTO +# define MUL(x, y) mad_f_mul((x), (y)) +# endif + +/* + * NAME: dct32() + * DESCRIPTION: perform fast in[32]->out[32] DCT + */ +static +void dct32(mad_fixed_t const in[32], unsigned int slot, + mad_fixed_t lo[16][8], mad_fixed_t hi[16][8]) +{ + mad_fixed_t t0, t1, t2, t3, t4, t5, t6, t7; + mad_fixed_t t8, t9, t10, t11, t12, t13, t14, t15; + mad_fixed_t t16, t17, t18, t19, t20, t21, t22, t23; + mad_fixed_t t24, t25, t26, t27, t28, t29, t30, t31; + mad_fixed_t t32, t33, t34, t35, t36, t37, t38, t39; + mad_fixed_t t40, t41, t42, t43, t44, t45, t46, t47; + mad_fixed_t t48, t49, t50, t51, t52, t53, t54, t55; + mad_fixed_t t56, t57, t58, t59, t60, t61, t62, t63; + mad_fixed_t t64, t65, t66, t67, t68, t69, t70, t71; + mad_fixed_t t72, t73, t74, t75, t76, t77, t78, t79; + mad_fixed_t t80, t81, t82, t83, t84, t85, t86, t87; + mad_fixed_t t88, t89, t90, t91, t92, t93, t94, t95; + mad_fixed_t t96, t97, t98, t99, t100, t101, t102, t103; + mad_fixed_t t104, t105, t106, t107, t108, t109, t110, t111; + mad_fixed_t t112, t113, t114, t115, t116, t117, t118, t119; + mad_fixed_t t120, t121, t122, t123, t124, t125, t126, t127; + mad_fixed_t t128, t129, t130, t131, t132, t133, t134, t135; + mad_fixed_t t136, t137, t138, t139, t140, t141, t142, t143; + mad_fixed_t t144, t145, t146, t147, t148, t149, t150, t151; + mad_fixed_t t152, t153, t154, t155, t156, t157, t158, t159; + mad_fixed_t t160, t161, t162, t163, t164, t165, t166, t167; + mad_fixed_t t168, t169, t170, t171, t172, t173, t174, t175; + mad_fixed_t t176; + + /* costab[i] = cos(PI / (2 * 32) * i) */ + +# if defined(OPT_DCTO) + enum { + costab1 = MAD_F(0x7fd8878e), + costab2 = MAD_F(0x7f62368f), + costab3 = MAD_F(0x7e9d55fc), + costab4 = MAD_F(0x7d8a5f40), + costab5 = MAD_F(0x7c29fbee), + costab6 = MAD_F(0x7a7d055b), + costab7 = MAD_F(0x78848414), + costab8 = MAD_F(0x7641af3d), + costab9 = MAD_F(0x73b5ebd1), + costab10 = MAD_F(0x70e2cbc6), + costab11 = MAD_F(0x6dca0d14), + costab12 = MAD_F(0x6a6d98a4), + costab13 = MAD_F(0x66cf8120), + costab14 = MAD_F(0x62f201ac), + costab15 = MAD_F(0x5ed77c8a), + costab16 = MAD_F(0x5a82799a), + costab17 = MAD_F(0x55f5a4d2), + costab18 = MAD_F(0x5133cc94), + costab19 = MAD_F(0x4c3fdff4), + costab20 = MAD_F(0x471cece7), + costab21 = MAD_F(0x41ce1e65), + costab22 = MAD_F(0x3c56ba70), + costab23 = MAD_F(0x36ba2014), + costab24 = MAD_F(0x30fbc54d), + costab25 = MAD_F(0x2b1f34eb), + costab26 = MAD_F(0x25280c5e), + costab27 = MAD_F(0x1f19f97b), + costab28 = MAD_F(0x18f8b83c), + costab29 = MAD_F(0x12c8106f), + costab30 = MAD_F(0x0c8bd35e), + costab31 = MAD_F(0x0647d97c) + }; +# else + enum { + costab1 = MAD_F(0x0ffb10f2), /* 0.998795456 */ + costab2 = MAD_F(0x0fec46d2), /* 0.995184727 */ + costab3 = MAD_F(0x0fd3aac0), /* 0.989176510 */ + costab4 = MAD_F(0x0fb14be8), /* 0.980785280 */ + costab5 = MAD_F(0x0f853f7e), /* 0.970031253 */ + costab6 = MAD_F(0x0f4fa0ab), /* 0.956940336 */ + costab7 = MAD_F(0x0f109082), /* 0.941544065 */ + costab8 = MAD_F(0x0ec835e8), /* 0.923879533 */ + costab9 = MAD_F(0x0e76bd7a), /* 0.903989293 */ + costab10 = MAD_F(0x0e1c5979), /* 0.881921264 */ + costab11 = MAD_F(0x0db941a3), /* 0.857728610 */ + costab12 = MAD_F(0x0d4db315), /* 0.831469612 */ + costab13 = MAD_F(0x0cd9f024), /* 0.803207531 */ + costab14 = MAD_F(0x0c5e4036), /* 0.773010453 */ + costab15 = MAD_F(0x0bdaef91), /* 0.740951125 */ + costab16 = MAD_F(0x0b504f33), /* 0.707106781 */ + costab17 = MAD_F(0x0abeb49a), /* 0.671558955 */ + costab18 = MAD_F(0x0a267993), /* 0.634393284 */ + costab19 = MAD_F(0x0987fbfe), /* 0.595699304 */ + costab20 = MAD_F(0x08e39d9d), /* 0.555570233 */ + costab21 = MAD_F(0x0839c3cd), /* 0.514102744 */ + costab22 = MAD_F(0x078ad74e), /* 0.471396737 */ + costab23 = MAD_F(0x06d74402), /* 0.427555093 */ + costab24 = MAD_F(0x061f78aa), /* 0.382683432 */ + costab25 = MAD_F(0x0563e69d), /* 0.336889853 */ + costab26 = MAD_F(0x04a5018c), /* 0.290284677 */ + costab27 = MAD_F(0x03e33f2f), /* 0.242980180 */ + costab28 = MAD_F(0x031f1708), /* 0.195090322 */ + costab29 = MAD_F(0x0259020e), /* 0.146730474 */ + costab30 = MAD_F(0x01917a6c), /* 0.098017140 */ + costab31 = MAD_F(0x00c8fb30) /* 0.049067674 */ + }; +# endif + + t0 = in[0] + in[31]; t16 = MUL(in[0] - in[31], costab1); + t1 = in[15] + in[16]; t17 = MUL(in[15] - in[16], costab31); + + t41 = t16 + t17; + t59 = MUL(t16 - t17, costab2); + t33 = t0 + t1; + t50 = MUL(t0 - t1, costab2); + + t2 = in[7] + in[24]; t18 = MUL(in[7] - in[24], costab15); + t3 = in[8] + in[23]; t19 = MUL(in[8] - in[23], costab17); + + t42 = t18 + t19; + t60 = MUL(t18 - t19, costab30); + t34 = t2 + t3; + t51 = MUL(t2 - t3, costab30); + + t4 = in[3] + in[28]; t20 = MUL(in[3] - in[28], costab7); + t5 = in[12] + in[19]; t21 = MUL(in[12] - in[19], costab25); + + t43 = t20 + t21; + t61 = MUL(t20 - t21, costab14); + t35 = t4 + t5; + t52 = MUL(t4 - t5, costab14); + + t6 = in[4] + in[27]; t22 = MUL(in[4] - in[27], costab9); + t7 = in[11] + in[20]; t23 = MUL(in[11] - in[20], costab23); + + t44 = t22 + t23; + t62 = MUL(t22 - t23, costab18); + t36 = t6 + t7; + t53 = MUL(t6 - t7, costab18); + + t8 = in[1] + in[30]; t24 = MUL(in[1] - in[30], costab3); + t9 = in[14] + in[17]; t25 = MUL(in[14] - in[17], costab29); + + t45 = t24 + t25; + t63 = MUL(t24 - t25, costab6); + t37 = t8 + t9; + t54 = MUL(t8 - t9, costab6); + + t10 = in[6] + in[25]; t26 = MUL(in[6] - in[25], costab13); + t11 = in[9] + in[22]; t27 = MUL(in[9] - in[22], costab19); + + t46 = t26 + t27; + t64 = MUL(t26 - t27, costab26); + t38 = t10 + t11; + t55 = MUL(t10 - t11, costab26); + + t12 = in[2] + in[29]; t28 = MUL(in[2] - in[29], costab5); + t13 = in[13] + in[18]; t29 = MUL(in[13] - in[18], costab27); + + t47 = t28 + t29; + t65 = MUL(t28 - t29, costab10); + t39 = t12 + t13; + t56 = MUL(t12 - t13, costab10); + + t14 = in[5] + in[26]; t30 = MUL(in[5] - in[26], costab11); + t15 = in[10] + in[21]; t31 = MUL(in[10] - in[21], costab21); + + t48 = t30 + t31; + t66 = MUL(t30 - t31, costab22); + t40 = t14 + t15; + t57 = MUL(t14 - t15, costab22); + + t69 = t33 + t34; t89 = MUL(t33 - t34, costab4); + t70 = t35 + t36; t90 = MUL(t35 - t36, costab28); + t71 = t37 + t38; t91 = MUL(t37 - t38, costab12); + t72 = t39 + t40; t92 = MUL(t39 - t40, costab20); + t73 = t41 + t42; t94 = MUL(t41 - t42, costab4); + t74 = t43 + t44; t95 = MUL(t43 - t44, costab28); + t75 = t45 + t46; t96 = MUL(t45 - t46, costab12); + t76 = t47 + t48; t97 = MUL(t47 - t48, costab20); + + t78 = t50 + t51; t100 = MUL(t50 - t51, costab4); + t79 = t52 + t53; t101 = MUL(t52 - t53, costab28); + t80 = t54 + t55; t102 = MUL(t54 - t55, costab12); + t81 = t56 + t57; t103 = MUL(t56 - t57, costab20); + + t83 = t59 + t60; t106 = MUL(t59 - t60, costab4); + t84 = t61 + t62; t107 = MUL(t61 - t62, costab28); + t85 = t63 + t64; t108 = MUL(t63 - t64, costab12); + t86 = t65 + t66; t109 = MUL(t65 - t66, costab20); + + t113 = t69 + t70; + t114 = t71 + t72; + + /* 0 */ hi[15][slot] = SHIFT(t113 + t114); + /* 16 */ lo[ 0][slot] = SHIFT(MUL(t113 - t114, costab16)); + + t115 = t73 + t74; + t116 = t75 + t76; + + t32 = t115 + t116; + + /* 1 */ hi[14][slot] = SHIFT(t32); + + t118 = t78 + t79; + t119 = t80 + t81; + + t58 = t118 + t119; + + /* 2 */ hi[13][slot] = SHIFT(t58); + + t121 = t83 + t84; + t122 = t85 + t86; + + t67 = t121 + t122; + + t49 = (t67 << 1) - t32; + + /* 3 */ hi[12][slot] = SHIFT(t49); + + t125 = t89 + t90; + t126 = t91 + t92; + + t93 = t125 + t126; + + /* 4 */ hi[11][slot] = SHIFT(t93); + + t128 = t94 + t95; + t129 = t96 + t97; + + t98 = t128 + t129; + + t68 = (t98 << 1) - t49; + + /* 5 */ hi[10][slot] = SHIFT(t68); + + t132 = t100 + t101; + t133 = t102 + t103; + + t104 = t132 + t133; + + t82 = (t104 << 1) - t58; + + /* 6 */ hi[ 9][slot] = SHIFT(t82); + + t136 = t106 + t107; + t137 = t108 + t109; + + t110 = t136 + t137; + + t87 = (t110 << 1) - t67; + + t77 = (t87 << 1) - t68; + + /* 7 */ hi[ 8][slot] = SHIFT(t77); + + t141 = MUL(t69 - t70, costab8); + t142 = MUL(t71 - t72, costab24); + t143 = t141 + t142; + + /* 8 */ hi[ 7][slot] = SHIFT(t143); + /* 24 */ lo[ 8][slot] = + SHIFT((MUL(t141 - t142, costab16) << 1) - t143); + + t144 = MUL(t73 - t74, costab8); + t145 = MUL(t75 - t76, costab24); + t146 = t144 + t145; + + t88 = (t146 << 1) - t77; + + /* 9 */ hi[ 6][slot] = SHIFT(t88); + + t148 = MUL(t78 - t79, costab8); + t149 = MUL(t80 - t81, costab24); + t150 = t148 + t149; + + t105 = (t150 << 1) - t82; + + /* 10 */ hi[ 5][slot] = SHIFT(t105); + + t152 = MUL(t83 - t84, costab8); + t153 = MUL(t85 - t86, costab24); + t154 = t152 + t153; + + t111 = (t154 << 1) - t87; + + t99 = (t111 << 1) - t88; + + /* 11 */ hi[ 4][slot] = SHIFT(t99); + + t157 = MUL(t89 - t90, costab8); + t158 = MUL(t91 - t92, costab24); + t159 = t157 + t158; + + t127 = (t159 << 1) - t93; + + /* 12 */ hi[ 3][slot] = SHIFT(t127); + + t160 = (MUL(t125 - t126, costab16) << 1) - t127; + + /* 20 */ lo[ 4][slot] = SHIFT(t160); + /* 28 */ lo[12][slot] = + SHIFT((((MUL(t157 - t158, costab16) << 1) - t159) << 1) - t160); + + t161 = MUL(t94 - t95, costab8); + t162 = MUL(t96 - t97, costab24); + t163 = t161 + t162; + + t130 = (t163 << 1) - t98; + + t112 = (t130 << 1) - t99; + + /* 13 */ hi[ 2][slot] = SHIFT(t112); + + t164 = (MUL(t128 - t129, costab16) << 1) - t130; + + t166 = MUL(t100 - t101, costab8); + t167 = MUL(t102 - t103, costab24); + t168 = t166 + t167; + + t134 = (t168 << 1) - t104; + + t120 = (t134 << 1) - t105; + + /* 14 */ hi[ 1][slot] = SHIFT(t120); + + t135 = (MUL(t118 - t119, costab16) << 1) - t120; + + /* 18 */ lo[ 2][slot] = SHIFT(t135); + + t169 = (MUL(t132 - t133, costab16) << 1) - t134; + + t151 = (t169 << 1) - t135; + + /* 22 */ lo[ 6][slot] = SHIFT(t151); + + t170 = (((MUL(t148 - t149, costab16) << 1) - t150) << 1) - t151; + + /* 26 */ lo[10][slot] = SHIFT(t170); + /* 30 */ lo[14][slot] = + SHIFT((((((MUL(t166 - t167, costab16) << 1) - + t168) << 1) - t169) << 1) - t170); + + t171 = MUL(t106 - t107, costab8); + t172 = MUL(t108 - t109, costab24); + t173 = t171 + t172; + + t138 = (t173 << 1) - t110; + + t123 = (t138 << 1) - t111; + + t139 = (MUL(t121 - t122, costab16) << 1) - t123; + + t117 = (t123 << 1) - t112; + + /* 15 */ hi[ 0][slot] = SHIFT(t117); + + t124 = (MUL(t115 - t116, costab16) << 1) - t117; + + /* 17 */ lo[ 1][slot] = SHIFT(t124); + + t131 = (t139 << 1) - t124; + + /* 19 */ lo[ 3][slot] = SHIFT(t131); + + t140 = (t164 << 1) - t131; + + /* 21 */ lo[ 5][slot] = SHIFT(t140); + + t174 = (MUL(t136 - t137, costab16) << 1) - t138; + + t155 = (t174 << 1) - t139; + + t147 = (t155 << 1) - t140; + + /* 23 */ lo[ 7][slot] = SHIFT(t147); + + t156 = (((MUL(t144 - t145, costab16) << 1) - t146) << 1) - t147; + + /* 25 */ lo[ 9][slot] = SHIFT(t156); + + t175 = (((MUL(t152 - t153, costab16) << 1) - t154) << 1) - t155; + + t165 = (t175 << 1) - t156; + + /* 27 */ lo[11][slot] = SHIFT(t165); + + t176 = (((((MUL(t161 - t162, costab16) << 1) - + t163) << 1) - t164) << 1) - t165; + + /* 29 */ lo[13][slot] = SHIFT(t176); + /* 31 */ lo[15][slot] = + SHIFT((((((((MUL(t171 - t172, costab16) << 1) - + t173) << 1) - t174) << 1) - t175) << 1) - t176); + + /* + * Totals: + * 80 multiplies + * 80 additions + * 119 subtractions + * 49 shifts (not counting SSO) + */ +} + +# undef MUL +# undef SHIFT + +/* third SSO shift and/or D[] optimization preshift */ + +# if defined(OPT_SSO) +# if MAD_F_FRACBITS != 28 +# error "MAD_F_FRACBITS must be 28 to use OPT_SSO" +# endif +# define ML0(hi, lo, x, y) ((lo) = (x) * (y)) +# define MLA(hi, lo, x, y) ((lo) += (x) * (y)) +# define MLZ(hi, lo) ((void) (hi), (mad_fixed_t) (lo)) +# define SHIFT(x) ((x) >> 2) +# define PRESHIFT(x) ((MAD_F(x) + (1L << 13)) >> 14) +# else +# define ML0(hi, lo, x, y) MAD_F_ML0((hi), (lo), (x), (y)) +# define MLA(hi, lo, x, y) MAD_F_MLA((hi), (lo), (x), (y)) +# define MLZ(hi, lo) MAD_F_MLZ((hi), (lo)) +# define SHIFT(x) (x) +# if defined(MAD_F_SCALEBITS) +# undef MAD_F_SCALEBITS +# define MAD_F_SCALEBITS (MAD_F_FRACBITS - 12) +# define PRESHIFT(x) (MAD_F(x) >> 12) +# else +# define PRESHIFT(x) MAD_F(x) +# endif +# endif + +static +mad_fixed_t const D[17][32] = { +# include "D.dat" +}; + +/* 3. called to process output */ + +int speed = 0, nchan = 0; + +# ifndef EMBED +int output_s(unsigned char const *ptr, unsigned int len); +# endif + +static inline void +output(struct mad_pcm *pcm) +{ + unsigned int nchannels; + union audio_control control; + mad_fixed_t *ch1, *ch2; + + nchannels = pcm->channels; + + if (nchannels != nchan || speed != pcm->samplerate) + { +# ifndef EMBED + control.command = AUDIO_COMMAND_CONFIG; + + control.config.channels = nchannels; + control.config.speed = pcm->samplerate; + + if (audio_oss(&control) == -1) + return; +# endif + nchan = nchannels; + speed = pcm->samplerate; + } + ch1 = &pcm->samples[0][0]; + ch2 = &pcm->samples[1][0]; + + if (nchan == 1) + ch2 = ch1; + + { + unsigned char data[MAX_NSAMPLES * 4 * 2]; + unsigned int len; + + len = audio_pcm_s16le(data, pcm->length, ch1, ch2); +# ifndef EMBED + output_s(data, len); +# endif + } + return; +} + +# if defined(ASO_SYNTH) +void synth_full(struct mad_synth *, struct mad_frame const *, + unsigned int, unsigned int); +# else +/* + * NAME: synth->full() + * DESCRIPTION: perform full frequency PCM synthesis + */ +static inline +void synth_full(struct mad_synth *synth, struct mad_frame const *frame, + unsigned int nch, unsigned int ns) +{ + unsigned int phase, ch, s, sb, pe, po; + mad_fixed_t *pcm1, *pcm2, (*filter)[2][2][16][8]; + mad_fixed_t const (*sbsample)[36][32]; + register mad_fixed_t (*fe)[8], (*fx)[8], (*fo)[8]; + register mad_fixed_t const (*Dptr)[32], *ptr; + register mad_fixed64hi_t hi; + register mad_fixed64lo_t lo; + + phase = synth->phase; + + for (s = 0; s < ns; ++s) { + for (ch = 0; ch < nch; ++ch) { + sbsample = &frame->sbsample[ch]; + filter = &synth->filter[ch]; + pcm1 = synth->pcm.samples[ch]; + + dct32((*sbsample)[s], phase >> 1, + (*filter)[0][phase & 1], (*filter)[1][phase & 1]); + + pe = phase & ~1; + po = ((phase - 1) & 0xf) | 1; + + /* calculate 32 samples */ + + fe = &(*filter)[0][ phase & 1][0]; + fx = &(*filter)[0][~phase & 1][0]; + fo = &(*filter)[1][~phase & 1][0]; + + Dptr = &D[0]; + + ptr = *Dptr + pe; + ML0(hi, lo, (*fe)[0], ptr[ 0]); + MLA(hi, lo, (*fe)[1], ptr[14]); + MLA(hi, lo, (*fe)[2], ptr[12]); + MLA(hi, lo, (*fe)[3], ptr[10]); + MLA(hi, lo, (*fe)[4], ptr[ 8]); + MLA(hi, lo, (*fe)[5], ptr[ 6]); + MLA(hi, lo, (*fe)[6], ptr[ 4]); + MLA(hi, lo, (*fe)[7], ptr[ 2]); + + ptr = *Dptr + po; + MLA(hi, lo, (*fx)[0], -ptr[ 0]); + MLA(hi, lo, (*fx)[1], -ptr[14]); + MLA(hi, lo, (*fx)[2], -ptr[12]); + MLA(hi, lo, (*fx)[3], -ptr[10]); + MLA(hi, lo, (*fx)[4], -ptr[ 8]); + MLA(hi, lo, (*fx)[5], -ptr[ 6]); + MLA(hi, lo, (*fx)[6], -ptr[ 4]); + MLA(hi, lo, (*fx)[7], -ptr[ 2]); + + *pcm1++ = SHIFT(MLZ(hi, lo)); + + pcm2 = pcm1 + 30; + + for (sb = 1; sb < 16; ++sb) { + ++fe; + ++Dptr; + + /* D[32 - sb][i] == -D[sb][31 - i] */ + + ptr = *Dptr + pe; + ML0(hi, lo, (*fe)[7], ptr[ 2]); + MLA(hi, lo, (*fe)[6], ptr[ 4]); + MLA(hi, lo, (*fe)[5], ptr[ 6]); + MLA(hi, lo, (*fe)[4], ptr[ 8]); + MLA(hi, lo, (*fe)[3], ptr[10]); + MLA(hi, lo, (*fe)[2], ptr[12]); + MLA(hi, lo, (*fe)[1], ptr[14]); + MLA(hi, lo, (*fe)[0], ptr[ 0]); + + ptr = *Dptr + po; + MLA(hi, lo, (*fo)[0], -ptr[ 0]); + MLA(hi, lo, (*fo)[1], -ptr[14]); + MLA(hi, lo, (*fo)[2], -ptr[12]); + MLA(hi, lo, (*fo)[3], -ptr[10]); + MLA(hi, lo, (*fo)[4], -ptr[ 8]); + MLA(hi, lo, (*fo)[5], -ptr[ 6]); + MLA(hi, lo, (*fo)[6], -ptr[ 4]); + MLA(hi, lo, (*fo)[7], -ptr[ 2]); + + *pcm1++ = SHIFT(MLZ(hi, lo)); + + ptr = *Dptr - po; + ML0(hi, lo, (*fo)[7], ptr[31 - 2]); + MLA(hi, lo, (*fo)[6], ptr[31 - 4]); + MLA(hi, lo, (*fo)[5], ptr[31 - 6]); + MLA(hi, lo, (*fo)[4], ptr[31 - 8]); + MLA(hi, lo, (*fo)[3], ptr[31 - 10]); + MLA(hi, lo, (*fo)[2], ptr[31 - 12]); + MLA(hi, lo, (*fo)[1], ptr[31 - 14]); + MLA(hi, lo, (*fo)[0], ptr[31 - 16]); + + ptr = *Dptr - pe; + MLA(hi, lo, (*fe)[0], ptr[31 - 16]); + MLA(hi, lo, (*fe)[1], ptr[31 - 14]); + MLA(hi, lo, (*fe)[2], ptr[31 - 12]); + MLA(hi, lo, (*fe)[3], ptr[31 - 10]); + MLA(hi, lo, (*fe)[4], ptr[31 - 8]); + MLA(hi, lo, (*fe)[5], ptr[31 - 6]); + MLA(hi, lo, (*fe)[6], ptr[31 - 4]); + MLA(hi, lo, (*fe)[7], ptr[31 - 2]); + + *pcm2-- = SHIFT(MLZ(hi, lo)); + + ++fo; + } + + ++Dptr; + + ptr = *Dptr + po; + ML0(hi, lo, (*fo)[0], ptr[ 0]); + MLA(hi, lo, (*fo)[1], ptr[14]); + MLA(hi, lo, (*fo)[2], ptr[12]); + MLA(hi, lo, (*fo)[3], ptr[10]); + MLA(hi, lo, (*fo)[4], ptr[ 8]); + MLA(hi, lo, (*fo)[5], ptr[ 6]); + MLA(hi, lo, (*fo)[6], ptr[ 4]); + MLA(hi, lo, (*fo)[7], ptr[ 2]); + + *pcm1 = SHIFT(-MLZ(hi, lo)); + } + + phase = (phase + 1) % 16; + + synth->pcm.length = 32; + output (&synth->pcm); + } +} +# endif + +/* + * NAME: synth->frame() + * DESCRIPTION: perform PCM synthesis of frame subband samples + */ +void inline mad_synth_frame(struct mad_synth *synth, struct mad_frame const *frame) +{ + unsigned int nch, ns; + + nch = MAD_NCHANNELS(&frame->header); + ns = MAD_NSBSAMPLES(&frame->header); + + synth->pcm.samplerate = frame->header.samplerate; + synth->pcm.channels = nch; + synth->pcm.length = 32 * ns; + + synth_full(synth, frame, nch, ns); + + synth->phase = (synth->phase + ns) % 16; +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/mad.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/mad.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/mad.h (revision 782) @@ -0,0 +1,928 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * If you would like to negotiate alternate licensing terms, you may do + * so by contacting the author: Robert Leslie + */ + +# define FPM_DEFAULT + +# define SIZEOF_INT 2 +# define SIZEOF_LONG 4 +# define SIZEOF_LONG_LONG 8 + +/* Id: fixed.h,v 1.1.1.1 2001/06/19 11:12:37 markom Exp */ + +# ifndef LIBMAD_FIXED_H +# define LIBMAD_FIXED_H + +# if SIZEOF_INT >= 4 +typedef signed int mad_fixed_t; + +typedef signed int mad_fixed64hi_t; +typedef unsigned int mad_fixed64lo_t; +# else +typedef signed long mad_fixed_t; + +typedef signed long mad_fixed64hi_t; +typedef unsigned long mad_fixed64lo_t; +# endif + +/* + * Fixed-point format: 0xABBBBBBB + * A == whole part (sign + 3 bits) + * B == fractional part (28 bits) + * + * Values are signed two's complement, so the effective range is: + * 0x80000000 to 0x7fffffff + * -8.0 to +7.9999999962747097015380859375 + * + * The smallest representable value is: + * 0x00000001 == 0.0000000037252902984619140625 (i.e. about 3.725e-9) + * + * 28 bits of fractional accuracy represent about + * 8.6 digits of decimal accuracy. + * + * Fixed-point numbers can be added or subtracted as normal + * integers, but multiplication requires shifting the 64-bit result + * from 56 fractional bits back to 28 (and rounding.) + * + * Changing the definition of MAD_F_FRACBITS is only partially + * supported, and must be done with care. + */ + +# define MAD_F_FRACBITS 28 + +# if MAD_F_FRACBITS == 28 +# define MAD_F(x) ((mad_fixed_t) (x##L)) +# else +# if MAD_F_FRACBITS < 28 +# warning "MAD_F_FRACBITS < 28" +# define MAD_F(x) ((mad_fixed_t) \ + (((x##L) + \ + (1L << (28 - MAD_F_FRACBITS - 1))) >> \ + (28 - MAD_F_FRACBITS))) +# elif MAD_F_FRACBITS > 28 +# error "MAD_F_FRACBITS > 28 not currently supported" +# define MAD_F(x) ((mad_fixed_t) \ + ((x##L) << (MAD_F_FRACBITS - 28))) +# endif +# endif + +# define MAD_F_MIN ((mad_fixed_t) -0x80000000L) +# define MAD_F_MAX ((mad_fixed_t) +0x7fffffffL) + +# define MAD_F_ONE MAD_F(0x10000000) + +#ifndef EMBED +# define mad_f_tofixed(x) ((mad_fixed_t) \ + ((x) * (double) (1L << MAD_F_FRACBITS) + 0.5)) +# define mad_f_todouble(x) ((double) \ + ((x) / (double) (1L << MAD_F_FRACBITS))) +#endif + +# define mad_f_intpart(x) ((x) >> MAD_F_FRACBITS) +# define mad_f_fracpart(x) ((x) & ((1L << MAD_F_FRACBITS) - 1)) + /* (x should be positive) */ + +# define mad_f_fromint(x) ((x) << MAD_F_FRACBITS) + +# define mad_f_add(x, y) ((x) + (y)) +# define mad_f_sub(x, y) ((x) - (y)) + +# if defined(FPM_64BIT) + +/* + * This version should be the most accurate if 64-bit (long long) types are + * supported by the compiler, although it may not be the most efficient. + */ +# if defined(OPT_ACCURACY) +# define mad_f_mul(x, y) \ + ((mad_fixed_t) \ + ((((signed long long) (x) * (y)) + \ + (1L << (MAD_F_SCALEBITS - 1))) >> MAD_F_SCALEBITS)) +# else +# define mad_f_mul(x, y) \ + ((mad_fixed_t) (((signed long long) (x) * (y)) >> MAD_F_SCALEBITS)) +# endif + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- Intel --------------------------------------------------------------- */ +# elif defined(FPM_INTEL) + +/* + * This Intel version is fast and accurate; the disposition of the least + * significant bit depends on OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("imull %3" \ + : "=a" (lo), "=d" (hi) \ + : "%a" (x), "rm" (y) \ + : "cc") + +# if defined(OPT_ACCURACY) +/* + * This gives best accuracy but is not very fast. + */ +# define MAD_F_MLA(hi, lo, x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + MAD_F_MLX(__hi, __lo, (x), (y)); \ + asm ("addl %2,%0\n\t" \ + "adcl %3,%1" \ + : "=rm" (lo), "=rm" (hi) \ + : "r" (__lo), "r" (__hi), "0" (lo), "1" (hi) \ + : "cc"); \ + }) +# endif /* OPT_ACCURACY */ + +# if defined(OPT_ACCURACY) +/* + * Surprisingly, this is faster than SHRD followed by ADC. + */ +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed64hi_t __hi_; \ + mad_fixed64lo_t __lo_; \ + mad_fixed_t __result; \ + asm ("addl %4,%2\n\t" \ + "adcl %5,%3" \ + : "=rm" (__lo_), "=rm" (__hi_) \ + : "0" (lo), "1" (hi), \ + "ir" (1L << (MAD_F_SCALEBITS - 1)), "ir" (0) \ + : "cc"); \ + asm ("shrdl %3,%2,%1" \ + : "=rm" (__result) \ + : "0" (__lo_), "r" (__hi_), "I" (MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) +# else +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + asm ("shrdl %3,%2,%1" \ + : "=rm" (__result) \ + : "0" (lo), "r" (hi), "I" (MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) +# endif /* OPT_ACCURACY */ + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- ARM ----------------------------------------------------------------- */ + +# elif defined(FPM_ARM) + +/* + * This ARM V4 version is as accurate as FPM_64BIT but much faster. The + * least significant bit is properly rounded at no CPU cycle cost! + */ +# if 1 +/* + * There's a bug somewhere, possibly in the compiler, that sometimes makes + * this necessary instead of the default implementation via MAD_F_MLX and + * mad_f_scale64. It may be related to the use (or lack) of + * -finline-functions and/or -fstrength-reduce. + * + * This is also apparently faster than MAD_F_MLX/mad_f_scale64. + */ +# define mad_f_mul(x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + mad_fixed_t __result; \ + asm ("smull %0, %1, %3, %4\n\t" \ + "movs %0, %0, lsr %5\n\t" \ + "adc %2, %0, %1, lsl %6" \ + : "=&r" (__lo), "=&r" (__hi), "=r" (__result) \ + : "%r" (x), "r" (y), \ + "M" (MAD_F_SCALEBITS), "M" (32 - MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) +# endif + +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("smull %0, %1, %2, %3" \ + : "=&r" (lo), "=&r" (hi) \ + : "%r" (x), "r" (y)) + +# define MAD_F_MLA(hi, lo, x, y) \ + asm ("smlal %0, %1, %2, %3" \ + : "+r" (lo), "+r" (hi) \ + : "%r" (x), "r" (y)) + +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + asm ("movs %0, %1, lsr %3\n\t" \ + "adc %0, %0, %2, lsl %4" \ + : "=r" (__result) \ + : "r" (lo), "r" (hi), \ + "M" (MAD_F_SCALEBITS), "M" (32 - MAD_F_SCALEBITS) \ + : "cc"); \ + __result; \ + }) + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- MIPS ---------------------------------------------------------------- */ + +# elif defined(FPM_MIPS) + +/* + * This MIPS version is fast and accurate; the disposition of the least + * significant bit depends on OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("mult %2,%3" \ + : "=l" (lo), "=h" (hi) \ + : "%r" (x), "r" (y)) + +# if defined(HAVE_MADD_ASM) +# define MAD_F_MLA(hi, lo, x, y) \ + asm ("madd %2,%3" \ + : "+l" (lo), "+h" (hi) \ + : "%r" (x), "r" (y)) +# elif defined(HAVE_MADD16_ASM) +/* + * This loses significant accuracy due to the 16-bit integer limit in the + * multiply/accumulate instruction. + */ +# define MAD_F_ML0(hi, lo, x, y) \ + asm ("mult %2,%3" \ + : "=l" (lo), "=h" (hi) \ + : "%r" ((x) >> 12), "r" ((y) >> 16)) +# define MAD_F_MLA(hi, lo, x, y) \ + asm ("madd16 %2,%3" \ + : "+l" (lo), "+h" (hi) \ + : "%r" ((x) >> 12), "r" ((y) >> 16)) +# define MAD_F_MLZ(hi, lo) ((mad_fixed_t) (lo)) +# endif + +# if defined(OPT_SPEED) +# define mad_f_scale64(hi, lo) \ + ((mad_fixed_t) ((hi) << (32 - MAD_F_SCALEBITS))) +# define MAD_F_SCALEBITS MAD_F_FRACBITS +# endif + +/* --- SPARC --------------------------------------------------------------- */ + +# elif defined(FPM_SPARC) + +/* + * This SPARC V8 version is fast and accurate; the disposition of the least + * significant bit depends on OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("smul %2, %3, %0\n\t" \ + "rd %%y, %1" \ + : "=r" (lo), "=r" (hi) \ + : "%r" (x), "rI" (y)) + +/* --- PowerPC ------------------------------------------------------------- */ + +# elif defined(FPM_PPC) + +/* + * This PowerPC version is tuned for the 4xx embedded processors. It is + * effectively a tuned version of FPM_64BIT. It is a little faster and just + * as accurate. The disposition of the least significant bit depends on + * OPT_ACCURACY via mad_f_scale64(). + */ +# define MAD_F_MLX(hi, lo, x, y) \ + asm ("mulhw %1, %2, %3\n\t" \ + "mullw %0, %2, %3" \ + : "=&r" (lo), "=&r" (hi) \ + : "%r" (x), "r" (y)) + +# define MAD_F_MLA(hi, lo, x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + MAD_F_MLX(__hi, __lo, (x), (y)); \ + asm ("addc %0, %2, %3\n\t" \ + "adde %1, %4, %5" \ + : "=r" (lo), "=r" (hi) \ + : "%r" (__lo), "0" (lo), "%r" (__hi), "1" (hi)); \ + }) + +# if defined(OPT_ACCURACY) +/* + * This is accurate and ~2 - 2.5 times slower than the unrounded version. + * + * The __volatile__ improves the generated code by another 5% (fewer spills + * to memory); eventually they should be removed. + */ +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + mad_fixed64hi_t __hi_; \ + mad_fixed64lo_t __lo_; \ + asm __volatile__ ("addc %0, %2, %4\n\t" \ + "addze %1, %3" \ + : "=r" (__lo_), "=r" (__hi_) \ + : "r" (lo), "r" (hi), "r" (1 << (MAD_F_SCALEBITS - 1))); \ + asm __volatile__ ("rlwinm %0, %2,32-%3,0,%3-1\n\t" \ + "rlwimi %0, %1,32-%3,%3,31" \ + : "=&r" (__result) \ + : "r" (__lo_), "r" (__hi_), "I" (MAD_F_SCALEBITS)); \ + __result; \ + }) +# else +# define mad_f_scale64(hi, lo) \ + ({ mad_fixed_t __result; \ + asm ("rlwinm %0, %2,32-%3,0,%3-1\n\t" \ + "rlwimi %0, %1,32-%3,%3,31" \ + : "=r" (__result) \ + : "r" (lo), "r" (hi), "I" (MAD_F_SCALEBITS)); \ + __result; \ + }) +# endif /* OPT_ACCURACY */ + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* ------ OR32 ------------------------------------------------------------- */ + +# elif defined(FPM_OR32) + +/* We assume here that we always call macros in following sequence: + MAD_F_ML0 + MAD_F_MLA + ... + MAD_F_MLA + MAD_F_MLX +*/ + +# define MAD_F_MLX(hi, lo, x, y) \ + asm volatile ("l.mac %0,%1" : : "%r" (x), "r" (y)) + +# define MAD_F_MLA(hi, lo, x, y) MAX_F_MLX(hi, lo, x, y) + +# define MAX_F_ML0(hi, lo, x, y) MAX_F_MLX(hi, lo, x, y) + +# define MAX_F_MLZ(hi, lo, x, y) \ + asm volatile ("l.macrc %0" : "=r" (lo)) + +# define MAD_F_SCALEBITS MAD_F_FRACBITS + +/* --- Default ------------------------------------------------------------- */ + +# elif defined(FPM_DEFAULT) + +/* + * This version is the most portable but it loses significant accuracy. + * Furthermore, accuracy is biased against the second argument, so care + * should be taken when ordering operands. + * + * The scale factors are constant as this is not used with SSO. + * + * Pre-rounding is required to stay within the limits of compliance. + */ +# define mad_f_mul(x, y) ( (((x) + (1L << 11)) >> 12) * \ + (((y) + (1L << 15)) >> 16) ) +/*# define mad_f_mul(x, y) ((x)+(y))*/ +/* --- Default 16 ------------------------------------------------------------- */ + +# elif defined(FPM_DEFAULT16) + +/* + * This version is the most portable but it loses significant accuracy. + * Furthermore, accuracy is biased against the second argument, so care + * should be taken when ordering operands. + * + * The scale factors are constant as this is not used with SSO. + * + * Pre-rounding is required to stay within the limits of compliance. + */ +# define mad_f_mul(x, y) (( (((x) + (1L << 15)) >> 16) * \ + (((y) + (1L << 15)) >> 16) ) << 4) +/* ------------------------------------------------------------------------- */ + +# else +# error "no FPM selected" +# endif + +/* default implementations */ + +# if !defined(mad_f_mul) +# define mad_f_mul(x, y) \ + ({ mad_fixed64hi_t __hi; \ + mad_fixed64lo_t __lo; \ + MAD_F_MLX(__hi, __lo, (x), (y)); \ + mad_f_scale64(__hi, __lo); \ + }) +# endif + +# if !defined(MAD_F_MLA) +# define MAD_F_ML0(hi, lo, x, y) ((lo) = mad_f_mul((x), (y))) +# define MAD_F_MLA(hi, lo, x, y) ((lo) += mad_f_mul((x), (y))) +# define MAD_F_MLZ(hi, lo) ((void) (hi), (mad_fixed_t) (lo)) +# endif + +# if !defined(MAD_F_ML0) +# define MAD_F_ML0(hi, lo, x, y) MAD_F_MLX((hi), (lo), (x), (y)) +# endif + +# if !defined(MAD_F_MLZ) +# define MAD_F_MLZ(hi, lo) mad_f_scale64((hi), (lo)) +# endif + +# if !defined(mad_f_scale64) +# if defined(OPT_ACCURACY) +# define mad_f_scale64(hi, lo) \ + ((((mad_fixed_t) \ + (((hi) << (32 - (MAD_F_SCALEBITS - 1))) | \ + ((lo) >> (MAD_F_SCALEBITS - 1)))) + 1) >> 1) +# else +# define mad_f_scale64(hi, lo) \ + ((mad_fixed_t) \ + (((hi) << (32 - MAD_F_SCALEBITS)) | \ + ((lo) >> MAD_F_SCALEBITS))) +# endif +# define MAD_F_SCALEBITS MAD_F_FRACBITS +# endif + +/* miscellaneous C routines */ + +mad_fixed_t mad_f_abs(mad_fixed_t); + +# endif + +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: mad.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_BIT_H +# define LIBMAD_BIT_H + +struct mad_bitptr { + unsigned char const *byte; + unsigned short cache; + unsigned short left; +}; + +void mad_bit_init(struct mad_bitptr *, unsigned char const *); + +# define mad_bit_finish(bitptr) /* nothing */ + +unsigned int mad_bit_length(struct mad_bitptr const *, + struct mad_bitptr const *); + +# define mad_bit_bitsleft(bitptr) ((bitptr)->left) +unsigned char const *mad_bit_nextbyte(struct mad_bitptr const *); + +void mad_bit_skip(struct mad_bitptr *, unsigned int); +unsigned long mad_bit_read(struct mad_bitptr *, unsigned int); +void mad_bit_write(struct mad_bitptr *, unsigned int, unsigned long); + +unsigned short mad_bit_crc(struct mad_bitptr, unsigned int, unsigned short); + +# endif + +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: mad.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_TIMER_H +# define LIBMAD_TIMER_H + +typedef struct { + signed long seconds; /* whole seconds */ + unsigned long fraction; /* 1/MAD_TIMER_RESOLUTION seconds */ +} mad_timer_t; + +extern mad_timer_t const mad_timer_zero; + +# define MAD_TIMER_RESOLUTION 352800000UL + +enum mad_units { + MAD_UNITS_HOURS = -2, + MAD_UNITS_MINUTES = -1, + MAD_UNITS_SECONDS = 0, + + /* metric units */ + + MAD_UNITS_DECISECONDS = 10, + MAD_UNITS_CENTISECONDS = 100, + MAD_UNITS_MILLISECONDS = 1000, + + /* audio sample units */ + + MAD_UNITS_8000_HZ = 8000, + MAD_UNITS_11025_HZ = 11025, + MAD_UNITS_12000_HZ = 12000, + + MAD_UNITS_16000_HZ = 16000, + MAD_UNITS_22050_HZ = 22050, + MAD_UNITS_24000_HZ = 24000, + + MAD_UNITS_32000_HZ = 32000, + MAD_UNITS_44100_HZ = 44100, + MAD_UNITS_48000_HZ = 48000, + + /* video frame/field units */ + + MAD_UNITS_24_FPS = 24, + MAD_UNITS_25_FPS = 25, + MAD_UNITS_30_FPS = 30, + MAD_UNITS_48_FPS = 48, + MAD_UNITS_50_FPS = 50, + MAD_UNITS_60_FPS = 60, + + /* CD audio frames */ + + MAD_UNITS_75_FPS = 75, + + /* video drop-frame units */ + + MAD_UNITS_23_976_FPS = -24, + MAD_UNITS_24_975_FPS = -25, + MAD_UNITS_29_97_FPS = -30, + MAD_UNITS_47_952_FPS = -48, + MAD_UNITS_49_95_FPS = -50, + MAD_UNITS_59_94_FPS = -60 +}; + +# define mad_timer_reset(timer) (*(timer) = mad_timer_zero) + +int mad_timer_compare(mad_timer_t, mad_timer_t); + +# define mad_timer_sign(timer) mad_timer_compare((timer), mad_timer_zero) + +void mad_timer_negate(mad_timer_t *); +mad_timer_t mad_timer_abs(mad_timer_t); + +void mad_timer_set(mad_timer_t *, unsigned long, unsigned long, unsigned long); +void mad_timer_add(mad_timer_t *, mad_timer_t); +void mad_timer_multiply(mad_timer_t *, signed long); + +signed long mad_timer_count(mad_timer_t, enum mad_units); +unsigned long mad_timer_fraction(mad_timer_t, unsigned long); +void mad_timer_string(mad_timer_t, char *, char const *, + enum mad_units, enum mad_units, unsigned long); + +# endif + +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: mad.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_STREAM_H +# define LIBMAD_STREAM_H + + +# define MAD_BUFFER_GUARD 8 +# define MAD_BUFFER_MDLEN (511 + 2048 + MAD_BUFFER_GUARD) + +enum mad_error { + MAD_ERROR_BUFLEN = 0x0001, /* input buffer too small (or EOF) */ + MAD_ERROR_BUFPTR = 0x0002, /* invalid (null) buffer pointer */ + + MAD_ERROR_NOMEM = 0x0031, /* not enough memory */ + + MAD_ERROR_LOSTSYNC = 0x0101, /* lost synchronization */ + MAD_ERROR_BADLAYER = 0x0102, /* reserved header layer value */ + MAD_ERROR_BADBITRATE = 0x0103, /* forbidden bitrate value */ + MAD_ERROR_BADSAMPLERATE = 0x0104, /* reserved sample frequency value */ + MAD_ERROR_BADEMPHASIS = 0x0105, /* reserved emphasis value */ + + MAD_ERROR_BADCRC = 0x0201, /* CRC check failed */ + MAD_ERROR_BADBITALLOC = 0x0211, /* forbidden bit allocation value */ + MAD_ERROR_BADSCALEFACTOR = 0x0221, /* bad scalefactor index */ + MAD_ERROR_BADFRAMELEN = 0x0231, /* bad frame length */ + MAD_ERROR_BADBIGVALUES = 0x0232, /* bad big_values count */ + MAD_ERROR_BADBLOCKTYPE = 0x0233, /* reserved block_type */ + MAD_ERROR_BADSCFSI = 0x0234, /* bad scalefactor selection info */ + MAD_ERROR_BADDATAPTR = 0x0235, /* bad main_data_begin pointer */ + MAD_ERROR_BADPART3LEN = 0x0236, /* bad audio data length */ + MAD_ERROR_BADHUFFTABLE = 0x0237, /* bad Huffman table select */ + MAD_ERROR_BADHUFFDATA = 0x0238, /* Huffman data overrun */ + MAD_ERROR_BADSTEREO = 0x0239 /* incompatible block_type for JS */ +}; + +# define MAD_RECOVERABLE(error) ((error) & 0xff00) + +struct mad_stream { + unsigned char const *buffer; /* input bitstream buffer */ + unsigned char const *bufend; /* end of buffer */ + unsigned long skiplen; /* bytes to skip before next frame */ + + int sync; /* stream sync found */ + unsigned long freerate; /* free bitrate (fixed) */ + + unsigned char const *this_frame; /* start of current frame */ + unsigned char const *next_frame; /* start of next frame */ + struct mad_bitptr ptr; /* current processing bit pointer */ + + struct mad_bitptr anc_ptr; /* ancillary bits pointer */ + unsigned int anc_bitlen; /* number of ancillary bits */ + + unsigned char (*main_data); + /* Layer III main_data() */ + unsigned int md_len; /* bytes in main_data */ + + int options; /* decoding options (see below) */ + enum mad_error error; /* error code (see above) */ +}; + +enum { + MAD_OPTION_IGNORECRC = 0x0001, /* ignore CRC errors */ + MAD_OPTION_HALFSAMPLERATE = 0x0002, /* generate PCM at 1/2 sample rate */ +# if 0 /* not yet implemented */ + MAD_OPTION_LEFTCHANNEL = 0x0010, /* decode left channel only */ + MAD_OPTION_RIGHTCHANNEL = 0x0020, /* decode right channel only */ + MAD_OPTION_SINGLECHANNEL = 0x0030, /* combine channels */ +# endif +}; + +void mad_stream_init(struct mad_stream *); +void mad_stream_finish(struct mad_stream *); + +# define mad_stream_options(stream, opts) ((stream)->options = (opts)) + +void mad_stream_buffer(struct mad_stream *, + unsigned char const *, unsigned long); +void mad_stream_skip(struct mad_stream *, unsigned long); + +int mad_stream_sync(struct mad_stream *); + +# endif + +/* Id: frame.h,v 1.1.1.1 2001/06/19 11:12:42 markom Exp */ + +# ifndef LIBMAD_FRAME_H +# define LIBMAD_FRAME_H + +enum mad_layer { + MAD_LAYER_I = 1, /* Layer I */ + MAD_LAYER_II = 2, /* Layer II */ + MAD_LAYER_III = 3 /* Layer III */ +}; + +enum mad_mode { + MAD_MODE_SINGLE_CHANNEL = 0, /* single channel */ + MAD_MODE_DUAL_CHANNEL = 1, /* dual channel */ + MAD_MODE_JOINT_STEREO = 2, /* joint (MS/intensity) stereo */ + MAD_MODE_STEREO = 3 /* normal LR stereo */ +}; + +enum mad_emphasis { + MAD_EMPHASIS_NONE = 0, /* no emphasis */ + MAD_EMPHASIS_50_15_US = 1, /* 50/15 microseconds emphasis */ + MAD_EMPHASIS_CCITT_J_17 = 3 /* CCITT J.17 emphasis */ +}; + +struct mad_frame { + struct mad_header { + enum mad_layer layer; /* audio layer (1, 2, or 3) */ + enum mad_mode mode; /* channel mode (see above) */ + int mode_extension; /* additional mode info */ + enum mad_emphasis emphasis; /* de-emphasis to use (see above) */ + + unsigned long bitrate; /* stream bitrate (bps) */ + unsigned int samplerate; /* sampling frequency (Hz) */ + + unsigned short crc_check; /* frame CRC accumulator */ + unsigned short crc_target; /* final target CRC checksum */ + + int flags; /* flags (see below) */ + int private_bits; /* private bits (see below) */ + + mad_timer_t duration; /* audio playing time of frame */ + } header; + + int options; /* decoding options (from stream) */ + + mad_fixed_t sbsample[2][36][32]; /* synthesis subband filter samples */ + mad_fixed_t (*overlap)[2][32][18]; /* Layer III block overlap data */ +}; + +# define MAD_NCHANNELS(header) ((header)->mode ? 2 : 1) +# define MAD_NSBSAMPLES(header) \ + ((header)->layer == MAD_LAYER_I ? 12 : \ + (((header)->layer == MAD_LAYER_III && \ + ((header)->flags & MAD_FLAG_LSF_EXT)) ? 18 : 36)) + +enum { + MAD_FLAG_NPRIVATE_III = 0x0007, /* number of Layer III private bits */ + MAD_FLAG_INCOMPLETE = 0x0008, /* header but not data is decoded */ + + MAD_FLAG_PROTECTION = 0x0010, /* frame has CRC protection */ + MAD_FLAG_COPYRIGHT = 0x0020, /* frame is copyright */ + MAD_FLAG_ORIGINAL = 0x0040, /* frame is original (else copy) */ + MAD_FLAG_PADDING = 0x0080, /* frame has additional slot */ + + MAD_FLAG_I_STEREO = 0x0100, /* uses intensity joint stereo */ + MAD_FLAG_MS_STEREO = 0x0200, /* uses middle/side joint stereo */ + MAD_FLAG_FREEFORMAT = 0x0400, /* uses free format bitrate */ + + MAD_FLAG_LSF_EXT = 0x1000, /* lower sampling freq. extension */ + MAD_FLAG_MC_EXT = 0x2000, /* multichannel audio extension */ + MAD_FLAG_MPEG_2_5_EXT = 0x4000 /* MPEG 2.5 (unofficial) extension */ +}; + +enum { + MAD_PRIVATE_HEADER = 0x0100, /* header private bit */ + MAD_PRIVATE_III = 0x001f /* Layer III private bits (up to 5) */ +}; + +void mad_header_init(struct mad_header *); + +# define mad_header_finish(header) /* nothing */ + +int mad_header_decode(struct mad_header *, struct mad_stream *); + +void mad_frame_init(struct mad_frame *); +void mad_frame_finish(struct mad_frame *); + +int mad_frame_decode(struct mad_frame *, struct mad_stream *); + +void mad_frame_mute(struct mad_frame *); + +# endif + +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: mad.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_SYNTH_H +# define LIBMAD_SYNTH_H + + +struct mad_synth { + mad_fixed_t filter[2][2][2][16][8]; /* polyphase filterbank outputs */ + /* [ch][eo][peo][s][v] */ + + unsigned int phase; /* current processing phase */ + + struct mad_pcm { + unsigned int samplerate; /* sampling frequency (Hz) */ + unsigned short channels; /* number of channels */ + unsigned short length; /* number of samples per channel */ + mad_fixed_t samples[2][32]; /* PCM output samples */ + } pcm; +}; + +void mad_synth_init(struct mad_synth *); + +# define mad_synth_finish(synth) /* nothing */ + +void mad_synth_mute(struct mad_synth *); + +void mad_synth_frame(struct mad_synth *, struct mad_frame const *); + +# endif + +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: mad.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_DECODER_H +# define LIBMAD_DECODER_H + + +enum mad_decoder_mode { + MAD_DECODER_MODE_SYNC = 0, + MAD_DECODER_MODE_ASYNC +}; + +enum mad_flow { + MAD_FLOW_CONTINUE = 0x0000, + MAD_FLOW_STOP = 0x0010, + MAD_FLOW_BREAK = 0x0011, + MAD_FLOW_IGNORE = 0x0020 +}; + +struct mad_decoder { + enum mad_decoder_mode mode; + + int options; + + struct { + long pid; + int in; + int out; + } async; + + struct dec_sync_struct { + struct mad_stream stream; + struct mad_frame frame; + struct mad_synth synth; + } *sync; + + void *cb_data; + + enum mad_flow (*input_func)(void *, struct mad_stream *); + enum mad_flow (*error_func)(void *, struct mad_stream *, struct mad_frame *); +}; + +void mad_decoder_init(struct mad_decoder *, void *, + enum mad_flow (*)(void *, struct mad_stream *), + enum mad_flow (*)(void *, struct mad_stream *, struct mad_frame *frame)); +int mad_decoder_finish(struct mad_decoder *); + +# define mad_decoder_options(decoder, opts) ((decoder)->options = (opts)) + +int mad_decoder_run(struct mad_decoder *, enum mad_decoder_mode); +int mad_decoder_message(struct mad_decoder *, void *, unsigned int *); + +# endif +
trunk/orp/orp_soc/sw.old/mad-xess/libmad/mad.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/imdct_s.dat =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/imdct_s.dat (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/imdct_s.dat (revision 782) @@ -0,0 +1,62 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: imdct_s.dat,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + + /* 0 */ { MAD_F(0x09bd7ca0) /* 0.608761429 */, + -MAD_F(0x0ec835e8) /* -0.923879533 */, + -MAD_F(0x0216a2a2) /* -0.130526192 */, + MAD_F(0x0fdcf549) /* 0.991444861 */, + -MAD_F(0x061f78aa) /* -0.382683432 */, + -MAD_F(0x0cb19346) /* -0.793353340 */ }, + + /* 6 */ { -MAD_F(0x0cb19346) /* -0.793353340 */, + MAD_F(0x061f78aa) /* 0.382683432 */, + MAD_F(0x0fdcf549) /* 0.991444861 */, + MAD_F(0x0216a2a2) /* 0.130526192 */, + -MAD_F(0x0ec835e8) /* -0.923879533 */, + -MAD_F(0x09bd7ca0) /* -0.608761429 */ }, + + /* 1 */ { MAD_F(0x061f78aa) /* 0.382683432 */, + -MAD_F(0x0ec835e8) /* -0.923879533 */, + MAD_F(0x0ec835e8) /* 0.923879533 */, + -MAD_F(0x061f78aa) /* -0.382683432 */, + -MAD_F(0x061f78aa) /* -0.382683432 */, + MAD_F(0x0ec835e8) /* 0.923879533 */ }, + + /* 7 */ { -MAD_F(0x0ec835e8) /* -0.923879533 */, + -MAD_F(0x061f78aa) /* -0.382683432 */, + MAD_F(0x061f78aa) /* 0.382683432 */, + MAD_F(0x0ec835e8) /* 0.923879533 */, + MAD_F(0x0ec835e8) /* 0.923879533 */, + MAD_F(0x061f78aa) /* 0.382683432 */ }, + + /* 2 */ { MAD_F(0x0216a2a2) /* 0.130526192 */, + -MAD_F(0x061f78aa) /* -0.382683432 */, + MAD_F(0x09bd7ca0) /* 0.608761429 */, + -MAD_F(0x0cb19346) /* -0.793353340 */, + MAD_F(0x0ec835e8) /* 0.923879533 */, + -MAD_F(0x0fdcf549) /* -0.991444861 */ }, + + /* 8 */ { -MAD_F(0x0fdcf549) /* -0.991444861 */, + -MAD_F(0x0ec835e8) /* -0.923879533 */, + -MAD_F(0x0cb19346) /* -0.793353340 */, + -MAD_F(0x09bd7ca0) /* -0.608761429 */, + -MAD_F(0x061f78aa) /* -0.382683432 */, + -MAD_F(0x0216a2a2) /* -0.130526192 */ }
trunk/orp/orp_soc/sw.old/mad-xess/libmad/imdct_s.dat Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/D.dat =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/D.dat (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/D.dat (revision 782) @@ -0,0 +1,607 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: D.dat,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +/* + * These are the coefficients for the subband synthesis window. This is a + * reordered version of Table B.3 from ISO/IEC 11172-3. + * + * Every value is parameterized so that shift optimizations can be made at + * compile-time. For example, every value can be right-shifted 12 bits to + * minimize multiply instruction times without any loss of accuracy. + */ + + { PRESHIFT(0x00000000) /* 0.000000000 */, /* 0 */ + -PRESHIFT(0x0001d000) /* -0.000442505 */, + PRESHIFT(0x000d5000) /* 0.003250122 */, + -PRESHIFT(0x001cb000) /* -0.007003784 */, + PRESHIFT(0x007f5000) /* 0.031082153 */, + -PRESHIFT(0x01421000) /* -0.078628540 */, + PRESHIFT(0x019ae000) /* 0.100311279 */, + -PRESHIFT(0x09271000) /* -0.572036743 */, + PRESHIFT(0x1251e000) /* 1.144989014 */, + PRESHIFT(0x09271000) /* 0.572036743 */, + PRESHIFT(0x019ae000) /* 0.100311279 */, + PRESHIFT(0x01421000) /* 0.078628540 */, + PRESHIFT(0x007f5000) /* 0.031082153 */, + PRESHIFT(0x001cb000) /* 0.007003784 */, + PRESHIFT(0x000d5000) /* 0.003250122 */, + PRESHIFT(0x0001d000) /* 0.000442505 */, + + PRESHIFT(0x00000000) /* 0.000000000 */, + -PRESHIFT(0x0001d000) /* -0.000442505 */, + PRESHIFT(0x000d5000) /* 0.003250122 */, + -PRESHIFT(0x001cb000) /* -0.007003784 */, + PRESHIFT(0x007f5000) /* 0.031082153 */, + -PRESHIFT(0x01421000) /* -0.078628540 */, + PRESHIFT(0x019ae000) /* 0.100311279 */, + -PRESHIFT(0x09271000) /* -0.572036743 */, + PRESHIFT(0x1251e000) /* 1.144989014 */, + PRESHIFT(0x09271000) /* 0.572036743 */, + PRESHIFT(0x019ae000) /* 0.100311279 */, + PRESHIFT(0x01421000) /* 0.078628540 */, + PRESHIFT(0x007f5000) /* 0.031082153 */, + PRESHIFT(0x001cb000) /* 0.007003784 */, + PRESHIFT(0x000d5000) /* 0.003250122 */, + PRESHIFT(0x0001d000) /* 0.000442505 */ }, + + { -PRESHIFT(0x00001000) /* -0.000015259 */, /* 1 */ + -PRESHIFT(0x0001f000) /* -0.000473022 */, + PRESHIFT(0x000da000) /* 0.003326416 */, + -PRESHIFT(0x00207000) /* -0.007919312 */, + PRESHIFT(0x007d0000) /* 0.030517578 */, + -PRESHIFT(0x0158d000) /* -0.084182739 */, + PRESHIFT(0x01747000) /* 0.090927124 */, + -PRESHIFT(0x099a8000) /* -0.600219727 */, + PRESHIFT(0x124f0000) /* 1.144287109 */, + PRESHIFT(0x08b38000) /* 0.543823242 */, + PRESHIFT(0x01bde000) /* 0.108856201 */, + PRESHIFT(0x012b4000) /* 0.073059082 */, + PRESHIFT(0x0080f000) /* 0.031478882 */, + PRESHIFT(0x00191000) /* 0.006118774 */, + PRESHIFT(0x000d0000) /* 0.003173828 */, + PRESHIFT(0x0001a000) /* 0.000396729 */, + + -PRESHIFT(0x00001000) /* -0.000015259 */, + -PRESHIFT(0x0001f000) /* -0.000473022 */, + PRESHIFT(0x000da000) /* 0.003326416 */, + -PRESHIFT(0x00207000) /* -0.007919312 */, + PRESHIFT(0x007d0000) /* 0.030517578 */, + -PRESHIFT(0x0158d000) /* -0.084182739 */, + PRESHIFT(0x01747000) /* 0.090927124 */, + -PRESHIFT(0x099a8000) /* -0.600219727 */, + PRESHIFT(0x124f0000) /* 1.144287109 */, + PRESHIFT(0x08b38000) /* 0.543823242 */, + PRESHIFT(0x01bde000) /* 0.108856201 */, + PRESHIFT(0x012b4000) /* 0.073059082 */, + PRESHIFT(0x0080f000) /* 0.031478882 */, + PRESHIFT(0x00191000) /* 0.006118774 */, + PRESHIFT(0x000d0000) /* 0.003173828 */, + PRESHIFT(0x0001a000) /* 0.000396729 */ }, + + { -PRESHIFT(0x00001000) /* -0.000015259 */, /* 2 */ + -PRESHIFT(0x00023000) /* -0.000534058 */, + PRESHIFT(0x000de000) /* 0.003387451 */, + -PRESHIFT(0x00245000) /* -0.008865356 */, + PRESHIFT(0x007a0000) /* 0.029785156 */, + -PRESHIFT(0x016f7000) /* -0.089706421 */, + PRESHIFT(0x014a8000) /* 0.080688477 */, + -PRESHIFT(0x0a0d8000) /* -0.628295898 */, + PRESHIFT(0x12468000) /* 1.142211914 */, + PRESHIFT(0x083ff000) /* 0.515609741 */, + PRESHIFT(0x01dd8000) /* 0.116577148 */, + PRESHIFT(0x01149000) /* 0.067520142 */, + PRESHIFT(0x00820000) /* 0.031738281 */, + PRESHIFT(0x0015b000) /* 0.005294800 */, + PRESHIFT(0x000ca000) /* 0.003082275 */, + PRESHIFT(0x00018000) /* 0.000366211 */, + + -PRESHIFT(0x00001000) /* -0.000015259 */, + -PRESHIFT(0x00023000) /* -0.000534058 */, + PRESHIFT(0x000de000) /* 0.003387451 */, + -PRESHIFT(0x00245000) /* -0.008865356 */, + PRESHIFT(0x007a0000) /* 0.029785156 */, + -PRESHIFT(0x016f7000) /* -0.089706421 */, + PRESHIFT(0x014a8000) /* 0.080688477 */, + -PRESHIFT(0x0a0d8000) /* -0.628295898 */, + PRESHIFT(0x12468000) /* 1.142211914 */, + PRESHIFT(0x083ff000) /* 0.515609741 */, + PRESHIFT(0x01dd8000) /* 0.116577148 */, + PRESHIFT(0x01149000) /* 0.067520142 */, + PRESHIFT(0x00820000) /* 0.031738281 */, + PRESHIFT(0x0015b000) /* 0.005294800 */, + PRESHIFT(0x000ca000) /* 0.003082275 */, + PRESHIFT(0x00018000) /* 0.000366211 */ }, + + { -PRESHIFT(0x00001000) /* -0.000015259 */, /* 3 */ + -PRESHIFT(0x00026000) /* -0.000579834 */, + PRESHIFT(0x000e1000) /* 0.003433228 */, + -PRESHIFT(0x00285000) /* -0.009841919 */, + PRESHIFT(0x00765000) /* 0.028884888 */, + -PRESHIFT(0x0185d000) /* -0.095169067 */, + PRESHIFT(0x011d1000) /* 0.069595337 */, + -PRESHIFT(0x0a7fe000) /* -0.656219482 */, + PRESHIFT(0x12386000) /* 1.138763428 */, + PRESHIFT(0x07ccb000) /* 0.487472534 */, + PRESHIFT(0x01f9c000) /* 0.123474121 */, + PRESHIFT(0x00fdf000) /* 0.061996460 */, + PRESHIFT(0x00827000) /* 0.031845093 */, + PRESHIFT(0x00126000) /* 0.004486084 */, + PRESHIFT(0x000c4000) /* 0.002990723 */, + PRESHIFT(0x00015000) /* 0.000320435 */, + + -PRESHIFT(0x00001000) /* -0.000015259 */, + -PRESHIFT(0x00026000) /* -0.000579834 */, + PRESHIFT(0x000e1000) /* 0.003433228 */, + -PRESHIFT(0x00285000) /* -0.009841919 */, + PRESHIFT(0x00765000) /* 0.028884888 */, + -PRESHIFT(0x0185d000) /* -0.095169067 */, + PRESHIFT(0x011d1000) /* 0.069595337 */, + -PRESHIFT(0x0a7fe000) /* -0.656219482 */, + PRESHIFT(0x12386000) /* 1.138763428 */, + PRESHIFT(0x07ccb000) /* 0.487472534 */, + PRESHIFT(0x01f9c000) /* 0.123474121 */, + PRESHIFT(0x00fdf000) /* 0.061996460 */, + PRESHIFT(0x00827000) /* 0.031845093 */, + PRESHIFT(0x00126000) /* 0.004486084 */, + PRESHIFT(0x000c4000) /* 0.002990723 */, + PRESHIFT(0x00015000) /* 0.000320435 */ }, + + { -PRESHIFT(0x00001000) /* -0.000015259 */, /* 4 */ + -PRESHIFT(0x00029000) /* -0.000625610 */, + PRESHIFT(0x000e3000) /* 0.003463745 */, + -PRESHIFT(0x002c7000) /* -0.010848999 */, + PRESHIFT(0x0071e000) /* 0.027801514 */, + -PRESHIFT(0x019bd000) /* -0.100540161 */, + PRESHIFT(0x00ec0000) /* 0.057617187 */, + -PRESHIFT(0x0af15000) /* -0.683914185 */, + PRESHIFT(0x12249000) /* 1.133926392 */, + PRESHIFT(0x075a0000) /* 0.459472656 */, + PRESHIFT(0x0212c000) /* 0.129577637 */, + PRESHIFT(0x00e79000) /* 0.056533813 */, + PRESHIFT(0x00825000) /* 0.031814575 */, + PRESHIFT(0x000f4000) /* 0.003723145 */, + PRESHIFT(0x000be000) /* 0.002899170 */, + PRESHIFT(0x00013000) /* 0.000289917 */, + + -PRESHIFT(0x00001000) /* -0.000015259 */, + -PRESHIFT(0x00029000) /* -0.000625610 */, + PRESHIFT(0x000e3000) /* 0.003463745 */, + -PRESHIFT(0x002c7000) /* -0.010848999 */, + PRESHIFT(0x0071e000) /* 0.027801514 */, + -PRESHIFT(0x019bd000) /* -0.100540161 */, + PRESHIFT(0x00ec0000) /* 0.057617187 */, + -PRESHIFT(0x0af15000) /* -0.683914185 */, + PRESHIFT(0x12249000) /* 1.133926392 */, + PRESHIFT(0x075a0000) /* 0.459472656 */, + PRESHIFT(0x0212c000) /* 0.129577637 */, + PRESHIFT(0x00e79000) /* 0.056533813 */, + PRESHIFT(0x00825000) /* 0.031814575 */, + PRESHIFT(0x000f4000) /* 0.003723145 */, + PRESHIFT(0x000be000) /* 0.002899170 */, + PRESHIFT(0x00013000) /* 0.000289917 */ }, + + { -PRESHIFT(0x00001000) /* -0.000015259 */, /* 5 */ + -PRESHIFT(0x0002d000) /* -0.000686646 */, + PRESHIFT(0x000e4000) /* 0.003479004 */, + -PRESHIFT(0x0030b000) /* -0.011886597 */, + PRESHIFT(0x006cb000) /* 0.026535034 */, + -PRESHIFT(0x01b17000) /* -0.105819702 */, + PRESHIFT(0x00b77000) /* 0.044784546 */, + -PRESHIFT(0x0b619000) /* -0.711318970 */, + PRESHIFT(0x120b4000) /* 1.127746582 */, + PRESHIFT(0x06e81000) /* 0.431655884 */, + PRESHIFT(0x02288000) /* 0.134887695 */, + PRESHIFT(0x00d17000) /* 0.051132202 */, + PRESHIFT(0x0081b000) /* 0.031661987 */, + PRESHIFT(0x000c5000) /* 0.003005981 */, + PRESHIFT(0x000b7000) /* 0.002792358 */, + PRESHIFT(0x00011000) /* 0.000259399 */, + + -PRESHIFT(0x00001000) /* -0.000015259 */, + -PRESHIFT(0x0002d000) /* -0.000686646 */, + PRESHIFT(0x000e4000) /* 0.003479004 */, + -PRESHIFT(0x0030b000) /* -0.011886597 */, + PRESHIFT(0x006cb000) /* 0.026535034 */, + -PRESHIFT(0x01b17000) /* -0.105819702 */, + PRESHIFT(0x00b77000) /* 0.044784546 */, + -PRESHIFT(0x0b619000) /* -0.711318970 */, + PRESHIFT(0x120b4000) /* 1.127746582 */, + PRESHIFT(0x06e81000) /* 0.431655884 */, + PRESHIFT(0x02288000) /* 0.134887695 */, + PRESHIFT(0x00d17000) /* 0.051132202 */, + PRESHIFT(0x0081b000) /* 0.031661987 */, + PRESHIFT(0x000c5000) /* 0.003005981 */, + PRESHIFT(0x000b7000) /* 0.002792358 */, + PRESHIFT(0x00011000) /* 0.000259399 */ }, + + { -PRESHIFT(0x00001000) /* -0.000015259 */, /* 6 */ + -PRESHIFT(0x00031000) /* -0.000747681 */, + PRESHIFT(0x000e4000) /* 0.003479004 */, + -PRESHIFT(0x00350000) /* -0.012939453 */, + PRESHIFT(0x0066c000) /* 0.025085449 */, + -PRESHIFT(0x01c67000) /* -0.110946655 */, + PRESHIFT(0x007f5000) /* 0.031082153 */, + -PRESHIFT(0x0bd06000) /* -0.738372803 */, + PRESHIFT(0x11ec7000) /* 1.120223999 */, + PRESHIFT(0x06772000) /* 0.404083252 */, + PRESHIFT(0x023b3000) /* 0.139450073 */, + PRESHIFT(0x00bbc000) /* 0.045837402 */, + PRESHIFT(0x00809000) /* 0.031387329 */, + PRESHIFT(0x00099000) /* 0.002334595 */, + PRESHIFT(0x000b0000) /* 0.002685547 */, + PRESHIFT(0x00010000) /* 0.000244141 */, + + -PRESHIFT(0x00001000) /* -0.000015259 */, + -PRESHIFT(0x00031000) /* -0.000747681 */, + PRESHIFT(0x000e4000) /* 0.003479004 */, + -PRESHIFT(0x00350000) /* -0.012939453 */, + PRESHIFT(0x0066c000) /* 0.025085449 */, + -PRESHIFT(0x01c67000) /* -0.110946655 */, + PRESHIFT(0x007f5000) /* 0.031082153 */, + -PRESHIFT(0x0bd06000) /* -0.738372803 */, + PRESHIFT(0x11ec7000) /* 1.120223999 */, + PRESHIFT(0x06772000) /* 0.404083252 */, + PRESHIFT(0x023b3000) /* 0.139450073 */, + PRESHIFT(0x00bbc000) /* 0.045837402 */, + PRESHIFT(0x00809000) /* 0.031387329 */, + PRESHIFT(0x00099000) /* 0.002334595 */, + PRESHIFT(0x000b0000) /* 0.002685547 */, + PRESHIFT(0x00010000) /* 0.000244141 */ }, + + { -PRESHIFT(0x00002000) /* -0.000030518 */, /* 7 */ + -PRESHIFT(0x00035000) /* -0.000808716 */, + PRESHIFT(0x000e3000) /* 0.003463745 */, + -PRESHIFT(0x00397000) /* -0.014022827 */, + PRESHIFT(0x005ff000) /* 0.023422241 */, + -PRESHIFT(0x01dad000) /* -0.115921021 */, + PRESHIFT(0x0043a000) /* 0.016510010 */, + -PRESHIFT(0x0c3d9000) /* -0.765029907 */, + PRESHIFT(0x11c83000) /* 1.111373901 */, + PRESHIFT(0x06076000) /* 0.376800537 */, + PRESHIFT(0x024ad000) /* 0.143264771 */, + PRESHIFT(0x00a67000) /* 0.040634155 */, + PRESHIFT(0x007f0000) /* 0.031005859 */, + PRESHIFT(0x0006f000) /* 0.001693726 */, + PRESHIFT(0x000a9000) /* 0.002578735 */, + PRESHIFT(0x0000e000) /* 0.000213623 */, + + -PRESHIFT(0x00002000) /* -0.000030518 */, + -PRESHIFT(0x00035000) /* -0.000808716 */, + PRESHIFT(0x000e3000) /* 0.003463745 */, + -PRESHIFT(0x00397000) /* -0.014022827 */, + PRESHIFT(0x005ff000) /* 0.023422241 */, + -PRESHIFT(0x01dad000) /* -0.115921021 */, + PRESHIFT(0x0043a000) /* 0.016510010 */, + -PRESHIFT(0x0c3d9000) /* -0.765029907 */, + PRESHIFT(0x11c83000) /* 1.111373901 */, + PRESHIFT(0x06076000) /* 0.376800537 */, + PRESHIFT(0x024ad000) /* 0.143264771 */, + PRESHIFT(0x00a67000) /* 0.040634155 */, + PRESHIFT(0x007f0000) /* 0.031005859 */, + PRESHIFT(0x0006f000) /* 0.001693726 */, + PRESHIFT(0x000a9000) /* 0.002578735 */, + PRESHIFT(0x0000e000) /* 0.000213623 */ }, + + { -PRESHIFT(0x00002000) /* -0.000030518 */, /* 8 */ + -PRESHIFT(0x0003a000) /* -0.000885010 */, + PRESHIFT(0x000e0000) /* 0.003417969 */, + -PRESHIFT(0x003df000) /* -0.015121460 */, + PRESHIFT(0x00586000) /* 0.021575928 */, + -PRESHIFT(0x01ee6000) /* -0.120697021 */, + PRESHIFT(0x00046000) /* 0.001068115 */, + -PRESHIFT(0x0ca8d000) /* -0.791213989 */, + PRESHIFT(0x119e9000) /* 1.101211548 */, + PRESHIFT(0x05991000) /* 0.349868774 */, + PRESHIFT(0x02578000) /* 0.146362305 */, + PRESHIFT(0x0091a000) /* 0.035552979 */, + PRESHIFT(0x007d1000) /* 0.030532837 */, + PRESHIFT(0x00048000) /* 0.001098633 */, + PRESHIFT(0x000a1000) /* 0.002456665 */, + PRESHIFT(0x0000d000) /* 0.000198364 */, + + -PRESHIFT(0x00002000) /* -0.000030518 */, + -PRESHIFT(0x0003a000) /* -0.000885010 */, + PRESHIFT(0x000e0000) /* 0.003417969 */, + -PRESHIFT(0x003df000) /* -0.015121460 */, + PRESHIFT(0x00586000) /* 0.021575928 */, + -PRESHIFT(0x01ee6000) /* -0.120697021 */, + PRESHIFT(0x00046000) /* 0.001068115 */, + -PRESHIFT(0x0ca8d000) /* -0.791213989 */, + PRESHIFT(0x119e9000) /* 1.101211548 */, + PRESHIFT(0x05991000) /* 0.349868774 */, + PRESHIFT(0x02578000) /* 0.146362305 */, + PRESHIFT(0x0091a000) /* 0.035552979 */, + PRESHIFT(0x007d1000) /* 0.030532837 */, + PRESHIFT(0x00048000) /* 0.001098633 */, + PRESHIFT(0x000a1000) /* 0.002456665 */, + PRESHIFT(0x0000d000) /* 0.000198364 */ }, + + { -PRESHIFT(0x00002000) /* -0.000030518 */, /* 9 */ + -PRESHIFT(0x0003f000) /* -0.000961304 */, + PRESHIFT(0x000dd000) /* 0.003372192 */, + -PRESHIFT(0x00428000) /* -0.016235352 */, + PRESHIFT(0x00500000) /* 0.019531250 */, + -PRESHIFT(0x02011000) /* -0.125259399 */, + -PRESHIFT(0x003e6000) /* -0.015228271 */, + -PRESHIFT(0x0d11e000) /* -0.816864014 */, + PRESHIFT(0x116fc000) /* 1.089782715 */, + PRESHIFT(0x052c5000) /* 0.323318481 */, + PRESHIFT(0x02616000) /* 0.148773193 */, + PRESHIFT(0x007d6000) /* 0.030609131 */, + PRESHIFT(0x007aa000) /* 0.029937744 */, + PRESHIFT(0x00024000) /* 0.000549316 */, + PRESHIFT(0x0009a000) /* 0.002349854 */, + PRESHIFT(0x0000b000) /* 0.000167847 */, + + -PRESHIFT(0x00002000) /* -0.000030518 */, + -PRESHIFT(0x0003f000) /* -0.000961304 */, + PRESHIFT(0x000dd000) /* 0.003372192 */, + -PRESHIFT(0x00428000) /* -0.016235352 */, + PRESHIFT(0x00500000) /* 0.019531250 */, + -PRESHIFT(0x02011000) /* -0.125259399 */, + -PRESHIFT(0x003e6000) /* -0.015228271 */, + -PRESHIFT(0x0d11e000) /* -0.816864014 */, + PRESHIFT(0x116fc000) /* 1.089782715 */, + PRESHIFT(0x052c5000) /* 0.323318481 */, + PRESHIFT(0x02616000) /* 0.148773193 */, + PRESHIFT(0x007d6000) /* 0.030609131 */, + PRESHIFT(0x007aa000) /* 0.029937744 */, + PRESHIFT(0x00024000) /* 0.000549316 */, + PRESHIFT(0x0009a000) /* 0.002349854 */, + PRESHIFT(0x0000b000) /* 0.000167847 */ }, + + { -PRESHIFT(0x00002000) /* -0.000030518 */, /* 10 */ + -PRESHIFT(0x00044000) /* -0.001037598 */, + PRESHIFT(0x000d7000) /* 0.003280640 */, + -PRESHIFT(0x00471000) /* -0.017349243 */, + PRESHIFT(0x0046b000) /* 0.017257690 */, + -PRESHIFT(0x0212b000) /* -0.129562378 */, + -PRESHIFT(0x0084a000) /* -0.032379150 */, + -PRESHIFT(0x0d78a000) /* -0.841949463 */, + PRESHIFT(0x113be000) /* 1.077117920 */, + PRESHIFT(0x04c16000) /* 0.297210693 */, + PRESHIFT(0x02687000) /* 0.150497437 */, + PRESHIFT(0x0069c000) /* 0.025817871 */, + PRESHIFT(0x0077f000) /* 0.029281616 */, + PRESHIFT(0x00002000) /* 0.000030518 */, + PRESHIFT(0x00093000) /* 0.002243042 */, + PRESHIFT(0x0000a000) /* 0.000152588 */, + + -PRESHIFT(0x00002000) /* -0.000030518 */, + -PRESHIFT(0x00044000) /* -0.001037598 */, + PRESHIFT(0x000d7000) /* 0.003280640 */, + -PRESHIFT(0x00471000) /* -0.017349243 */, + PRESHIFT(0x0046b000) /* 0.017257690 */, + -PRESHIFT(0x0212b000) /* -0.129562378 */, + -PRESHIFT(0x0084a000) /* -0.032379150 */, + -PRESHIFT(0x0d78a000) /* -0.841949463 */, + PRESHIFT(0x113be000) /* 1.077117920 */, + PRESHIFT(0x04c16000) /* 0.297210693 */, + PRESHIFT(0x02687000) /* 0.150497437 */, + PRESHIFT(0x0069c000) /* 0.025817871 */, + PRESHIFT(0x0077f000) /* 0.029281616 */, + PRESHIFT(0x00002000) /* 0.000030518 */, + PRESHIFT(0x00093000) /* 0.002243042 */, + PRESHIFT(0x0000a000) /* 0.000152588 */ }, + + { -PRESHIFT(0x00003000) /* -0.000045776 */, /* 11 */ + -PRESHIFT(0x00049000) /* -0.001113892 */, + PRESHIFT(0x000d0000) /* 0.003173828 */, + -PRESHIFT(0x004ba000) /* -0.018463135 */, + PRESHIFT(0x003ca000) /* 0.014801025 */, + -PRESHIFT(0x02233000) /* -0.133590698 */, + -PRESHIFT(0x00ce4000) /* -0.050354004 */, + -PRESHIFT(0x0ddca000) /* -0.866363525 */, + PRESHIFT(0x1102f000) /* 1.063217163 */, + PRESHIFT(0x04587000) /* 0.271591187 */, + PRESHIFT(0x026cf000) /* 0.151596069 */, + PRESHIFT(0x0056c000) /* 0.021179199 */, + PRESHIFT(0x0074e000) /* 0.028533936 */, + -PRESHIFT(0x0001d000) /* -0.000442505 */, + PRESHIFT(0x0008b000) /* 0.002120972 */, + PRESHIFT(0x00009000) /* 0.000137329 */, + + -PRESHIFT(0x00003000) /* -0.000045776 */, + -PRESHIFT(0x00049000) /* -0.001113892 */, + PRESHIFT(0x000d0000) /* 0.003173828 */, + -PRESHIFT(0x004ba000) /* -0.018463135 */, + PRESHIFT(0x003ca000) /* 0.014801025 */, + -PRESHIFT(0x02233000) /* -0.133590698 */, + -PRESHIFT(0x00ce4000) /* -0.050354004 */, + -PRESHIFT(0x0ddca000) /* -0.866363525 */, + PRESHIFT(0x1102f000) /* 1.063217163 */, + PRESHIFT(0x04587000) /* 0.271591187 */, + PRESHIFT(0x026cf000) /* 0.151596069 */, + PRESHIFT(0x0056c000) /* 0.021179199 */, + PRESHIFT(0x0074e000) /* 0.028533936 */, + -PRESHIFT(0x0001d000) /* -0.000442505 */, + PRESHIFT(0x0008b000) /* 0.002120972 */, + PRESHIFT(0x00009000) /* 0.000137329 */ }, + + { -PRESHIFT(0x00003000) /* -0.000045776 */, /* 12 */ + -PRESHIFT(0x0004f000) /* -0.001205444 */, + PRESHIFT(0x000c8000) /* 0.003051758 */, + -PRESHIFT(0x00503000) /* -0.019577026 */, + PRESHIFT(0x0031a000) /* 0.012115479 */, + -PRESHIFT(0x02326000) /* -0.137298584 */, + -PRESHIFT(0x011b5000) /* -0.069168091 */, + -PRESHIFT(0x0e3dd000) /* -0.890090942 */, + PRESHIFT(0x10c54000) /* 1.048156738 */, + PRESHIFT(0x03f1b000) /* 0.246505737 */, + PRESHIFT(0x026ee000) /* 0.152069092 */, + PRESHIFT(0x00447000) /* 0.016708374 */, + PRESHIFT(0x00719000) /* 0.027725220 */, + -PRESHIFT(0x00039000) /* -0.000869751 */, + PRESHIFT(0x00084000) /* 0.002014160 */, + PRESHIFT(0x00008000) /* 0.000122070 */, + + -PRESHIFT(0x00003000) /* -0.000045776 */, + -PRESHIFT(0x0004f000) /* -0.001205444 */, + PRESHIFT(0x000c8000) /* 0.003051758 */, + -PRESHIFT(0x00503000) /* -0.019577026 */, + PRESHIFT(0x0031a000) /* 0.012115479 */, + -PRESHIFT(0x02326000) /* -0.137298584 */, + -PRESHIFT(0x011b5000) /* -0.069168091 */, + -PRESHIFT(0x0e3dd000) /* -0.890090942 */, + PRESHIFT(0x10c54000) /* 1.048156738 */, + PRESHIFT(0x03f1b000) /* 0.246505737 */, + PRESHIFT(0x026ee000) /* 0.152069092 */, + PRESHIFT(0x00447000) /* 0.016708374 */, + PRESHIFT(0x00719000) /* 0.027725220 */, + -PRESHIFT(0x00039000) /* -0.000869751 */, + PRESHIFT(0x00084000) /* 0.002014160 */, + PRESHIFT(0x00008000) /* 0.000122070 */ }, + + { -PRESHIFT(0x00004000) /* -0.000061035 */, /* 13 */ + -PRESHIFT(0x00055000) /* -0.001296997 */, + PRESHIFT(0x000bd000) /* 0.002883911 */, + -PRESHIFT(0x0054c000) /* -0.020690918 */, + PRESHIFT(0x0025d000) /* 0.009231567 */, + -PRESHIFT(0x02403000) /* -0.140670776 */, + -PRESHIFT(0x016ba000) /* -0.088775635 */, + -PRESHIFT(0x0e9be000) /* -0.913055420 */, + PRESHIFT(0x1082d000) /* 1.031936646 */, + PRESHIFT(0x038d4000) /* 0.221984863 */, + PRESHIFT(0x026e7000) /* 0.151962280 */, + PRESHIFT(0x0032e000) /* 0.012420654 */, + PRESHIFT(0x006df000) /* 0.026840210 */, + -PRESHIFT(0x00053000) /* -0.001266479 */, + PRESHIFT(0x0007d000) /* 0.001907349 */, + PRESHIFT(0x00007000) /* 0.000106812 */, + + -PRESHIFT(0x00004000) /* -0.000061035 */, + -PRESHIFT(0x00055000) /* -0.001296997 */, + PRESHIFT(0x000bd000) /* 0.002883911 */, + -PRESHIFT(0x0054c000) /* -0.020690918 */, + PRESHIFT(0x0025d000) /* 0.009231567 */, + -PRESHIFT(0x02403000) /* -0.140670776 */, + -PRESHIFT(0x016ba000) /* -0.088775635 */, + -PRESHIFT(0x0e9be000) /* -0.913055420 */, + PRESHIFT(0x1082d000) /* 1.031936646 */, + PRESHIFT(0x038d4000) /* 0.221984863 */, + PRESHIFT(0x026e7000) /* 0.151962280 */, + PRESHIFT(0x0032e000) /* 0.012420654 */, + PRESHIFT(0x006df000) /* 0.026840210 */, + -PRESHIFT(0x00053000) /* -0.001266479 */, + PRESHIFT(0x0007d000) /* 0.001907349 */, + PRESHIFT(0x00007000) /* 0.000106812 */ }, + + { -PRESHIFT(0x00004000) /* -0.000061035 */, /* 14 */ + -PRESHIFT(0x0005b000) /* -0.001388550 */, + PRESHIFT(0x000b1000) /* 0.002700806 */, + -PRESHIFT(0x00594000) /* -0.021789551 */, + PRESHIFT(0x00192000) /* 0.006134033 */, + -PRESHIFT(0x024c8000) /* -0.143676758 */, + -PRESHIFT(0x01bf2000) /* -0.109161377 */, + -PRESHIFT(0x0ef69000) /* -0.935195923 */, + PRESHIFT(0x103be000) /* 1.014617920 */, + PRESHIFT(0x032b4000) /* 0.198059082 */, + PRESHIFT(0x026bc000) /* 0.151306152 */, + PRESHIFT(0x00221000) /* 0.008316040 */, + PRESHIFT(0x006a2000) /* 0.025909424 */, + -PRESHIFT(0x0006a000) /* -0.001617432 */, + PRESHIFT(0x00075000) /* 0.001785278 */, + PRESHIFT(0x00007000) /* 0.000106812 */, + + -PRESHIFT(0x00004000) /* -0.000061035 */, + -PRESHIFT(0x0005b000) /* -0.001388550 */, + PRESHIFT(0x000b1000) /* 0.002700806 */, + -PRESHIFT(0x00594000) /* -0.021789551 */, + PRESHIFT(0x00192000) /* 0.006134033 */, + -PRESHIFT(0x024c8000) /* -0.143676758 */, + -PRESHIFT(0x01bf2000) /* -0.109161377 */, + -PRESHIFT(0x0ef69000) /* -0.935195923 */, + PRESHIFT(0x103be000) /* 1.014617920 */, + PRESHIFT(0x032b4000) /* 0.198059082 */, + PRESHIFT(0x026bc000) /* 0.151306152 */, + PRESHIFT(0x00221000) /* 0.008316040 */, + PRESHIFT(0x006a2000) /* 0.025909424 */, + -PRESHIFT(0x0006a000) /* -0.001617432 */, + PRESHIFT(0x00075000) /* 0.001785278 */, + PRESHIFT(0x00007000) /* 0.000106812 */ }, + + { -PRESHIFT(0x00005000) /* -0.000076294 */, /* 15 */ + -PRESHIFT(0x00061000) /* -0.001480103 */, + PRESHIFT(0x000a3000) /* 0.002487183 */, + -PRESHIFT(0x005da000) /* -0.022857666 */, + PRESHIFT(0x000b9000) /* 0.002822876 */, + -PRESHIFT(0x02571000) /* -0.146255493 */, + -PRESHIFT(0x0215c000) /* -0.130310059 */, + -PRESHIFT(0x0f4dc000) /* -0.956481934 */, + PRESHIFT(0x0ff0a000) /* 0.996246338 */, + PRESHIFT(0x02cbf000) /* 0.174789429 */, + PRESHIFT(0x0266e000) /* 0.150115967 */, + PRESHIFT(0x00120000) /* 0.004394531 */, + PRESHIFT(0x00662000) /* 0.024932861 */, + -PRESHIFT(0x0007f000) /* -0.001937866 */, + PRESHIFT(0x0006f000) /* 0.001693726 */, + PRESHIFT(0x00006000) /* 0.000091553 */, + + -PRESHIFT(0x00005000) /* -0.000076294 */, + -PRESHIFT(0x00061000) /* -0.001480103 */, + PRESHIFT(0x000a3000) /* 0.002487183 */, + -PRESHIFT(0x005da000) /* -0.022857666 */, + PRESHIFT(0x000b9000) /* 0.002822876 */, + -PRESHIFT(0x02571000) /* -0.146255493 */, + -PRESHIFT(0x0215c000) /* -0.130310059 */, + -PRESHIFT(0x0f4dc000) /* -0.956481934 */, + PRESHIFT(0x0ff0a000) /* 0.996246338 */, + PRESHIFT(0x02cbf000) /* 0.174789429 */, + PRESHIFT(0x0266e000) /* 0.150115967 */, + PRESHIFT(0x00120000) /* 0.004394531 */, + PRESHIFT(0x00662000) /* 0.024932861 */, + -PRESHIFT(0x0007f000) /* -0.001937866 */, + PRESHIFT(0x0006f000) /* 0.001693726 */, + PRESHIFT(0x00006000) /* 0.000091553 */ }, + + { -PRESHIFT(0x00005000) /* -0.000076294 */, /* 16 */ + -PRESHIFT(0x00068000) /* -0.001586914 */, + PRESHIFT(0x00092000) /* 0.002227783 */, + -PRESHIFT(0x0061f000) /* -0.023910522 */, + -PRESHIFT(0x0002d000) /* -0.000686646 */, + -PRESHIFT(0x025ff000) /* -0.148422241 */, + -PRESHIFT(0x026f7000) /* -0.152206421 */, + -PRESHIFT(0x0fa13000) /* -0.976852417 */, + PRESHIFT(0x0fa13000) /* 0.976852417 */, + PRESHIFT(0x026f7000) /* 0.152206421 */, + PRESHIFT(0x025ff000) /* 0.148422241 */, + PRESHIFT(0x0002d000) /* 0.000686646 */, + PRESHIFT(0x0061f000) /* 0.023910522 */, + -PRESHIFT(0x00092000) /* -0.002227783 */, + PRESHIFT(0x00068000) /* 0.001586914 */, + PRESHIFT(0x00005000) /* 0.000076294 */, + + -PRESHIFT(0x00005000) /* -0.000076294 */, + -PRESHIFT(0x00068000) /* -0.001586914 */, + PRESHIFT(0x00092000) /* 0.002227783 */, + -PRESHIFT(0x0061f000) /* -0.023910522 */, + -PRESHIFT(0x0002d000) /* -0.000686646 */, + -PRESHIFT(0x025ff000) /* -0.148422241 */, + -PRESHIFT(0x026f7000) /* -0.152206421 */, + -PRESHIFT(0x0fa13000) /* -0.976852417 */, + PRESHIFT(0x0fa13000) /* 0.976852417 */, + PRESHIFT(0x026f7000) /* 0.152206421 */, + PRESHIFT(0x025ff000) /* 0.148422241 */, + PRESHIFT(0x0002d000) /* 0.000686646 */, + PRESHIFT(0x0061f000) /* 0.023910522 */, + -PRESHIFT(0x00092000) /* -0.002227783 */, + PRESHIFT(0x00068000) /* 0.001586914 */, + PRESHIFT(0x00005000) /* 0.000076294 */ }
trunk/orp/orp_soc/sw.old/mad-xess/libmad/D.dat Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.h (revision 782) @@ -0,0 +1,74 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: decoder.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_DECODER_H +# define LIBMAD_DECODER_H + +# include "stream.h" +# include "frame.h" +# include "synth.h" + +enum mad_decoder_mode { + MAD_DECODER_MODE_SYNC = 0, + MAD_DECODER_MODE_ASYNC +}; + +enum mad_flow { + MAD_FLOW_CONTINUE = 0x0000, + MAD_FLOW_STOP = 0x0010, + MAD_FLOW_BREAK = 0x0011, + MAD_FLOW_IGNORE = 0x0020 +}; + +struct mad_decoder { + enum mad_decoder_mode mode; + + int options; + + struct { + long pid; + int in; + int out; + } async; + + struct dec_sync_struct { + struct mad_stream stream; + struct mad_frame frame; + struct mad_synth synth; + } *sync; + + void *cb_data; + + enum mad_flow (*input_func)(void *, struct mad_stream *); + enum mad_flow (*error_func)(void *, struct mad_stream *, struct mad_frame *); +}; + +void mad_decoder_init(struct mad_decoder *, void *, + enum mad_flow (*)(void *, struct mad_stream *), + enum mad_flow (*)(void *, struct mad_stream *, struct mad_frame *frame)); +int mad_decoder_finish(struct mad_decoder *); + +# define mad_decoder_options(decoder, opts) ((decoder)->options = (opts)) + +int mad_decoder_run(struct mad_decoder *, enum mad_decoder_mode); +int mad_decoder_message(struct mad_decoder *, void *, unsigned int *); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/decoder.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/config.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/config.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/config.h (revision 782) @@ -0,0 +1,102 @@ +/* config.h. Generated automatically by configure. */ +/* config.h.in. Generated automatically from configure.in by autoheader. */ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: config.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_CONFIG_H +# define LIBMAD_CONFIG_H + +/***************************************************************************** + * Definitions selected automatically by `configure' * + *****************************************************************************/ + +/* Define to empty if the keyword does not work. */ +/* #undef const */ + +/* Define if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define as __inline if that's what the C compiler calls it. */ +/* #undef inline */ + +/* Define to `int' if doesn't define. */ +/* #undef pid_t */ + +/* Define if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to optimize for speed over accuracy. */ +/* #undef OPT_SPEED */ + +/* Define to optimize for accuracy over speed. */ +/* #undef OPT_ACCURACY */ + +/* Define to enable a fast subband synthesis approximation optimization. */ +/* #undef OPT_SSO */ + +/* Define to influence a strict interpretation of the ISO/IEC standards, + even if this is in opposition with best accepted practices. */ +/* #undef OPT_STRICT */ + +/* Define if your MIPS CPU supports a 2-operand MADD instruction. */ +/* #undef HAVE_MADD_ASM */ + +/* Define if your MIPS CPU supports a 2-operand MADD16 instruction. */ +/* #undef HAVE_MADD16_ASM */ + +/* Define to enable diagnostic debugging support. */ +/* #undef DEBUG */ + +/* Define to disable debugging assertions. */ +/* #undef NDEBUG */ + +/* Define to enable experimental code. */ +/* #undef EXPERIMENTAL */ + +/* Define if we have embedded application. */ +#define EMBED 1 + +/* The number of bytes in a int. */ +#define SIZEOF_INT 2 + +/* The number of bytes in a long. */ +#define SIZEOF_LONG 4 + +/* The number of bytes in a long long. */ +#define SIZEOF_LONG_LONG 8 + +/* Define if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Name of package */ +#define PACKAGE "libmad" + +/* Version number of package */ +#define VERSION "0.13.0b" + +/***************************************************************************** + * End of automatically configured definitions * + *****************************************************************************/ + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/config.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.h (revision 782) @@ -0,0 +1,50 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: synth.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_SYNTH_H +# define LIBMAD_SYNTH_H + +# include "fixed.h" +# include "frame.h" + +struct mad_synth { + mad_fixed_t filter[2][2][2][16][8]; /* polyphase filterbank outputs */ + /* [ch][eo][peo][s][v] */ + + unsigned int phase; /* current processing phase */ + + struct mad_pcm { + unsigned int samplerate; /* sampling frequency (Hz) */ + unsigned short channels; /* number of channels */ + unsigned short length; /* number of samples per channel */ + mad_fixed_t samples[2][32]; /* PCM output samples */ + } pcm; +}; + +void mad_synth_init(struct mad_synth *); + +# define mad_synth_finish(synth) /* nothing */ + +void mad_synth_mute(struct mad_synth *); + +void mad_synth_frame(struct mad_synth *, struct mad_frame const *); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/synth.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.c (revision 782) @@ -0,0 +1,216 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: bit.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# define CHAR_BIT 8 + +# include "bit.h" + +/* + * This is the lookup table for computing the CRC-check word. + * As described in section 2.4.3.1 and depicted in Figure A.9 + * of ISO/IEC 11172-3, the generator polynomial is: + * + * G(X) = X^16 + X^15 + X^2 + 1 + */ +static +unsigned short const crc_table[256] = { + 0x0000, 0x8005, 0x800f, 0x000a, 0x801b, 0x001e, 0x0014, 0x8011, + 0x8033, 0x0036, 0x003c, 0x8039, 0x0028, 0x802d, 0x8027, 0x0022, + 0x8063, 0x0066, 0x006c, 0x8069, 0x0078, 0x807d, 0x8077, 0x0072, + 0x0050, 0x8055, 0x805f, 0x005a, 0x804b, 0x004e, 0x0044, 0x8041, + 0x80c3, 0x00c6, 0x00cc, 0x80c9, 0x00d8, 0x80dd, 0x80d7, 0x00d2, + 0x00f0, 0x80f5, 0x80ff, 0x00fa, 0x80eb, 0x00ee, 0x00e4, 0x80e1, + 0x00a0, 0x80a5, 0x80af, 0x00aa, 0x80bb, 0x00be, 0x00b4, 0x80b1, + 0x8093, 0x0096, 0x009c, 0x8099, 0x0088, 0x808d, 0x8087, 0x0082, + + 0x8183, 0x0186, 0x018c, 0x8189, 0x0198, 0x819d, 0x8197, 0x0192, + 0x01b0, 0x81b5, 0x81bf, 0x01ba, 0x81ab, 0x01ae, 0x01a4, 0x81a1, + 0x01e0, 0x81e5, 0x81ef, 0x01ea, 0x81fb, 0x01fe, 0x01f4, 0x81f1, + 0x81d3, 0x01d6, 0x01dc, 0x81d9, 0x01c8, 0x81cd, 0x81c7, 0x01c2, + 0x0140, 0x8145, 0x814f, 0x014a, 0x815b, 0x015e, 0x0154, 0x8151, + 0x8173, 0x0176, 0x017c, 0x8179, 0x0168, 0x816d, 0x8167, 0x0162, + 0x8123, 0x0126, 0x012c, 0x8129, 0x0138, 0x813d, 0x8137, 0x0132, + 0x0110, 0x8115, 0x811f, 0x011a, 0x810b, 0x010e, 0x0104, 0x8101, + + 0x8303, 0x0306, 0x030c, 0x8309, 0x0318, 0x831d, 0x8317, 0x0312, + 0x0330, 0x8335, 0x833f, 0x033a, 0x832b, 0x032e, 0x0324, 0x8321, + 0x0360, 0x8365, 0x836f, 0x036a, 0x837b, 0x037e, 0x0374, 0x8371, + 0x8353, 0x0356, 0x035c, 0x8359, 0x0348, 0x834d, 0x8347, 0x0342, + 0x03c0, 0x83c5, 0x83cf, 0x03ca, 0x83db, 0x03de, 0x03d4, 0x83d1, + 0x83f3, 0x03f6, 0x03fc, 0x83f9, 0x03e8, 0x83ed, 0x83e7, 0x03e2, + 0x83a3, 0x03a6, 0x03ac, 0x83a9, 0x03b8, 0x83bd, 0x83b7, 0x03b2, + 0x0390, 0x8395, 0x839f, 0x039a, 0x838b, 0x038e, 0x0384, 0x8381, + + 0x0280, 0x8285, 0x828f, 0x028a, 0x829b, 0x029e, 0x0294, 0x8291, + 0x82b3, 0x02b6, 0x02bc, 0x82b9, 0x02a8, 0x82ad, 0x82a7, 0x02a2, + 0x82e3, 0x02e6, 0x02ec, 0x82e9, 0x02f8, 0x82fd, 0x82f7, 0x02f2, + 0x02d0, 0x82d5, 0x82df, 0x02da, 0x82cb, 0x02ce, 0x02c4, 0x82c1, + 0x8243, 0x0246, 0x024c, 0x8249, 0x0258, 0x825d, 0x8257, 0x0252, + 0x0270, 0x8275, 0x827f, 0x027a, 0x826b, 0x026e, 0x0264, 0x8261, + 0x0220, 0x8225, 0x822f, 0x022a, 0x823b, 0x023e, 0x0234, 0x8231, + 0x8213, 0x0216, 0x021c, 0x8219, 0x0208, 0x820d, 0x8207, 0x0202 +}; + +# define CRC_POLY 0x8005 + +/* + * NAME: bit->init() + * DESCRIPTION: initialize bit pointer struct + */ +void mad_bit_init(struct mad_bitptr *bitptr, unsigned char const *byte) +{ + bitptr->byte = byte; + bitptr->cache = 0; + bitptr->left = CHAR_BIT; +} + +/* + * NAME: bit->length() + * DESCRIPTION: return number of bits between start and end points + */ +unsigned int mad_bit_length(struct mad_bitptr const *begin, + struct mad_bitptr const *end) +{ + return begin->left + + CHAR_BIT * (end->byte - (begin->byte + 1)) + (CHAR_BIT - end->left); +} + +/* + * NAME: bit->nextbyte() + * DESCRIPTION: return pointer to next unprocessed byte + */ +unsigned char const *mad_bit_nextbyte(struct mad_bitptr const *bitptr) +{ + return bitptr->left == CHAR_BIT ? bitptr->byte : bitptr->byte + 1; +} + +/* + * NAME: bit->skip() + * DESCRIPTION: advance bit pointer + */ +void mad_bit_skip(struct mad_bitptr *bitptr, unsigned int len) +{ + bitptr->byte += len / CHAR_BIT; + bitptr->left -= len % CHAR_BIT; + + if (bitptr->left > CHAR_BIT) { + bitptr->byte++; + bitptr->left += CHAR_BIT; + } + + if (bitptr->left < CHAR_BIT) + bitptr->cache = *bitptr->byte; +} + +/* + * NAME: bit->read() + * DESCRIPTION: read an arbitrary number of bits and return their UIMSBF value + */ +unsigned long mad_bit_read(struct mad_bitptr *bitptr, unsigned int len) +{ + register unsigned long value; + + if (bitptr->left == CHAR_BIT) + bitptr->cache = *bitptr->byte; + + if (len < bitptr->left) { + value = (bitptr->cache & ((1 << bitptr->left) - 1)) >> + (bitptr->left - len); + bitptr->left -= len; + + return value; + } + + /* remaining bits in current byte */ + + value = bitptr->cache & ((1 << bitptr->left) - 1); + len -= bitptr->left; + + bitptr->byte++; + bitptr->left = CHAR_BIT; + + /* more bytes */ + + while (len >= CHAR_BIT) { + value = (value << CHAR_BIT) | *bitptr->byte++; + len -= CHAR_BIT; + } + + if (len > 0) { + bitptr->cache = *bitptr->byte; + + value = (value << len) | (bitptr->cache >> (CHAR_BIT - len)); + bitptr->left -= len; + } + + return value; +} + +# if 0 +/* + * NAME: bit->write() + * DESCRIPTION: write an arbitrary number of bits + */ +void mad_bit_write(struct mad_bitptr *bitptr, unsigned int len, + unsigned long value) +{ + unsigned char *ptr; + + ptr = (unsigned char *) bitptr->byte; + + /* ... */ +} +# endif + +/* + * NAME: bit->crc() + * DESCRIPTION: compute CRC-check word + */ +unsigned short mad_bit_crc(struct mad_bitptr bitptr, unsigned int len, + unsigned short init) +{ + register unsigned int crc, data; + +# if CHAR_BIT == 8 + for (crc = init; len >= 8; len -= 8) { + crc = (crc << 8) ^ + crc_table[((crc >> 8) ^ mad_bit_read(&bitptr, 8)) & 0xff]; + } +# else + crc = init; +# endif + + while (len--) { + data = mad_bit_read(&bitptr, 1) ^ (crc >> 15); + + crc <<= 1; + if (data & 1) + crc ^= CRC_POLY; + } + + return crc & 0xffff; +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/acconfig.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/acconfig.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/acconfig.h (revision 782) @@ -0,0 +1,66 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: acconfig.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_CONFIG_H +# define LIBMAD_CONFIG_H + +/***************************************************************************** + * Definitions selected automatically by `configure' * + *****************************************************************************/ +@TOP@ + +/* Define to optimize for speed over accuracy. */ +#undef OPT_SPEED + +/* Define to optimize for accuracy over speed. */ +#undef OPT_ACCURACY + +/* Define to enable a fast subband synthesis approximation optimization. */ +#undef OPT_SSO + +/* Define to influence a strict interpretation of the ISO/IEC standards, + even if this is in opposition with best accepted practices. */ +#undef OPT_STRICT + +/* Define if your MIPS CPU supports a 2-operand MADD instruction. */ +#undef HAVE_MADD_ASM + +/* Define if your MIPS CPU supports a 2-operand MADD16 instruction. */ +#undef HAVE_MADD16_ASM + +/* Define to enable diagnostic debugging support. */ +#undef DEBUG + +/* Define to disable debugging assertions. */ +#undef NDEBUG + +/* Define to enable experimental code. */ +#undef EXPERIMENTAL + +/* Define if we have embedded application. */ +#undef EMBED + +@BOTTOM@ +/***************************************************************************** + * End of automatically configured definitions * + *****************************************************************************/ + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/acconfig.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.c (revision 782) @@ -0,0 +1,487 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: timer.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# ifndef EMBED +# include +# include +# else +# define assert(x) +# endif + +# include "timer.h" + +mad_timer_t const mad_timer_zero = { 0, 0 }; + +/* + * NAME: timer->compare() + * DESCRIPTION: indicate relative order of two timers + */ +int mad_timer_compare(mad_timer_t timer1, mad_timer_t timer2) +{ + signed long diff; + + diff = timer1.seconds - timer2.seconds; + if (diff < 0) + return -1; + else if (diff > 0) + return +1; + + diff = timer1.fraction - timer2.fraction; + if (diff < 0) + return -1; + else if (diff > 0) + return +1; + + return 0; +} + +/* + * NAME: timer->negate() + * DESCRIPTION: invert the sign of a timer + */ +void mad_timer_negate(mad_timer_t *timer) +{ + timer->seconds = -timer->seconds; + + if (timer->fraction) { + timer->seconds -= 1; + timer->fraction = MAD_TIMER_RESOLUTION - timer->fraction; + } +} + +/* + * NAME: timer->abs() + * DESCRIPTION: return the absolute value of a timer + */ +mad_timer_t mad_timer_abs(mad_timer_t timer) +{ + if (mad_timer_sign(timer) < 0) + mad_timer_negate(&timer); + + return timer; +} + +/* + * NAME: reduce_timer() + * DESCRIPTION: carry timer fraction into seconds + */ +static +void reduce_timer(mad_timer_t *timer) +{ + timer->seconds += timer->fraction / MAD_TIMER_RESOLUTION; + timer->fraction %= MAD_TIMER_RESOLUTION; +} + +/* + * NAME: gcd() + * DESCRIPTION: compute greatest common denominator + */ +static +unsigned long gcd(unsigned long num1, unsigned long num2) +{ + unsigned long tmp; + + while (num2) { + tmp = num2; + num2 = num1 % num2; + num1 = tmp; + } + + return num1; +} + +/* + * NAME: reduce_rational() + * DESCRIPTION: convert rational expression to lowest terms + */ +static +void reduce_rational(unsigned long *numer, unsigned long *denom) +{ + unsigned long factor; + + factor = gcd(*numer, *denom); + + assert(factor != 0); + + *numer /= factor; + *denom /= factor; +} + +/* + * NAME: scale_rational() + * DESCRIPTION: solve numer/denom == ?/scale avoiding overflowing + */ +static +unsigned long scale_rational(unsigned long numer, unsigned long denom, + unsigned long scale) +{ + reduce_rational(&numer, &denom); + reduce_rational(&scale, &denom); + + assert(denom != 0); + + if (denom < scale) + return numer * (scale / denom) + numer * (scale % denom) / denom; + if (denom < numer) + return scale * (numer / denom) + scale * (numer % denom) / denom; + + return numer * scale / denom; +} + +/* + * NAME: timer->set() + * DESCRIPTION: set timer to specific value + */ +void mad_timer_set(mad_timer_t *timer, unsigned long seconds, + unsigned long fraction, unsigned long fracparts) +{ + timer->seconds = seconds; + + if (fraction == 0) + fracparts = 0; + else if (fracparts == 0) { + fracparts = fraction; + fraction = 1; + } + + switch (fracparts) { + case 0: + timer->fraction = 0; + break; + + case MAD_TIMER_RESOLUTION: + timer->fraction = fraction; + break; + + case 8000: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 8000); + break; + + case 11025: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 11025); + break; + + case 12000: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 12000); + break; + + case 16000: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 16000); + break; + + case 22050: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 22050); + break; + + case 24000: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 24000); + break; + + case 32000: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 32000); + break; + + case 44100: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 44100); + break; + + case 48000: + timer->fraction = fraction * (MAD_TIMER_RESOLUTION / 48000); + break; + + default: + timer->fraction = + scale_rational(fraction, fracparts, MAD_TIMER_RESOLUTION); + break; + } + + if (timer->fraction >= MAD_TIMER_RESOLUTION) + reduce_timer(timer); +} + +/* + * NAME: timer->add() + * DESCRIPTION: add one timer to another + */ +void mad_timer_add(mad_timer_t *timer, mad_timer_t incr) +{ + timer->seconds += incr.seconds; + timer->fraction += incr.fraction; + + if (timer->fraction >= MAD_TIMER_RESOLUTION) + reduce_timer(timer); +} + +/* + * NAME: timer->multiply() + * DESCRIPTION: multiply a timer by a scalar value + */ +void mad_timer_multiply(mad_timer_t *timer, signed long scalar) +{ + mad_timer_t addend; + unsigned long factor; + + factor = scalar; + if (scalar < 0) { + mad_timer_negate(timer); + factor = -scalar; + } + + addend = *timer; + *timer = mad_timer_zero; + + while (factor) { + if (factor & 1) + mad_timer_add(timer, addend); + + mad_timer_add(&addend, addend); + factor >>= 1; + } +} + +/* + * NAME: timer->count() + * DESCRIPTION: return timer value in selected units + */ +signed long mad_timer_count(mad_timer_t timer, enum mad_units units) +{ + switch (units) { + case MAD_UNITS_HOURS: + return timer.seconds / 60 / 60; + + case MAD_UNITS_MINUTES: + return timer.seconds / 60; + + case MAD_UNITS_SECONDS: + return timer.seconds; + + case MAD_UNITS_DECISECONDS: + case MAD_UNITS_CENTISECONDS: + case MAD_UNITS_MILLISECONDS: + + case MAD_UNITS_8000_HZ: + case MAD_UNITS_11025_HZ: + case MAD_UNITS_12000_HZ: + case MAD_UNITS_16000_HZ: + case MAD_UNITS_22050_HZ: + case MAD_UNITS_24000_HZ: + case MAD_UNITS_32000_HZ: + case MAD_UNITS_44100_HZ: + case MAD_UNITS_48000_HZ: + + case MAD_UNITS_24_FPS: + case MAD_UNITS_25_FPS: + case MAD_UNITS_30_FPS: + case MAD_UNITS_48_FPS: + case MAD_UNITS_50_FPS: + case MAD_UNITS_60_FPS: + case MAD_UNITS_75_FPS: + return timer.seconds * (signed long) units + + (signed long) scale_rational(timer.fraction, MAD_TIMER_RESOLUTION, + units); + + case MAD_UNITS_23_976_FPS: + case MAD_UNITS_24_975_FPS: + case MAD_UNITS_29_97_FPS: + case MAD_UNITS_47_952_FPS: + case MAD_UNITS_49_95_FPS: + case MAD_UNITS_59_94_FPS: + return (mad_timer_count(timer, -units) + 1) * 1000 / 1001; + } + + /* unsupported units */ + return 0; +} + +/* + * NAME: timer->fraction() + * DESCRIPTION: return fractional part of timer in arbitrary terms + */ +unsigned long mad_timer_fraction(mad_timer_t timer, unsigned long fracparts) +{ + timer = mad_timer_abs(timer); + + switch (fracparts) { + case 0: + return MAD_TIMER_RESOLUTION / timer.fraction; + + case MAD_TIMER_RESOLUTION: + return timer.fraction; + + default: + return scale_rational(timer.fraction, MAD_TIMER_RESOLUTION, fracparts); + } +} + +#ifndef EMBED +/* + * NAME: timer->string() + * DESCRIPTION: write a string representation of a timer using a template + */ +void mad_timer_string(mad_timer_t timer, + char *dest, char const *format, enum mad_units units, + enum mad_units fracunits, unsigned long subparts) +{ + unsigned long hours, minutes, seconds, sub; + unsigned int frac; + + timer = mad_timer_abs(timer); + + seconds = timer.seconds; + frac = sub = 0; + + switch (fracunits) { + case MAD_UNITS_HOURS: + case MAD_UNITS_MINUTES: + case MAD_UNITS_SECONDS: + break; + + case MAD_UNITS_DECISECONDS: + case MAD_UNITS_CENTISECONDS: + case MAD_UNITS_MILLISECONDS: + + case MAD_UNITS_8000_HZ: + case MAD_UNITS_11025_HZ: + case MAD_UNITS_12000_HZ: + case MAD_UNITS_16000_HZ: + case MAD_UNITS_22050_HZ: + case MAD_UNITS_24000_HZ: + case MAD_UNITS_32000_HZ: + case MAD_UNITS_44100_HZ: + case MAD_UNITS_48000_HZ: + + case MAD_UNITS_24_FPS: + case MAD_UNITS_25_FPS: + case MAD_UNITS_30_FPS: + case MAD_UNITS_48_FPS: + case MAD_UNITS_50_FPS: + case MAD_UNITS_60_FPS: + case MAD_UNITS_75_FPS: + { + unsigned long fracparts; + + fracparts = MAD_TIMER_RESOLUTION / fracunits; + + frac = timer.fraction / fracparts; + sub = scale_rational(timer.fraction % fracparts, fracparts, subparts); + } + break; + + case MAD_UNITS_23_976_FPS: + case MAD_UNITS_24_975_FPS: + case MAD_UNITS_29_97_FPS: + case MAD_UNITS_47_952_FPS: + case MAD_UNITS_49_95_FPS: + case MAD_UNITS_59_94_FPS: + /* drop-frame encoding */ + /* N.B. this is only well-defined for MAD_UNITS_29_97_FPS */ + { + unsigned long frame, cycle, d, m; + + frame = mad_timer_count(timer, fracunits); + + cycle = -fracunits * 60 * 10 - (10 - 1) * 2; + + d = frame / cycle; + m = frame % cycle; + frame += (10 - 1) * 2 * d; + if (m > 2) + frame += 2 * ((m - 2) / (cycle / 10)); + + frac = frame % -fracunits; + seconds = frame / -fracunits; + } + break; + } + + switch (units) { + case MAD_UNITS_HOURS: + minutes = seconds / 60; + hours = minutes / 60; + + sprintf(dest, format, + hours, + (unsigned int) (minutes % 60), + (unsigned int) (seconds % 60), + frac, sub); + break; + + case MAD_UNITS_MINUTES: + minutes = seconds / 60; + + sprintf(dest, format, + minutes, + (unsigned int) (seconds % 60), + frac, sub); + break; + + case MAD_UNITS_SECONDS: + sprintf(dest, format, + seconds, + frac, sub); + break; + + case MAD_UNITS_23_976_FPS: + case MAD_UNITS_24_975_FPS: + case MAD_UNITS_29_97_FPS: + case MAD_UNITS_47_952_FPS: + case MAD_UNITS_49_95_FPS: + case MAD_UNITS_59_94_FPS: + if (fracunits < 0) { + /* not yet implemented */ + sub = 0; + } + + /* fall through */ + + case MAD_UNITS_DECISECONDS: + case MAD_UNITS_CENTISECONDS: + case MAD_UNITS_MILLISECONDS: + + case MAD_UNITS_8000_HZ: + case MAD_UNITS_11025_HZ: + case MAD_UNITS_12000_HZ: + case MAD_UNITS_16000_HZ: + case MAD_UNITS_22050_HZ: + case MAD_UNITS_24000_HZ: + case MAD_UNITS_32000_HZ: + case MAD_UNITS_44100_HZ: + case MAD_UNITS_48000_HZ: + + case MAD_UNITS_24_FPS: + case MAD_UNITS_25_FPS: + case MAD_UNITS_30_FPS: + case MAD_UNITS_48_FPS: + case MAD_UNITS_50_FPS: + case MAD_UNITS_60_FPS: + case MAD_UNITS_75_FPS: + sprintf(dest, format, mad_timer_count(timer, units), sub); + break; + } +} + +#endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.h (revision 782) @@ -0,0 +1,47 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: bit.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_BIT_H +# define LIBMAD_BIT_H + +struct mad_bitptr { + unsigned char const *byte; + unsigned short cache; + unsigned short left; +}; + +void mad_bit_init(struct mad_bitptr *, unsigned char const *); + +# define mad_bit_finish(bitptr) /* nothing */ + +unsigned int mad_bit_length(struct mad_bitptr const *, + struct mad_bitptr const *); + +# define mad_bit_bitsleft(bitptr) ((bitptr)->left) +unsigned char const *mad_bit_nextbyte(struct mad_bitptr const *); + +void mad_bit_skip(struct mad_bitptr *, unsigned int); +unsigned long mad_bit_read(struct mad_bitptr *, unsigned int); +void mad_bit_write(struct mad_bitptr *, unsigned int, unsigned long); + +unsigned short mad_bit_crc(struct mad_bitptr, unsigned int, unsigned short); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/bit.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.c (revision 782) @@ -0,0 +1,3087 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: huffman.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# include "huffman.h" + +/* + * These are the Huffman code words for Layer III. + * The data for these tables are derived from Table B.7 of ISO/IEC 11172-3. + * + * These tables support decoding up to 4 Huffman code bits at a time. + */ + +# define V(v, w, x, y, hlen) { { 1, hlen, v, w, x, y } } +# define PTR(offs, bits) { ptr: { 0, bits, offs } } + +static +union huffquad const hufftabA[] = { + /* 0000 */ PTR(16, 2), + /* 0001 */ PTR(20, 2), + /* 0010 */ PTR(24, 1), + /* 0011 */ PTR(26, 1), + /* 0100 */ V(0, 0, 1, 0, 4), + /* 0101 */ V(0, 0, 0, 1, 4), + /* 0110 */ V(0, 1, 0, 0, 4), + /* 0111 */ V(1, 0, 0, 0, 4), + /* 1000 */ V(0, 0, 0, 0, 1), + /* 1001 */ V(0, 0, 0, 0, 1), + /* 1010 */ V(0, 0, 0, 0, 1), + /* 1011 */ V(0, 0, 0, 0, 1), + /* 1100 */ V(0, 0, 0, 0, 1), + /* 1101 */ V(0, 0, 0, 0, 1), + /* 1110 */ V(0, 0, 0, 0, 1), + /* 1111 */ V(0, 0, 0, 0, 1), + + /* 0000 ... */ + /* 00 */ V(1, 0, 1, 1, 2), /* 16 */ + /* 01 */ V(1, 1, 1, 1, 2), + /* 10 */ V(1, 1, 0, 1, 2), + /* 11 */ V(1, 1, 1, 0, 2), + + /* 0001 ... */ + /* 00 */ V(0, 1, 1, 1, 2), /* 20 */ + /* 01 */ V(0, 1, 0, 1, 2), + /* 10 */ V(1, 0, 0, 1, 1), + /* 11 */ V(1, 0, 0, 1, 1), + + /* 0010 ... */ + /* 0 */ V(0, 1, 1, 0, 1), /* 24 */ + /* 1 */ V(0, 0, 1, 1, 1), + + /* 0011 ... */ + /* 0 */ V(1, 0, 1, 0, 1), /* 26 */ + /* 1 */ V(1, 1, 0, 0, 1) +}; + +static +union huffquad const hufftabB[] = { + /* 0000 */ V(1, 1, 1, 1, 4), + /* 0001 */ V(1, 1, 1, 0, 4), + /* 0010 */ V(1, 1, 0, 1, 4), + /* 0011 */ V(1, 1, 0, 0, 4), + /* 0100 */ V(1, 0, 1, 1, 4), + /* 0101 */ V(1, 0, 1, 0, 4), + /* 0110 */ V(1, 0, 0, 1, 4), + /* 0111 */ V(1, 0, 0, 0, 4), + /* 1000 */ V(0, 1, 1, 1, 4), + /* 1001 */ V(0, 1, 1, 0, 4), + /* 1010 */ V(0, 1, 0, 1, 4), + /* 1011 */ V(0, 1, 0, 0, 4), + /* 1100 */ V(0, 0, 1, 1, 4), + /* 1101 */ V(0, 0, 1, 0, 4), + /* 1110 */ V(0, 0, 0, 1, 4), + /* 1111 */ V(0, 0, 0, 0, 4) +}; + +# undef V +# undef PTR + +# define V(x, y, hlen) { { 1, hlen, x, y } } +# define PTR(offs, bits) { ptr: { 0, bits, offs } } + +static +union huffpair const hufftab0[] = { + /* */ V(0, 0, 0) +}; + +static +union huffpair const hufftab1[] = { + /* 000 */ V(1, 1, 3), + /* 001 */ V(0, 1, 3), + /* 010 */ V(1, 0, 2), + /* 011 */ V(1, 0, 2), + /* 100 */ V(0, 0, 1), + /* 101 */ V(0, 0, 1), + /* 110 */ V(0, 0, 1), + /* 111 */ V(0, 0, 1) +}; + +static +union huffpair const hufftab2[] = { + /* 000 */ PTR(8, 3), + /* 001 */ V(1, 1, 3), + /* 010 */ V(0, 1, 3), + /* 011 */ V(1, 0, 3), + /* 100 */ V(0, 0, 1), + /* 101 */ V(0, 0, 1), + /* 110 */ V(0, 0, 1), + /* 111 */ V(0, 0, 1), + + /* 000 ... */ + /* 000 */ V(2, 2, 3), /* 8 */ + /* 001 */ V(0, 2, 3), + /* 010 */ V(1, 2, 2), + /* 011 */ V(1, 2, 2), + /* 100 */ V(2, 1, 2), + /* 101 */ V(2, 1, 2), + /* 110 */ V(2, 0, 2), + /* 111 */ V(2, 0, 2) +}; + +static +union huffpair const hufftab3[] = { + /* 000 */ PTR(8, 3), + /* 001 */ V(1, 0, 3), + /* 010 */ V(1, 1, 2), + /* 011 */ V(1, 1, 2), + /* 100 */ V(0, 1, 2), + /* 101 */ V(0, 1, 2), + /* 110 */ V(0, 0, 2), + /* 111 */ V(0, 0, 2), + + /* 000 ... */ + /* 000 */ V(2, 2, 3), /* 8 */ + /* 001 */ V(0, 2, 3), + /* 010 */ V(1, 2, 2), + /* 011 */ V(1, 2, 2), + /* 100 */ V(2, 1, 2), + /* 101 */ V(2, 1, 2), + /* 110 */ V(2, 0, 2), + /* 111 */ V(2, 0, 2) +}; + +static +union huffpair const hufftab5[] = { + /* 000 */ PTR(8, 4), + /* 001 */ V(1, 1, 3), + /* 010 */ V(0, 1, 3), + /* 011 */ V(1, 0, 3), + /* 100 */ V(0, 0, 1), + /* 101 */ V(0, 0, 1), + /* 110 */ V(0, 0, 1), + /* 111 */ V(0, 0, 1), + + /* 000 ... */ + /* 0000 */ PTR(24, 1), /* 8 */ + /* 0001 */ V(3, 2, 4), + /* 0010 */ V(3, 1, 3), + /* 0011 */ V(3, 1, 3), + /* 0100 */ V(1, 3, 4), + /* 0101 */ V(0, 3, 4), + /* 0110 */ V(3, 0, 4), + /* 0111 */ V(2, 2, 4), + /* 1000 */ V(1, 2, 3), + /* 1001 */ V(1, 2, 3), + /* 1010 */ V(2, 1, 3), + /* 1011 */ V(2, 1, 3), + /* 1100 */ V(0, 2, 3), + /* 1101 */ V(0, 2, 3), + /* 1110 */ V(2, 0, 3), + /* 1111 */ V(2, 0, 3), + + /* 000 0000 ... */ + /* 0 */ V(3, 3, 1), /* 24 */ + /* 1 */ V(2, 3, 1) +}; + +static +union huffpair const hufftab6[] = { + /* 0000 */ PTR(16, 3), + /* 0001 */ PTR(24, 1), + /* 0010 */ PTR(26, 1), + /* 0011 */ V(1, 2, 4), + /* 0100 */ V(2, 1, 4), + /* 0101 */ V(2, 0, 4), + /* 0110 */ V(0, 1, 3), + /* 0111 */ V(0, 1, 3), + /* 1000 */ V(1, 1, 2), + /* 1001 */ V(1, 1, 2), + /* 1010 */ V(1, 1, 2), + /* 1011 */ V(1, 1, 2), + /* 1100 */ V(1, 0, 3), + /* 1101 */ V(1, 0, 3), + /* 1110 */ V(0, 0, 3), + /* 1111 */ V(0, 0, 3), + + /* 0000 ... */ + /* 000 */ V(3, 3, 3), /* 16 */ + /* 001 */ V(0, 3, 3), + /* 010 */ V(2, 3, 2), + /* 011 */ V(2, 3, 2), + /* 100 */ V(3, 2, 2), + /* 101 */ V(3, 2, 2), + /* 110 */ V(3, 0, 2), + /* 111 */ V(3, 0, 2), + + /* 0001 ... */ + /* 0 */ V(1, 3, 1), /* 24 */ + /* 1 */ V(3, 1, 1), + + /* 0010 ... */ + /* 0 */ V(2, 2, 1), /* 26 */ + /* 1 */ V(0, 2, 1) +}; + +static +union huffpair const hufftab7[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 2), + /* 0011 */ V(1, 1, 4), + /* 0100 */ V(0, 1, 3), + /* 0101 */ V(0, 1, 3), + /* 0110 */ V(1, 0, 3), + /* 0111 */ V(1, 0, 3), + /* 1000 */ V(0, 0, 1), + /* 1001 */ V(0, 0, 1), + /* 1010 */ V(0, 0, 1), + /* 1011 */ V(0, 0, 1), + /* 1100 */ V(0, 0, 1), + /* 1101 */ V(0, 0, 1), + /* 1110 */ V(0, 0, 1), + /* 1111 */ V(0, 0, 1), + + /* 0000 ... */ + /* 0000 */ PTR(52, 2), /* 16 */ + /* 0001 */ PTR(56, 1), + /* 0010 */ PTR(58, 1), + /* 0011 */ V(1, 5, 4), + /* 0100 */ V(5, 1, 4), + /* 0101 */ PTR(60, 1), + /* 0110 */ V(5, 0, 4), + /* 0111 */ PTR(62, 1), + /* 1000 */ V(2, 4, 4), + /* 1001 */ V(4, 2, 4), + /* 1010 */ V(1, 4, 3), + /* 1011 */ V(1, 4, 3), + /* 1100 */ V(4, 1, 3), + /* 1101 */ V(4, 1, 3), + /* 1110 */ V(4, 0, 3), + /* 1111 */ V(4, 0, 3), + + /* 0001 ... */ + /* 0000 */ V(0, 4, 4), /* 32 */ + /* 0001 */ V(2, 3, 4), + /* 0010 */ V(3, 2, 4), + /* 0011 */ V(0, 3, 4), + /* 0100 */ V(1, 3, 3), + /* 0101 */ V(1, 3, 3), + /* 0110 */ V(3, 1, 3), + /* 0111 */ V(3, 1, 3), + /* 1000 */ V(3, 0, 3), + /* 1001 */ V(3, 0, 3), + /* 1010 */ V(2, 2, 3), + /* 1011 */ V(2, 2, 3), + /* 1100 */ V(1, 2, 2), + /* 1101 */ V(1, 2, 2), + /* 1110 */ V(1, 2, 2), + /* 1111 */ V(1, 2, 2), + + /* 0010 ... */ + /* 00 */ V(2, 1, 1), /* 48 */ + /* 01 */ V(2, 1, 1), + /* 10 */ V(0, 2, 2), + /* 11 */ V(2, 0, 2), + + /* 0000 0000 ... */ + /* 00 */ V(5, 5, 2), /* 52 */ + /* 01 */ V(4, 5, 2), + /* 10 */ V(5, 4, 2), + /* 11 */ V(5, 3, 2), + + /* 0000 0001 ... */ + /* 0 */ V(3, 5, 1), /* 56 */ + /* 1 */ V(4, 4, 1), + + /* 0000 0010 ... */ + /* 0 */ V(2, 5, 1), /* 58 */ + /* 1 */ V(5, 2, 1), + + /* 0000 0101 ... */ + /* 0 */ V(0, 5, 1), /* 60 */ + /* 1 */ V(3, 4, 1), + + /* 0000 0111 ... */ + /* 0 */ V(4, 3, 1), /* 62 */ + /* 1 */ V(3, 3, 1) +}; + +# if 0 +/* this version saves 8 entries (16 bytes) at the expense of + an extra lookup in 4 out of 36 cases */ +static +union huffpair const hufftab8[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 2), + /* 0010 */ V(1, 2, 4), + /* 0011 */ V(2, 1, 4), + /* 0100 */ V(1, 1, 2), + /* 0101 */ V(1, 1, 2), + /* 0110 */ V(1, 1, 2), + /* 0111 */ V(1, 1, 2), + /* 1000 */ V(0, 1, 3), + /* 1001 */ V(0, 1, 3), + /* 1010 */ V(1, 0, 3), + /* 1011 */ V(1, 0, 3), + /* 1100 */ V(0, 0, 2), + /* 1101 */ V(0, 0, 2), + /* 1110 */ V(0, 0, 2), + /* 1111 */ V(0, 0, 2), + + /* 0000 ... */ + /* 0000 */ PTR(36, 3), /* 16 */ + /* 0001 */ PTR(44, 2), + /* 0010 */ PTR(48, 1), + /* 0011 */ V(1, 5, 4), + /* 0100 */ V(5, 1, 4), + /* 0101 */ PTR(50, 1), + /* 0110 */ PTR(52, 1), + /* 0111 */ V(2, 4, 4), + /* 1000 */ V(4, 2, 4), + /* 1001 */ V(1, 4, 4), + /* 1010 */ V(4, 1, 3), + /* 1011 */ V(4, 1, 3), + /* 1100 */ V(0, 4, 4), + /* 1101 */ V(4, 0, 4), + /* 1110 */ V(2, 3, 4), + /* 1111 */ V(3, 2, 4), + + /* 0001 ... */ + /* 00 */ PTR(54, 2), /* 32 */ + /* 01 */ V(2, 2, 2), + /* 10 */ V(0, 2, 2), + /* 11 */ V(2, 0, 2), + + /* 0000 0000 ... */ + /* 000 */ V(5, 5, 3), /* 36 */ + /* 001 */ V(5, 4, 3), + /* 010 */ V(4, 5, 2), + /* 011 */ V(4, 5, 2), + /* 100 */ V(5, 3, 1), + /* 101 */ V(5, 3, 1), + /* 110 */ V(5, 3, 1), + /* 111 */ V(5, 3, 1), + + /* 0000 0001 ... */ + /* 00 */ V(3, 5, 2), /* 44 */ + /* 01 */ V(4, 4, 2), + /* 10 */ V(2, 5, 1), + /* 11 */ V(2, 5, 1), + + /* 0000 0010 ... */ + /* 0 */ V(5, 2, 1), /* 48 */ + /* 1 */ V(0, 5, 1), + + /* 0000 0101 ... */ + /* 0 */ V(3, 4, 1), /* 50 */ + /* 1 */ V(4, 3, 1), + + /* 0000 0110 ... */ + /* 0 */ V(5, 0, 1), /* 52 */ + /* 1 */ V(3, 3, 1), + + /* 0001 00 ... */ + /* 00 */ V(1, 3, 2), /* 54 */ + /* 01 */ V(3, 1, 2), + /* 10 */ V(0, 3, 2), + /* 11 */ V(3, 0, 2), +}; +# else +static +union huffpair const hufftab8[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ V(1, 2, 4), + /* 0011 */ V(2, 1, 4), + /* 0100 */ V(1, 1, 2), + /* 0101 */ V(1, 1, 2), + /* 0110 */ V(1, 1, 2), + /* 0111 */ V(1, 1, 2), + /* 1000 */ V(0, 1, 3), + /* 1001 */ V(0, 1, 3), + /* 1010 */ V(1, 0, 3), + /* 1011 */ V(1, 0, 3), + /* 1100 */ V(0, 0, 2), + /* 1101 */ V(0, 0, 2), + /* 1110 */ V(0, 0, 2), + /* 1111 */ V(0, 0, 2), + + /* 0000 ... */ + /* 0000 */ PTR(48, 3), /* 16 */ + /* 0001 */ PTR(56, 2), + /* 0010 */ PTR(60, 1), + /* 0011 */ V(1, 5, 4), + /* 0100 */ V(5, 1, 4), + /* 0101 */ PTR(62, 1), + /* 0110 */ PTR(64, 1), + /* 0111 */ V(2, 4, 4), + /* 1000 */ V(4, 2, 4), + /* 1001 */ V(1, 4, 4), + /* 1010 */ V(4, 1, 3), + /* 1011 */ V(4, 1, 3), + /* 1100 */ V(0, 4, 4), + /* 1101 */ V(4, 0, 4), + /* 1110 */ V(2, 3, 4), + /* 1111 */ V(3, 2, 4), + + /* 0001 ... */ + /* 0000 */ V(1, 3, 4), /* 32 */ + /* 0001 */ V(3, 1, 4), + /* 0010 */ V(0, 3, 4), + /* 0011 */ V(3, 0, 4), + /* 0100 */ V(2, 2, 2), + /* 0101 */ V(2, 2, 2), + /* 0110 */ V(2, 2, 2), + /* 0111 */ V(2, 2, 2), + /* 1000 */ V(0, 2, 2), + /* 1001 */ V(0, 2, 2), + /* 1010 */ V(0, 2, 2), + /* 1011 */ V(0, 2, 2), + /* 1100 */ V(2, 0, 2), + /* 1101 */ V(2, 0, 2), + /* 1110 */ V(2, 0, 2), + /* 1111 */ V(2, 0, 2), + + /* 0000 0000 ... */ + /* 000 */ V(5, 5, 3), /* 48 */ + /* 001 */ V(5, 4, 3), + /* 010 */ V(4, 5, 2), + /* 011 */ V(4, 5, 2), + /* 100 */ V(5, 3, 1), + /* 101 */ V(5, 3, 1), + /* 110 */ V(5, 3, 1), + /* 111 */ V(5, 3, 1), + + /* 0000 0001 ... */ + /* 00 */ V(3, 5, 2), /* 56 */ + /* 01 */ V(4, 4, 2), + /* 10 */ V(2, 5, 1), + /* 11 */ V(2, 5, 1), + + /* 0000 0010 ... */ + /* 0 */ V(5, 2, 1), /* 60 */ + /* 1 */ V(0, 5, 1), + + /* 0000 0101 ... */ + /* 0 */ V(3, 4, 1), /* 62 */ + /* 1 */ V(4, 3, 1), + + /* 0000 0110 ... */ + /* 0 */ V(5, 0, 1), /* 64 */ + /* 1 */ V(3, 3, 1) +}; +# endif + +static +union huffpair const hufftab9[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 3), + /* 0010 */ PTR(40, 2), + /* 0011 */ PTR(44, 2), + /* 0100 */ PTR(48, 1), + /* 0101 */ V(1, 2, 4), + /* 0110 */ V(2, 1, 4), + /* 0111 */ V(2, 0, 4), + /* 1000 */ V(1, 1, 3), + /* 1001 */ V(1, 1, 3), + /* 1010 */ V(0, 1, 3), + /* 1011 */ V(0, 1, 3), + /* 1100 */ V(1, 0, 3), + /* 1101 */ V(1, 0, 3), + /* 1110 */ V(0, 0, 3), + /* 1111 */ V(0, 0, 3), + + /* 0000 ... */ + /* 0000 */ PTR(50, 1), /* 16 */ + /* 0001 */ V(3, 5, 4), + /* 0010 */ V(5, 3, 4), + /* 0011 */ PTR(52, 1), + /* 0100 */ V(4, 4, 4), + /* 0101 */ V(2, 5, 4), + /* 0110 */ V(5, 2, 4), + /* 0111 */ V(1, 5, 4), + /* 1000 */ V(5, 1, 3), + /* 1001 */ V(5, 1, 3), + /* 1010 */ V(3, 4, 3), + /* 1011 */ V(3, 4, 3), + /* 1100 */ V(4, 3, 3), + /* 1101 */ V(4, 3, 3), + /* 1110 */ V(5, 0, 4), + /* 1111 */ V(0, 4, 4), + + /* 0001 ... */ + /* 000 */ V(2, 4, 3), /* 32 */ + /* 001 */ V(4, 2, 3), + /* 010 */ V(3, 3, 3), + /* 011 */ V(4, 0, 3), + /* 100 */ V(1, 4, 2), + /* 101 */ V(1, 4, 2), + /* 110 */ V(4, 1, 2), + /* 111 */ V(4, 1, 2), + + /* 0010 ... */ + /* 00 */ V(2, 3, 2), /* 40 */ + /* 01 */ V(3, 2, 2), + /* 10 */ V(1, 3, 1), + /* 11 */ V(1, 3, 1), + + /* 0011 ... */ + /* 00 */ V(3, 1, 1), /* 44 */ + /* 01 */ V(3, 1, 1), + /* 10 */ V(0, 3, 2), + /* 11 */ V(3, 0, 2), + + /* 0100 ... */ + /* 0 */ V(2, 2, 1), /* 48 */ + /* 1 */ V(0, 2, 1), + + /* 0000 0000 ... */ + /* 0 */ V(5, 5, 1), /* 50 */ + /* 1 */ V(4, 5, 1), + + /* 0000 0011 ... */ + /* 0 */ V(5, 4, 1), /* 52 */ + /* 1 */ V(0, 5, 1) +}; + +static +union huffpair const hufftab10[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 2), + /* 0011 */ V(1, 1, 4), + /* 0100 */ V(0, 1, 3), + /* 0101 */ V(0, 1, 3), + /* 0110 */ V(1, 0, 3), + /* 0111 */ V(1, 0, 3), + /* 1000 */ V(0, 0, 1), + /* 1001 */ V(0, 0, 1), + /* 1010 */ V(0, 0, 1), + /* 1011 */ V(0, 0, 1), + /* 1100 */ V(0, 0, 1), + /* 1101 */ V(0, 0, 1), + /* 1110 */ V(0, 0, 1), + /* 1111 */ V(0, 0, 1), + + /* 0000 ... */ + /* 0000 */ PTR(52, 3), /* 16 */ + /* 0001 */ PTR(60, 2), + /* 0010 */ PTR(64, 3), + /* 0011 */ PTR(72, 1), + /* 0100 */ PTR(74, 2), + /* 0101 */ PTR(78, 2), + /* 0110 */ PTR(82, 2), + /* 0111 */ V(1, 7, 4), + /* 1000 */ V(7, 1, 4), + /* 1001 */ PTR(86, 1), + /* 1010 */ PTR(88, 2), + /* 1011 */ PTR(92, 2), + /* 1100 */ V(1, 6, 4), + /* 1101 */ V(6, 1, 4), + /* 1110 */ V(6, 0, 4), + /* 1111 */ PTR(96, 1), + + /* 0001 ... */ + /* 0000 */ PTR(98, 1), /* 32 */ + /* 0001 */ PTR(100, 1), + /* 0010 */ V(1, 4, 4), + /* 0011 */ V(4, 1, 4), + /* 0100 */ V(4, 0, 4), + /* 0101 */ V(2, 3, 4), + /* 0110 */ V(3, 2, 4), + /* 0111 */ V(0, 3, 4), + /* 1000 */ V(1, 3, 3), + /* 1001 */ V(1, 3, 3), + /* 1010 */ V(3, 1, 3), + /* 1011 */ V(3, 1, 3), + /* 1100 */ V(3, 0, 3), + /* 1101 */ V(3, 0, 3), + /* 1110 */ V(2, 2, 3), + /* 1111 */ V(2, 2, 3), + + /* 0010 ... */ + /* 00 */ V(1, 2, 2), /* 48 */ + /* 01 */ V(2, 1, 2), + /* 10 */ V(0, 2, 2), + /* 11 */ V(2, 0, 2), + + /* 0000 0000 ... */ + /* 000 */ V(7, 7, 3), /* 52 */ + /* 001 */ V(6, 7, 3), + /* 010 */ V(7, 6, 3), + /* 011 */ V(5, 7, 3), + /* 100 */ V(7, 5, 3), + /* 101 */ V(6, 6, 3), + /* 110 */ V(4, 7, 2), + /* 111 */ V(4, 7, 2), + + /* 0000 0001 ... */ + /* 00 */ V(7, 4, 2), /* 60 */ + /* 01 */ V(5, 6, 2), + /* 10 */ V(6, 5, 2), + /* 11 */ V(3, 7, 2), + + /* 0000 0010 ... */ + /* 000 */ V(7, 3, 2), /* 64 */ + /* 001 */ V(7, 3, 2), + /* 010 */ V(4, 6, 2), + /* 011 */ V(4, 6, 2), + /* 100 */ V(5, 5, 3), + /* 101 */ V(5, 4, 3), + /* 110 */ V(6, 3, 2), + /* 111 */ V(6, 3, 2), + + /* 0000 0011 ... */ + /* 0 */ V(2, 7, 1), /* 72 */ + /* 1 */ V(7, 2, 1), + + /* 0000 0100 ... */ + /* 00 */ V(6, 4, 2), /* 74 */ + /* 01 */ V(0, 7, 2), + /* 10 */ V(7, 0, 1), + /* 11 */ V(7, 0, 1), + + /* 0000 0101 ... */ + /* 00 */ V(6, 2, 1), /* 78 */ + /* 01 */ V(6, 2, 1), + /* 10 */ V(4, 5, 2), + /* 11 */ V(3, 5, 2), + + /* 0000 0110 ... */ + /* 00 */ V(0, 6, 1), /* 82 */ + /* 01 */ V(0, 6, 1), + /* 10 */ V(5, 3, 2), + /* 11 */ V(4, 4, 2), + + /* 0000 1001 ... */ + /* 0 */ V(3, 6, 1), /* 86 */ + /* 1 */ V(2, 6, 1), + + /* 0000 1010 ... */ + /* 00 */ V(2, 5, 2), /* 88 */ + /* 01 */ V(5, 2, 2), + /* 10 */ V(1, 5, 1), + /* 11 */ V(1, 5, 1), + + /* 0000 1011 ... */ + /* 00 */ V(5, 1, 1), /* 92 */ + /* 01 */ V(5, 1, 1), + /* 10 */ V(3, 4, 2), + /* 11 */ V(4, 3, 2), + + /* 0000 1111 ... */ + /* 0 */ V(0, 5, 1), /* 96 */ + /* 1 */ V(5, 0, 1), + + /* 0001 0000 ... */ + /* 0 */ V(2, 4, 1), /* 98 */ + /* 1 */ V(4, 2, 1), + + /* 0001 0001 ... */ + /* 0 */ V(3, 3, 1), /* 100 */ + /* 1 */ V(0, 4, 1) +}; + +static +union huffpair const hufftab11[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 4), + /* 0011 */ PTR(64, 3), + /* 0100 */ V(1, 2, 4), + /* 0101 */ PTR(72, 1), + /* 0110 */ V(1, 1, 3), + /* 0111 */ V(1, 1, 3), + /* 1000 */ V(0, 1, 3), + /* 1001 */ V(0, 1, 3), + /* 1010 */ V(1, 0, 3), + /* 1011 */ V(1, 0, 3), + /* 1100 */ V(0, 0, 2), + /* 1101 */ V(0, 0, 2), + /* 1110 */ V(0, 0, 2), + /* 1111 */ V(0, 0, 2), + + /* 0000 ... */ + /* 0000 */ PTR(74, 2), /* 16 */ + /* 0001 */ PTR(78, 3), + /* 0010 */ PTR(86, 2), + /* 0011 */ PTR(90, 1), + /* 0100 */ PTR(92, 2), + /* 0101 */ V(2, 7, 4), + /* 0110 */ V(7, 2, 4), + /* 0111 */ PTR(96, 1), + /* 1000 */ V(7, 1, 3), + /* 1001 */ V(7, 1, 3), + /* 1010 */ V(1, 7, 4), + /* 1011 */ V(7, 0, 4), + /* 1100 */ V(3, 6, 4), + /* 1101 */ V(6, 3, 4), + /* 1110 */ V(6, 0, 4), + /* 1111 */ PTR(98, 1), + + /* 0001 ... */ + /* 0000 */ PTR(100, 1), /* 32 */ + /* 0001 */ V(1, 5, 4), + /* 0010 */ V(6, 2, 3), + /* 0011 */ V(6, 2, 3), + /* 0100 */ V(2, 6, 4), + /* 0101 */ V(0, 6, 4), + /* 0110 */ V(1, 6, 3), + /* 0111 */ V(1, 6, 3), + /* 1000 */ V(6, 1, 3), + /* 1001 */ V(6, 1, 3), + /* 1010 */ V(5, 1, 4), + /* 1011 */ V(3, 4, 4), + /* 1100 */ V(5, 0, 4), + /* 1101 */ PTR(102, 1), + /* 1110 */ V(2, 4, 4), + /* 1111 */ V(4, 2, 4), + + /* 0010 ... */ + /* 0000 */ V(1, 4, 4), /* 48 */ + /* 0001 */ V(4, 1, 4), + /* 0010 */ V(0, 4, 4), + /* 0011 */ V(4, 0, 4), + /* 0100 */ V(2, 3, 3), + /* 0101 */ V(2, 3, 3), + /* 0110 */ V(3, 2, 3), + /* 0111 */ V(3, 2, 3), + /* 1000 */ V(1, 3, 2), + /* 1001 */ V(1, 3, 2), + /* 1010 */ V(1, 3, 2), + /* 1011 */ V(1, 3, 2), + /* 1100 */ V(3, 1, 2), + /* 1101 */ V(3, 1, 2), + /* 1110 */ V(3, 1, 2), + /* 1111 */ V(3, 1, 2), + + /* 0011 ... */ + /* 000 */ V(0, 3, 3), /* 64 */ + /* 001 */ V(3, 0, 3), + /* 010 */ V(2, 2, 2), + /* 011 */ V(2, 2, 2), + /* 100 */ V(2, 1, 1), + /* 101 */ V(2, 1, 1), + /* 110 */ V(2, 1, 1), + /* 111 */ V(2, 1, 1), + + /* 0101 ... */ + /* 0 */ V(0, 2, 1), /* 72 */ + /* 1 */ V(2, 0, 1), + + /* 0000 0000 ... */ + /* 00 */ V(7, 7, 2), /* 74 */ + /* 01 */ V(6, 7, 2), + /* 10 */ V(7, 6, 2), + /* 11 */ V(7, 5, 2), + + /* 0000 0001 ... */ + /* 000 */ V(6, 6, 2), /* 78 */ + /* 001 */ V(6, 6, 2), + /* 010 */ V(4, 7, 2), + /* 011 */ V(4, 7, 2), + /* 100 */ V(7, 4, 2), + /* 101 */ V(7, 4, 2), + /* 110 */ V(5, 7, 3), + /* 111 */ V(5, 5, 3), + + /* 0000 0010 ... */ + /* 00 */ V(5, 6, 2), /* 86 */ + /* 01 */ V(6, 5, 2), + /* 10 */ V(3, 7, 1), + /* 11 */ V(3, 7, 1), + + /* 0000 0011 ... */ + /* 0 */ V(7, 3, 1), /* 90 */ + /* 1 */ V(4, 6, 1), + + /* 0000 0100 ... */ + /* 00 */ V(4, 5, 2), /* 92 */ + /* 01 */ V(5, 4, 2), + /* 10 */ V(3, 5, 2), + /* 11 */ V(5, 3, 2), + + /* 0000 0111 ... */ + /* 0 */ V(6, 4, 1), /* 96 */ + /* 1 */ V(0, 7, 1), + + /* 0000 1111 ... */ + /* 0 */ V(4, 4, 1), /* 98 */ + /* 1 */ V(2, 5, 1), + + /* 0001 0000 ... */ + /* 0 */ V(5, 2, 1), /* 100 */ + /* 1 */ V(0, 5, 1), + + /* 0001 1101 ... */ + /* 0 */ V(4, 3, 1), /* 102 */ + /* 1 */ V(3, 3, 1) +}; + +static +union huffpair const hufftab12[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 4), + /* 0011 */ PTR(64, 2), + /* 0100 */ PTR(68, 3), + /* 0101 */ PTR(76, 1), + /* 0110 */ V(1, 2, 4), + /* 0111 */ V(2, 1, 4), + /* 1000 */ PTR(78, 1), + /* 1001 */ V(0, 0, 4), + /* 1010 */ V(1, 1, 3), + /* 1011 */ V(1, 1, 3), + /* 1100 */ V(0, 1, 3), + /* 1101 */ V(0, 1, 3), + /* 1110 */ V(1, 0, 3), + /* 1111 */ V(1, 0, 3), + + /* 0000 ... */ + /* 0000 */ PTR(80, 2), /* 16 */ + /* 0001 */ PTR(84, 1), + /* 0010 */ PTR(86, 1), + /* 0011 */ PTR(88, 1), + /* 0100 */ V(5, 6, 4), + /* 0101 */ V(3, 7, 4), + /* 0110 */ PTR(90, 1), + /* 0111 */ V(2, 7, 4), + /* 1000 */ V(7, 2, 4), + /* 1001 */ V(4, 6, 4), + /* 1010 */ V(6, 4, 4), + /* 1011 */ V(1, 7, 4), + /* 1100 */ V(7, 1, 4), + /* 1101 */ PTR(92, 1), + /* 1110 */ V(3, 6, 4), + /* 1111 */ V(6, 3, 4), + + /* 0001 ... */ + /* 0000 */ V(4, 5, 4), /* 32 */ + /* 0001 */ V(5, 4, 4), + /* 0010 */ V(4, 4, 4), + /* 0011 */ PTR(94, 1), + /* 0100 */ V(2, 6, 3), + /* 0101 */ V(2, 6, 3), + /* 0110 */ V(6, 2, 3), + /* 0111 */ V(6, 2, 3), + /* 1000 */ V(6, 1, 3), + /* 1001 */ V(6, 1, 3), + /* 1010 */ V(1, 6, 4), + /* 1011 */ V(6, 0, 4), + /* 1100 */ V(3, 5, 4), + /* 1101 */ V(5, 3, 4), + /* 1110 */ V(2, 5, 4), + /* 1111 */ V(5, 2, 4), + + /* 0010 ... */ + /* 0000 */ V(1, 5, 3), /* 48 */ + /* 0001 */ V(1, 5, 3), + /* 0010 */ V(5, 1, 3), + /* 0011 */ V(5, 1, 3), + /* 0100 */ V(3, 4, 3), + /* 0101 */ V(3, 4, 3), + /* 0110 */ V(4, 3, 3), + /* 0111 */ V(4, 3, 3), + /* 1000 */ V(5, 0, 4), + /* 1001 */ V(0, 4, 4), + /* 1010 */ V(2, 4, 3), + /* 1011 */ V(2, 4, 3), + /* 1100 */ V(4, 2, 3), + /* 1101 */ V(4, 2, 3), + /* 1110 */ V(1, 4, 3), + /* 1111 */ V(1, 4, 3), + + /* 0011 ... */ + /* 00 */ V(3, 3, 2), /* 64 */ + /* 01 */ V(4, 1, 2), + /* 10 */ V(2, 3, 2), + /* 11 */ V(3, 2, 2), + + /* 0100 ... */ + /* 000 */ V(4, 0, 3), /* 68 */ + /* 001 */ V(0, 3, 3), + /* 010 */ V(3, 0, 2), + /* 011 */ V(3, 0, 2), + /* 100 */ V(1, 3, 1), + /* 101 */ V(1, 3, 1), + /* 110 */ V(1, 3, 1), + /* 111 */ V(1, 3, 1), + + /* 0101 ... */ + /* 0 */ V(3, 1, 1), /* 76 */ + /* 1 */ V(2, 2, 1), + + /* 1000 ... */ + /* 0 */ V(0, 2, 1), /* 78 */ + /* 1 */ V(2, 0, 1), + + /* 0000 0000 ... */ + /* 00 */ V(7, 7, 2), /* 80 */ + /* 01 */ V(6, 7, 2), + /* 10 */ V(7, 6, 1), + /* 11 */ V(7, 6, 1), + + /* 0000 0001 ... */ + /* 0 */ V(5, 7, 1), /* 84 */ + /* 1 */ V(7, 5, 1), + + /* 0000 0010 ... */ + /* 0 */ V(6, 6, 1), /* 86 */ + /* 1 */ V(4, 7, 1), + + /* 0000 0011 ... */ + /* 0 */ V(7, 4, 1), /* 88 */ + /* 1 */ V(6, 5, 1), + + /* 0000 0110 ... */ + /* 0 */ V(7, 3, 1), /* 90 */ + /* 1 */ V(5, 5, 1), + + /* 0000 1101 ... */ + /* 0 */ V(0, 7, 1), /* 92 */ + /* 1 */ V(7, 0, 1), + + /* 0001 0011 ... */ + /* 0 */ V(0, 6, 1), /* 94 */ + /* 1 */ V(0, 5, 1) +}; + +static +union huffpair const hufftab13[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 4), + /* 0011 */ PTR(64, 2), + /* 0100 */ V(1, 1, 4), + /* 0101 */ V(0, 1, 4), + /* 0110 */ V(1, 0, 3), + /* 0111 */ V(1, 0, 3), + /* 1000 */ V(0, 0, 1), + /* 1001 */ V(0, 0, 1), + /* 1010 */ V(0, 0, 1), + /* 1011 */ V(0, 0, 1), + /* 1100 */ V(0, 0, 1), + /* 1101 */ V(0, 0, 1), + /* 1110 */ V(0, 0, 1), + /* 1111 */ V(0, 0, 1), + + /* 0000 ... */ + /* 0000 */ PTR(68, 4), /* 16 */ + /* 0001 */ PTR(84, 4), + /* 0010 */ PTR(100, 4), + /* 0011 */ PTR(116, 4), + /* 0100 */ PTR(132, 4), + /* 0101 */ PTR(148, 4), + /* 0110 */ PTR(164, 3), + /* 0111 */ PTR(172, 3), + /* 1000 */ PTR(180, 3), + /* 1001 */ PTR(188, 3), + /* 1010 */ PTR(196, 3), + /* 1011 */ PTR(204, 3), + /* 1100 */ PTR(212, 1), + /* 1101 */ PTR(214, 2), + /* 1110 */ PTR(218, 3), + /* 1111 */ PTR(226, 1), + + /* 0001 ... */ + /* 0000 */ PTR(228, 2), /* 32 */ + /* 0001 */ PTR(232, 2), + /* 0010 */ PTR(236, 2), + /* 0011 */ PTR(240, 2), + /* 0100 */ V(8, 1, 4), + /* 0101 */ PTR(244, 1), + /* 0110 */ PTR(246, 1), + /* 0111 */ PTR(248, 1), + /* 1000 */ PTR(250, 2), + /* 1001 */ PTR(254, 1), + /* 1010 */ V(1, 5, 4), + /* 1011 */ V(5, 1, 4), + /* 1100 */ PTR(256, 1), + /* 1101 */ PTR(258, 1), + /* 1110 */ PTR(260, 1), + /* 1111 */ V(1, 4, 4), + + /* 0010 ... */ + /* 0000 */ V(4, 1, 3), /* 48 */ + /* 0001 */ V(4, 1, 3), + /* 0010 */ V(0, 4, 4), + /* 0011 */ V(4, 0, 4), + /* 0100 */ V(2, 3, 4), + /* 0101 */ V(3, 2, 4), + /* 0110 */ V(1, 3, 3), + /* 0111 */ V(1, 3, 3), + /* 1000 */ V(3, 1, 3), + /* 1001 */ V(3, 1, 3), + /* 1010 */ V(0, 3, 3), + /* 1011 */ V(0, 3, 3), + /* 1100 */ V(3, 0, 3), + /* 1101 */ V(3, 0, 3), + /* 1110 */ V(2, 2, 3), + /* 1111 */ V(2, 2, 3), + + /* 0011 ... */ + /* 00 */ V(1, 2, 2), /* 64 */ + /* 01 */ V(2, 1, 2), + /* 10 */ V(0, 2, 2), + /* 11 */ V(2, 0, 2), + + /* 0000 0000 ... */ + /* 0000 */ PTR(262, 4), /* 68 */ + /* 0001 */ PTR(278, 4), + /* 0010 */ PTR(294, 4), + /* 0011 */ PTR(310, 3), + /* 0100 */ PTR(318, 2), + /* 0101 */ PTR(322, 2), + /* 0110 */ PTR(326, 3), + /* 0111 */ PTR(334, 2), + /* 1000 */ PTR(338, 1), + /* 1001 */ PTR(340, 2), + /* 1010 */ PTR(344, 2), + /* 1011 */ PTR(348, 2), + /* 1100 */ PTR(352, 2), + /* 1101 */ PTR(356, 2), + /* 1110 */ V(1, 15, 4), + /* 1111 */ V(15, 1, 4), + + /* 0000 0001 ... */ + /* 0000 */ V(15, 0, 4), /* 84 */ + /* 0001 */ PTR(360, 1), + /* 0010 */ PTR(362, 1), + /* 0011 */ PTR(364, 1), + /* 0100 */ V(14, 2, 4), + /* 0101 */ PTR(366, 1), + /* 0110 */ V(1, 14, 4), + /* 0111 */ V(14, 1, 4), + /* 1000 */ PTR(368, 1), + /* 1001 */ PTR(370, 1), + /* 1010 */ PTR(372, 1), + /* 1011 */ PTR(374, 1), + /* 1100 */ PTR(376, 1), + /* 1101 */ PTR(378, 1), + /* 1110 */ V(12, 6, 4), + /* 1111 */ V(3, 13, 4), + + /* 0000 0010 ... */ + /* 0000 */ PTR(380, 1), /* 100 */ + /* 0001 */ V(2, 13, 4), + /* 0010 */ V(13, 2, 4), + /* 0011 */ V(1, 13, 4), + /* 0100 */ V(11, 7, 4), + /* 0101 */ PTR(382, 1), + /* 0110 */ PTR(384, 1), + /* 0111 */ V(12, 3, 4), + /* 1000 */ PTR(386, 1), + /* 1001 */ V(4, 11, 4), + /* 1010 */ V(13, 1, 3), + /* 1011 */ V(13, 1, 3), + /* 1100 */ V(0, 13, 4), + /* 1101 */ V(13, 0, 4), + /* 1110 */ V(8, 10, 4), + /* 1111 */ V(10, 8, 4), + + /* 0000 0011 ... */ + /* 0000 */ V(4, 12, 4), /* 116 */ + /* 0001 */ V(12, 4, 4), + /* 0010 */ V(6, 11, 4), + /* 0011 */ V(11, 6, 4), + /* 0100 */ V(3, 12, 3), + /* 0101 */ V(3, 12, 3), + /* 0110 */ V(2, 12, 3), + /* 0111 */ V(2, 12, 3), + /* 1000 */ V(12, 2, 3), + /* 1001 */ V(12, 2, 3), + /* 1010 */ V(5, 11, 3), + /* 1011 */ V(5, 11, 3), + /* 1100 */ V(11, 5, 4), + /* 1101 */ V(8, 9, 4), + /* 1110 */ V(1, 12, 3), + /* 1111 */ V(1, 12, 3), + + /* 0000 0100 ... */ + /* 0000 */ V(12, 1, 3), /* 132 */ + /* 0001 */ V(12, 1, 3), + /* 0010 */ V(9, 8, 4), + /* 0011 */ V(0, 12, 4), + /* 0100 */ V(12, 0, 3), + /* 0101 */ V(12, 0, 3), + /* 0110 */ V(11, 4, 4), + /* 0111 */ V(6, 10, 4), + /* 1000 */ V(10, 6, 4), + /* 1001 */ V(7, 9, 4), + /* 1010 */ V(3, 11, 3), + /* 1011 */ V(3, 11, 3), + /* 1100 */ V(11, 3, 3), + /* 1101 */ V(11, 3, 3), + /* 1110 */ V(8, 8, 4), + /* 1111 */ V(5, 10, 4), + + /* 0000 0101 ... */ + /* 0000 */ V(2, 11, 3), /* 148 */ + /* 0001 */ V(2, 11, 3), + /* 0010 */ V(10, 5, 4), + /* 0011 */ V(6, 9, 4), + /* 0100 */ V(10, 4, 3), + /* 0101 */ V(10, 4, 3), + /* 0110 */ V(7, 8, 4), + /* 0111 */ V(8, 7, 4), + /* 1000 */ V(9, 4, 3), + /* 1001 */ V(9, 4, 3), + /* 1010 */ V(7, 7, 4), + /* 1011 */ V(7, 6, 4), + /* 1100 */ V(11, 2, 2), + /* 1101 */ V(11, 2, 2), + /* 1110 */ V(11, 2, 2), + /* 1111 */ V(11, 2, 2), + + /* 0000 0110 ... */ + /* 000 */ V(1, 11, 2), /* 164 */ + /* 001 */ V(1, 11, 2), + /* 010 */ V(11, 1, 2), + /* 011 */ V(11, 1, 2), + /* 100 */ V(0, 11, 3), + /* 101 */ V(11, 0, 3), + /* 110 */ V(9, 6, 3), + /* 111 */ V(4, 10, 3), + + /* 0000 0111 ... */ + /* 000 */ V(3, 10, 3), /* 172 */ + /* 001 */ V(10, 3, 3), + /* 010 */ V(5, 9, 3), + /* 011 */ V(9, 5, 3), + /* 100 */ V(2, 10, 2), + /* 101 */ V(2, 10, 2), + /* 110 */ V(10, 2, 2), + /* 111 */ V(10, 2, 2), + + /* 0000 1000 ... */ + /* 000 */ V(1, 10, 2), /* 180 */ + /* 001 */ V(1, 10, 2), + /* 010 */ V(10, 1, 2), + /* 011 */ V(10, 1, 2), + /* 100 */ V(0, 10, 3), + /* 101 */ V(6, 8, 3), + /* 110 */ V(10, 0, 2), + /* 111 */ V(10, 0, 2), + + /* 0000 1001 ... */ + /* 000 */ V(8, 6, 3), /* 188 */ + /* 001 */ V(4, 9, 3), + /* 010 */ V(9, 3, 2), + /* 011 */ V(9, 3, 2), + /* 100 */ V(3, 9, 3), + /* 101 */ V(5, 8, 3), + /* 110 */ V(8, 5, 3), + /* 111 */ V(6, 7, 3), + + /* 0000 1010 ... */ + /* 000 */ V(2, 9, 2), /* 196 */ + /* 001 */ V(2, 9, 2), + /* 010 */ V(9, 2, 2), + /* 011 */ V(9, 2, 2), + /* 100 */ V(5, 7, 3), + /* 101 */ V(7, 5, 3), + /* 110 */ V(3, 8, 2), + /* 111 */ V(3, 8, 2), + + /* 0000 1011 ... */ + /* 000 */ V(8, 3, 2), /* 204 */ + /* 001 */ V(8, 3, 2), + /* 010 */ V(6, 6, 3), + /* 011 */ V(4, 7, 3), + /* 100 */ V(7, 4, 3), + /* 101 */ V(5, 6, 3), + /* 110 */ V(6, 5, 3), + /* 111 */ V(7, 3, 3), + + /* 0000 1100 ... */ + /* 0 */ V(1, 9, 1), /* 212 */ + /* 1 */ V(9, 1, 1), + + /* 0000 1101 ... */ + /* 00 */ V(0, 9, 2), /* 214 */ + /* 01 */ V(9, 0, 2), + /* 10 */ V(4, 8, 2), + /* 11 */ V(8, 4, 2), + + /* 0000 1110 ... */ + /* 000 */ V(7, 2, 2), /* 218 */ + /* 001 */ V(7, 2, 2), + /* 010 */ V(4, 6, 3), + /* 011 */ V(6, 4, 3), + /* 100 */ V(2, 8, 1), + /* 101 */ V(2, 8, 1), + /* 110 */ V(2, 8, 1), + /* 111 */ V(2, 8, 1), + + /* 0000 1111 ... */ + /* 0 */ V(8, 2, 1), /* 226 */ + /* 1 */ V(1, 8, 1), + + /* 0001 0000 ... */ + /* 00 */ V(3, 7, 2), /* 228 */ + /* 01 */ V(2, 7, 2), + /* 10 */ V(1, 7, 1), + /* 11 */ V(1, 7, 1), + + /* 0001 0001 ... */ + /* 00 */ V(7, 1, 1), /* 232 */ + /* 01 */ V(7, 1, 1), + /* 10 */ V(5, 5, 2), + /* 11 */ V(0, 7, 2), + + /* 0001 0010 ... */ + /* 00 */ V(7, 0, 2), /* 236 */ + /* 01 */ V(3, 6, 2), + /* 10 */ V(6, 3, 2), + /* 11 */ V(4, 5, 2), + + /* 0001 0011 ... */ + /* 00 */ V(5, 4, 2), /* 240 */ + /* 01 */ V(2, 6, 2), + /* 10 */ V(6, 2, 2), + /* 11 */ V(3, 5, 2), + + /* 0001 0101 ... */ + /* 0 */ V(0, 8, 1), /* 244 */ + /* 1 */ V(8, 0, 1), + + /* 0001 0110 ... */ + /* 0 */ V(1, 6, 1), /* 246 */ + /* 1 */ V(6, 1, 1), + + /* 0001 0111 ... */ + /* 0 */ V(0, 6, 1), /* 248 */ + /* 1 */ V(6, 0, 1), + + /* 0001 1000 ... */ + /* 00 */ V(5, 3, 2), /* 250 */ + /* 01 */ V(4, 4, 2), + /* 10 */ V(2, 5, 1), + /* 11 */ V(2, 5, 1), + + /* 0001 1001 ... */ + /* 0 */ V(5, 2, 1), /* 254 */ + /* 1 */ V(0, 5, 1), + + /* 0001 1100 ... */ + /* 0 */ V(3, 4, 1), /* 256 */ + /* 1 */ V(4, 3, 1), + + /* 0001 1101 ... */ + /* 0 */ V(5, 0, 1), /* 258 */ + /* 1 */ V(2, 4, 1), + + /* 0001 1110 ... */ + /* 0 */ V(4, 2, 1), /* 260 */ + /* 1 */ V(3, 3, 1), + + /* 0000 0000 0000 ... */ + /* 0000 */ PTR(388, 3), /* 262 */ + /* 0001 */ V(15, 15, 4), + /* 0010 */ V(14, 15, 4), + /* 0011 */ V(13, 15, 4), + /* 0100 */ V(14, 14, 4), + /* 0101 */ V(12, 15, 4), + /* 0110 */ V(13, 14, 4), + /* 0111 */ V(11, 15, 4), + /* 1000 */ V(15, 11, 4), + /* 1001 */ V(12, 14, 4), + /* 1010 */ V(13, 12, 4), + /* 1011 */ PTR(396, 1), + /* 1100 */ V(14, 12, 3), + /* 1101 */ V(14, 12, 3), + /* 1110 */ V(13, 13, 3), + /* 1111 */ V(13, 13, 3), + + /* 0000 0000 0001 ... */ + /* 0000 */ V(15, 10, 4), /* 278 */ + /* 0001 */ V(12, 13, 4), + /* 0010 */ V(11, 14, 3), + /* 0011 */ V(11, 14, 3), + /* 0100 */ V(14, 11, 3), + /* 0101 */ V(14, 11, 3), + /* 0110 */ V(9, 15, 3), + /* 0111 */ V(9, 15, 3), + /* 1000 */ V(15, 9, 3), + /* 1001 */ V(15, 9, 3), + /* 1010 */ V(14, 10, 3), + /* 1011 */ V(14, 10, 3), + /* 1100 */ V(11, 13, 3), + /* 1101 */ V(11, 13, 3), + /* 1110 */ V(13, 11, 3), + /* 1111 */ V(13, 11, 3), + + /* 0000 0000 0010 ... */ + /* 0000 */ V(8, 15, 3), /* 294 */ + /* 0001 */ V(8, 15, 3), + /* 0010 */ V(15, 8, 3), + /* 0011 */ V(15, 8, 3), + /* 0100 */ V(12, 12, 3), + /* 0101 */ V(12, 12, 3), + /* 0110 */ V(10, 14, 4), + /* 0111 */ V(9, 14, 4), + /* 1000 */ V(8, 14, 3), + /* 1001 */ V(8, 14, 3), + /* 1010 */ V(7, 15, 4), + /* 1011 */ V(7, 14, 4), + /* 1100 */ V(15, 7, 2), + /* 1101 */ V(15, 7, 2), + /* 1110 */ V(15, 7, 2), + /* 1111 */ V(15, 7, 2), + + /* 0000 0000 0011 ... */ + /* 000 */ V(13, 10, 2), /* 310 */ + /* 001 */ V(13, 10, 2), + /* 010 */ V(10, 13, 3), + /* 011 */ V(11, 12, 3), + /* 100 */ V(12, 11, 3), + /* 101 */ V(15, 6, 3), + /* 110 */ V(6, 15, 2), + /* 111 */ V(6, 15, 2), + + /* 0000 0000 0100 ... */ + /* 00 */ V(14, 8, 2), /* 318 */ + /* 01 */ V(5, 15, 2), + /* 10 */ V(9, 13, 2), + /* 11 */ V(13, 9, 2), + + /* 0000 0000 0101 ... */ + /* 00 */ V(15, 5, 2), /* 322 */ + /* 01 */ V(14, 7, 2), + /* 10 */ V(10, 12, 2), + /* 11 */ V(11, 11, 2), + + /* 0000 0000 0110 ... */ + /* 000 */ V(4, 15, 2), /* 326 */ + /* 001 */ V(4, 15, 2), + /* 010 */ V(15, 4, 2), + /* 011 */ V(15, 4, 2), + /* 100 */ V(12, 10, 3), + /* 101 */ V(14, 6, 3), + /* 110 */ V(15, 3, 2), + /* 111 */ V(15, 3, 2), + + /* 0000 0000 0111 ... */ + /* 00 */ V(3, 15, 1), /* 334 */ + /* 01 */ V(3, 15, 1), + /* 10 */ V(8, 13, 2), + /* 11 */ V(13, 8, 2), + + /* 0000 0000 1000 ... */ + /* 0 */ V(2, 15, 1), /* 338 */ + /* 1 */ V(15, 2, 1), + + /* 0000 0000 1001 ... */ + /* 00 */ V(6, 14, 2), /* 340 */ + /* 01 */ V(9, 12, 2), + /* 10 */ V(0, 15, 1), + /* 11 */ V(0, 15, 1), + + /* 0000 0000 1010 ... */ + /* 00 */ V(12, 9, 2), /* 344 */ + /* 01 */ V(5, 14, 2), + /* 10 */ V(10, 11, 1), + /* 11 */ V(10, 11, 1), + + /* 0000 0000 1011 ... */ + /* 00 */ V(7, 13, 2), /* 348 */ + /* 01 */ V(13, 7, 2), + /* 10 */ V(4, 14, 1), + /* 11 */ V(4, 14, 1), + + /* 0000 0000 1100 ... */ + /* 00 */ V(12, 8, 2), /* 352 */ + /* 01 */ V(13, 6, 2), + /* 10 */ V(3, 14, 1), + /* 11 */ V(3, 14, 1), + + /* 0000 0000 1101 ... */ + /* 00 */ V(11, 9, 1), /* 356 */ + /* 01 */ V(11, 9, 1), + /* 10 */ V(9, 11, 2), + /* 11 */ V(10, 10, 2), + + /* 0000 0001 0001 ... */ + /* 0 */ V(11, 10, 1), /* 360 */ + /* 1 */ V(14, 5, 1), + + /* 0000 0001 0010 ... */ + /* 0 */ V(14, 4, 1), /* 362 */ + /* 1 */ V(8, 12, 1), + + /* 0000 0001 0011 ... */ + /* 0 */ V(6, 13, 1), /* 364 */ + /* 1 */ V(14, 3, 1), + + /* 0000 0001 0101 ... */ + /* 0 */ V(2, 14, 1), /* 366 */ + /* 1 */ V(0, 14, 1), + + /* 0000 0001 1000 ... */ + /* 0 */ V(14, 0, 1), /* 368 */ + /* 1 */ V(5, 13, 1), + + /* 0000 0001 1001 ... */ + /* 0 */ V(13, 5, 1), /* 370 */ + /* 1 */ V(7, 12, 1), + + /* 0000 0001 1010 ... */ + /* 0 */ V(12, 7, 1), /* 372 */ + /* 1 */ V(4, 13, 1), + + /* 0000 0001 1011 ... */ + /* 0 */ V(8, 11, 1), /* 374 */ + /* 1 */ V(11, 8, 1), + + /* 0000 0001 1100 ... */ + /* 0 */ V(13, 4, 1), /* 376 */ + /* 1 */ V(9, 10, 1), + + /* 0000 0001 1101 ... */ + /* 0 */ V(10, 9, 1), /* 378 */ + /* 1 */ V(6, 12, 1), + + /* 0000 0010 0000 ... */ + /* 0 */ V(13, 3, 1), /* 380 */ + /* 1 */ V(7, 11, 1), + + /* 0000 0010 0101 ... */ + /* 0 */ V(5, 12, 1), /* 382 */ + /* 1 */ V(12, 5, 1), + + /* 0000 0010 0110 ... */ + /* 0 */ V(9, 9, 1), /* 384 */ + /* 1 */ V(7, 10, 1), + + /* 0000 0010 1000 ... */ + /* 0 */ V(10, 7, 1), /* 386 */ + /* 1 */ V(9, 7, 1), + + /* 0000 0000 0000 0000 ... */ + /* 000 */ V(15, 14, 3), /* 388 */ + /* 001 */ V(15, 12, 3), + /* 010 */ V(15, 13, 2), + /* 011 */ V(15, 13, 2), + /* 100 */ V(14, 13, 1), + /* 101 */ V(14, 13, 1), + /* 110 */ V(14, 13, 1), + /* 111 */ V(14, 13, 1), + + /* 0000 0000 0000 1011 ... */ + /* 0 */ V(10, 15, 1), /* 396 */ + /* 1 */ V(14, 9, 1) +}; + +static +union huffpair const hufftab15[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 4), + /* 0011 */ PTR(64, 4), + /* 0100 */ PTR(80, 4), + /* 0101 */ PTR(96, 3), + /* 0110 */ PTR(104, 3), + /* 0111 */ PTR(112, 2), + /* 1000 */ PTR(116, 1), + /* 1001 */ PTR(118, 1), + /* 1010 */ V(1, 1, 3), + /* 1011 */ V(1, 1, 3), + /* 1100 */ V(0, 1, 4), + /* 1101 */ V(1, 0, 4), + /* 1110 */ V(0, 0, 3), + /* 1111 */ V(0, 0, 3), + + /* 0000 ... */ + /* 0000 */ PTR(120, 4), /* 16 */ + /* 0001 */ PTR(136, 4), + /* 0010 */ PTR(152, 4), + /* 0011 */ PTR(168, 4), + /* 0100 */ PTR(184, 4), + /* 0101 */ PTR(200, 3), + /* 0110 */ PTR(208, 3), + /* 0111 */ PTR(216, 4), + /* 1000 */ PTR(232, 3), + /* 1001 */ PTR(240, 3), + /* 1010 */ PTR(248, 3), + /* 1011 */ PTR(256, 3), + /* 1100 */ PTR(264, 2), + /* 1101 */ PTR(268, 3), + /* 1110 */ PTR(276, 3), + /* 1111 */ PTR(284, 2), + + /* 0001 ... */ + /* 0000 */ PTR(288, 2), /* 32 */ + /* 0001 */ PTR(292, 2), + /* 0010 */ PTR(296, 2), + /* 0011 */ PTR(300, 2), + /* 0100 */ PTR(304, 2), + /* 0101 */ PTR(308, 2), + /* 0110 */ PTR(312, 2), + /* 0111 */ PTR(316, 2), + /* 1000 */ PTR(320, 1), + /* 1001 */ PTR(322, 1), + /* 1010 */ PTR(324, 1), + /* 1011 */ PTR(326, 2), + /* 1100 */ PTR(330, 1), + /* 1101 */ PTR(332, 1), + /* 1110 */ PTR(334, 2), + /* 1111 */ PTR(338, 1), + + /* 0010 ... */ + /* 0000 */ PTR(340, 1), /* 48 */ + /* 0001 */ PTR(342, 1), + /* 0010 */ V(9, 1, 4), + /* 0011 */ PTR(344, 1), + /* 0100 */ PTR(346, 1), + /* 0101 */ PTR(348, 1), + /* 0110 */ PTR(350, 1), + /* 0111 */ PTR(352, 1), + /* 1000 */ V(2, 8, 4), + /* 1001 */ V(8, 2, 4), + /* 1010 */ V(1, 8, 4), + /* 1011 */ V(8, 1, 4), + /* 1100 */ PTR(354, 1), + /* 1101 */ PTR(356, 1), + /* 1110 */ PTR(358, 1), + /* 1111 */ PTR(360, 1), + + /* 0011 ... */ + /* 0000 */ V(2, 7, 4), /* 64 */ + /* 0001 */ V(7, 2, 4), + /* 0010 */ V(6, 4, 4), + /* 0011 */ V(1, 7, 4), + /* 0100 */ V(5, 5, 4), + /* 0101 */ V(7, 1, 4), + /* 0110 */ PTR(362, 1), + /* 0111 */ V(3, 6, 4), + /* 1000 */ V(6, 3, 4), + /* 1001 */ V(4, 5, 4), + /* 1010 */ V(5, 4, 4), + /* 1011 */ V(2, 6, 4), + /* 1100 */ V(6, 2, 4), + /* 1101 */ V(1, 6, 4), + /* 1110 */ PTR(364, 1), + /* 1111 */ V(3, 5, 4), + + /* 0100 ... */ + /* 0000 */ V(6, 1, 3), /* 80 */ + /* 0001 */ V(6, 1, 3), + /* 0010 */ V(5, 3, 4), + /* 0011 */ V(4, 4, 4), + /* 0100 */ V(2, 5, 3), + /* 0101 */ V(2, 5, 3), + /* 0110 */ V(5, 2, 3), + /* 0111 */ V(5, 2, 3), + /* 1000 */ V(1, 5, 3), + /* 1001 */ V(1, 5, 3), + /* 1010 */ V(5, 1, 3), + /* 1011 */ V(5, 1, 3), + /* 1100 */ V(0, 5, 4), + /* 1101 */ V(5, 0, 4), + /* 1110 */ V(3, 4, 3), + /* 1111 */ V(3, 4, 3), + + /* 0101 ... */ + /* 000 */ V(4, 3, 3), /* 96 */ + /* 001 */ V(2, 4, 3), + /* 010 */ V(4, 2, 3), + /* 011 */ V(3, 3, 3), + /* 100 */ V(4, 1, 2), + /* 101 */ V(4, 1, 2), + /* 110 */ V(1, 4, 3), + /* 111 */ V(0, 4, 3), + + /* 0110 ... */ + /* 000 */ V(2, 3, 2), /* 104 */ + /* 001 */ V(2, 3, 2), + /* 010 */ V(3, 2, 2), + /* 011 */ V(3, 2, 2), + /* 100 */ V(4, 0, 3), + /* 101 */ V(0, 3, 3), + /* 110 */ V(1, 3, 2), + /* 111 */ V(1, 3, 2), + + /* 0111 ... */ + /* 00 */ V(3, 1, 2), /* 112 */ + /* 01 */ V(3, 0, 2), + /* 10 */ V(2, 2, 1), + /* 11 */ V(2, 2, 1), + + /* 1000 ... */ + /* 0 */ V(1, 2, 1), /* 116 */ + /* 1 */ V(2, 1, 1), + + /* 1001 ... */ + /* 0 */ V(0, 2, 1), /* 118 */ + /* 1 */ V(2, 0, 1), + + /* 0000 0000 ... */ + /* 0000 */ PTR(366, 1), /* 120 */ + /* 0001 */ PTR(368, 1), + /* 0010 */ V(14, 14, 4), + /* 0011 */ PTR(370, 1), + /* 0100 */ PTR(372, 1), + /* 0101 */ PTR(374, 1), + /* 0110 */ V(15, 11, 4), + /* 0111 */ PTR(376, 1), + /* 1000 */ V(13, 13, 4), + /* 1001 */ V(10, 15, 4), + /* 1010 */ V(15, 10, 4), + /* 1011 */ V(11, 14, 4), + /* 1100 */ V(14, 11, 4), + /* 1101 */ V(12, 13, 4), + /* 1110 */ V(13, 12, 4), + /* 1111 */ V(9, 15, 4), + + /* 0000 0001 ... */ + /* 0000 */ V(15, 9, 4), /* 136 */ + /* 0001 */ V(14, 10, 4), + /* 0010 */ V(11, 13, 4), + /* 0011 */ V(13, 11, 4), + /* 0100 */ V(8, 15, 4), + /* 0101 */ V(15, 8, 4), + /* 0110 */ V(12, 12, 4), + /* 0111 */ V(9, 14, 4), + /* 1000 */ V(14, 9, 4), + /* 1001 */ V(7, 15, 4), + /* 1010 */ V(15, 7, 4), + /* 1011 */ V(10, 13, 4), + /* 1100 */ V(13, 10, 4), + /* 1101 */ V(11, 12, 4), + /* 1110 */ V(6, 15, 4), + /* 1111 */ PTR(378, 1), + + /* 0000 0010 ... */ + /* 0000 */ V(12, 11, 3), /* 152 */ + /* 0001 */ V(12, 11, 3), + /* 0010 */ V(15, 6, 3), + /* 0011 */ V(15, 6, 3), + /* 0100 */ V(8, 14, 4), + /* 0101 */ V(14, 8, 4), + /* 0110 */ V(5, 15, 4), + /* 0111 */ V(9, 13, 4), + /* 1000 */ V(15, 5, 3), + /* 1001 */ V(15, 5, 3), + /* 1010 */ V(7, 14, 3), + /* 1011 */ V(7, 14, 3), + /* 1100 */ V(14, 7, 3), + /* 1101 */ V(14, 7, 3), + /* 1110 */ V(10, 12, 3), + /* 1111 */ V(10, 12, 3), + + /* 0000 0011 ... */ + /* 0000 */ V(12, 10, 3), /* 168 */ + /* 0001 */ V(12, 10, 3), + /* 0010 */ V(11, 11, 3), + /* 0011 */ V(11, 11, 3), + /* 0100 */ V(13, 9, 4), + /* 0101 */ V(8, 13, 4), + /* 0110 */ V(4, 15, 3), + /* 0111 */ V(4, 15, 3), + /* 1000 */ V(15, 4, 3), + /* 1001 */ V(15, 4, 3), + /* 1010 */ V(3, 15, 3), + /* 1011 */ V(3, 15, 3), + /* 1100 */ V(15, 3, 3), + /* 1101 */ V(15, 3, 3), + /* 1110 */ V(13, 8, 3), + /* 1111 */ V(13, 8, 3), + + /* 0000 0100 ... */ + /* 0000 */ V(14, 6, 3), /* 184 */ + /* 0001 */ V(14, 6, 3), + /* 0010 */ V(2, 15, 3), + /* 0011 */ V(2, 15, 3), + /* 0100 */ V(15, 2, 3), + /* 0101 */ V(15, 2, 3), + /* 0110 */ V(6, 14, 4), + /* 0111 */ V(15, 0, 4), + /* 1000 */ V(1, 15, 3), + /* 1001 */ V(1, 15, 3), + /* 1010 */ V(15, 1, 3), + /* 1011 */ V(15, 1, 3), + /* 1100 */ V(9, 12, 3), + /* 1101 */ V(9, 12, 3), + /* 1110 */ V(12, 9, 3), + /* 1111 */ V(12, 9, 3), + + /* 0000 0101 ... */ + /* 000 */ V(5, 14, 3), /* 200 */ + /* 001 */ V(10, 11, 3), + /* 010 */ V(11, 10, 3), + /* 011 */ V(14, 5, 3), + /* 100 */ V(7, 13, 3), + /* 101 */ V(13, 7, 3), + /* 110 */ V(4, 14, 3), + /* 111 */ V(14, 4, 3), + + /* 0000 0110 ... */ + /* 000 */ V(8, 12, 3), /* 208 */ + /* 001 */ V(12, 8, 3), + /* 010 */ V(3, 14, 3), + /* 011 */ V(6, 13, 3), + /* 100 */ V(13, 6, 3), + /* 101 */ V(14, 3, 3), + /* 110 */ V(9, 11, 3), + /* 111 */ V(11, 9, 3), + + /* 0000 0111 ... */ + /* 0000 */ V(2, 14, 3), /* 216 */ + /* 0001 */ V(2, 14, 3), + /* 0010 */ V(10, 10, 3), + /* 0011 */ V(10, 10, 3), + /* 0100 */ V(14, 2, 3), + /* 0101 */ V(14, 2, 3), + /* 0110 */ V(1, 14, 3), + /* 0111 */ V(1, 14, 3), + /* 1000 */ V(14, 1, 3), + /* 1001 */ V(14, 1, 3), + /* 1010 */ V(0, 14, 4), + /* 1011 */ V(14, 0, 4), + /* 1100 */ V(5, 13, 3), + /* 1101 */ V(5, 13, 3), + /* 1110 */ V(13, 5, 3), + /* 1111 */ V(13, 5, 3), + + /* 0000 1000 ... */ + /* 000 */ V(7, 12, 3), /* 232 */ + /* 001 */ V(12, 7, 3), + /* 010 */ V(4, 13, 3), + /* 011 */ V(8, 11, 3), + /* 100 */ V(13, 4, 2), + /* 101 */ V(13, 4, 2), + /* 110 */ V(11, 8, 3), + /* 111 */ V(9, 10, 3), + + /* 0000 1001 ... */ + /* 000 */ V(10, 9, 3), /* 240 */ + /* 001 */ V(6, 12, 3), + /* 010 */ V(12, 6, 3), + /* 011 */ V(3, 13, 3), + /* 100 */ V(13, 3, 2), + /* 101 */ V(13, 3, 2), + /* 110 */ V(13, 2, 2), + /* 111 */ V(13, 2, 2), + + /* 0000 1010 ... */ + /* 000 */ V(2, 13, 3), /* 248 */ + /* 001 */ V(0, 13, 3), + /* 010 */ V(1, 13, 2), + /* 011 */ V(1, 13, 2), + /* 100 */ V(7, 11, 2), + /* 101 */ V(7, 11, 2), + /* 110 */ V(11, 7, 2), + /* 111 */ V(11, 7, 2), + + /* 0000 1011 ... */ + /* 000 */ V(13, 1, 2), /* 256 */ + /* 001 */ V(13, 1, 2), + /* 010 */ V(5, 12, 3), + /* 011 */ V(13, 0, 3), + /* 100 */ V(12, 5, 2), + /* 101 */ V(12, 5, 2), + /* 110 */ V(8, 10, 2), + /* 111 */ V(8, 10, 2), + + /* 0000 1100 ... */ + /* 00 */ V(10, 8, 2), /* 264 */ + /* 01 */ V(4, 12, 2), + /* 10 */ V(12, 4, 2), + /* 11 */ V(6, 11, 2), + + /* 0000 1101 ... */ + /* 000 */ V(11, 6, 2), /* 268 */ + /* 001 */ V(11, 6, 2), + /* 010 */ V(9, 9, 3), + /* 011 */ V(0, 12, 3), + /* 100 */ V(3, 12, 2), + /* 101 */ V(3, 12, 2), + /* 110 */ V(12, 3, 2), + /* 111 */ V(12, 3, 2), + + /* 0000 1110 ... */ + /* 000 */ V(7, 10, 2), /* 276 */ + /* 001 */ V(7, 10, 2), + /* 010 */ V(10, 7, 2), + /* 011 */ V(10, 7, 2), + /* 100 */ V(10, 6, 2), + /* 101 */ V(10, 6, 2), + /* 110 */ V(12, 0, 3), + /* 111 */ V(0, 11, 3), + + /* 0000 1111 ... */ + /* 00 */ V(12, 2, 1), /* 284 */ + /* 01 */ V(12, 2, 1), + /* 10 */ V(2, 12, 2), + /* 11 */ V(5, 11, 2), + + /* 0001 0000 ... */ + /* 00 */ V(11, 5, 2), /* 288 */ + /* 01 */ V(1, 12, 2), + /* 10 */ V(8, 9, 2), + /* 11 */ V(9, 8, 2), + + /* 0001 0001 ... */ + /* 00 */ V(12, 1, 2), /* 292 */ + /* 01 */ V(4, 11, 2), + /* 10 */ V(11, 4, 2), + /* 11 */ V(6, 10, 2), + + /* 0001 0010 ... */ + /* 00 */ V(3, 11, 2), /* 296 */ + /* 01 */ V(7, 9, 2), + /* 10 */ V(11, 3, 1), + /* 11 */ V(11, 3, 1), + + /* 0001 0011 ... */ + /* 00 */ V(9, 7, 2), /* 300 */ + /* 01 */ V(8, 8, 2), + /* 10 */ V(2, 11, 2), + /* 11 */ V(5, 10, 2), + + /* 0001 0100 ... */ + /* 00 */ V(11, 2, 1), /* 304 */ + /* 01 */ V(11, 2, 1), + /* 10 */ V(10, 5, 2), + /* 11 */ V(1, 11, 2), + + /* 0001 0101 ... */ + /* 00 */ V(11, 1, 1), /* 308 */ + /* 01 */ V(11, 1, 1), + /* 10 */ V(11, 0, 2), + /* 11 */ V(6, 9, 2), + + /* 0001 0110 ... */ + /* 00 */ V(9, 6, 2), /* 312 */ + /* 01 */ V(4, 10, 2), + /* 10 */ V(10, 4, 2), + /* 11 */ V(7, 8, 2), + + /* 0001 0111 ... */ + /* 00 */ V(8, 7, 2), /* 316 */ + /* 01 */ V(3, 10, 2), + /* 10 */ V(10, 3, 1), + /* 11 */ V(10, 3, 1), + + /* 0001 1000 ... */ + /* 0 */ V(5, 9, 1), /* 320 */ + /* 1 */ V(9, 5, 1), + + /* 0001 1001 ... */ + /* 0 */ V(2, 10, 1), /* 322 */ + /* 1 */ V(10, 2, 1), + + /* 0001 1010 ... */ + /* 0 */ V(1, 10, 1), /* 324 */ + /* 1 */ V(10, 1, 1), + + /* 0001 1011 ... */ + /* 00 */ V(0, 10, 2), /* 326 */ + /* 01 */ V(10, 0, 2), + /* 10 */ V(6, 8, 1), + /* 11 */ V(6, 8, 1), + + /* 0001 1100 ... */ + /* 0 */ V(8, 6, 1), /* 330 */ + /* 1 */ V(4, 9, 1), + + /* 0001 1101 ... */ + /* 0 */ V(9, 4, 1), /* 332 */ + /* 1 */ V(3, 9, 1), + + /* 0001 1110 ... */ + /* 00 */ V(9, 3, 1), /* 334 */ + /* 01 */ V(9, 3, 1), + /* 10 */ V(7, 7, 2), + /* 11 */ V(0, 9, 2), + + /* 0001 1111 ... */ + /* 0 */ V(5, 8, 1), /* 338 */ + /* 1 */ V(8, 5, 1), + + /* 0010 0000 ... */ + /* 0 */ V(2, 9, 1), /* 340 */ + /* 1 */ V(6, 7, 1), + + /* 0010 0001 ... */ + /* 0 */ V(7, 6, 1), /* 342 */ + /* 1 */ V(9, 2, 1), + + /* 0010 0011 ... */ + /* 0 */ V(1, 9, 1), /* 344 */ + /* 1 */ V(9, 0, 1), + + /* 0010 0100 ... */ + /* 0 */ V(4, 8, 1), /* 346 */ + /* 1 */ V(8, 4, 1), + + /* 0010 0101 ... */ + /* 0 */ V(5, 7, 1), /* 348 */ + /* 1 */ V(7, 5, 1), + + /* 0010 0110 ... */ + /* 0 */ V(3, 8, 1), /* 350 */ + /* 1 */ V(8, 3, 1), + + /* 0010 0111 ... */ + /* 0 */ V(6, 6, 1), /* 352 */ + /* 1 */ V(4, 7, 1), + + /* 0010 1100 ... */ + /* 0 */ V(7, 4, 1), /* 354 */ + /* 1 */ V(0, 8, 1), + + /* 0010 1101 ... */ + /* 0 */ V(8, 0, 1), /* 356 */ + /* 1 */ V(5, 6, 1), + + /* 0010 1110 ... */ + /* 0 */ V(6, 5, 1), /* 358 */ + /* 1 */ V(3, 7, 1), + + /* 0010 1111 ... */ + /* 0 */ V(7, 3, 1), /* 360 */ + /* 1 */ V(4, 6, 1), + + /* 0011 0110 ... */ + /* 0 */ V(0, 7, 1), /* 362 */ + /* 1 */ V(7, 0, 1), + + /* 0011 1110 ... */ + /* 0 */ V(0, 6, 1), /* 364 */ + /* 1 */ V(6, 0, 1), + + /* 0000 0000 0000 ... */ + /* 0 */ V(15, 15, 1), /* 366 */ + /* 1 */ V(14, 15, 1), + + /* 0000 0000 0001 ... */ + /* 0 */ V(15, 14, 1), /* 368 */ + /* 1 */ V(13, 15, 1), + + /* 0000 0000 0011 ... */ + /* 0 */ V(15, 13, 1), /* 370 */ + /* 1 */ V(12, 15, 1), + + /* 0000 0000 0100 ... */ + /* 0 */ V(15, 12, 1), /* 372 */ + /* 1 */ V(13, 14, 1), + + /* 0000 0000 0101 ... */ + /* 0 */ V(14, 13, 1), /* 374 */ + /* 1 */ V(11, 15, 1), + + /* 0000 0000 0111 ... */ + /* 0 */ V(12, 14, 1), /* 376 */ + /* 1 */ V(14, 12, 1), + + /* 0000 0001 1111 ... */ + /* 0 */ V(10, 14, 1), /* 378 */ + /* 1 */ V(0, 15, 1) +}; + +static +union huffpair const hufftab16[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 4), + /* 0011 */ PTR(64, 2), + /* 0100 */ V(1, 1, 4), + /* 0101 */ V(0, 1, 4), + /* 0110 */ V(1, 0, 3), + /* 0111 */ V(1, 0, 3), + /* 1000 */ V(0, 0, 1), + /* 1001 */ V(0, 0, 1), + /* 1010 */ V(0, 0, 1), + /* 1011 */ V(0, 0, 1), + /* 1100 */ V(0, 0, 1), + /* 1101 */ V(0, 0, 1), + /* 1110 */ V(0, 0, 1), + /* 1111 */ V(0, 0, 1), + + /* 0000 ... */ + /* 0000 */ PTR(68, 3), /* 16 */ + /* 0001 */ PTR(76, 3), + /* 0010 */ PTR(84, 2), + /* 0011 */ V(15, 15, 4), + /* 0100 */ PTR(88, 2), + /* 0101 */ PTR(92, 1), + /* 0110 */ PTR(94, 4), + /* 0111 */ V(15, 2, 4), + /* 1000 */ PTR(110, 1), + /* 1001 */ V(1, 15, 4), + /* 1010 */ V(15, 1, 4), + /* 1011 */ PTR(112, 4), + /* 1100 */ PTR(128, 4), + /* 1101 */ PTR(144, 4), + /* 1110 */ PTR(160, 4), + /* 1111 */ PTR(176, 4), + + /* 0001 ... */ + /* 0000 */ PTR(192, 4), /* 32 */ + /* 0001 */ PTR(208, 3), + /* 0010 */ PTR(216, 3), + /* 0011 */ PTR(224, 3), + /* 0100 */ PTR(232, 3), + /* 0101 */ PTR(240, 3), + /* 0110 */ PTR(248, 3), + /* 0111 */ PTR(256, 3), + /* 1000 */ PTR(264, 2), + /* 1001 */ PTR(268, 2), + /* 1010 */ PTR(272, 1), + /* 1011 */ PTR(274, 2), + /* 1100 */ PTR(278, 2), + /* 1101 */ PTR(282, 1), + /* 1110 */ V(5, 1, 4), + /* 1111 */ PTR(284, 1), + + /* 0010 ... */ + /* 0000 */ PTR(286, 1), /* 48 */ + /* 0001 */ PTR(288, 1), + /* 0010 */ PTR(290, 1), + /* 0011 */ V(1, 4, 4), + /* 0100 */ V(4, 1, 4), + /* 0101 */ PTR(292, 1), + /* 0110 */ V(2, 3, 4), + /* 0111 */ V(3, 2, 4), + /* 1000 */ V(1, 3, 3), + /* 1001 */ V(1, 3, 3), + /* 1010 */ V(3, 1, 3), + /* 1011 */ V(3, 1, 3), + /* 1100 */ V(0, 3, 4), + /* 1101 */ V(3, 0, 4), + /* 1110 */ V(2, 2, 3), + /* 1111 */ V(2, 2, 3), + + /* 0011 ... */ + /* 00 */ V(1, 2, 2), /* 64 */ + /* 01 */ V(2, 1, 2), + /* 10 */ V(0, 2, 2), + /* 11 */ V(2, 0, 2), + + /* 0000 0000 ... */ + /* 000 */ V(14, 15, 3), /* 68 */ + /* 001 */ V(15, 14, 3), + /* 010 */ V(13, 15, 3), + /* 011 */ V(15, 13, 3), + /* 100 */ V(12, 15, 3), + /* 101 */ V(15, 12, 3), + /* 110 */ V(11, 15, 3), + /* 111 */ V(15, 11, 3), + + /* 0000 0001 ... */ + /* 000 */ V(10, 15, 2), /* 76 */ + /* 001 */ V(10, 15, 2), + /* 010 */ V(15, 10, 3), + /* 011 */ V(9, 15, 3), + /* 100 */ V(15, 9, 3), + /* 101 */ V(15, 8, 3), + /* 110 */ V(8, 15, 2), + /* 111 */ V(8, 15, 2), + + /* 0000 0010 ... */ + /* 00 */ V(7, 15, 2), /* 84 */ + /* 01 */ V(15, 7, 2), + /* 10 */ V(6, 15, 2), + /* 11 */ V(15, 6, 2), + + /* 0000 0100 ... */ + /* 00 */ V(5, 15, 2), /* 88 */ + /* 01 */ V(15, 5, 2), + /* 10 */ V(4, 15, 1), + /* 11 */ V(4, 15, 1), + + /* 0000 0101 ... */ + /* 0 */ V(15, 4, 1), /* 92 */ + /* 1 */ V(15, 3, 1), + + /* 0000 0110 ... */ + /* 0000 */ V(15, 0, 1), /* 94 */ + /* 0001 */ V(15, 0, 1), + /* 0010 */ V(15, 0, 1), + /* 0011 */ V(15, 0, 1), + /* 0100 */ V(15, 0, 1), + /* 0101 */ V(15, 0, 1), + /* 0110 */ V(15, 0, 1), + /* 0111 */ V(15, 0, 1), + /* 1000 */ V(3, 15, 2), + /* 1001 */ V(3, 15, 2), + /* 1010 */ V(3, 15, 2), + /* 1011 */ V(3, 15, 2), + /* 1100 */ PTR(294, 4), + /* 1101 */ PTR(310, 3), + /* 1110 */ PTR(318, 3), + /* 1111 */ PTR(326, 3), + + /* 0000 1000 ... */ + /* 0 */ V(2, 15, 1), /* 110 */ + /* 1 */ V(0, 15, 1), + + /* 0000 1011 ... */ + /* 0000 */ PTR(334, 2), /* 112 */ + /* 0001 */ PTR(338, 2), + /* 0010 */ PTR(342, 2), + /* 0011 */ PTR(346, 1), + /* 0100 */ PTR(348, 2), + /* 0101 */ PTR(352, 2), + /* 0110 */ PTR(356, 1), + /* 0111 */ PTR(358, 2), + /* 1000 */ PTR(362, 2), + /* 1001 */ PTR(366, 2), + /* 1010 */ PTR(370, 2), + /* 1011 */ V(14, 3, 4), + /* 1100 */ PTR(374, 1), + /* 1101 */ PTR(376, 1), + /* 1110 */ PTR(378, 1), + /* 1111 */ PTR(380, 1), + + /* 0000 1100 ... */ + /* 0000 */ PTR(382, 1), /* 128 */ + /* 0001 */ PTR(384, 1), + /* 0010 */ PTR(386, 1), + /* 0011 */ V(0, 13, 4), + /* 0100 */ PTR(388, 1), + /* 0101 */ PTR(390, 1), + /* 0110 */ PTR(392, 1), + /* 0111 */ V(3, 12, 4), + /* 1000 */ PTR(394, 1), + /* 1001 */ V(1, 12, 4), + /* 1010 */ V(12, 0, 4), + /* 1011 */ PTR(396, 1), + /* 1100 */ V(14, 2, 3), + /* 1101 */ V(14, 2, 3), + /* 1110 */ V(2, 14, 4), + /* 1111 */ V(1, 14, 4), + + /* 0000 1101 ... */ + /* 0000 */ V(13, 3, 4), /* 144 */ + /* 0001 */ V(2, 13, 4), + /* 0010 */ V(13, 2, 4), + /* 0011 */ V(13, 1, 4), + /* 0100 */ V(3, 11, 4), + /* 0101 */ PTR(398, 1), + /* 0110 */ V(1, 13, 3), + /* 0111 */ V(1, 13, 3), + /* 1000 */ V(12, 4, 4), + /* 1001 */ V(6, 11, 4), + /* 1010 */ V(12, 3, 4), + /* 1011 */ V(10, 7, 4), + /* 1100 */ V(2, 12, 3), + /* 1101 */ V(2, 12, 3), + /* 1110 */ V(12, 2, 4), + /* 1111 */ V(11, 5, 4), + + /* 0000 1110 ... */ + /* 0000 */ V(12, 1, 4), /* 160 */ + /* 0001 */ V(0, 12, 4), + /* 0010 */ V(4, 11, 4), + /* 0011 */ V(11, 4, 4), + /* 0100 */ V(6, 10, 4), + /* 0101 */ V(10, 6, 4), + /* 0110 */ V(11, 3, 3), + /* 0111 */ V(11, 3, 3), + /* 1000 */ V(5, 10, 4), + /* 1001 */ V(10, 5, 4), + /* 1010 */ V(2, 11, 3), + /* 1011 */ V(2, 11, 3), + /* 1100 */ V(11, 2, 3), + /* 1101 */ V(11, 2, 3), + /* 1110 */ V(1, 11, 3), + /* 1111 */ V(1, 11, 3), + + /* 0000 1111 ... */ + /* 0000 */ V(11, 1, 3), /* 176 */ + /* 0001 */ V(11, 1, 3), + /* 0010 */ V(0, 11, 4), + /* 0011 */ V(11, 0, 4), + /* 0100 */ V(6, 9, 4), + /* 0101 */ V(9, 6, 4), + /* 0110 */ V(4, 10, 4), + /* 0111 */ V(10, 4, 4), + /* 1000 */ V(7, 8, 4), + /* 1001 */ V(8, 7, 4), + /* 1010 */ V(10, 3, 3), + /* 1011 */ V(10, 3, 3), + /* 1100 */ V(3, 10, 4), + /* 1101 */ V(5, 9, 4), + /* 1110 */ V(2, 10, 3), + /* 1111 */ V(2, 10, 3), + + /* 0001 0000 ... */ + /* 0000 */ V(9, 5, 4), /* 192 */ + /* 0001 */ V(6, 8, 4), + /* 0010 */ V(10, 1, 3), + /* 0011 */ V(10, 1, 3), + /* 0100 */ V(8, 6, 4), + /* 0101 */ V(7, 7, 4), + /* 0110 */ V(9, 4, 3), + /* 0111 */ V(9, 4, 3), + /* 1000 */ V(4, 9, 4), + /* 1001 */ V(5, 7, 4), + /* 1010 */ V(6, 7, 3), + /* 1011 */ V(6, 7, 3), + /* 1100 */ V(10, 2, 2), + /* 1101 */ V(10, 2, 2), + /* 1110 */ V(10, 2, 2), + /* 1111 */ V(10, 2, 2), + + /* 0001 0001 ... */ + /* 000 */ V(1, 10, 2), /* 208 */ + /* 001 */ V(1, 10, 2), + /* 010 */ V(0, 10, 3), + /* 011 */ V(10, 0, 3), + /* 100 */ V(3, 9, 3), + /* 101 */ V(9, 3, 3), + /* 110 */ V(5, 8, 3), + /* 111 */ V(8, 5, 3), + + /* 0001 0010 ... */ + /* 000 */ V(2, 9, 2), /* 216 */ + /* 001 */ V(2, 9, 2), + /* 010 */ V(9, 2, 2), + /* 011 */ V(9, 2, 2), + /* 100 */ V(7, 6, 3), + /* 101 */ V(0, 9, 3), + /* 110 */ V(1, 9, 2), + /* 111 */ V(1, 9, 2), + + /* 0001 0011 ... */ + /* 000 */ V(9, 1, 2), /* 224 */ + /* 001 */ V(9, 1, 2), + /* 010 */ V(9, 0, 3), + /* 011 */ V(4, 8, 3), + /* 100 */ V(8, 4, 3), + /* 101 */ V(7, 5, 3), + /* 110 */ V(3, 8, 3), + /* 111 */ V(8, 3, 3), + + /* 0001 0100 ... */ + /* 000 */ V(6, 6, 3), /* 232 */ + /* 001 */ V(2, 8, 3), + /* 010 */ V(8, 2, 2), + /* 011 */ V(8, 2, 2), + /* 100 */ V(4, 7, 3), + /* 101 */ V(7, 4, 3), + /* 110 */ V(1, 8, 2), + /* 111 */ V(1, 8, 2), + + /* 0001 0101 ... */ + /* 000 */ V(8, 1, 2), /* 240 */ + /* 001 */ V(8, 1, 2), + /* 010 */ V(8, 0, 2), + /* 011 */ V(8, 0, 2), + /* 100 */ V(0, 8, 3), + /* 101 */ V(5, 6, 3), + /* 110 */ V(3, 7, 2), + /* 111 */ V(3, 7, 2), + + /* 0001 0110 ... */ + /* 000 */ V(7, 3, 2), /* 248 */ + /* 001 */ V(7, 3, 2), + /* 010 */ V(6, 5, 3), + /* 011 */ V(4, 6, 3), + /* 100 */ V(2, 7, 2), + /* 101 */ V(2, 7, 2), + /* 110 */ V(7, 2, 2), + /* 111 */ V(7, 2, 2), + + /* 0001 0111 ... */ + /* 000 */ V(6, 4, 3), /* 256 */ + /* 001 */ V(5, 5, 3), + /* 010 */ V(0, 7, 2), + /* 011 */ V(0, 7, 2), + /* 100 */ V(1, 7, 1), + /* 101 */ V(1, 7, 1), + /* 110 */ V(1, 7, 1), + /* 111 */ V(1, 7, 1), + + /* 0001 1000 ... */ + /* 00 */ V(7, 1, 1), /* 264 */ + /* 01 */ V(7, 1, 1), + /* 10 */ V(7, 0, 2), + /* 11 */ V(3, 6, 2), + + /* 0001 1001 ... */ + /* 00 */ V(6, 3, 2), /* 268 */ + /* 01 */ V(4, 5, 2), + /* 10 */ V(5, 4, 2), + /* 11 */ V(2, 6, 2), + + /* 0001 1010 ... */ + /* 0 */ V(6, 2, 1), /* 272 */ + /* 1 */ V(1, 6, 1), + + /* 0001 1011 ... */ + /* 00 */ V(6, 1, 1), /* 274 */ + /* 01 */ V(6, 1, 1), + /* 10 */ V(0, 6, 2), + /* 11 */ V(6, 0, 2), + + /* 0001 1100 ... */ + /* 00 */ V(5, 3, 1), /* 278 */ + /* 01 */ V(5, 3, 1), + /* 10 */ V(3, 5, 2), + /* 11 */ V(4, 4, 2), + + /* 0001 1101 ... */ + /* 0 */ V(2, 5, 1), /* 282 */ + /* 1 */ V(5, 2, 1), + + /* 0001 1111 ... */ + /* 0 */ V(1, 5, 1), /* 284 */ + /* 1 */ V(0, 5, 1), + + /* 0010 0000 ... */ + /* 0 */ V(3, 4, 1), /* 286 */ + /* 1 */ V(4, 3, 1), + + /* 0010 0001 ... */ + /* 0 */ V(5, 0, 1), /* 288 */ + /* 1 */ V(2, 4, 1), + + /* 0010 0010 ... */ + /* 0 */ V(4, 2, 1), /* 290 */ + /* 1 */ V(3, 3, 1), + + /* 0010 0101 ... */ + /* 0 */ V(0, 4, 1), /* 292 */ + /* 1 */ V(4, 0, 1), + + /* 0000 0110 1100 ... */ + /* 0000 */ V(12, 14, 4), /* 294 */ + /* 0001 */ PTR(400, 1), + /* 0010 */ V(13, 14, 3), + /* 0011 */ V(13, 14, 3), + /* 0100 */ V(14, 9, 3), + /* 0101 */ V(14, 9, 3), + /* 0110 */ V(14, 10, 4), + /* 0111 */ V(13, 9, 4), + /* 1000 */ V(14, 14, 2), + /* 1001 */ V(14, 14, 2), + /* 1010 */ V(14, 14, 2), + /* 1011 */ V(14, 14, 2), + /* 1100 */ V(14, 13, 3), + /* 1101 */ V(14, 13, 3), + /* 1110 */ V(14, 11, 3), + /* 1111 */ V(14, 11, 3), + + /* 0000 0110 1101 ... */ + /* 000 */ V(11, 14, 2), /* 310 */ + /* 001 */ V(11, 14, 2), + /* 010 */ V(12, 13, 2), + /* 011 */ V(12, 13, 2), + /* 100 */ V(13, 12, 3), + /* 101 */ V(13, 11, 3), + /* 110 */ V(10, 14, 2), + /* 111 */ V(10, 14, 2), + + /* 0000 0110 1110 ... */ + /* 000 */ V(12, 12, 2), /* 318 */ + /* 001 */ V(12, 12, 2), + /* 010 */ V(10, 13, 3), + /* 011 */ V(13, 10, 3), + /* 100 */ V(7, 14, 3), + /* 101 */ V(10, 12, 3), + /* 110 */ V(12, 10, 2), + /* 111 */ V(12, 10, 2), + + /* 0000 0110 1111 ... */ + /* 000 */ V(12, 9, 3), /* 326 */ + /* 001 */ V(7, 13, 3), + /* 010 */ V(5, 14, 2), + /* 011 */ V(5, 14, 2), + /* 100 */ V(11, 13, 1), + /* 101 */ V(11, 13, 1), + /* 110 */ V(11, 13, 1), + /* 111 */ V(11, 13, 1), + + /* 0000 1011 0000 ... */ + /* 00 */ V(9, 14, 1), /* 334 */ + /* 01 */ V(9, 14, 1), + /* 10 */ V(11, 12, 2), + /* 11 */ V(12, 11, 2), + + /* 0000 1011 0001 ... */ + /* 00 */ V(8, 14, 2), /* 338 */ + /* 01 */ V(14, 8, 2), + /* 10 */ V(9, 13, 2), + /* 11 */ V(14, 7, 2), + + /* 0000 1011 0010 ... */ + /* 00 */ V(11, 11, 2), /* 342 */ + /* 01 */ V(8, 13, 2), + /* 10 */ V(13, 8, 2), + /* 11 */ V(6, 14, 2), + + /* 0000 1011 0011 ... */ + /* 0 */ V(14, 6, 1), /* 346 */ + /* 1 */ V(9, 12, 1), + + /* 0000 1011 0100 ... */ + /* 00 */ V(10, 11, 2), /* 348 */ + /* 01 */ V(11, 10, 2), + /* 10 */ V(14, 5, 2), + /* 11 */ V(13, 7, 2), + + /* 0000 1011 0101 ... */ + /* 00 */ V(4, 14, 1), /* 352 */ + /* 01 */ V(4, 14, 1), + /* 10 */ V(14, 4, 2), + /* 11 */ V(8, 12, 2), + + /* 0000 1011 0110 ... */ + /* 0 */ V(12, 8, 1), /* 356 */ + /* 1 */ V(3, 14, 1), + + /* 0000 1011 0111 ... */ + /* 00 */ V(6, 13, 1), /* 358 */ + /* 01 */ V(6, 13, 1), + /* 10 */ V(13, 6, 2), + /* 11 */ V(9, 11, 2), + + /* 0000 1011 1000 ... */ + /* 00 */ V(11, 9, 2), /* 362 */ + /* 01 */ V(10, 10, 2), + /* 10 */ V(14, 1, 1), + /* 11 */ V(14, 1, 1), + + /* 0000 1011 1001 ... */ + /* 00 */ V(13, 4, 1), /* 366 */ + /* 01 */ V(13, 4, 1), + /* 10 */ V(11, 8, 2), + /* 11 */ V(10, 9, 2), + + /* 0000 1011 1010 ... */ + /* 00 */ V(7, 11, 1), /* 370 */ + /* 01 */ V(7, 11, 1), + /* 10 */ V(11, 7, 2), + /* 11 */ V(13, 0, 2), + + /* 0000 1011 1100 ... */ + /* 0 */ V(0, 14, 1), /* 374 */ + /* 1 */ V(14, 0, 1), + + /* 0000 1011 1101 ... */ + /* 0 */ V(5, 13, 1), /* 376 */ + /* 1 */ V(13, 5, 1), + + /* 0000 1011 1110 ... */ + /* 0 */ V(7, 12, 1), /* 378 */ + /* 1 */ V(12, 7, 1), + + /* 0000 1011 1111 ... */ + /* 0 */ V(4, 13, 1), /* 380 */ + /* 1 */ V(8, 11, 1), + + /* 0000 1100 0000 ... */ + /* 0 */ V(9, 10, 1), /* 382 */ + /* 1 */ V(6, 12, 1), + + /* 0000 1100 0001 ... */ + /* 0 */ V(12, 6, 1), /* 384 */ + /* 1 */ V(3, 13, 1), + + /* 0000 1100 0010 ... */ + /* 0 */ V(5, 12, 1), /* 386 */ + /* 1 */ V(12, 5, 1), + + /* 0000 1100 0100 ... */ + /* 0 */ V(8, 10, 1), /* 388 */ + /* 1 */ V(10, 8, 1), + + /* 0000 1100 0101 ... */ + /* 0 */ V(9, 9, 1), /* 390 */ + /* 1 */ V(4, 12, 1), + + /* 0000 1100 0110 ... */ + /* 0 */ V(11, 6, 1), /* 392 */ + /* 1 */ V(7, 10, 1), + + /* 0000 1100 1000 ... */ + /* 0 */ V(5, 11, 1), /* 394 */ + /* 1 */ V(8, 9, 1), + + /* 0000 1100 1011 ... */ + /* 0 */ V(9, 8, 1), /* 396 */ + /* 1 */ V(7, 9, 1), + + /* 0000 1101 0101 ... */ + /* 0 */ V(9, 7, 1), /* 398 */ + /* 1 */ V(8, 8, 1), + + /* 0000 0110 1100 0001 ... */ + /* 0 */ V(14, 12, 1), /* 400 */ + /* 1 */ V(13, 13, 1) +}; + +static +union huffpair const hufftab24[] = { + /* 0000 */ PTR(16, 4), + /* 0001 */ PTR(32, 4), + /* 0010 */ PTR(48, 4), + /* 0011 */ V(15, 15, 4), + /* 0100 */ PTR(64, 4), + /* 0101 */ PTR(80, 4), + /* 0110 */ PTR(96, 4), + /* 0111 */ PTR(112, 4), + /* 1000 */ PTR(128, 4), + /* 1001 */ PTR(144, 4), + /* 1010 */ PTR(160, 3), + /* 1011 */ PTR(168, 2), + /* 1100 */ V(1, 1, 4), + /* 1101 */ V(0, 1, 4), + /* 1110 */ V(1, 0, 4), + /* 1111 */ V(0, 0, 4), + + /* 0000 ... */ + /* 0000 */ V(14, 15, 4), /* 16 */ + /* 0001 */ V(15, 14, 4), + /* 0010 */ V(13, 15, 4), + /* 0011 */ V(15, 13, 4), + /* 0100 */ V(12, 15, 4), + /* 0101 */ V(15, 12, 4), + /* 0110 */ V(11, 15, 4), + /* 0111 */ V(15, 11, 4), + /* 1000 */ V(15, 10, 3), + /* 1001 */ V(15, 10, 3), + /* 1010 */ V(10, 15, 4), + /* 1011 */ V(9, 15, 4), + /* 1100 */ V(15, 9, 3), + /* 1101 */ V(15, 9, 3), + /* 1110 */ V(15, 8, 3), + /* 1111 */ V(15, 8, 3), + + /* 0001 ... */ + /* 0000 */ V(8, 15, 4), /* 32 */ + /* 0001 */ V(7, 15, 4), + /* 0010 */ V(15, 7, 3), + /* 0011 */ V(15, 7, 3), + /* 0100 */ V(6, 15, 3), + /* 0101 */ V(6, 15, 3), + /* 0110 */ V(15, 6, 3), + /* 0111 */ V(15, 6, 3), + /* 1000 */ V(5, 15, 3), + /* 1001 */ V(5, 15, 3), + /* 1010 */ V(15, 5, 3), + /* 1011 */ V(15, 5, 3), + /* 1100 */ V(4, 15, 3), + /* 1101 */ V(4, 15, 3), + /* 1110 */ V(15, 4, 3), + /* 1111 */ V(15, 4, 3), + + /* 0010 ... */ + /* 0000 */ V(3, 15, 3), /* 48 */ + /* 0001 */ V(3, 15, 3), + /* 0010 */ V(15, 3, 3), + /* 0011 */ V(15, 3, 3), + /* 0100 */ V(2, 15, 3), + /* 0101 */ V(2, 15, 3), + /* 0110 */ V(15, 2, 3), + /* 0111 */ V(15, 2, 3), + /* 1000 */ V(15, 1, 3), + /* 1001 */ V(15, 1, 3), + /* 1010 */ V(1, 15, 4), + /* 1011 */ V(15, 0, 4), + /* 1100 */ PTR(172, 3), + /* 1101 */ PTR(180, 3), + /* 1110 */ PTR(188, 3), + /* 1111 */ PTR(196, 3), + + /* 0100 ... */ + /* 0000 */ PTR(204, 4), /* 64 */ + /* 0001 */ PTR(220, 3), + /* 0010 */ PTR(228, 3), + /* 0011 */ PTR(236, 3), + /* 0100 */ PTR(244, 2), + /* 0101 */ PTR(248, 2), + /* 0110 */ PTR(252, 2), + /* 0111 */ PTR(256, 2), + /* 1000 */ PTR(260, 2), + /* 1001 */ PTR(264, 2), + /* 1010 */ PTR(268, 2), + /* 1011 */ PTR(272, 2), + /* 1100 */ PTR(276, 2), + /* 1101 */ PTR(280, 3), + /* 1110 */ PTR(288, 2), + /* 1111 */ PTR(292, 2), + + /* 0101 ... */ + /* 0000 */ PTR(296, 2), /* 80 */ + /* 0001 */ PTR(300, 3), + /* 0010 */ PTR(308, 2), + /* 0011 */ PTR(312, 3), + /* 0100 */ PTR(320, 1), + /* 0101 */ PTR(322, 2), + /* 0110 */ PTR(326, 2), + /* 0111 */ PTR(330, 1), + /* 1000 */ PTR(332, 2), + /* 1001 */ PTR(336, 1), + /* 1010 */ PTR(338, 1), + /* 1011 */ PTR(340, 1), + /* 1100 */ PTR(342, 1), + /* 1101 */ PTR(344, 1), + /* 1110 */ PTR(346, 1), + /* 1111 */ PTR(348, 1), + + /* 0110 ... */ + /* 0000 */ PTR(350, 1), /* 96 */ + /* 0001 */ PTR(352, 1), + /* 0010 */ PTR(354, 1), + /* 0011 */ PTR(356, 1), + /* 0100 */ PTR(358, 1), + /* 0101 */ PTR(360, 1), + /* 0110 */ PTR(362, 1), + /* 0111 */ PTR(364, 1), + /* 1000 */ PTR(366, 1), + /* 1001 */ PTR(368, 1), + /* 1010 */ PTR(370, 2), + /* 1011 */ PTR(374, 1), + /* 1100 */ PTR(376, 2), + /* 1101 */ V(7, 3, 4), + /* 1110 */ PTR(380, 1), + /* 1111 */ V(7, 2, 4), + + /* 0111 ... */ + /* 0000 */ V(4, 6, 4), /* 112 */ + /* 0001 */ V(6, 4, 4), + /* 0010 */ V(5, 5, 4), + /* 0011 */ V(7, 1, 4), + /* 0100 */ V(3, 6, 4), + /* 0101 */ V(6, 3, 4), + /* 0110 */ V(4, 5, 4), + /* 0111 */ V(5, 4, 4), + /* 1000 */ V(2, 6, 4), + /* 1001 */ V(6, 2, 4), + /* 1010 */ V(1, 6, 4), + /* 1011 */ V(6, 1, 4), + /* 1100 */ PTR(382, 1), + /* 1101 */ V(3, 5, 4), + /* 1110 */ V(5, 3, 4), + /* 1111 */ V(4, 4, 4), + + /* 1000 ... */ + /* 0000 */ V(2, 5, 4), /* 128 */ + /* 0001 */ V(5, 2, 4), + /* 0010 */ V(1, 5, 4), + /* 0011 */ PTR(384, 1), + /* 0100 */ V(5, 1, 3), + /* 0101 */ V(5, 1, 3), + /* 0110 */ V(3, 4, 4), + /* 0111 */ V(4, 3, 4), + /* 1000 */ V(2, 4, 3), + /* 1001 */ V(2, 4, 3), + /* 1010 */ V(4, 2, 3), + /* 1011 */ V(4, 2, 3), + /* 1100 */ V(3, 3, 3), + /* 1101 */ V(3, 3, 3), + /* 1110 */ V(1, 4, 3), + /* 1111 */ V(1, 4, 3), + + /* 1001 ... */ + /* 0000 */ V(4, 1, 3), /* 144 */ + /* 0001 */ V(4, 1, 3), + /* 0010 */ V(0, 4, 4), + /* 0011 */ V(4, 0, 4), + /* 0100 */ V(2, 3, 3), + /* 0101 */ V(2, 3, 3), + /* 0110 */ V(3, 2, 3), + /* 0111 */ V(3, 2, 3), + /* 1000 */ V(1, 3, 2), + /* 1001 */ V(1, 3, 2), + /* 1010 */ V(1, 3, 2), + /* 1011 */ V(1, 3, 2), + /* 1100 */ V(3, 1, 2), + /* 1101 */ V(3, 1, 2), + /* 1110 */ V(3, 1, 2), + /* 1111 */ V(3, 1, 2), + + /* 1010 ... */ + /* 000 */ V(0, 3, 3), /* 160 */ + /* 001 */ V(3, 0, 3), + /* 010 */ V(2, 2, 2), + /* 011 */ V(2, 2, 2), + /* 100 */ V(1, 2, 1), + /* 101 */ V(1, 2, 1), + /* 110 */ V(1, 2, 1), + /* 111 */ V(1, 2, 1), + + /* 1011 ... */ + /* 00 */ V(2, 1, 1), /* 168 */ + /* 01 */ V(2, 1, 1), + /* 10 */ V(0, 2, 2), + /* 11 */ V(2, 0, 2), + + /* 0010 1100 ... */ + /* 000 */ V(0, 15, 1), /* 172 */ + /* 001 */ V(0, 15, 1), + /* 010 */ V(0, 15, 1), + /* 011 */ V(0, 15, 1), + /* 100 */ V(14, 14, 3), + /* 101 */ V(13, 14, 3), + /* 110 */ V(14, 13, 3), + /* 111 */ V(12, 14, 3), + + /* 0010 1101 ... */ + /* 000 */ V(14, 12, 3), /* 180 */ + /* 001 */ V(13, 13, 3), + /* 010 */ V(11, 14, 3), + /* 011 */ V(14, 11, 3), + /* 100 */ V(12, 13, 3), + /* 101 */ V(13, 12, 3), + /* 110 */ V(10, 14, 3), + /* 111 */ V(14, 10, 3), + + /* 0010 1110 ... */ + /* 000 */ V(11, 13, 3), /* 188 */ + /* 001 */ V(13, 11, 3), + /* 010 */ V(12, 12, 3), + /* 011 */ V(9, 14, 3), + /* 100 */ V(14, 9, 3), + /* 101 */ V(10, 13, 3), + /* 110 */ V(13, 10, 3), + /* 111 */ V(11, 12, 3), + + /* 0010 1111 ... */ + /* 000 */ V(12, 11, 3), /* 196 */ + /* 001 */ V(8, 14, 3), + /* 010 */ V(14, 8, 3), + /* 011 */ V(9, 13, 3), + /* 100 */ V(13, 9, 3), + /* 101 */ V(7, 14, 3), + /* 110 */ V(14, 7, 3), + /* 111 */ V(10, 12, 3), + + /* 0100 0000 ... */ + /* 0000 */ V(12, 10, 3), /* 204 */ + /* 0001 */ V(12, 10, 3), + /* 0010 */ V(11, 11, 3), + /* 0011 */ V(11, 11, 3), + /* 0100 */ V(8, 13, 3), + /* 0101 */ V(8, 13, 3), + /* 0110 */ V(13, 8, 3), + /* 0111 */ V(13, 8, 3), + /* 1000 */ V(0, 14, 4), + /* 1001 */ V(14, 0, 4), + /* 1010 */ V(0, 13, 3), + /* 1011 */ V(0, 13, 3), + /* 1100 */ V(14, 6, 2), + /* 1101 */ V(14, 6, 2), + /* 1110 */ V(14, 6, 2), + /* 1111 */ V(14, 6, 2), + + /* 0100 0001 ... */ + /* 000 */ V(6, 14, 3), /* 220 */ + /* 001 */ V(9, 12, 3), + /* 010 */ V(12, 9, 2), + /* 011 */ V(12, 9, 2), + /* 100 */ V(5, 14, 2), + /* 101 */ V(5, 14, 2), + /* 110 */ V(11, 10, 2), + /* 111 */ V(11, 10, 2), + + /* 0100 0010 ... */ + /* 000 */ V(14, 5, 2), /* 228 */ + /* 001 */ V(14, 5, 2), + /* 010 */ V(10, 11, 3), + /* 011 */ V(7, 13, 3), + /* 100 */ V(13, 7, 2), + /* 101 */ V(13, 7, 2), + /* 110 */ V(14, 4, 2), + /* 111 */ V(14, 4, 2), + + /* 0100 0011 ... */ + /* 000 */ V(8, 12, 2), /* 236 */ + /* 001 */ V(8, 12, 2), + /* 010 */ V(12, 8, 2), + /* 011 */ V(12, 8, 2), + /* 100 */ V(4, 14, 3), + /* 101 */ V(2, 14, 3), + /* 110 */ V(3, 14, 2), + /* 111 */ V(3, 14, 2), + + /* 0100 0100 ... */ + /* 00 */ V(6, 13, 2), /* 244 */ + /* 01 */ V(13, 6, 2), + /* 10 */ V(14, 3, 2), + /* 11 */ V(9, 11, 2), + + /* 0100 0101 ... */ + /* 00 */ V(11, 9, 2), /* 248 */ + /* 01 */ V(10, 10, 2), + /* 10 */ V(14, 2, 2), + /* 11 */ V(1, 14, 2), + + /* 0100 0110 ... */ + /* 00 */ V(14, 1, 2), /* 252 */ + /* 01 */ V(5, 13, 2), + /* 10 */ V(13, 5, 2), + /* 11 */ V(7, 12, 2), + + /* 0100 0111 ... */ + /* 00 */ V(12, 7, 2), /* 256 */ + /* 01 */ V(4, 13, 2), + /* 10 */ V(8, 11, 2), + /* 11 */ V(11, 8, 2), + + /* 0100 1000 ... */ + /* 00 */ V(13, 4, 2), /* 260 */ + /* 01 */ V(9, 10, 2), + /* 10 */ V(10, 9, 2), + /* 11 */ V(6, 12, 2), + + /* 0100 1001 ... */ + /* 00 */ V(12, 6, 2), /* 264 */ + /* 01 */ V(3, 13, 2), + /* 10 */ V(13, 3, 2), + /* 11 */ V(2, 13, 2), + + /* 0100 1010 ... */ + /* 00 */ V(13, 2, 2), /* 268 */ + /* 01 */ V(1, 13, 2), + /* 10 */ V(7, 11, 2), + /* 11 */ V(11, 7, 2), + + /* 0100 1011 ... */ + /* 00 */ V(13, 1, 2), /* 272 */ + /* 01 */ V(5, 12, 2), + /* 10 */ V(12, 5, 2), + /* 11 */ V(8, 10, 2), + + /* 0100 1100 ... */ + /* 00 */ V(10, 8, 2), /* 276 */ + /* 01 */ V(9, 9, 2), + /* 10 */ V(4, 12, 2), + /* 11 */ V(12, 4, 2), + + /* 0100 1101 ... */ + /* 000 */ V(6, 11, 2), /* 280 */ + /* 001 */ V(6, 11, 2), + /* 010 */ V(11, 6, 2), + /* 011 */ V(11, 6, 2), + /* 100 */ V(13, 0, 3), + /* 101 */ V(0, 12, 3), + /* 110 */ V(3, 12, 2), + /* 111 */ V(3, 12, 2), + + /* 0100 1110 ... */ + /* 00 */ V(12, 3, 2), /* 288 */ + /* 01 */ V(7, 10, 2), + /* 10 */ V(10, 7, 2), + /* 11 */ V(2, 12, 2), + + /* 0100 1111 ... */ + /* 00 */ V(12, 2, 2), /* 292 */ + /* 01 */ V(5, 11, 2), + /* 10 */ V(11, 5, 2), + /* 11 */ V(1, 12, 2), + + /* 0101 0000 ... */ + /* 00 */ V(8, 9, 2), /* 296 */ + /* 01 */ V(9, 8, 2), + /* 10 */ V(12, 1, 2), + /* 11 */ V(4, 11, 2), + + /* 0101 0001 ... */ + /* 000 */ V(12, 0, 3), /* 300 */ + /* 001 */ V(0, 11, 3), + /* 010 */ V(3, 11, 2), + /* 011 */ V(3, 11, 2), + /* 100 */ V(11, 0, 3), + /* 101 */ V(0, 10, 3), + /* 110 */ V(1, 10, 2), + /* 111 */ V(1, 10, 2), + + /* 0101 0010 ... */ + /* 00 */ V(11, 4, 1), /* 308 */ + /* 01 */ V(11, 4, 1), + /* 10 */ V(6, 10, 2), + /* 11 */ V(10, 6, 2), + + /* 0101 0011 ... */ + /* 000 */ V(7, 9, 2), /* 312 */ + /* 001 */ V(7, 9, 2), + /* 010 */ V(9, 7, 2), + /* 011 */ V(9, 7, 2), + /* 100 */ V(10, 0, 3), + /* 101 */ V(0, 9, 3), + /* 110 */ V(9, 0, 2), + /* 111 */ V(9, 0, 2), + + /* 0101 0100 ... */ + /* 0 */ V(11, 3, 1), /* 320 */ + /* 1 */ V(8, 8, 1), + + /* 0101 0101 ... */ + /* 00 */ V(2, 11, 2), /* 322 */ + /* 01 */ V(5, 10, 2), + /* 10 */ V(11, 2, 1), + /* 11 */ V(11, 2, 1), + + /* 0101 0110 ... */ + /* 00 */ V(10, 5, 2), /* 326 */ + /* 01 */ V(1, 11, 2), + /* 10 */ V(11, 1, 2), + /* 11 */ V(6, 9, 2), + + /* 0101 0111 ... */ + /* 0 */ V(9, 6, 1), /* 330 */ + /* 1 */ V(10, 4, 1), + + /* 0101 1000 ... */ + /* 00 */ V(4, 10, 2), /* 332 */ + /* 01 */ V(7, 8, 2), + /* 10 */ V(8, 7, 1), + /* 11 */ V(8, 7, 1), + + /* 0101 1001 ... */ + /* 0 */ V(3, 10, 1), /* 336 */ + /* 1 */ V(10, 3, 1), + + /* 0101 1010 ... */ + /* 0 */ V(5, 9, 1), /* 338 */ + /* 1 */ V(9, 5, 1), + + /* 0101 1011 ... */ + /* 0 */ V(2, 10, 1), /* 340 */ + /* 1 */ V(10, 2, 1), + + /* 0101 1100 ... */ + /* 0 */ V(10, 1, 1), /* 342 */ + /* 1 */ V(6, 8, 1), + + /* 0101 1101 ... */ + /* 0 */ V(8, 6, 1), /* 344 */ + /* 1 */ V(7, 7, 1), + + /* 0101 1110 ... */ + /* 0 */ V(4, 9, 1), /* 346 */ + /* 1 */ V(9, 4, 1), + + /* 0101 1111 ... */ + /* 0 */ V(3, 9, 1), /* 348 */ + /* 1 */ V(9, 3, 1), + + /* 0110 0000 ... */ + /* 0 */ V(5, 8, 1), /* 350 */ + /* 1 */ V(8, 5, 1), + + /* 0110 0001 ... */ + /* 0 */ V(2, 9, 1), /* 352 */ + /* 1 */ V(6, 7, 1), + + /* 0110 0010 ... */ + /* 0 */ V(7, 6, 1), /* 354 */ + /* 1 */ V(9, 2, 1), + + /* 0110 0011 ... */ + /* 0 */ V(1, 9, 1), /* 356 */ + /* 1 */ V(9, 1, 1), + + /* 0110 0100 ... */ + /* 0 */ V(4, 8, 1), /* 358 */ + /* 1 */ V(8, 4, 1), + + /* 0110 0101 ... */ + /* 0 */ V(5, 7, 1), /* 360 */ + /* 1 */ V(7, 5, 1), + + /* 0110 0110 ... */ + /* 0 */ V(3, 8, 1), /* 362 */ + /* 1 */ V(8, 3, 1), + + /* 0110 0111 ... */ + /* 0 */ V(6, 6, 1), /* 364 */ + /* 1 */ V(2, 8, 1), + + /* 0110 1000 ... */ + /* 0 */ V(8, 2, 1), /* 366 */ + /* 1 */ V(1, 8, 1), + + /* 0110 1001 ... */ + /* 0 */ V(4, 7, 1), /* 368 */ + /* 1 */ V(7, 4, 1), + + /* 0110 1010 ... */ + /* 00 */ V(8, 1, 1), /* 370 */ + /* 01 */ V(8, 1, 1), + /* 10 */ V(0, 8, 2), + /* 11 */ V(8, 0, 2), + + /* 0110 1011 ... */ + /* 0 */ V(5, 6, 1), /* 374 */ + /* 1 */ V(6, 5, 1), + + /* 0110 1100 ... */ + /* 00 */ V(1, 7, 1), /* 376 */ + /* 01 */ V(1, 7, 1), + /* 10 */ V(0, 7, 2), + /* 11 */ V(7, 0, 2), + + /* 0110 1110 ... */ + /* 0 */ V(3, 7, 1), /* 380 */ + /* 1 */ V(2, 7, 1), + + /* 0111 1100 ... */ + /* 0 */ V(0, 6, 1), /* 382 */ + /* 1 */ V(6, 0, 1), + + /* 1000 0011 ... */ + /* 0 */ V(0, 5, 1), /* 384 */ + /* 1 */ V(5, 0, 1) +}; + +# undef V +# undef PTR + +/* external tables */ + +union huffquad const *const mad_huff_quad_table[2] = { hufftabA, hufftabB }; + +struct hufftable const mad_huff_pair_table[32] = { + /* 0 */ { hufftab0, 0, 0 }, + /* 1 */ { hufftab1, 0, 3 }, + /* 2 */ { hufftab2, 0, 3 }, + /* 3 */ { hufftab3, 0, 3 }, + /* 4 */ { 0 /* not used */ }, + /* 5 */ { hufftab5, 0, 3 }, + /* 6 */ { hufftab6, 0, 4 }, + /* 7 */ { hufftab7, 0, 4 }, + /* 8 */ { hufftab8, 0, 4 }, + /* 9 */ { hufftab9, 0, 4 }, + /* 10 */ { hufftab10, 0, 4 }, + /* 11 */ { hufftab11, 0, 4 }, + /* 12 */ { hufftab12, 0, 4 }, + /* 13 */ { hufftab13, 0, 4 }, + /* 14 */ { 0 /* not used */ }, + /* 15 */ { hufftab15, 0, 4 }, + /* 16 */ { hufftab16, 1, 4 }, + /* 17 */ { hufftab16, 2, 4 }, + /* 18 */ { hufftab16, 3, 4 }, + /* 19 */ { hufftab16, 4, 4 }, + /* 20 */ { hufftab16, 6, 4 }, + /* 21 */ { hufftab16, 8, 4 }, + /* 22 */ { hufftab16, 10, 4 }, + /* 23 */ { hufftab16, 13, 4 }, + /* 24 */ { hufftab24, 4, 4 }, + /* 25 */ { hufftab24, 5, 4 }, + /* 26 */ { hufftab24, 6, 4 }, + /* 27 */ { hufftab24, 7, 4 }, + /* 28 */ { hufftab24, 8, 4 }, + /* 29 */ { hufftab24, 9, 4 }, + /* 30 */ { hufftab24, 11, 4 }, + /* 31 */ { hufftab24, 13, 4 } +};
trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.h (revision 782) @@ -0,0 +1,100 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: timer.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_TIMER_H +# define LIBMAD_TIMER_H + +typedef struct { + signed long seconds; /* whole seconds */ + unsigned long fraction; /* 1/MAD_TIMER_RESOLUTION seconds */ +} mad_timer_t; + +extern mad_timer_t const mad_timer_zero; + +# define MAD_TIMER_RESOLUTION 352800000UL + +enum mad_units { + MAD_UNITS_HOURS = -2, + MAD_UNITS_MINUTES = -1, + MAD_UNITS_SECONDS = 0, + + /* metric units */ + + MAD_UNITS_DECISECONDS = 10, + MAD_UNITS_CENTISECONDS = 100, + MAD_UNITS_MILLISECONDS = 1000, + + /* audio sample units */ + + MAD_UNITS_8000_HZ = 8000, + MAD_UNITS_11025_HZ = 11025, + MAD_UNITS_12000_HZ = 12000, + + MAD_UNITS_16000_HZ = 16000, + MAD_UNITS_22050_HZ = 22050, + MAD_UNITS_24000_HZ = 24000, + + MAD_UNITS_32000_HZ = 32000, + MAD_UNITS_44100_HZ = 44100, + MAD_UNITS_48000_HZ = 48000, + + /* video frame/field units */ + + MAD_UNITS_24_FPS = 24, + MAD_UNITS_25_FPS = 25, + MAD_UNITS_30_FPS = 30, + MAD_UNITS_48_FPS = 48, + MAD_UNITS_50_FPS = 50, + MAD_UNITS_60_FPS = 60, + + /* CD audio frames */ + + MAD_UNITS_75_FPS = 75, + + /* video drop-frame units */ + + MAD_UNITS_23_976_FPS = -24, + MAD_UNITS_24_975_FPS = -25, + MAD_UNITS_29_97_FPS = -30, + MAD_UNITS_47_952_FPS = -48, + MAD_UNITS_49_95_FPS = -50, + MAD_UNITS_59_94_FPS = -60 +}; + +# define mad_timer_reset(timer) (*(timer) = mad_timer_zero) + +int mad_timer_compare(mad_timer_t, mad_timer_t); + +# define mad_timer_sign(timer) mad_timer_compare((timer), mad_timer_zero) + +void mad_timer_negate(mad_timer_t *); +mad_timer_t mad_timer_abs(mad_timer_t); + +void mad_timer_set(mad_timer_t *, unsigned long, unsigned long, unsigned long); +void mad_timer_add(mad_timer_t *, mad_timer_t); +void mad_timer_multiply(mad_timer_t *, signed long); + +signed long mad_timer_count(mad_timer_t, enum mad_units); +unsigned long mad_timer_fraction(mad_timer_t, unsigned long); +void mad_timer_string(mad_timer_t, char *, char const *, + enum mad_units, enum mad_units, unsigned long); + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/timer.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/rq_short.dat =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/rq_short.dat (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/rq_short.dat (revision 782) @@ -0,0 +1,574 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: rq_short.dat,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +/* + * This is the lookup table used to compute x^(4/3) for Layer III + * requantization. To maintain the best possible accuracy, the value is + * stored as a normalized mantissa with exponent. The requantization + * algorithm recombines these parts with appropriate scaling. + */ + +/* Table shortened by MM. */ + + /* 0 */ { MAD_F(0x00000000) /* 0.000000000 */, 0 }, + /* 1 */ { MAD_F(0x04000000) /* 0.250000000 */, 2 }, + /* 2 */ { MAD_F(0x050a28be) /* 0.314980262 */, 3 }, + /* 3 */ { MAD_F(0x0453a5cd) /* 0.270421794 */, 4 }, + /* 4 */ { MAD_F(0x06597fa9) /* 0.396850263 */, 4 }, + /* 5 */ { MAD_F(0x04466275) /* 0.267183742 */, 5 }, + /* 6 */ { MAD_F(0x05738c72) /* 0.340710111 */, 5 }, + /* 7 */ { MAD_F(0x06b1fc81) /* 0.418453696 */, 5 }, + /* 8 */ { MAD_F(0x04000000) /* 0.250000000 */, 6 }, + /* 9 */ { MAD_F(0x04ae20d7) /* 0.292511788 */, 6 }, + /* 10 */ { MAD_F(0x0562d694) /* 0.336630420 */, 6 }, + /* 11 */ { MAD_F(0x061dae96) /* 0.382246578 */, 6 }, + /* 12 */ { MAD_F(0x06de47f4) /* 0.429267841 */, 6 }, + /* 13 */ { MAD_F(0x07a44f7a) /* 0.477614858 */, 6 }, + /* 14 */ { MAD_F(0x0437be65) /* 0.263609310 */, 7 }, + /* 15 */ { MAD_F(0x049fc824) /* 0.289009227 */, 7 }, + + /* 16 */ { MAD_F(0x050a28be) /* 0.314980262 */, 7 }, + /* 17 */ { MAD_F(0x0576c6f5) /* 0.341498336 */, 7 }, + /* 18 */ { MAD_F(0x05e58c0b) /* 0.368541759 */, 7 }, + /* 19 */ { MAD_F(0x06566361) /* 0.396090870 */, 7 }, + /* 20 */ { MAD_F(0x06c93a2e) /* 0.424127753 */, 7 }, + /* 21 */ { MAD_F(0x073dff3e) /* 0.452635998 */, 7 }, + /* 22 */ { MAD_F(0x07b4a2bc) /* 0.481600510 */, 7 }, + /* 23 */ { MAD_F(0x04168b05) /* 0.255503674 */, 8 }, + /* 24 */ { MAD_F(0x0453a5cd) /* 0.270421794 */, 8 }, + /* 25 */ { MAD_F(0x04919b6a) /* 0.285548607 */, 8 }, + /* 26 */ { MAD_F(0x04d065fb) /* 0.300878507 */, 8 }, + /* 27 */ { MAD_F(0x05100000) /* 0.316406250 */, 8 }, + /* 28 */ { MAD_F(0x05506451) /* 0.332126919 */, 8 }, + /* 29 */ { MAD_F(0x05918e15) /* 0.348035890 */, 8 }, + /* 30 */ { MAD_F(0x05d378bb) /* 0.364128809 */, 8 }, + /* 31 */ { MAD_F(0x06161ff3) /* 0.380401563 */, 8 }, + + /* 32 */ { MAD_F(0x06597fa9) /* 0.396850263 */, 8 }, + /* 33 */ { MAD_F(0x069d9400) /* 0.413471222 */, 8 }, + /* 34 */ { MAD_F(0x06e2594c) /* 0.430260942 */, 8 }, + /* 35 */ { MAD_F(0x0727cc11) /* 0.447216097 */, 8 }, + /* 36 */ { MAD_F(0x076de8fc) /* 0.464333519 */, 8 }, + /* 37 */ { MAD_F(0x07b4ace3) /* 0.481610189 */, 8 }, + /* 38 */ { MAD_F(0x07fc14bf) /* 0.499043224 */, 8 }, + /* 39 */ { MAD_F(0x04220ed7) /* 0.258314934 */, 9 }, + /* 40 */ { MAD_F(0x04466275) /* 0.267183742 */, 9 }, + /* 41 */ { MAD_F(0x046b03e7) /* 0.276126771 */, 9 }, + /* 42 */ { MAD_F(0x048ff1e8) /* 0.285142811 */, 9 }, + /* 43 */ { MAD_F(0x04b52b3f) /* 0.294230696 */, 9 }, + /* 44 */ { MAD_F(0x04daaec0) /* 0.303389310 */, 9 }, + /* 45 */ { MAD_F(0x05007b49) /* 0.312617576 */, 9 }, + /* 46 */ { MAD_F(0x05268fc6) /* 0.321914457 */, 9 }, + /* 47 */ { MAD_F(0x054ceb2a) /* 0.331278957 */, 9 }, + + /* 48 */ { MAD_F(0x05738c72) /* 0.340710111 */, 9 }, + /* 49 */ { MAD_F(0x059a72a5) /* 0.350206992 */, 9 }, + /* 50 */ { MAD_F(0x05c19cd3) /* 0.359768701 */, 9 }, + /* 51 */ { MAD_F(0x05e90a12) /* 0.369394372 */, 9 }, + /* 52 */ { MAD_F(0x0610b982) /* 0.379083164 */, 9 }, + /* 53 */ { MAD_F(0x0638aa48) /* 0.388834268 */, 9 }, + /* 54 */ { MAD_F(0x0660db91) /* 0.398646895 */, 9 }, + /* 55 */ { MAD_F(0x06894c90) /* 0.408520284 */, 9 }, + /* 56 */ { MAD_F(0x06b1fc81) /* 0.418453696 */, 9 }, + /* 57 */ { MAD_F(0x06daeaa1) /* 0.428446415 */, 9 }, + /* 58 */ { MAD_F(0x07041636) /* 0.438497744 */, 9 }, + /* 59 */ { MAD_F(0x072d7e8b) /* 0.448607009 */, 9 }, + /* 60 */ { MAD_F(0x075722ef) /* 0.458773552 */, 9 }, + /* 61 */ { MAD_F(0x078102b8) /* 0.468996735 */, 9 }, + /* 62 */ { MAD_F(0x07ab1d3e) /* 0.479275937 */, 9 }, + /* 63 */ { MAD_F(0x07d571e0) /* 0.489610555 */, 9 }, + + /* 64 */ { MAD_F(0x04000000) /* 0.250000000 */, 10 }, + /* 65 */ { MAD_F(0x04156381) /* 0.255221850 */, 10 }, + /* 66 */ { MAD_F(0x042ae32a) /* 0.260470548 */, 10 }, + /* 67 */ { MAD_F(0x04407eb1) /* 0.265745823 */, 10 }, + /* 68 */ { MAD_F(0x045635cf) /* 0.271047409 */, 10 }, + /* 69 */ { MAD_F(0x046c083e) /* 0.276375048 */, 10 }, + /* 70 */ { MAD_F(0x0481f5bb) /* 0.281728487 */, 10 }, + /* 71 */ { MAD_F(0x0497fe03) /* 0.287107481 */, 10 }, + /* 72 */ { MAD_F(0x04ae20d7) /* 0.292511788 */, 10 }, + /* 73 */ { MAD_F(0x04c45df6) /* 0.297941173 */, 10 }, + /* 74 */ { MAD_F(0x04dab524) /* 0.303395408 */, 10 }, + /* 75 */ { MAD_F(0x04f12624) /* 0.308874267 */, 10 }, + /* 76 */ { MAD_F(0x0507b0bc) /* 0.314377532 */, 10 }, + /* 77 */ { MAD_F(0x051e54b1) /* 0.319904987 */, 10 }, + /* 78 */ { MAD_F(0x053511cb) /* 0.325456423 */, 10 }, + /* 79 */ { MAD_F(0x054be7d4) /* 0.331031635 */, 10 }, + + /* 80 */ { MAD_F(0x0562d694) /* 0.336630420 */, 10 }, + /* 81 */ { MAD_F(0x0579ddd8) /* 0.342252584 */, 10 }, + /* 82 */ { MAD_F(0x0590fd6c) /* 0.347897931 */, 10 }, + /* 83 */ { MAD_F(0x05a8351c) /* 0.353566275 */, 10 }, + /* 84 */ { MAD_F(0x05bf84b8) /* 0.359257429 */, 10 }, + /* 85 */ { MAD_F(0x05d6ec0e) /* 0.364971213 */, 10 }, + /* 86 */ { MAD_F(0x05ee6aef) /* 0.370707448 */, 10 }, + /* 87 */ { MAD_F(0x0606012b) /* 0.376465960 */, 10 }, + /* 88 */ { MAD_F(0x061dae96) /* 0.382246578 */, 10 }, + /* 89 */ { MAD_F(0x06357302) /* 0.388049134 */, 10 }, + /* 90 */ { MAD_F(0x064d4e43) /* 0.393873464 */, 10 }, + /* 91 */ { MAD_F(0x0665402d) /* 0.399719406 */, 10 }, + /* 92 */ { MAD_F(0x067d4896) /* 0.405586801 */, 10 }, + /* 93 */ { MAD_F(0x06956753) /* 0.411475493 */, 10 }, + /* 94 */ { MAD_F(0x06ad9c3d) /* 0.417385331 */, 10 }, + /* 95 */ { MAD_F(0x06c5e72b) /* 0.423316162 */, 10 }, + + /* 96 */ { MAD_F(0x06de47f4) /* 0.429267841 */, 10 }, + /* 97 */ { MAD_F(0x06f6be73) /* 0.435240221 */, 10 }, + /* 98 */ { MAD_F(0x070f4a80) /* 0.441233161 */, 10 }, + /* 99 */ { MAD_F(0x0727ebf7) /* 0.447246519 */, 10 }, + /* 100 */ { MAD_F(0x0740a2b2) /* 0.453280160 */, 10 }, + /* 101 */ { MAD_F(0x07596e8d) /* 0.459333946 */, 10 }, + /* 102 */ { MAD_F(0x07724f64) /* 0.465407744 */, 10 }, + /* 103 */ { MAD_F(0x078b4514) /* 0.471501425 */, 10 }, + /* 104 */ { MAD_F(0x07a44f7a) /* 0.477614858 */, 10 }, + /* 105 */ { MAD_F(0x07bd6e75) /* 0.483747918 */, 10 }, + /* 106 */ { MAD_F(0x07d6a1e2) /* 0.489900479 */, 10 }, + /* 107 */ { MAD_F(0x07efe9a1) /* 0.496072418 */, 10 }, + /* 108 */ { MAD_F(0x0404a2c9) /* 0.251131807 */, 11 }, + /* 109 */ { MAD_F(0x04115aca) /* 0.254236974 */, 11 }, + /* 110 */ { MAD_F(0x041e1cc4) /* 0.257351652 */, 11 }, + /* 111 */ { MAD_F(0x042ae8a7) /* 0.260475783 */, 11 }, + + /* 112 */ { MAD_F(0x0437be65) /* 0.263609310 */, 11 }, + /* 113 */ { MAD_F(0x04449dee) /* 0.266752177 */, 11 }, + /* 114 */ { MAD_F(0x04518733) /* 0.269904329 */, 11 }, + /* 115 */ { MAD_F(0x045e7a26) /* 0.273065710 */, 11 }, + /* 116 */ { MAD_F(0x046b76b9) /* 0.276236269 */, 11 }, + /* 117 */ { MAD_F(0x04787cdc) /* 0.279415952 */, 11 }, + /* 118 */ { MAD_F(0x04858c83) /* 0.282604707 */, 11 }, + /* 119 */ { MAD_F(0x0492a59f) /* 0.285802482 */, 11 }, + /* 120 */ { MAD_F(0x049fc824) /* 0.289009227 */, 11 }, + /* 121 */ { MAD_F(0x04acf402) /* 0.292224893 */, 11 }, + /* 122 */ { MAD_F(0x04ba292e) /* 0.295449429 */, 11 }, + /* 123 */ { MAD_F(0x04c7679a) /* 0.298682788 */, 11 }, + /* 124 */ { MAD_F(0x04d4af3a) /* 0.301924921 */, 11 }, + /* 125 */ { MAD_F(0x04e20000) /* 0.305175781 */, 11 }, + /* 126 */ { MAD_F(0x04ef59e0) /* 0.308435322 */, 11 }, + /* 127 */ { MAD_F(0x04fcbcce) /* 0.311703498 */, 11 }, + + /* 128 */ { MAD_F(0x050a28be) /* 0.314980262 */, 11 }, + /* 130 */ { MAD_F(0x05251b73) /* 0.321559381 */, 11 }, + /* 132 */ { MAD_F(0x054031a0) /* 0.328172327 */, 11 }, + /* 134 */ { MAD_F(0x055b6ae9) /* 0.334818756 */, 11 }, + /* 136 */ { MAD_F(0x0576c6f5) /* 0.341498336 */, 11 }, + /* 138 */ { MAD_F(0x0592456d) /* 0.348210741 */, 11 }, + /* 140 */ { MAD_F(0x05ade5fa) /* 0.354955651 */, 11 }, + /* 142 */ { MAD_F(0x05c9a84a) /* 0.361732758 */, 11 }, + /* 144 */ { MAD_F(0x05e58c0b) /* 0.368541759 */, 11 }, + /* 146 */ { MAD_F(0x060190ee) /* 0.375382356 */, 11 }, + /* 148 */ { MAD_F(0x061db6a5) /* 0.382254261 */, 11 }, + /* 150 */ { MAD_F(0x0639fce4) /* 0.389157191 */, 11 }, + /* 152 */ { MAD_F(0x06566361) /* 0.396090870 */, 11 }, + /* 154 */ { MAD_F(0x0672e9d4) /* 0.403055027 */, 11 }, + /* 156 */ { MAD_F(0x068f8ff5) /* 0.410049398 */, 11 }, + /* 158 */ { MAD_F(0x06ac557f) /* 0.417073724 */, 11 }, + + /* 160 */ { MAD_F(0x06c93a2e) /* 0.424127753 */, 11 }, + /* 162 */ { MAD_F(0x06e63dc0) /* 0.431211234 */, 11 }, + /* 164 */ { MAD_F(0x07035ff3) /* 0.438323927 */, 11 }, + /* 166 */ { MAD_F(0x0720a087) /* 0.445465593 */, 11 }, + /* 168 */ { MAD_F(0x073dff3e) /* 0.452635998 */, 11 }, + /* 170 */ { MAD_F(0x075b7bdb) /* 0.459834914 */, 11 }, + /* 172 */ { MAD_F(0x07791620) /* 0.467062117 */, 11 }, + /* 174 */ { MAD_F(0x0796cdd4) /* 0.474317388 */, 11 }, + /* 176 */ { MAD_F(0x07b4a2bc) /* 0.481600510 */, 11 }, + /* 178 */ { MAD_F(0x07d294a0) /* 0.488911273 */, 11 }, + /* 180 */ { MAD_F(0x07f0a348) /* 0.496249468 */, 11 }, + /* 182 */ { MAD_F(0x0407673f) /* 0.251807447 */, 12 }, + /* 184 */ { MAD_F(0x04168b05) /* 0.255503674 */, 12 }, + /* 186 */ { MAD_F(0x0425bcdd) /* 0.259213318 */, 12 }, + /* 188 */ { MAD_F(0x0434fcad) /* 0.262936282 */, 12 }, + /* 190 */ { MAD_F(0x04444a5a) /* 0.266672472 */, 12 }, + + /* 192 */ { MAD_F(0x0453a5cd) /* 0.270421794 */, 12 }, + /* 194 */ { MAD_F(0x04630eed) /* 0.274184158 */, 12 }, + /* 196 */ { MAD_F(0x047285a2) /* 0.277959474 */, 12 }, + /* 198 */ { MAD_F(0x048209d3) /* 0.281747652 */, 12 }, + /* 200 */ { MAD_F(0x04919b6a) /* 0.285548607 */, 12 }, + /* 202 */ { MAD_F(0x04a13a50) /* 0.289362253 */, 12 }, + /* 204 */ { MAD_F(0x04b0e66e) /* 0.293188507 */, 12 }, + /* 206 */ { MAD_F(0x04c09faf) /* 0.297027285 */, 12 }, + /* 208 */ { MAD_F(0x04d065fb) /* 0.300878507 */, 12 }, + /* 210 */ { MAD_F(0x04e0393e) /* 0.304742092 */, 12 }, + /* 212 */ { MAD_F(0x04f01963) /* 0.308617963 */, 12 }, + /* 214 */ { MAD_F(0x05000655) /* 0.312506041 */, 12 }, + /* 216 */ { MAD_F(0x05100000) /* 0.316406250 */, 12 }, + /* 218 */ { MAD_F(0x0520064f) /* 0.320318516 */, 12 }, + /* 220 */ { MAD_F(0x0530192e) /* 0.324242764 */, 12 }, + /* 222 */ { MAD_F(0x0540388a) /* 0.328178922 */, 12 }, + + /* 224 */ { MAD_F(0x05506451) /* 0.332126919 */, 12 }, + /* 226 */ { MAD_F(0x05609c6e) /* 0.336086683 */, 12 }, + /* 228 */ { MAD_F(0x0570e0cf) /* 0.340058145 */, 12 }, + /* 230 */ { MAD_F(0x05813162) /* 0.344041237 */, 12 }, + /* 232 */ { MAD_F(0x05918e15) /* 0.348035890 */, 12 }, + /* 234 */ { MAD_F(0x05a1f6d5) /* 0.352042040 */, 12 }, + /* 236 */ { MAD_F(0x05b26b92) /* 0.356059619 */, 12 }, + /* 238 */ { MAD_F(0x05c2ec39) /* 0.360088563 */, 12 }, + /* 240 */ { MAD_F(0x05d378bb) /* 0.364128809 */, 12 }, + /* 242 */ { MAD_F(0x05e41105) /* 0.368180294 */, 12 }, + /* 244 */ { MAD_F(0x05f4b507) /* 0.372242955 */, 12 }, + /* 246 */ { MAD_F(0x060564b1) /* 0.376316732 */, 12 }, + /* 248 */ { MAD_F(0x06161ff3) /* 0.380401563 */, 12 }, + /* 250 */ { MAD_F(0x0626e6bc) /* 0.384497391 */, 12 }, + /* 252 */ { MAD_F(0x0637b8fd) /* 0.388604155 */, 12 }, + /* 254 */ { MAD_F(0x064896a7) /* 0.392721798 */, 12 }, + + /* 256 */ { MAD_F(0x06597fa9) /* 0.396850263 */, 12 }, + /* 260 */ { MAD_F(0x067b737c) /* 0.405139433 */, 12 }, + /* 264 */ { MAD_F(0x069d9400) /* 0.413471222 */, 12 }, + /* 268 */ { MAD_F(0x06bfe0c0) /* 0.421845199 */, 12 }, + /* 272 */ { MAD_F(0x06e2594c) /* 0.430260942 */, 12 }, + /* 276 */ { MAD_F(0x0704fd35) /* 0.438718042 */, 12 }, + /* 280 */ { MAD_F(0x0727cc11) /* 0.447216097 */, 12 }, + /* 284 */ { MAD_F(0x074ac575) /* 0.455754717 */, 12 }, + /* 288 */ { MAD_F(0x076de8fc) /* 0.464333519 */, 12 }, + /* 292 */ { MAD_F(0x07913641) /* 0.472952132 */, 12 }, + /* 296 */ { MAD_F(0x07b4ace3) /* 0.481610189 */, 12 }, + /* 300 */ { MAD_F(0x07d84c81) /* 0.490307336 */, 12 }, + /* 304 */ { MAD_F(0x07fc14bf) /* 0.499043224 */, 12 }, + /* 308 */ { MAD_F(0x041002a1) /* 0.253908756 */, 13 }, + /* 312 */ { MAD_F(0x04220ed7) /* 0.258314934 */, 13 }, + /* 316 */ { MAD_F(0x04342ed7) /* 0.262739982 */, 13 }, + + /* 320 */ { MAD_F(0x04466275) /* 0.267183742 */, 13 }, + /* 324 */ { MAD_F(0x0458a989) /* 0.271646056 */, 13 }, + /* 328 */ { MAD_F(0x046b03e7) /* 0.276126771 */, 13 }, + /* 332 */ { MAD_F(0x047d716a) /* 0.280625739 */, 13 }, + /* 336 */ { MAD_F(0x048ff1e8) /* 0.285142811 */, 13 }, + /* 340 */ { MAD_F(0x04a2853c) /* 0.289677844 */, 13 }, + /* 344 */ { MAD_F(0x04b52b3f) /* 0.294230696 */, 13 }, + /* 348 */ { MAD_F(0x04c7e3cc) /* 0.298801231 */, 13 }, + /* 352 */ { MAD_F(0x04daaec0) /* 0.303389310 */, 13 }, + /* 356 */ { MAD_F(0x04ed8bf5) /* 0.307994802 */, 13 }, + /* 360 */ { MAD_F(0x05007b49) /* 0.312617576 */, 13 }, + /* 364 */ { MAD_F(0x05137c9a) /* 0.317257503 */, 13 }, + /* 368 */ { MAD_F(0x05268fc6) /* 0.321914457 */, 13 }, + /* 372 */ { MAD_F(0x0539b4ab) /* 0.326588316 */, 13 }, + /* 376 */ { MAD_F(0x054ceb2a) /* 0.331278957 */, 13 }, + /* 380 */ { MAD_F(0x05603321) /* 0.335986261 */, 13 }, + + /* 384 */ { MAD_F(0x05738c72) /* 0.340710111 */, 13 }, + /* 388 */ { MAD_F(0x0586f6fd) /* 0.345450393 */, 13 }, + /* 392 */ { MAD_F(0x059a72a5) /* 0.350206992 */, 13 }, + /* 396 */ { MAD_F(0x05adff4c) /* 0.354979798 */, 13 }, + /* 400 */ { MAD_F(0x05c19cd3) /* 0.359768701 */, 13 }, + /* 404 */ { MAD_F(0x05d54b1f) /* 0.364573594 */, 13 }, + /* 408 */ { MAD_F(0x05e90a12) /* 0.369394372 */, 13 }, + /* 412 */ { MAD_F(0x05fcd992) /* 0.374230929 */, 13 }, + /* 416 */ { MAD_F(0x0610b982) /* 0.379083164 */, 13 }, + /* 420 */ { MAD_F(0x0624a9c7) /* 0.383950977 */, 13 }, + /* 424 */ { MAD_F(0x0638aa48) /* 0.388834268 */, 13 }, + /* 428 */ { MAD_F(0x064cbae9) /* 0.393732939 */, 13 }, + /* 432 */ { MAD_F(0x0660db91) /* 0.398646895 */, 13 }, + /* 436 */ { MAD_F(0x06750c26) /* 0.403576041 */, 13 }, + /* 440 */ { MAD_F(0x06894c90) /* 0.408520284 */, 13 }, + /* 444 */ { MAD_F(0x069d9cb7) /* 0.413479532 */, 13 }, + + /* 448 */ { MAD_F(0x06b1fc81) /* 0.418453696 */, 13 }, + /* 452 */ { MAD_F(0x06c66bd6) /* 0.423442686 */, 13 }, + /* 456 */ { MAD_F(0x06daeaa1) /* 0.428446415 */, 13 }, + /* 460 */ { MAD_F(0x06ef78c8) /* 0.433464796 */, 13 }, + /* 464 */ { MAD_F(0x07041636) /* 0.438497744 */, 13 }, + /* 468 */ { MAD_F(0x0718c2d3) /* 0.443545176 */, 13 }, + /* 472 */ { MAD_F(0x072d7e8b) /* 0.448607009 */, 13 }, + /* 476 */ { MAD_F(0x07424946) /* 0.453683161 */, 13 }, + /* 480 */ { MAD_F(0x075722ef) /* 0.458773552 */, 13 }, + /* 484 */ { MAD_F(0x076c0b72) /* 0.463878102 */, 13 }, + /* 488 */ { MAD_F(0x078102b8) /* 0.468996735 */, 13 }, + /* 492 */ { MAD_F(0x079608ae) /* 0.474129372 */, 13 }, + /* 496 */ { MAD_F(0x07ab1d3e) /* 0.479275937 */, 13 }, + /* 500 */ { MAD_F(0x07c04056) /* 0.484436356 */, 13 }, + /* 504 */ { MAD_F(0x07d571e0) /* 0.489610555 */, 13 }, + /* 508 */ { MAD_F(0x07eab1ca) /* 0.494798460 */, 13 }, + + /* 512 */ { MAD_F(0x04000000) /* 0.250000000 */, 14 }, + /* 520 */ { MAD_F(0x04156381) /* 0.255221850 */, 14 }, + /* 528 */ { MAD_F(0x042ae32a) /* 0.260470548 */, 14 }, + /* 536 */ { MAD_F(0x04407eb1) /* 0.265745823 */, 14 }, + /* 544 */ { MAD_F(0x045635cf) /* 0.271047409 */, 14 }, + /* 552 */ { MAD_F(0x046c083e) /* 0.276375048 */, 14 }, + /* 560 */ { MAD_F(0x0481f5bb) /* 0.281728487 */, 14 }, + /* 568 */ { MAD_F(0x0497fe03) /* 0.287107481 */, 14 }, + /* 576 */ { MAD_F(0x04ae20d7) /* 0.292511788 */, 14 }, + /* 584 */ { MAD_F(0x04c45df6) /* 0.297941173 */, 14 }, + /* 592 */ { MAD_F(0x04dab524) /* 0.303395408 */, 14 }, + /* 600 */ { MAD_F(0x04f12624) /* 0.308874267 */, 14 }, + /* 608 */ { MAD_F(0x0507b0bc) /* 0.314377532 */, 14 }, + /* 616 */ { MAD_F(0x051e54b1) /* 0.319904987 */, 14 }, + /* 624 */ { MAD_F(0x053511cb) /* 0.325456423 */, 14 }, + /* 632 */ { MAD_F(0x054be7d4) /* 0.331031635 */, 14 }, + + /* 640 */ { MAD_F(0x0562d694) /* 0.336630420 */, 14 }, + /* 648 */ { MAD_F(0x0579ddd8) /* 0.342252584 */, 14 }, + /* 656 */ { MAD_F(0x0590fd6c) /* 0.347897931 */, 14 }, + /* 664 */ { MAD_F(0x05a8351c) /* 0.353566275 */, 14 }, + /* 672 */ { MAD_F(0x05bf84b8) /* 0.359257429 */, 14 }, + /* 680 */ { MAD_F(0x05d6ec0e) /* 0.364971213 */, 14 }, + /* 688 */ { MAD_F(0x05ee6aef) /* 0.370707448 */, 14 }, + /* 696 */ { MAD_F(0x0606012b) /* 0.376465960 */, 14 }, + /* 704 */ { MAD_F(0x061dae96) /* 0.382246578 */, 14 }, + /* 712 */ { MAD_F(0x06357302) /* 0.388049134 */, 14 }, + /* 720 */ { MAD_F(0x064d4e43) /* 0.393873464 */, 14 }, + /* 728 */ { MAD_F(0x0665402d) /* 0.399719406 */, 14 }, + /* 736 */ { MAD_F(0x067d4896) /* 0.405586801 */, 14 }, + /* 744 */ { MAD_F(0x06956753) /* 0.411475493 */, 14 }, + /* 752 */ { MAD_F(0x06ad9c3d) /* 0.417385331 */, 14 }, + /* 760 */ { MAD_F(0x06c5e72b) /* 0.423316162 */, 14 }, + + /* 768 */ { MAD_F(0x06de47f4) /* 0.429267841 */, 14 }, + /* 776 */ { MAD_F(0x06f6be73) /* 0.435240221 */, 14 }, + /* 784 */ { MAD_F(0x070f4a80) /* 0.441233161 */, 14 }, + /* 792 */ { MAD_F(0x0727ebf7) /* 0.447246519 */, 14 }, + /* 800 */ { MAD_F(0x0740a2b2) /* 0.453280160 */, 14 }, + /* 808 */ { MAD_F(0x07596e8d) /* 0.459333946 */, 14 }, + /* 816 */ { MAD_F(0x07724f64) /* 0.465407744 */, 14 }, + /* 824 */ { MAD_F(0x078b4514) /* 0.471501425 */, 14 }, + /* 832 */ { MAD_F(0x07a44f7a) /* 0.477614858 */, 14 }, + /* 840 */ { MAD_F(0x07bd6e75) /* 0.483747918 */, 14 }, + /* 848 */ { MAD_F(0x07d6a1e2) /* 0.489900479 */, 14 }, + /* 856 */ { MAD_F(0x07efe9a1) /* 0.496072418 */, 14 }, + /* 864 */ { MAD_F(0x0404a2c9) /* 0.251131807 */, 15 }, + /* 872 */ { MAD_F(0x04115aca) /* 0.254236974 */, 15 }, + /* 880 */ { MAD_F(0x041e1cc4) /* 0.257351652 */, 15 }, + /* 888 */ { MAD_F(0x042ae8a7) /* 0.260475783 */, 15 }, + + /* 896 */ { MAD_F(0x0437be65) /* 0.263609310 */, 15 }, + /* 904 */ { MAD_F(0x04449dee) /* 0.266752177 */, 15 }, + /* 912 */ { MAD_F(0x04518733) /* 0.269904329 */, 15 }, + /* 920 */ { MAD_F(0x045e7a26) /* 0.273065710 */, 15 }, + /* 928 */ { MAD_F(0x046b76b9) /* 0.276236269 */, 15 }, + /* 936 */ { MAD_F(0x04787cdc) /* 0.279415952 */, 15 }, + /* 944 */ { MAD_F(0x04858c83) /* 0.282604707 */, 15 }, + /* 952 */ { MAD_F(0x0492a59f) /* 0.285802482 */, 15 }, + /* 960 */ { MAD_F(0x049fc824) /* 0.289009227 */, 15 }, + /* 968 */ { MAD_F(0x04acf402) /* 0.292224893 */, 15 }, + /* 976 */ { MAD_F(0x04ba292e) /* 0.295449429 */, 15 }, + /* 984 */ { MAD_F(0x04c7679a) /* 0.298682788 */, 15 }, + /* 992 */ { MAD_F(0x04d4af3a) /* 0.301924921 */, 15 }, + /* 1000 */ { MAD_F(0x04e20000) /* 0.305175781 */, 15 }, + /* 1008 */ { MAD_F(0x04ef59e0) /* 0.308435322 */, 15 }, + /* 1016 */ { MAD_F(0x04fcbcce) /* 0.311703498 */, 15 }, + + /* 1024 */ { MAD_F(0x050a28be) /* 0.314980262 */, 15 }, + /* 1040 */ { MAD_F(0x05251b73) /* 0.321559381 */, 15 }, + /* 1056 */ { MAD_F(0x054031a0) /* 0.328172327 */, 15 }, + /* 1072 */ { MAD_F(0x055b6ae9) /* 0.334818756 */, 15 }, + /* 1088 */ { MAD_F(0x0576c6f5) /* 0.341498336 */, 15 }, + /* 1104 */ { MAD_F(0x0592456d) /* 0.348210741 */, 15 }, + /* 1120 */ { MAD_F(0x05ade5fa) /* 0.354955651 */, 15 }, + /* 1136 */ { MAD_F(0x05c9a84a) /* 0.361732758 */, 15 }, + /* 1152 */ { MAD_F(0x05e58c0b) /* 0.368541759 */, 15 }, + /* 1168 */ { MAD_F(0x060190ee) /* 0.375382356 */, 15 }, + /* 1184 */ { MAD_F(0x061db6a5) /* 0.382254261 */, 15 }, + /* 1200 */ { MAD_F(0x0639fce4) /* 0.389157191 */, 15 }, + /* 1216 */ { MAD_F(0x06566361) /* 0.396090870 */, 15 }, + /* 1232 */ { MAD_F(0x0672e9d4) /* 0.403055027 */, 15 }, + /* 1248 */ { MAD_F(0x068f8ff5) /* 0.410049398 */, 15 }, + /* 1264 */ { MAD_F(0x06ac557f) /* 0.417073724 */, 15 }, + + /* 1280 */ { MAD_F(0x06c93a2e) /* 0.424127753 */, 15 }, + /* 1296 */ { MAD_F(0x06e63dc0) /* 0.431211234 */, 15 }, + /* 1312 */ { MAD_F(0x07035ff3) /* 0.438323927 */, 15 }, + /* 1328 */ { MAD_F(0x0720a087) /* 0.445465593 */, 15 }, + /* 1344 */ { MAD_F(0x073dff3e) /* 0.452635998 */, 15 }, + /* 1360 */ { MAD_F(0x075b7bdb) /* 0.459834914 */, 15 }, + /* 1376 */ { MAD_F(0x07791620) /* 0.467062117 */, 15 }, + /* 1392 */ { MAD_F(0x0796cdd4) /* 0.474317388 */, 15 }, + /* 1408 */ { MAD_F(0x07b4a2bc) /* 0.481600510 */, 15 }, + /* 1424 */ { MAD_F(0x07d294a0) /* 0.488911273 */, 15 }, + /* 1440 */ { MAD_F(0x07f0a348) /* 0.496249468 */, 15 }, + /* 1456 */ { MAD_F(0x0407673f) /* 0.251807447 */, 16 }, + /* 1472 */ { MAD_F(0x04168b05) /* 0.255503674 */, 16 }, + /* 1488 */ { MAD_F(0x0425bcdd) /* 0.259213318 */, 16 }, + /* 1504 */ { MAD_F(0x0434fcad) /* 0.262936282 */, 16 }, + /* 1520 */ { MAD_F(0x04444a5a) /* 0.266672472 */, 16 }, + + /* 1536 */ { MAD_F(0x0453a5cd) /* 0.270421794 */, 16 }, + /* 1552 */ { MAD_F(0x04630eed) /* 0.274184158 */, 16 }, + /* 1568 */ { MAD_F(0x047285a2) /* 0.277959474 */, 16 }, + /* 1584 */ { MAD_F(0x048209d3) /* 0.281747652 */, 16 }, + /* 1600 */ { MAD_F(0x04919b6a) /* 0.285548607 */, 16 }, + /* 1616 */ { MAD_F(0x04a13a50) /* 0.289362253 */, 16 }, + /* 1632 */ { MAD_F(0x04b0e66e) /* 0.293188507 */, 16 }, + /* 1648 */ { MAD_F(0x04c09faf) /* 0.297027285 */, 16 }, + /* 1664 */ { MAD_F(0x04d065fb) /* 0.300878507 */, 16 }, + /* 1680 */ { MAD_F(0x04e0393e) /* 0.304742092 */, 16 }, + /* 1696 */ { MAD_F(0x04f01963) /* 0.308617963 */, 16 }, + /* 1712 */ { MAD_F(0x05000655) /* 0.312506041 */, 16 }, + /* 1728 */ { MAD_F(0x05100000) /* 0.316406250 */, 16 }, + /* 1744 */ { MAD_F(0x0520064f) /* 0.320318516 */, 16 }, + /* 1760 */ { MAD_F(0x0530192e) /* 0.324242764 */, 16 }, + /* 1776 */ { MAD_F(0x0540388a) /* 0.328178922 */, 16 }, + + /* 1792 */ { MAD_F(0x05506451) /* 0.332126919 */, 16 }, + /* 1808 */ { MAD_F(0x05609c6e) /* 0.336086683 */, 16 }, + /* 1824 */ { MAD_F(0x0570e0cf) /* 0.340058145 */, 16 }, + /* 1840 */ { MAD_F(0x05813162) /* 0.344041237 */, 16 }, + /* 1856 */ { MAD_F(0x05918e15) /* 0.348035890 */, 16 }, + /* 1872 */ { MAD_F(0x05a1f6d5) /* 0.352042040 */, 16 }, + /* 1888 */ { MAD_F(0x05b26b92) /* 0.356059619 */, 16 }, + /* 1904 */ { MAD_F(0x05c2ec39) /* 0.360088563 */, 16 }, + /* 1920 */ { MAD_F(0x05d378bb) /* 0.364128809 */, 16 }, + /* 1936 */ { MAD_F(0x05e41105) /* 0.368180294 */, 16 }, + /* 1952 */ { MAD_F(0x05f4b507) /* 0.372242955 */, 16 }, + /* 1968 */ { MAD_F(0x060564b1) /* 0.376316732 */, 16 }, + /* 1984 */ { MAD_F(0x06161ff3) /* 0.380401563 */, 16 }, + /* 2000 */ { MAD_F(0x0626e6bc) /* 0.384497391 */, 16 }, + /* 2016 */ { MAD_F(0x0637b8fd) /* 0.388604155 */, 16 }, + /* 2032 */ { MAD_F(0x064896a7) /* 0.392721798 */, 16 }, + + /* 2048 */ { MAD_F(0x06597fa9) /* 0.396850263 */, 16 }, + /* 2080 */ { MAD_F(0x067b737c) /* 0.405139433 */, 16 }, + /* 2112 */ { MAD_F(0x069d9400) /* 0.413471222 */, 16 }, + /* 2144 */ { MAD_F(0x06bfe0c0) /* 0.421845199 */, 16 }, + /* 2176 */ { MAD_F(0x06e2594c) /* 0.430260942 */, 16 }, + /* 2208 */ { MAD_F(0x0704fd35) /* 0.438718042 */, 16 }, + /* 2240 */ { MAD_F(0x0727cc11) /* 0.447216097 */, 16 }, + /* 2272 */ { MAD_F(0x074ac575) /* 0.455754717 */, 16 }, + /* 2304 */ { MAD_F(0x076de8fc) /* 0.464333519 */, 16 }, + /* 2336 */ { MAD_F(0x07913641) /* 0.472952132 */, 16 }, + /* 2368 */ { MAD_F(0x07b4ace3) /* 0.481610189 */, 16 }, + /* 2400 */ { MAD_F(0x07d84c81) /* 0.490307336 */, 16 }, + /* 2432 */ { MAD_F(0x07fc14bf) /* 0.499043224 */, 16 }, + /* 2464 */ { MAD_F(0x041002a1) /* 0.253908756 */, 17 }, + /* 2496 */ { MAD_F(0x04220ed7) /* 0.258314934 */, 17 }, + /* 2528 */ { MAD_F(0x04342ed7) /* 0.262739982 */, 17 }, + + /* 2560 */ { MAD_F(0x04466275) /* 0.267183742 */, 17 }, + /* 2592 */ { MAD_F(0x0458a989) /* 0.271646056 */, 17 }, + /* 2624 */ { MAD_F(0x046b03e7) /* 0.276126771 */, 17 }, + /* 2656 */ { MAD_F(0x047d716a) /* 0.280625739 */, 17 }, + /* 2688 */ { MAD_F(0x048ff1e8) /* 0.285142811 */, 17 }, + /* 2720 */ { MAD_F(0x04a2853c) /* 0.289677844 */, 17 }, + /* 2752 */ { MAD_F(0x04b52b3f) /* 0.294230696 */, 17 }, + /* 2784 */ { MAD_F(0x04c7e3cc) /* 0.298801231 */, 17 }, + /* 2816 */ { MAD_F(0x04daaec0) /* 0.303389310 */, 17 }, + /* 2848 */ { MAD_F(0x04ed8bf5) /* 0.307994802 */, 17 }, + /* 2880 */ { MAD_F(0x05007b49) /* 0.312617576 */, 17 }, + /* 2912 */ { MAD_F(0x05137c9a) /* 0.317257503 */, 17 }, + /* 2944 */ { MAD_F(0x05268fc6) /* 0.321914457 */, 17 }, + /* 2976 */ { MAD_F(0x0539b4ab) /* 0.326588316 */, 17 }, + /* 3008 */ { MAD_F(0x054ceb2a) /* 0.331278957 */, 17 }, + /* 3040 */ { MAD_F(0x05603321) /* 0.335986261 */, 17 }, + + /* 3072 */ { MAD_F(0x05738c72) /* 0.340710111 */, 17 }, + /* 3104 */ { MAD_F(0x0586f6fd) /* 0.345450393 */, 17 }, + /* 3136 */ { MAD_F(0x059a72a5) /* 0.350206992 */, 17 }, + /* 3168 */ { MAD_F(0x05adff4c) /* 0.354979798 */, 17 }, + /* 3200 */ { MAD_F(0x05c19cd3) /* 0.359768701 */, 17 }, + /* 3232 */ { MAD_F(0x05d54b1f) /* 0.364573594 */, 17 }, + /* 3264 */ { MAD_F(0x05e90a12) /* 0.369394372 */, 17 }, + /* 3296 */ { MAD_F(0x05fcd992) /* 0.374230929 */, 17 }, + /* 3328 */ { MAD_F(0x0610b982) /* 0.379083164 */, 17 }, + /* 3360 */ { MAD_F(0x0624a9c7) /* 0.383950977 */, 17 }, + /* 3392 */ { MAD_F(0x0638aa48) /* 0.388834268 */, 17 }, + /* 3424 */ { MAD_F(0x064cbae9) /* 0.393732939 */, 17 }, + /* 3456 */ { MAD_F(0x0660db91) /* 0.398646895 */, 17 }, + /* 3488 */ { MAD_F(0x06750c26) /* 0.403576041 */, 17 }, + /* 3520 */ { MAD_F(0x06894c90) /* 0.408520284 */, 17 }, + /* 3552 */ { MAD_F(0x069d9cb7) /* 0.413479532 */, 17 }, + + /* 3584 */ { MAD_F(0x06b1fc81) /* 0.418453696 */, 17 }, + /* 3616 */ { MAD_F(0x06c66bd6) /* 0.423442686 */, 17 }, + /* 3648 */ { MAD_F(0x06daeaa1) /* 0.428446415 */, 17 }, + /* 3680 */ { MAD_F(0x06ef78c8) /* 0.433464796 */, 17 }, + /* 3712 */ { MAD_F(0x07041636) /* 0.438497744 */, 17 }, + /* 3744 */ { MAD_F(0x0718c2d3) /* 0.443545176 */, 17 }, + /* 3776 */ { MAD_F(0x072d7e8b) /* 0.448607009 */, 17 }, + /* 3808 */ { MAD_F(0x07424946) /* 0.453683161 */, 17 }, + /* 3840 */ { MAD_F(0x075722ef) /* 0.458773552 */, 17 }, + /* 3872 */ { MAD_F(0x076c0b72) /* 0.463878102 */, 17 }, + /* 3904 */ { MAD_F(0x078102b8) /* 0.468996735 */, 17 }, + /* 3936 */ { MAD_F(0x079608ae) /* 0.474129372 */, 17 }, + /* 3968 */ { MAD_F(0x07ab1d3e) /* 0.479275937 */, 17 }, + /* 4000 */ { MAD_F(0x07c04056) /* 0.484436356 */, 17 }, + /* 4032 */ { MAD_F(0x07d571e0) /* 0.489610555 */, 17 }, + /* 4064 */ { MAD_F(0x07eab1ca) /* 0.494798460 */, 17 }, + + /* 4096 */ { MAD_F(0x04000000) /* 0.250000000 */, 18 }, + /* 4160 */ { MAD_F(0x04156381) /* 0.255221850 */, 18 }, + /* 4224 */ { MAD_F(0x042ae32a) /* 0.260470548 */, 18 }, + /* 4288 */ { MAD_F(0x04407eb1) /* 0.265745823 */, 18 }, + /* 4352 */ { MAD_F(0x045635cf) /* 0.271047409 */, 18 }, + /* 4416 */ { MAD_F(0x046c083e) /* 0.276375048 */, 18 }, + /* 4480 */ { MAD_F(0x0481f5bb) /* 0.281728487 */, 18 }, + /* 4544 */ { MAD_F(0x0497fe03) /* 0.287107481 */, 18 }, + /* 4608 */ { MAD_F(0x04ae20d7) /* 0.292511788 */, 18 }, + /* 4672 */ { MAD_F(0x04c45df6) /* 0.297941173 */, 18 }, + /* 4736 */ { MAD_F(0x04dab524) /* 0.303395408 */, 18 }, + /* 4800 */ { MAD_F(0x04f12624) /* 0.308874267 */, 18 }, + /* 4864 */ { MAD_F(0x0507b0bc) /* 0.314377532 */, 18 }, + /* 4928 */ { MAD_F(0x051e54b1) /* 0.319904987 */, 18 }, + /* 4992 */ { MAD_F(0x053511cb) /* 0.325456423 */, 18 }, + /* 5056 */ { MAD_F(0x054be7d4) /* 0.331031635 */, 18 }, + + /* 5120 */ { MAD_F(0x0562d694) /* 0.336630420 */, 18 }, + /* 5184 */ { MAD_F(0x0579ddd8) /* 0.342252584 */, 18 }, + /* 5248 */ { MAD_F(0x0590fd6c) /* 0.347897931 */, 18 }, + /* 5312 */ { MAD_F(0x05a8351c) /* 0.353566275 */, 18 }, + /* 5376 */ { MAD_F(0x05bf84b8) /* 0.359257429 */, 18 }, + /* 5440 */ { MAD_F(0x05d6ec0e) /* 0.364971213 */, 18 }, + /* 5504 */ { MAD_F(0x05ee6aef) /* 0.370707448 */, 18 }, + /* 5568 */ { MAD_F(0x0606012b) /* 0.376465960 */, 18 }, + /* 5632 */ { MAD_F(0x061dae96) /* 0.382246578 */, 18 }, + /* 5696 */ { MAD_F(0x06357302) /* 0.388049134 */, 18 }, + /* 5760 */ { MAD_F(0x064d4e43) /* 0.393873464 */, 18 }, + /* 5824 */ { MAD_F(0x0665402d) /* 0.399719406 */, 18 }, + /* 5888 */ { MAD_F(0x067d4896) /* 0.405586801 */, 18 }, + /* 5952 */ { MAD_F(0x06956753) /* 0.411475493 */, 18 }, + /* 6016 */ { MAD_F(0x06ad9c3d) /* 0.417385331 */, 18 }, + /* 6080 */ { MAD_F(0x06c5e72b) /* 0.423316162 */, 18 }, + + /* 6144 */ { MAD_F(0x06de47f4) /* 0.429267841 */, 18 }, + /* 6208 */ { MAD_F(0x06f6be73) /* 0.435240221 */, 18 }, + /* 6272 */ { MAD_F(0x070f4a80) /* 0.441233161 */, 18 }, + /* 6336 */ { MAD_F(0x0727ebf7) /* 0.447246519 */, 18 }, + /* 6400 */ { MAD_F(0x0740a2b2) /* 0.453280160 */, 18 }, + /* 6464 */ { MAD_F(0x07596e8d) /* 0.459333946 */, 18 }, + /* 6528 */ { MAD_F(0x07724f64) /* 0.465407744 */, 18 }, + /* 6592 */ { MAD_F(0x078b4514) /* 0.471501425 */, 18 }, + /* 6656 */ { MAD_F(0x07a44f7a) /* 0.477614858 */, 18 }, + /* 6720 */ { MAD_F(0x07bd6e75) /* 0.483747918 */, 18 }, + /* 6784 */ { MAD_F(0x07d6a1e2) /* 0.489900479 */, 18 }, + /* 6848 */ { MAD_F(0x07efe9a1) /* 0.496072418 */, 18 }, + /* 6912 */ { MAD_F(0x0404a2c9) /* 0.251131807 */, 19 }, + /* 6976 */ { MAD_F(0x04115aca) /* 0.254236974 */, 19 }, + /* 7040 */ { MAD_F(0x041e1cc4) /* 0.257351652 */, 19 }, + /* 7104 */ { MAD_F(0x042ae8a7) /* 0.260475783 */, 19 }, + + /* 7168 */ { MAD_F(0x0437be65) /* 0.263609310 */, 19 }, + /* 7232 */ { MAD_F(0x04449dee) /* 0.266752177 */, 19 }, + /* 7296 */ { MAD_F(0x04518733) /* 0.269904329 */, 19 }, + /* 7360 */ { MAD_F(0x045e7a26) /* 0.273065710 */, 19 }, + /* 7424 */ { MAD_F(0x046b76b9) /* 0.276236269 */, 19 }, + /* 7488 */ { MAD_F(0x04787cdc) /* 0.279415952 */, 19 }, + /* 7552 */ { MAD_F(0x04858c83) /* 0.282604707 */, 19 }, + /* 7616 */ { MAD_F(0x0492a59f) /* 0.285802482 */, 19 }, + /* 7680 */ { MAD_F(0x049fc824) /* 0.289009227 */, 19 }, + /* 7744 */ { MAD_F(0x04acf402) /* 0.292224893 */, 19 }, + /* 7808 */ { MAD_F(0x04ba292e) /* 0.295449429 */, 19 }, + /* 7872 */ { MAD_F(0x04c7679a) /* 0.298682788 */, 19 }, + /* 7936 */ { MAD_F(0x04d4af3a) /* 0.301924921 */, 19 }, + /* 8000 */ { MAD_F(0x04e20000) /* 0.305175781 */, 19 }, + /* 8064 */ { MAD_F(0x04ef59e0) /* 0.308435322 */, 19 }, + /* 8128 */ { MAD_F(0x04fcbcce) /* 0.311703498 */, 19 }, +
trunk/orp/orp_soc/sw.old/mad-xess/libmad/rq_short.dat Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.h (revision 782) @@ -0,0 +1,66 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: huffman.h,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifndef LIBMAD_HUFFMAN_H +# define LIBMAD_HUFFMAN_H + +union huffquad { + struct { + unsigned short final : 1; + unsigned short hlen : 3; + unsigned short v : 1; + unsigned short w : 1; + unsigned short x : 1; + unsigned short y : 1; + } value; + struct { + unsigned short final : 1; + unsigned short bits : 3; + unsigned short offset : 12; + } ptr; + unsigned short final : 1; +}; + +union huffpair { + struct { + unsigned short final : 1; + unsigned short hlen : 3; + unsigned short x : 4; + unsigned short y : 4; + } value; + struct { + unsigned short final : 1; + unsigned short bits : 3; + unsigned short offset : 12; + } ptr; + unsigned short final : 1; +}; + +struct hufftable { + union huffpair const *table; + unsigned short linbits; + unsigned short startbits; +}; + +extern union huffquad const *const mad_huff_quad_table[2]; +extern struct hufftable const mad_huff_pair_table[32]; + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/libmad/huffman.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.c (revision 782) @@ -0,0 +1,467 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: frame.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# include "bit.h" +# include "stream.h" +# include "frame.h" +# include "timer.h" +# include "layer3.h" + +static +unsigned char const bitrate_table_2k[2][15] = { + /* MPEG-1 */ + { 0/2, 32/2, 40/2, 48/2, 56/2, 64/2, 80/2, 96/2, /* Layer III */ + 112/2, 128/2, 160/2, 192/2, 224/2, 256/2, 320/2 }, + + /* MPEG-2 LSF */ + { 0/2, 8/2, 16/2, 24/2, 32/2, 40/2, 48/2, 56/2, /* Layers */ + 64/2, 80/2, 96/2, 112/2, 128/2, 144/2, 160/2 } /* II & III */ +}; + +static +unsigned short const samplerate_table[3] = { 44100, 48000, 32000 }; + +/* + * NAME: header->init() + * DESCRIPTION: initialize header struct + */ +inline void mad_header_init(struct mad_header *header) +{ + header->crc_check = 0; + header->crc_target = 0; +} + +/* + * NAME: frame->init() + * DESCRIPTION: initialize frame struct + */ +inline void mad_frame_init(struct mad_frame *frame) +{ + mad_header_init(&frame->header); + + frame->options = 0; + + frame->overlap = 0; + mad_frame_mute(frame); +} + +/* + * NAME: frame->finish() + * DESCRIPTION: deallocate any dynamic memory associated with frame + */ +inline void mad_frame_finish(struct mad_frame *frame) +{ + mad_header_finish(&frame->header); +} + +/* + * NAME: decode_header() + * DESCRIPTION: read header data and following CRC word + */ +inline static +int decode_header(struct mad_header *header, struct mad_stream *stream) +{ + unsigned int index; + + header->flags = 0; + header->private_bits = 0; + + /* header() */ + + /* syncword */ + mad_bit_skip(&stream->ptr, 11); + + /* MPEG 2.5 indicator (really part of syncword) */ + if (mad_bit_read(&stream->ptr, 1) == 0) + header->flags |= MAD_FLAG_MPEG_2_5_EXT; + + /* ID */ + if (mad_bit_read(&stream->ptr, 1) == 0) + header->flags |= MAD_FLAG_LSF_EXT; + else if (header->flags & MAD_FLAG_MPEG_2_5_EXT) { + stream->error = MAD_ERROR_LOSTSYNC; + return -1; + } + + /* layer */ + header->layer = 4 - mad_bit_read(&stream->ptr, 2); + + if (header->layer != 3) { + stream->error = MAD_ERROR_BADLAYER; + return -1; + } + + /* protection_bit */ + if (mad_bit_read(&stream->ptr, 1) == 0) { + header->flags |= MAD_FLAG_PROTECTION; + header->crc_check = mad_bit_crc(stream->ptr, 16, 0xffff); + } + + /* bitrate_index */ + index = mad_bit_read(&stream->ptr, 4); + + if (index == 15) { + stream->error = MAD_ERROR_BADBITRATE; + return -1; + } + + if (header->flags & MAD_FLAG_LSF_EXT) + header->bitrate = 2000 * bitrate_table_2k[1][index]; + else + header->bitrate = 2000 * bitrate_table_2k[0][index]; + + /* sampling_frequency */ + index = mad_bit_read(&stream->ptr, 2); + + if (index == 3) { + stream->error = MAD_ERROR_BADSAMPLERATE; + return -1; + } + + header->samplerate = samplerate_table[index]; + + if (header->flags & MAD_FLAG_LSF_EXT) { + header->samplerate /= 2; + + if (header->flags & MAD_FLAG_MPEG_2_5_EXT) + header->samplerate /= 2; + } + + /* padding_bit */ + if (mad_bit_read(&stream->ptr, 1)) + header->flags |= MAD_FLAG_PADDING; + + /* private_bit */ + if (mad_bit_read(&stream->ptr, 1)) + header->private_bits |= MAD_PRIVATE_HEADER; + + /* mode */ + header->mode = 3 - mad_bit_read(&stream->ptr, 2); + + /* mode_extension */ + header->mode_extension = mad_bit_read(&stream->ptr, 2); + + /* copyright */ + if (mad_bit_read(&stream->ptr, 1)) + header->flags |= MAD_FLAG_COPYRIGHT; + + /* original/copy */ + if (mad_bit_read(&stream->ptr, 1)) + header->flags |= MAD_FLAG_ORIGINAL; + + /* emphasis */ + header->emphasis = mad_bit_read(&stream->ptr, 2); + + if (header->emphasis == 2) { + stream->error = MAD_ERROR_BADEMPHASIS; + return -1; + } + + /* error_check() */ + + /* crc_check */ + if (header->flags & MAD_FLAG_PROTECTION) + header->crc_target = mad_bit_read(&stream->ptr, 16); + + return 0; +} + +/* + * NAME: free_bitrate() + * DESCRIPTION: attempt to discover the bitstream's free bitrate + */ +inline static +int free_bitrate(struct mad_stream *stream, struct mad_header const *header) +{ + struct mad_bitptr keep_ptr; + unsigned long rate = 0; + unsigned int pad_slot, slots_per_frame; + unsigned char const *ptr = 0; + + keep_ptr = stream->ptr; + + pad_slot = (header->flags & MAD_FLAG_PADDING) ? 1 : 0; + slots_per_frame = (header->layer == MAD_LAYER_III && + (header->flags & MAD_FLAG_LSF_EXT)) ? 72 : 144; + + while (mad_stream_sync(stream) == 0) { + struct mad_stream peek_stream; + struct mad_header peek_header; + + peek_stream = *stream; + peek_header = *header; + + if (decode_header(&peek_header, &peek_stream) == 0 && + peek_header.layer == header->layer && + peek_header.samplerate == header->samplerate) { + unsigned int N; + + ptr = mad_bit_nextbyte(&stream->ptr); + + N = ptr - stream->this_frame; + + if (header->layer == MAD_LAYER_I) { + rate = (unsigned long) header->samplerate * + (N - 4 * pad_slot + 4) / 48 / 1000; + } + else { + rate = (unsigned long) header->samplerate * + (N - pad_slot + 1) / slots_per_frame / 1000; + } + + if (rate >= 8) + break; + } + + mad_bit_skip(&stream->ptr, 8); + } + + stream->ptr = keep_ptr; + + if (rate < 8 || (header->layer == MAD_LAYER_III && rate > 640)) { + stream->error = MAD_ERROR_LOSTSYNC; + return -1; + } + + stream->freerate = rate * 1000; + +# if 0 && defined(DEBUG) + fprintf(stderr, "free bitrate == %lu\n", stream->freerate); +# endif + + return 0; +} + +/* + * NAME: header->decode() + * DESCRIPTION: read the next frame header from the stream + */ +int mad_header_decode(struct mad_header *header, struct mad_stream *stream) +{ + register unsigned char const *ptr, *end; + unsigned int pad_slot, N; + + ptr = stream->next_frame; + end = stream->bufend; + + if (ptr == 0) { + stream->error = MAD_ERROR_BUFPTR; + goto fail; + } + + /* stream skip */ + if (stream->skiplen) { + if (!stream->sync) + ptr = stream->this_frame; + + if (end - ptr < stream->skiplen) { + stream->skiplen -= end - ptr; + stream->next_frame = end; + + stream->error = MAD_ERROR_BUFLEN; + goto fail; + } + + ptr += stream->skiplen; + stream->skiplen = 0; + + stream->sync = 1; + } + + sync: + /* synchronize */ + if (stream->sync) { + if (end - ptr < MAD_BUFFER_GUARD) { + stream->next_frame = ptr; + + stream->error = MAD_ERROR_BUFLEN; + goto fail; + } + else if (!(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) { + /* mark point where frame sync word was expected */ + stream->this_frame = ptr; + stream->next_frame = ptr + 1; + + stream->error = MAD_ERROR_LOSTSYNC; + goto fail; + } + } + else { + mad_bit_init(&stream->ptr, ptr); + + if (mad_stream_sync(stream) == -1) { + if (end - stream->next_frame >= MAD_BUFFER_GUARD) + stream->next_frame = end - MAD_BUFFER_GUARD; + + stream->error = MAD_ERROR_BUFLEN; + goto fail; + } + + ptr = mad_bit_nextbyte(&stream->ptr); + } + + /* begin processing */ + stream->this_frame = ptr; + stream->next_frame = ptr + 1; /* possibly bogus sync word */ + + mad_bit_init(&stream->ptr, stream->this_frame); + + if (decode_header(header, stream) == -1) + goto fail; + + /* calculate frame duration */ + mad_timer_set(&header->duration, 0, + 32 * MAD_NSBSAMPLES(header), header->samplerate); + + /* calculate free bit rate */ + if (header->bitrate == 0) { + if ((!stream->sync || !stream->freerate) && + free_bitrate(stream, header) == -1) + goto fail; + + header->bitrate = stream->freerate; + header->flags |= MAD_FLAG_FREEFORMAT; + } + + /* calculate beginning of next frame */ + pad_slot = (header->flags & MAD_FLAG_PADDING) ? 1 : 0; + + if (header->layer == MAD_LAYER_I) + N = ((12 * header->bitrate / header->samplerate) + pad_slot) * 4; + else { + unsigned int slots_per_frame; + + slots_per_frame = (header->layer == MAD_LAYER_III && + (header->flags & MAD_FLAG_LSF_EXT)) ? 72 : 144; + + N = (slots_per_frame * header->bitrate / header->samplerate) + pad_slot; + } + + /* verify there is enough data left in buffer to decode this frame */ + if (N + MAD_BUFFER_GUARD > end - stream->this_frame) { + stream->next_frame = stream->this_frame; + + stream->error = MAD_ERROR_BUFLEN; + goto fail; + } + + stream->next_frame = stream->this_frame + N; + + if (!stream->sync) { + /* check that a valid frame header follows this frame */ + + ptr = stream->next_frame; + if (!(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) { + ptr = stream->next_frame = stream->this_frame + 1; + goto sync; + } + + stream->sync = 1; + } + + header->flags |= MAD_FLAG_INCOMPLETE; + + return 0; + + fail: + stream->sync = 0; + + return -1; +} + +/* + * NAME: frame->decode() + * DESCRIPTION: decode a single frame from a bitstream + */ +int mad_frame_decode(struct mad_frame *frame, struct mad_stream *stream) +{ + frame->options = stream->options; + + /* header() */ + /* error_check() */ + + if (!(frame->header.flags & MAD_FLAG_INCOMPLETE) && + mad_header_decode(&frame->header, stream) == -1) + goto fail; + + /* audio_data() */ + + frame->header.flags &= ~MAD_FLAG_INCOMPLETE; + + if (frame->header.layer != 3) + goto fail; + if (mad_layer_III(stream, frame) == -1) { + if (!MAD_RECOVERABLE(stream->error)) + stream->next_frame = stream->this_frame; + + goto fail; + } + + /* ancillary_data() */ + + if (frame->header.layer != MAD_LAYER_III) { + struct mad_bitptr next_frame; + + mad_bit_init(&next_frame, stream->next_frame); + + stream->anc_ptr = stream->ptr; + stream->anc_bitlen = mad_bit_length(&stream->ptr, &next_frame); + + mad_bit_finish(&next_frame); + } + + return 0; + + fail: + stream->anc_bitlen = 0; + return -1; +} + +/* + * NAME: frame->mute() + * DESCRIPTION: zero all subband values so the frame becomes silent + */ +void mad_frame_mute(struct mad_frame *frame) +{ + unsigned int s, sb; + + for (s = 0; s < 36; ++s) { + for (sb = 0; sb < 32; ++sb) { + frame->sbsample[0][s][sb] = + frame->sbsample[1][s][sb] = 0; + } + } + + if (frame->overlap) { + for (s = 0; s < 18; ++s) { + for (sb = 0; sb < 32; ++sb) { + (*frame->overlap)[0][sb][s] = + (*frame->overlap)[1][sb][s] = 0; + } + } + } +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/frame.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.c (revision 782) @@ -0,0 +1,116 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: stream.c,v 1.1 2002-03-28 20:38:51 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +# include "global.h" + +# include "bit.h" +# include "stream.h" + +/* + * NAME: stream->init() + * DESCRIPTION: initialize stream struct + */ +inline void mad_stream_init(struct mad_stream *stream) +{ + stream->buffer = 0; + stream->bufend = 0; + stream->skiplen = 0; + + stream->sync = 0; + stream->freerate = 0; + + stream->this_frame = 0; + stream->next_frame = 0; + mad_bit_init(&stream->ptr, 0); + + mad_bit_init(&stream->anc_ptr, 0); + stream->anc_bitlen = 0; + + stream->main_data = 0; + stream->md_len = 0; + + stream->options = 0; + stream->error = 0; +} + +/* + * NAME: stream->finish() + * DESCRIPTION: deallocate any dynamic memory associated with stream + */ +inline void mad_stream_finish(struct mad_stream *stream) +{ + mad_bit_finish(&stream->anc_ptr); + mad_bit_finish(&stream->ptr); +} + +/* + * NAME: stream->buffer() + * DESCRIPTION: set stream buffer pointers + */ +inline void mad_stream_buffer(struct mad_stream *stream, + unsigned char const *buffer, unsigned long length) +{ + stream->buffer = buffer; + stream->bufend = buffer + length; + + stream->this_frame = buffer; + stream->next_frame = buffer; + + stream->sync = 1; + + mad_bit_init(&stream->ptr, buffer); +} + +/* + * NAME: stream->skip() + * DESCRIPTION: arrange to skip bytes before the next frame + */ +static void mad_stream_skip(struct mad_stream *stream, unsigned long length) +{ + stream->skiplen += length; +} + +/* + * NAME: stream->sync() + * DESCRIPTION: locate the next stream sync word + */ +int mad_stream_sync(struct mad_stream *stream) +{ + register unsigned char const *ptr, *end; + + ptr = mad_bit_nextbyte(&stream->ptr); + end = stream->bufend; + + while (ptr < end - 1 && + !(ptr[0] == 0xff && (ptr[1] & 0xe0) == 0xe0)) + ++ptr; + + if (end - ptr < MAD_BUFFER_GUARD) + return -1; + + mad_bit_init(&stream->ptr, ptr); + + return 0; +}
trunk/orp/orp_soc/sw.old/mad-xess/libmad/stream.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/libmad/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/libmad/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/libmad/Makefile (revision 782) @@ -0,0 +1,59 @@ +CC = or32-rtems-gcc +AS = or32-rtems-as +AR = or32-rtems-ar +RUNLIB = or32-rtems-ranlib + +LIBMAD_OBJ = fixed.o \ + bit.o \ + timer.o \ + stream.o \ + frame.o \ + synth.o \ + decoder.o \ + layer3.o \ + huffman.o + +CC_OPTS = -DHAVE_CONFIG_H -DFPM_DEFAULT -fno-delayed-branch -Wall -nostdlib \ + -g -O -fforce-mem -fforce-addr -fthread-jumps -fcse-follow-jumps \ + -fcse-skip-blocks -fexpensive-optimizations -fregmove -fschedule-insns2 \ + -I. -I./../ + +all: libmad.a + +libmad.a: $(LIBMAD_OBJ) + $(AR) cru libmad.a $(LIBMAD_OBJ) + $(RUNLIB) libmad.a + +fixed.o: fixed.c config.h global.h fixed.h + $(CC) $(CC_OPTS) -c -o fixed.o fixed.c + +bit.o: bit.c config.h global.h bit.h + $(CC) $(CC_OPTS) -c -o bit.o bit.c + +timer.o: timer.c config.h global.h timer.h + $(CC) $(CC_OPTS) -c -o timer.o timer.c + +stream.o: stream.c config.h global.h bit.h stream.h + $(CC) $(CC_OPTS) -c -o stream.o stream.c + +frame.o: frame.c config.h global.h bit.h stream.h frame.h fixed.h timer.h layer3.h + $(CC) $(CC_OPTS) -c -o frame.o frame.c + +synth.o: synth.c config.h global.h fixed.h frame.h timer.h stream.h bit.h synth.h \ + ../audio.h mad.h D.dat + $(CC) $(CC_OPTS) -c -o synth.o synth.c + +decoder.o: decoder.c config.h global.h stream.h bit.h frame.h fixed.h timer.h \ + synth.h decoder.h + $(CC) $(CC_OPTS) -c -o decoder.o decoder.c + +layer3.o: layer3.c config.h global.h fixed.h bit.h stream.h frame.h timer.h \ + huffman.h layer3.h rq_short.dat imdct_s.dat + $(CC) $(CC_OPTS) -c -o layer3.o layer3.c + +huffman.o: huffman.c config.h global.h huffman.h + $(CC) $(CC_OPTS) -c -o huffman.o huffman.c + +clean: + rm -rf $(LIBMAD_OBJ) libmad.a *~ *.bak +
trunk/orp/orp_soc/sw.old/mad-xess/libmad/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/fsyst.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/fsyst.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/fsyst.c (revision 782) @@ -0,0 +1,102 @@ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#ifndef EMBED +# include +# include +#else +# warning assert checking disabled +# define assert(x) +#endif + +#include "fsyst.h" + +/* Return next file. */ + +inline struct file_struct * +next_file (struct file_struct *file) { + return (struct file_struct *)((unsigned char *)file + swap(file->length)); +} + +/* Returns file, that holds track number. */ + +struct file_struct * +find_track_no (int no, struct file_struct *root) { + assert(swap(root->type) == FT_ROOT); + while (swap(root->type) != FT_END) { + if (swap(root->type) == FT_TRACK_NO && swap(root->data[0]) == no) + return root; + root = next_file (root); + } + return 0; +} + +/* Returns track name from file struct, pointing at FT_TRACK_NO. */ + +char * +track_name (struct file_struct *fs) { + assert(swap(fs->type) == FT_TRACK_NO); + fs = next_file (fs); + if (swap(fs->type) == FT_TRACK_NAME) + return (char *)&fs->data[0]; + else + return ""; +} + +/* Returns track data from file struct, pointing at FT_TRACK_NO. */ + +struct file_struct * +track_data (struct file_struct *fs) { + assert(swap(fs->type) == FT_TRACK_NO); + fs = next_file (fs); + if (swap(fs->type) == FT_TRACK_NAME) + fs = next_file (fs); + assert (swap(fs->type) == FT_TRACK_DATA); + return fs; +} + +/* Finds last record. */ + +inline struct file_struct * +end_file (struct file_struct *root) { + assert(swap(root->type) == FT_ROOT); + while (swap(root->type) != FT_END) + root = next_file (root); + return root; +} + +/* Adds file to the end of file list. Returns new file address, if + sucessful, otherwise NULL. */ + +struct file_struct * +add_file (struct file_struct *root, struct file_struct *file) { + struct file_struct *end = end_file (root); + memcpy (end, file, file->length); + file = end; + end = next_file (end); + end->type = swap(FT_END); + end->length = swap(0); + return file; +} + +/* Initializes filesystem at root. */ + +void +init_fsyst (struct file_struct *root) { + root->type = swap(FT_ROOT); + root->length = swap(sizeof (struct file_struct) - sizeof (unsigned int)); + root = next_file (root); + root->type = swap(FT_END); + root->length = swap(0); +} + +#ifndef EMBED +unsigned int swap (unsigned int x) { + return (x & 0xFF) << 24 + | (x & 0xFF00) << 8 + | (x & 0xFF0000) >> 8 + | (x & 0xFF000000) >> 24; +} +#endif +
trunk/orp/orp_soc/sw.old/mad-xess/fsyst.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-Symphony_No_5_in_C_Minor-16.mp3 =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-Symphony_No_5_in_C_Minor-16.mp3 (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-Symphony_No_5_in_C_Minor-16.mp3 (revision 782) @@ -0,0 +1,2525 @@ +ÿó ÄHÀÿ®çÎ""PˆUËxîz"' ÿôOwsŽç „¡ðüÇðÿAFÿó Ä'ñ$C /¾_í24ʧ?ÝÉÍÔàðHœÜ‚“,.;È&X‘uOžzÏ.ÿó Ä*t‚š8ik<ùèe•‹ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü ÿó"Äd‚XÉŠB7É£ò̦7ðøÕ£ +%SÂhò¯W\ÝQ@ÓK›«ª¬«mEÿó ÄXB$Ø£7M@)K‚Ã^ù¡hÓ $)шh×­©p;¡èk + +[¡ë;Æÿó Ä"HN$ÂF$9Șªçi«aDÊœx™OÀŽ +€GÀ«:Áhñ×ç²9kÿó Ä' R$ÒF$QÅXšÑXi„S.è´Ð-¾×Sÿö¾úýþ.Çåh@8étÿó"Ä)ðB$Ñ„%õ©Köi󘣰L`àèÃ!š;(“oD÷Ž:„dš ªÿó Ä-ÀF$ÂD$)–û¨†Dœá¦PÄYàºD«<‡"¢œ +mH\C ž~‘Iÿó Ä1:0ËØqx +¿·€ò«þõ0 >4$";+ ÌДVÔ…ybªªªÿó ÄðV±JF& ÅèpÀå)ÆH" +:°!w“SS/[àûë´ å,ÿÿÿð™Aÿó"Ä +˜Ò¹`Æq§Ùžà‡äœPȆŠÇ£›‡n7,ƒ¹ÒN»áÖ{?†|ý–[9Úÿó Ä *´a„q*NT‡Â†Úeš‘§cÎ÷èF~…c½ú;Ûïzu¢ˆù@b‘³àôÿó Ä !&ÍHÄq Çúü`+â—ÐeM²úÂѤdª®½V[,·©õ}Pp€7ðótLÿó Ä ‚ÉY„HvaBŽÆG×lC^¾J”TMÜ{a2ÇÍ,Ç€€3€òÈHM$ÿó"Ä øþÁYÄp¸H—E¦ë½qâÓ §uYæc“jÙè ¼Fû5¦n¶U—†GìUyÎÿó Ä +Q&°z„qÓ€(:ì~­’ÿ8µmú7§_耞c4C€ +ªE\,:€r£ÿó Ä Ö´bpJÞ Pw¿/Js#ΰ3]VoÉ€Ä"¹lŒ!6$Šã´–i³= +Ë„ÿó Ä +¡*¬zPqÔ‚Ç›b¹26²â2ÄT³Mfò@.[ÓHC^£]Þ,£ Š@ü6Qÿó"Ä`ÒÀH„pª +±@3!ˆhÎþtfºj+S²h-Üòî¬'XÀ9ýtåÝîÿó Ä +é*ÉyDpÍáê¥Ø†xºzx‡«º:ý,+÷ãX€4Ì<6MvØ¥Yÿó Ä + ÖÁpyDp—2 ÕÄ{MÐ&µgTZ»þÈ)ûŽw=@øFIvجC¥Žd ÿó ÄÈÖ´xÄp[+ÚéÄp“=˜›4Ìs7{—ÈÀ¨zËtµEÊÂ%.`üìÿó"Ä .½Xy„qXVË4ÿÚcÈLÕ#Zv¨8ÿ!™LÕv!„kŒÀ =í ò“Hÿó Ä *͸IFq‘œh~«rz´L­„pƒùÞx¤L½!<êHX"ýEH/òåfÿó Äé"Äzq°žÜB„O`ºgŽ9ÍÖ7FÌ¥fÝY.n\Ê-7< jÌì±¢° ÿó Ä +ÐÖÄ(Z„p”D]Š†§™˜é˜ÚÚœ¬¿vWf ×Q¢º€¨9Êü‘iX6ÿó"Ä +ðúÚX0„q€aHúwþv²³‘}ë2¿®‰<Ýpý +]>6X¤°triêsŸ§† ÿó ĸ‚¸bVH«×~ò»¦P&Á`ÈMº|H­ðœTëÑ°¨±¾ÀˆÒAejÿó Ä +ØÖÍ`ÆqϨG¹Ã[Ž=Åp B}¹ŠèïøN?`@ B:TÕŽ€qÄ_ Jÿó Ä ¡*¼8aŒqN2ퟱ—­­+Ý™,Y“·2ùi¹·ÖÏ)«" +gÜ6ŸPçÿó"Ä XÆÈI„q…3@­ +•0õ¥ +·Èí¹þ4älÝm¿éï;[úÑ[€O9ÀÌ&0ÿó Ä°jÐ(JL(Çèzd’±(Sü˜t¶y¢1åÏ!ÆO:yìøØTáä‘Îudè +ÿó Ä +8¦ÌK +L²ÈÛ)T8~ :ôál¡M¨kï» ‹Ô0À5„"Ú‘ÂK¶ +ýÿó ĈfÐ(BÌ(ð±õ…·°láüEÃÄt€€7ðç|­¡)@´Ø(k¾× –ÿó"ÄèªÙI„Lü} +Õ2£êQaN8 ˆÑPaã 0†³àOZ…$ÛÏʼ–ªÿó Äè¦ÑI„Lø®(t”ºra‹X7à´F‚Fk 6Ma!5ÓЉBYM¨Ïùÿó Ä Ù˜1Dpÿ¤´TWÄǵàqù¨I¥#ÁŽ=êÀ–õà +¿ñ¶®Ræ|ÓÒÿó ÄxÆÄJp|JíÖ²ø]jÐ8µ¡–ÃyŠÊˆ˜À íV'ÐÏû_J„?ÿó"Ä" Y +å¸0„q¸"ÀLàñsKF‡’7ØÚ`×ÊŸr+id$Y}F£-UO±ML‘ÿó Ä$ ¦ÈÈJNLPlç¨ÔbsœIjl l³Ö +þö»rq=f(ÝYÑ*]&e›’ +ÿó Ä&HÎÐÈHÄr@8x£“‚†èº@–P®ôâûå¨s•Õ[ó·é{êqÀ@ë¢Y ÿó Ä+  +Ù¸H„p²Y»´EبŒé||“¤Í†·¯^µšá›µºa  õðð#§ Ãÿó"Ä-àæÀyÄp;m!1Œ¡…oQNZNÙ°A=²[Ô¤~ÒÖGã@²ðú'ÓIwŒ«ÿó Ä1 ÑIDp#ú×¼/Þוp…@ÛòçòÂÂÎhbôž¡ ùWGr^ÑîScàÜqQ5ÿó Ä3 fÑK(êDwìßáúH_&¤3ïS?áGýWè +pðÏèŽJÈÅ(NZ=®ÿó Ä5 !&ÀzDq¯‘z÷Šfkõ_£¹½t`Ÿ€˜LÖ>A5xCH¥—ØÖœÿó Ä7ÈêÀzpÛhÿÐß¹—ÕG:¤Žpþ€ñ:¡¥ÄÓêïÍ +×tó›—ÒsËÂÿó"Ä:`îÀaÄp>¼GG܉½RÞ¯ü3ú‘ ˜z@ßm?0'¸ÌG¿Îñt¦§oÏ_Dÿó Ä@ J¼I„qf®¢ênœ8>—#+†l ÂÈXBYïDÕ.„ûg'àÊ|+s\ÿó ÄBa¼Jp,ݬˀ`¼œ9€ü—ºYÎLJ˜2Î¥àúòêÎìßçü#î.{,ÿó ÄG ƼaÄpa€b à©;ØÛ¥‘ÿ¯ÐCÓd w›‹âŒÊ˜ÔTXbÿó"ÄI HæÞX0ÄpÀdà£t;ø>ØPÔ—`ÂX«t›èVy­ýè”÷¤«áÀB +ÿó ÄKЦÉY„L<DtjgƒÌÓG:×:ó9×(W®†oÙÿÇËP$¶±a°ÖÀ0ðÿó ÄN ! +ÞX0„pä- âƒÚÀ†¨¦‡­Kî1×—ECH +¾‹ú«æØHëáò ôY#CGÿó ÄP ! +ÅpIÄp  uÒM@Aåº?}µ¢„iÈ3zÂ\‡(é0‚€|àÒA(Ò#×ÿó"ÄR YÅ1Äp°RÀ‘Î÷èí ‹VT™¾‡à6¥B¶ ô»D”rÈ­KazA»Šmÿó ÄTàªÀI„L^;\MP„~°4åŽeùcØ©°›%))/†ƒ¬ß}}O÷Rúÿó Ä[ðŠÉYŠLÉN4·­úúŸ”ÂqXiÙÖ‹°ÛŒ B +5­íݱ<¿ÿó Ä^h¦¼zDLØ¿s_©Jvö8]`–š!R‰#CT]J¬ˆ3rÊ™N©¶Î¾Xºf +éÿó"Äcpª¼bJLº7|Aß³‰ÀíK£Òt[NƳm›CP=„w«©3>Ýc¯/ÚÝ­¦ ^ÿó Äi *ј1DpsBµLÐ7 Å¥Æ!$_# +pø5ÝSæUs­NeÛ„r `6]™ÿó ÄkÐê¸bÊpžå¬<| |Ôi!B˜#‰ +fÈÂ7ª.X}Å·Ðíê¢d~w  ’ÿó Än ê¸zpü½š -4Õ++"ª}ùI¤óü*1¯¨CŸ°ûèêfÑpé‹.§Dÿó"Äq ƼÈYÄp Q˜áXnàVšâ€@£ùÆ}TwB‚é9gõ‚š‚S@|ðáá1Çÿó Ät°ê¼JŠpÄZUÌàÊ: +uàƒ÷Ôv£ì çD{Ž~§®šððBpðãê>ÇRÿó Äxàμ¨bÊpÓµ©B5´7MA»¦E'ó?ù½98Ápå…ëT2ÆH²JÈÿó Ä{ ª´zL´² +—Y‘ õJôò T͆+áà-w¬e15å ¢AqÓRUíÁÿó"Ä}èÆÉHŠp™ýÅöÔ3 +eNó$sƒXx¹ùECΫ|±zÚmDýDu‡ÿó ÄiÅH„pÛXaصªiéàçCzsF¯ž£ÊÑT¨ï‘pþñðÞÄM´åÕÿó ĆÈ^ÅJÎ(7¸£9 Ô…´âówÇP²9¬ïeˆ|hÿÏ7ž©¡ÅågÂÏöÿó ĉ0ƸH„pÚ\ °òÝcëFoH¡ZœÑõF£ð—ô¿èèSwÂûƒÿó"ÄèªÀÐI„LòV4*9LNÖ0ä/&³6øj¡+®¾`FÜ~è_ß±•€ƒÔ8ÿó Ä“¡´JÊpðÓ#˜™®E àc%¢»vða?‘Šæ‘@›³X»ñ*1C iH©ÿó Ä—±´YŠpr¦E0/ ²ƒÆAÛn%´ÐQZ^%)Ð7©ëSÄ„90œeH»•5+ÿó Ä› &½IDq€Ñy&¸úª³ÚÐ~^B5´"ï©ßÒÚ>âȪ öë¸ÒŸYh$D/ ÿó"Ä +¸ÈZÄp_.Tš$û +Âj¦§z›‡ëk[€¯ÑÔ{*éÊ׉¥(¡µÚÈi‚“Ýÿó Ä  ªÉY„LBñš‡èBxJµïu½›èâ¿toŽ‘h8}Ü8‘âˆfò¢–PS­çÿó Ä£ ÊɘX„pÎÑ]ί4­ùÏù-ÕàÛµù0H:Í S†Ÿà±xõßïÎÿó Ä¥ ¼ÐyDp3DZÿ+~ +¥³aûÚï¾Â@ ’”Õ}‚ °Ñ=à­H§×ò¡×Vÿó"ĨøθyÄpÉ{½3ú9tîÍðÉRÀ€KbFQ·ƒÊ…™“@ lÊK«) +Âÿó Ĭù&´zÄq}œ4ìO\%\0<­žå’lÔ{…¬gê$:DýÇš\Øü)ÿó į ! +ÀðIDp­®¬YÔ“ò¬C[o±Dú•”tŽ)3ஃÌ_ìÍM>´‡~ì@¯Éÿó ı êŘIDqðÓ4€\ütl\ëp1Cö^£'Mup‹h7愺môbs,fí~.ÿó"ij  +¸¨bÄpz°“D=¨Æê® +:±T}Â$m*¤/à},€i¨;¤Yõ³X–ÿó Ķxš¼ÐYNLCULF£i.Ãyµn\bjΧÕ7Ñ8^–_“3¬Ê yAkÂÿó Ä» Š¸(yLmXÆâ“]Ë(¨2t2ïÀ¨T©Ü£ôÊЀ,<ȉ8l%gÿó ľ æ´zp“G^¶ú؈>Ú?迆ëáž± + ëÕ3f“E˜²šÃŠÿó"ÄÀ ê¼ÈJp4È_¡ €ú·¿½™×¡[î¿°vâüÐëÏÏba²+`âZ¼»ï¬ÿó ÄÃèʼ¨aDpµÝ™^õÇßS·z³}ÿ[Â#RÌjÉÒsJUѬ¡ôÿó ÄÆpÆ´bÄp~‚Ú’°ÖõÓ×dHÙÞ|;Sµýbaî± ¾,š9ƃ>|²oÿó ÄËx¦¸ZÆL ¶–í—*ÄÀÔÓzÀ +K QiYå0…~ñÈ m\kX¢ Pr:²¥ÿó"ÄÐ Y +½pIDpmò?×üvýÑD»Ô鄺å¢M Ž¶2?¹¯NêW™ç|÷%§eê®´Êÿó ÄÒé´zÄpjùH/’vļ39Z(¤"åŒA‘ÄBõÿ?Ô?ðåÞÎÃÒòÿó ÄÕÉ +´zDpÇk„j  ‚äŒ¡Ö o"´€G­ú“®´®êöAš«Ò”KÏÿó ÄØ ÄxX„p,§º8 .ü:BüòLœ<ž¿ŸÐ8œ(Uó¬gS÷sîRß¾®ÿó ÄÛЪÀðxÊL§ß¢WP\$¼ÝIKJF¨q—B5äN÷÷}(#ŽÕo®wÝ£>´+Üÿó"ÄÞ AÀPiDq ŽþÒý÷€”Ã&T ÊÊE¶OXQ ›§ÔH!kßø¶“QÜ”ìOE +þÿó Äá î´zÄpÚí@Òஂj¼#É‹_‘ÊF–ðË<`EKlkq÷& \»iÿó ÄãøîÄðYDp½rŒý` 0ˆ–MÀÔAÞäþpôÇê:÷\3‹½\ÄblžÔ+þŽú¼ÿó Äæ hæ¸PZqù …«ôGw@Â"ùˆÕ¬qP¨nËV{H<|™¾¨Ûè¾\Ýÿó"Äç +1*ÀðHÆpÉ+•ëÀ‰Ð+ª´Õ°Þ[G-Š ³ãCŸ©êÊc“mýÌ¿ÿó Äæ Øê°(bDqî§åJ‡Ó©Jl‡¤ÂŽ +ƒF²Ý±–²7•â´Õù\¯>¨£ÒEÿó Äå æ¬bpTÖý@ƒ `4«¼Nµ1åEŠ +ØÁ¼–Pï#©`nÆùßöGWÿó Äç ئ¤zÐLÈöN‚Ÿ*ÄË›$@Ô•ŠKÃ;")ˆÕ«ïÀvý'gøá7IžZlÿó"Äæ ù&ÎXIDqþ‰3·â; +¦ ·5†Q‚QJƒ +|-šD¬L΂š +'N±Úÿó Äæ €Æ°PyÄpˆSŒ<=]JWáÆŠºÜ‡ %•÷îa&k¾ôs¹J¿¹~ nÿó Äç +*¹¸aFq"7–5¬ˆ&à5R°¼É¡CÐ}†Þln^Ä$®¬ +x!§¢ÿó Äæ ˜Î zFpLõf^´ŒÐ‚@,qÖ.ÕI˜sþÒo9è¿#~‚˜N\»µ%ÿó"Äæ ù*¹¸IDp0ë2Aà@( ÂóÂ¥÷sÊ2ÁìN ‹VóþPߚΙåíKƒ¯ÿó Äæ Ñ +œcqdeaŽ€)áF…šS)»ž5«qóÐTa–0;\µ¤c¥85Ýê3û”ÿó Äå ª (zÊLD3Ç€0#ÙÐ÷MdÌ(©»â ÄcFõ4uù­0J±ŒßC~ÿó Äç ðæ¤ðzÄpï2Þ^혣u+<<£ª³Rz–vÔE§’"Ã|‹ñ§Ðó÷Šÿó"Äæ +ª­¸YDL.‘2Àaˆ(ÛŽ´fŠÍµ2 Hå7”6nF­FûÓ{Í'—ëÚ³ÿó Äå ®©¸a„L$,µ(®ðO°D±÷]*d—-㢞âÉ +g",€.$¨–Šÿó Äç + ÂzNLdrþ4c°žÀÕN¡õ å$rà®çñ0,$§yˆâý²=U¨Àp39ÿó Äå Êœ0zp°å^««Äª©’uZ}Û²‰¢Ù•ôy€•N'š=™§¬ w!ƒàÿó"Äç + ”ðzqõ¶H€à·7äM}?3Pï_æp‚yœjŠÕ«F’hG +Ó• ƶDGÿó Äæ X¦ˆÃL æ"k4|IòuŔЉ©ü,ÀH^ÉghpU <åòŸDHÈÿó Äç aŒ0zqÁÃЀ,ÚDÕìêäØÏ“Å?!öÝí˜G™ù³qàô‡a‰*!§IÑ‹×ÿó Äà‘FtÃÞq þ%EŠ[þˆHûbafê]@ùžInò…Y7MJÝ#ƒÞaíÿó"Ĭ¹N„Æqÿ¶kñµ˜²#SMûéàÀ (&äP­Ž‹²ð­„Š3Ë>× Jÿõÿó Ä}˜¾¼0ÊM©f§†o»÷êúÅ@ç襀s 9¦–Ñ ^|Lßõ’í¿9ÿó Ä–ÄI†LVÛíŸéÀH&âçÓ@)aËŽfvox8aµ®n¹(/ÿÿ‡ddlS;uÿó ć +Ày„q-ž2—›I?@'‚„uûCHž;—°º¿ÿó ÄÐN´JL%ÿ²£ötG>„åÁfK8¦U ˆŽø;'É„Báô/\¨V¥u©?ÿó Ä— +ØÖ´bDqûŒ´¦M M»A +V*­`ê“Le˜d¬tø´…æ5l²‡Ouÿó Ä’ ±*¸zÄsœ«¹õPÏï$ûót€ +".@','LþÁ'qVü—±E\ò +ÿó"ÄŠ Ù*ÀY„p ¸\‚vJUY@ä®sÅRy ³ USß"wÁC-ÌÚf¸3ÿó ÄŠ !*ÐðX„qDàœmw-ßÛ`…Ò;@0ðîÐO §³”¡C"{…Úísÿó ÄŒÈv¸IŒImiÝÙÑc+Úè&~´d £¶ô9f¢_J6\å¥Üù+UÀDýÿó Ä`v¼aH© ð#œœ âRaÈè˜b@Õ°DQ°-%è3©ÉQyxm¥fþÀÂèhfÿó"Ä” © +¸¸zpä +a•,««­” |úÀÕ¬ò4i³!Ã*rçZ÷5Š]À£îäÿó Ä +y.Ñ0Šq_ÎÄjüÂÀ\ +8›EÖ …ÏãmèF{tTÉWØSà«Qÿó ÄŠ®ÈJDL5Þ”‡ªLpHZe‹K ÷îNî³üÍ"Vm–yœçâÿó ÄŽÀrÙ¸I„H­"ƒ;vX*xB>]¢¬íAë9…¼ +´ŸÄ{ëøE‡cž¬¤YI–ÿó"Ä’Ñ.ÈÈHÄs’'Z9r`ûô²* +B"‹Ä]vsCý +G«sËÖù¶èÙ×|Sÿó Ä– ÞÀÈ`ÄpþÞ©ÍïÂýYw°Œ¦èSÂÕgŽWÂy*빎PõDÝÒú¿ÈO ÿó Ę 8ÞÀa„p3[Pó<\`,Êùp^hÕÅ¢5ÅZQo¯ý[ÈÓ‰Qd>-ý`ÿó Äš ¹"¼(zFq9ÛÑÚÁ˜¯©ô¢’pVIJBäÔMÖË”Ö!iÁ±©bL( ˜8ÿó"Ä’ bÈK)~m„¼z–P€™Š{ÓVØHYôÐêYŸO—ü_€-$»Rõèÿó Ä–©Ìzp¦-nö2 ©\Oüp_lêèk¨“5ÈÞùÇúÙÂPÓŒe€ÿó Äš˜ºÌILуڴPpLpyÙ;¿Ï`âŸñ} ‹ü]JHþ +¼ò¶ÃRI¢G‘KUÿó ÄžøúÌ(HÄp¤kq>ÁBËŸŽW¡S5˜­ÀÙöÄw,§¡,(’×€ñ4Ÿ½M;’ÿó Ä¡ ÐðH„p0ûBþvÖ«|û^‚Ý53C²ÍX”$NäQ%¥Ž.îh!{'c!wÿó"Ä£ A6È(`ÄqîKs¯ý0m¡ïÕŸM·Å®¤€íNèƽ(÷orÚ!I¬w­ÐM$µÿó Ħ þÍP`„p%õ³uÈN^}3‚⺌󖗾<=@ [_%÷ZbàÑû‘ßò¯ÿyºÿó Ä© šÌÈzL/&ro« +Ôw(Ԁ̭¸P§mX°?y†³QPöÚ³rõU‰Òÿó ĬèÞêXH„pJUðßo>ý´€ˆ-†RŒV¦Í!Jí)QA??^ÿmnÿ “˜ÿó"į IÄbDpdTTò!¦V'¢˜9ÂEдÅäî4"Øaðà]üW§ü¯ô.ìªìž`¾ÿó ı˜ÚÄ{Dp'¼© ÌC‰–˜`§Éü˜Œ)²{xŠ³8¿ŠÛœW2ÜŸ‚_ ýOÊ€ÿó ĵøÞÀbDpÔ0ا-:‹ `ø„ cê3nZ?\veC@€Hæÿó"ĺ @âÈÐBpBÆ ä^£*ŒdV:ø˯”­ÖçÕ§uÑÉ€ÈÈcðü½iÅÿó ĽàþÈð2pÍ¢åÈÄ‹q ©¾:–Áo߶çÓƒý˜3H”êìÛˆ¨¿ÿó ÄÀˆþÀZÄpšH¡×s‰±‹Y93k o]W÷Fv’Ó§ÙÅ@À§ |qÊÿó ÄÄ !6¼aDqH‘ÇÔ1duˆ„?"Ú<?ÐKŽþ¥ý[ê‌pü8E"‰Åÿó"ÄÆÙÑX„pÅCt‘èŸ'o úðoõ'è%Ø»%ƒ@À + ¬Ôó¿#TUÿó ÄÊ ÞÅ2 +ppQúÄFØ©)’~ßÀÛÕøîƒL˜Ÿ"p•êNQ Ä©Sµxÿó ÄÌ >ÑIDq·>`§FËÈ/‹ÁmfÀÀˆÅ@ôe;/æF PÅh?åé zÿó ÄÎ :ÉpJŠq¾{X¢O}þNtUTûh{Zü¡œéÜmÑŒQï2KA"ªÎñïjÿó"ÄÐ Q:ŘIÄqÿbö Ôý} Àn&\¬R€Nµäá`J µãï|Gô–KÒ2¥“ÿó ÄÒØúÉ2„p¹gåCàÀŒ ÊEPÁǨNdœD¢ƒ™NRñÏïßr½ +¿šÖz)ÿó ÄÕù:ÉIDq´hâ-°@ÁÀínÑM 8!û’ûcÃÖ¦Tñú”wŸ—ò;ÉD_ÿó ÄØâÉpIDp×ðèstA@íqØÖU®Âäm“ß,S¯¿!œ‘9ìºKDÉÅû^ÿó"ÄÜ 16ÑxIDqØlÁ¥ØM„Ý.YEì¿< ¶è}Èf;ÿ:å µ'> +Þ”`é—QÉèÿó Äߘ¾¼{ÎL¢oAÀ8@æ A„/-üv¹À!‰6ÇÕ²ó¶¼Ø½÷Té;{ÿó ÄãØÞјIDp#iƒ@Àƒ$ÀâaѲ)6´R£È +$©”#õóÕv±UöÌo¨aÿÿó Äæ ¡6͘YÄqo@ev€79ÃÀö ðQ¢¿pÀhbTJBž÷G§.åK€¿ÿó"Äæ +Áx{Dqñ]F@鈮ÖN$Ë&„ôg`êVJcTk÷ÔÑN–áb ®õ@ÉÑäÿó Äåp’¸zDL¿»W€@‰$!,#ÑUVŽ{qÅuW:xÒ3)ñpO˜xïÊÕÿó Äê +±:ÁxbqâFo‰€€J*,ÈËsm%õ8À‹%Eô⮡õLCY¬Á†Kiúÿó Äæ ¡:Î8H„qœ[=Ò7@¢(<Œ0|ïMqN@Tú—=Ø]®ƒjÓPÎÛ¾üëÿó"Äæ + ÅxJpo¨þå‚0’ú1wYfùe3¡½AH2 +›ú‹z. +ìÏFê3²ÿó ÄåÐÚÄ(IDr/h$*ÌT‚ƤnXV1g +¾œBÍ÷é\WP¦0[ñãGÿó Äè øÚ´zÊpjJÔ°€ÃŸ.*y­qg?· 8^˜¹abÎÛ6œ%ítåòå¿ÿó Äç É6ŘXŠqUÚ¥ÔÌÂp霤oLHÍñaÒ´6é´^‰G{ÿÉc×C~RÔȶ>¹ÿó"Äæ +6ɘIDqQ¾ùpÎae%ØÝŽÜ(Qf h!R2¹¤žôMx%°ÍdUô·ÿó Äå ÀðIÊpÈ›UGX +"¨=ZW×#ç*ìÃÀ ÕÄìæf[œô3 2ÙIê¡›"ÿó Äç Àú¼°cDp%Á÷dÍÒÈ)µÐ:‚ëCym+'qõê ýàÇú3:»(>Wœ›wÿó Äç  þ¼ÐJÊpôü¢Š$·K¶"Qëç,U¥ÅÜqìo‚ +5^¦m5žÀ“ÿó"Äç Á6¹PyÎqâNyh ` +Ü2"êãņm6Ö·$æ®Î Ïî;ô }ÄWPqÿó Äè +9:Áy„qgåˆÏƒ  + às XÀ¡˜Êb ™BEB9ÉÉY+†w¯1¿ß¿Îÿó Äæ ±6Àø`„q` +( / A¡Ú!{¬YªÔñPþ!3ù¾©õ3ïdÎŽÈFÓ9¿ÿó Äæ ÈÞÀðxÄpG%lA@€4¨‘‰Älm*® Y]aë^v­Ý„½^‹ü3zÿó"Äå 9:Õ¸H„q“õkæP€w†™ +¬Žë jŠX(û69¶º2o²ïHwÝ_úIÿó Äè +!6´aÄsòTD%4 +±*@¹“Ê#¤34ôz>#*Ý ‡môiK¨—Yu6ûÿó Äæ ØÞÀðZpzèx@Œé:Éy^…ìw €ôŒBÅªè» _ÔL{²6'Èÿó ÄåÙ¼ÈJ„p¹@]J +i×÷'kÀøž.f1t}³¤4évý´Ö¥’ª[ˆµÏœKÿó"Äè +Q6¸8bÄqîS7E~€B0é—8ƒ±çP×ð´?œÕï|G¯â2¯Â¯zÝ¥ÿó Äæ á:Á˜IDq`×)º:nŽiöÑ/´° ¹‰hhýïêæ!.hM;î-¦7õÿó Äåñ6ÄÐYDqkÚ¢"̈‰0ôw,Xx U/I!‚@YFŒœ(_•b¨7ãÚó‰f®ª5ÿó Äè é6¸aÄq³øŸq¤ë‡%ÿáöèc +ÑãgɪÀ@¥ÑñYov¼¬JêÒúAÿó Äç Àú¸ÈyJp¨Ä‘`pö« ö +/±Ã{ ´`lÿs)Kl(üµ +/ê­Vè?”ÿó"Äç +Q6ÀøxÊq=‘hB@Ó˜|ýË=o $:%-œHfÒÿs~«ºWU'ò~£6ÿó Äå`ž¸ÈyŠLäÀ $NˆNðv1éåÔµÆu”½¾ÜíÁ7Û\¯p„»>sí©ºrÿó Äê +¹>¬yŠqèØÇÍ€Œ0ë8À¤b*Âiÿ-H،תÿ­[|¾ô1~ÿó Äæ ÈÞ½yDpDý:;À›¢± u½YÅ<î†ÖJ8#&„ÅKŸ(¦A…ú;ÿó"Ä娢¸zL²àë·Ln&ûÐF\|¿Ä`”f¤äS\h÷¾éߪzÿó Äê +¡>¼XJqnd+ŠjW® Pª=*Î8¾ÇU|£/Q0ÇUj.ÊÈ‚µ¾5ÿó Äæ ú°aŠpÛ|M>4àT†‘À"y®&3ÜAAõs!vÌÝdPkõSIÆu3ÿó Äè +!:°a„q(ŠƒÄ@ȦhY-¶|t4È¡ão±€°€ïlη|p$j½Óù}ê?­ºÿó"Äæ +>¹JDqÀ€ K(Ê\{ä×Âo‡@Š ûASc¥CñÖA¾ë…YËëôaVêq'ÿó ÄåXf´c(_!¾‚¨¡Ì +¦â8]£•åÈ +^í2Y¿þ—úåÌ!†YUúÿó Äê +1°z +pÓ~‰÷Œàˆlwx­ù$u—u(kVš'=>wà£PÔ[±£«hÿó Äè +Y6¸ÐjŠqÿ¦E߀L;Tí~+±MÉ{ê2åwi÷‚úÊÛæð¡wùM'ìÿó"Äå PÞ͸9FpÞGëP³YP€°Ì)[RtÈb‘¡,c« +ÄÿAUN뙪êÚYÿó ÄçÞ°ZÎp¬€ íS6NŬ¶Ù½y€X³(߃}ü¢nxk·ºeЯ¾Ãþÿó Äë +ù:°XbÊq©ù„uЀaÛ¥íC‚TªÛ®ñÌŒ‚]ë6v‹×]S'ò)ž¼ÆJqMÿó Äæ ¹:Řbq¨þ¿$€$ð½¢Ó5Ø|FÍvÆ„2Ž,`bl±Ÿ©»nÞªAó~ÿó"Äæ Ù6ɘyÄqQ-S"e@È: Sk€àhäqØma@Á½Ý¶¿¨¦zÌRÚÊ„_Ëÿó Äæ á6¸zJqùÅr €øp¼Îê\+-XÊCãÞ$½bGjåY|#h’ M +ùÿó Äå¨ÚÉYDpë&ÂÀ€0”±¬Aƒ‚dcÍ`‰ôµ +WÛCmÿé÷©ÿ¼·íŠ~ÿó Äé +a6´°{JqaÍñJÌ€€è¸(v± 3Ý VôÚøT}Ò@Õ¾P³X*,6Qÿó"Äæ xÞ¸Ð{Dp낼ÞTB˜,*@+Ĩ`ƒG¢c-6 ¸\FKËÌÙ +ü©ÚÄV(?ÿó Äè +Q:Æ8yDq¡¸¸„@ٶ熰• ëæW Î]Õª›Ïþk/þßäv×7 +ÿó Äå ÞX0„pv½'u‡ÀÈ ˜–dÁ‡N­fáa+ ‰A‹Ò=ßæýGjŽÚsÿó Äç Ñ:Î8H„q¾øµ@À.Á¡UPôˆ¾aíK @„–âz8PíU7’/Ñ;Jÿó"Äæ ñ°°c +qú“õ+úpƒ™oqD;;æ SŽý^3kêì°<7}–k§ÆµÅ-‡õ»ÿó Äæ ¸¢µxZNLQ|:O˜[«i:mœLNjP,7?ãÇk¡÷ô’OŠÿ|W?¹ÿó Äæ (¾°bNLú +$ –nßÌ„²±Ø$éÖ´MXÎ;•9›­ +íÆÜNdIðàÿó Äè +PþÁ˜2DpšK„Y@@ÈÊH—MÐä:p€áj –]9ƒF{æ«z›õ¦eÿó"Äå Q6Á˜IDqû¹³ŽÅ@‚ %j¼{t't¥mœhc4]ˆÛÜß߶QÖv¬vTnÿó Äç +!:±pb„qÁ*4|:‘z`ÑŽ)+h·°¹Òdž–áÙñÓ›5¦ÔÎÛutôÿó Äå ž°¨{LóŽ_ +\ÀsÑɉP’„H©ŸÅ!+µ7^&èçÙ\‡ßð­›T¶ÿó Äé ø¢¨{M +¹ þ4ú Hi!Ú•õF€Ç,¸Ü£±§kñ¿¨OÔßa Ø€îÿó"Äè +`¢ 8{ +LÅ™X>ˆT,‰ÍÙ20ç €&ؤ5£!+ÿ×A(ý¿!ïÐ@)ÿó Äæ Ðúµ˜b„p•r>€‚ uð1 i·Ð +LêŽ T%ÅËòí»¬ßZTÒ~ÿó ÄåøÞ¸xaDpõšÝ„¾€‚\´ øàX¹N?œ®èP'ЂäŸÔâÉdB€Œþbú!åÿó Äè +8ú¤ðy„pÚÉñÀrÒhÁ”àÙá‹ó\T°%w¿Àôþ5_â{áÍ{Ð_¸ÿó"Äæ +ö¨XzDpÏx Í´>#áR•jªªqj)8äi×bmðBÿúî‚~‰ÿó Äåøú¨XaDpN¥OD€* –w÷°zƤñë1 J+5Ä#.Ï[ˆ½¯a>UÔÿó Äè àÚpzDpu€*RQ¤¶J"…ƒõý)·¢‚f ³¥š~¤ûB¶•'ÿó Äç +>©¸aÄqÕÚ¼Ë÷‡1í€ê‹ŒGžƒv:àûB(ÁaÎüƒ~ l!Bºÿó"Äå Xú­YÊp}½[ìÀ  6ÖM„“Øë‰Ð©«(TGg9Ž<,§ËwÐý´EÞŠÿó Äç øþœøzp+ˆùP€¦`=Mä¡@øìˆ~æBŽPÚ¶øú®UÝ’r~ +¿2üÿó Äæ Ñ:”0yÄq–]Ž p‚Ç€ºáh™¥PçEdô³zŠˆ6;Ûc¿AÿµÖŽ4ÿó Äå Ú˜8{Jp­Äú®y°Ä³`1'Šn– ×Îæ† 7£^^Øk}þì;¹¸fù…jÿó"Äç +A:˜øcDqw  ²dŠxø¨éN¶q;/0¶¹£²yã)ÿ¿‚øWüèuÿó Äæ Ñ>ªXIÄqw´x €Ôc5E1U4 kIVjb¼Éž eë}ôÊŽ3Þ‡ÿó Äå â”ðyÄpâfåxhX%,Å@§D‰ØÜI\Š ¨–ºÐ±0!˜jX¶PV÷Ž©äÅÿó Äç á6™¸x„qp™®õÀà üÐ}£VϤ“CC;|x6¹‘“äoÿ™ÿ£7ÖJ=@ÿó Äæ àþ•xyDp‘?GPâlžž'vMNo·p/wº¬2D +W´óßL¥wŸ"ËKÿó"Äå¸ú¡¸`„pQ‚*N×Ô ¹‚q‰éN­†Hò‰µþd!ñ·ŠAÔ Ðõ~"C¡ê«“Sÿó Äê +Y:€¸zÄqñÐØÂའåY4¶£smÄ‚5v¼Ažéz¿ÄÜDcá‹ÿó Äç ð¢…pzNLH¥?ïJŃe]œ#š«)ÄF‡Û`ô€Ÿ‰µyÄKëàŸÕÿó Äæ ØÂ|zJLŒ2ü0ð°;G.̆“# %êd©:Š€ªçÆ™ß^Ïõxn¬üóÿó"Äå (Þ„Èy„p½üª@vK@àöŒÅŽÄ³)ÝÝ[è3}…!ÿ† ’á^íÿó Äè +`Â|ÃÎLr›ìq€9„°¹~PθíÐ9Ñ_8B£¿ý^º&Àü{ñgÿó Äå 8^„{Þ(ë)†Cd$`PÜï¡ +ÖT »šKnŠÊÅñØÓ8ZuÓB³ÐP]ÿó Äç øfˆÈ{ +)Q`x;•Äö°ŒC‹h<ærÄVÿBšöÅ-VB·Vê%¦êÈgeÿó"Äæ áŽ0yDqûƒ;íH0D°Ò¥õCÙ©µFc΢Ú p—ñýùQ[•m€1?A½!ÿó Äæ Î|zÄpíãÀ€€&R¡Â1MÅ/”×a9ÝG¿Ç}þJ¿í¢ +ÿó Äè +a"žXH„qA¼v †Þš#ž3K7ž/l’€=ðàuQÜUèTÏìqÿáˆJnDÿó Äå€Òˆ(yDr>ŠMD °é7 QI^ ä±GÝÝ ±ÃH¿ ô°¸Gÿó"Äê +Á€HaÊpAÆâÌÑÈœ¿¬%°‚€‚@y‚îÛpTܪÝE2?6§¢!Ìoæÿó Äç é"HÄqpÔšªVaøà $*4¯ ï7CVá×N8†õ.‰ùgõ‰*ÿ8Ÿðfÿó Äæ ú€ÈaDr¸­`À ‘…äbÈÍË—¹ÉÓ4»‡Cc3Ú¹³ýºuaÿÁÿó Äè +`ú…˜aFp›òLÉ€A€¸àªRØY κ}ƒŒÄЬ]R¢†oš­ìú7öd`Cÿó"Äå Hú|zp9ÛB n 9 È:P™Ñ[n •øÒŽÎÅ8lE¤ú1aƒ%Ç„oÁÿó Äç !B€ÈIÆq‡äÀ;* ‹è›X”_e¯DD + +xž„…/mã-~ÏÑ +Fõ¢M@ÇÌÿó Äá !&•°H„p)ÏX%Žäº–ðW¥) 4ê. *=(*o«[çªt˜‘ŠÝ š$ÿó Äã ö„ðb„pwM"Ý¥`@¸hl²ñ&J¹9ñÕ$GQ)x+GÚŠ]I3û)©o^ÿó"Äå Hö}ˆcDpØGø“!Ð…À0å£ ò§ Ç),îog½_×ÒÔ¥"¢¿ôWúÿó Äç á&‰aDp„9”0õÁ¡Bø¶—Ñö¸<Åâjà!ãþœÂÿþQ©Z1(©Vÿó Äæ ~€(c +HaÆ + JuèÖu† ÈžïS¬{ÿ»s‡ø¨~·œ&ä]á Óÿó Äè © +„(aÊp‰=Nd»ÇX™AÔ†"¥s«Ø¢— Y^HL–P•xŒág¸øÿó"Äè +¡.€yÊqEú€«d4 ²¢Ç˜|Ð¥P\^%› +)8«±-þ<{i: 6õ­U»?œÿó Äå *ˆàaÊq1¬íŠ ÀàÒ*ÉjçË #Å\@Gq GaÿÄÊGÙrý¼!ßïÆÿó Äç + •¸I„pëú 0ƒ·êÑ&ãTw;„Q°k‰ƒEÊ®—©öðΔrŽŸÈ'ÿó Äå¡ +€bpìK +ÔSPa}âa1(ùÁ¬q= óÅ- +çzEtb•Éðl¯ u¶ôÿó"Äé +Ñ +€PbÊp +â0k& hp+L·†F–9]Â;ÎE5ÑK•þcÙø-´è‚ÿó Äå †„K +HÿÓÓ'ï@€ h){+Ààó‡Í08bà(³(O[ÔUûIR‹~©sÿó Äè +i.‘JŠq¬›Î +Ý=L‡¤À¯Ü `¸òŽw² +¾›“ÄÛhì®ãû·Ì÷Öÿó Äå !.•YDq×eV`l]'7È€‰íJ ”ùMˆ<Kb?&„‡…kø;¿‚Isõ¬ÿó"Äç ¹6PyÄpN[®Ò?¿lˆÙ¸qlODÝ];´ÀàYñ[2 <”¿Í¡–¤Ñšÿó Äè ù +ŒpaÄpÿ öVðõj‘QØÈ€V9«bê¤61rù'­J?Éý:ºã1ÝË +lÿó Äç +yÄqzG-Àð ’ð£†So@äƒG@ŽÁÞ‡u&;-[é;ú“¡ÕMTÿó Äå 2ˆðaDpfùBl¶3 la!.ƒg‹NçŒÒ|þ‡˜o£ )i‹¹=ÿó"Äß HæˆzÄp£§Î…èÀý µÝ€Lš%kž‚øÂÚÞî M:"èÈovÕÜœãþÿó ÄáðŠˆzÄM\#R¸ƒ5(*I%Ì×$? {ò³Æí¤÷ú•6‘´«•–œ(¦­ÿó Ääù +„yÄpl!‡?½WM€‘.™ ¥ÒˆY’úŽ~„JO—†HÚËqw#ÿó Äç +! +˜IÄq›ø-üàü•ßÀYt_Y‰ã‹ÈNc¾~'¶‰fô'÷dTÚµU)]úÿó"Äå 1*IDq¦Pð~𢠋À©8 +X ]FxÑòšeIùÚþƒ¥ íBÿó Äè +a2‘pJ„p?×±ûä€ð|ðžÕx%v tc$ãþW\óUßåÛ§Nùù¼âÜÿó Äåù6ºX1Dpã¤@¼9~z& ¦¼‘{`ïæ‘è{9n€´70&§©BL™Äÿó Äè +!.¢8IDq:„…±@  uœN¤^qn[…ÊÐ×7]Üû|‰½í¨Ï~ÿó"Äæ ØʪX1Äq4Ç(ˆC{yw)RÒðº27Ð.„|Çacʱr+ø€ã¯ÿó Äæ ¡&¶X1DqÓŠvõà™" +ðÝB+1M½ƒrœx6Táô¾s©dî¢^Cÿó Äæ Ù¡AÄq,S‡ÀðA ƒ këÙÚ. …"F‚Ͳ¬4øÀDøú/ïŸoÿó ÄåÑ&¡J„pˆwظØ +j–‹„BÑᦔ«” xÏþ†(ß@_Ȧþ¢®®ÿó Äè +`þ¢P2Äp$v"pجû®ƒå—!aZ‹Âµ­@LùÇÁŸ„4ñˆâÝ“ÿó"Äå 0þ•YÄpÄ•¼o@°…§’Êð¶ê$¾ØL‹þNŒGMTi_á$á:)‘uÿó Äè +Y&’@zŠq±•°.(QúJ¦Rq”‚Ç°J¸Û\ù–ø€äwoøAª*ýÿó Äå ª²øH„LÆ©`šbÎ<…)ÎX»²%ø{½«…œ˜·õ9Žþ„_Ó@pÿó Äç é"•pyÊqÃìr)””?€,HÒ®n BâÆÅ_³W‡M¦tý¬k–(ÿó"Äæ é +™ðIÊpK«¥¿(¼ ÖÂJŒ‰Awm 5 +Î/š%—ùȤ_G?Ì…ÿÙ®Æÿó Äæ ‘"‘àaJqtqd(Xð´t'@ÅXÊLgv«a“Šößagש¿#«}¹xÿ +1ÿó Äæ €ªš0bÊL<ìI´Á æˆP£xö  ǼS2»ìvÓÔ¦ÿ¾ÿó Äç ™"‘HIÊr(oˆ2Y¸^6‚—"¤ÂDù² ñMt°p„® ûf£i“ƒÿó"Äç Øú‘ˆzÄpÜsQ­ð™|xd†.ô AÊÀ‚ozƒñsü\S–ó…·ò°g~ÿó Äç éJ™ˆIJq°dX\å«JÑìðgªþIÐPÔ¶úèHƒ§Á—ÏqaÝ _ÿó Äæ á"¢0IÄpÕ p õu³ éØEXcPL0$ß)>½,ì~Ø”R·ú0ÿó Äå *®XIDqïêf~æÀ´€ÂÁ’~`!0‡½ƒ²ÑsÔi£}”Ägð_ÎEÿ¸úÿó"Äç +A&–0IJp˃\xð4 läë`(%]-P:w+œ]|¥«}ßÒÂ[éjŒæ)Õÿó Äæ á +¢PIDp)Iß°ð¦|a˜ì +Õ4¤Â -=D‚«'º&ïv7ÈO¸G¬ NV]ÿó Äå± +ŒYÊpFP0ÀDÝw¼>›…ÚÜè:ËCQŽ¢QÖ[:úú‘Ü¢ã¯Ä¹(ÿó Äé +8Ê–b„p5Ò_Hœ@‡1òÈÂÙ7ƒ[Æy|–”Šm”OéŸ"üý÷”…ÿó"Äç +YJ‘ðcDq7Ød¸À„Ø’‚Á—pu®{Yqª,©MMÓäðkùêj‹öìÿó Äåé +ž01Äpè*®¨ð@bÌ +A3„Ñ ¿_7Ìt+3Z¢?Ñ°œETÿó Äè +a"•J„q9,êÆø@.äŽñU|¬ð.13§;%¾`5qg +ûz7¢èÚÿó ÄåðÊŒ[Dp± Q- xy 9p0¯C… %¡$ô7ŸË€´¸¤r4ï¨çQÿó"Äè é˜È[JròÅDdóÈð ‹þÚàZQ· äÙÚ:ŸõO×MIéôÿó Äè J¢XAÄq]”Œ{;ÞÀ¨Ä"ëú!:6YC“y«9 ÕP?ä_«O˜?׬0ÿó Äé +iš0[Dp΀¸€€!€¨µ¦# +©ßà(o;ŸQÝ(å±`ÎÏꎚÉÿÿó Äæ ˆâ¦XCDpÙ…\Îé ‘ pKêŒÃE)@",åù]HK½êÏð£~zp¿õH#ÿó"Äæ é*²xIÄp«/ Œ‚ …mÖÎEn"õ€™\ÃQ‡ Ö“Ñïò7óÞS„+ÿ= ÿó Äæ À¦·„L2ˆ倴B@¾r´†2¶Å :àøøíL¡«:ã¿tVÔWëÿó Äæ AðJŠp x`ðGš¤„@)È n#p‹ŒP0õª·A¡?Ö¢½þÿó Äè + –cDq¿œe•ôG€7(Ý*6Èõo€Ã¢¼¼ù_ç~·ýYŸ*º·Ôÿó"Äæ +!"¦XIÄqB˜ÅŠp@Z7•)øX߆b„/Éø£-'ŸDoD§sû’‚ÿó ÄåÙR„pYA—U#MÚ§ €K†I/qÀ†g>ã3fžs7Ãáè›b!––3ÿó Äè +š8{Dpr:@@7Wõ¹¢FA­{_ aÃäÜ*jOw4¶¡:o4ªéÿó Äæ °â®xHŠp½>‚æp΀«ñά ƒË똰þµ+£Îì¯wôFýy_åÿó"Äæ +"•°aÊpÂI é0  „)uµ†9ˆƒî°àØŒ¹Îó Ö¢×û2Ü"}>ÿó Äæ A&ªXIDp 1 wcÀLÆ7œ1„µ^–¥zâd̺- Ô×S;7Æ7ú&æû÷¨+ÿó Äè +Q"žXz„pß@t<@¯æÑYd½2°q£5Ò.¾g¡™ÑœH+þšÕ¿ÿó ÄåÐÞˆjŠpy‰mÙ€Ð|K€Ž¤µ ·=c> ü{”õÊ8GåGÿî`ËÊNÿó"Äè +‰‰Šq¸+1j_°°=*¢ïWl$¤Ö¶ã·â¯!Ë5¶o™ÕþB25Dÿó Äå æžXcJp©â鬔gSÂUN,Ù¨ªˆèg¶Êß¾꺠sÿó"Äæ + ‹Dpg0áÀüßÀ}gÂbw²¼?Ô+™¿ûÉ¢UL&"ßf"ÿó Äå¨V–83Z$"2ÜH’¸8@ÕÖr@ƒ´ ^iõGºN¨M(güJškð¡×ÿó Äé +8Ò‰h|„qÔŽè ¸D5ü Êl°= +8ï‹*h4º˜˜ûÑz´S—öá:¡+ÿó Äç èþšPj„pWûx£YYí¸Ðï"W­¨¨`úTkYúŠcÎfüìMøÿó Äæ á"žxZ†qcLÿg:PÈ&¾ÙÔá}zÃ;A“-¡«žþumŒ”÷ê{¾ô ÿó Äç + þ…ˆcFp÷p‰sxè Ã¥B ­¦1._æÑvŽÿÂo+#hv’Vs;×ÿó"Äå @ú™IDp‡]mI°²ö0 ÀÞ>&ÅE}ìNÌ5ÿ¾>©+o®“Oà‚jœÿó Äè +`Þ‘3Dp‡¸d¬ +9/mšÐz’8"@’ +Ô‚B$£ó#¿‰ôR·žGÓŽæzÿó Äå¸þ•HÄp,ßÂÔ &ÁÛ´ËÍÔ°@(%šïEuQgë&ÿ~u;{LVÏ—Fß!ÿó Äé +:¦X1FqTÁªìh ám2û²´{¼ƒáˆ8z8ù¥ÝùŠcè‰ùÚ|yÿó"Äæ øþž8Jq÷Ýôú í€ô9°™—-GÖ¤jk]KŒ?1HY×QÍÄhÿó Äæ àþ¢8XÄpQ£`°P]tÖ–L¸‘!aºgÌ&bN¾è7ò¹}Bˆüô;ÿó ÄåðâŒjDpÚÁ˜… +ð6³û£' Ph¹êT1ÝJŠÉUùW$ýBºÐŠv÷˜_Þÿó Äè ØÚ•ðaDqtE?šÉ°™ŠÙ-q$;¡€ž<~@@ÄWîGòãÿÿŸCÿó"Äç ñ6øIÊqvóÄ8´¸9[uXl*‘ 2 +œ¢Ž>hÙC-û‹ýÔ‰'{•µåߣÿó Äç + 6š°b„qÞ@ÌØúÁt®Pm@IŠ 4 °u„RËO«»?=¥MJÈgøîµÿó ÄåØb +(Ó¶âØ· ¡†ÜÒ›ºW£ˆ›ƒíÂg÷Ô*“ÑŽ}ñÿó Äè +A–aÄp ²£®Š °Ãåp +­y©‘ +bU#ue¾v¯Š­H¬7­¿ tÿó"Äæ + â•paÄqžóãz²Ã›¯Ï¡aeŠª0”ø +§6ÐIÙ-ù2%?‘»E7TÝSªÿó Äåé:ºø0„qÝ¿áE€´øE…¿Œ Ä^¸YMÈä|Ò~RSáù¨Fê’“öÿó Äè ù:–aÄqJµ7~`˜3xà½LqÑ‚Ã`§¦cc©îçûR…ð­õ§ÿó Äç ±:¢0H„qšn€¼BvK€¤¯dhø×€- Í?b59Ëè«t*‹õuFoŒ®»ÿó"Äç +16¢8`„qJÎôaø€” zzÆÍL©ñ­wIToϤÏÝjŽ67¤3[©ÿó Äæ ¸þ¦8H„qeCœOüœùÏ€’¯¸¢Ä÷ jéÍ9?÷vÑÖõ;OÿèÝ”®ÿó Äæ ‰6¨zqJ3õÜ0¸·€ÓÝØJB5À y{ŒDÓ¹Ì]Ü¥hÿÖ!Ѿƒ7ÿó Äæ á2šyÄqðöØ€”x*ÀF÷¤-Â¥åüo,™¼qÓ²³t~âÍn’ÿó"Äå 6¦8aDq9$"~ ˜ŠÃgív‚eñ!NŽ‡Ës/7Î"_êƒ?ù +Éúÿ‡ÿó Äè +16®XH„q¸ ¼8€œ<(”H‡RI¤ +‹ó³)©åTn@d½ø$§îcݺÿó Äæ ‘:ø`„q8dYA£09*ýX1(Í)lû+x5£s=¹Šp§éÐ"¦”Pÿó Äæ ɺX1„q(¾Œaeç×Ù¥$"Äå¤&mÈ>b@æíñB!+ÿó"Äå !"²X1Dp¢§}9ÌÔƒœ}”‚»A< +"ˆna"C+âB©˜Q– Ÿé0íÿó Äè +`úªXAÊp¨"ýâáðØI[;p°ñQÁ X]@¥È ø‡Á6¥ÿB´¢¾>ÿó Äåé&¦0IÄpÂXÙe{d&sŠîãÇT´œ†§Çø~¦o~‹¨_Pÿó Äè +Q*ªXIDqép@/‡€œ!Á.òN-`}e hí”ÿðãx$8CÅ|Nýÿó"Äå @¦ªXQ„L"Çš°ð‚[YJƒGÑ<éMDG*N¿&–wr„Ãÿâcr¾ÿó Äè +9žJ„qF?íF¾ ؆©ûœ—–AðBˆÂ4Æë3;HŸì/ÛA +ÿó Äæ àþª8IJpüèðÔ a3¥¡Îh*E™Á©:PŸó)«0?n†ßµÐ¾ÿó Äåñ.¥ðIDq¥è + x æÑT‰Ù‡¤ ZŒGFÂÝ;r'ðO‚7û„¤»aÿó"Äè +‘.•ðbÄp‰oz˜â@ðQª_›É=5¹¶˜µHLok¯ê¾æR‚ÛÔ +#ÿó Äå š¾ø1DLáß÷ƒÈÜ‚†ÁO/*Æy Ž‡Ýl-\o‰³ìw þÝGy¼ÿó Äç +Ö™PKJqÿpsˆ‡Ð˜Ç×€,z’7¡Þ ²uõ}ù<€#Ôz‰C"@«ÿó Äå ú®1Dq¯Xpx5Ÿw–‹ ·m|b$A&Š€Áz7Íþ½_Æ›‘öèeÅ­çÿó Äç ¡*¢J„pÍÞ—ìrÿó"Äç +.ðJ„qý̤A@¸e [ÃmØ9¢X"ã\V@~­·4ŸB‰Ðnž©F èGþÿó Äæ ¹&•`bDqˆ€œ´@6‰Òš„`rXEÉjŒeëë2MtW›Gø/ZÜÃÛÿó Äæ á"¦0ADqÕ´`1þ°5Y ÏHh#VõœÈ,æý“1 IgâÚÿó Äåðž²8BDL§eÊŠÈaXa™ûȵPü +@ûÄ„G2üçñÚSçöJ³>‡ÿó"Äè +1.™àbÎq•?õ<º1…Bà +°Ø H²j +p¡v)8úùõrí¨2i-Hÿó Äç ™.¡øIÄqOS?ÿÀâÁ§S@ÔÀÌrªê¿>¾(_Q_º®ÕªIÿó Äç q.™èIÄqW@æ¼.œ1EÙåÓ x4¹p­½ÿüÌοR?C"ˆŸÔTÿó Äè +!2šKJqý–qÀ” ’ž¶¤ +¶±þ!•Ô èå¾%–ovü$/ÔSdê4\ÿó"Äæ +HÒ™øbÄpÿ}[Pð´ªçN…bNG…FMÉ’÷šü­Á¹x"yiøFÿó Ää +a>ª1Nq'Ó¶¡˜ˆ6µjx mÇI­ƒP1¬8•xÏoAwCxž—H†áýÿó Äáù:ª)Äq4Ôqœ¸@ÔìÚÎ6MÚ‹8xfô.ïRó¼k2\½Û¢-ÎÞ4zÿó ÄäÁ:œÈ*qÿ²à(Àx R$I½r„ïH è\¨¡e(Ê•òçøÃ=Iàý·¹ÿó"Äè +Q6øIŠq…Ÿïøº€¼ m<_WA:ÒÀC[$èüßà äéy„̶s|ÿó Äæ i6¡èIÊqú° Àܲ˜ÁÈxì`®ä¸Pôåô}ø’zƒ|š†f×1¿õîÿó Äç ù:øiÄqp‚FÜ  t3iEÆõ0o…QFxØZˆ”~¿Âî¼Qz C«ø0ÿó Äæ q>¢IDq"~ÒrŒ4)½'LÀ<Ë!ªÀ‘Auõò߈õ.AôãèÞÿó"Äç +>žaÊq(ß´FX¸ÁñKÿp4ŠƒäŠ†Â-ˆ ¨ÕòE“ÈOª +[œŽsÿó Äæ ™6ž IÊqùŒÿþ° Ô ØPWÌ0 +ÚˆÑÆRµÕhÕ~ä̬ž9JQjOÿó Äæ Ù6žJqöõØ Ì 'µš)… ˜ÂÇCº!¨Ôð·¾o«eS¨T+ø—þÿó Äå :ª01DqÓr”Ø!t›Œà@>y!~)< ,Шѧx¤—ÔŸŠ txÆMêÿó"Äç +16øIÄqŸ– Ã +@˜RÔÀ¿žÔLfzkH>ÔÁÏø‡È­N¡½ÏFfà ýÿó Äæ ±6– b„qÿ0é@ô‚PB9d*BÙ>Š •›/e}û·¢^µòLßQ-ýÿó Äæ Ù:žaÄqC>Ž À™è‰wcLKMp•"&ª>ÂÙº+Û¨gáÙï][ÿó Äå :ª8X„qþ°EÀ¸‚0€9i8ˆùpÝØâ\Hì÷ò«• ¢Ðœ8ƒ©ÿó"Äç ±>¦8YDq[ìŸêÜÀÀÜ$мƒn‡~äÙ"Ì " +û<2ä /&®]Øÿó Äè +aB™ðIÊqá¢ÒÀx0Æ þ4òPèl-ëö,NZ¾oüßÁ=_Bý*šhoñÿó Äå :ªXIDq…µbt˜ +«5VZ9•þœ¤ÐÁÑãKì¡ ßËÈ!ô!¿ÿó Äç Ñ>ž8IÄqR‡t»Ø$û€à +ÈÒXDˆp%{MѺ—û€Á§gèwøÿó"Äæ Ù>¢01DqAÎâROY ˜b‚Ùq,Ø-TKÄÅ”Õ ²gùGú‚nÆò‚ +?ÿó Äæ Ñ:¢X1ÄqIzȀذ8[ÀH%ŸO| ¨0Ê#@•5ó»¼JÁáÜŸüÿµÔÍÿÿó Äå šJLvƒHÿh‡¤ÙÉSŸ@QÐ +Â°Ê :K”??òÇ“¥½ÿó Äç ñ&š8I„q¿ÆâP-V2²  q(lÈ㘰۶Åþ·^†!ÂÂúýêÿó"Äæ Á:•ðyDq߀çöM´ 51@p%ØjÂÞû‹ïGæwªÐS9;¿š•ù¿ÿó Äç + úž01Äpr‚‹Ü 6EDÄ»FxÔe™¡Ãåå÷è_ŸAÓO [üïôÿó Äå ž0IÄp&<œãÀ° € -±²§„Tq©‚dèJ1/­ø¹ÿSíýÿ@Ïÿó Äç É:¦X0qÕ†žÍpy÷ àÊ0]€Ü61Rܼ0áÊ)sÒCêäF X[2ýÿó"ÄÞÙ”¨)ÎpNogq¸àÖÇõ¡â‚¦‚ ugk>|ƒ9ÁX“Œ¦ø®=cåAŠÿó Äâ ™p:pÿ![O ‰ ¿C*HðŸ p¸¢pÊš¾íÊ·èãbí[œ[üt!ÿó Ää þªXDpŸß\˜¦Ê`Õ¾GÅmï ¬w8r=[©Y¹YQß^®1<2ÿó Äç +–PIÎpC ó»ÉU†4ê:.Kž +“ǤýÑÈyŠez»ø+;ÿó"Äå I"•øJŠpt>ž4 keàÖDÉïŸpïð(n=Q‚Ú†k.ê:)§ˆ§ÿó Äç J‰ðCNqØ¿´ö:Tsþ`ø„¾\´P0»äšå†ú ÅÓÄYS©èþÿó ÄÝ !•2 +pçÿ­P0³Dâ¿ž 88½À¹HÈF*AF-ŸJ9Fbˆ– Fÿó ÄßúŒ)Îpÿ©>ÿþ\2ýØÿú/ÈÔAö©TÖKôS)Påà¦Fÿó"Äæ ùš8IDpÿa¨wÊ2½bm ÙàD+r£y²ê((.g”žÊr£}ø²ïÿó Äæ ÀúPKDpÿîbéB¥?g`ÙЄK@¾÷äR; ñ…÷bÿ¡^ýµRF"ÿó Äæ 1.†bÎpA€NÏùÉÿó"ÄÜ ž¢PJDLÿ›³›ÿã Á‘ñÀ¤X:^¶€«£¼8ªã­‰’ñu˜ßSý¾˜™8Gÿó Äß !.®X1ÄqPp´ HŸ•*BŒtÜÙÒ Ýk^ÏÒàïô?Ìl§øÐÄñ%öÐPSÿó Äáðâ¶X1Dpô2'„‡ &%зM +U˜êõý«õËDw¾¬„!¢óÖ£ÿó"Äå 1 +Âø(„p휚õà¶0ƒ1BÃÕ{4MO^ +ÿœ~¼&Ã(±#—ÿñŸÝÿó Äè É.¢yDpµãÝ°ãŠb$0ŸÕm·!ÌaÔ%·S‡{p_©ÓvMæ gØÿó Äç Ù +™àbNp¿HK¾`)õ¯`ä”6Åþ…÷?üVÿÕÆôƒeÍÿó Äæ É +ðJDpqB[™äÀà€=@g3¹@óxÜ5Ò%ª;¡G‚#6WèÕÿýPw¸ÿó"Äå YJ®ØADqJI>ã…XØ 3LLØ2gÀ 8«.­CôhUÊgÔÁèþß¾ ÿó Äç +J¢(1„qØ‚×( € q5ý,›_šŒÖßòÎ3ÿ¥`Á6¶©C/©›ùÿó ÄåñJ²X)JqÏî 9—´P÷|ÁC¨Å:IÃÌ¢­¨Æum:»b¿ý``êÿó Äè á +¥ðyÄq§rPÏe°°h̵‡`€ŠoŒŒ ‚x5üÖWûHÚxlƒú=ÿÿó"Äç +Q +šZpâôŒÁÓ¼êõcx‘-wÔ/CËSèê{Ö´¶Nå&?ïò ‰ÿó Äå  +²X9Jqú{Ðð +õÐ:021àPçp)_š‚öÆžÀ›¾ªÖ%wÿ`¿Tÿó Äç +*ªðADp9ž oÐð X $1;'²'²ZxCÿŒÅ}ƒ +bø_\cÿó Äæ Á&ª0A„p‚H¿úîĆççF×È (ôÔL·PÊ9‚û™åÙ‚z³­ÿó"Äæ +!*¦YJq~ø·ü¨ +d_ßÂÚp1#3Púº P²DŒêº¦Úû;©ÎÝ5ª=ÿó ÄåÙ +¡àj„pz~C?@€À` ¿„ÈiÂÅ4?I^Á¼´¼ßlÙ÷U3i]Ç?ûÿó Äè +9.¦0yÊq¿ÔGáf” Œ­¨Ž†&— :g–‰¯÷÷ÍþªL¦>”çvÿGÛÿó Äæ ¡>¡pADqÔ£\ ÔLÙßó ÁëB¦u +Ÿ;Û;zßÆÎ>Å~MH }Èyÿó"Äæ qJ¦8I†qWwI Â`ú˜Ç‰AfÁgŸœn$£Í_¹JЋ- >cRÄ»úäÝÿó ÄÜá:¬È(ÄqA0ý &)›‚2!ÙÑÇÀs+T¿C.EÊ‘çô7öÿó Äß™:¹)DqSyˆT€ú‹Ž ¹Á7sÊ2"…T‚ëyþn¤µÒëêFþ£ÅÜÿó Äãù*±9„qìÿ0°F·Þ"e ¥q¶‡ŸR¢Åà#uÑAïÞëæÔÖ¯£umÿó"Äæ ±*®Y„q>D1àè¾ý TE€hÎúN Œ%}Pï(Üuú¥"™ÿкÁÿó Äç + +¶82Äpꉉ€¸ À ½l 9è‘+fž,(ûžóõ£*úHOõ;ÿó Äå ú :Îp`æÀi`A”˜¡ƒ@\D6£œP‡/Vâú”Å*ˆýÈ8$ÿó Äé +™F¶XAÄqZ%‚uý¬¦€€¿„”¡Ê•«)p¾Òû/Cÿ´mÍ#ÿó"Äåøþ ;Jpþ¡T;«TxÐô€Pû5Ü +Cîóà8“Ow¢?¦€½}?åÿó Äé +¡žbÎpI+è¼LùÎÀÁåö8ƒäŒ`À½¹ŽÝ-D³ëSG2Î;ú%þÿó Äå þ¾X1Äp£ÜII 9àð¿4‹æžÔ4¿Gî‰Ê3–§ÿû†áA5 vÿó Äç Ù&ª83Dp§?:~)ÍïCè‰ì}K,LjCÿïôßq.lïýÔ|B¨çÿó"Äæ YJ²ø)DqÍ%ô‡´œÅ>ÄÎ + ÎbE¡x¬¿ûü€jÿþÎ@ éÿó Äà !J¤È*Žq÷Ðd°Ðƒ'í0¦E4ˆ%u$Ë~U»y +›U'ÿ« ’_ç'ÿó Äâù&¦1Äpú¡ªðbÎÛùUìà@–¶1aòóužæ +I£¢c’8=NX„$ÿó Äå±J®02Šqo4ÿõ‰ÈÊ}cC žø!cÎÔ»j­ÞoVÁ'úèÀû Íÿó"Äé +Á*ª81ÆpWo¹ÁÝjXc!™1bÀXB‚w + + ÛÏÔæša:ìªå6ž¡Îÿó Äæ ˆþ¢€JpÔU+|¸b…l‰Ï DÐ(þd¸¬t,­¨Þ9ZÐ6gµæךÿó Äæ ²X* +pvúý[Ôˆ¡¡ÛîÊ*š€Slõœ Hû ­¼±G˜¼URyÙ ÿó Äç Á*¢IÔpÚÒSBÿPç¿ + +GÔÀ\0<²…^ôWõ5 Ü¿ÿó"Äç +I.•@cNqÿú"˜&¾O &¬0 + Ã¦ðˆ>Bíe‹€ñdÝħêby«êŸP›êÿó Äå .¦8AÄqò‡uÐü0MJ‰@X•j»0äæ•.šáeÿ‘fßëàÂýzz&ÿó Äè *˜ÈiÄqüGT@É Ïö(¤O›œ\‚Ì;¥IßÉ#=4!¾±½IõÇÿó Äã Q.¶XJÊp~uD†$D@FDaß]@‚´v' ý yR©q‚cþ¤¯ÿó ÄÜù¬ÈkDpõ8—€Ô:g¶óC$~ŽYú[ÛüûèýX]úFßâ ÿó"Äß AJºX9ÄqÞÎâσ ´ ‚!—ªK`ʪÔm(¨Öw¢ËOË£ºxr +ëÛJ2‰ÿó Äâ¸Æ¶0ZŠpoÙú„ †PP ›æ +Læ¾à0¹GG’æ"—ñÁé¾­ùÕ¿öÇ +ÿó Äæ ±*¾X*pèví p€˜€€,Îm"SGfÕ¨È/# +óÿ•H!óô7ÿðÿÿó Äæ Ñ +²PZp‘zÐu¤P¿ì<àÝ3©¢ +Rcóßdçzÿ%$^š?è!þ×ÿó"Äå I +¶à1ÊpëK¦ºœì@8?¦>­™ŠìKD@wt *%?ƒóÿRÁÏ^&oÂ?GToÿó Äç Ù.®ZÊpÃû+Ä01¦—ûb3WS@$s”6";±íÔ„¿Šä _÷õ(—ÿó Äæ ©J®0[Dqè"êÈx: +fZÚ¤ÚÜðÛEN‘¿ÿ½Þ„d©ÀŸõþÿó Äæ ÙJ²¸1Êq >àŠë“€_@4 sÖ®Mw†ðs|5øÆ"/mÍ|ºõ +ÿó"Äå AJ¶ØIDq­“œ€Ô¬± wº9  Þ ¸ö"¶AoAœtôÿMˆ„»ÿó Äè +9J¥àZÎqÎN‹€Y9wµH¾†ä¨8Heæ ¿ÑF×£²)SÌþèÿó Äæ ¹ +®zÊp8¸oH†#Ρ¬˜(R½« I×R³[×…ëà·_Cªýÿó Äæ ‰*®0JŠp”o¨gãÀj1åÀíFœ –oñ®Lx3èe~cáŸø=_ØßØÄýÿó"Äæ + &²øIÄq‡_ø<¸&h ¨¤Ê…ÈeÕÂUËWu/A"b_^@OUë­ûÿó Äå芠SÐLÖˆoQEì€d£`€@BiO8\b)«³}q^Ú„EÞÚ1Äÿó Äè +Jº8ADq:¾;-v¹À­üs´#xs>’Šõ«œ6t0,-®jûå»lûÚÿó Äæ ©¶ÈYDpŽ„íÅÔÃ:VìŸÿÇ1Ó?R;ùækn“H®ƒÕe„¢næC-òÿó"Äæ +*Âø2„p6/¿í|V½âŒÖ¨ïŠ£Æ²Â/ÞÃmÏÖDÀXùú¤yF¸XÈ‚ŠÂ@ÿó Äåñ*ÆØ1Äq't“dÑQAzúo},J7ÂÍñ´ HÎOÕÒÂjJ‚+rÜh¯ÿó Äè +AJ²8YDqIø»JðíSý«'ýCÚésRÕ€3Â3ÐÿÁû(ÔÀä áè‹Z%qÿó Äæ +Q¶0„qðïPÎÛ»~÷uzÜ ©"" ðQI¸)Y!Ù +bU¸çKšnž÷;ÿó"ÄãÉJ¡X{ qgÇ~TåLY¾±T`v„ à˜ ýÍGCQ^ÄÎ3#€a‹÷9í*ÿó ÄÏ°þ´jDp¶±5ü1!¤ô¯RÇ×í§Ñ¿übVýÌ €ùv±FW#CN¡» ÿó ÄÓ "´ÈYJq³ÔJÕ‰5ŸC‚¡"r/4ïóDÞ¦ïå!È)6‹’ÎEÔÜGÿó ÄÖÈþ¾(IDpš‡>pþ6»î†¨gùRüÐó¯ÁÇÖó‚¬]I…˜Üâªe¬YAªéÿó"ÄÙ þÁ1Dp¢qCfë­aІQb €¢1É” ®Bùqóû­Oˆÿó ÄÜø®ÅI†L½(‚`îŠH:¹ýãÀ€! é#d,ŒŽuK¶#5Ÿ«+º¶ÿó Äß +>¹XbPquªî»ŸÐÞÕžxð±ÉW¤´Ø\Ù"ú¦;Ær¸%usßSÿó ÄÑ þÄ1NpƒèŠóŽÅmüïý^#DªN1SjÔJs`©8Ê÷¬0ê„CšÐèÿó"ÄÔ ÒјHÎp®|®Ô< ¬(+Û¨g+X§ÚqÈí6SÀ&¿¯ë³GêÓ G£&Aÿó Ä× ®¼KLª£bhX²Æ….ÞnçpÍuѸØ쫯ͣ“Dê¨_ "ÿó ÄÙ ²Í˜1ŠLàåÊý]vµu©wË]´ÚîÿÌä…]ûÌ€æ¯;` 76…‚aÈ¢fÿó ÄÛ +0þÉJp×KꃯWNøšK‡™žd€éĈȌ!H ¬> L‡dÌ‚…ËeÑÿó"ÄÙ´{p@S;æ.77üòþ§ÈŸ TšÞï~.ëÐR*§ÞæÈ¡hà…œèÔ{„ÿó ÄÈÁÈa„po´M`ŽQvÆaÍuñþ0EW@£Êèí©úŒ¨cÜ\ÀÅâHDóÿó ÄÌ úÄZqÀèALÁû¸B+”ëg¯“ð§­ÿ®‚"¿—Ö«Bˆ0΀‹œ±0 Uzfÿó ÄÏ ÎÄÈJp'4Gu¥¾ßnQ(ôÀ¬¥cjùo¸êÅ<™¢Àœ~ƒ…‰ÑJèÿó"ÄÑ ¸®ÀbPL&zTÖͶq…«:CñJ>¸fQ’¿² Ìà_Pý9™ùuó÷ÿó ÄÒ ™"ÈÐIq8 àpÒÓù™Ê蕃Wq²*ž;vî¦eMÒU 3g(š"‹²@˜ÿó ÄÊ pâÔÈI„p¶™·\¬¹ ›K1>Ü ºµÇÈji +ØØÔ¼W^÷Ë~±œ×ãK«Jÿó ÄË .å˜0Šq©n¤?Hš ’>Т_@ÍûÚA÷öêò“;ê츲e1÷IZµ»µÿó"ÄÍ XâШIŠp8û­N.ö`£T>Œ\lP…% a¿%KíBî[ðdlÔ¼[.Ö´Ø¡+ÿó ÄÏàšÈbDLõ€žEÑ´ezDNmaÐk0†°GïQ/²Ûe"8ç +ÿó ÄÒ ).ÑX`Äq‚éÔ†)žÔÆÙP†îM[C‚Ç.$v±(µïÑ »âPB$Hÿó ÄÌ +)&À{qѱ,ŒÉ™'šò;þ~±ŒC‡ßU¯è ŸÇ°ØÚÊBðö|G¨ÿó"ľ yÔbJpDÒ5B;8Ř#´ü˜²‚šÉF»:£{¦Š«†ëê‘"h¡ 0àðeÿó ÄÀ ŠÜJRL¤¼K˜•K€h‘Ô" ®„Ø\g‡@é KŽ +ð ab¬ W/ÿó ÄÂ0ªÜ¨JJL'ÛaY>Ü°vŒ1N¦ú ©zΰF䵕Äèbh…6‹ú@óÿó ÄÈ VÜÈK$e1ô;ÈÍóÝ—;5:‹îèêƒÂbgÄ@á(Ë3Q­»‡œÂ…kÿó ÄÊȪå˜I„L&Ïú‡éã°@0ëk« B + êD„Œ™˜›»‘ÁÏ‚v´ÿó"ÄÍ A +áHÄp»+.£+l”‘œ°•Ã`qi^ÁIgfÊßÆwþs€µ¦Sè°C½ªÿó ÄІÌIH +b“ +ÖÒekÇ9׋Vx·œ¢N8'íÍñ OL˜S™Ž8Õô—¡ÿó ÄÔøÆÈIŠpŒòðïU R5›ÈõsæVÁ¯hmÈìw;ÎëI7ÓЭ×æmý6ÿó Ä×ÁÐ`ÄrbÑâUoÖ:ñ2O·Žµ4ÑÒ-a…$Š;›xÛ +J|àZü㸩Tÿó"ÄÛðªÈJLL­Œië +Q%Ø™PPB±)ÈÖUDoŸ/¢Åõ*gì„û‹[5»Þÿó ÄßèrÑI„HF,vÌ0N8ȈNJT¸»“" +z;5©®÷K-Úr™-Ù5Ê9˜/ÿó Ä⸊ÄbLLÚ¢ DsèœÅ]q üè5œ@…ª]Ô^ìnseüLAWįÿó Äæ `μyŽpÛ™'ïø8𘠸ˆW< Е5ºÆ°SÌ°5ž)1× Eöua{ÿó"Äç +8ʼ{pÙF<D.:£b‹\„tÌ3S¬|;#×ô*ÄaÉ»O'jiðnÿó Äæ €žÀ(yŒL*Ì*EáÈ¢µˆæ€÷RÑõr2¨º®&LøíïT'VùXˆ-ÿó Äç +! +͘HÆq©`Šè¹;˜ªÞWMy®#°rßñÐ>Al>ŒCM¢&2®lŒdÿó ÄåØÎÀ(I„p7AæòX¡Y&¬‰8bÍ⣎]q¸ï‹ÜxO8<)ôª¹x78ÿó"Äè + ŽÄøJDMz]v:ž@Ô@ ]„%aG)L.`‹B•‚99È+ ,'¶Èˆ<ÿó ÄåðÊÀPbp0–²ÃH7.âAÁƒÝí“… uÄ%c[I–bÊpÁVʯšŒ&ÿó Äè ù +ŘHÄp€ð€(£X?ÜU…ÈŒ"[½Œä2ãÎFq+ âM&qþ£ ¬…ÿó Äç ™¸0Jpìæ4øÿlLq&Œ6ìw @>(@ÐãÐ0D€õ$ösv¯ÉºˆS'ÿó"Äç™BŒÃØqí£]ŒÃû¤?º<»'™Qöï H€Tô +ôübp=ƒ¡ì¼…\ÿó ļáB¤{Ìq;=[£Gâ 2ê )æõ‰ú€W>“ ¶0`Ch<Ò÷ÝËçü÷ýªÿó Ä› +iF͘bFq½ÌˆŸûJ?R +Ë žD8LŸ! +‰P äb[@‘ÇÇh™˜ÿó ÄŒ +iÔ(JFqg'§Ýªó½|y@j$A‚H釣ƒoëïö©UdÊøãõ3 ÿó"ĉ ¢ÜÈJDL›!• ¹ø6>TËòúEá’ ‹‰ ‹kË íýPèÛPEÌÿó ÄŒ±Ü(I„pXTÏjé ˜Ò0Ó‚áÅPUBƒð#¾‘XñÂŽ ÁVí¬:°?ÿó Ä Ôbq›ÔêÍ2~D4Qt6F‰(¼¶â’ÐpÚTðo,Cr1s`ÿó Ä’ø¦ÜÐZJLÎŒØl´Ž$0„(D©Ü(XUÞzU†½8ä­ä½ä€×d´ÿó"Ä• ®Ø(zFLQ*æGƒšua´ã_;Ek¸H(h”{ÅÊ=P =J$í\d•ÿó Ę rÌKÆH`Y!ºZeÖ25ÖÌ0fkÅ +Æ{lN?¶‚b#ƒÄ¢AÎÿó Ä›˜zÈbLH?ˆYÖçK7ˆA9·XçþÉ’t}@N>Ç*NEáÇ,³ +>ÐÇÿó ÄŸžÈ`ÊL¥››¼ µ#懑% >V\÷3ÉUQäùµóAA‡úMü1Z§Ìÿó"Ä£ðvÄc HÔBðȈ«Ú¶ˆ–›žO$ŸG%j +¢`<ÅÊl‘N§Vðc¡ÿó ħ ’ÌðyŠL&¸Õr”ôü>ÀHv!s¢ñd·f\„茜„%A¨ÿó ĪئÄbPLס²ÉvÀó©îÄþz"hk¼EçŽÅæçÎϱ+У§5íÿó Ä­€vÈ(zLH°ê +ÀäÜ䬬"F@¡TPûƒÏ^ÚÁÖóÈÜœ‘C¯SM¡’ÞBÿó"IJørÀ(zLH¾ ‹V†ä¢hð*q5=ßâqŽˆùÅEg51EF±1V=ÿó Ķ€~¼bLH_*‡ë¶%°x'ejÓ¥ï“ÀrßîþÌôlÎ,0ûmêÃh»½nÿó Ä» ¦ÈðI„L%`®#‚Λ±Y`ss{w9ÑäãÄ—XÝ@¾#? :e¡#ÿó Ľ æÄ8I„q†¤CfGݦu¶:Âàû‹;ü¾5ÂöüQ¿À†Ug jÿó"Ä¿àv¸c HÈk™([3äƒ&Fí6Z‡‡ÒÚð<vˆ¸Íƒ,pAG1 *ó#<0ƒÒÿó ÄÃèv¼Ð[H)ò&œ”7”%¥(×e¼ÿ•„½ŸŠB­w=Š‚«›Œ U[ðèÿó ÄÆ ª´(zLLXŒ/>›¸·ò‚<þ¿ªˆÝ‚˜ðqÔFhKI rz[‰AòW¤‹ŒXÿó ÄÉÀ~°zLHçSÙÕLr½ÑME6 Ûp2á|ÁCªZ +0ÌaháÀã pÍ–¨Ú…ÿó"ÄÍ +8f¸PbL)ét-ÂQão°WïM舥CbºL€hgÃz‚9’”A{hÄÿó ÄÌ +ñ¤{ÆqJÜæe^É¿ +«‚^íJ³íèÀBÌô‘žd‰Ñø3æ×׫{Çÿó Ä» a:´zFsúéµ +bÔ3~õmû¸qdÒÖ†\öBŒ…v˜z£˜xÏxÇ^T׌ÿ_ÿó Ä°a>°{Ðq{æsj½¥ +K+QzÙÔ9/òî¹0 à€<%ð×È>ˆÈZÿó"Ä• Q>Ä8y†q¯Vw[î ,óÖr$ò6Ø|Ôâð#6±?ßÖŠ32Õßê ®)¥+ÿó Ä‹ ¹ÜÈI„p7('WÜ‘`#> Ðö"ž‚a7|5KÅÇ×É9XY7n¨ÊJlÿó Ä‹ùàÈI„pkźÞÞG¥†W T÷ÙìÎ9>Ë}îÛû~m@nG¤YÜHtÿó ÄŽ˜öÜ(X„p—á`ôJl@e +íÑ´Ž·nPÁC\šìË)úEœÍ§Ûµ¤³ÿó Ä’ ®ÜÈJDL0ø èÒ ¸Ì…ò»¾”ÈÓµ˜Ã¶èÂV ùôűët²pÚ@5&àéØÿó"Ä” Ü(Jp€Fë7@ƒÙïíƒá±*™Ø/õåÔ;JáÄåÈ‚®§™"ÌðQ3ã7ÿó Ę ²ÔZLLàȱHjÝ÷/-a點Y¶Ðw£(ç¦,A´õÉ€€£pø —:=jÿó Äš0ªØJDLʇּ!ÿaXÜaÛToéZâ{K“|NÄ}`4Þ07+6Ï4Œ5ñÿó Ä  ®á1„L?#ÐVù­5÷\/Ã!üþ Ÿ1ëRˆ*A8#2K"s6¸Â¥KÞ¼ÿó"Ä¢ 8®Ô(a†LŒóSMµô–âȹü)¥¯p®¼Ï2,„pÇ@ü‰v5h¤Á¸À{x^ÿó Ä¥ ²ØÈY†L6m{ÙFu ÿwC{À¦i + "ˆ¢ BèG¢µs`®4Öw¥ÿó ħزÝI†LQ(º ÿ¼Þªz~MAÀÔò< jzlÍP}P{£ J Ÿ¢+͈ÿó ĪÈ‚ÐÈZVH,Ý<÷ü¢†}I5:!Ȩ½¢½«`Å÷3KÒw,š×pN…o¥ÿó"Ä­ 8þÐ0bpý0Š%ß´"чÀ‹Q<0÷¯€ ölìAS–­Õžûíý§ù‚ˆÿó Ä° úæX1DpÿüÐÍ ó•MÐX…Ù‚é}‚ŠÌŒ±[gŒn¾¾ 4=æ·èháøÿó IJáÔPIDp@A„ó0ñ¹¨ØÌ×D!šÈ x6¶ÕvgS2?ùžßp£ÿ‚6€ÿó ĵ úÌÈIJpÔ$Àò¶ƒŒ°g5•Ÿž6_Lw½Ýu@›,”{é:ÿ­ÀÀBÿó"ĸ¸þÌ(XÄrqA@ü`äɯV y|C˜êT>þcÿæ5>„ÿþÎpçT@<ÿó Ľ !FÈÐIDq‰)$ RjB_˜Ë«ÝoICÏþMBþ´ @¤t0>„Ráÿó Ä¿±ÀyÎp¬ZÈ=~ehÓ[z^èE*ûó=èØ$'ÿü!Â뀞C¾&£¥Ìÿó Äà FÕH„qAM,®j:ño¨80æü²ÑíÁ˜ÿ +:ÜñÀüRGÄmÝÖa›ÿó"ÄÅ ªÄÈbJLàÝj—̨ÐlÄKÿ¡ÛñèÆ Ãà€ó0öÍ·wfݘ+&Çoìÿó ÄÈ JÖXH„qfèv¾Ìá¡Èô=¬ ÿÔÔ€ <È=H̯ç¬ro”wgXFë2Vÿó ÄËÀúɸ@„pÅ¥;Dë{±s¦5. ?”Ü©k%– Ùtë"Æ×wÚÌ®ÿó ÄÏ JÕ¸1DqB_íVôÿè?€ã? —:(T€¥˜ˆa•¼C¡ Çº_ùŽèÿó"ÄÑ ÍaDp§W%“@gÿÈNØÜcÀúJFض‹à²œX3ènGf(7´¹Eƒw™/ÿó ÄÕ þâXH„p¬7ü0L#ÁóãD'Õ±›Yh—Øk¨oµ÷ó +=þðð±S¶ÿó Ä× ¦ÉzÄL9ýaðA‚ ø+@(…ŠøÓ +^xk¹”ïwùCWþ¿Îƒÿó ÄÙˆ²ÄðzDL¬þ,$€=€¢¢siE"†ÖJCÿ…«µ¶õAà;ÿ[[Ðhÿó"ÄÝ þ¸(iÎp/ÿô` pfXµV–°¡Ò¶À,^®Ç˜Ú:]‡(Ôå/Ó ÿó Äá úɸH„p7ô@²‚ø.Ù“µ8ŽŽ@De5€lºú>”Cÿ›J=DA…ÿó Äãð¦ÖXIDL?ЀÀ’€ÀÙ¤*é5§QIÀQ•©uÖ§ýJ¤ŒýÝSYŽÿó Äæ àúÁ˜J +p¤6;ÿ&À5 @+‚hR‰Úi.X”ÿµ×œq#t<@§vþ–¦”Šÿó"Äå þ¹JpÿúÁŠJX¸uï&'h‘©!¡eO3µ_U5¨ÄP™ŽÿÓRüãÿó Äè +!J´ðJ +qßÿÆ@!º¬`À¾Zf°Z?c¤Ïo&¯wWkþXGÿò€'ÿÿó Äæ ¸XYÊpú 8 +ФP2 A„ï>)] åÔtÁ9•“'ì4w\ÁЃ•U¾0,ÿó Äç ‰½˜bŠpSò¢AÀÀãÝÄ-êž|"#Ùg‘]ñpÝ“z/Þx–,7üïôÿó"Äç ùµ˜KNpÿã§<ŒP@›OF ¢B~]34<$MÕ{œOøÕßÎ_ëÿó Äç ¹F½¸IÄqþ €€sñRrU‡©ÿÿ÷ +ÿó Äæ ÉJ­zŽqßÿõ*à.Ø´Q@ñ*çHôäjÄSð·dt^í¶ªR7û+þ®?ÿÿó Äå úºXcJpò€nÐqú €)= V~P ìdÖþ&q7ûÍs%ÉRÿó Äç +©{Npÿø“H XJ€Ò Ë;eÐQ¹äUÎhtúõ·ñЀ4_ÿôÐÿó"Äå 9­{NpÿÿåÔ +h°`@øšä‚“i• Quõ†É¯ö3þa¢`oó¢úãTÿó Äè +AJ®XcJq[ýaðÖÌà°žáîECÉ0Õø'_ÿSIC"ßÕLÖxüB“ÿó Äæ ÙJª@aÎq¿ÿõ—p +J‚¨pñY©Q~c +U¦uÑ„×T_ó@1ßþɨÐðÿó Äå JÆXIDq«ÿ’.€’€ ~>xåÜÉ|dYó¡u'K]ÿ±P|$þÿÔúˆ¡ÿó"Äç +9F¾X2Šq çÿŽ +Úƒˆ`Ø1ÅØÁÅM59á¡–z·*ÍøPá‡þŠþµÿó Äæ ±J®8KNq8?õ Âó›…þW©nÙö­?¬"‰3ÿn‰E¢#ÿþµ ‹À0ÿó Äæ a¶XKJpÏêÀÊÊ@êá9RffT/!3þßÈá~ÿç'¦/ +pÿó Äç +!N®8b”qPßàøØŒĤ$欚+¨«&ÞT dgÿoØñp`ÿ3S)µBÿó Äå þ¶XYÊpÛÿûŒ %(ÌЙAY‹;xî篞3ÙéÿóJßßÿRF•7ÿó"Äè +yJ¡˜{Nqÿú¸ +€²€\,”—ŒiHàn]:úÁôþ·ú”dAÿþ¦¢jã1ÿó Äæ Ù®XaÄpÿü’5!,€P¦Dï@e¤³¾j72n U?ýÿ ¬J%ÿúTN)$ÿó Äå ©cNpÿñÂso\P‘°A 6ù¡‘Œ*LwC@ÊÿöåZÄfÿý18;ÿó Äç ©®8J”pÿY0DÌ5hûjýnk­|Èè·oÿÑ ‘ ‘ý¿Þ øQŽÿó"Äç +QJª8KTq/ÿê3.xP8LJçž°p®¯Æ‚PI¿ÕýÔn·ÿÐs +ÿó ÄåéJ®8JŽq‹[ÿøá€&úÃÊ1rÙ +&‹(bæ+®@ÇþŸå@ïÿújŠÿó Äè +AJ¡˜cZqÿƒ Æ8M â!gY_xj%ðð{ÿþ²¡ÇþßÕË€¯’g›ÿÿó Äæ ÉFªXKNqëQ$jà〰 + ŒÈ6Íâ=Qd@&'ÿ¯ù@\"ö= Ô¸yãÿó"Äå ú²XJŽpþ§ÊP”‚Ê;5λ&!ؘLÿþ€áB‡ÿ]ÕD?‚Ö1Gÿó Äè +9J¦8KTqÿõX +ÚC©mÇíC§·ã¦9œt +ý½ÿ(*Ž/ôúPÄÿó Äæ ÙJ¶ØcNq/ÿþ>% +Ö€`gÖÏ*¥|*½ZùÀ$KÝè% + ÿþÕ !~ÿó ÄåÙ²8JŠp¤Æ?(Öpî>ºßžËUÔâßÿ²4U`ØŸÿSªB1 ÿó"Äè ùJ¡øJšq“?”dp`«Ãðfâ‘X­«ë ¾­ÿ±q`A +>~¿J”±ÿó Äè +J¡˜JŽqòÿÿAùàBèŒBoïÖŽ¤óišÉà ,ÿÿ” dÛï +Gÿó Äç éJXaZqß– +€&H°Ð„Ÿ2åÓIµ¢¤.¢h±µ/õÿ0Ä›ÿ¬Èh ÿó Äæ ÁJª8aÔqWÿþ‘u €(È`<>Ün²ÂnëÙ0 +¤6ô,¯ò‚aGÿþ &ÿó"Äæ +¢XcTpÿÿD,ÀKøô|äõAS•y;?Ö +ä?m˜|]ˆ + dp±únÿó Äæ QªXKTpƒâïýdÀ +hÀx +M•,½Î(R¥l}âAþŠUÿQébOÿùçäÿó Äç +J¢XKTqÿÐ *üØq‹‹Ìu]nl›2[Ô I~¦oEzB7öc;7ƒÿó Äå ¦0IÎpÿÿ c¬(ØÐ`î$ˆQ…"C“z3{]vópWôSòÞÿó"Äç +!J– KZq¢bõ…@afpF&")-ÔqeÊùÆëÿñøfLÿ;£RÙ¢qÿÿó Äæ ™N™ KNqüÀ¦ß@Àq,JØÓ‰wá„(/<±ëoê¯ýGC/ûîꦾ¤ÿó Äæ Ñ®xKTpÊ/ÿô& ²è@Ôg@XéÅÍ:ˆQ­7q,nMúóÿèe”3ÿü#ÿó Äå ž@KTpÿŠÿÇ°÷f‚á/ãGR‹Sÿ§ +êl³†ò 1{øs¸&ÿó"Äç +9F¦XJ„qoQœ +Îu½@$¯h¨¨P \D(0`&¿Äp† Ž ¸Ð›É\9çÛÃÿó Äæ ÑšX1Jpf–»Z++v*vQd@0¶é¨âJ%ñ7ªUƒ aÙ« aû†[ÏÒÿó ÄåáJžXH”qLG[œ–¿^=+‚HU>Å•À•°ŠMÁlî5,^š: -€(†ÿó Äè +YJžXJŽqkÅs'wbP'pX¦¯Í-ç +™»¥V—vŠkKEfiš I¥Ùÿó"Äå @ú®XaÄp›¿UHa­ÐɃúqEÌ +ƒÀõ0c¶§´¸TܹÍC-ÌÐãöÿó Äè +™ +­zpß|ÒÓ§˜{*»½/ +»çÈ %`›Š7‡[&æÀ‰SÂÕrHjÿó ÄäNxÞrqQ¾úH@ÊŠö ýb€Ù&€¹á^•@k ·û?ÎèÆÿó Ä¢ÑB±XzÚqºÁµ/Ù )HU@L")°4CÍãíѾ( *.S"ð€ÿzTj¸ÿó"ĉ ‰Äy„p§íäÿ¨`Wýõ‘@ìEE®¢ödbA¢¡Hª¯×ÇÆüŠ%éÊPnÿÁÿó ÄŠ ¶Ñb +Lv§ÛÖ@¢¸˜`T険c†BVþмŽ~}íB¶ë”z³ôaÿó ÄŒ ºÙ˜2 +LÌßfÃÿÙŠ%à™ã1lžk3dIŒ()ß qýµwoÔ°¶ï¢ÿó Ä  +Õ¸YDqÿáGO³4‚ôPÀh(|låÑ¿l#W]Â"ôÙÐÈþ@Äm¾ÿÓÿó"Ä’¸ÞÀzpþUäÀhž„ù[š-uYES¬(L6³îã¬ÿœßèÍþa^ÿó Ä— +Á6јIŠqИ1~î÷;«Â+MŽ3·x(ɹo¡þœ¥ô7PNªH-Ú8ìÿó Ä“ :ݘH„qPãGjû«QAÄE7kGŽÒ¢~Ò +=ìýÐM½®ððgŠ­ž2Sÿó Ä• >Ù˜IDqOYâ1Öùw¹"f +(ÜZWz¦é»PæÝzÇ/Ïï:ñ }o&€ÿó"Ä—éȸyDpý=¿íg˜`°ä$ï«=Wë +ÝR%q²}¤C“¿Vn¨'#¤Šÿó Ä›ðÞÀ(zÄpúü.é<\>ˆP`ñFkLëô(­ +½Ðòƒ_üþôËä +ÿ{Pÿó ÄžhÞÄz +p‡‹,ËÝ?3l.×kÒ"8¬³)e D0¾¿‡}žßÑýbÿó Ä£ +a6À{ÌsP`Ęñ%ä'ñŒDR’n¡Äô6êWÿ! þ…ÿ„1}êÌQ@ÿó"Ä” y +ÔÈyÊp`í‰éá+(×Y˜FÒJ)SUBUþ^mFôÉþìø`R€älö%ÿó Ä–ù +ÕJpb‡â:i1)½òpÚ þ–X ­¢2vÁct0™£è€ÏÔÀäÿó Ä™áÌ yÎpˆ .ó6—ÇåIJõ5vÎÁ¸Ñ™+¯­;3ácç#ÑA`€chj¤ÿó Äœ :ј`„q]p§Qу ÅàPJ8ôÛ %ÊY¤µ‚€]F;«¦³*ÎVÿó Äž Ä°zp¬€§þÿ܃DUµ)÷´Ïà·é¨j$šS46vÕùS>O5¦h¨ÿó"Ä  x²ÌÈ1†Lê„[ô-u+æ€j€Ä8èÆ'F“F•Z /©ÿÂ>æ•‘ŸR²¡Žÿó Ä¢Á.¼¸{Æqó¸³ ‰U%ñf%g08ÊTƒ­EjOOêk¯ÈJ{kiQƒ§ïÿó ÄŽ ÐJp5²áŸibRŠàÊmÑ]œ°›“w>9?½÷€v¦Š£’½ôèRñ¨ïÿó Ä‘ÐâÐzÎpBÒh‰-H¡Á¨-*`!ýýH +ýîáÍø%öÆM™ßè€óa ÿó"Ä” A*î80„páwÅQ#HÓâ¥aŒ• ]„‚°ÍQúâÎÉ<ûõ¥å@L¦0ÿó Ä—¹ +æ0„q‚öjm¶ÑÁ‰4N6I§^ž }ü3t^3ûB®ˆÀ†‚Ì$Hÿó Ä›ù*ШYŠqKÈ #M˜hG8×S³Êoêß¹Ëú?†oè8nÌ'hÍ@U[!ÿó Äž ¾Ð¨1ŠMï±6ê¡ÚD÷oП¦M9ÁU@‰ì€(ñ¥1å…0ˆ^:2 ÿó"Ä  X¾ÈJJLôl`A{%AÚDVÒ÷RýL3+,H€¢<(‹Oöœk ð¡iÿó Ä¢ÑݘIDpú¸˜+iáúæpÍÛ«jÏS8ˆ ÍXݵb.ì¢áuÃn[Õ˜Œÿó Ä¥©*â8H„q–öÕ;ÓÕ›ôOÜLwƒàI +Àê±E[ƒ¬¤øö8ñ0-”ëb +6ÿó Ä©é +î8IDpרý[Ruð雨Wq`Ò +d3t "Él›ª^!„æâ]šÅ÷z‚¯Òÿó"Ĭ 1ÌÈYDpÑÇþ:7ýPƒëXÐHyàul?%‰í{i›F}Oqr?_Íìtê'ÿó įñÑpIDpïÌm=…:Ô§˜öº¹¤ëµ“=pø&—Eý sû¼à?_?J¢•þãÿó IJ  +Ì8JÊpKù†&¨è¢·c9™»ŸƒÃ*•rbLö| NÿATÛ•?P¯üÿó Ä´áÙIDpµ€€€K7KCáÕa£¢»ƒ^™ßûÜþ¡Ö³·ï =bjÿó"Ä· !ÈZÎpQ=áK +‘Q<¥K¨mÞœã¨[üy³ŸS +ü¡RIg;(¬ƒÿó ĺù̸JÊpÀ¥É Rµœ-\ §.G÷ ÿC¶ͯ‰ +Aú€| =ÿó Ľñ*ÈJÊq’X„ºn.g³IS…Á¥$–.£¿âøßå~eÍÅHHCyÿó ÄÀ &Ì[DpøTY'ì’Î\¼®<<ãŸ@™¿‹¿¨«üNA`&CÑøˆèîªzPÄÿó"Ä PâÑXJÊp9.T´Öºÿÿ [÷-»t=5Iÿ\¸#¦*\1¬£.Ãn4]>ÿó ÄÄù&ÐØIÎq«|?‡·ýjLùüE>žBß©N°â:ðong]ØaË‚%¦ãÿó ÄÇÑÙHŠpïFÜ_G˜ã7”;¾¥šÀƒ 1P,v î´ÞšZâ×u8‘ÿó ÄÊ  +ݸJ„pïúÑ ±¾´ìÃó>ßÌÝÃ`ä(ò?3iBCi½hJÍ£Ç÷ç²N!ÿó"ÄÌ¡ȸJpí¸zàS¥ðSx"A“ÃœµcË¡`^ꙕœè§UuNêm€8¾ÿó ÄÑé*ÑPJp±œ×ÕùSü°@Až€›5¾‘UJ{¾AgÕ·+ÚÚôòÿó ÄÔáÄ JÔrþAÅ„úÀ€G@”6ý™HJî- â&T<Þº›`ËüôóLÚ“ÿó Äæ ±ÀcTpÈC½A¡>o .ÇN\³eO4¸EÆkûkj·ÿs\à6û5œôÓ©ÿó"Äæ ùÄXKTpò±ºd À¸:jpclc/&æ˺b +FX1wõ°Lþ¤ +§‘™»äÿó Äæø–ÀKÚLd:Càa¶ +üÅÊÆÕ—)1Ä!î5ø¬Fm>ßôÌÛù‚?¬ù}ÿó Äé +9 +Ä8KTpQÓý`š›ö?$Ö×õg´^ró ÝÆÇU¬9¯ë`’{n\^·æ|ÿó Äç +!ÄPKTq Mæ+$ù5¶IáÀ²e)ÒÜšlˆkŸK<‹ ¯ò§l÷Vµ¿~“ÿó"Äå Ä[Tpþ£@K„ +MD‘ªÅ°Á±pC:FÖ*¾Ü3_˜~h{TÔÿó Äè +AÀ0cÔqAìO¿@2Â7i¸ moÈ,ÞGåCg-¹àìÖªòÖs<¯ÿó Äæ XþÈðJpøûrÀð8MðÈ)÷º¹É“&ù²]¦šª}Îüp»"{ù…ÿó Äç Ù.ÀiÚpfƒ@Á¶e :©øiýšÓí{H—~¿›ôw§ž7lÛÏ,ÿó Äæ ¸ÞÀÐzÚp†Éù, L”|«ÈEË]Áâìê·r¥ëwZ¦½gP·~Äùÿó"Äæ ©¼zZp¤àâðÀØý@… r0áéË*¢»†D(Øå~MwÐR_RGÿó Äç +þÈ8JŽqø±¦Y JN®lƒË¸,s+ÔáàÁ«îp×£è×Ö{þ¤=Àƒñÿó Äå ÀÐyÎpPG¢ñt|¹Ð§ -"äà +i;å†G<[`ÌßšSüá‘ö·Zf¿ ÿó Äç ™¸{TpæàA–¥÷G]bìö+14ã\>…™õÎîãM8ùnžvõ¥·˜'õÿó"Äç ¹ÄÐbq d¦Û¨ØÀäj>Fy† q‡ätqˆº; +ºu͘¹Ž«øáÉÿó Äè é¼Xb”páuÏŽ ˜”‚ç:”ט\Àt«2’†ô|ð5·Méýùí½ÿó Äç +Þ¼¸bÚp£ì]ÎMГ‚×DUÉø¾ á6¦ZiSS.pÁ•V¦ +ã^ SKõÿó Äå`ÞÈXaÔp»„Ù¨´;Ø&KY Å×GsÎæb´Öš9Á’ÙÆÜ&§¶mSï©mÿó"Äê Ù*¸zs¯±™®€€À˜'I+3Ù£…ˆñ[ú6 &à šsO¦…ÿó Äê +±*¸0{Zqb¹Sq®B:0>I»E£8m7*LÄ)ÓgSݯÛ*zÔ•¿’ö4~ÿó Äæ ¸âÅZŽqº.¤È€”/`=ƒ­àö¾Î‘@N™Ð_û0NéÜ›¿CËþ`ð÷ÿó Äæ á +½paÎq ù5œ…rEblÀTA„€1_€*›µ&ßÍPà cë©­ßOÿó"Äå 0ž¼¨bÚLÊ*þ¤Éô€*,ܬ‡‘žÿó Äê +É.´zpîÛ90€œ?x +À^¢SíIÅ*¹Pŧ¸ýD«æºp6yþÚ}kܳoÿó Äå žÀ(RŽL43Š$ ÆY¢+·Ñâ2°b5 +8õ,Í OZI@ Y>P¡ÍfÔâÿó Äè +@þ½hzÔpÿ•p£` N¨¸ZÊÜl}è"g(hˆj¥s¾¯tÂhÕ¶¦Vúé%ÿó"Äæ °æ¼yÚpüÙ™• À866¡#`x_7àù?\G"°¡Ÿ«£æ@êó7AÐtÿó Äç XâÀ¨aÔrR[Ž…Þ@z\ƒ¸‰ö`8Kʦ0wõ_N‚ý_aäÿó Äè é*ÁðITqÆ‹hn°„@¾ÝŒ6 +FK#œ2Ž®ƒ­§4Ï™ätîqßÿó Äç ðâ¼°bÐp©së™@š@êµa¤Žs§ünèp¬36SÔïÐz9 ²oؾc:!‚ÿó"Äæ Ù¼°yTp—µ(ÅØ€¶Èåi' +‰àùŽŽ$‚Ú7NŒ† JÌ8ÝCoÉÉÿó Äæ ‰½HaZpX}ê€ÀÈÔJ܈¦îL*—ù$ënÞÆ1ÀeÚ¯ž=K³ñãQ*ÿó Äæ €šÀðBL ».P|Ýá&[u–"Þ£Î3&ÅРµÿY€ˆÇßbg«z˜“ÿó Äç +!ÞX1Jp—©9&¡@ M"ÀÊĬ~·Î–Q¯ž:u¨Poí«ÿó"Äç +Y*Áxz„pýLê +€81Üã’ˆq;Á“{ŠÂZS•&ßÁÓ7ÛTèõB$Aÿó ÄåàæÖX1Jp@&ˆp ¶œÃÙUVic˜“CÛ¯çInÝÀKýç7|Ãú;|qÿó Äè ‰° zÊpÔ±“ A!çJ½+Ms‡s%X{(ˆn`΄ë©Ô_êâ aëû±÷ÿó Äè +I +° ÂpèaÜ87P@á˜Îv&ÏÚîUZÊ75@ÊD F3ÏÜãÕÖ€3ÿfýEºÿó"Äå ¹pyÊpþ Íˆ„ªñiÊ0º—M¾•8ðe‘©~mß7¸9O星RÿÐÿó Äè +I¬ ÃNpªp¹ÊÃ`²´8 ¡@r*…æ™TuJ°\eöO¾T"·ÕÛøã~ƒ¾ÿó Ä噸yÎp rrA/ynµLž"†á#‚E«B]ÛÙ4™?Ž=@í÷qVÓ ‘ÿó Äé +2°{Np”]¬PL„cöhåEsƒyíC]@5ù=*µÿêü¢›¿ ìÿó"Äç +)¬0{Jp­TÿD€@PÈ +Ñø¡¢øüƒ[„{eq‚ëÔ%üÄên*9ö± ÿó Äæ €æ¬0{Jp9ÝY€ G çöQMæë°£{ìa‰Š*üÞXð-ýÜN¦ Ý´;ÿó Äç +°øbÎp, +pÛµ€<®f¢ðØ%Ž·ì–réiŸaxS¾gPyø—ÃtÄÿó Äåa¬¨yÎrıP˜e ÄÒaÇ‚$éN +…ôްƲs“ÊT봬ʩÍDúoÔÿó"Äê +ñ +¤XÂÊpPwf²`‡kE‹8OǸðÙ®µ ·¤tpe?*ÿó Äç +– P{LõÒaà §€ž5ìª&Úmª–@š÷eqò-£êý÷M­Êÿó"Äå (šœ‚ÔL¿‘ÒP\$ø GQœux©*e’(•- 6½Wúêû(Ë–¤cj·‰ddÿó Äè +â˜ÃNpê:@Œ@@ €—]!s±VÁ|ã÷Y¡·ðàm£ñËüãÿó Äæ ‘. yÎps«¨ÈÒ66!¯Ü2ö®ÖuC4òPMó ;ú…ô#þo¢¸ðÿó Äæ 8¾”|NLàŠ{²jU!:%à„~Ëù +ýŠ(áAu+(,oà=¿’ÿbÿÌ;öÿó"Äè + Þ˜PÁÎpÔ`!¤0GóZÄñÆíLjóØ,ckVpÏê€T¿{ +˜ÕßJsÿó ÄåðÞœPaÎp¬ÅI€&à<Ä6“ì¤`àA®)„ínTnÿÀçý Jÿ<Šûÿó Äè Ñ&¥yÄp)¥4  DQݦy$Ò³S ©Ì¢äzÏûX€ +ÿËîËÚÜïñÿó Äç é”Xb„p™ß©gq!'Ð!Q§NY݆ož%Ê© v|Þ2~¾ +'éÿ ÿAÿó"Äæ +*¢zŽqòaû×aâóõ5Ï&`ìfî1 +Põ)÷C‚Hçñ3ëœÿÿó Äå¹&˜¸aÎpšy'‚@ Èh(´]xîkŠc‰ŠÜ~Æ3«c†µÕ²†eÿSß¿5ÿÿó Äé +‰•yÎp=KœÄÆ@€€¸ñÕ‡ÓFînÀù‘å€#êîÿª°=7ø—ÿó Äåù*”ØaÎq*%ÄÀ0F@˜v"tG/>”D<¹ yÖ²‡±;½wýÿ÷zgÿó"Äè +i„PÂTpR;0!p%HùrÂtëc‰Â€ (XyHÙ ‹ŒŠï`Üž˜ƒ&hÓcýBYÇÎçп*"1ÿó Äæ Ñ„¸cTpÖõ4wEbþ„oþ€’®Lèûïy)ÚÜðü+ÓÔ’žç¹ÿBøzgÿó"Äå Xâ„øJ +p)ÿãŒÔØF@ŒC ð€ÿØYHWðdŤyPÞI6¤¼§õ†ôª*ÿó Äç þˆXJ„q:'ÌOû‚@$Ø <‘Q^Âe£™e8¨6VLçl¿¯ú Aˆ{ÿó Äé +¡ˆØaÊq[{0d%*ˆàk^ãÙâ©) >»!)ïù7ô%“áNvÓÂÚúÿó Äå  +ˆ8b„pAç·‚ °ÛÔ›¹Apl°Ó†`¦ä_ãOáOAmÐCÐ1ºÿó"Äç ˆâ|(cÎqû–7ðh Ð³ðÀ0Ž0¢à#&p×ú›>ÞèÕ7£Žù@ZaŽÿŽÿó Äà Þ„zNpÇ=­«ö0¬#Á<3£Ë¡4°EVð¯¥n±Ûÿf¼%ñ%ñ+þiçÿó Äâ !:•aÄqoûJºà bðZœ€S‰jl)‚s»TƒÄ[ù¸šýþ#G@dS1ÿó Ääàæ–8IDpÄD¸qÈਇ @èª.¹e–Äà"f ‡b=Ht²}x‡ô;ÿÁ¿eÔªÿó"Äç +â|z +rGÚÁˆ #¸º)Oªƒ¹; ¼d]ÔOÌ;Üà 꿰G“|‡ÿó Äæ ØÞ€°bqJ„@˜ð…*† +ÔdF\!:œ²Ú¤NŒÙÛ©Ã]¹û»÷:Îsÿó Äå + ²‘2NM1Ш¤EH‘@OŽ¬ZPå¥avÍ'(gt-°ùˆòúˆÿ¢„þæ@ÿó ÄãØÚ‘PHÊqŽÖá0F¦'Õ¶r!¡tZ„.™´ ûÖBCûÿæÑñ÷±B}¥|2;ÿó"Äæ ù.•IDqõÍ¡ +C†7Tå¯Å%´n ëš0'úˆ¾âAàÄéÊ‘HfVŽ)ÿó Äæ Ù:š8IDqýì4¢ è‹>àåó¢¦2’G^~–¾ö_ÿ.ìV¿ðå¥ôÿó ÄåØâ€(Jp˜üÈ# } é£Ý×>E„Õ}µx‘±¯&´)V-Ó,O½7‰õlP ÿó Äè B‰IJq0¢ˆïŸnÒðJ¤¬fè¯N%—¼¬ÿ”“2 :\«¯ôÓ`Îjœå†ÿó Äâi +„IÄpGÔÇQíÚpLLˆ|Z¿ØÍ‚ƒ‡Œ¯(B& =øŠ÷;[*”Iö[žÿó"Äç ù:€bq©¾`g÷ 4ó(ÀýUëíÄúbŸ¯ûCä­ÿ¶ƒ¿˜\¿ÂºÊ‡ÿó Äç ±6€¨aJq ¬4 u LUb›´JŒMéJ`@ÊÈ€:½ô„KûŒ·âÇÿó Äç +!:y„q÷a6€‹@º‹j~™»Ô8ÉGÜMáÂÿüŸõEþS “ôÿó Äåè–xzÄL\S ×Ê_¸å€Ý U\l 5b·ù Hï߉ +è¦1Ÿ¨á-¨³‰ÿó"Äì ¡*t°y†q¯ÕC6€e÷ \g‹‰Ž,³‰C—%òDÛ®£Ãµþ1¬Nèÿó Äå Y&„ÈH„qÔL¸Ó +Pa";$’ⶂðb²?ó‡íaÃ3ÿùFÒ¬h„÷½ê…Úæÿó Äæ Á +‘aŠq3Ñ?¡ä‘ +ûe¯~tP†j‡7SA¹Àí'k3/ÎÿiÆʈÿó Äæ á&p`ŠpK-N˜?@PÂ!c1Ä€)—ªDNêu#â×Sþ?€èŠé»eÿó"Äå 9žXHŠq?AO° @  ¹‹ÑÌy‚y4èORï2œY¦o ˜§öíVÿó Äè Ñ.@bq9ÝDûJ¨'#ÞÁ…D'é h`S„ä—Îú¤7¬X_ò‚§¼ÿó Äç 1*@bŠqÀ­=µ³«sX™Ô@ÊÆéŠ%ÚUÙWî=j ++ó£ÿúŸ(ùÿó Äé +.•IŽq–$Ö(ª7È{õ “ŒP8ˆ¢¼Aµ2'àDû(1ÁLl‡åÿó"Äæ +.™°aDqК…UÐBíšûìàÝ”à ááÜìn(ßyÃ>âûJiîõÿó Äåá.H1Äq\k–ùÀ°Ãq–¡½ø$Y‹]…ƒhEÄ[B=þßÕ¿¥ +‘Ÿÿó Äè +:‘XYÊqT@¤iú³·¡’gcÑÅT’ fÈU¬ 8­ð‰þ5¿ ²è‚Ìÿó Äç + +€ J +p&Wͨž¸R +Te`©ùÀdÇ¿B€ ¶¥õ(ü›1?Œª[HÂÇÿó"Äå !€JÊpÞ³âß°ñ 9°¶ Ò­ +¯´2ûèDgôóˆ?îEê‰A^ýÿó Äè ù*’aDpämÖp0¬Mýë"cÀ@S@qœacþÍ>TCÍèZÃí‰+ÿó Äç +*‘PyJq(.€P2µp‹àY 8SÌç’µ +N-=¾ +ÜôCþ3¿˜™öÿó ÄåÁ•PyDqÕR.Íœ¤ÛƒŒ°÷‡©mð  +¡x éó³}JŸ#©¶R”è[ÿó"Äé +¹&HyÊq…a_@0 +¬ŽÉ–B&FGîœ8ᚌ}B/ÀH¿‡?äÞLÿó Äæ á¢81Êq½„ +4름iHZþ; ¨©»ü¯è(-õ Ä‘‡ ÿó Äå 1Dq¼í¨Ÿ‘†Ä·(#)èÑæqy}Z–Ð+“ðãé:–å¾ç@ÿó Äè  vš0IÐHy(æPC ôàTO‰‹z +2­…µT9Oë#|Að‡=o¸ÿó"Äè + 6–0z„q„WöÀ±š@¹qÇ’' #•H‘Ízo}PÀþ gÊs\ÿó Äç +.šx„q p[“ñ@Ü0@q(…E°™V ªj¢ Š`Ϧzÿ‚dù·nÛø#ùÿó Äå  +ðaDpêŽØ0-Lã +ëš•h­Ô‰LoÉûÈÊœºóŠ§Ð]õ$+ÿó Äç +*‰ðaJqµJÑÁ0ã iýöX09À 0íĻќ:øÈâo˜cõbEJÿó"Äæ +¢8H„që«ëÝ€mù%’@õŒ¿ƒ‡áw÷«¡ýß‘jÍÚçø_ÛÐïÿó Äå .AÄqLlI-€ø@-:ùi +Q +'Ä º0„*ü±o=Böð/ÿó Äç +™x1ÄqR r½ÑàÐA¶’þ‰™C83Ga!«Ðàßú”ÝZg¶Ô?Eè'ÿó Äåé¦8IDqâ& +äÀ··Ë”íˆàfó¦åuÛÞÿI¨—þ¡µÎÊß«[rûõÿó"Äè +i +‰HKÊpTË2É„ +[-RRÊCh ãZñ4m³Ûñ-Ñ[¥i@Íÿó Äæ ¡"ˆ¨Jq2+ÖÀƒn¦t¬½â‘ %R´Rò2‰7ðMëßd&âH‹ÿó Äæ ‰*‘p2Dq;`À‘¸üs&+2ȃ”B×U©] +â~z(eÝYÊnm_jÿó Äæ Ù*¥˜H„p¡D¯ðª} Ýñˆ í8vl£a`Ž5AFÉWŸÊtjÜlœqç5ÿó"Äå Q"pH„p´·u`Y“‰Ã¤Çˆ/ð=æ„}¢b*ÿ:ÛLçËs:ý*æÿó Äç €ÞŒzLpÛP†àfŽñ©´èµ€xÿ”—˜È|µÌëòÞÑ/+ù E&Uÿó Äè +"•ðyJqßt¬é)ØæôÀkš62 {ºŠúÂô¶cŸðÕչꪭtGÿó Äç ™ +‘PaÄqÕD€Ê^j-ÇT÷N‡mñä@ô+?Jüô¼ð¤#éœ Ï­8ìÿó"Äç +Y.™˜aDq{Kõ<,…ºQiñP¢ÁŠÊZRû1þÆm‹†óÌ™A1øø7Mÿó Äå ÒŒB +pýíPåËè`×~…0qCƒTø…ÙU¸v@LVïÈñ4òŸ0Ë$ÿó Äç y +–aÄprZ€C^äJÉFxþ@ˆËÚ@Î|îa5½‡?ÙÀ‰å+¯iÎä=ÿó Äè +I +Œ°ZDq²Û5ßhÀ&~˜«¡¶"ª³;ô{5Ss¦vM=»h,yÈ,Dë™ÿó"Äå *¡˜H„qb‚ëˆ g +>$†°<‘à|$Ò¿UˆÓvýôÝ\§š¤ +£3Sÿó Äè ˆâˆbFp9…•úì`s>@¡xˆ5*)Âl@ø„Fë&TrŠˆ^âÀƒÿó Äè +ðºˆC Mµ! ¦ëä7Ñôgs€¡‡ +E¢(¿Ø–×ØÅsX8‹„®N)ùÿó ÄãPž˜¨ÄLbuª„pž´ +Š (Éš=bízŠ­çêqßîT#7Ö‹úDälßÿó Äè +XòPzÄq;‹!@ j&Àam‚ ´Ð“"q ‘'üsð­Åv¡Ý˽ÿó"Äå šŒ(CÄL#‘°À}Ù0g¶’! €cÇ8«lÁ>OõZ>‹ 0Ñdí›V·ÿó Äé +¡ +–8I„qT×逘À‚€ -UNƒãBÓ=!DPFàÏöTLAû—úï; Êÿó ÄåØR”È $Ž~TÛí €U('A—‰a«+·YcÖ[æß瀽¨Èh-Yéjÿó Äè +a.Œy„q‡)PŒ lšä(;…àP±U +Ä U3)a,û(îò±ý:.¯–¤©ÿó"Äå ºZLLÕÛfZ€1ÊàÕ@H¢b eãUDÆ—Gþ"'¿¹5÷©ÿó Äè +a +¦81Äp¸Òàs! +pä6ɘJ¨k¸1,G~2oЬ̆ozÌ.ƒ‘$8/ÿó Äå n”2R(iP_ € À8Ãs>-H,ie“¥Ûï6þ»2+Sì^¤iŒÌ­Üÿó Äè +`nx2D)S¿2f‚þ€@<ð̵CÉ…)B²+VôѺÀ‹œ£‘b^®v»~±gئÿó"Äå (šœÐCÄLÉ÷¤€¬>IRH"M€6ÈHÈeq¼NoÆ2ÎýŸX6\Fø•ÿó Äè +!. XaDqô +é1ÆêèÅy‰N4~¸ 9£süʦZ¬GŒ ™ Ëæ)³ÿó Äæ Ù"¥˜IJqfjÅÎüþ‘?“Q· žZˆÀ¨k¿wœª1.ÜüÞÎýÛ˜4ÿó Äå Ò¤ø1DpáWVØ‘ç0dèTŠ}cAV<èqÿÊÖVëî}êÿó"Äé +Ñ”PI„qQ—ökJÀ×fja$ò*›D=Éäz¶ok 8ÎF8×OQå€ZÒ;*0ÿó Äåð¾˜È[ÄLùN° á­§!‰á¼#Jã•ÞYÖ•Ònk“ÿó±mOòvr¶òYùÿó Äè +ÖœðIDpê!¨€-ºÜñ“³$eÅÚ,ª:2“ÆÊý¹.Åe¨ƒÚwVÍ0ÿó Äç ˆ’(cÊL6ý£fu B”ë¨! ôÉ rb„<3Y‰á~øf×Ìng‘üÿó"Äç + ÒˆÂDpˆîNVƒ…ÖÙé"©át_ôa1ìæQ§yÙKÿRóó3uñÿó Äæ á¦8IDqX2¿ƒ™¿ +‘Â%£ÛRy–ˆ– (2%ŽÃ½éä©ÙLì +Ǹ˜ÿó Äåà–{ÎLÁÒ@ᎃ45¥”Ë]A(,Ŭ:f±'ùj¤v«KÁ>YùÕÿó Äè Á.”0bp‹‰K¤A%àÙ:ÕIt@0býyŒ—KS[vG‹K¹ºË¾ÿó"Äè +Y.˜aDqèXjÙY¹0Ò0hR\:„„ƒ­Èf€gµKä^W™@âÖ¶òï\ÿó Äæ Á*¦8H„q…Ҁ¥@Œˆýäé‡8éB«ÆúV¾2¦bMÀ®²æ!gµÿó Äæ Á•pbDp€$\(yQ‰4sX´E¸0d†9œ¬ˆ.·ÆD©Ø/]N„Á,/ÿó Äæ Xæ˜PaFp]Õ>ÂF€"j‘F(M‚«´º÷‹䵨ìE,ˆû‚6hqJPÅÐÿó"Äç ðÒ0`Äp]Ú6^@Á³½>,íñÌÓÅDX8;RŽ­eé_ú59¿GE1îÕÿó Äç + ê0bp²Klj+٢Є ]1 $t$qSȨ1LŠº­¯ÿó ÄåØjŒJP(®ý®‹ÙõQÁÿÀ‚6ðúzf–3ö®¸˜&I¢ÈºÙÚ)$þ§L{‘÷øÈdGòé ùÞÿó Äè +`Þ€zÄp$Ý•h€x$LJÒíl!XncŸð ‡3×EýŽïþ¡“}dÿó"ÄåèÞ„¨aDp‘WøQÀÂÂ$áA²(BåN˜<£™ÑÃÆ<îÃÏú 2·ø4o¥(?iÿó Äé +Y6€IDqAªÀ##È7&"3­Žâj$1R/P1ø«uzü£Cÿƒúb·ªÿó Äæ Ù:ˆ°HŠq£(¤¤X¸hr\gÌHuqˆ$Ku‘Aß©ðöqoK×k˜µÿó Äå©6ˆ aÄq§QìØIGÑ›@ƒ{t“ˆ]›ü©ÿÀoûCµþæQÆ¿Å6ýCŸÿó"Äé +Ñ|ÀcFpÚ,äDc$ÐÖT @õ|€LQ6+ˆë-Â>w”2½]]X¿D +ºç…ÿó Äå 2ˆðaÄq)›ÔY€Î +ç +ÜÁ’[)c‰XÚ0/é5YþO‡_l ¡ò/æOÿó Äç Y6…PIÄqäñ`@²0¯®aAÛV™qÚÉœÌÏš“Ôg·×þDÉÿó Äè Á:€aDqüŽBDôž +]€YQ£½3¯¼2‹£óL¿åošfýùú8‡ÿó Äè é.…HaJqJ6 *72 Î”‘2²²è€pmŠ`ÿ{NÙA¨(ÏÇŠx+XàÉÉCÿó"Äç É…èa„p‰Ü Ê@PÀ (!+c}Jz³–²o‡Ð3«7Ïk`ÙüŠGþVöVwÿó Äç +.aDqþÐÈ +4»U8j­€ÌEVðè) 0\A†?Õ•¬Š{ú„Ðp·êÿó Äå ! +¢PXÊp*|ô ÂG…Ì9>^ÌP˜ï² å…%÷BÙQ>ÿ³ÿ;zº‚#Öÿó Äç ±.Hx”pÌÁ ý`ª›LÛwrÜJ$wªAŒµLûk“ç7æ*€ˆÞ±þÀ(Ú)ÿó"Äç +Y*®XIDqÜ‚~¢@ œ_£› « ìÌ#†ïfüT«2qRÞ$ß½â!ÿó Äå žŒ¨JÊLÞilBнròXñ”¯Â¨*X£Bé´¼)–.ß* +7°‰.ÿó Äç ¹™˜yÄqöñ¢)Ђ +%t1Qä#¯Ô„=C(‰~+Ïn®Š¿Ð¿s7ÿó Äç +!„(yÎpšÅv¢·`¨†™»«k]? ÊAF‹Ò]d§VýGþ nÈXsÿó"Äå Y&ŒÐaÄq^]ÎjàÀÁ š”, ‘ÈD +4YSŠÕ™]ü¿æô”¿3Mûÿó Äç Ñ*€zÄq¥DIÀÊoú¦*J+L{‚–|ée2@¨ƒÆ^aû+|˜‡OEÿó Äæ ±„¨bŠq:7ªXO`Ø åp X6ˆFñ¡X>1Å9?ÕýLŸ›ÔC®QHÿó Äæ ¡.„ JŠsï¨WFÐD&±ƒ öü4@– ¢f±¬Qܵ¬þ&=þ.;Ñb¯ÿó"Äæ +!.„¨bJqåI2®5Àp‚Aä”ÕmbCpâc§‹xTÝ =|A/õú›ÐÔÿó Äå ‘ð`„qñm*B´ykWeþMäáÞæ!dÕLµóe%W<#ô  +S²øîÿó Äç Ñ6…PIÊq­Ä·t€ØD÷ˆ”££©‡~†c:µ-P7øÉ'ïÚæ +¿ÿó Äæ Ù.ˆÈKDqž÷Mñ@ ‚‘æê`"­²¥å ¡¬”$¿~-ÿ‚NîÒ=äLÿó"Äå A6ª8DqAzÑÄ%ð¾ +*ö*Û\@® d&2gª ïü@ÈÞ¥û÷]êˆÙÚÿó Äè +Q.…HcJqã¸}`˜Hò`DŒŠ’üÁº…‘U\É®îêzôE½‰ÿó Äåù’0YÄpà‡Ò(y@´9 Éò\3(DNùÇëoz¶'=ùí?åûÜ1¦Õÿó Äè +Y*| {Dq¼€¬TøpGªöÓ0,¾++°€³‰j +ËQPƒÚýøÏû÷v,ÿó"Äå Púž8H„qÍ@z÷ ‹?3°H#\ó {M”™ÃX¶‰Í4ŸÊ +‡ìÅÿó Äç Ù*PyÄp«†ÄÏ.Ȇ·O¬¥qЙà +/U×@@ +ü1-NJˆ£Y$Õÿó Äæ Y.™pHŠq¼g¬Š„<¾<’ ": ý G¨?×Ï ‹þŒóÏú¥p~YŽé†ÿó Äç +š8HÄpxGë)È€’§@W«œJ²•bÁOqw9ª­F7·gå †T$ÙŸÿó"Äå 0ò‘èa„p€yûv€€02ð»—⨬ã#¡U(I¶º q¹‰»õë ƒ1Kgÿó Äè +1 +–yDp`¥%X +7Ì'%¢Ç‚ÅAì"—Õµo’DÒŽàÄìut@ÿó Äæ ¸º€cL7?@ŽTÑÔ7m€ææ19³ð h5§Mjeû6!Žº´ ͳ!Šãÿó Äæ Ñ +ž8H„pqgþ¯ ï Äâ (‚-BhÅïr²³ÊØ]É 6./U®·S¤ÿó"Äå PrÈC I@W‡ü$Ây¨L–5¹¦/Þ·ÜCþÊå”ó×sä7$têgàÌÿó Äç +¦XIDqÉœg²…÷0V~ `âÑ\R mðj+Þî¬þuJ×V½<ÿó ÄåØâIDpC«(˜Nõª$ÅÀ`sâ—‘U +;Äç„?|tТMª6†«ÿó Äè +1 +ž8X„pxÀ~“Õ€€ ¸"Ó_–dMö<ÆagïS…?™âËNŒƒ!35 ÿó"Äæ + î²X0„qV7 ¹¹Ïü —! æ+U +‰q£ç½”MÿAOé:Ï请¨úÿó Äå†SÊHÔE®iðFÕ1×Ͳ¡Ü†Ô`y… Ç7ˆXÇ×=÷S7ĺ… +ŽÔåÏÿó Äë +ù +ÐY†qì3ÿÜÂÀÀ…@cß…8Ü2 n'v}Åù_T'žïµ4mÏ|GÊÀÿó Äæ Á¢80„pÏ»€ˆ€5hŠ>… j‡Æ0ÃØ Xô}F÷ä/ˇÁöiúÙÿó"Äæ É +„¨aÊpA9D²€,‚Óß`m»8@4€ÅöTƒ×½ÌÿÛê¶Ù +\¶:Ô©¢ÿó Äæ ÉŒðyDq3ð`X x+IÝ jäC‚€ŠŠM’Œoùt ¿ømص.„ZhÙ:Pÿó Äå Œ(aDpÁ;ëÁpŸ ð&{…әʅ% õú³&›­-¿;«ýoùƒ0×ÿó Äç +ʈzqh,™Û!ת’>RÄðä s²¯¸ ì‹g…èö™¨èÈ­ÿó"Äå &•xQDq©Y}_€DL™(bk|àV=+k?<ôŽ¥¬>û«Ì׆èÄÙ—aCÿó Äè +A.š8H„q—&Ñ*Ò°ƒ•ï—€êap–òL&$ÀÚJößÄŃ2¶ÿó Äæ ©ŒÐI„q'?Xl7^”å–PÄÃ…Ea)Xû?®3žþj†²%øsº¥^—šçÔOÿó Äæ áða„qªU·,€ÂncˆfD¸=iaU@Œ¹´Bx½­ÿÐÃ:Àé÷Öuÿó"Äå @š˜P:FM0ôÉÞ¤ÕI€öM°)3v  +ªEF=9þ|vÿ³ÚR5´uÿó Äè ù6”0YDqÄ‹  äÈ4t,1€uàî¢ +è‚o[Áyîþ@‰wN¢¥Ît æÿó Äç + â•pbpÒ·.<¨÷ö*-"tJ¯¡¨ zÉMôðMÞΩ$¹è`´W:ü‘ ÿó Äåè¾”¨JDL£€š_ê +ᬇA4Ü’*qç)2I¯³ªL_GO +÷_'T¡B0¹ÿó Äè +9&”bq0Ã||ÐÃñ_˜öAÊÛb&*º s)Yî±Ul$**%?P œJ&ÿó"Äæ + *Pb +q1WŸÿ$äÐ0Wa½Û?0,#*;b“å&ù±Å7ÏzÅ–eYÎÓ{ÿó Äå ! +­xHÄpµkYúÜ"l‹0ƽá1@ù+É}• ™,#¡Æ¬õì§èu* ÿó Äç èâ”aŠr´_´\ DK@œ,,!¤˜ž‡ÍYªiiwá uLßÈþ[ª;J™¹ÿó Äæ À”{L*ˆû<[ÄÀ +€ê¦B‰ráHaktÂŽ]MžˆÅÚ<.µ<Ǩùÿó"Äæ 辜0ZNLüÆq‚oÀÕÆ”,:›FM˜sÀ{‚93±ù +ÓP¦}ŒËÔ,ÿó Äæ xšŒ{ÐL˜×üÕ°6„éN3…y À ag ¼zE_Ä—\ט£—^âüôRõÿó Äç ÐÞ”bÎpKEùp„ƒ’ˆH œ ÜÎ$¨¥$á›Ë!³ÙÿĆӸô ëX™î‰ÿó Äæ p¾{L¾ÿU; ÀH´vÇÓÎÂÜ{é„6`ažFS%s×­õp7þalÿIÿó"Äç +Y.¡xb +qýD—} ¦h.^C<¢î."#ÙngÃk>)C%ë]GÔ ) Œ‡Vé%ÿó Äå ¾˜°cL¹¿Ð‚ +nˆ0ÔG1íèkºJ]µú23ônàìcFòµáýp ÿó Äç + â¶XH„q&¾‚o*$ÀÀ–p= ›Áb­÷Ôƒ¤"_Ktÿ=€[»§t)]äÊöÿó Äå ! +œÐbpö`ã/ˆØÌz•@£70¸]ÂÍÕû¡¶5|k€Ñ<Èt;»ÿÿó"Äç ؾ¤øI”M‚!9 +0Å‘:€Aà6_x6mbäO+ÞÔÔW?ðƒâè?,¼«½ÿó Äç Øþ¡xzpí­Î æ#…Z° 8bQ- ëJR ‰Wwa»Ñäwgþ7QÂk(úÿó Äæ 8ž”cÚLEs‹GëQ€ÝÀ錒Dù×!c0¹GßîÿžŠ0QhX^g×Lÿó Äè +8©˜JNM‰P“£Û– +Á@OfŽ§qTºzòÌúšÓ'¸^)ÜOQÐ=ùxÛðÿó"Äæ é&­¸HÄq蟿)¼9°ƒ­Ec À©m/\¥6èîÕzŠlŸiÌWÑ´‘ªRÿó Äæ +P”cLÛ)‰Ãàp±“‡SÒƒk6·8Pló“Ì;55&ì¢'jóÅ +Z™8ÿó Äã°ž¨0K +Lw'ã€ÔÂÂ0"Ás(Ÿráûö}ûåí‚=ú4ª¨ÔCøÿó Äç +ž˜KÐLcþêÂÎê€2ðú)¹æ«B÷ ¨¡[¾'l…$ÐB ùPéÚ` ÿó"Äæ +®ºXIÆLƒ3¦ƒ@Ô`£†œÔ)†Ûw…'Ñ5+ôï¿}&øO0Áÿ‰“þÿó Äæ @® 0KÊM7Ú; =Ù`áÛÅÚº….ÓY>–M/ùÏqý[aòŠ /岧³ÿó Äè +Y" JÄpCAñD€²¥¡­H40V@øÄkfÕÖ¿‡J4ç»t‡ >ƒ¥m «bÿó Äå ª¤°KL³Å›rI8˜Ððp@}qtS²äwr®£ùµàŸ¿ØŽà½OUÿó"Äç +A&¥pJÄp@‘‡*  /VÏùL X#_PjÍ;¿]ÚFÕ~sÈù¡é½åêÿó Äæ X¦©1„Lý;::í·Êåè)+”†¬£µò›ÿ¿¨¯g.úá&PÄôE2rÿó Äç +þ¥JÊp‡V÷¹}ÚÚ`) ÊZQ‚òCNGÙÛŸÈzÎb:ø“ÿó Äæ ˆÊ˜zDpæë  €^¨9Kéµ4…À—# ßj +AzÃ!nAÜçóBÿó"Äæ +(ʘKÄp ÀÐuð>hZÑÀ±£: ß ®VzðFú?¨$F~°OAÿó Äå Ö±2p¹T`#!>šJ ³J é æ¹¥>J)2¿ö\¯™·†Úÿó Äç øŠœPcMkÆÀ0è\L=âøsh¾b×BÖ&¢t¸ëiô+™÷ù> oþŒÿó Äæ €Îœ({p+9¸ä­€ÞëM[À€ˆœÔ FÅróØAÕjbsP[Ë3ûôÒS³üÝÿó"Äç +HÊ¡z +pPVàȨð1°±$ƒM±ô=€:£Ç¤ÊPÆÜŠ•c(W÷ÖŒÅûÿó Ä冬ðHÄH2µD:àÀLÈ7[ƒ䢆ÂÚkê]‚ûw¦P—æG¶ ü]kÿó Äé +i2©pIÄq`°ð!2°éŠ¦b…EJ åJ£Ü~yh„iÅâMù€Íì¦Azÿó Äæ I©pJÄqqúOû ½…p€Ñ.‰WB÷ +è(±š™Ôªí%+œÄ_ÿ·Ø™^ÿó"Äç +  °KDq mÇt +n€Àdå$Ô¶D‹XÓ˜f G»\Ÿ¾ìåá ¬M~÷±Ÿÿó Äæ ©FÆXIDq)€¤0ä‘VÙc§Va5!—YFÙ‘:^tÙ£«¨c_Ï·¡Kÿÿó Äæ Ù¥2ŠpàÞ}Æ@¸:;±¸*"}²`6I/8H\­½u°=>ÿS E~ÿó Äå â È1Šp¦F-Ç(Fõ“çýÀ‘‡ÎPPm¾|äf +ÿFAb¡SíÖP©¾Ùÿó"Äç +­1Êqµq\ð8Ed›Ö`ðÌÔŠ$˜Ò×zrœ—7/ùDÖyjP­ÿó Äç + :ÂX1Dq‡4þŒÀCRÀ;¨™BZmEä¢Ö¶Û0R³õýf7–kdÿó Äå ¨ÈJ„pq¨¨ðDZ@„BÏÔCÚÕÎ>ÞG_ +_¿­ÃàœÊ¿û)¿£?ÿó Äç Ñ­3DpÄ ôV€•¯Lbc­!£LS7·×ˆQqÈìø¶¾¨ÊBù*·ßÿó"Äæ +!.±˜KDpä”( Q@ÌÀ¥ +Pö>ÅŸ(U?§˜io¤ÿÜ/úüì²0ÿó Äå !ÒXŠp§3ñ€`V m6z錙‘ùE¸ÒœchlkC’ù_”ØD9ÖMÿó Äç Á±˜IDqñhn^pø”EÐ8cPtà€FÜ·0|ø2w\.6 éoÇ8‚ÿó Äç q¨Ð1Äp€Ð!0™Fl¼Ù+†VW8W$`·B ¥ùþœÕŽÀ.Eòþ“úÿó Äè +!œKÄp6r•Ð ã€ðQËò@Сˆìr¸mÁŽÅÞÙ*-ä1Œ)”e@×Bÿó"Äæ Á ¨bÄr¤H€€u<(i|HPHAÀ¡¡ÛñýC27u"ÿ &ôzÿó Äç ˜¢¨Ø2Mƒ­N§Û^\aöåk™ªL’Æf"ëy=¯>ïŠÿ]m‹Ð&íêæÿó Äç +!©XHŠq@ï¾~ª@”8\³ƒÜ§TBhFkÜùŽù ËôÑÏžô{=jþ÷/ú¶ÿó Äå^µ¸2D(¢Pì¬HíL„:ŠÓljdGk=¨q¥-½f˜Ä»•ß©;]NÝÿó"Äé +Ñ.¥˜bqFþ½DŸ˜{Iª>#HÄÂÿ-,–y} Leã·žöƒì…¡vMuÿó Ä刮œKÊLÀíí²€ŒÄ«€à™ù4 w!üÏü š,àKõž[þ!uHÿó Äé +©˜IDqlPmÉ–M€àˆm¤Ì +ä³È©µê7 +qÈÍVëzNšÿó Äæ Ðâ˜{ÄpäÐî} NK@¡ˆ}2­¯ƒ{‡¸REôû®Þþr·áø>µÇ”ÿó"Ä屜cqàf†sO娸ˆ )¼³KÐë´AÒþ‡„£I +]«B©Yùrÿó Äê +©{Äq—i2)°Ø(Èfa€ò/¨9 )î`È<G¦dï÷zã­gý@ÑÔ9ÿó Äæ  â˜¨zÊp¤îƒ@ Ä `4‡J8$ËäuØäõ¡ß;zŠû¾m²Rÿó Äæ €v²XJLHÊ XÉoBÀ00–ķ˄’ ¶Ú•Ü¹É­Ž×§¦¶lÔõ²]ÿó"Äç +¶XIÄp¡¯*°¼ ˆ» +©º;ÚË*¨ûPó Ô"ÂLjɓu­B*5tÑåoÿó Äæ Øb¶XJF)ò«—6Ö ƒtÇ eâ½¼Ã-HöÁгÑTÖV¯,HŒeñqÂDÿó Äå ^œcÖ(EÔiÖ{ÍãÈLÇÁG¿ÿ(EN€8 L„£»º]…’Âÿó Äè Ù (zp +¢¨¾…Kèiïy¼MÈ\dsû6ÿ²‡ÇÓá÷pH^`d<ª òKÿó"Äç +Q¨Xa„p‹_‹¼ÂKƹ=8RŒ/Z?£Ý?”£¸˜+†GmÕ2Íz¦Zœ¨ÿó Äåàr ({ÒHлGÂÆfÓÏáÙû£x.¿è'òñ €°ÀU9åÅîÓ:*4C$ÿó Äè +9¤ðyDpdÀ¸âl„'aoéÓØÑAsÝe€ ¹@à3–¨¥#­–< ,1ÿó ÄæI>”PzÐqƒÝ»¯ºp%¹±©E“Òòÿ®,¿V° +0 <2.î4ÕÛ¡±øIRÿó"ÄÓ +é.¬øyÊq@…½Ñ×Ngâvýd°ŠâXñÏðDž\º£é³é¡Œññ8€‘õyV,ÿó ÄÏñ +±HIJp}£sLjÚùxb ÚVúL1—áÃ-`„¨(Ö¼mD$¡ñÒÿó ÄÒñ:¬ÐyÄqU µb¥IëÁ3³éwÌ{KÛ¤oB +`àè„Æ oMSMþÿó ÄÕ ¢¥{Lç0¸%'ÚàÙ­@DãZa½@ÉìË€¦VlïéµùBÜ@Ö1 ³Þ®tŠÿó"Ä× +¡¶XH†q—N'Ó•´— RhÜP@‡zpŸåù¨Æ‘Eð PIó³u4ÿó ÄÔ áB¤ðzqE…x 9Á +Äñ7õ xÌ´‹úáׯG¸«º\ +j Úcr„¢Ò¹)Äqu²“,Aÿ*tÜßíB +Rj•Ye€†P8¨~„ž:üÁ!Çà–‚ÿó ÄÇ Ê¹Dp‘”…[~åþÍ@ÛD´€Ò¾A‰ó O<©¹ ÝŸêS:Ï=F{ÿó ÄÉ ú½0„pjpwFCÝý²-JŠ€‚’jѤ¼‘‘ƒÑé4–4ßá¶ç×_:Íøÿó"Ä̸®°KL@3¢#œ‡ïè!õKëÁg1ð8<£}ùG©ýA”#pòºÙü +܈îToÂÿó ÄÑá´IÄpÈß÷Óõµ"€Lˆ&8D® %~–ÅóØÎ;yJ­YÙ ¦Ç ù6ÿó ÄÔ˜þ¼ÈIÄri€Þ½YÅ©•Ê%j.ó“mƒ“Û@W{›U•,ÝòwЗÿDúÿó ÄØÉ:͸0„q€u„˜PÚ:‚Xš"YÝ #ŽÄvn®.m˜ý +þª^Vÿó ÄÛ ú¬bÎpû¢¨pIp€¡2Q‚D‚½…šÈ@ìïpÓõ¸Zå6ÉoJ†»«˜ÿßËÿó"ÄÝ þ°¨bÊp›ýÑ•H& `q 2¢6KZÆäÇÙ–F×C¿3*|*g¦Ä=›n ÿó Äà :͸H„qÿYC .nš=Àáù³Báãƒú´H,QÁ1ŽÚ"(pe­LvÛÚÿêÿó Äã ª¨ÈKÄL^ßKñX€nÀÆà9÷MB=yJ7F%x1=l©µ[ò9ØŽ¿ˆ?ÿó ÄåPþ¬ZÊpù|kÂ@!Â̑¦À:GP'Œ‘\y¶”%úuþË\oÔC>Ûº‘zÿó"Äê +a:±XJÄqïTõOˆ/ƧÙå‡îycAšzñÇzÚßÛ_wÀÍ¥Ö½ÿàÜÿó Äè +Y:¬°ZÎq»–ƒA#@â4!_'è¥Ãž#S 7óê×ÙK?àÝ} T鉎÷Vÿó Äå ú¬ÐKDp²€yº`‡D +pAÀ"È‚Z{\ƒwÙ‰ïÈÄNˆ7ýðKð£ÿó Äç + :ÎXIDq2öÁ²@Ä!¨‰+D"…ÇçDƒÏ ÞÐñÆïBøËÆ_†OÙmÿó"Äå Y:ŸIÊp›ð£õzÀÑ­‚bå61J«6!ðÀ|°WèiÛÚùñÿ…6ú è»·_ÿó Äç +þ±PJÄpB›â€1`‘Åp…sk(ɬå³Å›Ûø“åÇýVá'Bÿó Äæøú¬KÄp*0#ûÍcÈ*®‰ “a§ñÁÀþ`¼¬±=y´:h·À Çšï/ÿó Äé +`þµxJÊq^£E—ÐOÜîÕþ€»î/ê A©ÏZ öü*rz +´;JØ[ÿó"Äæ Ù"Á¸1Dqzúšùý¶Ö…pP"dˆ»)6DX}åÛ~´‡°qµØWïÅÿó Äæ ‘µ˜JÄpZdý`éãÚÈ»Å{ðLB1r€ÎÎ×oqðH7f“1&?áBÿó Äæ ɤcÄqü‘wîŒ  œ4v‡PWMƆ +I­üÌ>cvœKÆÿüóLÿó Äå +©cÊqC—v¹;P½›I +d%|\Jé Ø +‹ß¾-Y4¶Â™SÅEþTÿó"Ä× °JÄpdn‚‹ˆp{&VÖ§QÂÎ΄#Š‡Š°p‚O4‹¸c4·?Wyÿó ÄÛé¼PIÄpÚÌVòNÞŒßèõ1²åÀ2;cµµ3øB¼ †ÎøˆÓÑæÿó ÄÞ ®¸PJL¶…ßñNÞŽi^P¨å%ËŠ€M +`(zR?« +SjØÚíÿó ÄàȪ¨{ÎLxŸŠRüºi€‰”:<@áA„”c•-ߨ o0,6Vé’>_Ãÿó"Äã +@Š°ðJDM•ÿ«ð“ßèŸé…Ì«ŠŠ&ª/r= Ž(ænmHÆëÓ }ÿó Äâ yJ¬8zJqÑæW<ù¹_ÑvÔ…­[/¨P™ëèՠ΀QdÑײœÁd,Ö{ ÿó Ä× .Á2„p:S«€ò¤SýÊãšÃëþ¨*mƒÀ@ !NÌÈRõ#€ó¬†¥wÿó ÄÙ â¬(yÄpò=²|óÇíäOÄÿè=‰²;@ˆ‚Y€úCdfÁp~Ýž¢§°ÿó"ÄÛ 0Š½¸H„LÁûŽÍÈè"v¸•á°‡Q˜ÅÙ‘(!* j‚mœévq-P•ÿó ÄÞ ‰F¨0zÐqÔõ4ØH@Mî´¦z€Ä`P(À(M9-†JQx7Ä5ÜÜ3söÿë.íÿó ÄÖ +QFµpxÊqC)þ +Ý¥@&Å…ÓÛuÿó ÄÜàŽ¬jDL5=ù.ˆ²`܃ˆh«ÐD +ë7âþLH,ðâ£ñºƒÝ~†ÿó Äß +qJ°ØJNqâ`ŽÛ ü÷w­Æ6Óû½A_ÜôÐÕÑ"ú^ó‡¡Óµ4lÉ»½¾ÿó"ÄÐ á +´bÐq¶¾wôƒ#çoía¼¸ŒÓ +qɼ )Æ/G(] e­zÖï +§Ð”ÿó ÄÈÈÈ1Dp²µwù.`½PØÁV›Pˆ±SÀè¨Q0×—½êgm'[€Õ>x[ÿó ÄÍ ÀJDp[0T§U@Éþã†ÆV)ÎðÑ–å™À„ÀFŠ*úùö§lM7ˆ£ˆjÿó ÄÏ°š¼bJLvzòÀ °± Dâtæ2'A¡EáB¹e +ÊÃô*ôfÑçPw9}ÿó"ÄÓ‰ÍHÊpZ­Ò!ŽaDkñç#dµiL@+Rœ›}†Î×á/ë0è¿þ¸6ÿó Äر +¼a„pú» Í(2Z\’æ‹ðÁP.ko\׿£†xwn˜F¡úõÿó ÄÜi¼Jpx“Ýè¨>¥›¿œáDíQQEYãÓÌó¸‹Iü׺‘ôOT>ƒê¬ÿó ÄáØ–¸cÆL°@ +nu©¥Á8fÌcy]¦ubÙïÏiÊZ½‘ÎgÒÝD@©Cÿó"Ää Æ´z +pgr‰8 ú23@ÐR„:ù«Sÿ÷³9ü7ïAG§ý®3‚'èÿó Äç ù6½HÄpˆCÀX ÀÊP-ÇÝ(â4ÈÃàŒäG5›¶¦+Ì +7 +0ÓàîÐeˆÿó Äæ + :¼øa„pˆåˆ€5Îbe¨Üh²ÙwŠÃ_ÑŒr*±^´1vû¥Ú²ŒÛÇÿó Ää q¸(Jp÷f;fºs²rOß4ÂæäÒatÃñÐåú² ¯ßT;„H„æŸÝÏÿó"Äåi +¸aDp¾ôݵAš÷ASITMÕ‰ž€u°8÷mŽ!Y-øV›Wj*›UÔÔSÿó Äë +©>´8bJq/gqQ"þü*œàcê@< ‡Ç—¹7…%æ鯧5_Í3î¥êÿó Äç é:´I„qÔÞÆ®øÂÒçÚz cš5ÄŠaBªaáåŠ@”5·yu†Ì>áŽsÿó Äæ H–°°y„Lêÿ[%ý1×µê¹è:…V?±B¡Å +hâÑë«AŽ÷üÿó ÄçA& ¸{ qa¼¯?ÿ4Bbk3g á39ñ@åÇu@S'2p¶EÀ »48ÿó"ÄÕàâ¸`Êp”-Ö“ )š‚Zv:_Л…“— òT’ˆwô2ì, ÒL˜êQÆ‘‘,9±‡,c$A!Of°ÿó"ÄåøúÀ¨JpH9Íß"ka ःI6ÌШe$ºLx¶K{–Žþ. +1š–ùÿó Äé ñ¸¨bq(wt/ݾ‚=è‚\8©-<çå"=‡@©’÷ÿƒ§tNµk†oÿó Äè +!½X1DqoâÏ&Àa™*ìªÛ¼Mlª¡C"à\÷;÷ÜR+®`…Ü¿£PK"{(ÿó Äæ °ÀzPqû"°GZp&ÏŽ ­#¿m¯ì‡V RBஎ¯s¤V˜õG‡–¼˜ÿó"ÄÜ ©*¼¨1Šq$4$]r@?øIŠ? +1Xœ% ÀIê§qn§•EeRTÂemk‘ªÿó ÄÝ ÖÅpIJp41t²„!}#?á ¼p£Ð”™X~^ÌUšP5BPCL;Ð3ÿó Äßé¸J +q4ÙLðfh?©Ô/rn?s°µÁlåài×B¦`]#¨‘©>¼:~&oþ·è1aeéÿó"ÄÔ Pþ¸°IDp½ ä& Ê`ò„iP¨C’*Åà›ùNc»ÛéÍò… @ÓÖB:@úDÿó ÄÖðÚ¸¨INq9k”z–áÜ- (õôBŸ–{E—æÌ—‰ˆoç*§ °ÈY@³(ÿó ÄÙ9J´¸bVqMìû¢5@êvI½\Þn¿ÿH+7Ÿìºj2ôMáPE?& Íïÿó Äà +IÄapE†x½îzógi±°ÐÎ|÷aóˆ¯ÍBvA6u¾T„€ˆC‚Eìÿó"ÄÀ  +ÑpJ +p ¤ÍŽ$r(G…1&:†ÿÔ)÷‘!-GÞ däA ËÅx :Jÿó ÄÃÑá˜(ŽpK.# ñ±mþÍmRïè3X¾ü)À$² #UɉE:þ ê ÿó ÄÆÑ +ÄJJq1œ2,Îbd}a[ýú¯þ¢½Ÿº·ø!†ý…Ž[ÿó Äè +a½xy„páTžæ†v<`U Zß FùÕ>mÖ Î÷ˆÿ×ÿì°‚ÿó Äå¹ÅHÄqÁUɵ–Õ‘à÷Ò(¿Xjè kQF5_¹|Lî­Éf/U@&ñ + ÿó Äé‘6”ÆqòHõ/ªõr´±‰ºå½™Å‚ +\¢P./5'þ»Ã.Èá0B@¡Ê÷#ÿó"ÄÁ +æÉIÄpµ¸Æñiá1¯ö5E +zƒÁ¨&Ù*¨ý¬ “;‹öM™¸K~Ö^ÿó ÄÁ ĸYÄqÙV… 4›+˪û=Ž!3•W-Z¦÷Æ+Ä"¶µ£à*.oò¶Ïßÿó ÄÄé +ÁpJp"å‘›D£èõÒÐb記‘ip”Hš´pÐÓ-1$T†q¿£­°ôÿó ÄÇ趽PJJL7tô7é‰ê°€¬fÔF]´™@ûóOÇ3 ´<¢¯º¿ÐÐÖqÿó ÄÊY2¬{ÐrX ÁUO2W;w—Âf»Ê.IÌq1ÊÝäm^wÕßÿ%L.n_€©ÿó"ij +ÈbJp3ˆÃéå˜ço +;n.û¸å°eûEpÀ”Až§J6ž«($ðER<)“ÿó ijéÐ(I„pÝ^ä + ¯€8ã«9fëÑ,éÁxÄA³Â‡Ïz€0Tw )Ýÿó ĶA +ÌZpx²çìK„ga#Û«=ì³úÿûšÛJ@Hœ8¹’z#$üŸÿó ļ(²ÈaŠL¢$&©†ÃÃÑôþƒ«?múþ-D;ë2È|ÁR@c‹Îé!_¦oÿó"ÄÂÙÌ°aJqA^ë»ÇñûÁ6sOKõû1 Ô") ¢CAø“³‰ÀXo¸ÒßÛn¨ÿó ÄÆÁ +ÈyDqÿHvè<É/=ÿ_‡‰7ÿ€UtÁV®^˜}ìæœßœFX^íá?Ûøÿó ÄÊКÄ`„Lj¹“ºŠþ×".û€%ªÏâ`Tát'•qeŒ®‚ü@òXKWÿó ÄÍ‘Ìðx„p¼æ$á;âè†@–Ðåq¾Šº½²7Ql=‡µ4•nûF-ÿó"ÄÑ 8þÌðIDpJs?ë¯ÐL.cÖ  q2š p¦/`Vß4¡òŸ³½{ñÏ" +}Âÿó ÄÔÀzDqZõÿè"tŸëâ®)I +î&œ¼ÍZQeÁÚïâœR'¡_†3Êÿó ÄÙ šÍI„Mh@ß0NÉã7Y'¬gù}/$ÄÈ{ö·ç"ÜvQ±Ðçš>©ÿó ÄÛ àþÈÈa†p|¥m¿løŽëÌ2©Ye†ê½’D_KlÊÚ«îûè¡Ê¸¯YV «¨ÿó"ÄÚ 8ªÈÈJDL:¹ E0j5‚BˆDH vÛª…ò_iLÅÿg-[ó†ô€çpÀÿó ÄÝ !ÀbÊpâÌ£Œµà™ØÄ#]¨ ÷juRu.Õ 3ê¾båÿ(ÀãD”…+ÿó ÄßÀú¼JJp· ŒkÜü&°B^_–þË\«œs#PÌ×”³¨`º0аº„åƒÿó Äãø®´JL ZÈKC;n€i eåmQWÔÿèq³ØÏê@³U0’zÿó"Äæ6˜{ØqIê†5Ç'{–'Œ +t.\·=$±uqAˆ]¸FŠx\³noÿó Äĉ2Ä„pQ¦LMèö¢á¹¨" 0Ì AmatL‹hCJfÔ@hûÿó ÄÈÙ.Ñ1Dq‚À…ÖQÅTÙ¡ý?õíD‰øøƒY0ݽ‰ø(Àćˆ@hÿó ÄË ʸI”p° 8]M€Ígúve°? §öÿø5Ø‘PŒÌ-ä6êB¢ÿó"ÄÍ þÅH„qJ–ÆeQjÂ/çŠÈ"(;§üSË@ÀP œ@À’}*¬ [wÓÿó ÄÐ.¨{ÐqÖX9ïçáOÝ\Ú-ÿý Ù¼R a†àóC߬~ZW‰!×ÿó Ĺ +É.ɘJqáöŒS¨fÚ +çD7ÿàÝË€”,ÅÔ5ÙCÔáŒâïÆä%—ˆ¯ïÿó Ĩé*ÝDq·©z¡_§Ýœèw÷ #€äœ5ž´Ò9'Úê}7˜!øÓÓÿwA/ÿó"Ä« Q +Ù˜IJpîVª fÑ©ÂçÞ‘b qµ@$èc\©ˆ½I ÔÎ[éƒÈ?ð_©{«ÿó Ä­é*ÕˆJ +qé ÏÕ(½€Ä ²v LqfŽSu„þ¬šÌS\‚¿ˆîàmÙTÜAÿó Ä° âXIDpÍ" ›*›rÌȕÎ#Ù³!Ž'Ø] +bäSW`~ðƒK:õØ ÿó IJÉ2ÐÈBqüÇ 6qGÖqDF’ëÕMïo÷¾¨ +õ¨CêS·ÿÐJjÿó"ĵ Ę̂1„p€}°àÜdiK)q]ÎÙÝ¥&Ëã´H7XåìùþPýQ*±¸ÿó ĸÉ.â8H„q£aí]”3aq®átQ9h•î‡1: gßÓòQDEñ1€!!ÿó Ä» ÊÈ°Jp0‡+?+aU1Íà©ic‹ï—Ò8Üúÿºvóâði†4 \ÿó ľ .ÉPHÄqänn[QAË7„&£ÜD/WóyÊÍÊVëúç vÕŠ@€R´¨G2Éâÿó"ÄÀ ÅHI„pÊ^ŽW¨€åÓù¾ ÛT"Vÿ®¢¢0«ªÐ*¼)J$‚ÈŠEÿó ÄÃù +Ì°1Jp÷€‡Õº4„„N Ö¿--É¥æl;øs˜âv=ÞÈ‘~¾êá…Ç ÿó ÄÆáÄIÊp21ËAã¸Ê=̃cq—åŸY› 3ç§ø4è„Ô _ûŒþ+PÀ”ÿó ÄÉ Ép1Äq@„)I¹ãjglàáŒTÆ(j9F‰Šÿ"m¢hÅðIûÔß×=aŠ“ ÿó"ÄË Y.ÅpIÄq8„ϸ–›†j†Ø“·Ëöø+ñÀ/( Z€ÐqI½FUÿó ÄÍ .ÉXIDp…nrZ›$¯,~Ÿ~§7—Ì„a„÷uêdŸ +4¹‹Sy¦öÿó ÄÐ&¨cq›rIvŸ°( Ç|¨º»ž•ø¾‘o°è”×ÚРTÏ)iÀàz`>!Pÿó Ä¿! +ÄJpR#—$‹“âúÝ2[KWg¹ +¾š¯å3§>‡£m~´T€LðDÿó"ÄÅ 9JÉp1Dq5ö°ê‚³Ì)Ê~Wª„<äÑB‹© ý?]JýRà$œåôÙçÿó ÄÈØâј0Šp8^X5X÷¹xK‚ +àÔ| ý‘ÿèAoñbtêLÃ鋦ˆñ¦®tÿó ÄËÀæ¼YÎpŠ¦ß^Ÿò@hr•ø}m_Ó_ð¯un¨°ü€ùÑæA7•ƒñE®5ÿó ÄÓ Ðâ´bVq-»ðXÞ]>ʦþ§ "~èø† ’PŶGE† …g(7š¯ ÿó"ÄÊ +8âÀK +pègÑ÷°¾­ÖtuÔøº€!L5´Æ Í$/îèúóäUèÿó ÄÉ ÔÈIDpƒ;€KDÐÀ‹õ3áñÀâ8€ÓdAJ¸zƒ +ØF7ÐɃ,Ö±•‡¼¸ÿó ÄË +Ô¨J +põè–ÿÉÿÕ† â‰q—«€À‰²«²2*ºA +‰3½Âõ¹^~‚ÿó Äб +ÙPI„pƒ¸ü;ô€ +& ø"áüŠ|8šœôw¯Å¿Òå ‰fýÿó ÄÔéÌJDq‰õ~†$“#ÃJ•(ŒiHV‰‰y…¤@>0”:o £7Š%O +à¸ÿó"Ä× âÔ°I„p^Q©oÒ`ÏxƒŽl@L£Z#b?–\Opj.áô9‡Âh÷è®ÿó ÄÚØšÕpI†L½XÂÜ_½ ßГš,4ÉAv»ã\´ìFzYÔþÿHú®Zªÿó ÄÝéBÌHÄqüy«¤Ý~g§ï,À€`.àâ¸&ˆíæXýú +_ã{ÞKÿó ÄàÐÚÌIDp¿eíÛnß­8B –ƒ;ÉǬ”õ.¸æ¬G”Eàß¼­}1ÿó"Äã 1>Ì8H„q4{÷ß¿÷0µ@—°RÁg‹IMÒ|î{g¨¿5 4oN%ú·˜;ÿó Äæ °–ÄbPL#D—V@à ÈLŠü:Ð@)HÕ*q[[Áyì—òDÕ…Œ +ƒÿó Äæ 9>ÀzDqÚ“Ï7ñPî˜LÕ(šÀìðÌL‚r=ËãCÜ”û4ÿ(Ý{‘ÔÐCiÿó ÄÜ BîX0Äq¢Ó`À†…–L”¸Ü,»e‚Bþ^ÖnrÔ­ô‹Za GìžNŸ8ÿó"ÄÞ )BÙ0ÄqUŽi“Ùð,ðå¨lŸ ¡ÎäôŸÒ–ƒ·ÉÑ%Ez5ÓÓO¤ §Ëÿó Äá >ÑpAÄq¿$h@`€€ä Z"k8k!IY!ÜËG:ÖÙùÐRÝ.Fð’¹›ðÿó Äã Ú¼bÄpƒýá0Ðè8ª62+š(R/j`ÀØj5 +ÚðýÔXƒy²xGýÿó Äæ ñј0„q7ï~€ÆË1¦Añ\% …á8›YÚ§|CŽ4(•Öå|É]+ÿó"Äå ÄHÆp_½þFf9VÐÚ7ï‚Œ{Ƈhy.›=ÄCFkB怓@³Åáû Ávù’ÿó Äè +YɘI„p®ÛuEZŒg% +»ÅŸmê5öïì=Ýo»+ÒÓAóLù™çb +HcXÿó ÄåñÕ0Äp @ö~<­†=mM$…!Sãww0 *Çm4œ‘™FÕ™Ôë)Xÿó Äè +)½xIŠpA„" ÌiYÂfsK·›ÊÞ-h3°{ÌqR¥o$3ùŽaœŒdw6‚·°© +ÆŽ¶ý@ƒ¢„Ð;‘thÿó ÄÑ +¡FÉxyŒq:¦– è¤ÈÇû9¾ +Ç~Çò ³ ô²~õ ‚¡éš–0 Œ<ãG‚1aÿó ÄÁèæÐy„p¦^Ú(,JIøÇ¿ŸØöý37WצL·ò¤ç}@4äeBr<¾ÿó"ÄÄ @æÙpJp3o)¬"ŸõuóR/?_öÓêÈ¥_õ!ô€âÌ-PREƒ…l¼Êÿó ÄÇ`ÞÐbJpa;† +ÜÒ(hŸE7ýÖyckj¨ÁC<Ðþ–5⬽!ž}nÿó ÄÌ ŽÌILl!A³ÔíqëÅÉÛR +·adþ€ Ì—0дS‡‚‚c›'Äšÿó ÄÎ +xšÝ¸IŒL%¶x^ý'¶êüëù'§€ïŽ“ÉàF0Ç’.B@ù†Gõ„/ÿó"ÄË YØÈI„p’çç o •ž +?j¡ÂÏ«–ôD3°Áp£ȤÐ8ˆêŠÿó ÄÍÉØÈJJp—­ryqÀ,ò\ðû?ôGÿEK`0H8®GB¬10QŒLÿó ÄаæÌJÔp,Éj¨¶M+m˜‹õ`RÍÜ toÔL9 jhÕVÅ2a+Óÿÿó ÄÔ`ŽÌa’L ÿ!ȉ°L]¨¸áN]ËÖ}'Y*„4â1C¦Qä.áBãÃÍDÈYÿó"ÄÙ Q +Õp0„píAßl\ú¾•ê“ “©ñ€å,'6acõ4XÈ“ÝN~ÏÔ _Z†ÿó ÄÛ É¼zJp¯Rÿz#Xž«¸ +rå XJR3žˆ}:[)mSDµÓÆ•.šýÿó ÄΡÌJq9´0ßáàè (6ȹÔƒ†òAÃý¾Ç®”ŠŸêŸëëõÿó ÄÒøÎØð1ÄpàŒ+¬8Ãà "INŠä9Ö`(áùt51°è±¾"Û}Ÿþœÿó"ÄÕ 8¦ÐðIŠL ËYXÀ€ b=4]V¬|‹ä [ô¿ãyiçBÂ…·X7ÿù>ŠÔÿó ÄØÙ +ÐÈIJpèÆíD:‹öN’A!Î>™†ç;yiëÃ9>›/ݨb¯“3 ÿó ÄÛ +ÈJDqOÇ€A:f£)yÁd†•0Ø}"_Ìyûø=à¶:Ã`È®óIùÿó ÄÝ(æÌJDq“â“åBâYæ<Òg©ÊM[ÿ*è&$),2Êg”Ò7º°“}±”ÿó"Äã 9 +ÙXJ +pÿ‡·Î>ÝÜ#Ø Oâcâä\Ðú"ª)Œ5™‚_ë1àb5÷ÿó Äæ ¡ +Õ˜1Jp‘þÀûvq-DEEx†åâ ŠÓ.8´ù˜µ¬MÕ&ß7t3©lS5É™?ÿó Äæ ‰ +ȸI„pº»L »Ôzˆ€•]B>Üg ÊÓÝø—âršAê‹'â%׫ÿó Äæ ÀI„p‘ñ ¬—©`ä°4T K,@wFJ½ã\ãï$&Þ½ýÃsŒÍ]!¦ÿó"Äè +¹F´({Îq|4&RoSPvqq_&pê=rC¦Æô ýÁ²Â2÷®].žýlúÿó ÄÙ æÈJDp*¡Ñ®ïæ@Íèiîv«êUž$7+ÀI[d›_ÅJUê|ÿó ÄÛàâÈJÊp\óÚ¯¤S8Õ-f& Äi¡v–-4ËnÇ‚¦p©KÑC¾´å:õ(ãÿó ÄÞÈæÌJÄpÆuéËÑd•…tÓa­ ´®áe¹3ÅKiÛa§ÑÜC}X;:„f'ÿó"ÄáØâÄbJp +7$9 È^Š ‘Ñ5¸¸ÏÍ¥îç‹Ž»QÈc;,¡Ä·ìpÿó ÄåxæÈ1„pΊˆ´€À=b¢éRÐAÐÞ’ð²»*žUfh*ÔÖ1cŸYäŸÿó Äê q +ÀzqP€œnˆcPÚ"R¼â£[‘’|r7=˜m…mioµ´fÖ¦Ýÿó Äãð¦ÐÈ1ÐLz™Do0ñ5@`vØÁ­§Ä„ÁQƒ€e8  K±¦`Ž”su~ÿó Äæ AÈ(IÄpZ r€™®:ˆ¿ŸÂCP5*w…&]˜ä8à&)ÖÌ,s¾{Púÿó"Äè øÞÀzÄp‰oX¿³ÿ'¿¢@ô"Ü„Dð T» +…pˆQù”¾ÏúÚ! +ÿó Äè +HâÀ(KÄpÔ<>W3šÅç6“¨óÁ7’Cƒ©Y£ìÍN1zxhqþaÝÿó Äåh~ȨIŽHö`·ÝÓœâÙÂ`Us¿BÅ‘¬,A >‡(ì +â#dä.Ÿ#çÿó ÄêQN¸¨cÐs£YœfQ~\%ÜvÛåŸiCƒ¶9yá{ìöú$Ò‘‚'F™ÛÐL Üÿó"Ä× HŠÚ82 +L¦PHƒüxíEh bÓ4˜ààn¦q7Œ.{ÂÃrp€{¿A½/Ê,jÿó ÄÙùÚ1ÄpŒ*zÀdà +‘¤ÑXÇ`ø™%˜~É 7ãõ+>7- MÈÿó ÄÜøŽÒ81†LÛÛù‡ Àa³tÚ©˜€s¸S(yj9®>À#qãéÈ¿´rk™åÿó Äß þÀJJqaeKêÀœk–iJ29^î¹MÁÿ¼ÿ Ÿ¬ü;åX€ÿó"Äâ +A +ÍXIDqW¥aðœFàÚh é¸z9K9¢Vä¼À9ónÿ3·­Á¼±ï©ÿó ÄáèªÈJÊLŽ“ mÃ[ë•·/tK‰í‹›P¶q$s·í6<‰r·dîÖ/Ù"ÿó Ää ÈIJpn;ß^&3 GjÛ-#®Þí²dLÔKÜÈôtóph'uïñ­•îÿó Äæ ©JÑX1JqômE +€+ÀÊFíd,¢o ÝÎçóLÞZÿomú™ìt5BôïB¬ÿó"Äæ + +ÍxIDp§h“‹ÀÁ º/\(lx¡¯¤Ègzô6Må’P~\3%AG „ÿó ÄåàâȨJp$•¨`”¿\u0*„±»H}ðŸÊæØ…æ¡ÁFäX. ,­¢w +sÿó Äè À¨Jqå²#ÀÀAV:k<3¥BÀ +=ó…½ j=ÎQ˜›3µKþØgëwCÿó Äâ ÈbDqbGqŸàÀ¨›[€¡×Þìv™E¸ÅIÝ…µµªŠ‘:›T~#ÿó"Ää Èzq/AÎ'e€ÒÐJ`8¼µ ¬fââª(Ùy0Ϻ¡ÿÜ^½¥ÿó Äè +YâXA„p†¹P ¥87Ÿ,³k¡ã] +ضqVP2l"-¶Ý?©×Eô+bÿó ÄåðŠÕ˜I„Lê%xð :CµæbðMm’ EïŒTªÐö•@°ýð„jeÁ,rÿó Äè ЊȰbPL¬&—R +gš›Ý˜Êæ×ÞÞÌþß?‘¯c¿©M†õÄ™¾vi'ÿó"Äç +ÎÕp2„q‹ö,A¨ ÔO^Ò +K=’g㽇ê'¾h$Ö¥oC6R»6ëÿó Äæ ÐÖæXIDqƒ~º€Â§¿ð°†Ä!Mdl×![cîÔ†‡=Ô\!ä&‰¯rp •ÿó Äå ! +ݸIDp¬ÒËÐ ?ðé)²‹ p}Ò|ÅoõêzƒíoÅI"Qb®Æ¥%ÿó Äç +! +Ú8IDq ò`„€»@ѧ_Û ]Ü+ÀÓ«:f‚fj¼íú8#V^ð¦ÿó"Äå 8ÎÄ(yÄp ‘`ù •–0n!­ b_\Ü—|ÉòéûìÆé˜upNʾ÷ôpGI~ÿó Äè +±ÈÐzJp¨T€P @9‰÷"$X6ñEåú—ÆsÏ +¹: ñÊdäÇÿó Ää ÑpZq …F.<õCWP8¾³Á¬ Ÿ +bñ:¼ß2óÚŸÿXcŒÕViG°/ÿó Äæ ÈÎÀbÄp`w+­ìÀ3°Œ! ŒX_áÜ”}Ã[6϶þ0ð±G–wÿó"Äå ¦Ù1ŠL€hÐ ‚a»™Á}zq{¡üý‹ðth)¦Øÿ‡F×##´ÌýA6ÛÔJÿó Äè +aÚX`„p•Î\ó„+Kj] ˜vöœ3ª–¿Ûª2ï<¿ã¦2þøÏ/ÇGêÿó Äå°ÎÄbDpv€À$*´f§!‘x¨”YjK»´åŽß:ì"Zí¿eWòÿó Äé +pšÑ¸JL»#ˆ:çA®P˜ É8RňòcXQñÑ0Àij²Ç²¢g(ÿó"Äæ + á¸0†qèëש¬BÀàÏ£>FƒaNb=bò¡õzüžÏÂä§ûÕ•ÿó Äå8†Ñ:JH‡Ü›;°êѦ^@IVyC·LçpYxØ­±Á€ûÊÖ?<•¶Kÿó Äë FÈØZDqС+˜&HbÐOK»·ÙÝTF‚£k˜ˆ>´7ÿÍœÚ$ùþÿó ÄåЪÈÐZNM¢:“ŒýBÀÎÄÌix ‘ô8“¸ñOæìá°×n"S,à`ÿó"Äè áFɘIŠqA@¨ÐH»t6*&“ïFj "¾#–UIÑ9Œ¡Oè«’Îÿó ÄàøVݘŠ$EW„ÅåZ3Ð\•Ãƒ[HæÀê‹"²TÝÛ,€g”÷d›ßÅŸx›€Ãáÿó Äã þÑ@†q:Ž\UgÖr§ê:öi€\ŸÈm`ÕQ¿Q@ðÔ£™³wœk1žJÖ *ÿó Äåx†¼I–H ¹­‚¶©Ú€à~Wz$"qï˜-*?Sþ¯è³1Œ¿nÿó"Äê ªÁð2NM:q‘Glõ€lÿ;Îb6J“u!Œk!m‰ãL\Í!Ù¤Áè³rÁ4ÿó Äåèrâ81DH$c`~Ï„°Ã—”fíËdÄ+ÙÍîdäu$£3é-Z«¤b¤« ºÿó Äè Ñ +½XK +qÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€€pÔ2È¢×WÄꃟÿó ÄÛÀ†Ä[ H„íFWmU÷°¬K#1¯êh¦yþ=.1ÿ½½mF½è¼×s‘@€Hèÿó"Äß ŽÈÈbÒL +€5‘ +àèk„99Çã_ÃÖÐbwª¡¿þëv›?ùœ‘9’‡ÿó ÄâȪÑqI(åf 2qŠû4ÊÍÝÙ†•- +}xÓwß"ÍÚûhÀ“?Àâ´$r(SGÿó ÄåL‚¼ hJ[-$C“ßr¾‰Eå„f“È`¨é¥C2`$-;X¨‘AF‡ÿó Ī JȱÌ@³2 +T±¸$†lXóØF0Lv«RlYR$yÜ2°≯¯¨ÿó Ä ÐrÐÈIŒIþdH¯„ý×–×þ•©K E½Ì5×/­„f «± 2ܼ1rX ÿó"Ä£À¦ÌcÊLœëá±3´Þ€ ³:@éèÎéZÈù­æÍ Q'ùÙþ±å¶çm¨ˆÿó Ĩ vÝIŒHû¾Šìª5 ýqZ×Äßn+¹ßè´»úTÕÒO7™qÁÃTÿó ĪðŠÈ(aŽLV&?Sì +ÒñÄ‚5©÷"¬#(¤õf1îX›=ÃFïoÐMOÿó Ä­!¬ÃÖq¿k÷bàk¦„áÜñúYWŠ‹F~¯.¯ ¾ëÜÉÐƒó¹ÿó"Ä AÌyŠqcÔ€À#ð²2@0F:(šÎå„7S2.o +æC›ç9 ËŽ^A™Žÿó Ä’øvÔPzFHõ€•÷1?SªH——µx…Õe“d¦4øj¥‹Ó/|Ÿì{ÿó Ä•تÈzLL txdî-Þ¸îàÃ" a³ÑÏÇ݉CclöXP°ÑbæJ™Ë&¼ÿó Ę ÞÐÐbDpdIösÐÔÌØapãÒÔŒm•>mÎ!u€8ê¶B2¡D†iÈÿó"Äš ˆ’ÑI†LŸF{[³TÅü´…êM'dÖ”‹­D&¨qBËšãõžŽåBõÿó Ä›±N¼{qE3¹“Ö î–³(¶Ðæñ¼°Rú"$"sÒg`•£´.wP<Šjÿó ă X®ÐJDL7%”tŠpû›Ä@”£ãgÁóÃÀ¨8Ä\æs†Èšþá;°®¥^'ÿó Ä„8šØÈIL^P8¢CÈÿÐPfWkb‡–«p«¼€¶uz!_k7›ÿó"ÄŠ¸šÐbPL§ç;ÙN™trF°r'<*é +k™AibˆHu¸Z{û,c!ûa!ÿó Ä ¦ÐZNLj´5'÷k‰Ü =‡°A‰`!ÒEb!⎠4òÿ·@¹m_›™T±ÿó Ä‘øšÌa’L¯èÿU7¡W€§r ðñt€ñøÑDƒ™3†ÁÑëó?ø]Â*qº2ÿó Ä” 8þ̸a†pËMŠ 2Ã+°â§ÒÂμܴq^žpþO2aÑU”:<ÙÞÿó"ÄŽàžÔIŒLö-ÑÀ>”¬;d™ÕCŒaÓ°ó»ê³E!þ8g(åµVv¢iÔ %ÿó Ä’ .ÜÐ1Nq@9`ä ð) ¥MTÐkŒ*麄dvQBpƒpMÐÙy èÈÿó Ä”øšåIŠL »{š÷WB=¸ó/t—EdÞùLâs¡†ÌÝiú}v§µ’ÿó Ä— žá1†LÀ°ˆà3¨aƒ§„ +éí +ùÎÿ„:8áÎ+CÞÉü¸SÁ¡à€ÿó"Ä™x–Ô(JLL`}AÕÈäpúR q†»>¯<\çLêsÏÿËú)Þ}Š$øñÅÿó ÄŸ &ÔØ1Äq‚s2qì)FŒyáß~6÷#þ1ú¿?Käú?”¬/eùŸk€ã¸gÝL[ýÄZΰñ œ$œ‹œÿó ļøšÙI„LE,ì_¾|])ô¶Ißxzäu)Õ«Qa?묘<€1ÓÅ)Ѹÿó"Ä¿èþаa„p ‡¹J¡héIÿ}”|­§µ9ÿㆷ܀ŸùÀmË‹—º©¤¸¢ÿó ÄÃØÒÐJDpScè™Ý²î;O4Ô {Tsl¿ÄÏ—òÿó"ÄÛð–ÈzJM¿ØãË? ˆ´E#gOH‰µ}=&g¸£¼)VÒ‘’_ÿTþèþÿó Äß`šÈK +Lí)CŠIpS‚žk +4‰çs‘ÂùáïúSq^?ÿƒnÇþÿó ÄäèâÈbJpû‰ÐTÑXu‡¼cžÄÑÒ/*òƒeÙÌà•Ú§vþÊ[忶ÿó Äç + *ȸJÎq„ÝP%ƒàx‚c“ +‘™ì¸€zP6¡ÔëûòMü2F•;¶›]™³äÎÿó Äå Ì°I„pCp£s@Únùe ÐÂmµ2 qL¦!á_›ýÛ*õN•cØtÿÿó"Äç É*ÉHJ +qwS™…À€”ùaƒ„xW$‹é O¤ys%cï•ùÍ÷¦´åÕ“ÝÌšÿó Äç +!2ÀJÄpº9ÿ¡*Šj@ô¢¨ãÓ”¬NŽÎ`D¨½bZ¯N¬.×6®ysÜÿó Äåù*Ñp1„pùïOü ‘@üÄX€€ˆy6óÄð#ŸPì`Çì3Һ콵_ÿó Äè ©*À¨JNpšDº·\äDG€ýn &IŠL>„V â¼E¨¯‰·€í£~öµ—ÕÅŸÿó"Äè +þÅPJpôœmA¢›ýB™(„P‡KÃü%ÌëïŽüf>¬£v±æÝ&6wåÿó Äç ÐþÔøHŠq*Sýó>°ñŽ¡ƒaI™Õ²åÕ Òú–ˆéHž¾Cy¶Éå{ “ÿó Äæ +ÐúȸaŽqð‚äeâP¹˜œY°‚pÕY[rH/:Ï›$$¡Ú¡ú3úªdÿó Äá !:á˜1Dq_Ÿæbï@’@?@~bg&-1üìš|&Ë¿Ej³”ïÉŒ`ÿó"Äã @þÄIŽpK°ÐéG Âä•ðr¬1Œ8±0,B7+h1»•‘ºöB9Y7d'ÿó Äæ Á*Õx1Jqšw‘ò`äƒèÅ´ƒ/ +*Žæ"w7Gî¢tŒ¼Á]•?¡”ër3ðÿó Äæ àúÀZTq$¢Ò´qáÉYÀñṃ‹Äþ¨"‹ôÌÙlI¥ĹAÊJF¼ìÿó Äå@žÈBPLS¿ ¤ÀêPéÅÌE¨‚?iS†+{¯ÚÿoÑf¡÷] iAÓ7eÿó"Äë HþĸJTq2‡ìÓÖÒ€Ø%¨PÊÎ,¤º™UQ › F +æª[òˆu«ÿó Äåàúݸ0Špm`¨@8à1 +À@|i’7¨nF?š7ˆ|Ú»­\ÓÈ×Ãèÿó Äè +þÑX1Dq¬Q¼ä ê@ 0ð X1¤Íݳbú¡57ƼÆ|Íá®áoØ‘ÿó Äæ Ù*ÉP2Äq´}· ÃŸ´‘úpŸ‚sL¥œE+MùTí±¸}Œk›Q7e· ÿó"Äå ¦ÀZTL£§ÓÚd²œô ÇI2Vt×ìÂ08ùÆu Žm§”£]IÕr—Eÿó Äè +XÞÍxBÄqÁ&»‡Úü¹YF@òˆ.¶?Îç*[:Z‹ÕCý¡³¢îÚ¢Rnÿó Ä嘚Ä)ŠLYø×0ð(vMàŽ‡Y RÄ]ÝœûÄ™uÁ¶¯Î~ç:Ïo ·ÿó Äé +™.Ò81Äqî®Cx4Ð`ÆÀö1k ‚ u +ÄJ27ªá6ð˜ÍSšÚvuºÿó"Äå 0šÍ2JLº˜êù„ˆ”@Ù€};Æ Œ:Œ©J×ù>ëm³²_ÐHèËTÿó Äè +1*À¨JDq?XÀ@ +¸©#c +4kå1F‚Ãvd«Qÿiïú„ +ÇnåÙ»»ûŠÿó Äæ + úÀ¨2Dp]ûšÑÀˆì*Å+”w +/ˆ[ÎèefHOLBy7¢N*úÿó ÄäðšÄJRLÃ3Ùܨ·:㈃M"pä,ú"VOï´ß‰A¼œC±Ý +>ï£wŠÆEÿó"Äç ù*È°ITp@î2ÙªDó/¨€$ICàÉTOÃK…¬‡¡Åp-¦ Û?/€ózB<ÿó Äç +*Íx1NqñUí@š² 5@ÊàF'TÁÜÐf€Ô ¼;G™yšR’O;YaâScÿó ÄåèúÞX0ŠpÁC·(@¦˜.–bHpåR‚X1kÂhïzWU =Ü¿ÿS®–Rÿó Äè +Qɘb +q¬\®Óq°(Dlè +¨á:ƒ“ ×/¾"—Ô;öðƒ'Ø]Ðÿó"Äå a*ÄðH†qÂèi2Å$­ )`P¤h<-vðQs„V€Âø¶ª›ü,¬ùÔÿó Äß hªÈÈJJLQ  U «Ãy€ä ðëˆW½yaB‹îTÎú>¬~ÿéeý +ÿó Äà˜šÉPJ +L£jšýo¬;(ðñ3¬»ö+öŒ…&5®°¡ðû€ç§â¯¯åÿó ÄäðBј1†$¨çȺ·6ªšˆÒH«¤EM!«úhsr¹oÿó Äßéå¸1ÄpùAÃà€H("oHÛH'6•l@whÌü»[Ú¬‡yKÉ` +Mpf*ÿó"Äâ 9ÜÐI„p:ÛØ$$"óBh›4ׄåœ&”žïα–3ô +Mì6ß^ãz‚ÿó ÄåÉ +áHÄpÅû¥@Ô«ÏR©Ÿh…vÇB‘&Yú` š0j·‚0•Rò£58ÿó Äè +AJå˜HÄq€h€@ˆ¥¶²xå²dUÜÌ»í«úeÙþ|ìGJÚõAnÐÿó Äæ ± +ØØa„q#Ÿûª©G€ël˜ 4PX¼^¡Ì¢tí¯Âîµ"d`vn²üpÏÿó"Äæ i +ÐKÄqü@„:ésƒÊ#R}ˆqÈãE–Õ“ÄÏÜ„ƒ&Êå= +WTvèŸèÿó Äè +øÆÔðJDp¼í·ƒpò·>3»iŒ>5Wb–°pæPf|,UÛuÌW7Îÿó ÄãæØJDpE@€DP`vEÅËGrSÍ?þ ¥69±Úo{ã•ã{©Ü¼foË™ÿó Äç 0¦ÐbDLE/ú› ÀA–;š3¦jë.i!Ÿ­û¥÷Ÿ{ÜK79Á¿iÉõÏÿó"Äé +É +ÑXJDqúƒ€DNÞÔ"ðçp6•ôÌ•0hèµ)ÒKgñ—°÷üÏþßQ¡dÿó Äå¸ÞÐJqzçA e hó[‹qŠ1§ "–³i!Íݨ+)8'm^§z¤Ç×ìÿó Äé +¡JÙ˜Jq@OÅ@€˜D( +E ’#y¸¨z¤pž~W±¯áÀPrhAácµ!â‰ÿó ÄåžÔzJLã\»r¯QÓô$…–Ŋ쓲\ˆ±Æ;2zÿÑÕº¥'Ôÿó"Äé +aÙXy„qE<´Fs@ˆŒÒ*\Ð|k5˜åó‹vèøçHÞê7]wÁÌÿó Äç +!ݘY„pÒ…;”€} +T€dÇÄ £$ƒPtÊ£Š¬þ{¿팕¹Mœ¯ÿó Äå‘éHÄpþU3‰> ”ð•8:.°NÜ}âOM¾sNæ¾üT˜RƒK4O+êÿó Äé +ÐJpλԀV¹ Ü5såjÉ=|w¿¬B6ô4*lUö<ýJ18D9͸ÿó"Äç +ðâШJJríïjÝ ê¢›í(°€p”$â†Û”^„Í’”F0dü\7»¿í÷`ÿó Äãèâê1Dpl•å¯rµóÌ,¯¯ì¤Š}ìbSq ÁÌ1©ØÓ’’,oÿó Äæ ظJpj5²ñZ ’Âl»žÚûc±z8{Ùù»Ýod¿;W'ÿó Äç +!ÑHIŠp¿Áb§z“„àŒLŽÒZAc¢+!=çÛ +ņ ¶=‡inÎ¥;ÿó"ÄåøŽÐbLL¼Lï*…@áeCÔá2¤ê°»H,Î0œA›`&&®27äÿOÔ®í+ÿó Äé a"ȸ{q*#(÷`’œ@½ŽŸZÔN-’ô„Ñ…‰ö%бv#”+ *[¹C*«C*3ÿó ÄÞÉ +ÜÈa„p³”žÛaÈ ý•$—_8œb†´½QªØUΓC. ñºh\SOÿó Äá òÐy„p›_ýÖâ¼·€Dã@t& 1Â9[4bìÒªsÕxçJ–íûÿó"Äã 9Ü°aŠpüµwmEÒLHïT,3á’mÀ]2GBxÊü÷þE²jC¶ò±Ó ÿó Äæ 8®Ða–LÈ©×è'„”ÐÐñY>WiÒtÒd›cøßÍuäecQóò?£ÿó Äè +1:ÙxH„q»Š;¬‘ÆÖ1È ˜ERK|4Á²b‰¤œþ{5Ÿú}A‘>ÿó Äæ +ñÌbJpQpªÒ„.`9e!d÷4  ­8ÅÏsÃ]0?é«C*ÿ¥ÿó Äá ÐîÐbFpzøãÌR@T‘^ý¤€÷pÌt±ƒ~b¾,ÄÁ‰õ¿:ñÛeÿó"Äà (îØÈIÄp!VဆA¥è¨ + +C¨”t¤ÙH!‹í¹DƒþB¿#ПŽ³ÿó ÄãÀîÔI„pÞËã!ÈÁ¢*6)ê^YʤF™Zá÷öO½<ì§NåWý‘[Z¿ÿó Äç +!ØÐa„pà]×,ŠDíŽ-A…HŽ•óGR˜¢$~WŸ>Àèþ¯ú·«Èÿaÿó Äåáé˜0ÄqNU߀ÀåBº+ +ItŒJ ŽaÆ Ø4- èþµØö„öÿó"Äè + âé¸H„q0^éxð  „ „."Ôká·Í£p¡á@6á3˜KüK4+«þ+¬]\–ÿó Äåà¢áp1„Ll‚4÷V +¶þ@Œ“¬ˆâ +`ÑT,üÍ#‹­øŒµÔuuùGÊ<ÿó Äè +1 +áx0Äq–©/¬àÔ° €>=‹ƒ!?¦¸ýq“wÓÖÚÿ©KG(¨ÿ«÷3iôÿó Äæ ±å˜I„pÝ´ªê +ÀÙBaçƒ1¥e¾-"‚g¯–° +¶ý¬ƒºD.uÿó"Äæ + +ÙxJq1ßXäxnÉá1bh·7f¿Ù´ÊÏàJ¥ÐàŸðån”÷¤(ÿó Äå ! +å˜H„pÛˆÑyˆ ì#NnqBX ¹Ý'†bMQóo"}(l’íÿo…ÿó Äç +¹FÞ8HÄq[úXÏR@”0äAT &‘£äM&»¢JV ÎÏ`ÏøÞh&_ž{ÿó Äã°ÎÔJpþ £z€š+X¾Ž‰J•là1`¹âĬuSNÕX>$Ú@C?|ÿÿó"Äç +QJâ81„qßõ {H€H”„V5´„™L¨£í&ã$¨V]DWmÑ¢>“·Ôÿó Ä娮ÐALC×Òä•…à8Å¡¶TÖŠåL +œl1€!ôªª9[ô*¾®·ÿó Äé + +ÙxI„qW º¯Ð”L!¤¸Òæ×Æ•ø舲ãÃh©{Ù§Oxÿ³F»CÒZ/ÿó Äæ á +аJDq¨$Mºé%é€=e!´NŒY<°^¢y˜àB©Q…Ÿ`¸[Súßÿó"Äå QÝI„p£¿éÉðñ.qÀä»9CI64ÚÒfÄÞêvþ²00L¶¸¾ÿó Äç + ШbpèŒz(¨€c!b€yAÂ&ÓÃR[#3w7°E÷p&wñE7°ÿ6ÿó Äåù +ÝpIÄp†ú·Æ€Hp9äƒ\AeJ­>5ñ·Üæþ{%¡ö_%Q­Ðÿó Äè +9í¸HŠp;eÀ"ÊÒD0&Lu3ðø–(•†¹Š8³]ï3 §ù[¬ßÁÿó"Äæ À¦Ð¨KLo¢t´BÓi$!c|}8âmzhÃJù¬Ó÷öŠboÓëÿŠÿó Äç +ئÌJJO6¼¿ØqÄ~Áœ2ØOŸ\›¢Ç»‹B5:¾êß|ó ?ùîÛÿó Äâ°ŠÔ2PLµˆ­ÉõÑ5×"€˜ê !´'ŧa`.¹™gAõ2/a‡ÿó Äæ É +ØÐI„p{ªÜòŠJ£’ôAî]y]@±~}'¸ý“O†>4›äaƒ\¡ÿó"ÄåÑ +Üð1„qå®ý¤•ñ –K‚åÈÉWBK, 6õB5Qt#K%?æ¦ÒÒ³óÅêÿó Äé +IJÐJqùÒº`9=¼ Œ0PÐ@w ^Œ×‹«·VÈÔÈíÃt¥Râÿó Äæ áÔøIŠqàÓâ8ð—!HXáL¯A£$C<†qBzu\þõk'­U-ƒÖÿó Äå +ùÙpJFp—tŒ#zP 8é¤2¡‡–°BŽt‹˜VHÑèè®1XÉJÿó"Äà 8¦ØÈIŠMW®!$Ãa’áríx*Ü(aÆÁ¤HM› q0ìÇ>BîMîGlÀŠ™Ú;ckAÿó ÄÚ òå˜H„pOo†G¥Ëˆ Ìj5aú ´ÌÈg"•ó_1çvS©Ó%aoÕêÜŠÿó Äܸ¦Èc L +Ò½ŸìÔ|ˆB6ŒÍ.dò„”j—(κþk:êí¨ý%ÿó"Äàè¦ÈbFL[ÓûúÉ=c7*-J—juÌÊüœHC‰EXÙùmêîß›¸2r,ÿó Ää ÆÄa„pñ›­wP5á‚‹¥lë#V±yP]3j`ü÷qC•£@ˆý( È­Nÿó Äæ ̸HÄp:»Vî • `¨ò +˜5F¸¦¬ñÞxä\þßÁhüŽ.ÛSŠý +ñÄÿó Äç @îÌðH„pwÍÁ \—£^ÐîÉ_óÅb&BˆÓëKîÝL¿¬kåOUé<9´þ»ÿó"Äé +ÉÄÐa„qtµóÞâ–@á&‡Â$#;VHz7¢S·èiÔÖ‹{q ŒÊ®fmʧÿó Äå ÊÄÈIŠp¤ w‚‹'\Ñf´gbÇr¹ÃÏ t©o¯Æ‚0æUcF6öП}ÿó Äç èƸzDp…N]”·`9á v¾ÐÇÄ´³z÷ú ùMÊCÎ5GÃÿó Äæ  òÈ0`Êp%_3ªt8h9=U+RíA²0™$šÍÀ×íLôèíìÂcá‚iÒÿó"Äæ YÈXHÊqr¡ü°ü0zF$PX˜à#æ£(ú°¸•Pƒ‘ä3`ס†'³0õ½æÿó Äè +aBÌø`ÆqÓBKé HB;@“&@†W Ðl2;•TȦžÞ,;QePPÿó Äåp¦Ä0b +Lz1ìùpÅLÕÐ7•M¬ëìB³£ébŠ's¼)O»1RŸt«*Tdÿó Äê +¹ÄøyJpÍ}`¼1Òð‚𔼮18Tø°l D‘¯NЩ`f~ ­K£¨†ÿó"Äæ øÊѸH†pY%ùy@²ó¼ìèzÎVˆ‘jèÆsZÀ¥öÓ,"œKë~i5ü?Fÿó Äæ ¨¦´zVL[Ô ª¸‚» VÄSçVVÇ"ooXÓëí˜òvä? +'‚îy5Zÿó Äæ Àʼðx„p]Ûç½8á $hHLF2ºÌ§$('uôsg¦TºöÛñ8‡IÁ=ÿó Äæ  ¾ÆXa„L,~L¼6¬ié´)@îÐ']¡¢b øï–}ÍtÙSì‚ @²ÿó"Äæ X¢¬zÒL¦ïkÙpÀÆ +å‘\‡AG'/d©Û!en¯¶pï€N~èw¥ñãÿó Äè + Æ°ð`Äp ­ +:Ný„jˆ-î—ÜtQg®uÆÀñxݾsÓÔ¿Î5_30ÿó Äæøª¤zLLzï>'åЖ†$ÛÄ/èú†ct'ȓLj$'©KØ£Ïðe¥êDÿó Äé +Xª¤°bRL›œ¯É@¯a8Jçñ” ¡¤ãØ«ÒRãXªŽïšºœM`«ÿó"Äæ 0ª¨(JLNË—€;Ô .#§8 ËŒ°xò' Äì/ÚEƤÍÔùùØß°’V<\8ÿó Äé + Ú¤yŠpRíñ@ ®àHóØZºÅz®>‚ €Ý2ëÁýgèñÖ‚rW{ÿó ÄåØÆ yŽpÀŸ´], `ž±(lQE¦(… °i– :¨ô8ÿó Äè +y„pž¤âà +Aƒy”1J½OÁšÝ†_sØn zm­ÔÛ÷ˆ1Ò]ÿó"Äç ȦœzPN¦–¡M­¥œÒyZÏP´×dpêáÄIÿó Äë4‚|˜hg ++ Tœ<_8O;Íl(((YÔ0Úž¡ í£û_ñ†Œ[t®æ©nÿó"Ä¡±Nd ÚÈ—-öƒ„ra>a^‰§Ð`ÀÄt÷Ì•î¡ö%Ôƒ)B¦Y©E9!²úÿó ÄJ !*°bPqÆúΚ#°éâ´!_R¤œ¤ÆçŠbh¨œ#}XTÐiÿó Ä@ +0þÄÈKFp@b뿉ܠ 8ÊÈaÊpzTe†cñ6>E4¹Ê€¨:L ‡I²Á–rÒ‰òì{öò>r;\ÿó"Ä@ €ÊÐÈb +pµO)R’¿Â°€%D Q=Ð3¼ÞÔìxTºžûx«B +¼Iÿó ÄB !.ÜðIÄpðÀ y.™ÐíL¨¹•Ë'Ë!]k¥¬ªà™_ +4çÍ}†MïGÅëÔÿó ÄDøšØÐ2ÎLôøŒˆ1ˇæ|ôCÇ/ +‘¡6¥e•ÿŷϽSÕüïQL1ñåÿó ÄG°ÎÔzÄp€ FHrͳ‹eÝ„©‚Ί>Zúu‰3¹4ݾ¶(vå„€ÿó ÄK ÜøIÄq ’áƒ„Ä +¦‘/¡±V"§}à6Œ÷ø/s=UŒoê3|8“£ ÿó"ÄN YݘIÄp£OÑ +;®R\Fà7VõÙŸûºÙÿ#ÔUý¾#$ýÐãbÀ£„]`ÿó ÄPøþÕ˜IÄpx!Ö/*ÈÛÀéÏ– +«ÍVþ´/~Ó²…ôdG¦ú0€À9€àdSPÿó ÄS þȨb +p]PÏ¡¸¼EÀm?ôãfP!-Z¹@I’@ %5¥Ý«åvÿó ÄUÐÊÄJÎpÆ8ÈHñéöî5Ío¬*¹ÛNþŸ1Ôƒ«‘¶°@'¬8}7M’ˆÉz@ÿó"ÄX XÆÞX1FpTjäjÞpãisù +ÐÏF£¿Fô¦s 4¶Ð9¡Îߢ‹ØÐØÐÿó ÄZ ! +ÐøaÊpûø›_ +«®¯`IίÌ,qûàpP Ïp<áf ¶àÂpä€oÿó Ä\ØúÌðIÊp€/ú¶uK)äÿä˜}ZÉÔ€8x44¡;‚)ÒÊ¢)²z@Ë@ÿó Ä_ úݸ1DpŸ<œ“ª‰Š>]û¾Hp̦Ð9D›¸£ʼn + +q|„2ü$«]Õÿó"Äa I.Õ¸ADpQö3(­õ™co`8yç\é‘ÀwqÁÆ'ÃtK"éé,t;ê œÿó Äcðf¼(K("\¥@ °åEÑ;D<{lnQhãyžŠµ¿¡8œ1‰ÿó Äj Õ¸0Šp'õ(0 +ðÁ¨šµRcEÞzM(p=î Òÿˆ?EhÃæ6h[׊€ÿó Äm šÑ¸HŽL«@:ãO.yYŸÆÖH“|©¿Ý½Z È ÿó Y‹üp :ÿó"ÄoðÊÁyÄp¶H’¯cåĬùÁ†ÕÏè'ü§£ÿîwˆíÝ©ý0õ!%pð–ˆÿó ÄsˆºÅaJL€Ž‰ ÌhÂ3š¦ÿá2ÿ(±Xg-CŠV⸛è¨PÓA‹wF~˜=ÿó Äw¡*ɸIDqgiˆÆ~ì¨kÚkò.Y8k-¶gŠ<2)ªµJ +½Í톌tÿó Ä{  +½˜aÄqa-éÏ©À"Q§ø“V+r4b§êÇ€‡À”œè˜ †$è–m‘CÄ@³ÿó"Ä~ ½bÄL­|ˆIËá%æ|îÌ¿É>Eºir‹åô¶åynaŠ””&ó#eÿfÿó Ä‚ˆš¬zPL2P°ׯœAtóµÕ$ˆZ^MB³ëg0š¢^·O>@B0ˆÐ3…âªÿó Ć š´ðzÊL!G»déž1DÊ£RÔtšš•ýT_Vr1Т›ÝZµ •½Ñ­¥)0‚`8y!õÛPÿó ÄV ÎÒXAÊpÔ€s¢¢‡lÿáúW¸%û‚}ÙT‡@Í=“iBd ýi°(”ÿó ÄX ÊÆXJ„p@ôAZÍÚIKK¥¢–¿ë,˵‘H~ZÏ¡3®.NºÆµhìÿó"Ä[ Pú½¸IDpê´¤_ñoôÕµJ¢•Þµþ%km—"@„À.™€âË“9ºEy²ìÿó Ä]‘2ˆÆ^qÉÙGº~TI'Ö’©[ú cëQ0 ãFͤ`¡*n‘èÿó Ä9 úÊX2„p #[_b 2²gº8þT€‘9AÀÊ"é.]ÐËƪËk@ˆÿó Ä; εIFpFXîäÞ"6s¨%ë€ °Ãr€ö³\Ðê炬‰ZÇ.§”!dÿó"Ä= 8ž¨dL_æ1¶û9_þt α` ûCd¤O P‚ÒDk9í6Ê1ߪÿó Ä@ ú¹z„pÿÁ»¼5ðÂ&âЧ#º:lŒ`>õ¦üíü»ªöÜÁ„ÿó ÄBÊ°ÈyÄpµOŽ°ç~ „g·ÙÔå ‚O‡×v©¡$¶#ÿ˜XûPìDÙ@ÿó ÄFñ.”(~–qÃ&„ªÚÅHòGwe=Ξ"[þsûi0AvFýE3º„4 áôÆÿó"Ä- XúÊXB„p_úŸ`LòÐZjKш3ÿ`Jýµ0!ƒÿ?ÄA`@(ƒŒŠÕ7ñ—ÿó Ä/ ö½KDp@G˜ ËAº‹Â6yßûåóŽÿè%ÿ¬Y@ 4¢À2’ò!svóÿó Ä1 .µPKJq‚á™Fú–¤?ôÿÕƒ“þìç5ÿHƒ uQí>'j–öH…ÿó Ä3©"Á¸[DpdÒ½ +êjG·pƒ¿ëg¼÷¬ á2]óP9@JovÜ8Ñ‘goÿó"Ä7 8ƨP|Jp*>Jr7taeyýjÎþü€‹³Ã@&O(ÏFJâ€-ÍÒDƒ^¥¤ÿó Ä: ö͸2„poùD¹Z#/ ÿ!çt…üX qM€âƒ—Ÿ +gâÀ¹äG¹Îv¢+ô,ÿó Ä<ðÊ°(d†p“+± üJ~ §©àG\rÎ>^q˜ò¢Ê +UNðooZÏ + +Nœœÿó Ä?àêÒX2„p9¹åT1›Š¿¨Xy>„``–=@àS+~Xn¢Šôiú{lÉJÿó"ÄB +€ª¨{ÚL0ßP|£Ê”Øý@‰ :€àJ[ì[%=®†:bŸã§¹C»ÿó Ä@ØÆÒX0„po¡ÌëL0¾€€ xBCá…Gbw°¬@qµ@ÿ1³B­ÿùÿó ÄC ! +ÎX1Äp^ÝG:Ïe‚  bÑ5„0«êÐ6.lï2À‚oÐzÙݬÿ§ðzÿó ÄE ¾YÎp›‡>±(B£˜;EDŠ ÀØ\Hvn2Ûê'.w 3}Ãÿ ü®ÿó"ÄG ) +µpb„p€7»~fk@ÑjV¾§ŸçFæxþ +¿KªÔ¢úÀÿó ÄJ¡ +µhJ„r ðÊðܸÎœF&£¾‡€Ã? %‘ã?àÛó»úÇâ0‚E[ãÿó ÄN ±pKDp¯n™ æ?†iî."§(¿Ô„lºÁ·åÖ ?†€ + +€’ÿó ÄPá +µIÄp’{«ÅÁ¼Ú%†åÊ› >þTù¹_î¿ÒC¡x + + KÀ°Üÿó ÄS  +¬Ðz„p›n)"«‚»êÍø#YŠÄWü¿Átê#ÑŸ‚`>‚z‡¿¤ïu[ÿó"ÄU I¾XYÄpÉvŒ`-º-ÔMF¿ã\ºGüöYñÃTmOŒ´ÜÓ¥ØÍU¢ëÿó ÄWáJÆXh„q}W.&7ÿT¥ñí¿(å:u!Ò€ %FÆqq&"’K€ˆyÿó ÄZ¨Ê¤(ÃDp^£7ü3˜¬èýß÷öÈ+ÖÁ0P“û°Œ-ÊKPðç]õÿó Ä^ù +¤zÎp~‡¢Ô;~úÞŒ°Äé€48ÉÄ­«}S¬ù´ž2nÚ”8_ÿó"Äa 9¬ðkJpôÞB­Aÿý_ô–ìJ +êþ—åóÛÓ(aÊlÜïæŠbßkÜÿó Äd  +±˜z„p®fýGÓ‚‰@À@à'HËãð5£‘eú­øò\Åe_ìÿÅ~ÿó Äg  +±˜kDpƒ}gäÀI‹€»jƒ;Æ—bÕ—3NàÌ}uioæ­Ÿ‘ÿOþîÒ‹ÿó Äj  +ÒxIÄp~$äÀÀ`S<›f«"‰8ùÐ f³_ –øNoáÿ‚/)ÉðÀÿó"ÄlÑ*µ¸iÄp€ ¢îÔÿ¨ ró«KxDYK©Ü0· +ŒÎWâ„,ûÌQ;ÉñÌ6Bÿó Äp  +©x{DpÀ³GÇ~á([ÁQ¾«êÒ;Ä›sâwáL"ô¨§€A‰¤ÿó Är¨ê¡Xb„p>³€ÃU•GaqJŒñŽ§PIÿ¡ÂLóò›_‰ÿ‰³u€%üâõ÷ùÿó Äv芜È~LÀSf¦³)¥Ü–ó¢ |5w›Ûù&¦þÏÏ@ž@êC©A‹Ì¿;ýÿó"Äy HêÊX0Špþ\æ€ÕVë¼}4/³=[:$DœÑ|;•jº‰´ZœÇ<ê0 £•Jÿó Ä{ I¥PjÊp>P5+ÔN1ÐT1þ£FèÀ( 4‚ +Ž¡Ó @¥Ós%ô1ÿó Ä| a”Ærƒ›¾àRÕú¿•¿QwäÀ„&$œ T;mhÀõ5ÒL¤Å2ÿÿó Äq Á&”~Tp¯ýFÿýEyGê€Â.Eå|jeõÖRGšÐ/9¨øÐßèÿó"Äe Q*­H< +p$ÿ }¸‘š@€DƒÀìê­Fb… +Ù³s÷-רÿ&ÿ¡ò>ÿó ÄgÁ¾P<„p%v(f wꃰœ4ºõ’b¹~ygDþþñ8O×ÅZ|›þ§¿ò]ÿó ÄkѵPSJp €b©?Âí¼Š¯Vt  + +¯Ó¢C"úøGý¿Çâ€À +ÿó Än¹µPTŽr‚3«È 23µsR°[ÚG†+K¥¨EÙõ¾‚æþ=åzÀ€ƒT¶ÿó"Är &­H\p@J3t/› áWKò@eõç[N¢Í¿V_Ëþ,;‰À¥†“€E¿@+þÿó ăq¥€kNpGü}¿°ÃýG–€€$päÁ Ssbh*·®±´ÿ¨Ïññ¯üÿó ĈÙ*œ {TqÖÔƒPãýžCóÐûÓ$Œ4™#Ìœ¨`§•ÿCõÿó"Ä‹ &©ðjŽpù_HÀBG\FƾÄ,Sæ·Qt€‚ñ·¢ÉŒÏó+ú‚æ·Ûü‹´ÿó ÄŽ&©XjŽp€=E>úøcFÝõи`çHASþP5oпA‰oÔòÎË€ ÿó Ä“Á +©øl +pdž'³ˆ`òîm7RÒ']ÂÏ^£úô ÿ_÷åzÀÀ!<ºÿó ė阠{NpÚñì@Dœnö,p ¢÷ré¨RmÔñ?àü˜€(ì®úR4BÁ›U(ÿó"Äš I&™H|ptg4zˆ:«ú DlïÐ!Ì£]>{­ü>ÀºK?¸JãÊTÿó ĜəHz”ràd=ÔQ©U3øZa4øO¦;Éæ@€g +bшãó-€âh3ÿó ÄŸ‘ðcJp-ÐOÛ'~¦ø<^íæo>3ÈäÀÀ°‘®O¨“¬"ZZf ¾ýdÇÿó Ä£)™€b„p§E/¿Âm·Áýs<È-ò@3g®áw8•.À¸ËÚbÐ+dU¨yeÿó"Ä©ø²˜ÈcÊL*¢[ÐÏáqùš(4Âã)Djt$*ê!Vv³/¿ß6ÿó Ä° ²8Z„pÿ“äü€ðÅð9¾ÊCš'ÜR‹åbvþ†ùï‘´A4f"ÿ÷ú}ÿó IJ .©XkDpßÔp  «½e€‰§Z¹˜…Zd€\Ÿ¨¿Ru…øl¸.{'·#ÿó"Ä´ @â |Êp–€¿"™8ÈÄ ‚v–ÄAyºÊª4¬’ø +ñ¯ëöûò·‰6$^ÿó Ä·ñ>µ˜SDq€éâQ,x¬²*YH³ñz=˜[¸Uø«3ÙÑЀF_Çÿó ĺÉB¤{DqPPX#Úå‚cå +ÏãØù6®Ìü”â[[ê¤90Æj‹ÿó Ľ¡B½¸[Dqˆ±pT‚M…!ڣυøÿÍû×úõÀ(SY íAÿó"ÄÁ @Ê­˜{DpðZ{J/ä–Õ`3ùöËõú=uú|c€€+…q¯ÏFX ¹n]Mÿó ÄÄÁ*¨kJp¹ˆ©?:…z‡´ üiŸò©Þ@€¹@ݵúJ-Ÿ¦î)ÀEÅÂÿó ÄÈø² TÔLwÇ2z’üá榭ëñb—b`À`Ö?®f‚V NÔGã8cÿó ÄË þ ¸lpœßà? ® +¾ýJÒ<ê6H€<)_χ9WQ¨Q‚©e!Dn˜ôê1ÿó ÄÎɲ8z„p¬Óà_GöøM:»hj@€”¡Äý¹ +Hêƒd@nƒà÷Ô1üíÿó"ÄÑ B¡XLŠq“7ÌÞ +Ñ#ô€P‰ÀoUGÂy¡l ˜G6ùmŠè`̧E_¯ÿó ÄÔ Þ˜Ð|ŽpïèþßA@tÙáÜ÷ ²a$é$,Æ¢}K,<Þ£?BüØGöøÿó ÄÖ ú¡xzŠpgÓ‡@€Jà)¬o‘³Ú“#`ÒŠ0¾m¡Mfþ LÏëó-Úÿó ÄØñ*XL„pƒê¨Q¼Ë [ïà(Ø)µ?U›5 ÷Yþ‘j£ðO‰²;"|Oÿó"ÄÛÐÞ˜¸|Dpâo.1÷R°€+^ÅÁÐ99Ð)5gHoÖa[fïÔ_ùu2ðòèÿó Ä߈úpyÄrýbõ2œo\Í„²O¢‚ÒdÍ /¢ôë&uAº)]B]>¦ÿó Äã B¢X[Dq˜Gú1 @€­S|Ê&¯c“Ÿ- +´õi”ˆóÆmXÿò?†ÞÁ_Êüÿó Äå úˆ°lÄpæer@†( ÆúÙèQ¢£ *ZÜá•Ô;ÝHäOöƒøMYÿó"Äç +AF•¸z„qSª^   +*m-‡ “X+·›!ì@õo˜ü#çpÍSÝ¿Òÿó Äæ áŒX|Êp8¦`R €P@R¿Àºgð9š³HŸr2‰»dW¤’¹2·§*UËÿó Äå .˜SDpµåoúT + ‡šE"Õ ¡ ]iŠNÕ¨u­ôY +Ú²z~š•ÿó Äç Ùø{DqsõŠ›|p€d)_•D]×£NÀë:'Œ­Ö×Ï_‘5®¸36e®ÿó"Äæ Øú„°ÄÄp&vÊÐ0†ÐE±•ó••´¸ÜῘY¼½¸sèÅýßýÅ22Çÿó Äæ pÆŒð{DpseeâÅÐ ~õ”ã{>¦-ÜàÛÑËyo€>PªèŠÇ_ü+¼ÿó Äç +öžøSDpÏõ0À€%sm`èeªÅW"ÑÌ‚3/XÚڣiŽ \ ¬òÌÿó Äæ ¸ö¦XJ„qk¨ù¢À…Þïì +N‹­ôwÔáñ\ì¨ù÷ôêL´üM_µ°m7ÿó"Äæ àöŒ8kDqÕJà€ ÀÔÑþ 3µ gw!à±¢g£í +Ùõ/º‡v£/ãx°`ÿó Äæ `ÊŒð{DpXéùA€ÐËíë¤EDU +m‘°£âHVÀÚïgÁ7ðÌïïZ8ÿó Äç Ù.¸YÄp]‘þE +Jf'Vf(ªa^½À¹ÃY\ Ø—Ž3=^§¯Í8„rÿó Äæ ™*¡¸aÄqA'éðý¤J¨€Ô£œ`viúJŠšœïmHWÑñ. vœGþÂÿó"Äæ +*ˆè{DqœRߌ€‰`‡†]þ* q +)ˆ+„ +ƒOÆT3å5‡¹QÙ¿ôAH_ÿó ÄåÙ.•paÄqxeµùN€,ú¬FÊ‚dÑŒe5>8Ô9ý +sñDo GÿÜÏRÑpÿó Äè +(ÊzÄpbNˆ²Ådè7+†F¬Þx+rñ]¨¯ó f>aÿ( uý¹ÿó Äæ ÁŒ°yDqŒŒ¿ë €F-•Œ…æÅB +2‰ª(D¾ÏÿÑöÏÁ'Á?éöÿó"Äæ + &PyÄq!À>¶w„ÒÐZkqÚ8Ñ LeóŸÇæ‹.‘„«Ž0°´wÛ¥ÿó Äå ú¦XH„qC¾4¶²`À‘A‡Ì ž@@Á%¢œcQ߃qê“ äÆ7Ú,ìèÿó Äç ù"™°H„qüPÀ‚Ïåß\ŸOBPž\Â.šõv]蚯׵5Cs6ªÿ*GÊ¢ÿó Äæ A"”ÈYÄrHEÚÌ’AK + +7¥”%Œ—ÙwD +©$mÏR‰«`‰õÿÿó"Äè +‰"’bŽpø!MŠ¨ €E°ý'ÂuH¬Ìh%˜ý_ÕÔNVÔÿB½ÿèê@/"ÿó Äåñ"‘HZqW˜Ç€€D®1üš|3œj1*k8é¸çÕFÃ~S}ÌewÿÑlÿó Äè +Y"ˆ bŠpW0g¹Wóׄ}µ±!ü¯/õÿó Äå ž0z„pØYÝô” +é(ØŒºzr´dÙ”&G±šgëƒé¦z[—Wª0V3{ÿó Äç + :¦XIDq+#‡ ŽÐÐ5?8±µ²¡gqö®¯•æ³9™›«'ªÿó Äåñ”ÈyÄp3Ãþ¶R `ð^ v¦¥Ä‚Ã#P3ö³ÐÕ;þrAº£tT]ÿó"Äè +I>–Jqÿº4 €ÐÐí\Íö˜ +ƒ»ÅëS76øöòÚhú™ö² Ä3z}ÿó Äæ Ù:•ˆZqcÚÿû +€v¾p¬†çšürW÷+R_|“pT£0é}Bad™ÿó Äå 6¢01Dq¤­ó}æËú¤†õ‚NrU8TioQ8¸Ü}ÚæE;ý›ÔHÏ?ÿó Äè +9>ª8IDqÔçrŒ(äÂ`Q|ꘃ1C´QíNolãÓ8oÒŽêÿoR\ÿó"Äæ +!>šIÄqéò©î£€H •ý÷‰ŽÒ¦Òá;%xQÿ¿bèó~ê‰û}E½ÿó Äå >¥8„q12@¬@D…óp° +(‚‰“ÁA†Ï·ñ“£Ô¿ž…$ÿo†2ÿÒçÿó Äç + :ž8BÊqŠ€õ@;?rq—$ô_ô  0äá7#2>KêNºT†'ÿœJÿÿó Äå ¾”;ÄLÈÇ(1©Øû0SÉ©r@yU°¨ÿõö@õê¿èxrz}(ÿó"Äë )>‘ð{JqÌWýåPˆ‘´ºDR%h6ð.<ƒFA0»Îìûþõª•¹v4ÿó Äæ É:¢8Z„q1¿Ì äÀ¤ +œF†e*‚†DqMt‘±O«JCÿÙ ÿó ÄåÑ¡JÄpî€æ†‚i³ß¤Ž;’@{ïsÔc¢!ÛFú4X€Míÿ!ÿó Äè ‰>™ø2„q?½@õðèŸ9‚ƒ¼†#aCFÊþþaÛŽùXÔ?ÿ£ÄWÿó Äè +A>¦XaDq"ìÞ± Á³ïî¹·:0K.0‹èþÚF6#ôFQgöý]ÿó"Äæ á:ðzqFøÒ}<è@‡ôöŽ„N¢æƒ\_Ìf›ó[OÖ¬¡!ÿÐsÿó Äæ Ñ:™èaÄp~ZLÊ$ÀÐ p“*П«Êÿó Äç ù*ž0aJqÞp\-ÀÔH Dl*8H-ðqJõ×áÓéÓêæ?fÿžþ±~ÿó Äæ ÙJ¢XIÊqÛ€€.UòÆÄY8#Oa1˜Cß+~ÿ‰ˆs¿)Ƹÿÿó Äå ! +¡:Äpô]t€á¡ +M5dBãtÑáÅG +R¡ÙGsêÁe¸¡ßÍš¨! +úÿó"Äç +J¦ðzq—NÍ¿`À7Äcˆ€@À­B#+i^ê>j5#79·™uoÝ +gøÿó Äç Ù™YÄqR‘ ¤"¤ùH?OÈØÏS–ßþõ;°«û½œ·ê¦ÿó Äæ á*ªXIDqº¾š†1°à + ²Ì]Þ–f‰pú18«¹š÷ò¿œî¯;ðµ~ÝÊúìÿó Äå™.¡)Dq"AÀÔÐ"?fÊðøØ™œd¤Î4RCúlêØäô•¤n§Çÿó"Äé + ‘HJÊqÆáœPÀ,›%ä¸|qeÉÎÃjÞêä¿öxK·«ldw ¾ +u¦(ˆÿó Äè +Y&•hIDqO)Ê6ª@ë!†f#ÁÓD¿†“9¶«~ÿùR\8§ÙtÂŒFåÿó ÄåÉ&”À2qô ,”§fÐŽhÙ6†–UÓRêùG|i×àzSÊ +8ðŽø0cjÿó Äè +a*•pJJqð芰QÁgY²&à 6iÜÛ»²³5R{Á”6•ª¬/º@ÿó"ÄåÙ*¡1ÄqLbH6€C7†Aâ…Y8Ë £¶ð|^Üeÿó^Œx-ÿÎýðý’RÎÿó Äé +hæ•PIÊq† aà š¡ Ñ€cL"žkþ6²{ü_†­Ê󹩣&³?·yƒÿó Äæ Ж”ÈKL«Âd! ¡YÞOšÚÒšÅŶ4kéý¾2ÉØÆB;g§Ô=÷ÿó ÄåÈÆ”JDpg3â•ÀQ%OBqÀÖµåŠAƒ‡*Ô1Ôö“Û@ët/½õŠ¦‰ÿó"Äè + †”ÈcÌHùÝèTbÈ<Òƒf¢%•Œ/›ÔFüE¨í{N¡ *ÎѶ¹ÿó Äç  š˜0JDL„¨°FÛsNeÎ V–Bƒ·© òïg¦”Â"º6]R_úQ_)ÿó Äç 0b˜(BP+ÕB©˜H„qR¤Y}Ê)¦Èç ¤!3ÃÒbr) [ÐZª­-S‚éÉÙ'ÿó Äè +96­¸IDqÓµ:·lS?6'@jGƃ¾|ØêWRH%3¬Û^ûȆ/ëG# ÿó"Äæ Èâ”bp/ÚÏŒe*q¸ ÀÿÒ(¾fAØÑhлP9­»õjMúS¨Nÿó Äæ ØÞ ðbÄp£n(Bí#£ˆÇ‘8™Ð9Üçæ£ÁwÎÆ%K 'üûê+Óÿó Äå¨â˜zÄp×Q…ÈjI^Ú´»ˆºUåbˆÒm2ê K«Ò¸ØÕ@Ò$°Bìúÿó Äé +€â˜(|DpÆb·þøLP”oóv¹¶ƒ÷¹ ËÍ­ÖQ¿yŽ¬Ä: þü‡~ÿó"Äæ ñ P{DqótœCìlàÈ8eËåÊQrX¼–5:50µÔ¥¥8^Ôè~Á÷ê?˜Dÿó Äæ Ù¨PKJp9÷ (Pœw9Áh•ÃÓj ×é-dj•žÆoÈý\Kzhÿó Äåé­˜KDq”(ÐS0Rôû©¨Ö˦«Ì^‹K³{ûn—pÎï«÷cÙïæÚÿó Äè +A xZÄp†ù ¼\!2NJP1XÒRGPÉ[éhFhûwZ69Ù'sÍû~3wÿó"Äæ ù” |„s_¸·?€$R„…£—’ !ý¼Á*»ø‰lcÔý‹x¶=—Ôgÿó Äæ Ù¤xz„q=—” rÌT©gLEmùÓPLl´ç]^­¶|×Ä&‹øos}_òÈÿó Äå æ˜{Jp5é‰BØs4Ž{•é妦¸Ê + Ot”µž©×J¶Mßñ6 :_ÿó Äç ù¤x{Dp¥áÞ€ Ë a2%kÒ rĤgD „™ûÒƒ0ôãðM…iü>ø,ÿó"Äæ ðæ”({Äpòr` V0%KsP2Qœœ•Õ,Å¥3ͳrƒmQþ¼¦èeÿó Äæ Ù±¸YÄqtQ¼oBðÛXy§„mäú•Âè é»=«Zå-&êçl;~ ¼¾ +Fÿó Äå ž©°bÄLåIÀ2Úè_+º7,¸!D`ê‹u¨Ç¼Ú ×çn„fWèǶŸtÿó Äè +I*œXzÄqצ†:°!ˆàñ`çÊ ç! +ƒ¡üf¡¼ù‹1- «®Š\£êm ^ÿó Äå Æ p{Dp(£K +€5Pœ`±óû¸~àè)–}tª4º:æ +—C¿áŽÅ{ÿó"Äç +0ªœXzDL XàÊ5G¿ +Â# Y~"îÝÚ쀘x ^ñ×½ú*^‚¿3;àòÿó Äæ É +­¸YÄq"—£ßù€öÚ ‚.xé‰â`Á4>ÿ/ñOOV~¯«þ¥¿Iè ÿó Äå ö˜°{Dp;V o È5;m>  {ÂFVxxž´™¬ujz§Û3Òÿ‚ûWi ©ÿó Äç +!&zÄpkððY¿úPf <„KÇ)O¦ÇÎÞŒ£6O§\6êÿoùÛðÍéÚÿó"Äå Hª0zÄLÙ™0N@ Rä!±È•^š.I'¢\]êã±_›;B/ó²þûÿó Äç ÈÆ({Dr¸ïºs€ -èH8æοEBum[ênjþW Æ†xcÔPÇVÿó Äæ ÈâœPz„q.z¨AF‘bê]°=qöÓ5sŸ6ÿ@"ͤÑP%%ÿó Äå ú­˜JpÔc? <2+kÔ“.àUi¬@Ú´Öêè«òíFdâÿ§±‡ÿó"Äè +xƘP{Dqaí`P +Á*e5  fŒ­â~tóùÆÀ•üŠ?þ¢Æ”l°ÿó Äæ ¹&œØzÄq$êÃà èXÀr84m1Ë:Ób•Rf¡6Û­-mÌV¤M/õÿó Äæ É*œø{DqËlUÕŸÛ‚s‘•´0 í_ëµüiýJÖ)|{¬éÍë0ÿó Äåxš­˜JÊL!~l6p@«@8-ÌîI²€95zMëKÜçú‘ó2W–Œß¢ÿó"Äê +y* øb„p**µ0§Ø`IÚƒ%ÍPåIà[?.”Ó\×™7ØÙ°O•¿3¢ýoÿó Äè ™˜zÊpƒ~%kÅ@d“(ÅuÝ€ø,rBX,— §?VF¸fÅ +üGùj ÿó Äè Ù +¡IÄpp(¾%n°Ð Œ4z®SÔåBÀáó!ʤ*lµÿ&ªí…o¤o”"ÿó Äç + + pKJp(ü"@"(p02S$­¢’`¥Àu6!ÔhKç +‡ëÀv/Ðwûjzÿó"Äæ x¦œPKÎL¼ì$Ï/¼ë¬É—náçšá«<`û¿¬T ò?ô +ŠÞÚ'ÿó Äè +)&¥¸JÄqÉõ€P¼³‹eÄS°Û ’ŠLàY¨ÙG[Iÿ!µ }I~èþ«Îyÿó Äæ Á¥˜KDpëñ×#‰@⃫à8x÷ÝÁ£vÎ… kò(ýúýÿèxеÿó Äæ àþ XYÄp¨çäd@™Î±mÌÜ(ÜL£uÈZ«Fù|̈õä_Îöÿ†ÿó"ÄåøÊ¥KDpXX!¨€À UþÓ7“h—\k(ðßQÎ4oX?«á'üƒÿùÿó Äé +.¡YÊpõK|I€€çƒ?¶À0ŒYÀ~Æ—¼Þy¾±ëjø:[ˆ±éîÿó Äæ  Pz„p؃eÀ —£û¬kPÂ%0j\üŸ™ê๻áÔL`oÒÛÿó Äè +Q&˜8{Nph+ñ0‡ ËvýÞ]pVIEµòéX¹ŽÃË?Pº~îÑ£ÙVÿó"Äå *µ¸HŠpÖöô€ÀJ9ï¨ððÙŠP\@˜3GÛ£dU§Î9ôý0jíÛmV8kÿó Äè +(ú¢zÄpÿ¶Èøõ¤Wk¡Þ1½A’e€t +XµÎ4d­JásÃMœß\€0ºÿó Äæ ÑJ¥˜yÊqõæH„{{A³ÇfX› áj,Ý5ºeÞStÚ“úíéõ%Åÿó Äå ­°2Šp³¿„,9 ‚º\dª‚fS°pgxsøìdÂÇ“ÿP–ÿó"Äç +I"¡˜yÊpuÒÅa𬀠Axcô|냔˜æ¡iuþÊŠCc\Ý¿Ðï‡ÜXÿó ÄåȾœÈ{ +LâÃÀ€ÔÝÝÝ ÀŒ\HDh„[ ÐM½±Å¾Ó2—Îÿ@å¿ùÿó Äè +I +¥˜J +qP›ßž Œ 0Sù£é4 z Cûžiö˜3àzr¨m¿û\Ãÿó Äå ˜{Lýs(kð‚Î_Šœ±HT$À¼:Vecê³|aÌÛÿÃV·ßéÿó"Äç ù +¥˜JÄq»ýË€ Â@»1­@$aiñãÄ‘m[›ÆkŸ^ $)}­çÇÚ#äÜÿó Äç à¡pK +LâA‚`ˆ+ +,kÚ^Ñ%qhƒB-‡Í—÷¼ã–}ßøÐ +‹Ñ¿ÿó Äæ X¾¶8IŠLº ꎬ€  +A'{:J)ŽÈÀ£—mçöþ”A±ý¡Œ¯íÿó Äç ðú¥xbÎpúb'ãÆ@€’û¼d~0qpò"_}YÛ7ëAuÿ¡Á~ÿó"Äæ ñ6®8Jq®‡Q`‘€ ¨Àžº€ï,evàYnùq†Œ¿¥½ ûâªÿþËÿó Äæ I:¡PJq/é¨à£ÈðÒ=ï3L¨Läƒ(:¾üFPNοéDoòWôýnÿó Äç àÂP3L¢ôº€Æ^šMnä É|Wóü·ÊœÕ}^¶«ÿõÿó Äæ Á:¥ðJJq¬GPDÌ‚@’M~C¸žMP`ëœY¢'öÖäåd ÐÖWÿÿó"Äæ + +ª8IŠpüÅô îd  Â’[øKØ," a…DH}UÿÌñ¸ˆøÆ`ïþ_ÿó ÄåÙ:®IDqôqÿA´¤0 §æµƒë¾ƒM”LGp÷ò;û9° 6RÕÿþŠOÿó Äè +Q:ª8zpÈ4ÀÀ–ÿ k–•õÐúW)Xûê¯~ªÕ¤à|oæH×ëÿHÿó Äå ! +©Y„p/Q2®XÈ J +‰€²ÐôÔ2iR!v°_=ñ«Ð)ñ?PF ÿÿ ÿó"Äç ñ +ªX2pÜ3Â? Ì 0pÜôƒ@´ÊH6R s~uÄ©ß6{ÕUÿþ?ÿó Äç ù*²XIJqô|RÄ Å(J”ß"‘é +,x›×:6œ[[÷ˆTÿdv +ÿó Äæ É.ª0zqJþª ÿÊ‹Gx਒LT¬p¡/¦Uü𣅎Йþˆ‚ñúÿó Äåé*²8ZpîýÄ †)Àqo9fŒ†F!¬ß²vF¡¿¬Ö©ë(ªóŠÂÿó Äè +)PzÊpÖcñÀo—à@ ðÚ¥Úƒ“³à°ó Øð“soÍì5tp¢/F«c|ÿó"Äæ á.¶XIDq4°Z© ¨10˜’ðõ£< +Ž&Àá#Í~š°Wß +F£èïmQÿó Äæ ©J®82q¸•aß°À°–®ÝÖ£ƒ-Ø#{/ÿïçp¿]ü­^…µéÿó Äæ ÙJ©˜1Dq8¶-ùpˆ€1(!ƒôu†)ê¶1ÅÄÎ;+ÿS +pƒ·š¢˜ï_”ùÿó ÄåØΘZÊpÄ4ñÐ3v±¤P=€øPÙA@áSú¸£E +9êßæâÛFbHWÐÿÿó"Äè + +¶X1„qQ.Ž£¤(à@ÁÖÀ:ÃæQ’éù°šŠ@}ÆvºFðj”×c·Uvÿó Äæ ˜Ê©1ÊpðÝõñýIÕÀˆØ ˆ>£è ½*ÊCÇ>xDµqïO ;¸H·DÚÿó Äæ ¡6®81DqÜ·]<  hsÔMEMÒçáá­Jí–òßá}Âlþ¦b°Ö¢ÿó Äæ  Î¡JNp¡ŸÌÛŽ¦€9ÐøIIØ:A11䎚4–'ØÓ¬ŸwÎÚº¿¡]Þ +Ïÿó"Äæ ù.®8IJq"ÿÜ°›Àz[Íd¨ +80Ú "¸,g__:p‡´KƯaþ‰£jÿó Äæ Àþ¾XH„pyTÏË€z*o$Ò$/hðj¯•çjá°8ˆõ0=Ý~ÇàUÏhe±¦(%ý¨ÿó Äç é.¬XJq¯ ƒRÀP?Ÿ¤Ñ³¦±âÁqÈÛEJ–ûå¥GôÛ—ôÿó"Äæ °– (KN‰õ¢€OŠPaCTÑKdnAc Ož÷«Kç¡ÆÔ½êê’®ÁËÿó Äç Àⱘ1Êpìy=8 7p> Ÿçtê((ñÀjIÒÇø=by+_\÷xâ_þŠÿó Äç + 0JÊpA¶ÆcЀÔ°SÆ…f‚@H0Dí2ótÿýA±eDµhÿ°Éÿó Äåðʹ¸1Dp§‹LÈ€ˆ™@êˆOÊ™6¹Ò†œ4^8†òÎè¥ +©Ÿ€ôÆ_:eÿó"Äè +‘6¹¸aDq³ˆ* µÚ.XÛz‚rO/û'ˆÛ»pØq~P9P²ÿó Äå ú½¸IDp +0Jà9†¤ã¯fÄrL±Ô'1/ñiÁ¶BkÑ9NÉ4£zêÿó Äç ðº¨XbNLÑ›wp? NUB ßD_ºQ(íayÉ‘; ÓÇý[‘Ê®®Tÿó Äæ àâ°ØJqTv‰FD¡òI_iú™¨zäÞm@ȸûf¦3P¯InÕ¥‘úÿó"Äå Hâ©pI„pì‚fûu€? )Œ”nñuõâC…¢òÒÓh^ +ï„fQ÷ñ[­”~˜+ÿó Äç + ®©xJDLŒ¾íÔ`!SÔtI#ë=3 +E†NpD$C1³k¥‚j©Of¶›µøÿó Äåøšµ˜I„L=¥@Cì daŠÒ>ÁCÛrƒÔ-%¤—GFwVœ¿Á¿£íRÿó Äè +0þ¬ØJqP ß‹ET Ãë.ToMeƒc˜2ë*w‹|rz—‚n˜1Ó:ÿó"Äæ ðʤPbp8FðÞ8I6ŒB+Ð冹ñYª†’¾ø³·ÿ9û®sæоrwuÿó Äæ ˆÚ˜zDpcÁSÉ`!Dl +eE +LáÌUäÄ"ðÉÑ¢cŽÃnÈ* jÛþìˆó:ÿó Äæ ÈƨPbÄp Ó¨ý 4†º`:A˜+}ï]Áa!¹thþ¥ò>çh‹QØæ¾…™kÿó Äå +µIDpX¿ü°˜ !Ø ÀJ¢ïÔDú‰œg:•ËnOPÛ³A“óÿúàÿó"Äç + +­b„qÃà_`ÀHœ-€·x’ùÆ‘0D2ÝDüò:Íj£~5}ÞôØÿó Äæ pæ¬xZprt¸ƒÀ@¡4ØpvÛ¤Õe, +Ÿ]ýJW½ß÷ÁrœŒ½êýÔœøÿó Äç Á°xZÆp6à@àH86ñ›¨Þpþl °†ß$ßæ]?Þ&ÙŸò·öeRhÿó Äç Ù +­YÄp +ë‚AL2€`ŽNÁ`â1æ©öZÒp¨ñ©gyîmŒs?óa_Wü1ÿó"Äæ 鵸IÆp¿ðÚ‚`áØV«ÑÊÇYTE¶@€D`\CNó»c},®ò“ôíÍÿó Äæ Y±ZÄqWs pŒàaPÄܹITcœPT +”;%~“ÇŒÝqøÂþ·Lhÿó Äç +&¨XaÄpoô}u48¦­éesœ&n22#$$ŸÇlò_éüBKÅÿ?õnÿó Äåá +¹JÄp\D7¤€TSŒUÛ·$Úa_žQ€²Â5*þc™ªtÛPLu¡¿ÿó"Äè +¡¤XbÊp•­ÿè?Pà´ + +P÷ã² ó6 !ÇÏBÚÜÁ ?¯Y̳Z¦½h,Žÿó Äå  +¬øJÄp€„J•Ì³Ÿ%«åã}z +¬½Ãž}HõÉàÚ¾@Vø‚ÿó Äç á +˜0zpgÝŽpÖü@€qbìµq Ž¢‰ŠÖ-—su /_ªÈ>‹í7û¼Ìÿó Äæ ‰¤XZ +qêP!¿À*pÒÀ84ð‡Õ!¶säÝ4~°Ïƒú© +é·Mÿó"Äæ q˜zÊpýÂ@ ç@8<ÝÀë“}7e3«%šÓºÁ[F¿èSÄG]å?«4ùˆpÿó Äè +a +˜XzJpͺ0\‹€!:àr=Iw|t¹,ƒŽiÍÁ°õEm[÷{y[8Øÿó Ä倖¤8bÄLwGð êà0ÁíGP•R„! +ËßÌÅ«èØ>!ö­û÷}Úùÿó Äê Y.”8{ÊqDÃવemA +D„ªÑ&?V°J”êN»¶£é¥ÿk± ˆ!ÿó Äã .±J„q>áÀ9€#R¦™¦— ¿ À@Éê­Î½!˜Ô‰Ú¬Ù_Î_ÎÚÿó"Äå .±¸J„q>«ú @+ÌD.RY• ÞG‡(ÁÆãJ¨| ԗܶ[ÿó Äè +I2©¸KNqÿ§3ü›F +J¨ÿ~‹ª`È\SH>µÓÔDöÕºÛ#fþ¥ýSŸ§ÿó Äå *¥xKDqø`@$¤qZpDÀLàé&kç=€h ýœÚ +Ž6%?anŸ3Uÿó Äç Ù2­¸B„p‡ÑýЂÀ1–i·??zÃÈÁøÎ7ì£è$V#×󼯹 Ïý¡ÿó"Äæ ‘2¬xCJqÂHek>°° +ƒƒÍ™Y^vÑЊAKDv@û|MôëýLwö|Ž3œ¿ÿó Äç ±.œ0cJq©À€yÀ­V|Œt +ìZõÔR]ºD#ôà¢Ã¦r ÿï·ÿó Äç + 2 h[NqæR‡t€$—›Š÷r£ •‚®ìlIÒ™pxM¸D†ú¾ù©oýjFþÿó Äå©.œd +qiÅP 4¸ÿ?(‹ÞÂ{tÒ;uÓÝjªç +ïü^DÚjçý3ÿó"Äé +‘.˜èbÄqÿÆèj@!AçÐXXŒ– @(j + YÇÍqgÐ +¿ˆüƒÏõþ/ÿó Äæ àö¡pKDp†TRÂR#ùaÒðGE+õb"ë%¾µ pi¯Foœwôè|Âÿó ÄåÑ.¥PIDq'þL$'„ÓéNÞ+q$$ÔL9Š%ý È&õQoÑ=KÿÔ`Ÿÿó Äè + .­Ø1Êp¨ÍŸ€Å°È +²–°ÖUC4¢ø$3ƒWZ•„”Ùçÿ8úý»ÿó"Äæ ©.˜cTr½Ì(þÒà$â<è순XN|“­hÖØæWý@q=]iþ´?ÿšêÿó Äç +.˜(cÔqŽd€¼- +|jû‚*`+WÊ)ãa¢ª»PcüÃË·¡‡¨óûöyÿó Äæ +œÐZ„p@{™Ôà@$ðUþPKÍ*,©ïãÏæ0)ý~fŸÿÆÿó Äç ±¡PcTq/0‘Áßø€,³Ä¿(}%†–KŽ÷ðƒaÈ)ëYiÇ“íûÿó"Äç Á*œzšr‹9ÙHÁÀ ð£ +ú£h¼žH6PÀûNÇ×ø¹€oƉ-IÿÑ•$ÿó Äè +.¥bÔqÚZ€À *†'×äŒ.RLÔYüwàhH6™ò‹ŸX&ÿä5eÿó Äæ Q + bÚrùA¨‘úñÀÀkq +9b +6­©ÛŒpFÐF§3¹&J7ÿó Äç ù¤ðzŽpÿAuõý0I€¡‰RW©¡j)XxèÓ?ù£Kùô©Ø­7ýÈÿó"Äæ + &¶8IÊq·üÜÀá +¦…=ÅR$„9éu|Ç«áÐy¦Ÿ8,«H¾°#ÃZÿó Äåé +¤ÈZÄpÖ¡ à +¶oÓu„ØRaè‚ÑÎ.–~Å¢šià³ÔDïÑvÕVÿó Äè +­Z +p÷é "€ÒP4è Ÿ´è¦X¢1|~ªuúü3 C#ÿÙâwõúÄÿó Äæ ©.­˜AÄqDÿà ˆ€‚é#ú»Ô2‚BAÇam;PYÍ®´ þÇùú{~ÿó"Äæ +þ©˜3JpFJï• ð„Ë@ÂÏþw@syˆ5!Æ2}1PnùèêöôúEÿó Äå 6ÆXIDq2ïÐC€ ]öEB|( +F‘ÅbÒ=>mÀFëev½•ÿ¯Â½ÿó Äç hŽ±˜)šLRj±‚:èYþ¦é‰JisO')_·†Í¯åS‘ÙýÛÔPðsÿó Äè +I>­˜3Dq”J’0¨0¨?1R%Àé…2„3µÄïéÞ˜˜nGîìå1ÿõÿó"Äå 9>º82„q „â|<ÑX@¢Ó¥%–BÂXIDq€˜¤€`€ïÅ%""àÁñˆÃoò¬å²wÓ!€ 9­ZOß÷ÿó Äå ú±j„pˆOlªÐA@l¤üå¼²ƒn²¨ahß7_#ý „eëÔ*±Ÿÿóÿó"Äè ðúº8IÄpò#AA¡ø +pÆ¿à; «‰åORÛ?®$4à¯p0“èÕ—ÿó Äè +A²8BÄpp^@È8`µ \„‰NNzÅ,ßë_í{.L‹xVûëRþ +ÿó Äæ á:ºXINqµ[‚`È…@h£ukíûp©@¤©ý±ýfdúþ‹Bÿó Ä娎ÂX0ŽL{Vˆ| ÀÊ„HƒÀŠYè«jKXæ.„sÓHX3¯ìê]Ï3ÿñÿó"Äé +€š¦JVLâú¤ÉB…ÀbŽüž)ek +°º¶†Ñ[B‰;æ9Lßý”Oÿó Äç +! +¶XJpbÍ È,ÿö"YÛId0¸|LøÊýoÊ4":$„…þfrT9½{ÿó ÄåðŠµ1ÊL ˜úÏê°”@0èÛÅ…†s†) p”T¢Ûûu†à¿Ò^~—ù^ÿó Äè áJ®2Dq0?BÉAyÿä ¥Œ +>W0Ø_Õ²³ïD’3‰ œɻ‹`žšÿó"Äç +J²XIDqݾd”"D +d€ˆ+YBT†8X‚ÛDÒA¬Ðd‹êîk©¿ÿ‘ÿó Äæ qºXIÎpšþ“e™ÎÔÜ=’EçH•—S`ÿˆÜÿ¾p$ìº`@Qê³ÑnŠÿó Äç é +ºX1Dp÷¡Ü$„1 ƒ¤ìi˜$`KÆÅa—ú…ìÂÊÕzš{õgœÿó Äæ Á¤È2pËRͨ–BD +d€‚|ƒ,QÈ @±„QºÿV/o«MItûÿó"Äæ +! +®81Jpþ¯Øþø°åJT5h2€Ô9ÆZø§ÿõX s… ¯Ÿ²;]ÄÅŸ7ÿó Äå°¢ 2ÚL +béÚJÛïÀì" +'©€¦ç2„[£·ïmz ‰!ªÕR“Õ4ÿó Äé +.ºø1Tq&­ …´À +ð¦Ìxòª¢ã!”‰dûâ3ü£•iª³…+r²ÿó Äæ xæ ašpnË(ÅFˆ‹mâïM(²ìtqä¼~¶V’7¹®½Mùÿó Äç ñ.¶¸H”p§>¹HtMŒZ Ï™40á!J}—ÛQÊ€# +9óSòÇ¢ÿó"Äæ +¾Âø0„MT“Q40š 2¨2…Á†”$碇›CcÞJM_úôÛÖðX:äO9¬á±jÿó Äæ @æ±0ÊpŽ÷D@°X)°P\÷ÆP$nx8Cký!Ezz=œ6ºµX½Ïÿó Äè +9*ÒX0Šq¶«ä›`N=*;tÐ,aLM€çkü )¦•orm„!}>ŠRÿó Äæ 0š±I”L{¥ê€ˆ0&[‹ÅíM舆I‰yPžpüðö +¶¿õ/Ròÿó"Äè +y2­˜INq¡¤]‡û‚" ÝàI€Ã]ƒX²ÅA”V«Ílз§*BYç<'[¬ ÿó Äæ Ù.µ˜0Šq <žPа$ض ’®K’Tîcg{HjùPGGþ?oõ£™ÿó Äå ¦¬ðA–L¹æ$ÀŒ€7h°˜5ÌWÒA"?>•4Œ¯Ê’1‘ïõ2+Xÿó Äç +¾8HÊqÿ1*­Jˆ7  ²@—va~]Unã +–ÕªB¡yOU`ÿó"Äå â¬(JpdII8E¬˜³@ãå]e "1œñ¤¼Ë}h>p+Sup‘önŸÎ"wÿó Äé +2¶8Z +qÀZB€¡–;ƒ°,D%žtFßÜ‚º•@Pj¤­æä6–gÿó Äæ ¨žÂØ1NL¶hÐÁÙ”TêDó#qTÍ•0Ыӓ(›l8þõɤŸYPÿó Äæ ©2±XZŽqî ¢â좉µÃ‚6EfËjÅ·YÊWøK—³Û$ +S¶ +¿– Kžéÿó"Äæ ùº81Äqý‡;±@ ž”‘M²ðbÿó Äæ Ñ.¹IDpÞŠ àA˜Æd®,_kRª28]ÍŸìgL'œÏéžò*!ò˜Üÿó Äå ʤ{p=¸@“*T tàƒTÛõV(Hê=$\°4b§‡áÕ*wÿÁÿó"Äç +ú¨pZpŒã¿Ä!4:jðä ¹éËèÀ*\p·mÙŒ~ü÷oÀI}ØÎÊ¡Zÿó Äæ É.±¸aDq ÊÆ Y-€éS ênÒÏv®> +¹#ÿÔ;µ[ò/×ØÇzÿó ÄåˆÊ zDp©×”=ÈèV0Ó‘8á5jr¤í¼È_t s_lvÊÿ3½z[Wÿó Äé +(ú˜{ÄpÐvZÛØ >ÐãE$Ëã'Fâ²Rþê IBýt?o¨ÐuDÿó"Äç +@ú¤¸zDpåá¹G¾P œ0ÜšÆ75ËX}S˜ÿó Äè +AcDqGØ8$4|S1¯`³«IèJ*f¯èÿö#ÜÌþ +½„›ü€µõW¸£ÿó"Äæ +&œpb„pdÑñ¦Ã +¯cÍ +2ì›V‹ 6E£RkoFùŽ¢¾¸kÐ;iùýþLÿó Äå Ê­˜J„q[OYÄl€piQçšÉ("\ÇÅÄ>dó£-¥Íi%ÄŸOáäøÍÿó Äç ù.¤øIÊqBü®àŒ’˖“X.5‡Âê&;ñJäV7ÒÓ˜Vfü¯»p@ÿó Äæ Ù.˜PzÄpÙ|èe•Ð°ˆ2œÔÞÚ„†AÂnf{|Àw®sKм‚?Eê¯Áÿó Äåé*­¸1Äq£º¬©€ À“BŠ‘XÊw¨ˆŽC©ÏC³þèà-•ÛêßNªÍ)ÿó"Äè +*˜zJqù*8³`ü€€HÅd•@tvà¡AI,ÐÊŒ>ç:Sœÿ¨øœíõIÿó Äè +1*œPzÄq€”€ +K€Ð!¨… QºÈ€Ì m¶.ÊoU&­û ò”Êõ+Ô‡ÿó Äæ y&œ°KDq£è5 ”@49€À$$rƸj  iR#QO7•ÇôuêEíù{=^Þÿó Äç +þ¡pbp¢»íþ°€½€Ðö]w´¸¸<¸ç?™’õ¦}7å÷t+åÿó"Äå 0ú¥3Dpj—a3Á@ˆ€)@¢.â¡Ã–0 €- +æ} olþ­õÔß^ÿó Äè +Y*²XIÄquÁ8ÔE@b¬°.v +4ŒD¥W篋ý)Hš!?WGí¾ýÿó ÄåHʤÈIÄrpÖ=™®Þ^¬åŸõ€„!ÈyÓõ*Ýç:¨Mó ïÜå\}Amÿó Äê +*¶X1Dpפ€¨ÙÒW2~ˆƒ‘ôÖ£çä+¦‰¾wØøgúŒ-5ÿó"Äç +A²X1Äq•â áöB ÖsäncÔ’U=Òª· +ïµòãoLnÛ¸‹'S3úo¨ÿó Äæ ÙºXIÄp)…hÄ'@™hÜyÐÑÀʨ9 +lÏß/ä +¥Þ¢LÚ®s†ÿó Äåé*²X1ÄqíÂëÀŠ,Ô½Mz7ÄŽÕ°½[­b_¢+öirŽÄÿó Äè +a&©¸2Êp‘¿x2>ô€|û,½ùLTœ>B@WË©ø±vz Ð#¯RÎT#i¤ÿó"Äå°®˜{ÊLgJ¼°Ðq  ¡/ÄtTKf(±¨ñ™¹ÕªŠë^‰ÿ¦çѵÿó Äê +ØÊžKpŠq*ÃÀ?yŒïÔŽ€¡\(®7 ¾uò®ßðñ©3lêËÛVC?Ôšÿó Äå æœ{ÄpA¾2€€¦œÊ @Ž ñ@æ>ežèÖÌvÈ®ýèêõÐÿó Äè +0úª0IDqÔ>ŸQ€ƒcÉæFÆ3Ž¤‰8ÌÚñ÷»HâÙÒwùœ¤®ÿó"Äæ + &ÂXH„pwÂàÀðf¹ÑS@Û(PÐÀ RÜñ¤TEÄŸã~Àþ¢Üöÿó Äåè~ Èc +HÈy ¡`Ì‚T¶i€ÑHzžã07(—ßÙX‚‰dü3}ˆÞ#ÿó Äè +Xò­¸IÆpÿÖ=ì•Ô~V›NQüÔÜS-8·“/Üî}*s½0¥ü‹³‚8Rÿó Äå òœ({Äpwâš `¨";±Aì±ÜÑ $>ë­ÿ·¶?ë¯è{­õšÿó"Äç +Q&˜è3DqŒŸ‚:°TJð¨ÑÈ@Ø™ 4q´G)t¬ÿ¥›ÞíQjÂØÿó Äå ²˜¨KÄLÍ*(À¨sùï:`Å \DŠ¦ãöÔç?ò—ív)±Tßþ¬ÿó Äç +*¥bp¯åà¬ÀTð—eÑÜ7X(P÷Õæ1Ï}Õ¼´;þt£ÿó Äå *ÂX1Dp!Þ¯øÏ^ à +ÂkOª{ٖücí OçÛC5³>ÿEr?Ô:L4Ëÿó"Äç + ú©˜2Äqµ4iÐ!@5r=Ij©¥ÅàHoM×Êry¼^íú_ôò¸CÿÝÿó Äæ á²X2ÄqáTp^u€ÄR•€?‰"¼*¦È0 À•3ê†/Ð*-µ¿ûÐµÚ ÿó Äåøî¥pYÄp4“æ€Ì0$ÈðmòöÇ–P8 â†fôa?œÇ_?¬×3*)Iú´ÿó Äè øî¥XJ„q¨ÒÖ +¶„ kˆjø:äˆòÒ]"íi¾‰Ÿ¨oÌ­ýUñÿÿó"Äç +a˜ÈKÄpá×懀‰€?ø¬bx@^üP!|üªävt—÷ÿ®‚¶Eÿs ÿó Äåàâ¥PKDp{æ£ ¸:]€Ýu~Â8lT×ß«)ÿBšÈ¨Iÿ¡Y‡3³mÿó Äè +a*¡xJÄqœ"&ð¸ðÊ ±“…VÀA9'¥ 5¤r}÷Á™z”ûn_fþÿó Äå æ¶X@„p>QÕ€¾PÊŒOCÜ`B"ª-ʵO*ãê꜀¿òjù…ÿó"Äç ùF²81Dq£½ÎØg=ê,ðf}`Úã³ ¨ + œg‘Äþvuà‡#u÷o²Ýÿó Äç + *¡ø3DqâÁ)0ˆA3Át +0¶Z`–|pĘ¾ Ã#3ð•ç¬ÚƒÕ¶Ý€ÿó Äå &¶8ADqõ¡È B.F?8>ø1˜©ƒ¶ÈÑ¢Ë/|ûè$ïàÝÔEÿó Äç +!:ºXIÄpÇvÃ5€ ‘fþ@.TхŇê5YÔNWä—ÈæT¢èÿó"Äå KJp ›Ÿ€àd  +íϾw'®a…ÅÔÄ¿Ûú‚þ®ÖžgZæìæýÿó Äè +a&p9Äq¨‰ÄÀæ`fƒg¨(ZV"ådóZ§”ót[å4©ú(ÿó Äå þ¥1Dpßüøj@Õá8E¢`u¡j¨#Uf*®µáN…@Ò§Û‰o‹ƒ6ä`ÿó Äç +ú¢0IDpƒ0²¯@ü ZjÝ€µ +<ü¥Áh–Ðã$F +éîl³3¢±1ÿó"Äå HÊ®PIDp3¸¨© +±ˆ˜„DÒåÌŸ(„à\~}ñ¦¢‰§VØÁÙ½DUþ—þÿó Äç ú¦0aÄpBGà°ã÷NÎ$º§uÍeä¢ ™±³ä¢“³rúÐ$æïoAŒvÉÿó Äç ñ"ª8zq£úÃ,É€v+°±–…¨%h—’{1¿Iæ$ªŸ¾"à‘) +Ã<ÿó Äæ ‘6®8iÄqä´ºÀo ƒ§(ÈüZ> «4á„ʾüºÌdGËQ´-=È•ôOÿó"Äæ ¨’˜{ÎLÐÌì)bÀ`›ðâµ-&¡‰ìÓ™”g£^"uKpø8X(øˆÿó Äç +ÒÂX0†pÆÆ+ €l÷ÔW³¢Ucî˧DwU¬ÖÄMá£]¾¬‡˜QŒ4üDoÿó Äæ ¡.­˜IÄq5E€ÍÊœzr(ÐÓ8@“™ÇbxÄr jö§³ý* +ª)Õ ÿÿó Äæ ÈÎœbÄpýÐ]õ¦ ‰Çhţå m$}€¾K;ÀÚ¹gêÿõi©›ÿó Äå š±JDLÐBÂmïè€$ÃÇÛ8 †Ô*ÅÀ;6tÇÍßÚ5ê;Ð'ñ¨ßVˆÿó"Äç +*º8IÄpOæøq:€ÙãWÀÀâÛÀ+z›«§’Q(œl¢‚$reœÿó Äæ pf±2F(ÝœA;™‹’»LEh žÊ‹‹â³þ¦®Ç`›¢j2‰¨£¸Äòÿó Äç ¶¤È{ÊL}hЀ¨ÛxA²·Û¥‘òÃcE57R ~Yú—ý\ªA~âßü(ÿó Äç +â²IDq_•êÀ6à¡YJì»1µFÞ3°^5JmÓ[uèç/’âRby/ÿó"Äæ éº8H„q苺À®Z§r*äÔgøà:ˆÕ¶ŽŠ–ˬÅõ¸_i7þF¶›÷wÿó Äæ Ò¥pzJpoäµ($‚|«ä¦4K´z¥nïÑþ-ŠcVù¾ø1ô=-ôBrÿó Äæ Ȳ­˜zJL檷Ãp ¡1"oŒÏ°¿€Q©ëKø[œ¡°O²ñãÔ¸ ÿó Äåøª¨¨zJLÇcD6(`K8(ˆ’ £«@„#–ÄÖ£4ï-MÙH”Õzÿó"Äè Àæ¾8YDqoþHѬìü[úFh=°ÜB¢_âåwO– ZÛ÷×]Y´ü1ï±¾ÿó Äé +!­cDp=ÊMi€=º 9‚aÜ’Î@‰GTâRO®%µFn 2#î܇"¼ÿó Äç øúµ˜cFqÎüH+ L,›šK ËiÍGѧ@Ü£Îñ¶šOÍld>ÿó Äæ ˜Î (cÄpŠÞaýÊ ã38M`1B©È¾®}ùÏú †¥ßÎ|ÿ!6#Èÿó"Äæ °’ °KÄL}@ Á,ž2 ph¹0Š:¢€ÀoÄöŒŒ µ5r¹R£3n+×Ð0µÿó Äç øö¨ðIDq—¯¨à€:P4Èi€\ÐÍ8Hƒ…ÖiÞ çŠBo }™ÕŒ5þ³ÿó Äæ €úœcÄpÚ¥‚¶«C‡, RQnÀH$>&_$Àb•ÿô`è5ä?×ÿó Äç é&±˜0„qØL¿èÂ΀`  Yä~œ ëŽÒ}IçyÈ* KûµpU,P>úÿó"Äæ +þ ÐJÄp* 1¶a ” +,ðë †I‡K8J?–³4_úV¯™Yùÿ %Sÿó ÄåXš K L˜4ª굩V‚yAXB˜” &¤ÂIÌè$üé?÷`£ÞY—ÿÿó Äê +Y.œ0bq‚­:Ü°ä í¼à4}©ÅŒ©ÅŠeÖæ$Ÿª“·s#ÙA“§èë2ÿó Äç ˜Æ ðIJpüȈ À€L„f$¡;$gr*šH+z¹g¥…ã3´GV6FÔy´­+ÿó"Äç +9.˜ bJs– }¤€µB`=£ ›/ˆzî@â¦jõßì[¶¤‘ù?úÔv{ÿó Äæ દ8JÄLºHÀÁŽ,ðé¤E:™¤zlt‘½ÞJÞ%ú±¡Z ¸(&nc¬ÿó Äåøþ­2pALxÂ`€8•,˜Êg1AtÉÍEç^»gEÇ:äÚþX]=úNo›Ñòÿó Äè + ö˜cFpöÉ€ R*áÇ ’Î.@ŽXJ=DÓ{ Wº…ôî“ò² Š«ø?ÿó"Äæ Ñ:µ˜H„qÚ†Á3`GáÒ#¬÷) 9¤ƒ£¤]AëF`jªZ_/âú)q´TAÿó Äæ ®œÐKLûŽÀç˜õPòÊHVh*.©Ë¨›†T¾oõpÀÍJLZyDÿó Äæ ¹6±¸IDqGT€4•ZL €=#ÓIJÂSi*©J*Öt›m ôüjgú²Le¸ÿó Äæ ˜š¥JDL9´›#ÀÒAV©4Viš²%“š2Ö$Q·^᧴û`ü.ÚìA¯ÿó"Äæ É: ¸JÄqE 8D.Ë€ØNpºTµÜB‰!2^šJ¹þ}ç^Š¸X—îÛmbžÿó Äæ Ù& øZqôeÚXCAÊŒ2$F2Ûƒx3ˆ Óc ãN©ˆGÈ©+öP³È#ÁL¹ÿó Äå . 0KDqfgB¿€}”9⹨Ø; ˜‚7 ï—ëÞUôs[C›½Þãÿó Äç  ²˜KN|ú{œ[@ü2Ãte +,^¸@?OKü{T–÷‹Ö™-}B¶ÿó"Äç +Q¥˜Jq^^°,ÖueDªSY¨¥;gÑÌI2›‚ªÇ9«¼|Öúý©?á„]'öÿó ÄåX¶a†L/0¾â ÁáË$–8°–fCA–Â8VB¾xº³ÕAÓ]²9ð¶ó¸ÿó Äê +±*²XB„q…&€ð¹Ö  "÷šLÿC-Ò½—Ç9E9ªQvS|ªì"ÿó Äæ X¶˜0JÄLú•­ 66Úž7Rx´ŒxOÚ›~-kßU´}JÜP{þ¨ÿó"Äç +XîœPbqó“@N@9Ü’DghÑöPAœw”ŒŒWþÞ¡ßÝ ~Èÿó Äåà– ðI„LWoQšV ÐvÀäóÎ~m¹CˆQ{=v Ñ´ã7/Á¤â=Jÿó Äè +`î({ÎpØÑ`HÐ ©{@×È3  Efqu2iqw9µúŠ{øS¹ÿó Äåж˜0[LÖ7 ÊÂÀؼ¼‹í&àveT†^/š¿àâÓƶŸE£dûÐí²¢ÿó"Äè +q*¥˜JÄq}Gº¦ç!û²ÍaEŽpHñåV0+¸†h2ÚŽU´z³zt"ú>?ÿó Äæ ¹˜HcÄp•E¶ÊéI\\ 6öþJQX‚Š¨©Âþ #ðFPg§üÞÿó Äæ á&©¸IDp +Îb€ðâ°¾”ÉHéœ0¨òÍÇææ%Å=EáŒ(Íúâ·Ñ^'ÿó Äå !ÆX0„pìëˆ;:•Æ;Q<0£wÕ·=iŒ[0Ú–Š[ ê¿ÿó"Äç +©¸Z„pÐè +Ðõ‹¯\–j[¦©@T~ci H¯ò¥›íz(ƒz—ú ÿó Äæ ÁF±˜2q€ü‘`ÐÃQ=C)\Z5™nEræô;Œ¿{NW®ùF;Qý»ú¨gÿó Äæ ‘œÈ„päy`ø€IÉ}ÉdUÅçfQÐ0½ARÞ%›ÈqýX˜?EgýJÿó Äæ ÑÂxYDp«X,‰€ + `ž ㄇ' ÌO¿X=ÃèDÿm»üênoôÿó ÄåÀƘ{Np„ýÕKÁ¶Àþ'Ä ¤Ô»vh‰}–/‘U2o%Vž`'þ……Êóÿó"Äé +á*¢Pb„q7ò8†¤´à¶¶`r$hÀÇÁ‰kÚ¼wJ·÷™oñOx7Bd]¾ÿó Äå ! +˜zÊp +8HÁÒ €lÊ5û® ðŒ‰¡A!è!®þ½Õ¹*é£~¢0yNÿó Äç é +¡PZÄpTg€€µÔl·j‘‰l…–ìm³Êò{÷ìsZ÷ÈõÛ_®èåÿó Äæ y + ÐYÄp1œKñƒÜ ”Hæ1±Dhoÿó Äå ʤÈJp²”m`è‚}½¢sˆlÝŠtÏ,ÌŽ´ fKYõ>¾‡þˆ¯Q]ãÿó"Äè +q.œ°bÊq꿸€ð€Tú†RP +Cø:•cTîŽVÙæÒÊwâ:kwÁ‹~áÿó Äæ ¸ö¥pJÄqÌ–pþ€ð˜¥I?DÏ8¤FÁEŠ\Øü­Gûí1°ï}èê +ìϪ‹ÿó Äæ  æÂX0„p1Îuò€€€Ký-)0f¬®óÍjœ¡ÿ¶žÖú§¼ÎªôoUÿó Äæ á*²81Äp]ÿ0wäYt˜y"=@ F<åЗ"Ìt>n¾g]Žaðÿ407Åÿó"Äå .­p1Dpúu¿ä «WËËU8 ÚƒŸhE¬›ÛÄÖG3áÛôͨþ·¨†ÿó Äè +!.¥PKJqð•;å. +ÇÑ¡t«a~ä¸Ê>ňm)mQ}FCQ8Ÿêpï Ÿÿó Äæ  þHZÄpDâÛPŒ”Ž‘=8 +}æF +x9Üß„ÙGkŒc¶ƒÝäE^ÿÿó Äæ Ù +¥xJ„p2°ÞdB°@ÎÕ¤FÞa²ƒ ƒ¢Z”k +¿aKQyIú¶þÂ{ÿó"Äå A.¡èJÄq•Œþƒ ‰&ZÇ¢7Í%€œ ÌqÅÇS7å,íWåý^ßÐâ4nV³ÿó Äè +@þ™HJDpx# +@Dìû#úXDµ¢…B|@š„ôæ¬@&N_ÕMéîãÜÃÿó Äæ ¹"¡XJqŽ…ÎîÀ’°Ρ¹Ð: ŸLX" g!k÷ÿp¸å»ìü èÕeÿó Äæ ± +™@[DpL©•”¬4v÷Âaèá4P!ï%ŸwÖ¨>SñB§ÿó"Äæ ¸®ªP2JL0SÔ¬ÕÂƆö@AZ¸})Íøäqÿ *Ê3:ãðÿó Äç ©J¥xIÄq!ô€ð!°Ø cL +ÞÁ§‰¬™úµpU© + ÔÚr ñ +VlBÿó Äç FªIÄq²“IG¬€—À¤€^y,£C¦G‰òû,ퟢ°ò±›ñŸLÿó Äè +a&˜Jp +úŠ€‚™ë5g$€d8–f«¥ +A±ççúº£ÓëÈ=a­]Xÿó"Äå @Ιhb +pàÕZŸ°íQ%@²Ô +y,p3Ç‚‡…·Ô. ‰ÃJ¼çƒn¿àÞEÿó Äè +@Êžbp&¿ ¾ Ú½0zÌbÎ ÁË3Z^Ü;FNÝY èè™]Âà›§ÿó Äæ ™J¢X1Äq£À¬ )½4ôŒ I¬ +9Ý´§ý-Ÿ«©?/~¨.Diÿó Äæ ¸ª™h2DLhѹ`·u5YOp‚~­3“0Œ?Õ°îfìÝN7èçõÿó"Äæ É.¦01DpÿŒ„ˆ!æßô‚èHsŒ +*%ÎmÌ\óùSdûý\ÿó Äæ ¡*” jDquÿQ`€ƒƒ¬^Ž=ÌV¢ñrÊ(§žlÉÓvêÙ²ú²7Á‰Ûÿó Äæ á"®XHÄpÑ|¸ +ˆÐ86\è•XEDK6KCýŠUÕ„]!E¥ß¿ÄMÿó Äå .¾80„qOühHskè 5€³£Ú?’;äJ¨ˆ Ô,/Ü™ü~æ +XÑz< âÛÓÿó"Äç +a*¢JJqž5çåƒ#‰ªŽQúØè&¯^ãïòôx ydm ™Gÿó Äåù&×0„q:”ƒ`\¢ô²!J–5Šã!ƒÌÌWÑ5©ó/1?¯ÂŽq¡ÿó Äè +!&¢0cJqK+­ŒÀ°‘Fš‘,D§NPkYQêEò®]Ü~ú,7™ ÝP‚ÿó Äæ I*¡P3Dq9SÍ–™`*,{GÒ–£]« +‚FjGc—0»:;«y«çzþæŽÓÿó"Äç +A.µ¸1Êp ù°Uï…À¡<é8¸ò5c‰¼% +÷/©ÞåR?}NLÁwí†ÿó Äæ Øú±xJp5¿H€OœB2MBùa£](Haä¬zW5è:‘ó â«}K¹ÿó Äå î¨ÐJpw~%€ %:Žohú×´E©ÁB›[Vµ]fªH +–aÓ"7T­¶ï¬»½0ΛÐ{yN‹ðƒÿó Äé +2¨øJqקðì€K š˜µDSF Ñ£½h_Ÿåyí¯~÷o4Ï.c³ÿó"Äæ +îœ(zÊpÕÆm¤a/ )-Øø +¡ÑO5Ãc€DGËÈ4ÐÒëDç:åðÛk ÿÿó Äå *¬PJ„q§î3€ —„Â&}I†/EV²Áu†½l´büz\òŸC’^Fo# 1ÿó Äç +¬øJp_GocŒà à”ª7RLEÀAù +uY mò9 +VBz§Ú+õÿó ÄåèʱIÄp^ô³ X +ÐT¼(@X?ᢊ¢ÿmûáµ*ËßÙ³øÞ¹Füÿó"Äè ù* ({Äq¢¸'äC€s„YåÐÉØ`G‡k‹§—;°lè?ñÿ“¢®æÿó Äè +a.¨XbÄq|?5@Á?„†•ÌÑìR7Âñ&-÷ç­Ã¹®EÌ×kPÍÿó Äå .¤Hb„q;bœQ‰” …À8ƪÀ}DjAƒ-Αÿm^Î^}ò5Êæÿó Äç +.±°bqWDM ¬\k hMOŤØì&³Å 4}߹ȑôéÜ([Åسì’ÿó"Äå Y*°xIJq¦…= Àœ¤7ƒ¯@c‚ê ˆš[–Øùä +zfBª’wôF\Œÿó Äç +*¤øBDqš…j lhfJðpº­PýsûÙm®\‡ðOILR?V^ª¦¢jÿó Äæ Pr XIÆI¸Á}Ì! +¹W»A¯¹4RÃÎ)1í6Ãpgh"|9ÅŸ9]Š8`ÿó Äç +JpUèÏ @4»)fó‘på\˜P¢6\Roò†õ¾7®ÊÝ'?¾Úÿó"Äæ 𲥸JÆLbtÑàôú cfÓªk»Òqáà(: ƒZâ‰\¿aGW?ÞÊ#ÈÞ‚gÿó Äæ ª PbÄLÊr@²F¡'Dô-R¬Ø+R¿=nÆ6µV¥èÿ›-Lg)Dÿó Äè ò xIÄpò–C±vÀ¨ +èsŽ¹²ibÂÅ”ã8UV¿|ÜäóöÌV· Ê<ÿó Äè ù˜PbÊqñû\  +AK5£²Pqb¤d0 €ž;1F¶r¤ß#Èÿ˜\‰Áµÿó"Äç +(†PzFH\Ž`јœÐ ¢@éQÁîx>,[ú}ºæß2æûü7ù¯è-}÷ÿó Äæ ÉŒ(zDpm×Å€ƒŠ•(ãM/cüµu“LI]2êôls¸ìë/Q[çwô)Tÿó ÄåØâŒzÄpÃúÇ€-rà=Ù DŒ)UJ"⤹æ#ÝÎCwS4ß;õw#úÿó Äè +Pþ™˜JqG¼CÄÁ°B%: ˜ë'Æ0Qf €pɀƺ.fÞ'ù_õOæ¸ÿó"Äå ΔPbÄpýø““€x”l´ÁO7e š Š÷E¨êKÍüÃRΤ_Gvtÿó Äè +0æ0JÄpö/Þ>¡à!€p"ÃÚªC6¦ó€l„xçŽî¢6^ü +NO³¤*§€Îÿó Äæ PÎPKÊpˆ¸2äN>Û­å6¦|D@†AÌH¡ãŒÆµšæK|› ý…-îOÿªÿó Äç ˆê¨KDr‹ãDHl X{¼½ã×%‡ðü:"Ôo=É·˜ÿ$ ѧпÆýÿó"Äç +a©¸IÄpëØãöhÐ0*tõ¶*¡³rד€P¹äï­®R³x@xþcø õÿó Äå J¡˜YÄq_“€0ö9 Ù²uQÓñÈ”$ äݘ¼ç ¯$ú†l™Å—â¿Cÿó Äç +*˜XKDpýw#ÃàD]’,æxŠ„¡¥G¢ Ôt³žE;»~1¿[}ÿó ÄåøŠœXZÐL½X`¸>M +ÁdùËB`Æ‚9@ Ãx0÷¶MÿÊÈØ"¿Ñ“f³²ÿó"Äè +q +”| +pìuÿ¤!øLz?)A-ˆ0SŒ!ª7j‡<͹8ÿ±|3z)ÿó Äæ É”PJÄpî`É  +° úÿó"Äå 1 + x[Jppç^\G¹ß4ââT'âšÂ}½#tµêþþ»ºƒÿ“uêæ +äj·¥ÿó Äè +1*”zÄq[ó?ñg€ B¼y\˜Ga±uzƒs,«9îä—ü +›#êüØ?œŸ ÿó Äæ ‰¥˜IDpb»Q0p']/é|¶-*<rjFF3ÂþÍãü‰ÃŸR~Ð9üaÿó Äæ Ñ.¡¸IÄqCª¨ØÀÀü= +äs¨IÀå [D~Wå˜;ÿ_öé‰ü¿ÿó"Äå !&¶X1Äq9¿ k€Â>Õ;³üAJp¢@µ8f¥×*mCø‰…D‚/FƒË=ÿó Äè é&cÄqypЀ8Áë”´Á(¬è°f„¢MVº?òõkP_®¿8&_ÿó Äç +. {Êq"“ñQ@À€% €ˆÿ9AÉŽ¢†0ä:»P‰âƒãß×ꂸåÿó Äæ aPbÄp¿W¸ýà00–/ +  HŠ„˜u›ÿ`yÿ€†{@¯á¨üÿó"Äç ¨Þ”bÄp«K€ `²±îvæ4ÍËâáÜðõfo»kùÎßáö“®Z[®oØeÿó Äè +& ðJ +pþùH€  ÎÿæçIÅÂ8f@ü£ñ2®íVBý/è&­ýÿó Äç ¨ÆœðzÄpJü‹‚à¥Ý@ÄDâáã ¢Ð[³5<þrÔ:¯ú?pÇ…ûÿó Äç Ù&¡˜Z +qèh,¹xex‘Í Š„t>•÷šŸÍz¬Øÿ£ú Åÿó Äæ É.¶X1Dq~ÛhËœ  ™§M1(0¤>ÈĹSjÕ¿“g~Jé +ÊŸ™ýEÿó"Äå æ¥)„pQç<2R À0™ë¤‰Q`˜ºî<¹>œG¼ä·éì +ª#Úñžÿó Äé +0âZÎp’‚d;€@Êî1ܨÔ6I1l*  âÑgŒòß~Íù> D‡žÿó Äç +>¦IÄq— +†Àì€ +ÀŒÅ +Ìói¹‘,H‚¶a¨Æn±±Óÿñ¢?ÿó Äå î¾X8„pä&‚€æ‚#¬ddÁ¹:YÀá™>Åçü&³øБNý¼À8oóYÿó"Äè +¡:¦8Bq»ãô+!`Œ€CÀÙ|Ë$&øñ¤Pb°ìEêÃÓ¼Õ„¹½_øùýÿó Äåøæ ÈbÄpˆ Ý…¨„‚@‡ üíª€ Ø1U@7S +íT9ƒ5º'õûÛÿó Äè +9.®ØIDqØNã#ÄÙI|º]©z¤ï²Œ'y\¬Éô×MÕº«ÿó Äæ Ðæ©xiDp Ðã³` À"0*Š|#Î8Ò*„`»þj1T/þ®iÚéý~ Úõÿó"Äå æºXH„pA;nˆ€8ì#Š¶ +°k®p°Z+ou[ñ–‰ëç×ê#Îxbÿó Äè +ò¤Y„qÝ7â‹— ƽ@ó9œãÎ þÀÇŒA%•zÖ)ÚÍÊk} “Ìÿó Äæ ©>ºX1Dqíúp¤@‘`tؤE.â¸|#Ñ´#ä{‰tÛ§ú9:‚,ÿó Äæ *¶XX„q„K‚1ªÀŒ„ +@ñ$ÈŠwˆÃ©X Å¸âº¶‹ïH'ÓK“ül–¹ÿó"Äç +.­xaDqtCmo€ýºj £$ª²`yØä˜ll×oÅ]TJf;RÜ ÿó Äæ ±¸J +qF¤ò@“…Å3'^C0ª¡"àþo‡ +ÏâM­ü¯ø¨-wÿó Äç + ⩘bqô~<°Ä :ãNh:ì,mLË‹ÇE}Š#ÊðŸù_úsyÎÿó Äå !.ÆXH„qÖê&au€Œ“Jâ7rJ†æqÇÅÒ#·ú™¶Ïüpçúþá»ùÿó"Äç +*²8IDpo²¨yòÀd 8ä9þ¸8=Ü.ª!9Ør¡_‰®nfáoS4ÿó Äæ Ù*¾XH„qŸ¨Ú€ ži: +\ü¸ e(Er©Âƒœ³³ªÿ£SPzãÿó Äå â¤z +pTÄJÁà€LðZbÌx4 1¡Ú”³Ö?Éÿ¢¼KÑ›D×àÇÿó Äç é*¤¨bqý'Í!ÌÝä™æGI\µ ¬ƒ@ èö‘ÉŠßä°š>¿ÑýGß«ÿó"Äæ Ñ.±˜aÊq¸º+ +¶Hƒ L—Qèâo +€¡Ç Ø:S>Ca#ô1òjüùõÕ¿loÿó Äæ Ù*µ˜IŠpTú<‚lø`iÀ37™j«ì$‚àfÐ슾«áLÏ«?lºñÿó Äå *µ˜IDpºJÔ ?]O¼”I¤Ö+ÈÙLqûÖx«ý†z§ ë«¿&¤Á +ÿó Äç + æ­XaÊpº +_Ѐ `Ô늒l}‚òÂI׺ +V+~tE„¤÷Øw… +ÿó"Äå I¬ÈZDpˆhw¸,€&R}ÂUeÕ.i‘áY£û¿«Š~–zƒ½Ÿ¾r×r¡ÿó Äç ñ´Pzp~Ð&ÜAå +aâ*ô‰L’Ç@èÿõžÜ_Îä™ùývoQéÔ×ÿó Äæ ±¸XaDqt°À(ñèî]B´ÛA¡0UâIeé°ØÞ"±Ü1èZiBýÿó Äæ Àæ°ÈzpXŸd)›Œ€rc[X"‰ íæ ‚·ûQÁ9ÿ„3Ÿ£þ­ê!_üÿó"Äæ ¹¬(zDp¨P=¨Ÿý@ƒ yŒéR!È"Œœ½L<êïwÕ ¿¨w¾§Ûÿó Äç øâ­iÊp +e@€””þCë ¬dà}Ò{pÞ«Wô“êQÁ7~rïZ(¢·ÿó Äæ á¬ðbDpîßDÙ€gÂõ<[À+~h™E÷ÝKÙ6då3»oåzzeþFÿó Äå¨æ°0Y„púA:X€ @±Œpó­'>4°ð¤wï†mÐ/Û%툿½Ðÿó"Äé +¹B±˜YÄqùœ¿Q:À€ ¡.Á@2Ü’ÉŒ±Âc7”s°pMÌnü¥¸1uDõÿó Äæ àæ´XY„q?XgçE¸5`í'’ò”‰`O|)Ï%ñú2œ +2?;U»*~fÿó Äå â°XYDp?è;HGˆfY¡ì.ñ’‚£Y:¾’Õi´6¿NRx€®¯Ë«zÛÿó Äç +!.­pbDpê8Kô0fÄ*ÅOèˆZlÜÏ Y[í!/^ž`—äÝüLI¿ÿó"Äå 1*¨zDr#7ÐÂÃÀ€c à÷#8[ +4Lj%Dêg>¯Í§ XÖ¢Pÿó Äè +Q&¥pJJpáæ©ÿÑ €`ÂËÇÈÁG¯S‰Ö_¬r~¿ä6 Tÿó Äå躭)ŽL›Á’G±èåµÎäÃ÷ZÀ^¬ØÀb÷Ôž&eÿ‹ÛPšz‹Dÿó Äè +)*¤JÄpñ®ÔãæÀ0Cã`Q9…»0vàŸ‡X +êKJwÊŸ#XY,>ÿó"Äæ é.¤[ +sTødØÀ˜‹–Ýv ÐcA1J)Res‡u|/ï3óÿ §‹ô¿µÿó Äæ ‘.¤bÊqŠó€èÀ.ɴƹ쳎  Eóì½ôŹ¼´gúAÙ^ÿó Äæ Ù¬8IJq¿VƒP¥")@F ´*Ë(°1Ûí~]Uý;}Lìÿó Äå !*º81DpüƒP ¦Ü€°*'Äu Á¸ÂOR§@ %⺘Õo•~™Fÿÿó"Äç +Q. zDpON*P„ +†Qyò§Ê â( £ƒ—¶á½VÍê‚›ä¨ÒIþÿó ÄåèfÂ8)D(ÞbA‚ + €ó¿”}Žj WaÅa'Ðh†"¼Ý'oš@MýËûÿó Äè +I>±˜Zq¡ÿÆÀÄ¥@?(þ¶¤: +q¸êJåúi|Þñ.ŽšÇoì7Öÿó Äå !:ÊXH„q§ôFC P¦ÎKfË09K„гö¡å?Poùÿ=¥ëÒ¡~»~®ÿó Äç +:¾X)Dq¤ùxˆ`!<Â0}‰æçÇxDLÒÅgÈÁ M¤¼d°ßþŒåYÿó"Äå !6¹¸8„qÌßMÌ€€ +7ò-œèC¾è;uóMÞ˜noº‹zuÿó Äè +9:±˜J„qr›ÏÁ›° àþ†\Jܾ©C™Î.„ô-ӑ駒¥ÿbüï/ÿó Äæ ™>¶XIDq©ê VÎ!TŠ3 –0%0÷‘ùà7¾ë~]ÎáàÜŠÎD ?æqúÿó Äæ á>¹¸IÄqÇk<.€;$†<™‰ó ÅbÎĹQVȹnÊ µJOwC£ÿó"Äå Y:°PJÄq*g ÅÀFÊÀÇñ0rÀú ¨RVñ³»æ箇vo'y8·Gÿó Äç ù:°ØZ„qóÊÀª=Ã9ÀâE›‘”çðù.öáŽÑ'äq!wjžÿó Äæ á:ÂXH„qWa±ä²`€ @¥ä@âŽ0Ê…R=DÎ-Ôkµõ +MR¡È¡¾wõcÿó Äåñ6½yÄq ëÄ€ò½â0Å BâÂ|ªytI „4•Ì©R6Ò‘ ÛÁ‹u~ÿó"Äè øî¨ jÊr¥gü"€­¡ _ÂÏ€A)ñRÇz7¿Ü×#*°t,„`ÿó Äè + +¶0IÄpà õ?©@¤€@ä^09'•Ñ¶"h—ê.Íó5é¸s™ÿêùƒÿó Äæ I.ÎX8„pV& Fx¸ücÈ~,]œLpJõ *ž#µJ—öÙŽpqÿó Äç + +Á¸HŠpú®AàÀ¨"ì ó¢‹aæòïäýÉ¿ðcMŽBÀ³Fÿó"Äå Y +¹˜YDpÒàÐKH¡q@˜(UEBEBµ˜5¯ø¸Yï|ôàtÞÜÍRÿó Äç ‰*¬ZÄqÅ„t€ +>×Þ’Sµ¨…Ed2³Kùùn%—“49×|´Qþ¿Î-ÿó Äç + +ÒX)Jq~aÀ  hÆô T gœª˜>Ù í®B¡L¬§ Ç Â}ÿó Äå ÆXYÄpׇE׬žÃÏåLÕ”P‘b +ðïmr±Û³¶q~¬ŒŠ”H ÿó"Äè +*Â1Êqú‚;¿X* ~ @À ÀüïçË„ÑôËÇX\‚Æå-øç ˈíÿÝ« ÿó Äç + ¸(ZDp ãê +?\͇Æ1Fk#ê‘7Ød1{Òm.¥±¹—VÇ+Øð .õßÿó Äåñ*ÀðHŠpVÔ±ÀÔ`äë¢ÄÑ:Dâñ £×—˜j¯MhfÿEÿó"Äè +™FÆ8IÊq=WÑñq `>Ëi2ÊH\…þs.B)]8Çú„ÇkDŒ0Ìÿó Äåðê°YÄp È ÅÁlÄb‡Ã*"‘bÐ&!/ó°ŽùÚ°ñjŠ»Èê ‹¨í§ÿó Äè +a´ÐyŠp Íð†Òàò9˜¬#ƒ¯"µ¼”|±÷¨I_Öò>ŽOƒ/«tÿó Äå ÁIÄpj0ÂzÏæÀÀ€PB èéÐD¤NE!€_‚vüÉ1^Év¡ +gõýÿó"Äè +A +°({Npf:°À qÓΞ%%Ò£Qjí®¼Æ¼jÙú©ËÅÿäÿó Äç + +Á˜JquQ¢Á@€,@P:£ +ŒPµ €‡•P¾ÔÐ1ñ¶«2‹zþ›Žÿó ÄåÈÊ´YÊpddG˜« Y®`1ä2Ç𱺰lÉƬ§ç +Z¾Â¨ÀžQ2þÿó Äè +9*° Y„p‚kw.àHP‰@Œr‚}M&*7vÐ:“ÿ@ßÐôýŸ¹ÿó"Äæ +´°ZDpÊ ®G醌µ*òsZÈlêhX!Pá²Wµs€K›I•4ã„ ÔRGÿó Äå !Á˜8„pô<}–@€ý0ëÈ· '4Ö9S¢å +Õ<Ê  <ÎÞe7(»ÿó Äç +! +¾8IÊpŸñPùùPx µP”I<ºŠÁ6Ž qÍoVÀ Vzàš¼¾Ð$ÿó ÄåÑ +Á˜9Êpzj~°‚2#¹ÑäV2|Þ$ðÈ|ôå¸ãëöÜ>^Ôž5!o7¿ÿó"Äè +™.¬[Jqñui8°³‘ØhKâÉþ“R½Ç5²ÔS~ሌ¿z¨ÿó Äå  +¹P:„p:™ƒéS%Êȸ†y(ž\w~xŠ’2™´Â4ù ‘úÿó Äè +A*¬zŽqu07ª,€ûTû‚á*Tc&>x˜~c–VŸÅ¼ço«)ÿÈÖëÿó Äæ á +°°yÊp¾œ ùÇûŠ„82eQ× Ñæ08ôã}H¢ßáÊ ^¬ÐÅñ}ÿó"Äå !Ê8P„pÅŒ€äBþ`¨\9‘pÇΤª§ÅK:å­¾Y¨9Az +¸_ÑÙƒ¥úÿó Äè èâ°(jqQÊý±¢òÝ?£©D—oé ÆxPâTêùì£Eþ Ÿá„ÿó Äç y´¸JÄp˜'G +pÊŠs‡œ„ +Ó 0uô³|Ù½ëõ›ý]L¨#çoú¨ËúÃÿó Äè +a´¨J„pþO À·;òDkf»P„Ã7/åzV;ÔGvNíž´ÿó"Äå !:¸yÄqWü<(=ÀòŒÉ€öQø’ç`óði«{¶Ý"›éRýhçZ*eÿó Äè Hî¸J„p¶%#`ˆ ˜ÖT© .Ó¢º†Fñ£šå;-ïÊ7ųýfõÍÿó Äé +:°ZÊqÐë@ à€ÀŒæ ¼“!%›„×eF…~šû%çhäC øœfÿ7ï¯ðÿó Äæ á>¼øyDqj€ÐXDh™Li# – Axªüƒlbû _‚¢ý(…MÓÿó Äåñ¸jDq™æ2ðôI±–_âf*÷²ã3ÅÊ`!ŠKõOê`'øvV·GŽÿó"Äè +‘B½XyÊqO¦çàÏZ€€ŒÉ‡+)`€˜ ‚æR“]E&¤/ð®wúe'Ò¨Üÿó Äå 6ÞXH„qÿØqÂ%cApžÊœM˜r¾£ùWCè ž9ž•ÎTf«Çÿó Äç +:Æ8YDqÍŠv €„|52oÃ1Ý‘3J–9=ì”ßúÔ ‡nŠv÷‚Drÿó Äå‰6ÄÈY„q¿i[0õ€ü±í–ØXÅX&ÉóäG÷Ô ÌÞPì.Tÿó"Äé +q>Æ8IDqÍgn˜ÄÉJ¶ÇFL!Õ“q3¤n¯rýWÁ¾¾`úÕø•ˆZ§¬ÿó Äç +*ÂyÄqt€`€‘6ÔÄçFõ‘8>¨Àà”˜PæE'æêÇ?ÔÙ5tw‘yÂÿó Äåù&ÀÈiÄqñyA‘Ò‘€@8@÷+iqBaBO'AQƒ±žOð¶#_±ˆ‹bÿó Äè +͘QNqÍF`À e^—Þ¡ÑÑ +£Òq­¨}1*®’Ëò\q5˜4ŸóÀÓÔßbÿó"Äæ + &½Hy„p}l² +€ƒó¤ÛT  +è¬ÜnÞ5”‡Gïy¦˜ÿüå¢ÓÉñÛÔÿó Äå ºÅJDLÖuãgÀuËŽì-@¨ÌŽâja3>Ë™•Ûë=WfúnÝNÍ~§ÿó Äè hâ¸bDp@ô' G±²2ó0AÀ<à Á`®ñ¡Å`üûÁŸ:7Ô+×÷ûª)ÿó Äé +‰*ÁXIÄq’"†w:PôÖó4È`pÓJ#ÅÔ.÷‰y”nàËS [WWû`ʧ­ÿó"ÄåðæÚXIJpÉ€ÐH 'S³—&ÆbN/7©G«tƒÍŽ42NçüF}¤Ñÿó Äé +â½@zÎp½ê©a°„Ú¸r5¸Xëñ-–ì"îxô¦»åÞÉîø†ÍæÉøYÿó Äç Á&¸ JÊqíl€„þ§yÌ‘"4ÖÊ-T¤Ð¿ƒã,ÌØ&HfßhixÅ‚v,ëÊÿó Äç +.½HJDq‚JF±p€0êîk+ÿ³ R€Œ˜ÆQÜöoZu»x\ûúSñÿó"Äæ +!.Ö80„qZô“ À(3þ`à@ZÍ$_€'ÁÞc•õ +Qƒº~¯8¥ÿó Äå‰ +ÄZpŒIùì™Ã¡í,÷fY®&Û¿Ë9õÔw¬Çgű¥ÑÑ¿ÿó Äé + âÄØb +p +‡RùÅuF“'×3¸ÃçA$rªÌš»ª9ÜäRÒ58!~ûÿó Äå± +Äb +q‹m6€1àijC0¦RÃ"¼ âŽÒ6›ïüHë ù›Se²Äÿó"Äé +`ÆÀÈzFpÜ| – +€€% ¬iR`dR³ø#Ÿp¹ðü{ éØÇ OEIÿó Äç .͘aÄpqä‘€†×oçÊÁR:3vK8-¦‡âI"íŸöQpƒ½¡ƒ? ÿó Äè + –Î8J +Lÿ™ñzõÁXΚô]PŠ HlaÛ‹ ­üû—øw°µØæ»Ë ÿó Äæ y +ÀzJp1MWà FEI6 +PE*1픇ž§Unþë'P+Ùµaoÿó"Äç ù +ÀzÊpë¾ì „!Äi ºÆOì…ƒz&–u(éuÙÊïüV­îO÷ÿó Äç +ÊÒ8jpâêHà$t\_ya¤#ÚÀ 4`|h!±„œ‰ö+ÎwoÊíÔ?™ÿó Äå ’ÍQŠL]M¡„€€ü #úä‹Í·‰ŠÇôj8mÉßå÷ˆN½¸ûÅ¢„ÿó Äè +PÆÁèy„qúNÀ†¿¦¡g¸VŸLÂ`Ô³—f¿}{:-ïm‚šeñÿó"Äå 9ÍpIDq_$ÔPh€ +‰?iÈLþGd"/ø›Ÿ9ЧÕøÕõ;oœÿó Äè +`æÁøJJqÏ®¬ „ .Ï;ô; ˆ Y²O:4¯ÙÏQ´ñ/!½§ÿó ÄåéÊ0IÄp»h$€ ²æs†¬Tƒ`‹îS5Aoý±Î˜¬´×Å' ÉÔ-ÕLÿÿó Äè +*ÁàIJqSwÔ `è +~æ’>E)!€‰ž$Ö¨éÿf„M¯iWÌKÿó"Äæ ÈÆÀ°2Îpz)ÝN+ŠÉ2F¨] z-0+ã)º3õJú;~#¾„Áþ²Ð ÿó Äæ pÞÂJJp(p> Ð€1§w_Ãp0F$0jý¹WÎåap_”cÑ>dobVÿó Äç á*½@J +sN88á¢+kñPÀ¤C1`|} ᆫ>qì…þ ò—º»‘½ÿó Äæ 8æÁà2pofÚí +`Äbb—…ü(¸[QŠNŠˆp|÷1¯ù7ÆgO-BC¿Ùÿó"Äè +i&¹@KÎs7ŸÀ +¦@Íþ˜Þ`åÙJ~Ž ¾ÈßåOÚÿó"Äæ +:ÆIÄq-_ðƒ¸à‚Å2P]æíî·1‡ƒeëhœçNþçî~Qh^Z£éÿó Äåù6ÍpHÊq˜ q°èFN$R~tLÉa +[Êçí[†ýh ɵŒsk)ÿó Äè ©6ÊIJqË‘è€fU›‘B‡€>˜"XÅ…Þ¾ƒîÚGp4—Ǫg¡Š¡ÿó Äè ù:ÉøINq·ª?ò¨„€RÝf[BÁ–  +=‘ØÁUÌñ{ÿ!Y›˜sŸé„…¾ÿó"Äç +):Æy„qNPhœØèÒ#l£„SHØ%ôHÍv>ÂÛ"?çsŒ¾Gö1›M¬ÿó Äæ i>Î8X„q¬mÒt€ˆØ$×8ÆqÁ÷%2g[w8o‹}“í$£+û qáìÿó Äç + îÒ8y„pû€ä@"XOá2€„Ä+ jiDÔåûÅ°kŸP%¼0ýÿó ÄåÀÆÖ8iJp–ÀÀ¹`Ä‚`VAùRúú8zÄÅ19ÿiþÙ0uÿó Äé +y:ÊIÎqù²ÅvÄBRÄÝÜ¡dk°L<€ÀŽÜ-ü_>„Söçj|ÄyIÿó"Äæ ¨òÎIJpHدçX¨Ð¨ENÂÜ* +Úê…¤R³0ùý÷öþªäÂåú«LÙÿó Äç +>ÒH„qÎ}~ý…œsL³@"CXãÅ7ÛÒåtoSoõFmŽ/õÖÿó Äå ºÚ82DLÐì Z†úË Dîâ Ø¬W©ž‚×NI…{ò2'±A…Xãÿó Äç àòÒ81Äp•UnåÐâ ý›ðq@áX*aWÒô?|6æ>ï¤-9ÊÛ ‰2˜Nÿó"Äæ xîÑøIDq§[" èŒ• h‚ÅñX\-—^›þÌ"fv«pù_Ûfÿó"Äè +™.ÍøIJq÷B­ûÀþ>Æ‚¥I©AbM‹õoO_µïþЫê†bnÏ +#R$9úÿó ÄåàòÈ2Dp‚ÝÀþ§*d"òJPmV±ÞãkÌîrÀîã3‹]:!©Ø­m\ÿó Äè +`âÚ81Êq[qW‡€,õÖÞ›I¬}T…¬^’ôOj¸Æˆ&Ë`ŒÊ¯ô]Q¥ÿó ÄåºÍèJJL¾€À“„‰ G€áš! _òúÞ­>#ŒùVÇžAK¿Óÿó"Äé +©*ÀIŠqññãèþ]`ø?Ê¢£UGâ[t8‹®F•ý,Ž ^‰íTÇšúoÛañÿó Äæ Ñ2ȸI„q¯ÆàØk[ó)†kMaîjymô…„îúùêaÓ­ót`Ç*{ÿó Äå ÞÈJJp׋P–F€ræUÌ^bð%˜ÆT[àü/:‚$f}_“;ôtPÿó Äç + +ÈJpÑÆe¯bÂàô +E0ï°ƒš˜ÁÚ!D*yWb‡ý‚þeç«›Õ+ügÿó"ÄåáÔÈJpeßX,„ tÕo,áLßÃŽÔRÓ¢ˆ†š…ØÜG(wõ'ñíÿó Äé +¡.ÉhYÎqFâʬ` è `5ÔPÌìÍZ€vÕ•¼`€ÈÞ4}óm24?üËÿó ÄåÉ +ÈZpˆK¬h¨ðäz\é( #P„V¢Ši(@,ïÈ/·ð¬¬ÿy¿®ÿó Äè áJÖaÄqbƒšÈƒ8V¡w‚¤¢ŒP^PB´ó±¤¬,Õ²ùô?‘íù†ÿó"Äç +YÚØHÊp­ÅC€ í ¡ÊÕ@z#@œÐÅåOjŸç“éâ:£h„ÙÄÿó Äåù +Õ0Äp„r…€@sC#S@:PXã–¾O&öú¸ž¾ÀŒ¢cÑMSÅNÔs‡Nÿó Äè +)*ÎIJpšqplÀ L +µYÇLFΔ”mGTÃé'p“\I‰gâÔå[uÿó Äæ àŠÚ8BÊLTb"ô0úÀ 4ŽGtGøÒ¸S¦ÛìЛñ-~¤þŒÉrNÿó"Äå I +ÖH„p§;@ƒ($©ÚçdN~†•âƒ@Yó>?ÐM¡ ùÿAôoarÞ‚ÿó Äç ‘ΨIJp¼\zì€P`f ¿) +2 +X61IÐækyŒîÈ>¬EËÿó Äç ¹ÑðAÊq˜:ĀΈ1„qí ØT0É +@tÊ?(©k•  ÇqnðlÚ‡åêq_±B3'»)k÷3ÿó Äæ á:Ú8AJq7ܤ€j“(8¶Ãcá–ñÁŠÊ‡>ñ»þ‰ÝPÀÙÛ‚w¶¾ÿó Äå >ÕPIJqƒÜ Ô$`BFœ0Õ éL*ÄO&cäß®£ÄÅßÌw:tˆÿó"Äç +16ÒYŽq[üŸãÇ°öƒlبù;°¨ûA»î"Š8hRê«þb—éSýÜÁÑ?ÿó Äæ ±:ÑøyJq‘ê àðdõ¹„ó`p_À̶µ;+þŸC†…gýè’²‡sÿó Äæ ¸îÍøaNp²é1¼±@åYåKŽ‡ô{±ÚÒ ‘ÅÃË·¥åÞšÿó Äæ ¡>ÑøH„q € œ¿–L€6U·ÂP©/Ã$ÓWÊ,†(ˆCÔHzz‰ŠXÿó"Äæ pÆÎZpÏÛGUõ]p˜…ƒ´•©Â`kKÚÎm®3ÎôSÐruçrYA&TѶvÿó Äè +)>ÍX +qE!ôÆèŸÈq#¢v6—{X-]›”¬ïçIØüLÿó Äæ ™:â8H„qv#>nåì£`vQ§Ü‹ØO?Þýã®Øà@\EfÕÚwî\îþÿó Äæ àÆÍpYPp=æÀø$@”:´þ¯R´ÀænQ Hä²Ç×EÕÝ /”òüdÑÿó Äå¨òÐÈ0ÊpT¹mƒ-øÀ P˜÷¬(5W\£ÈÊ=önòA +QEðFwü|†ÿó"Äé +àâÒ2 +qõ}|5uàLÐI,õï³&×?+a¬ÃNþ«‹S·œeº®M›ãÿó Äå žÕP3 +Lwêý‚]˜Õý–Gã41ÀJáe«½ŽÝLÇWàêOªºÿó Äç +æݘ1Jq +—Ÿ¯‚ðÐa¨»sB• £|CØ`òŠÕ3\oÕb!b÷òº—áoÿó ÄåÐêÌBp0ž^T¨R+D?Õ`8BâñH5v|7¯„ÏB} Š ÿó"Äè +y*Õxbqf-ø Û`®ˆå§@éSºdj‚bßÙ +|}F2Ã]Ôh‚Œ+qËÿó Äæ ‘.Ú89Dqkžr€õp X´H“oI…U/îë¨{Û"‚Š~å€GS’vÿó Äæ ‰.Þ8YDq²0ЭL \e$Ž„ø€â@å,M_ð7›jõ ,þÌ«Wбcÿó Äæ Á*ÕðyDqÿýYJBîÓÍb)=`H NânªyŽät +Ob™~ê0–ÿó"Äæ ðâÖIJp÷k2ä€0C!5ÔYEƒš¦J”»6|†ß̼`¸X³ud¿­„ÿó Äæ Ù.Ú0ŠqŽû!@U@È"D°îègæ'u„s¥?;Vëw¦åô9H+ì‰ûbÞ¿tÿó Äå žêXI„Lþ€ˆYñ–¨„•õ‡îøŒOJ¿šïΕƒ +oVAoü0ÿó Äç ¨¦Ä3ÐLŸõOå`éJéaMô»‡¢§!O½Ã.»/?­wóz¾v3?óÿó"Äç +Q:Þ82q—ý~”`ƒ”R„Ð-‡õØÏ^Í6éG~Ô¥ª\p9ŸB­ ñcÞÍÿó Äå¸îÔ0ÊpGPà@ Y`Ð÷ÝœÉXy„qö/j¨3È…ƒ³‡Ö0Ð’×i$íM9o#+r+ŧ&+Ô˦”HÃêÿó Äæ Ñ:Öa„qÓl\J€©TƒÕMª ¡2šU sžÌyo>¥˜µS=wúœÿó Ä帺Õp+LE|=¥`¨à y¨î™Ù`ƒœ,L0Aºr[%«Tê1íR3ÿó Äé +™>ÍøaNqþà߀ƒ“´Gld~‰f]E™^­UýeGîÊdô¢ÿó Äç +Ш`Šqä,zÌ¢ +Ф“8쥠0¡TAGÌwˆÿ{OLü¯õ2DŸÿó ÄåÁÞ80Êq_ªˆzÀ삠؃¼ ½¥ d3šÜYPQè7ÕÛP×ê:·l6†ÿó Äé +ÕxbNp©fÏ-@¬€BèäžT8Ê(¶Ù•RuÆàÛn¨ò¿ÿó"Äæ ©ÑXbq iáv̱!3k Ë/$V;§¢yàH²ÎÍVPïžÛ‚ËβoÅ#ÿó Äç +!Þ81DpØ‹úu 馥;8±)v¸5-ö¹ +ü^w¡ý¾Ž µ?!ðÜ.ÿó Äå "ÙøIDpm`€`g15¹fÞî>â¦a=Ç.˜~ë+]ÙsÅX`*«úßP·Ûÿó Äç +"Ú80Êp^mMºöÕÈÝ)€XÁ ü¸Èe +ÅË$B¤¹+¿F&D{2ÿó"Äå XÂÚ82LŸ™›CÛ=̦øb\ľDù4ú …¤6€¬A¸¯–—q(.7üËÏ”ÿó Äç ñÚ80„q§Œ@¸”Ÿ•jÝ ‘2Ä,ïÈo%(ŒsEHq‚âcµP[èÚ¡Æ&÷cÿó Äæ ÙÞ8I„p²µÿëÔE$‚Ôô–ÚŃ¡%ÈRŸK%€˜ß;Ý=ˆ•vBª£ÿó Ä嘮æ81„L?oÙ ÆpL à,ýÄ`‚…§ÓèR©—€âÚëÍ@›“W©–ïÓèÚÿó"Äé ©:Åøyq-U¥ˆ è0` ój…hö‘r8;©ø‹dÿ2[a áÎüÿF²?˜ÿó ÄÞ +1ÕpAFqÎ@ÌfÀ &÷MT0òƒëÅrËCþ#÷ßûöðìߣ!¯œ/ª;Øÿó ÄÜ 8žÐBLLEà€ƒ zTïç‚…î J#ˆ¶”<Ê¿¾PeïŒs~_E=ÿó ÄÞù"ÜÈ1DpY5 p¥ÀÀ€Á2¸8cŠ¨T +܇&·âˆ¾M”¨n¯êîÿó"Äá Y +ب2q¿¥E.€à#B•rZ“#2Là: .ÚŠ‡ïà!OêÆYÑyÕ‘ÿó ÄãÁ*àÈ1Jq[«TjÎÀQ0ˆøå0‡ + ¢ +êWS„h[gMÇ}Õά¥ó}ÿó Äç +6æ81DqÁ°ßpÑ Àïï–m Å¥KBcï›Ð_°+N^ßYTÿó Äå *áP1„q_¯`ä‚R2úpû$cútÉšÄÝý ¬U¿ók»1̾ZT`ßÿó"Äç +Y2ÝøIÄq÷e¿ÞÄB~Ž/æÚl~h4©D*ÿÕcWÖöþËïv;[¯ØŒ5ÿó Äå .áð1Dq3Ðpd)@š³XLk+VÌ,ÿË*’ý8Z®Û͇éÿÍ"ÿó Äç ù*â0IJqÜAúà +h,Ui› ¦*+r£zº(ù­Ñøýr,µØß"®åÿó Äæ á*â81Äq±”à@EfçVDXrуPbH§¤<Ü׿¾ [úG/œÁ6¾ÿó Äåñá1DqÌC(È ™…‰ Å’‘#BÖøÎ>÷úïAá¨ú–ZHþÿó"Äè +1*Ú8JDqd¢¿Ðã¤@{åÌÉŽ¥e¹>QƒV-œÝ¢ß{âiæõQ4Qÿó Äç qÝøJÊpb7À@àRâT±1c`ª6Ü-•O(Aê¤Ë/¦÷Æþ¡Cõi¹FîUÿó Äè À–ÚJJM²ËqÄA@mÔtT,%.†geÄ}#Ö j嘩ÐBDrv¶Òÿó Äè pöÙøZ„qßN&ܨ,à€‚ U¶×ô•x7»@Ÿ–qa{äa" +ã¼Æž#Ó¶~èÿó"Äé +).ÙøJÄqÞcª°Üä0Ȩ}W¥ð¹œ5Qu49…q|ôá1ÝŒ—ˆ2Xÿó Äè +1.Þ8J +qÅxàéÌÎB„” (ùXd>¦ +û«4AONvY›RÊï/‡?ÿó Äæ ‘ÙøIÊqT‹ù0À ©_$©$ñ†¥,bΙë³/ä;oùì8‘ݨi•¶ÿó Äæ ¨âÑàJNpÿj«öÜ‚€‘ 4,¸¯\‘¢"£©PêŠAß°WÙ߆½ë›à¿-ÿó"Äæ ù +ÑøbÊpA¿í@€ÀHkhuiXšC…qÀ,âñì“‚:‘ª½Àü©ó7«Tÿó Äæ Á*ÕøbqL›q%€È è)¡>@\~Ðê2š\Z¥öà3§M;xߪç îÿó Äæ p²Ú8IÊLÆ8”¸¤ €d +0ô*ËUC¡xiØy­ðƒKëwÞÞîzõñWõ3ÿó Äç  ÞÉèbp¡ÇkžÀ€#H±ƒ6ˆR.tl²SCùBÁ¶N¡‘"õ:f—Ôÿó"Äç +Q.ÉèzDq§Ô‘Š!õo,€ÀŠ Î +Ç¥Àáðò#Š·YÓb’¾²¡\[¸Ópÿó Äå !ÚIDqélØÁÉ÷Ç¿|±ñ_“Ì¿dº¢/þŸ©çM«€þ~`C8¹ÿó Äç Ñ&ÎaJq:hª@H¨Üµ§ÕÁÀËùž½b qõWÖüЀ,þ_Ñ@ ÂCwWªÿó Äæ i*Ö8IJp½&f…IÏóÂÃ.ÝuT?œ# ʽ[µ§.ݠ̀ë¡F|¨FIž9ƒÿó"Äç +! +ÍøbÊpãfzÆ-þ?çÿÔHó‘E +YZÉ€ ’ +#ºCQ¬î°/)Áê&Jÿó Äæ +Y.Ò8IÔqcY[û†¾§K+~¦oýõ`’šâ“as虀B¡ ^#!Ñÿó ÄãÉFµXcÖqmyZÿB+±± º<žÅŽÍ#Ê$w'\FŠÎu)M^”Þý)˱Êÿó ÄΨæÈ1Îp€Øléê(†§àm‹ìzžb¿gpô7m$þu5C¿>U?(ó.øÔÿó"ÄÒ 8æÌÈ1Îp`øpb™ ®T +®I€òhÞPßS+]Iêßã_æ`m‡1 bàÿó ÄÕ ââXHŠp¢k#NS˜T;ãQùÿø|K¹ª__óõ¢`ˆáèœéŽÿó Ä× !.ÍpaJq&<òå)¿RÃg™­ø}ˆq'Eñ<áaòv4" ¦(l¢Šîÿó ÄÙ 2´cp¦iE—õ¼ÿ:ÞW"ÊÍÈÍÿþ€åÜ5â¦bÈ„`Ê!§.‰qÜÿó"Äù +ÔÈITq|r… +¾j0¸˜ÔiƒŸSò…“óH€œ +“lÑ'¸0*«Æfÿó ÄÈa2Ý0Šq¹ÞÞá#üp=ô~¿ê&YúÞ_ $ž’ˆIQ-É©“Ìä#_•Úÿó ÄÍ  +â82po_öûˆ„¾( +'o›ÍAw€˜QÂ…‚¢Cyž¨ž\Øѳ2ÿó ÄÐ šÕxIŽL»þ¬]~ÌpUFÿ¹FVmPÔIÈ3b†ùTÁú +eó=_¡ÿó"ÄÒ¡*ÈI„q†¶‹êßæ+r² ÇœÑÑcdÄ„°| |3­éHÿó Äæñ6¤cqiþQ,…hŒOC@¡wwyÞ WæÚéRN›A­3Oõ°ò“•\Ìÿó"ÄÍ AÑ0„p‡(ÄÛgUz‚*Æ™B cS•J*‡ïµ-4ÈúøŠ½ZØ$Ñ*ýDÎðpÿó ÄÐÙ +¼¨ADp%ÓŠ@j¹šb#Þ y†ÑÈÿìøñ6ë€ ô8Oj šÿó ÄÓÀª¼ÈY„La¡ÂhT +¡y“9CÓ>qÈÉ-ÿùĘðú8Ðó¡.*ÿó Ä×àæ¼Y„p$!Ažµ”ž«Â¢Ëè7þžAUæZ5(¢ƒÇ•e¢Ö`ÿó"ÄÚ +¡´ bPsÂW§'÷ñÆ]‘ÿMÌ[”U`—[#m€ü4 +.N×%Æ bß¹—ÿó ÄË + ÎÄJLp÷ûjBtDùØZ»+üð~ÀÔiÀ­ë>] 'C§OÖùüÔ~¯õ78ÿó ÄÉAÔ2p8£ÔÄtQbŸÿ«‹'µAK’ÀÆ:ƒ€ÚXuÄ\•}û¤ÿó ÄÏñÐÈINqðºõ=mïõvR¹Ä!€… p瀒 +Sl±Çp +,¿Ù˜¿r•ðÿó"ÄÒ .á˜0„p£ír4EN§›CyŠ€ÌX |ZQiuƨ*Üsúê’°}ð| 2ûÌÿó ÄÕ æ8X„p„A¥szÀ L,¸Y‰ È1ÆâÆR…ÎFPPÌ»î+Öu<ÿó Ä× .úX0„q*Ùñfð·#"£1Z#w5aC¾ê+†ÛºÅézÆ•š3wí Q›t˜!ÿó ÄÙ !ÈZJp¡6û£*@ˆÖµþ½å±Ù¥±õB•Õ‘iÁ…¹3ç‘}«á é:ÿó"ÄÛ I6ÕxB +q’…ÕƒZ— + ‹mÆ;ßݽÇjà9µ2ëÞþßù¦¦*¾T6  †ÿó ÄÝ ¾ÑIŠL¥!@BÀA‘;ÂOÓÃ$ý8£uy®•aƒšž5j|àØ7 +ˆÿó ÄßКÀ[Lï Ä6/äüTðèf¤~÷³íwÑè,ôð€™,¤…Ul©©i´W[ÿó Äâ‰:¬¸{ÒqÈ9ÿ.órÕñ0]óæÿ} +¥§úÿ~À³Ðx½O<|íŽlÓÑ!ÿó"ÄÆ @ÞÄa„pN._µÿ–ª²©s—7(åüûk¦i40ÿeÞnÅô®õºgh~äãç%µõÿó ÄÉá"ÌÈIŠpªòý¶ë£j¶å'À4úÈCX «ôSm‡ ‰|¹™[·­EAíYÿó ÄÌHšÕp0„LìŠH òq¨+^PTƒ‚LÉo‰µõ½œ§%z*ü¶ëøkÿó ÄÑÉĨ2 +pðòcCné¤=4«íÜé\3f©õ°ƒû¼§[øÖ~…‹¼ãµÀÿó"ÄÔ š¸2ÌM€èÁðP +¿HÏ" À +K(²ëĺVõO6µ£ß7útÿó ÄÕ9:¨{Øqš“«ƒÑìÊWgHFàHˆ€Á™‚MÝW‰ø¾LrƒBÿó Ä»HþÈ1Jp1–ÔÊÿ€ +L@ÉZ@gaú7Hí Bì’ ™V#t­¹;ÿó ÄÀñ6ÍIDq>]a˜qÛ~Q„Ú§Å.Y0p";„ 8B4Å"ÞÚ§‹ÿó"Äà ¼YŠpýfK£e¿ïê/˜çef^`œYbpö€ÕmÁdn§GùïÙ«ðÝÿó ÄÆ `ú½xJq™êßßÕÛý›÷à±@ + äiÐÅ8¶*¶ WCj(_hƒöç6«ÿó Ä» + :ÀJFsSvPI†/æ€Tp2ä +@AÜ•‡8 ØxY¼]=œ$—BhŒzèÝÿó Ä­`ÞÔ1Šp>¢ƒÆâ`=ŠË(2±i(å0P@U8K$>+r6Ïü(Ü7ÿó"IJ Y*ØØ2q_AUÒ˜`é’IaÇ*‡ÒÇòé­»]TîöˆKÍUQO'âÕ}dÀÿó Ä´Y2ÔaŠqˆ,öôÄX«eO¬)Ðà’(Nÿ.ƒå}mîw_é"Ú™ |üR\ÿó ĹÐæá˜IDp'ç-"‘*pnµÙ™CsØв)‰ +Þñv©ûÊ»I<õ"àèæÿó ļ æݘIDp´º~ÒE‚! ƒZ Oã¼á–vÑ›gfº¨†Õ-¡@K?B6"uÇÿó"ľ 9.Ð(IJpNk8‰À¶Ð¿þüJ¶%QºÃìÅ*™‰€õ"  ŽpZ$…ÂÅÄÝ ÿó ÄÁЊÕJNLÒ×$%w#ƘÍD_=œNEÑU«Qz@œZ´všw~ç!B¬åIˆï•ÿó ÄÄ€æÌÈHÄpøƒ±cÐ#:W®š)[“J}\ô&Œ&6(€ YôQ³37ÏÃÿó ÄÉ žÌÈJFL¸ùØ2ÏÙ±èÚ¿TJÜù@dô!X +žëÍ1”UŠÃ¨ØÄÿó"ÄË XâÄÈJpD¥Á/ËF ëSr3Õµz€²d¸`‰!ódÄ£Æe(6¾ÀZºÿó ÄÍPšÄ(J L¥Ä'>ÎÞ®Æjnì®èƽ©pda0?¨rQ$•$-Š)°ÿó ÄÒÐÒÀJpur¾DÒÔµ(Ýù¢îg²œ ³Tñaà{:Õ +¦…àõê~ÿuÿó ÄÕÉ.Àbqÿå0üäB;µ+‡é@¹ô»€A:Ó)IÛD&æ2˜‡K34¼ÿó"ÄØ ú¸J +pì¬Åõ(þ…Ø; +Ò +¦Àœ ®|Ô…õ8L;YðoüSÿó ÄÛ ÎÀÈJp°ÁåÌõ29þ¦úê;»>Åô€ð›´3äw\µT’Y«Yÿó ÄÝ +á.½hbqÒT_ñnç¦X4±I ÑÔ&"Kî ¾O¯!Lb ˜1Êæ]Á-‰ÿó ÄØ +1"ÈØH„qö0J"­¦PdÓ1µ,ìjIq ÿÜ­Y„ºÌK”DÙ´<·Bÿó ÄÖ ÖÀY†pÅ ¸U#Ðø0ŠÚi"„׊”ÈFò«¾ÔøˆÀLPì@—.ñÿó"ÄØ ®À0bDL@d8V¥ivK°øšw›ÙT<Õ ˜Ø> ŒbÒã¹%Vß,ƒšœÿó ÄÛ øfÅxbD)¸|x`žÃë¨z¾d;"ªq¡"Ï$>Õ發Qš@H'ðöÿó ÄÚ ¸ÒÍa†q21D›Å +:§õjÔ;ó}SÚ^Å6³á2(v¡(¨ˆzsÿó ÄÒ©FÀ8yq‘ U€˜Z}e̪£N ÀMÚYË BÊb’š… Þ‚ŸŸ¸ÿó"ľ¨ŽÐzLLl‰Ežƒº!iTc«—~v³ÿ«ˆÜ䔬ƒžBþ*²FDJâÅzÿó ÄørÐbFHã¾aCÜ(¼àfÀÅÒÓOª"-Ð$h'®/Ò7,äšã„¡ehÿó ÄÇ ¦Ô¨BPL¾÷Ž+å +[`úúm¤Œk Ãò)ÄDˆâÙ˜Ðv +¥¾9Êwüÿó ÄÉè®áIDL¹ÿZô¯°2îç’‚‹îg@€u± +èNBbæزA’E zËÜ Ç%üÿó"ÄÌøŽÙXHÊLs#‡„´í­–wÊ0”’Áá + Ò åqW§[’ÐtëÂÿó ÄаâÈbÄpÚ £èÁ E™š~¬õðm_E´ü”N<|ú8$I²1ûÂ!õtÿó ÄÔøŠÈ¨JÆLiq"÷©Ž¢³5Ôóþ`œ ‚„cÒ¨\¸i³·moܲáïSc²žTÿó Ä× âÐðbpl‹0r0É5sHò ðˆ¤0×HDœl‹^Ì1C–O¥| +bG ÿó"ÄÚ Y +ÍPJq Zp ¢ûOUã +ül(%„0ÑPÉâ;R4îíQ5¹E¿%)¥ÿó ÄÜ ŠÈÐIŒLûŠ=‰? + ñÄ·Gb£1BæŒiƒ>¦;ÖÛÿ‡8/psUE]rÿó ÄÞ ¹Á˜Zq½¨×&ŠÏ£-ÙØøCB,ºa¤J+ ¹06†’hjݲ‚UZ•ÿó ÄÖ0²ÄIŠLz?Ž\Ì«¾JÿÁWìã€=€2W +µ{MŒ+CwŠ#7VT3hÿó"ÄÜ ªÀcLÖr÷—g4d€²^¢`Ù=€¢#Jèð…T·Yh‹•Jíº‘œ”ÿó Äß Š¸ILo];|U2  À.Oˆìwg¢p(÷!’˜Øö6Ø!Êxÿó ÄáÈŠÀÈJLÂÒV8lBxt°Á¶-_‚¿ÞcS*0 Ç¢Q˜à<ƒ4bdã”ÿó Ää iÀPbJqÚëî·êzZ#Îÿ†Æïû¬žŠ/yv›–¿žð¬ÐÅhÿó"ÄÝ Ð†¼zPI|M©fW!™–Ì&½c;y¼·6aH kó~Ó 2­t0ç§$‡ÿó ÄÝ ¶Ä(I„L1X8 ÀñxÑn'œ%ŠÔð©öcoº8Ï»Š5º³¥Íäaôÿó Äß ÂÀ(JL»Ôž@Œmä9Sž ÇšÄKÏ ¤î“ðOëÒ¨µ#u¿ +Úûƒã,Ô“ÿó Äá øâ´8a†q“‡æZ3\²qöU?°õ^“©J_u'En X,þÍÅÀ™ÿó"ÄØ +©F¼bLq°£'HåV‹¤»1ž.Óœ•Ã܈= ajE„´€h?*©Žÿó ÄÉ ‘NÑXbJq×6qq¸^VáO¸^_cA0õ/Í¢&kCN*. +$¸Ààö¨´Z<^ÿó Ľx†ÔZLHkHcY*vÌòhç'²W”Ë‘>¡Ï  ü¡™‚Bâ4 ÿó ÄÂøŽÔ¨ZLL‡¥VÞt{kïÌñÍjs³|;ºÇTûuê&O…–+<6±K­6×ÄÌÿó"ÄÅ PªÐ¨bVL|+ºP+io“øˆ³ +¼Ëlu”¹´€|?:;ˉåñA¬AV$Up\ÿó ÄÇÈšÔ¨jÐLÕ ‹ZÞš0'ºrÊÃ@ó@ƒD`˜±TÑP¨•Žàn²ÍÝWêÿó ÄʨŠÔJFLÉ ÎG˜ïŸË>geHÈ„i`{2>Ú–Dè·o˜“X¡Ê(ö «¦A|ÿó ÄÎØþÙIDpQ7ݺX„LWXÃC´P;ä£0s^™²{¡sô2}l–"4Qÿó"ÄÑ ÊÑI„pQ˨¥åaàÀ<[JF7µ>Ã¥ÒÎùåã6O=’ÙNKÀ°Íÿó ÄÕÈšÈ(cÆLÌ €C‡â¡`0ú£‚Ê`¨¼Þ”¡—ìÅýÿ&]jãqGÕ·d2Ûʘÿó ÄØØÆÐðIDpô%KÆ€,ö ¢míj€ÃÅÚ""NûæUêFÊë§D>ß—Aÿó ÄÛÀʼZNp²wŽ«PŒ³–‹ª¤ßD1ã‹(‹D¬ûZ.îÚ¨{Òq›QxNŠÖk­·˜€¾†ápsâgÑ6(ý•†hÅq „-pæ&´ÀÃÿó Ľ°ÞÌÈI„p±cÚ‘ŸO¤Ëz ž˜p¯é†‡ +ë?Áÿò ›Š(ƒNÍ”ƒæÕÿó ÄÁ šÙ1ÄLXƒŠU0±ao¶£íýNh.¨¡F©ó ²“®×2aûäuöŒ`ÿó"ÄÃÈšÈbNLöI&X’E(Q +5Åm¨É¶ úÓü!E{BñÁ¶9q „¡â‚ÿó ÄDZ:Ð(Js¡(?ú,q;öSŽ}Aô)øÇdú¬Ä-Ø"iÀÝ™!bâÿó ÄË –ÈÈbNLØÛJ8÷s¡ üC1këP·=?»ÓЯýd @|ã™+Ûobÿó ÄÍ ø‚Õ2JIDf0}Öõ €½È®_Ì$CÎú·ÎP˜ér\†0ÃyîàYœ]ÿó"ÄÌ 8ÂÀ cÎMÐ=Š(DmвŒø®àÌi‚ïö̤#Màb,µWýæÂð#£t(ÿó ÄÇؾÙp0ÄL–—ø¶;žÙÞÎÿ /Ç€‡xh‚ÂÚº%µÄÍ€ WzHÎÿó ÄÊ Õx1JqWõtP e½[ô1™AŽÌ£œ@feɧGà6_:TüÁX%üÁ™ÿó ÄÌá"ÑPJ +q3?Þc³€ÍÿÿEVA¢€‰%@Í +À明 WŠÐ$»*eú 3Ìr™§ÿó"ÄÏá"ÌÀIJqŸÔùòï¨2¢a ˜Hå”Í:-ä¡:¬ÑX&JØùó4*»(ÿó ÄÓðºÙp1JMÿ£T¿»€P‚#•R¦t['ès³GþŽŽï¼œ·bQSJ2Ckîÿó"Äæ +!É€IÎqÞ¼=þ~ ©Ãñ`·n¢O‡‘ +è®K݃¿3ا)ßûΉÿó Äå ÍhIDq}JN)Ôçò £„ZŸ šòPA@/I·Ì@¨ò{ áˆa~‡íùLÿó Äè Q"ÄzqûÀÕ(”€âCêé Q›¢4÷´VÅP(á}¯wˆú’ŒpÇ}?rÓ¡ÿó Äé +iÄ bJqÎÊPdÀÁ ˆf•çb2™œ6Š¸×wlD{­• _–Z„nôepÿó"Äæ ¹Ñh1ŠqŒÀ]ì?“­0Á5 ¶i_„n€„~hLúEÅ;z~ˆ9Ä­—§ëg ÿó Äç +Õ`2Dq7 í=Š€øç28/˜„ficó¹ƒñþýd +b[ÑXi_¥/÷·ÿó Äæ É.ò80„pMèð@J:á£ÉªnAQÓòE—€89xÿæIÀA3;*Æòêý›ýÿó ÄåÙØ2pOç•|À@,ØŒLÏ– á«ŽÖ½½gpá9*¶Òp€^þEMǾÿó"Äè +Q2Ýx2pãN,45º@… `&Dø +{e¯ÈXx0qÅuÑgû¨QY?ÎÈÏÏÿó Äæ Á +ÙXIDpo0¨P€å¨¡†%›ƒ3LŠÅïA8sÍ©œ¾v˜ˆwô}º‹ÿó Äæ Éê8IDpúÃd¨€ +§®?Xz…‘…B¾ +ýjÏ¿ŒÆ7ÞG)Äû~Ö¾ÿó ÄåñØÈ1„q‡4@°6¨|îˆÔ¶æ.:¿kÉZøpˆÎIß3ÙËY¼ÉÈaJ]½ÿó"Äè +Õ@JqZëãíˆÂp}ÚN*ˆS£|^n¾iC~Ìin-ýv´Qÿó Äç +îÑ@ZÎp—|Põ€Á ’Ä!ù•Ã '‘åÇWþ†o ðm wöôZ*òÿó Äå ºÔ¨2 +M£0Ðq¥H„¬Í&8ÐévÇÉåT0ê­¥”™€Éo=,k!Þœéæÿó Äç ñÝ1Êp]IüQy€ŽàxLsaa£J‘Û\ÂãÄß~V ?”´WQ¾gÿó"Äæ )Õ@a„sï¥Gð´‚À‰‡8!B Š@JúìÕÿV·—r£–3×æ²ÿó Äé +IÙPJNqU9VFt9ÊÈEA8jœ£rHعWY“ì—ÿÙ(§±Zþf…ÿó Äæ ¾â0ÎMgÂw8r4Å‚š—_vÁâÝØ)X” ZUÏóR¢† ƒîÄ*¸’ ·ÿó Äæ )*Ýp1Äq—·Æÿe° ${A!â®õø¨¾j +Å­ >%†jûÚ° Þ…Ñóºüÿó"Äè +QÕHIÔq¯•Â@ü—‚3úåÌ}W:?é <¡Û÷åêŒb{è{ò¦ÒÛù·ÿó Äæ ÙÖ1JpÜ\^Ý@‰ÊÐXô>œ1†“pa™„ìSR¡ÆÿÙ‚&ÖË(ã”ú"ÿó Äå îPŽq®ÔJ|<à’þ<”íI¤k3vj¬÷ø2]Véüv¥Vf2îð˜¾Ûÿó Äè +(öÑHJ–q²rîX(Ã&†F }Nr÷]3÷‰XjWlÿWå’ù¬UIŒ +úÿó"Äæ +!Ì b +qý¥Ð¿n°0‚²#Ž-#lD¥s*¸C>Ø#·ý`qÿñUÉ‚ *µ ÿó ÄåÙÕHIÎpYË!ÐCªMRP&tÒšJŠ ¢iÒ˜$k”•ñŒ_V‘pvî>ÿó Äè +ÌJTp›ê£» €€8ö°Á°üÈkó`ÆAÔâ 8$iVMH[´am«Óoÿó Äæ ÙêX1Êqn­Q`Ž0Ý€rŒˆ“–LÀʂÊvði«ÿ ûí+ê Ç6ŽŠÿó"Äå (ÊÐbJp'³¥Ç"ÔY7/`–ej^s|p±ŠãLñ®Î¡€šÝsةىþÿó Äè +`ÊÐÈBNq«þP¸àNHp"¨â'ÙC5 ÅùÁ‚µœZùt©Å½g5t1_ÿó Äå Îé°0ÆpÕ‘EP¤Z‹$rÅØw“¡Oct(!ƆŽôÊíÕŵ:9=tÿó Äç + Ì KJp˜rÀÁ4 +’“Í¢æd|’NH>«{°ñ(Öú  >T@ÖzÃÿó Äå !*ÔÈIJqfzß%u€¯à +ÆaÂ,x2F8ÃlúÐlwþWK•;Ô;?jÿó"Äç +9&áøHŠq(Šå +€ˆ ²yö˜Æ@i# +΂ó …'%¨×nQ4ÑTš +Üÿó Äæ i.ÌY”q„zª´, YU€Â>€Ÿ**4sò;Ê¡¡)ßö~³”õ`X²‚ÿó Äç é.Õð0„p.ê?t„€å’€L¯'þ?QªTg_ž·» D5ö·H‰jˆÿó Äæ PæÙp1Jp^näĤ€¬°ª?$ñvëüp†z'¸ ßád9‡gE<§\ÿó"Äç +HžÚIŠLB)D ˆ¤À3xœ ÖD+P8º” ù1!Î/ýBD"T¢çZœÜÿó Äå å˜0„p•rNV® º\Ð{WU`ðmÉ?êPärÀô +6Cؘyw,Ï3™Š€£Ð¯»[9èÿó ÄæÑ.´{Òp!•º¿õ0CGf€"iƒ¬Y1È9U:Tp1ÐÿÔŸ‰åÿó ÄÑéÐJ +q*Ÿ_¥z›†PôL²¹Ò5ts uÈCšäã¹f|Gƒ’›>ßÔ°dÿó ÄÔ°¶ÙPIJLNBï&  + Ãœcø—ù‘™Îl1¶îÕ‰Ëâ‘kˆØ"cœW&ÿó"ÄØ QÝpJp+[LëÁÅÁ`)åšmV ä>; Üg +¿Ÿ«öaùAfô³˜ÂÔÿó ÄÚ ¶ÕPYŠL +ú|Úýë·f€<€¶—Jìx] +mg¶!Žr˜‡ßÑŸª4ÿó ÄÜ !ÌIDp€•Âh>”bF´‘ ±SŠ±Õ¬kóY¨ +¸d·SÉѼ¢ýÈÿó ÄÞaШHÄqì•v(f`zÂK¤ó0 +Vs—¸oGmŽ²ŒIêšžÜö¾å4ÇmD²¿[Kÿó"Äã¸úÌHÎpaש.̽Á¿ „öF™<,Û‰ÙðËN ìÌλaÙé X˜“šZÿó Äè +®Ö01ŽLÄgüÏX0¡{"®ŸBøÉf¨êº°åC¶™¢\‹÷¾ÿó Äç + ÍPBÊq®G'·ó€ü0 .@Q +¤ñ“|•„ƒ8qPM:ûRª241‡¥©3éÿó Äå‰ÄIÊqòƒÑZ“€z8•/eå&8­ŠœŒ "/:;sd;åœð7ÿó"Äé +JÑXH„q ,›êj“@÷‹ÚâÏ:b¶w ¥º ‰»«žz£2Á*ÈÛiÒÿó Äç AJÑPbDq¤À)°é°º¦NEBY;™\Â*ÔâU³38á,>péùgæºôÿó Äáh®ÐJ +Lÿ¤¶“@¡`ø(_Y¹¢ +dŸ14ë¹â±‹C÷¿¾‡¬k\€Mû»tVÿó Äæ ØÞШJDqx ¾Õk#Ó¡¸ XV· .G;N—Ùó·MΈ•t9þþ…ÿó"Äè €þÀb +ps‚oKB pl2ÂÍx†Ã‰½…EqŸè¤DwzÓ™V0ÿó Äâ ÊШIŠpp|ÇÄ@-”0ðü$B"&´ÝhÀʧ\‘ûhåfBIA}ÏÿÈkÿó ÄåéÕIJp·Xã`IÅ…@é’¡ É Û}Ä„ÎÊÍõ[o,ˆ¤ ¹ÿõ(g"ÿó Äè +!JјyDq'ôu@HÀõŸˆ¦øv¢±’,ŠÂ«3~æú‰–ôZÚ^ÿÆ•Fÿó"Äæ ¹JÕ˜IDq½d”@Ãûb#±Íª4ðY²ÅNÖL­pˆMqªó»8^Tÿó Äç ùÑI„pb +¬ÄUwšŒ1÷/‡ô6¬W ›—ÙÁíQ@u +”îW0õÚÿó Äæ àÆÍpHÄpWBœ~þ˜Ì·}í?÷Û×ÌÌÎÿÓCûD™€ +:æ<ôD¦GŠGIÿó Äå ÙH„p’ÓIgÓóE¼Æ0õwܪÁF&•‚<ÔjÙ€G;”h÷S'è±èÿó Äç +:ÍxH„q j~lè!m\†jfÔÛM—ÔÃe-"v”A$ô"¯NœÐQÐÿó"Äåøþ¼aŠp¦faâÔ!ŒÜE÷!hÐ2çù›…íÉ>¶¢´Ét.ÖÆÏó]=yÿó Äé ± +¹xz +q¦ì8Uõ¹ZÆÊÍa}-ƒÓ´JuÓb9ê‹|ý•KŠ"’¤ÿó"ÄÜ @úÕPJqt\&Qµÿó"ÄßÈÊÄI†pô¨"("]@™Ú‰z´G”"ˆŒTràýlÿÝ55¥ffc¡‹FGÿó Äã 2ј`ÊqDFÆ6š@ÞM2— +D L¶ +ga:oW$W +ˆÑ.s`²}»ñà ÿó ÄÙè¦ÌJL$ % 4/£Åf§åª©¾8ó?0j­ÝŠÛ +š÷Îö•„ÉïÊÿó ÄÜÐŽÐ(IŽLŒÊ‡ 0¡ð¨[~×a¾ +ÏåS5²Ò¨ý¦ïS“ºÙ˜ºíÏÿó"ÄߪÌJJLÌO ×s…À´ÁFÉPŠÀÃå¯[oƒ-(y…(¢8L &·sTÿó Ää0†ÈZLHf½ ß’Av0W⚉µ·AÑ8#Ùi$ÜûÇGÙ*€Ó^pá˜iÿó Äê +Ñ&âX`Äpã;w÷< ð65õõ­¼˜¯†IÛ‘ ÏMÀ1Àü& -6]¨2ÿó ÄåØjÈy(aqL”c{êú†ôÑlf+ÐÕt×ëþ¤°ÈüÃ0Iǵ±‡3$&ö“ÿó"Äì 1ÄØaŠpl~pfWXÁw0QïuÕµ-‡€šbÊÄö%¢áçŒ2 +&ëùêúµÿó Äç +"ÄbÄq¯<—:*[õ°0njÊhàZI(IÞØÌò,ËÖ[»ãß`HEw±ÿó Äå ŽÍp1ŠL…Š îšË3e`ð†Aû¡ßfÆæOcypo|ÙÐ4ð†1ÑÓV¿ã_œÿó ÄçY>¬Ã qç_/Þn§6<ø|2ÒH˜þ‘$X@çzÞf?劙ÞÏ›¥šÿó"ÄÐèþÈI„pï(#Œ¬d0›…§.©:Z®ÒFÙÎñúÜŒa· AˆQ嬣ºÆb?Éÿó ÄÔPŽÌHÌL`h„àä‰7K`AWÒÏ‘S¸mýQƒ¦üí_ú ÿ•nÿó ÄÙÀþÈ`Äp¸¾ñB@ÖDkÉ: +(uÁÑHÙ¸gÊÚ¨eB%Ÿœ•YÃÿó ÄÝXŠÈZLL’2 g ÒRBc{—ÿó Äè ðʼy„q”E8öç|)ŽY¶PÜ›„)‘]Ç÷—¬ ðüH[ž‰É8Wÿó ÄçɨÃÒqR´ÁÚw³P=ŸÇ1ìD]äæ„<à‚c‚¬©2I(#éÏ™ÿó ÄÊ +²Ì(aL‚G¨ÆŸZ†ÜF 2ëï®”µívL¢püðôh§¤Ê¨ +R£¦øbÍGÿó ÄÈ ÌyŽp°ìÿ˜²yyœúsª Ó¿ª 5ƒ€C a4j8™:ü?Ý°ÿó"ÄÊ @ÞÝpX„pÅ?z9ý|&rÊŽcÿ>ˆ°6'¶-NáÙFàÂíàójÍ-(äÓ(ÿó ÄÍ°¦Ð°y„L“ˆvÿ¹Z,†ïOaaà Sð?0IÒ1’5˜3‡Ž]“B“åÃÿó ÄÑЊÝ0„Lý·2”£·?ÙM€<0¡çño;ÐjS-\¡:F{„ÕÊìòw¤öÖÿó ÄÔ 0–ÐÈYŠLÖób¸TÖke£Efrºêžê{zÍ?6Ne‘†€ÅpÊÿó"ÄÖ Iа1ŠqÀ § /H QàhŽ,q Ò7|½þ¢|¸ªv–Fï® “2SÑh, +ùÿó ÄØéÔÐA„p? ühݱ[±Ì±ZÝ.ãïÙ¦|MâÙ†JFùÈ}?$øp9‹r%þÿó ÄÛ ªÀbLL„$üŒà¹Ý?‡#M…®z„¨7‹™uvMJê÷Îoÿ +ë4€™.ÿó ÄÝ ºÐðI†MŽîÀü\ÑóFÆV‹tÇšw$>Gªyƒ‡Vá5æjR åZƒÀ‡ŸÑÿó"Äß :´{qõWëqd›D÷Ó¨ñY‹>ðÈ„ª¨2Þc%µíyY`q zðünlŠÿó ÄÊ ™Ù˜2qH“¯i0嶒¦mÈcHš²úNú­ûéãÈlüB+ÅG–H¢ÿó Ä æÌKÆp +”µÎ®í² +øÃ`;ÅrÆhsË7~`œ)5Aì6\Ê qòÏ%hJÿó ÄÄ ÌÈJp(‰È{÷SvÎD$þ£s5S®‡€„lð\C„ÁEÌJeˆ­ì7¼È=ÿó"ÄÆ âÄbDpw=p¥6Çši ¼Xar èòeã¼Ã'™&‰,]”uãÿó ÄÉàªÈ¨zÆL:³P¯O²éok—ßPÀ(°ã ÔE#V„ÒªáãaÜè› ¹ÿó ÄÌù*ÝH„q¶ott·ÉÝj´Ø ˜ÉÈ€†B˜ˆLlÛ[É€ IÝÎ'3­ÿÿó ÄÏ0†ÌÈIŠHŠ ¨G}rå×™‡¥¢Z$1äÂ@(ú˜ü˜ +¶&8}Ù½V’›½ÿó"ÄÕ ÎÀbplkæh›B³ð›Þ}N¨Z¶F^¾€ÔBãZ(oI‹4ñàrŽdêUÜÿó ÄØèŠÄÈI†L#;ÿè@6_S§Ñ£WÎ×ÍiíÍ B¤ÕJf&A­G_N¬±£¾ÎPÿó ÄÛèö¼Jpx3«ó^ ‰>JÊ@î—Ç’õ&ÀT,U +×x“é¿L/<78#Lÿó ÄÞ +‰"ÉI„qKÐ.ûi›–•~§Xè¤ñpz—oKÅŽBíÔxšU”ô ÅøØl<Õÿó"ÄÚ @ªÉXIM +.ý@…(–R£ö#ç±Ûž?!ûÆ“xCL“r"ZC±ë +>ÿó ÄÕà¦ÈJJL"‰F2Z×%Ò&šéD€.HI`*I öŠ¥˜˜»–¾÷,Oÿó Ä帊ÀJPL¿Àœ¥ça‘ïº8·;xªiÃ.´í@- +È£© ;ïš,±&ÿó"Äí hŽ¸ÐzNMyVpB² müÇfO¾´@|é‡âGÙ Z(Œ…"Uo.ÏŽáÿó Äç øÊÉ1Dq‚¥M ³ž¹Õ/y¦wë@<çæbbçL½ +]—Yô¶òÍŽùgÃÙÿó Äæ @ŽÀJLL°A,ÆP¶ÂÚÑÆÒ!Ž…³""„± ‚;‡|ÊgË;|ÌÝ+’@ÿó Äè`þ°{ q_ÖxY].Ë0Eé§<Œ’Ê¢ê Ç;³<¼[;Vì0nhºçÿó"ÄÕ X²ÕI„Lµ¢Z] °…r´Õ\3=2KZte¾¸£ŒµE,Ì0°$å¬9@Váÿó Ä×ÈâÕ˜H„p¦ÏËCK40<ŸÐÊe`Æ,ÌÔº….åoÀаàN‘à+ „5ÿó ÄÚ †ÄÈJHZùFP5¼€ðüëŠ>=‘(üI\£Pë¤o #É'crƒ qyÿó ÄÝÈŠÄÈJ LÕ†vé«ëe© €m.¸×P¹ q’ðŒµx¤4gÕ0\ø +±ˆ ”ÿó"Äàù.¨{Ìq +¶øEéPÀñ0q—ºiwßÅgó'ˆÝãB’zWc¿ŽÊ_ûÿó ÄÈxÆÄJp{¤Ž…Â"t ”a´€hÜÑè]¸(ª˜‚ïçØ"¤Ob=Fòß0œÿó ÄÍ úÄÈ2pãŠ>{uX„ ² +¼û‚¶³GlgßPQ½ˆœöN~Ñ÷7ÿó ÄÏ`‚À1†HC°ÕÁ™@=Z˜Ê;Æä EQª;ªü½] ~ë””'ÿ01¥–ÿó"ÄÔ`μIÄpêªTIÐÂ÷@|Þ§S"F»†UVÔWÁ¡ ”Ý÷#\"â žP<ÿó ÄÚ > ÃÒpÞȧRõÑr>ºº‘Š—´ÁYß»ÂY¾ éTb)[ß÷ÿC +}À\ÿó ĸè¾ÌÈALðð“Uº)¿W!ÅÌLo׆=—¡ÿ*?«˜¬q¿ùU]uj rP×ÿó Ä»à¾Ù˜1ŽLžLÄìÉyerª‚çÔð +-|@1;±õdS‘ìßÖÉÓ¿Aå€$(˜„ÿó"ľ 0þݘH„qú¢CDÚA—ÑÈ™£3TÐ@ñ!ûƒt«ô4ËíùZžš@“  :Â3ÿó ÄÁøþÞ8H„pÒBeBØÊ. +ÊW#ô‹ña×<•½¢b§)çêᤀêáÅfe8ÿó ÄÄÉ.ÄZDq9Ý +;º¯c…ÕÉó°I‚oé¨æ0¾Ÿÿý)Ð,åÌg¬z ÿó ÄÇ ù6ÕJp$>tujB%ÝB&¶¥Ãm'BVÝ\`Sò¸ÀºSR€ÿó ÄÆ .ÈYÎqr@غ蘩E¸R§°øÈ"¬·¶úZÞ­³LñxÑÿ½&éö{ðÿó"ÄÈ I.ÈÈb„qy½ó–<½Ð$ÒƱ E"„Í^̦ˆ-Óó宄„)a8¢ñ!eùýÿó ÄÊ –ÈðILצ¬í™væôê&1ÞÚÍKfÉüéÿÅ65ód'¢:eÌÑP’Ý+¬ƒÿó ÄÌá.¼JÊq3.T€¦CICâæ!»¯NÀi9’kò¢˜†ÊÚ‹ó9„RÛ °öÿó ÄÏ !.ÀÈIDqÚÀøSí]ÙîWk{lû{s= Ëo­š‹›«·e)Uý_ö/õÂ-ÿó"ÄÑN°bLq~ðÓŒêÚðû þlpæDw°z0gö!‡'³÷õhàÅjäÀ´é"’ÿó Ä¿ +ÌÈ1†qÀÙñ‘ÒzTãƒÎÑW«—xÂœúòd¾ ‚ÌàÓë+Ç€ä"’FC÷Äÿó ļ¨ÊÌ1Žpõza$7"†â«Z9µþæ†Höð_Ûrѯ¬Öƒ£ +«¹É…a€¿ÿó ÄÀ  +ÌZpqóýÈkuf±Rí´Ñ~ožk4Öÿ+$Í ˜pÕA‚» *×­ÿó"ĉÐzÄp`ê6=þ¾ 3«w ß«ÿò-®Yè@Å0 Ù"ñrl¨j•(‚ãÿó ÄÇ áH„p‹©ÌpéˆtÄ‹ºoøø­âà𠔜 ¨Ab]} +vµâkN÷ÿó ÄÉ ÊÐÈIDp}̶ª(uõ­L›:€ššåæÉ”?E%êFþíO(ŒÔšÿó ÄË°²ÈbPL~¼pL9EMÓ ±ÝÚÁˆä»RéHûa¡»Át~â³»²ÿó"ÄÏ úÈbÎp7¨?ÝîúÀœò +%ª¤ßDAp% ®¢‰êq¢þ…Ÿ+kÈÿó ÄÒ Ì°J +pMNI…X BŒÃÇ2 R pÇÐy’³=Ù‡oc‹ü1ÿ†Íÿó ÄÕ ²Ñ˜JL¸€®–lŒõ,{ ú:Àºaâ÷Œ^^š ·Ü®‘mý_FÐÿó Ä× ÆÈJNpsìn#$ ‚«¤icF&ÂË%~‚¿(ÞêP“&è57ô‚nZNÊÿó"ÄÙà²Ì¨YŽL ÿ#ê5¸†“Ævh˜<"—©eõA,}^È"-Z"Wôò#ÿó ÄÝP²ÌÈaNL)È?·‚Àš«…çQ,‘ƒb Ýtñ7ü¢ŒoÈ‚€ß¡ßÛrS%ÿó ÄâéÐÈIDpÈ€€ ú|º%èR^Ð_Á{áóÐ5öãc€£öVÿë ÿó ÄåèÆÚX8„pÛêù À GHýK¤zvý+hdkq!E!©a Îß©Àÿó"Äè +9ÄÐz +pɘ°ø2”@öiv‘mm¾*Q*˜>¿ sûÜÀ ¿¯F#ª‹ý†ÿó Äç x²ÈÐyŽLn\$¬€}'"'Ù¢¡)$>(%š÷Ê7Ê`7”I?_Lâÿó Äè +YÀàaÊpI‰ˆ I0•+kðUp€  Ÿgùƒ)ßìÿÿT(ÿÿó Äå ÄbpþX\qà1‚<,ÐÐXÜ%@ Ef%ióºÆàjú 7Ä›ÿN§ÿó"Äç +JÉIŽqôJùF¸^D ¶=âÕ28g†)Œ²ÁuûJ7î¯á¯ó>©‘[ªÿó Äæ ¸²Î81ŠL#;ÕYÀ”7ýK¨Æ¢:õ±À.· KD +7ðÐRíÐídÂô½ÿó Äæ QÍxH„q +iàPÒ ”œ‡¤.U`JEäT,‹'ÃâÌ‹ 'Ÿÿ¿‡æÿó Äç + ÍøIJp8ÈW¡$ÀÕ,ê´“*±GÓˆÀY«RO¾¥æ<>ÏÝü#aŒÍãûÿó"Äå YÖIDqAM`ƒW4§sŽ¥hàžÛMÛí¯Ê¯º³©Ç]Ûè…ÿÑZî7ÿó Äç ©J͘1Êq˜ðà#¶€âBàp"†i$Ä0ž\Àãí¤cäm oCˆÿ¡¥Aÿó Äç +JÍXyDqý"zÐ"(9tq&'j>"­F;36¸_'Ö1(ü!Æ÷Ÿú.âÿó Äå ÆÀb +pÎTº²°Å,™kYF¸T×yq5µ¯YI:#ùä/$ö%þÑ•Þÿó"Äç +YJ͘IDq&uGø,ô!‰ài]‡˜çSHÚ_ +D;ìÍÑGO÷B +ÿó ÄåØÆÌÈJÄpߌ68€ ]³¶‰¡²Ô`,‰Ô`Ô‰Ã|Ü*gìš6?}Ú½H–ÿó Äè á*ÉPJDpÿ8ñôÉåK Ñy‰ª Da\K(᱃ܿQ$ßÌmyfYÂzÿó Äç ‘.Õx1DpÎ'öûX@‚(-O +Ž¶¸Ž¥؆ûÔ×Gí…n!ˆpÿó"Äç + +ÌðI„pîðþ%f €ìö¹TÀã7ÁXU +mgof.³ç‡,—QÎÈQÞ€Éõ<ÿó Äæ ¸ÊÈÐ2ÆpE¬˜€ bN£U‹h°üPbo>{½ZƒëÿE® ÒÅ/¹D7üãÿó Äæ °þÕx0„p ©ü €`ÕM¦d„¹Àƒ”â%@3ïã(yLBÔÔáðaÏïÿó Äæ 1*À¸JÎpêÖ4¹°Î€ÁìÀÃo¹;:ÑÑL¬oá`e¼HÏlT  f@ +ÿó"Äà )ÄZÄpzÉ Iâp–ïŒfÂi + ˜ÑÓ‹.T Kg{¶Ý &(µýÆûÿó Äã –ÈÈbÖLh4o=ÆÀˆ¼ðÔëÀ¾ª,¡1‰a ;ÄUúÑÄÁ/qT…Ÿë89ÿó ÄåèÊÈÈIŠp¹@D€0¡ÞT߈¸n2,±d’–ê9AöTÛB]Üþ"´P‘ÿó Äè èþÎ0JÄp ÷¢ Âû +†ƒRWWN‘‰%t¢Sù½ÊÏKƒèv¥‘ÿó"Äç +¡Ä°ZÊp&úÍêø (;4‹—zºŽª\¡¤í¨&¼{Í›{$fõAÿõÿó Ää –Ñ1ŠL½ª¤RËŠâ3ˆÊÿærÿó"Äå €šÅPJNLàñç&ÉÖhÕ-Ê„ZËÔC”$rñ¹á\©@l<5åÜ’ZŸ[h9ÿó Äç øöÍJpY·È€1ÂD{@b`ó‹&D ¨ë©Í8IôKðSxƒQÐäÿÊÿó Äæ ˆþÒ8H„p*øµad àøD}IˆÏžáòŽõ{lÕ­ÿK»T0Õ±Zζôÿó Äæ 8¶Ú80„LÐß/ƒ(œz @ƆÓBAên胤»ßõM¤BËÎç×êK°ûÿó"Äè +A&Ò1„qu¡ÔB¤À€ ¶0Yü ö³;(³‡K™/Á€;ñ½pˈ‘î ö•ÿó Äç +0öÑ2p{°¥e±t‡ªz—¨oƒQ½Ú Þ¢ŒÖmö”÷ǼÁÝf¶Üc%ÿó Äå –ÈZJLŽË9¨€ì4=1ƒ`-Ê*†ÖñÉtŒºUp#|úžJ˜¿ÕµC—Õÿó Äç àþÕ˜YÊpº1]µc@ ë +ÒÆ G(‰‚‚Í'‘kçü6W=mqÿó"Äæ ©*ÑI„qWû«j €@qâ7Û(Téú ¬ ;¨"¨äoü;/Ô³·b>õfcÿó Äç Ñ*Ép2ÎqÐCÛ1íËñòFdÊ•Ul¢@P‚Aw 4Xšïb<îÀÕ­VºB=²ÿó Äæ +ù*͘Jq +‚~²@<‹PCée±8ç¨`m {zäÿb§•—UÂU±Ô.¨Œ)ÿó Äá@šÌcLLcU&̸Áe³(÷IZp¨KLÒKxÐl¸¡ý0C sUÕÇùöƒÿó"Äç +*È°JÄqþëU¢è`mä©*PÑ +0©*óëcÕE£Ñ˜ƒ¾Gðƒ½Ê(lŽÿó Äç Ñ.ÑIÄqÍæôê¤ÌTA =Ò‰êãËR$bÌíü›âû3I‰qjÿó Äæ ™ÐøH„qö#½<9|Œ‘&BÎ=…@‰2%áÆ´ýù3±Vö+n÷}nÿó Äæ ˜âÀzpˆ¬Å–m`Pl‡¢l@ݸÝ¢ÜðŸ©TµÎWÇ ëÔÁ¾¨ÿó"Äæ !À(zÊqõ²Ž«G‚a"(ÇñÏRЖ8Ò#ÊCX±È$ ÝQŠó…ftóÿó ÄÝøúÜøH„p'G¾ÖþY¯)ç÷0o×Ö+ ^“Èç‘r :Ç`ðXž9[A¯ÿó Äà°úÙ˜YJp»?ÖƒBë"·«ú{ĨrcX +’„²‡ÃÊ€Ò¨åòÓCÜ2Na;˜Ûÿó Ää ²æXI„L¥¡;zYu‘õ&ÖáàçD˜.K ,ÍXþLt +@`îZ:ž.YÔÿó"Äæ +þÈðZpãóŸª+t8ª±Ÿ@BŒðá^ÿcórb0Nx»×ÿ“¨ïõ~ª:ÿó Äå ‘.ÌÐJrì“×û¼'@ J¨ãJÍú6<ÔÔÔhˆÔc:wø)“ñ,†©<ÿó ÄÝ y2̸2Fqñ +`f¤€ÉÝ„@Ã΢ñô`ß- ÊË$pÄ ¿¤ÿó ÄÖ¨þÐI„pö ÀíKi68ºÈÕpš8|ÁÒì‚n†¢7¦WeH-ò}E[ÿó ÄÚ úШaÄp˜Ÿøˆµ€CÂX3Oe.¤`[ -Æ `J?ýb-Åéûõ *ÿó"ÄÜ ÌJ +pE7º°& +ܶß‚ öPÚyD\ª1ìG³Ë²*q@'íêr>ŽjÖÿó Äà Bæ8H„qo±~d¬8ôÉ„¬é) +Ùê^C%7DiŸ³FZ‘™Ž¼€¸{ÿó Äã úâ8H„pKÞ X >îÚG‚ÏÞBléÖT¸“ž×nºÐæ©€i?©/¶iÿó ÄåÀ®Õp0ÄLëöì‹Ö]@HHuãüzX˜sÇbT:]ï dôE|fh"#y›·^†ÿó"Äé +É&ÍxyÊpÿ¿ðLTäžlÒ A÷̸¡Jl3Cùþèéãg±pðÊ·öw(ÿó ÄåáÕPaÊp)8ÞWCs0Þ_Ráy•œôÞC>¶æ4m×>óm`”î—:vDÏ¥ÿó Äè ñ.ÌPxŽp¶ƒàƒ @2Bé–€h )˜l07ÊÒì¢XÂœŽ$àb„ÎØŸÿó Äç °²ÈYŽLžÊà1€Âõ| ±Õ|m[X©ÄÞPgB]f²ðº‰ìÿ«ðÿó"Äç +QJÀzÎq0ï€CУ0œ-±têa Xtºf'îÊ7{+ülß¼Ý÷çE?œMÿó ÄåùJæX0„qI0Ôð¹‚ø0€ÂJŽíƒÅa½Ó‹þ;l§ÛQ GõLbÚÜPÿó Äè +@úÄÈZNpÛy°@Š³Q™Ã—”QïŠTS,çM~”ß3<âÏðMÌßagÿÿó Äæ ªÑYŽL`â +ü‚@šàpë‹Æˆ(ôúÃïg^´zê9_›VK~ßÞqÿó"Äè +˜²Ñ¸@„Lƒ†¼¾ Š8‚p9€áñë¡u´ò +nÆÑH±ËKZÀ¼+üOê[Yÿó ÄåÐúÅhyÄp4\žŽ-@ƒ°öÙÃi^ÈrJ1C*}•‹Ðîsöÿn Oÿó Äè +)JÍa„qYú€àlPE¬)€âH$˜ ÿN(@½Âð6ƒr™ áÅ5õ£}ÿö†ÿó Äæ úÄÈBÊpó¿íèÓ€P`Pº„M¤=OY6²çYýPøXß3ó>ÿó"Äè +‘FɘJÄq‘Ä$À€ âV¾o2¬F5Q3xÈôá€L$/3°<Ç[þª~ÿó Äå úÍJpyåŸe€Dˆƒ¯êt¸õÕ +eBÀUqsÔŸÑÄp¨Wó¿þ¢œK¿ÿó Äç +JÚXHÄq‡ÀŠ *Å´¹‚ª6ÁKl6µ6 Ýdöí$¯S!öÿj…3Uÿó Äå þ͘IJpþTøA¤©4Ñf +Hc«d LŠ3$ C7©†Õã0¿¿íÕÿó"Äç +IFÞX0„q +ª©ùÿPéÄã{–nøx½]³W¤™–öÿß=-z +ýCûÙ-ÿó Äå  +Ò8IDpÃú@„ *$”&˜{0Ž +µWš=y}B •} +¤Í +6K„ˆÒÓÉÿó Äç +À°JpéÅƤ€BÁ(‚Z~baÜ ù¤-7@Ǫ9‡@Ed@NŸ!ÿÒPnÿó ÄåúÍPIÄpµK¯q˜“ ¢=f"KPk ÐÓPƒ÷ùÄËÐäôm.‡Æÿó"Äé +FɘI„q£úH¡‹œE±—K¢È*pë`çŒó 0 [ë)>-©ÄÅ=ÿÐÿó Äç +!JÒX0Šqúj2€ òMGmKz#­Íðßšöy}aY\@Y‹þ3óaÜäèaÿðÇÿó ÄåÑÄJDpò#™0ÐkŠ°=3O–¤{Èl]‘|eö,#ülÛ—¢£Aé0ïÿó Äè ÈÊÄØ:ÄpýA”ú~äÀôyIi€qxØ#&ŠHôÞMÇhrQµÕV âØÆwÝF£ÿó"Äç +1FÖ8IÄq¡›ÿP˜C£Éjc¡áüTàñЧÛ8qxеõÿ$¸•Š2ÖÐ +¿ú‹ÿó Äæ ÀþÑX2Šp¦ŸN.ÀHÍ6uÔüf!BVr¸ŠU̪·:óŒo õÿÊ4wÿó Äæ 8úÀb +püyßÚDçDÚ¨äÚ¡@(ñ¾é¯;}mHJ_àt¨úäA%ònîIÿó Äè + úÄ°{Äp_#Ѐ“å "~Ù*9¬(Bʉ¨yu'[þ§àvÕg9¾¼Iÿó"Äæ +Y.ݸI„qú‰Šðx©Pré€çc­²Æî˜sµtòëf½ªP;'Cê!ÿó Ää !*ÄKJq¿Ê]édÅÔŠbÔÈ<>,Ä™GôîBwqw{ðÁK˜tKÿÐÂëÿó Äæ ¹&ÈÐJ +pm +Öò•“‘ˆW|6k‡ •B  h™¤¨Alv÷\ƒ¬âö1‚A=ÿó Äæ É*ȸIÊq‡™Œf €Tç)qu–ÐæÌ>O>»›'âu—ýùŒï«£ˆnÉõÿó"Äåø®ÀKÐLÊu€€bpç6Í(ÂBÉŸ*2‡Ĉ +ðBöœZ3™ÝÑC”¿_êÿó Äé +q&ÉxJÊp(žáÀ„R{UÅÂÉu7ŽÀêÍ2ôï +ÚUÓè…u¨£­ÿó Äæ Ñ*êX0„pÃ1ÿÔ£Üþ”_ÃœéJà +J\­#…EÍhoÿŽˆš©ÿó ÄåùÄJÄpÑ9†s¯ø(¦öôé~à9SŒ&;^X“¤•ÞÐÅÜqòQ§ +¾xÿó"Äè + ʸbÆp ›Þe ÈÕº9û‹ œGM ÙÏÇŒ ü“\ʉë|ºüÿ¤ƒ²ÿó Äç HúÄÈJÄpéäfü€Ô¤ 0Džâ{†M„&«ƒsîE2yÜk+Eÿó Äè + þÍH„pðØ„ 5¹@ç “’jǃá.<“‚ËF”Ñc¬Õ2žžÂËè}³ÿó Äæ ±JÁpbDqÍèÿB`é`ÃÖlº1µ §1 zÛ„³ÔÍP»‘ç.Áowo¯‰ÿó"ÄÞ þÄJp€ÕïÒ¨ˆñ0i€óØm3åXHî;˜[!}Mª:9Å"ö_ýʤþÿó Äá®ÄKLm|¨ €€€T@:X–óåÅïQŒ!h$ü² +ŽvêWüAXÁ )ÿó Äç + JÕ˜Jq3þÌ +€‚ ”.iæ̓UÀdŠ +”ˆµôqO}ÖòŸ‚vçÙ¢ Òÿó Äå¨ÊÄZJpa0ÀqHe4^C,Î)TŒí­_ÞïýòH¡ÕàÌ¿£¾žæ Iÿó Äé +¡JÚXIDq•·¿H&Œ°õp=W"®:ÊtXJ«~…D¿¯æ÷óºNþÿó"Äå 8öÄJJpåo²„à’„)¸(ÂyF†€€ÈY6m»VìÑÑÑ8‘¹äƸД2ÿó Äè +JÚ8IDq—KÄðá@;ðáæ˹gÙéžzwSÞõEú(c±õŒÍ:¡#Öÿó Äæ ÈÊÙ¸HÄpÿ”$e56 +à,éèž"A^ýyëÏO[YP®qéKhúÿó Äå ªÈÈa„LÞ@€÷v°çª;1~•žAÃ$žqß Ù{XtÿÞæb$«×ÿó"Äé +ÁJјJÄq¥ú9léì¦õ­0Pxçæ#J‰U~]T”™ ܪ/îÕážÿó Äæ ™NÞ8H„qÔ䘵'áq>c:e¨I†åi:#é‚ÑêLÑJEàÙwÔER´ÿó Äæ àŠÑ˜)„LGðÃ,JXžNMå‚K˜¬0ôózû›ŸÿïM™Jæ~Ç/ë¢Cÿó Äå ¦ÑJDL ²¸w Œ—1°ÍHhQÇšDÍŠ&”~Î>î= +¸E+L-¿uÿó"Äè + þ¸cp°}æ´¯B Á™@qC…¤hÆC˜m8éï‹âʘ—²7ëàÌÿó Äå઼JLL)د@à0©(cã z=d¬‚ŠÄ›Agú”¶#LÏ~¢›­Ù«.‰ÿó Äè +úÄÈJpù„oØÐÁ`fÊ¥9ĸ›h`¡„Æëçeo×oÒ[o [ôüÿó Äæ hÆÀcFpAÓ>wPÀ^‡-4‡RHµ}DÀª¤ÓǬÛpUm…õQ¤³a1hŽÿó"Äç +A͘I„p·ã¤÷ȽO#?Òú”ô\ê&0aùØÓ6Š0”˃·Ý4ž¡rôS? zÿó Äæ ÀÊÉ2p‡Ð}-}@ö0½W4¨îL]Âðû¨±‘㇡ݭÁ>Rú¡ÛÂ:¯Aÿó Äæ höÁp2Äpsµ¬ÀVºEhføjŽÉƒA57Ô¿oë3†é³­Žo»oóÿó Äç +*Î81Dq'X‰'ùˆÁ͇¬/jÐt EBHÄó§ ¨ÿ~×Õêõ×äouÿó"Äæ èöÁIŠpZÿÀ—6«¶2ÂÉç'’&‚ +£z +êŸÙŒˆ¹Gó3ërÿó Äæ 8þµHbTpåNvÀõ# +®.©£!^Œ%C$ÿ]k/ážÙÜÐn¶ÙW”½ÿó ÄàXƼZNpÈ€BBÂéMqM"rÔjKTøÃ!BÉ|ÔI)*Œ +Uʾÿó ÄåðÞÑYÄpaOýDí „ Á±ÄÓî±í  ©csƒU~€'\Æ_Š>D!bEÿó"Äè +‰*ŘaŠqêWšÃ +Ò&^˜©´òbs®KçÜP~ÞÓ:ø«Ý/Rüÿó ÄåÙ*ȨJJq?ú(Ï € €7 +x´8‰2àxŒ¢æ×1Í'–§MÙÊÑóÎÿó Äè +Q*îø0„qü‹ÿå€@ &„%ê´mCι© ÑJYŒŸ{Çôµî²â‹êÚÿó ÄåhÆÌJJp̯]ô¨y@´(ƒ(À¸ áz +G±â&™>ÜõÁ¥˜ úvÿó"Äê +á*ÒKJqËÄï‰èÚÉpDj;Ú¦ö6X±¾»‹LéÁ°F²˜M˜ƒáßýGÿó Äæ Àþ͈b +poºæ‰€‚ °ó!Ìð7Òê4QÓ·©j*xfÎÏ©˜Ïÿ²ÿnÿó Äæ ±.Õ˜Jq. !0'ѺCë¼ìMjœõùmBµþ]4øLw+êtýÎögÿó Äæ ‘*ÈØYÎq{»ãU@ëXüAcTQ:Õdkd’ÍÑ¢›Zóÿì3çÿÀÿó"Äæ +!*ÈØbp€—H&.’ÂY.>QH™’u·3³}߀N‰Q“³Hoöïjÿó Äå jæX„(6·bŸäD`zÒ‘ì±+JÆŠ15æ½ Ùoº˜ +ÿªbz2ó½ÿó Äè +Q.ÈHz +qÅgˆ¼X(삆 +ÈÚkICÜ­Ú#.¦=ß>[rµ:½QUÌ+ëôÿó ÄåÙ.ÙIÄqo¡x’ê–kD$©ŸŒÊD<}Y“Ÿø +7TzwHLϱ¯GË¿·¹xÿó"Äè +‘2ÈØbÊqæ¥åNÒëQ +¶H`Òcë›ÆIÀê4{!+ ¾Ÿà<°W2ÓèžF‘gKÿó Äå(úÈIDqÈ®+Šà`›.Óq]=ã‘'uߟŽ‡a]f(ï_Êœbš…gzÿó Äë +¹*ĸJÊq‡ßMõ8‚‹ƒë˜$lj 6˜]eCäK‰]€±©59^ì"ÿó Äç ðúȨJÊpw­xjDäP ¶IÓÕ¬&ÞÙEá ¥ –¡d HÉGSñmýCÿó"Äæ É.ÄÈZÊqZýÕñmÐ÷V;‹Èb8‰Ù³í“ê–BÂðÔh› +çZI˜Ó:j{mÓÿó Äæ xúÀJÎpˆôTò„GÛZÿ‹¶ @p⇡éW`)“…¤-×Þ™VŠ¼«ðÿó Äç Ù2Õ˜IDqì±Æ¥õ†-ÔÔ :€ñ%*úž#ÀƒfŽY•»›,û¹l/zÖF}·ÿó Äæ A +À°c +qJ‚ª4ùfРI9`Т‘ƒº&(4­fÈôF–øþ;·vB‡/þ­ÿó"ÄÜ ) +Þ8IÄq¯õM`„âl@>Na16²Xg¡»·[ùÛ;Ü;uf#çÿà:ÿó Ä× Êá˜1Dp·áØÚ¾pƒ¨°ëkªHháܸ< –IG„«6òBCÞQ‚ÿó ÄÚ¡ÐKJpPzù°’™\\ .¨8/‰’¡!ø°·ôEß|j‰¾Ž”\(K~ÿó ÄÞøfÐÈ2R(X15—€Å ðg(s2|q¦†QÅć0ÝHü´áŸwvª)ÿðŽÿó"Äá ÆÐ(JÄpè÷k¢€.¨HQl| +œ Ðx趚æó>}L•Ð`³·oqÜÿó ÄäÙ.Ð(J +p¬Þ !bÀ¨‚€·¢RBÁÂ#Ohàº0à÷Ð+áŸC®]ßÿQ“ÿó Äç +!*ÌøJÄqó(à€.ÈÇF‡K¡÷áÀÞ„Õaî†'™5îÐy›yÇÿÖ*ÊTÿó Äå fÑI†(ùÌÃÚ 5ˆ€!:ç …k‚§Î(Q†\™mŸìz‹èˆ Gþ¯ÿó Äç +μbJp³} .ä ‘`Ã]‰ Š‚S€3ñ²´Ó5ÌdÝŽrÿÒ6’ÿó"Äå PöÍ1DqŽóµ° $$xjœByLhaT&¸‹2ø ’o×–ÄV6ì ‡ýÿó Äç +*ɘIÊpnXü°|Pµ°8xÁl8šƒÆd dJ=Ëñ6û£Î }HG 4Å¢ÿó ÄåÙ.ÖXH„q7A2¨á°6OðÑë Wú¿`…EÔJ}Ñð]Q¨T¯Uæ¼ÿó Äè +A2ÄøJŠqÏúáMV#¼½Y zùx=¨˜|êfL~¸õM4>:®â+äOOÿó"Äæ ¡.¼ðJ„qQŽ¦pTEC[lf³\öxì» ZãQY%ÜÀ|ÿ§ó  +^é®p_ý‡Nÿó Äç  þÄøH„qñPŒ r¨â\±0¦›[lå[ݶ}¤7“Ïë%Ô}öZ5ÿÁÿó Äç ðƸðbpF1™~Àª 88 +ˆI‹'Ñ›T3^ŒvƒÉÿ…V3è@d×ùÿó Äæ àþ͸IDpÀêðt A'@ܺ07"ê,,H:‚ðë゙nÊA¿Ë +&ªŽÚ«ÿó"Äå 1*Á`„q H‰ +"Ìem–W,%Üh@,‡p5_#L‘Ù­KP¢ÕÃÿó Äè ðþ¨{Jpº;|Âì ‰~1‚¢aVÆØ3”\ÍG?÷Zbƒ¸kê(µ{|ÿó Äç ú¬zÊp¢‡¥Ù`ÊRÁ‰Á¹§-&U…•Gå}—,w/8gg.g‡/ÿó Äé +‘.°XzDqýz}J8(´M—KM#qÁsŠus¯{ÕÛÃv–ÈR?ýÈÏÿó"Äå 0þ½¸IÄpPEúdTøP‰Lrþ¥a>êË*´üÎæGäËž‡QÄçÿó Äè i.°0`„rQë¸h– ‘[ׂ‚*%™…ò¬ +(OT +Å,K1Öφ‹ï>¡ïôPÿó Äé +y.¨PyJqX+I½s5¨ÑrHuN‹:®fë5êAö¢nγ@¼\Ä~Kßq:éÀBÿó Äæ  ú¬Pa„pÙt{yÀH|yWÁu^†lQß”)`¸q4¶ ·€¨¤ðkÕL*ˆÿó"Äæ ñ.¤Pb +qy‹8!Ì5Ká²³-‚—€Bž5³Xsƒ~%ý¾!¨¶Mÿó Ä“ (ÊÐÈBp`átØ-|У>0±Šèć?øDeü°¡ó(”p,º€ÿó Ä• ÊÌJÊp‰QX|N+$ ‹«r¦ÓïcDÎÒˆ[údKÏì«Àd7ÿó Ę þæXIDp¯íµŸ¹$9å9踱0A³(Ðù¥ÊöP2pJPeJÞ)­G[“¥ÿó"Äš XþÈ°ZDp>%ÍáßÿüÉCpG̘Ð+`‚›÷vÚ!ۋ jD¶IÍ—%A£j½ÿó Äœ ÎÙ˜0„pïTUI¿Y@d«(áGRb@œý¹Ñ©mja’¼¥Ú^àʺ‰Mæÿó Äž +(ú¸¸K qÇô.ïA€¯üÛ´‡€Â€8°ÅÅwi3Ú’;(ê¢äGuYòs&ÿó Ä :â8H†qªˆäÿé¨7æô€6³(Ñäg‡\뺜ƒ®„Ôìæln×ïÿÿó"ĉ PÊÐJÄpýÄÑU ”ï²· +#ÐdÊ6Äþd•XMœ¨1:þÏÞ¶ú‚UOõÿó Ä‹PÊÔbÊp°ÏÉÊ Æß&¤|&jäC˜}â5@ÏEb­ª¯«ž +ÿõ ÷êÿó ÄÉáIDpp…pü’K„™=0í`×dÐ%ücâNÕF~Œ7ûE«„ Å€8ÿó Ä“é.î81Dq,^@êBTíÆ0úì o«ß­uµ¤/#4õº´$ l8|ÿó"Ä– +ÐbDppîÞ*-R: ÒÞG˜YýfJ8ØKè‘hÏþ£D|x8%\•‹^.–ÿó Ä™á&ÔPYDq^=m2àç[¸•û·ªÚô¨5Oü»øC€ò„é1T'#¯2ìûlÿó ÄœÑ +ØXIDpš‡J†’WÆŸ^ר[».«Œ£:K?ÅÀ<ð™ +Š¦ À®ö°ÿó ÄŸðÊÌ(Jpµ…ù‚ +ìá;!_2wÿÄo?@éRr‘QÒ1V+iÞ3–ìØÿó Ä¢¸úÔðIDpÀ;W]öHv„ûaAœ³S5€ÀÐq(¨ü#[ˆF§¾Žÿó"Ħ þÌÐzÄpÿ³r«ÖÊ­ÿ¡‘-óÂ@PðçŠ.|K…Žç)^Úüä{žÿó Ä© ʼzÄp¦úŒ¥'‡ríÊu€8N— + ½Š(ë@^ª36O,ôç«$ãh–ÿó Ä«¨ÊÑaDpÚÍ”¾ÚHtžÌªY.¬>‡s®R•3+Ü–þIæ²ô.¶‚ÿó įÈƼzÄp¿/‹` ð’àBudëSž:ª±"¯¨A½åá_ Ï»H¤Nž©Ñ¿ÿó"IJ .Ö8`„q€'° ÓP9`âÏ»Tòµ0L¶Ú‡ÿ™0ƒ;Ñ™ƒrøhsQ‚àÿó ĵ þÍH„pD’09@æiÖ¦yT)­L–ÕyöSq÷{Ý¡H0Ž·(#È€Éÿó Ä·HÊÀ(aÄrÉ®{­E|Ãà„¡¼6‹©õGƒÿïåêGÛø fG’¿k5 (4€,ÿó ļ þ´zÄqï9q‹Tñ’¹bRó‘ü¡½£ÃEPÍ»öxC7É8 Ì €pxåá ÿó"ÄÀ .Å`„qšØñ2…KÖÞ‘GE2¢ÛÞƒþÚQT!Ì\Ë€›4¥bùX¦¥0Í2ÿó Äà Æ͸IDp¼CyWf•úµþ\{–¹s1vRPÍÿQ?@ ´àÈ"QÆlxÈÃ>ÿó ÄÅ ÆɸIDpKŒêë†Gkv$<¡Ò†õloþ~ +x>åæh´ÍÁ<´Â¸Š\<7ÿó ÄÇÈάzÄpÓö„t·ÒvDJ:êýZ¡Šþ¦[Æ,Û X¾šoXku&‘‰j +‘ÿó"ÄÊ @Ê´ða„p«-æ ÿ‡YØY5† zú@ A…ÐN)ÙW)§ªXxà +4aŒ øÿó ÄÍ ¸XH„p ®ÚÜ®xåK/_#y²_ÿ?'Ì•ô†6ÁŠâ…¦‰fPf 0ÿó ÄÏøþ¨(bÄpÂÅ„<öP–<‚s¥ÑZ`aÎòÐÁ‚E˜‹ìÉØü‘püm`ÐN¾Xÿó ÄÒù±Z„pÁÀÉU{µ! ²¡gR!OÕ VŒá¨ñK¸RuXIÆ +Ùü#gÿó"ÄÕ HΠbJp™bÜTN!SG.ôU~Þ“¨äi.xh©¼‹ž®ÛxëÒ€vÙÿó Ä×Њ¤ÈzPL-Ù<*C¨i¡µÓÔ< À@4F¢©yXÜ^)ÈÃTª÷Ò…Ž•º(Èÿó ÄÚ ¹. 0y†r/ +·°çpVe¹Áú}Wg 60$³`Ü`Š»ax‹n0Ϩ6°šWŽÿó ÄÒ!>xÖ^qöä¤-©¶qL[kÊÚK9ÿ0>ãû¯oîêÁÅt—v’çð-ªeôÿó"Äœ±>ŒÆqTþ[à@Á¶’Ñ$°Ž0¾¥"]‹b(Wþ\ãÎÈÄàÐXBÚÅÿó ÄeIB°{q ¢’é‰d‰¹¢äšPÈ &Þ¤³r‰áׇy»¹Ÿƒ!þhŒÿó ÄJ þÈ1Dp ô`Q Ëk–^ÃQ‚@âº*Ä•À¤ü×[Íû PrDÔ'`¦m‹žC„çʆ’zeOÙ]ÿó ÄK +±FÅXKÐql ’>õo÷ü€Ú=`D›©yÏ®ã©L<¨&,¬ÝZÝT .­¸ÿó Ä;Y +ØÈAÄp&öª}ºÍ0Ÿ9¤B%pÔHÆ]HYÐJØ‘Ôì—äÿó"3qó +Ò•ÿó"Ä@ñÜÈaDp×wÈ6…¹õ… Dƒ­I2ó ‰© +Æ/Œ,éë–®¢;òýoþÿó ÄD áBpLÇOÂq`–Ì(ÜâǦ‘¢VW™’Š,r²%‘¾d¥y´Îpÿó ÄF !.Þ0HÄpàá‡I3‹‹Ð!ù•ÒïPl½\(Û³toašC›ôê€ÿó ÄHhþب0ÄpõMmÀó<ãt±•”TƒºBq?ÐUAÙoûªëº²Rî ™Tb R ÿó"ÄM I2ØÐX„p`áTÊb¡Ã×B£È ʃÔÀÊþ ô²)=jÆfX–‚0 æÿó ÄO úX0„p‘S ¯º=sgìÍÖŒ1¤‡8_Ö©sùP€ÖT¨¶hɤÿó ÄQñ +ÑYDpÜp7Ü,À ÷äÐ8"u?æ'¯Ê>£Ú4– +g£mŒ†d÷¬¥Bÿó ÄT ’Õ2JLɵµAÍ­—®,6´ŽÛðÿ»í£)J‹ +ðåàæ4TrÏ™%8 ÿó ÄX úÉPJ +p‡äÿ‹ m9ÚÿzwRTeʼnhÁ‡Ã©Ô=z EÆ"R!LMq ÿÿó"ÄZxŽÀbFM݇a›êFü¿þƉ&žDçœBNÐx @ÊéÍÛÐOåNýÏaÆÒÿó Ä` ÑJp3ŒõÐߺ8p‰6C¸iÄׂÂÄ¡ÊÆ\ Šú˜sfïý¶Ñ>ÿó Äc±ÍPJ +p‹Š÷”óRF8†Í°dàK +ð…2-W‰¯ýÔBJ)˜Ü¿Ñ&ý9ÿó Äg¡ÀIŠqìépyàD@ÀD«,¦O°…’íÀö÷÷Y íz¿è^ÍÂcbÁÏÿó"Äk 9*Ö80„qÒDÇÀç:¡¢’èܨØahXÙ@¾²—NR~üß“…?e…í0¸ íÿó Än¡¼(JqÌ/Hd±!(ñ{–‹‡Ðu‚^¡_ˆæ‚C\¶­)ý±£ò`FVƒÄÿó ÄrøÎÀÈ1ŽpøH¨="»±V +;Tn>¼£’§j§õÿö: 5ûl<â%ƒÁ™ÿó Äuù*ÍxH„qD©µÇÖ¤éó÷0VE77GÁe"³Žúë +#†Ùmÿó"Äx Y +´°zpP—@ƒ%q©Õ\õFÕ7\ék:"Õœ|?£H…`$TzÒªwÅ#¬Pÿó Äzù.Î8@„pµ v o©Ä´_ç§ùA°c%ˆ7€‹‡0nMJS‹"¥ uÿó Ä}Æ´ÈH„p +‚~ +rŨ„: NÒ‡ÖœAŸÊú{èè뇣ŠC°;i„ÿó Äé¸PH„pߘ/&nß¡[²ýÖšÀ@šº–V-¼è´.!U]Ú#ú”Nÿó"Ä„ ú¸Ø`„poø±‘’t—‡}êÀ8§ê×Q´Öpêí •1ft”(ÿ&LE]ÿó 渊°ÐxÄLðIû3ÿª†Ø[t›C4Q uÊËÇ^“î)P­ÅŽ{÷AÁóêÄú1ÿó Ä‹  +¨¨yÄpÿôQpDät€6$éUe“0¡½ÅIx9#æÿìÌ’p§Þ¬­Úÿó Ä .½˜H„qÿªµE¯è'c ·«, ¾¯"­ùã1>¦Áôót4VwÔ£î$bUí"ÿó"Ä A +¨yÄp_J@:„7(¨‚I¶×´Â€Ï%5%}ع|}9Y»µ·ÕGú‚ÿó Ä’ ¤(zpÔ’¸¸€Q?7) ¤Ä÷¤$š†×´©D S›{KåyÀ(Gõ€åÿó Ä” ¤Èy„pJ°Î{ik‹ˆš2®ÆwDk”{±MòZt)ü½÷0ŸÊ{TAp%¾ÿó Ä— ¦œyŽL $ ê=‘, Ä5BŠdDã7»4êüß™¿§~Ž¬`IÆ™*ÿó"Ä™ 9*²8H„p>BêÖ'±Õ ,¨Õ1Y:”-·¨_Õ¿òøCþH`RÓ$>0êÈOÿó Äœ ¦œbJLY¶É°j¨„hâ™=H˜wãþ­ÿÁ¢G <;+ dQJ¶bǼÿó Äž ®”{ LÀõ¦@mC‡·×Œh³îŸ³~¯µ.@ +Áfëv€ÙPI`¥¥uÛ ”iœS•~ˆ² ‘gÿó Ä®Èþ(aDpeWŠ¢4áUHøõÂöòÐáj_Òª“’”à +ç$ß]­i‹ÛYûvûÿó"ı !¡IÄp_sñ½ Ò0¨<0.ãª#ù`rŠA>‚?º¯÷=^ªÓŠô€ÿó Ä´ !*©¸H„q@¹Pš]Ä›p˜ûåCjÁ=o¨£fl¿Øßùb‹;ÓŠ ÿó ĶÀªÈzDLÁÀZĺ3C‡ÈX"ý&jT_ÈóþªÕü9ÍùUƒÚ…Ć.‰çÿó ĺÀ–™xŠLêµ¥„‚¡ìZ èFa0 €y›˜—Z=l3}>ôÔW,Â@ñ¨éÒÿó"ľ Y„ÈÁ„p=JCì 1Ï‚õq~-³)&¦¨#¬ÊoÑ(€˜€*ÔÚr +a;-ÿó ÄÀ‰‘`„pâ’Ì’’õ¯ã¦«ÐÏõ)y ð 62›ÌÙ•Û’ÃuÂcÿó ÄÄ þ‘xxŠp•>ÜüHšt†2°6P›”Ý©â@,ÈÊ…¢ÇU62‹nÉn¼ÿó ÄƦ‰PbFLý_ÕÁ‰‘Š¾&Ÿð¨$»5`‰à*U'Ò&$¶_$;ŠXu¼œÿó"ÄÊ 9 +€ÈxÄpðâû`ße= +îÿ/þ<ÀÀɘƒzR+æRž´1D,Š(ŠÖôp¢ÿó ÄÍxŠ`ÊLµì]3[ÂôÊ^æ¿ÿÀàCÜv AE´±6pr’ÏôH$‡$üyÔþÿó ÄÒ ! +„°z +qe´•†ïÿ°z ·:Ñ%Ú ð¡cÌ“(øŸCÙ •Æ6ÁY·aý×ÿó ÄÔ š„ðy„LpH EP'”x¡o¾÷’:ü£Ð—FÊjç ÿîæÖ'öfëùÿó"ÄØ Ž‰˜a„L+ðHûaÀd +`-“²")öÞ(×D¹4µ1ؘLAéLç šP1ÉuEÿó ÄÛñ +¸x„p^Pö€6‹°_>ŠµÈïaj°Þ« € ý/3 +OB,ˆ™Î¬£Ðÿó ÄÞˆâx„pÒª2UƒP­\T&˘Ît|‹1Pë°¬jþ,iI')¥“tÝCÿó Äâ Z¦X1„%6HoýØLN +Ä•ÞÚŠPønò®åû¶EÈ@·¢ÝÅ:pÎe$ÿó"Ääp‚pzJHB–!õÄUê1¬/øó÷GÚ m(>µ[­¡ ï9…̱Ÿk‡~ßÿó Äê +á +xØÁÄpü½ãÌð Âê¹D×H¨öJ½u½‡Ùc3²÷þþG`ÏÁ´]Ý•ÿó Äå ŠlzFLÌÜÊ€§Vaå°æß6Ìñ±iml¬’è»+ ¼-¿k¢ÒT/­úxÿó Äç x†l(yŒH9ÑU=@oL .o¯Iš«ñ—G²Adˆð.©Ìwƒjõ_ו†ÿó Äè +(þpÐy„qb`Ö°'wmÀÑ Žû½ÄR ‚T÷=‡ûz:Ž¹OM +ìÜÿó"Äæ ˆštøy†L8ÓN\/Z@ ÿ¥Ë›Ä|{!»žëkÀÌ»2‚Qæ/Œ<€ÏËÿó Äç ¸ŠdÂNMŸÐ~É6E¦œš°¦‡)‡ bQð™P‘ŒÑ;o~´ã]Cú|{ÿó Äç ÈÆpðy„q|þ1òAðR;´µʈA½xG3æbŸF j˜™¤À¨ÿó Äæ ˜ÊhÂFp`µ-ÐG!òG‘•E ƒÈ«%Ê-ÁûÒ‹§”Ö\#“8V*N ófÖÿó"Äæ apPÁDpasM$Ý`w„2êƒ`¼½±é§®ŠêcÖt¡uÕÁ¸‰žºßIÑëÿó Äè +Pþ†XXÄp àѬˆ R’@&~" %\Ñ,¶wCû!-µä6åÆ&â¢UC§ÿó ÄåøªlPy„L,œQ@5#r(œº’«U@ên¹Š>]éé9¬:N;YÑv¥…ÿó"Äå 8Š\(ÂDL¥¤ÚMH2?ð£^ðµ€Ù“ɃU#·w¾9DèìÍ &±ô503ÿó Äè øŠTÂFL +=³©”IDlÅ ¨°“,ЀÃãSï: +îQ&5 +Màéæ]³èJ‘ÿó Äç øšdðy„L½½fß°†l„à½N…›%ã„H3aý©«I'Ÿ†Ð³Pjö¸]óÿó Äæ ئlðy†L”ÒM·ÐCGKã@aÁ •Kž1˜`¡Oç°Að-Èjéòÿó"Äå VmbL$LÀ (¼ z™É8(¥8К%2ð¢„P`‰ôO£(„^ÿó Äè +(šhðy„L ô„ødOLühDƒ‡¾‹@ÝÝ€1!㌜Q¼.¬cè)Bÿó Äæ €žmy„L%b`¶¡i ^"€=?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó Äç à¦Xy„MÿØ„ ™RbF +%7‹Ã@{Πcªü£ t VJ°;h¦ÈJ-ˆÿó"Äæ +8š\Oæ´Z#ƒ‹£r8¬ªdÀØ&¼li¶{YÉ€,¹˜ú«/Ò@ ÿó Äå%Ä‚T™˜cwL¦7 X>4 8){ªÜ0`A¢Éìbƒ¬1˜PgI b€ÿó Äu$QVT ÚÐä Fƒ²ç0¹€Ðˆ‚hL/¸(4¾t0Üÿ@þ&Ø4„8¤ÃÔÿó Ä + +q*´xÊqp”ä6~þã +W5ö{>E‹»]öB.êÏBÄtàÄýM3t²ÿó"ÄðÒÄÈyDp-Å\ˆÅ¤Þ’ò¼ä1+Fµ†Þ™Î ܳ +:X zB ¼yu_ÿó Ä ¨Ö¼bDpMûö%C[ŠmÕÓ±éñ·IAØk&8î!H-ÊD^_€ÄΣÉͳÿó Ä  +æX8Fpx¦¿®Ò™Õ¿ßÁ“t¼‹6aÍîšeùó)j[¡¼[x©q+ÿó Ęª¸{ÄLÝ#WXá½ÞÊåap“=Rôƒ€ ìœ zdr<®^ì‡j­BšZÎÿó"Ä A.ÀÈaDpäÚ‹ +û¯‘¿²"½{‘…è Ä>˜é +5”Œ¥HfGÌjsÁ5%Wÿó Ä Y&¸Øz +qš>ÝHôQ ò¦æú¦¹,@ï^Ÿ@Å\"—@o›ÂÔŸ4†sÿó ÄðªÄ+ÊL×`¡{éÄÅ€‹h¡pÂu—GQ”(ùSn µ¦(Á«Ü³ßlÃGKí?Íÿó ÄÁ*Äy„pzƪòúeR›ö[÷«Dè@.0*$ãÜ(‹¦Q÷÷€¢ÞRk×ÿÿó"Ä A*Õ¸9Fpmà5OžrÁæðÁ“êÜðX Ê +¢ô„ó3yqjð–Ù¶‹fŒ(ÿó Äت¼È[LýÑ;ràÁþ“@6>@©Á€o‡2(»hJÉŠ+!¸w‡©EM¯ +£ÿó Ä ‚À(bIþ +_ý|ÑÀ +å;N]†ícÊwñ“ +$ ègÛgQŒðo£Ù`ÿó Ä +ñ.ÄPy„p”Ktb™ÆÚK² ŒXHŠÂÐh—V -¢J|‡{äĸ +Ð} ÿó"Ä 8VÚ8JÖ$Nø5M¡Zâ§T<@±Ä,®²YäÏ0gàÀ‘›¢É²ÕÑöÁÿó Ä ÒÕ˜X„qßòÇnó€üe]®˜R4™Ãú-­jîÀpP­¢\KI¤.q¥%ÿó Ä ¨~¼{ÔHex°@i€ø +°)kO˜X½Ã¥³û£ì•þ¡Gýg¬Y=¥ƒ‡•‡ÿó Ä$ ¦ÅJDL™'0µô¥È£<±A9ñhÊ3Ühér|8d©,÷8[Ô˜ïÿó"Ä& HÒ¼bp$=H›åª,±°¦ +$O" $°öã{¹_kL¬Ø‡'mˆÃeA¿mÿó Ä( +A.¸zLq»lV7NölÝÆã?ýuÜnc»TŽ‡ ÿó Ä) ÎÙIÄq…šLP¬úƒ¶õQz]]ójÿÄf÷e¶ Íâ'¢€8LåǧItÿó Ä, !â81Dp‰ÖF²¶ í˜Û¿Zÿv?Áº=ž¾ +¾ $3= ç@¶Ñ5ÛØÌÿó"Ä. ÈÈI„pô¶•¼ºw(nöÞÒ~©« +!Ê %1 åÃM€’˜”òdÚ´d\›µ¼èÿó Ä1ÈŠÈJÌLÅ´“µà™ÙéQ~™QXÎ+Ë»ë@ hÈ L¤«FD´qskkÿó Ä4h¦ÄbTL-J¤ ¢ÚQ¸ãäôZUî¤À’ +ÔQª>/CG¦¾ÐãÊ=_ô£ +Dÿó Ä9¨fÈÈY’(~~íÅ +«gú«ÿ.€ë’¹•ãbÆklÑç1d®Ϧ€øËÿó"Ä= .ÀaŠqÚŸTýð2~Íø&áPé3uêêUø×R‚ˆ¥ÛL]åÊÍø3úPÿó Ä@ !&ÀyÄpf%nI·¥ÔÀ<¬%-l¢ÈÅÚ{€¨Ðú%– ßE8ØØ1ø¼_ÿó ÄBЦÀzLáoQú”ç ‘!궉œ ”¨¨büÂ_þ«}/"׋ðƒUÿó ÄEÑÌðaDpC.X%’CŒ"‹6©…HÅq‚üKuÆŠ¦z#*WFgfá ê‚4ÿó"ÄH 0îÀbDp€@hð”¥ÞX›’Œf +FAwÝÊ +ñ=Vó³ ªâ\€:AA¾­cÀéÿó ÄK æÄ(aDp†U0Eƒ'"ŸØ)YçØsâäçÖy„T +±4pï Ö—Ž¹ÿó ÄM ªÍaFLªuÇíˆ3;ög r~¼þ#Ó‘rj\ÆÙLûc±B +@€Lü(ð€«®ÿó ÄO8ŠÀIJL=L}23êwÌ`ô¿Ø–h·ânA÷ L7N?H"Ö∠+çBÿó"ÄU Q +¸ZDpŒ2+½¢»jTÊ)Œ‘;¥Ê•;¤åÈLÕ(:4±Ë.ŒâAڢȡnÿó ÄWÀ¦ÀÈJDLè–R»Ì\ôfOŠùUj€–ÕºEü]F…¥Ê›AÒê2!èQbÿó Ä[@¦À(JL~ÜUùM2æt”£ÍMNÜ +îÒƒCèÈvx+5î6ÎëÆsS•ÿó ÄaêÀÈYJp>€Åòçrï]`åÙhÎŽƾ• +UæBÄö@¿^¢fÍS¢ñN³ÿó"Äeˆ¦Àb +L×]ÒQž' Á%0™qHÂbýÃß|ölºßõ¨ü‹.sÐ0ŠHÿó ÄjØæ¼aDpèÙ¥¸à(lï4ž 7PÙÝ |ÿûi¼GH%oÔ£7ñ:@ûŽÛÿó Äm8ʼJ +p”ÂhA!Þ?b‹¸&ë’ù”K~F¬ˆ/Ä1Ó ím¼á½dLúo_ÿó Äs°æÀ¨IÊpíN$jx6À" ‡»OÙD7¨;]ùÍø“µ§X®°B +æÙ~ÿó"Äw Q*¼ÈZDp”ÁãqÄ„ç@i¸¾³¿êÍmC5Yó÷_©ó‚¢ ! ž2OJÓÿó Äy ʸzÄptD„/¹P-.Tí ^Ú-ø–ü¯öA»5À‚uðé–:é›\%LÈÿó Ä{ æÀÈyJpãVÊÖÔû»Ë£þÊÿ86ý½Ð|x`–ÍÈ$D¡¸^Z—8ð°ƒÿó Ä} !.ÈøHÄp–zkŸâŽžA"ýï¦ÁÆkn·e€–[.”ÆD‰ + '¨^ÿó"ÄØêÅaÄpjs4º5ðC2b_ þŽ@Æ`íëkµ”ÊYvVIYHI£j×o@sS3ÿó ăñ*ÍIDp̹‡_€ÿÌOļ{÷² Â‹©@°ùû²°ág¦& ‡’dÇ}õ +Võ +ÿó Ć æ¸aDpü¥ÿíf¯9Å +@‘<>CP'¢`uj6[1Ýeú'®þ‰ ÿó Ĉ°Æ¼b„pGª5Æåù6å€:Mn ¥öŽSâ5Aη_壟ïí¨ÈÖ0¿?ÿó"ÄŒ ê¼zÊpŽîÖûéL’ + 12€S©Ð5ŧqÿãXÈ)Ÿæuú;·áÿó Ä *ÍxH„q_EòàLàù>:bÁõ«(’ŒÎÊF§­©ª“.ã6ÚôDú#hÜÿó Ä‘ î¸bp¢@Lã-fÏ*É×Æ>#¼g0‹»Ï ˜Â|ë*äáPþ* +ÿó Ä“Àʼ(yŠp‘62•Ò"H®x:UŠZQV¢!¾d'võu§GgsêS?  '@yÿó"Ä— Y +¼Èbp!ÎÈ`ÚXqª?n¤k6φYÑ5%Å2Ûù=ª,oÞà '±ÿó Ä™ ¼ÈIÄpõ99•˜I„_YÁ;Ñt²%X¹2\‰Ü³rjÊÈ6ˆAs¬Üÿó Ä› H¦¼ÈIŠLõu&ÓC_çÄÀíKô–Lš„)ê­ùÅ›ƒÚC€í³7w>Ê3[Éÿó Äœé´aÄpÈqY+nøÔ +yÿÏ kèWÉ¿iÆ·¨#úíjˆGÜ©aO`¯áˆ8Dÿó"ÄŸ ÁIÄq¬eât¯Pv¼Ù² +=Xÿv1µ€úðvÚœÜY)Iˆ¢A4LNÿó ĢȮ¸èHŽLA¥D£’¢ˆ@ò‰Ë·QšÈ¢6Œ2Uª\ñbµí³,[¦ *ÿó Ä¥Øê´ZJp£÷°^?mxâ7&0g)Ôý  (>Ú%MÁ›E.êÔ.¢ÐKŒTqÿó ĨѸzÄpü¿‘DmÈßDgùÏôºÀC6ðê &/g’^ °}£TD~.w–éÞDÿó"Ä«ÈƸyJp _ÊÍ}Òß@_@½$#ÇC©‹ )‰‡”î1S@˜¹è~Ä£è7]ÿó į v°ÀŒHA/áÛ„]ùááÐøò¦F +%ÓQÁ’¡!ü%'Úª+DÜ[~WüÕÿó ı æ´‚Äpt¨A¾¤÷àmg*È8-t~¶Üs%µ1iúz׬(ÿK{Hÿó ij *ÀðyDpé(°]VéúÁ¡.÷z¹]÷Šã4‡Av¬-Å߇Ÿ§P_@\aÿó"ĵ *ÅIÄp±àç)#Ö|`%gøür¬¦úçÜCñh5|½y édøt~|Д+—!ÿó ĸ ê¼¨IDpª CLdÔ—óÇH‰"sŸ¹‹]Uô¢¿ü5ÄèЈL”щÑ3£ºÿó ļpê¸Jp‰‚ãE¦­ÂZþŠÿ}´Ì"s %ÔÍÃ@ +Ð!pª¸hÚŒ¤=ÿó ÄÁ ÁpIDqÁž˜Ø¡0åýx˜«˜Lž\ð›å>£Ð#wÓècæmäÿó ÄÃðŠ´zLfyGyu +éÈvôs({C +š À;_PE/GÄá­"“!êícÿó"ÄÆ 9ÁJphN_ÿLíûzC*Á &d<¼B3Ö¶ ¥ªyDy:Úçß癯(ÿó ÄÉxæ¸bÄpgÕ2/Ø«¯+ðàò­¦³0Ó²Ÿ4$ö‡À‹Ú™B-H±¼ ÿó ÄÎXÆÀÈaDpî{ ¿,;[Iìï1šIœ4u€n¡¢$•¨žºw†eŠþ^”'ÿó ÄÓ°F͸*D$#鸒ð€AÒid“N]xBÞ +ÔóZE@C¾ˆFcÞ&_@&oyÿó"Ä×Àæ´zJp›º»t¨ ãÑ(7å¢ ÉL€j·ÄØ!ÛnàQ–ÏDj–‡Q>¥ÿó ÄÜ !͸2p3}GÝ镹|Ë€xáÆDÕûy8±‘ýûó²ÓPmõˆäŸÿó ÄÞ &¼ðZDq´È0p™w†œÌ| Ù#µ £˜¼|ˆ&ò˜‡öD=ÿ –ìÇ èÿó Äà8†¸zH…8«±ÁÁÓv/ωRyÀj¬ý” +ÿ{Ç/ïÓ+•ë"¨ÿó"Äæ é*´(zpËf ¶æ@H¨ «¨Ì`@âfƒ1b@ý¼þF$&o˽Jmº*©®‚[êÿó Äæ ¡&´0yÄq©øR8˜PgÚLÒGŽsŒXkqqvsÅÌèu–|Ü~{ß‹¤º¡ ÿó Äæ É°ŠpT¨ö¢ÀÀåàáÿÞqÉœB(¶.4Væå(éNVÓ›ë'J«ÿó Äå¨î¸y„pbä(ÛÐjÑ]­3ÝB +õ8L¤¡Õ~Éø)¶Âÿó"Äé +y2¸8yDq-óõ/ÝN:&­fØö‹Ü&¹ðt4@'kŸm®Öb¨òBÈ1ÿó Äç Ñ&¸0IÄp°Â*ÇÀ0j°4o¦|<Ú‚Öùè½Õ¡î1¨ÌʺϺÌZþVšðÿó Äæ ±&¼ð:pèx, @9•‘Äá™yn®Ñ*d%ºr€çSqåWZœ†çüÓ¶ÿó Äæ Ñ*¸ÐIÄqµÙëÊ€Å%AÂ&º1ÔqÖúi{’Þ¢PÇç ñ-ùK˜±÷ÿó"Äå Q +½IDpžÌ;H£Eõ\´ŠÐ ®lp­ 9H5fH&ÕΆ¦¢ºöfù"ˆkÎÿó Äç ù +¹IDq꜃¹òáaƒÄ0d&“ ϱi tÇp7º®U¹ø15Çå:ÿó Äæ ˆª¨(zTLugE=H‰8 ¡lþxRâ*tê—Þm*3vø®rÜeAµ;¾ìñ¹qÿó Äæ q +Á¸IDq2â ê€h*Vá80CD'¥øô‚BÀþYYj?zñÖIöÿÈß!ÿó"Äç +Iµ¸aÄp¾‡D¨€ 2ØæfÒ¸¦^Å;–_\¾¨0 é®ËæàƒkóÇÿó Äå誤zNL*04»ãìáãç¹r¨l|µ£A‰äTt‡Y5ÕÊB¬©ÆŽß@Qoÿó Äè +a&¹˜aDpŸ®µEÀ3GcaÍ»¯%0³‚ +…&Ðw¿)L²ÙW©Ø;Ó ÿó Ä刪 bÆLÝë :ZF&èO”‡ÔÇï•FL»ƒzŽÿ%×dC ß•-Ùÿó"Äé +¸Î˜{Äp„üŽ5Îp2%lœøk¥¶ès]‡:Núh‡i cv/†©’è€ÿó Äæ i +¤ðaÄp>dT!TÄ–±I”ÖLÀ¢´Ê°JU¬ Ú´…9U^ëúì8Ëÿó Äç pª ð{Lý˜¹Bs½•Ù‰ä"{J +|QsDÆ¥U³ö䦲fî2ÿó Äè +PÊzÊqÒœFJ jK|Îe ¸EÕPä1â¼q‰ÐUJ8ØgË‚„C¯KÛk%AÄÆØœ¤UÊÖt/¨mfòÎïñYˆŽÿó Ĩè²ÈÈJTLÓç2¯S¯ª Àñ1IUZN.ª:ã÷£>%Óã&ó^êûBsëÖ¬(ÞÊÿó"Ä« ÕY„p;Ûƒ3ë@æv›-Þ ä2S”âQ`ÚjM¬1ëåÏön´Nõ 1X•õ‡õÿó įÑÀzpˆ +\Ò'Aˆ#!s‡¸ºn‡9ÌV[PR¾£êM(qŸ÷íaŽjùÿó IJbÀJV(ˆù[8ºê^9ª{\ئ»ª8Íê»–ÕléÓïHœÈÿó Ĺ >È01Äq=—^öL+ä¥ è/J·ÿ›þ +A¾ Óè¢øcPˆ–Øÿó"Ä»é¼bÄp&cdn(ÙÎ2qÀëÉfûcf;Á§m¾vúÞן$p€‚04 õœNÿó Ä¿ÐÚ¼z +p’{À'0ªL1?+}K£ÝÄço¡FÙ¨`Ž™¦8Ši€ò0Qè,Éÿó Ä ÄÈYDp-„†*†ø¿Ôß·J*‹oB¿ÿ˜1@„€Àåº$XÈz¡&ÿó ÄÅèþ¼zÄpPÒc:…Ã)ñßÔ½°ÍùMôÿ_yiëÕ‡Tè]ò¯ÔòLJPXÿó"ÄÈ 1͸Jp†‚Ðf”ú#R•> +µ'ÔKð&£@´çJ`üƪB^в8€‰›ÿó ÄË !:Ò8IÄq¤E}ô˜ÓêDò(~.ý¼x€Á%-B•/W˜~‰ÀðÕê7×óÿó ÄÍù>Ò81Dq–·›FíŽ,>¶pØ€EÎHÀ`¢ìÞA¸áç@½üo[ÿó ÄÐ :âX0„q±(mo(ÅÊð–àöpchsp¦ +ïQ.?³L×U†®aÏʽâÿó"ÄÒ A6ÅxIÄqïSßT‹ò™r €Èjpöá¹°x]= tXYð© )Üè^ôºñíÿó ÄÕØú¼yÄp|È”˜‚ …Òê¤Q€ +³Û¬ÄÀžPó|a_Zj²~«§ÿFÇýÿó ÄØèºÄÈIÎLèÇêP³ëï#/X¢ÛìCs†ÁÛ“Å$ý”§/÷ÁlJœ*ï«¿ÿó ÄÛèÚÀ0cDpìjg‰è€’úÒ‡H—¢jˆM''»‡|Í¿7}»ñÒa´àŸ‹ÿó"ÄÞ (‚ÄøJÊH¾°3’°€òÆ|²‹q&u]ßâÉk¨[àÑëóÜÙÃÓBòP"+¦¡©ßÿó Äá ¢¼{ÎLÔA`€Xé,kty¹TÝ$ÖTt$ÊX™j´Ž6Z‘´l'~%½£=ÿó Äãè¢ÍIÆLvS»tq€ˆ7ÀQ.ÆÃÀRËû\< Ѭ(߀íðDû¸û. íBïÿó Äæ °ÞÀPaÄqJ”ü4‰&á²EI¸7t³k8tÁꨲÂBúÒWø$o”y‘ îœzÿó"Äæ ©:ÅxyÄq6Ü!€ÀÆ(<Rñ ÄUêa0·MèGÉ‚3Uô}h NŠ§Fÿó Äç èÚÁxa„p÷’íðÊ€ +ç$4e]&+ŠÈ•K*²ö¹ôöÕ²tú¿ Ñÿó Äæ !¸zJq^Ô€AÆ \YI•š )>L +Öy£Ò6׬‹Nº=¡eØ›Ðgøÿó Äè +Q:½XaÄq?w8ƒ6„X pñ€?kˆ0›íH;ÓîÊë¿ ªh5|qªŒ®-máÿó"Äå 8ÚÄÐaDpÿÎó$!D€q£ h<:Bn¢q_NaqI&H[ýU“Ð_ëÛQ^³Æÿó Äè Ñ:À¸aDqȦ(°íÉ£1Ê ™gRG{Øм:˜˜5¢ZçŠôÌüÐrˆžxÿó Äç + 6ɘIDqÁ +ˆÀðÓG´×€ÈAJ$ú}ô„0Úñ­RÈ®¥Þ5Ø“‹!ÿó ÄåÉÀÈIÊp{¸Çušˆ[B&Ì:y6¯¹aAÈ|Ê¿<ðašz1VÆ¢ŽÉÐí®ÿó"Äè +96¼KDq YO âŠU08~ÎÇf)šV³(#<$±ƒ´ê=m«µy +‡Ê0êÜÿó Äç + :ÄXJÄq‚>ç °¤(Ù-ˆO}PÕŠúKXPžØ‰×†²õ;íR‡Óæ3zÿó Äå úÖ8IDpºüâÀÌ *}-`ZzgŠ„‡Y›;}@ä½i›R +ùÛåÿó Äç +Þ´zpauƒ€@ˆ ÚGv;Œ…‰r†û€‚­ÂøÚ•&úê£f4£wÿó ÄåÈ‚¸yŠHëø"?'fˆ,º|ÐŽÑvó§ØäÉŸ ½ÂëøýÕúz:7øoÛôÿó"Äì Q6´8zDqí[ƒ8…À磔Xåõl‘åsf[Æ÷Pžñcµ^¦®”ºñcÜ]ÿó Äæ á6ɸIDqÜ–HBÀ=Èl$0ö^rh™Bq'Á‘”;îãZÕ9ݯ†}º´ÿÜ„ÿó Äå 6¸aÊqFl ð tÄHTWDŠKèƸÀíÆ®¼RÐ&oªëœ`åÿó Äç ™Á˜IDp¼{-:ü@’’‹r má¤ò¨"F¡††¥;7Ô=/R¶7¹ƒÿó"Äç +9½Zqz³öh‡V»Œñ²ó0Èðæ"Nƒ>lL ®¦[ˆ3þ*ždwÿó Äæ Ñ:ŘZÄq=„F‹>Àpˆ‹ ðÖeÅlTmî¯A{³¹Æ逺[VÛ«êø¢eíû[ÿó ÄåðÞ´zpЀ·­í»~=\^…3RwÍM–"‡LSiuî:YŸXæòá«Êÿó Äè +1:ɘJqè>쀑¨_­g—d’4Ù³„ÃÒIŒ ï1EßÔA~ ý‡GL)ÿó"Äæ + Þ¼XyJpßÐ$žàåAŒ$§é#c4_ŽÌ4O@Y +»øŸñ­uR¦~¹lÀíÿó ÄåPÚ¸aDp\4ƒ!×+mZn¨ù‹qú©}²y! ±÷ûîÏLÄü¯FßR7Áÿó Äê +Ñ>½xxÊq:tG˜€öZ7 žÛŒZE(Ó^d +½©ðþ«Ãµw¢ýNeïÔÿó ÄåÉ:Åx„qw˜$°7Nz +¯,Æ]²ì;.:q÷ñæH%­P·ÝP)> +ÿó"Äè +º¬ÁŽLÕL%À*18ñž +=:r`WßÝ@Àî¼3kS5‘ÔL”(•1¥ÿó Äè +QÁ˜yDq8x0(@ÈM¦jºDÀ(ÁÞå*`Çr¤P7diênýn‡ÎKÉAÆöEÿó Äå¸ÞÀðaDpo‚Gc@I%':1­ÐR\k\x ¾ÒjÈ×ñÇù÷»5‘¤1¡ÿó Äé +‰>¼øzDq~)~ã‘ëΚ§ev1ÝÖºtWº&Ët +h×R · +O] ½¨;¶ÿó"ÄåÀú´JÎpÿ¨‡Z@ˆ`Ò2R + ±ç”" +Þ&AóÏhÿ îUVç¶f¾ÿó Äê +Q>¬a„s¶÷_ÜVÀ€ ÅÅ¥:ƒT@÷̾ùpœ@ò¦ròqi…îŸÊ"ÿó Äç ¸¾¸ÐI„L‘d€ÃJΞ;Œèm°wÆX £cÇOÆ/¤~ß²övß(qº"”oÿó Äç ÑÁ˜IÄpR©³\¡šÈ ¦Äî­ F¥6¢Y@/¡È¡VúEÙg=Šû2[ÿó"Äæ Á6¸aÄqS~S7…€°Ì:;ª¶à3’ȸ€ÀMË9_ó~ +­i–~ÂuÔ_ìÿó Äç ‘´{JpíÕ¢€‚˜;\ð6ò8$c¿ø¹œ‡Mõ¥׸zVü˜1VFÈÕðÅýÿó Äç +6ÁZq¾„}rŽÀõ« Ö +„»na0°L!=ÕÑĤ÷¿Á‘é»›F¨#ÙÍÿó ÄåÈ^´°K(iÔÀ  &k‘F ,–:àD{KààѽF¯¾£;£î]òµ?ÿó"Äè +6¼øIÎqîo*; À̬$rèjƒê^2ÃļT”oÿ•Æ¹2Ùwõ?èÿó Äæ É:Á˜IÄqÍV–£h€^é5Ìq=>ýå„Ìü\™FViÎ…ZkÓ¾”TÏÿó Äå :͘IDqj%xóê„0AÉ€íZ¤ð,TZ´âF6 BÝ'þOÓÙ@o»~ÿó Äç +:¼ðzDqÁ˜†F¨%ŠT™pN±z ­~˦F‚ºð³ÇMOêö‰¡Y;mØíÿó"Äå Ú¸yÄp¯Øì&À@$†\ÁcÓp33€3 o€©ËóŸµÙYb¶)ÂœWŸÿó Äé +Y6¸Øb„q{È@@ ÀçY#3x>òɘBqÕ¦ò‹8€ ‹Åo+ÃŘÙTL‚çf *smœßPßÆ-T• ]v;ÿó Äæ ÀÞ´¸zÄpüêæê1@°ê¼B.…á­ +i¤si3x€ÎýÆ~Úù„jÙ^ÿó"Äæ +>ÎXyDqÐU‹ÑžÂ¡àØQ`i*ê£%³®ƒóB¢ÿ÷¤èõ v¶£¯Ô[ÿó Äæ xþ¸ÈbpKâOû`À!º8°{po£§ Ôà-e/‰Œüßà«v¨'ß“ôWÿó Äç º½˜IŽLÞ‚gLU\•ïGŠÚï}âDç!¤†ƒAÝÓ–Ÿ«¶¶½ø]¼ÿó Äç é:¹xIÄqO2ùpˆºË8mÄ'Á-&…M‚,ò5QÇ=wØt•nƒKÈSÿó"Äæ Ñ:¹XYÊq/*ºÔLÛ }´0Ø K´M碨­\ÁÛüØB|~›Ÿêµ×—óÿó Äæ Á´°JDp3x<@E#ªÙÀâàÁ4GÇ gô·iJÿíÞ/Ô~ë%:œÔêÿó Äæ Øþ°¨bÊpÕÛÝÅ‚†eÜrQÁˆáî0‘ï8§æþ߆k£UFmêmãÿó Äåñ:ŘIÄq%ïÄ +'›Ó5‡¦Xã.fMÛbÕSâP«qú'^ß3‹×….ÿó"Äè +(ú¨{pQSºº€²Ú[¼ÐÃf«8Ðóት¶gê¢GÐÓ‹2E¡ÿó Äç +!"¸øIÄqCh`_–&ƒ´ÛY5”ï1Q¼¯T‰-x2íUúöü-ÔHì­ÿó Äå 2°XxÄqÜã°ÐÈ%sð<Œ?8œóvÁtb?ÐAÎÉ æù‰ôcz”-ÿó Äç + :ÆX1„q .X!™°' +NG '[Ø “. +´]ˆ ¯É7å- P@Æ~ÿó"Äå ÁIDq$×2¾õ‹ †ÈÃ’¬úLØ6±'¼xB0‘ŽúšÛèO©ßWPÁÿó Äé +Pþ°øzqÇ>òrƤ sÚ…\VÍ¢æûÖä<çø‘—ÿ&¯² î´j®€-|†ÿó Äæ ÀÚ±˜IDp ×€ «Àp*­v/NÊ#<‹ +ìWvzjýñ&ŸSÀdDèÿÿó Äæ ¨ÞœzÄp2{9„H6¦+ ®Âo÷5„ w›9À”<îYµÈFç &ÿó Äæ €ú¹¸H„pÕ’ÔÝ|ÈU aNš\iI‡š“b¤¹F]Œ>*a—_/á+ðÇhÿó"Äç +A:ª8aÄq™3Ú”€E”€Tk@ƒa +Ò|Jâny€2Ά»…$ÿ"o ÿqfý õÿó Äæ ØÖœøz„pVú*}ÆpÀo|¬hÓ–:vê[ÒÂá–0&U CóWü+.ôQ:Ïÿó Äå Ú¤XzpènT@Û€rÍBÄâÍŽÊ­ÆÖ$mŤ‰êS¾K¦UÙÔ™,{ÿó Äç ù> XaJq€Ç´¾°:@:J»&Úm(Bï3l:àÇT*Bûñ_Á§÷ü~'ÿó"Äæ è¾({ÔL*—É’Ä ºÓ3‰ÂlºÔ8ÖTl¥Ž…>Óæ7Þþ¶o¨†²d&Üÿó Äæ ˆÚœXzÄpÏø§z"à@À ̞ʸb½US©v +òö*«ò¿±8×¾%¾Qzÿó Äæ á>˜Xb„qÆ]@ÀNN —3"Ç6ÊÁ8À‚ãÒ5;­àšÓáyÞ†o©Õÿó ÄåðÞ˜Pz„pk"( }HÎÎœº@d‹_‚/î +[6‰ô¼]Ùêe?œ¿ÿó"Äè +žX{ÎLçgå¬UNÖþ +¢tää’=‹,jtc€¢MWi‡%­Ûdˆxÿó Äå úŒ¸yDp£ ¯áp+2ÄD…¤\ÈBÓѳ¥#%í&ÅÚß7ïõz#ñÚú…}ÿó Äè +Xú‘˜zDpmÛ"*¨*§h +fFQ±Ç:ípõ­5§ï£·ø4šê¬úšTObÿó Äå ú•˜aÄp†Ýn(ö  (CÖÝÃ(pïòGÃù!Oô2ÿUTö_Ó¦¤ðãÿó"Äç +I>‘˜aDqlýZÿðu\&« ê“V¿je ÃÕþ€m3h‹±Œ_Ç)ÿó Äåù:™˜H„qê­ °%ƉÉŽU,32qâºÅù8$ ä‹gËwÐоã;¾ÿó Äè +`ÂxÂJL³F÷ûKx~‡¢@k’6TtVöu,žá·óœL¿÷;§î"ÛÌ5úêÿó ÄåøÞ„(zÄp>ê‚= P X‚5>8«=”5MƒMàz¾¼­™7·´¿°õ?fÿó"Äè +¡"ŒðzÄp@b«cB"€Á±ðÁ©@ilr(N¢[(ÛY#èÆB©?\ïKÄÿó Äå p^®XA„)™¨`Àqš.Ûoˆ8.ÿ) ÄÓ‚D¨»›Bš7Gêio© +6ÿó Äæ ¨þšP`†pÜf‚` +x˜=*p.ä0O%81¶„Íî¦k&ÄôÚ§Êÿó Äæ ØÖ|z„qúL1Ùy@€À”}ƒ*,ÀËb½8§r?‰”KR‘=4J/B£TC­+ÿó"Äå Xþ|zp‚ùkAÀ>p¡¢Q‚†Â­–#<@8Ð'p;ŒÌÖ÷!Lý©ƒzQjÿó Äç +FaDq¯æ ìBÀe%`$E™ÊΉZRúázSf#fìªßä"6J’í#ÿó Äåé"•HŠpÔî`Å1@pù†0Æ—2[Þ7PèγǦ¡1èÚqèåýÿó Äè +ú…ˆx„pËX`Õyq¿þ(@€ €Z„€4*©xòˆax#›ù+Ïç('ÿ8ÿó"Äæ +!&ŽXH„pé‰"=õ„P ª©@Ûc9] E©VWü? ïù¿;¨#ÖÊâr³ÿó Äå ú‘°H„p4 üDilBšû€€Ù*3ÕœP±s#ùjoÆ»u&Ü®îÆ!Ýïƒjÿó Äè ù*‰IDq7Îqü``i;êFÞÈÙ·'Þ8<8.M@<ÕÐùßÙäõ<!Gÿó Äç ©J•¸HÊq`GvÚAº€ (’×Ln#ͱeP/Ç(¢÷ùÄÿoÑ][Úþÿó"Äß 0ΈèaDq8<ÈŠÂÁSaæ•.š/ ` +£² +<ÙcÊì‹D#–¥NO3~ÿó Äâ !&…b„q(¿hGU@(Z¹xDÇb…º(>ÙZæìŠoU]¿åÄ¿Øÿó Ääø¦–XJLŸ€ÐdDšëòQ´²®Š\fŽL~®DGA¨ M«Ó¶+Ù +S¯ß~ ÿó Äç é*¦XH„pÍî¼T¾@ ¦@,àH«y8·Fãǹùš@îo:©»?a?榧ÿó"Äæ +*ˆyDp”á"B€‡)si–z¬¡#×5¿¯™€ÖÔ–©7ÝßáMŽ£;'ÿó Äå ŒðIÄpQ;CÀ@88<òÒ¬`òmt `)ÌÔbïçðê!©C5m…bçH5žÿó Äç +.ˆPIDpP«Ù PVƒf Ô9·°À]Îô·Æ¹} wÚFWR¯÷ÿó Äåá&ðIDqCŠ×Ì@Š`!`¡z$8«¥¨GѼ!§Üÿó Äê +(öŽ {Npgðwè” Ã8Úå…cÈ`üŠ¡§’*Æz‘bþª×ÿ„ÔSÿó"Äè +q"žX1Êp#Î>\t0 8Úp€.H.“[¨€M1V ¾» +^t"}Tªßðîÿó Äæ ‰ +žPaDp+”'‰Hñœ õ+«{I^ fqZ‡tK†œŸ‹ûá)ÿD­Vÿó Äæ ¨ú¢PH„pVü#ð¡s× }òÍ4£W~;ïÐöΑ©æü*ÓTSýRÉ{ÿó Äæ á.•ðIÊp0ì"9Ôð1°¢¨ {]äåâAv-¨ƒ•ÓU4½øÔ‹o^UpÌüÿó"Äå A&ªX@„pÇEü)€¸ ŠÑÒÒA„õ +ñ盘í>õ0?Ëeõ÷ ÿó Äè + +šXb„pKø6²”ƒ 0,¼Ä^qb¸¨Öƒp‡.øËþ¢¾EÍû¼+Î4ÿó Äç +úšPIDpI8^<Ñ“§Ò"Óɪ‹aMÔ>Ù²YÈ Äµ8§ýñåêÿó Äå J¥H„q1‹Dª‚ðpó1?H„âÎ(rŠØ±öO ¥ßá¿K(Ÿýj7ÿó"Äç +9•hJÄpêÁŒÁÄž€°¬†É/@qá·¡6ÍùU"ÿ½Hb¿ü^a-ìÿó Äæ QJYÄq)—PLt)¹ L:° Eb§¨»¯Øá°ÿÂ?C>}*œÚ +ÿó Äç +&šPIÄpÔáÀÐ6·?ˆcÝâ"Ìc B$HÚÈ,å H“çoB?Ü +êÿó Äæ ± +ž8YDqÜtá»ñppB~ø¶æ‡ë|$3/?R)ÝŒ:Ü۷ίÿú—ÿó"Äæ + Jš0YJqªXÀTêÿŠÂJ:šäh9ôYðI]ïm'o‡?Ua1ldðó³ÿó Äå¡ +™IÄpŽ#ì×è˜$ °„"Í4 XXÞ¼J‰ó€`ê$¤GývÝýWµÿó Äé +yJš0YÄq +Õaãå€Ø @“G~h±#j Ñy.;BÍÐJ?‚ÿ§O“¼Â{ÿó Äæ a +‘èIÊpSÊ€@•9‰ ^RmÂÁK~i¬Û3ÐxÆn †ýèl;}úäÿó"Äç +`þ‰@{Jp³öÐÂPøT~w5”,×Ù€$øÒ„ñ/*!ÿ½¹þ½ÿó Äå !*žPJ„pAVbÀØ€8'€å_so]AÓPÛŸê÷Dïè?£ñ +iÿó Äç ðú”ÈZÊqnΤ¸/mÓº +ëÒá 5‡¸ÏÊ=õ/V ð÷éGÊý>ÿó Äæ Ñ*·1Jpx¹ …¿åô !+b…Àò2hÜÐ +’òNU¤Õ;¿ÃþŠ‰À×ÿó"Äå JªX1Äqÿn]·ò@¸À(œ ÃhcÞÞOÏÔ¾-éº|‰û¢s“ÿ… ¯ÿó Äè +1J¢X[Dq¨¾pà0pÌüÀ*0ZYÇÅCË6èr…N÷d‘~¶Ù™~ÚÆŒÿó Äæ Ù¦XJ„p4AqR”0V¢ºPP“ü +f²‡7Ô_©¢Ôwê†ú?È!?ÿó Äåñ¶X2„p¢Th±ìø€JÌØ»cE™|Hð>N F¦{xÏìÊéA¾ÿó"Äè +žPaÎq£Ê,,pö€x`ßÀvºw¿‚çáj_³ùúTÜÏÿ ';1ÿó Äæ á¢XJ„qþ E´ Êf/Y`c×€Œ‚<œÕþ +‡]U¿G·ev¡;Ðiÿó Äå !ž8J„qœILè¨Ähµ¼^Økp˯pÁÂWn1‰´±ßåoÕÝ0Ûžàÿó Äç Ù™{JpI6ïát '@V`Tš +€!–æá»·E%¨þ¼Ãzuj‘ÿó"Äæ éžPKDp\,ù±`@1×CPˈ”“ŸÇxvnŽrðÊßg®wEéøÿó Äæ á²x0Špí{t”}Å€¥i¸œRª<ÙP=˜§N_4—™_C©×èÄxp?þÿó Äå J²ø0„qˆÙÄ]Ô´ €}øÐP\ý7àPyùøê›î-ôÿ1¾2T :ÿó Äè +&ªx1JpDΰ°ÖÐcHéŒÊWœ–aÙê2R¬êc»jÇoô.PÍÿÿó"Äç áš8yÄqÁ—,Ÿü*p +0€¯‡œ ƒX—f‚d7j;²H甾¡Gÿðçû~jÿó Äç Ù"¢XIDqƒb8p¸\W€}}ªñȬ³üÀ5Ñøÿ-´Ñc§«ÿ«+ Ƚ¾¡ÿó Äæ q•¸yÄqY‡0ÇZ@a6pŠÙÀ2AÆä×wü^Òu~h/awîò‡®+ÿó Äç + .ªXaÊp<„pKÀy“|øú2Z[À$gãíÎj4DU»£~$¨ÕáíÞÿó Äåá¦XIJpŽ£@ƒº)€4>êbpPÙêé¦úz:õW"zqC{õÿó"Äè +y™¸kDq DÎlÝì° 7€s]̱AÐj€û_Q—2§ë¬ÞûçÊ2ò€Q:ÿó Äæ q&šXZ„pTÂp])Àµ¿× +Â;¯ðÛ•ºX +#Ðç{§ý©z3­IC¸ÿó Äç +!"¢XaÄqðà>—£àÆ%t ÍTt¥0…Î".η\ç l©#~Íq”öÿó ÄåÈj6(† ïÉ@´|8€‹áñpTÞ I}‚\[u1! Õ³¸6ôÿó"Äè +€âšXYÊqàß +@XÅöš®QT)è@öáW©šsšJ¶2äÑû˜ÿó Äæ ÉžXkDqú*õÔÄ9K@é`±oÅë -Ö ´æ÷U?渙jX:ïÕ +ÿó ÄåÐú¢Xj„p ÁͶð1€·e7• ]8ºT—¿,”sDªø¿b”7êD6WVÄÿó Äè +A*¢XJŠqÔÏL˜‹rÀ´­6Ë@!öPµ¨ü Ö¹„ER}³öû¤ÝZ¦z¦Œ3>íÿó"Äæ +þ¸j„q<Š+ýÀPVK|Ш»Š„ñ€58Ý¥ö©õ4¿ëb~`À*îFÌ¥3§ÿó Äå ‚¦XJŠHáAŽ ” Ù…^ºÀãL§ +pŸßà•¦—Þ©{¤GUÿïèàÿó Äç É&–XaÄp_ØÔŒ‡÷6V +G•„ ¬ +N¯Õü¨Bô?£›ëB+Ôöÿó Äæ ¹"¢X@Šq«”l‘Ò@¨'þ¼´©#¿ßЦgXÒê{"Ïq–02Gh×ÿó"Äæ +&aÊpê´5²ÓRL§–؃öü^§¬ßUY´CœXèÍ»Çëjàÿó Äå ú®X)Dq"ŒÈ‚# Ð +ºóèËä\A:ŒÜÅöCɬ¥ùB£z;'ýቓÿó Äç ¡ˆÈJ„r n€µ°¡h1¸VÉG6ÿ-ŸTŸ{‹yê»çFÿAûÿó Äç ±&ŽHJq|1>Å`ntDÔ$ª5pØ.ë—–}#¹å„ +͘›ŽŠ©;ÌÚ¿_ÿó"Äç +þŠ0bÄp_pun@p±°§æøò›Ê 3õ»½m2r$ŒŠNþ‚©¤ÿó Ä怂€KÖH€d)ð·ð·Tr!Y0ª.`“ÓÿèÝÌoQ÷3m r¡­ G ß×ýÿó Äë þ–PJ +póÒÓ8ynÇoë"u”Á|ÙÄ„ÕÁLÍžÎB?¾N„X>¥hÞÿó Äå Ò‘pKDqÀ!*#vÔ +圔QBVètÈÅ^‡»åD¾¥[ðOÐÒú2ÿó"Äç +9&–P3Äq=‰E`x0!Õem5YÃOPãÀ°lqÚ·mgtRWÝú­ø''ÿó Äæ Ñ&Š(bÄq`ZZ’^ aètÉÆ™Œ"§9Xÿ¶­“GIû‹³ÕÚ¿€öJÿó Äå Ö•IÄpu`° XC~×í´dÝ©ý´Éþë%5½»ÿG×XF£î?ñ~ê ôÿó Äè +8Ò™I„q¯’Ô5€´Âe(D1Ž `Ø B‚."EóoƒêX‡úG~ÒÐ)ÿó"Äæ øþ®ø0„q|°~*Í€÷Î?RØ¢@át7à\“„¢¯Æ¨ïC!ŸÝŽÿ¿ÿó Äæ ˜þ¢81DpÿÄzAG]F) ^v…ƒ'ïø³(Ôÿú‚|·²)\~X#kßÿó Äæ ˆú®øIÄpVÿ@‚Zp™"W-6FÓ1Äþ$h1Srñ¾€¦~SoÌ÷Ǩ·É,Üÿó Äæ þˆiŠp6”€ +øhèE x寀yCX‘¨_Ü¢føAvð‚Ÿÿ>/ËÆÿó"Äè +`þ–y„qv h ¦  ED¬·;Ñg„_2<_ë/x<§Ø}ÓÕÙÙÙ0ÿó Äæ É +¦80„qB¯ygØ—` +¡g`”‡ÏsæÂ…9ØêpÚy•úú)ÿƒÙn-ÿó ÄåÉ6zqÐP ±5³´) -‘½Iî¹>Æ Ÿ<@LZŸˆ|ß›êÁ—gÿó Äè +a:ªøJqºg7\`ø¶èÃ}¬>~•D .D:S ùtšÉ¹LÁ‡×QOÿó"Äå Hâ²ø0„ps)ù³J°4â «ÛÒAw$òH"/âï¿èŽý]ös³ÿ?äu·Eÿó Äç 0â¦81Dq½N `½Žõù(àâý@¶Ìt?­Ê>I¿Ï1—°q‘L.vèá!ÿó Äé +A¦ØH„qj!õ»©J tº"H áKä¨É2ï˜zBñâ(/ò·x×Ï•u).ÿó Äç +±6¢8IDqú*tPR³Œ! IDŠÈåÝCŸ÷T±ý,ÿ©ªü[­ýÜ‚wwÿó"Äãá6ðyDqÑëûh€`t0y+kG9‚[˜fá—Aý ÇGSnòŸ ¹ÑéC~?ÿó Äç + þ¢8`„qmRÚP˜ˆ…Y€šþþœGpqPW„j"¶ÛÎ/ïºåýA;;ñ™—ÿó Äå !:ž8HÊqÕ‰R½@ØQ™Í€r¦ÙÒŒ%Ë–è}·îì¾ V³yâ;Á•8ÿó Äç +Þ„Â +pŠ º@ T†m´h¬ +©›Wè±°eÇÍ6ëèÊ~o`‡­ÿó"Äå ¾ÈjÊLjuÑðWÅøÏø.cuÞÈ,aPd(¥¨Ø{š™7îïòÁ‘ÉnêÓý×ÿó Äè +!6šbJq¨ý`T4YÊ' +a÷œ…µB΄+ægmƒ… ܪނôÿó Äæ ©6–yÄq` Êò`ð“Ó:‘b ~È1Ž_û ´õ¸ã>e ‚ë/Aþ"ÿó Äæ Ù2ªX`„qÿÐcÕPa"ßõ è3iZk‚¡Ñ#“U(/åL]u‡«5ãÄg¿Zÿó"Äå Pž¶X1„Lž UP˜ 2G¨¯Ö`Jy뢘[Cù‡R>¾2Ÿ:ûp£:¿4é±eÿó Äç +•pbÄp8%µu€i *A4SúÂÇƱ2nxss¥G×Ä>òmþ…u÷A×ÿó ÄåØþ{DpÄåÀY°óÑx¹0ó*=öA±¯ÎÈ/fz7ú: ºÿó Äè +þ¢PaÊp ç„h yµägbWt),Sò÷ ²…ý½pö´ÿó Äæ ©&™ˆZÊp•W©ú`Ð0!óÒd rf„¤h,G©oÇ›Ê6ŸomBüÿó"Äæ èþ™YÎptPÐÐf®Å!4äÁV¤ou’éžÏWäöK†™ÎÚ~:xvÿó Äæ ɪ8IDp3ãT³­À˜DÑn1Øôyh¨Ã@: Ûð~€Ä£ÿ¨9÷êGþÿó Äå â¶øIDp”I +Œã'·•À\vB˜#zYëÿËÞØPT¬ ÷ã ÿó Äç +æ¶øIDpKü{ªÕôJ +.{ Åú„ðªÉa³ôoÈZiå?ú*Èû\Lÿó"Äæ +!.¦INq’£â0x`}ݦárÜR2`28@ãe +¯”ø!-;õ7S¼ËêbÛÿó Äåù*ª8IÄpÖg(à”­uøs™.­‘@žP| Œ(3*O¬ì ~­ª“3zÿó Äè +a™ðKDqƒëƒFÀ” ÈÂ|°è<—œ`@tÊ"ˆ´:ÏÏO!û„V¸öáÿó Äå ºø0„q?ê,“? ¸8¥aTp+X¨§h@A*bOÈÝÔš}&Ýÿó"Äç +¹&ðJJq K’ÏUpÝ2 +Vž …Õ\-à4,=Úôñí篿UÔ_Ìÿó Ääá®Ø9Êpßç0ú@Y0ªÅH Pí!xˆlÂH\|Þ7Ú:]ýú“ ý%jÿó Äç ™.¢IÄqú.@(0)kMFô(¢¤ãÁLl‰T½}‰šÌQVgëêz™4ÿó Äç Ðþ•àaÄp &ô²«ƒ`·ŒWšœÉ#IEÓ1szõ¿*Iø;PW_PÜ[?õGÿó"Äæ é&¢0IÄq(†˜‰)MtCÁ˜›IÂCæo”˜¾ø¾eêv@™š½?kµhAÛtÿó Äæ +a.¢IDq΃ET¨…Xþœg*¶d"dÊ–ÒÓ[ûs´tujD‘² ³úÿó Äã .²8ADp R}Ok`c°ùήñ€cxש£|âEªß–$ýôò +óRoÿó Äå !.¦˜IDqŒÿMRpÒ@Ø ÊEÃó¤/KÁÆ>ç½·ä“ÑÞž0žŠ„@Bÿó"Äç +a.šz„qUK(æ—QòÌ}^ŠyšÑ 0Üj@Ìiÿÿó7œÊÔRôVD/£ÿó Äå2”kDq7úR¢”¼ •ÛŠi…ùT¨,Åõ +4 +ú‹Ë?ŽÂbœhô«{¹ÿó Äê +.•èJÊq¾Ú¾ÁlðQAŠ[*c ­¦ +‹?3ÁÀ³Ð!õඩ7àØÿó Äç +©>™èJÄqòøµ€t^q­O€ÿó Äæ ¹:¢IÊq;}ªÚ\œy50D¤'.¡#K“£S Œoª4¨4í]¼ÿó"Äæ Q6@IÄsY¬Ý ÓÉ ³ °±èÙ]æm@uù›~ +úkøs/Óÿó Äè +)>øzDqvÁÂ(8%—צXIÊq[é[cb„^:T°(¡{Ø~Â~ÛñMêä«p§â"à,Dÿó Äå >¢YÊqÝŠ¬N”)TžZ dJ”H5*Qs7xoüíïY³ånŒì‚ÿó"Äè +q6žÈIÄq|ÂÿµÄð "pTŸƒ@ +xת,Ñ¡ ù•©ãGú³²? ý +kú ½ÿó Äæ ˆúø1Äp +DÔ)výÖH+D ¶µuœ¸Þú]/n÷ŸõOçRhýúhÿpgýVÿó Äæ i>¢8IDqÜh¬p”2¥%Çç¢Kr*7$]¦Û ¡ÛÐÕ}FµçlZÝ@ÿó Äç +6šˆaÊqÿ¦"@ †-ßá-áY Éê|Œp_§Ž–~äÆ6¥ùîÿ`S2uÿó"Äå 8º¢8Y„Ld+ip´ `›u±ézå^tNªÈµMõŸð?¿Èûy|$þÔýÿó Äè +I:•øjDq#h œâÁ4­5–@" 'F [.6,&yþUýÌ®þˆúÛÁ3ÿó Äåøþ¥ADpþäõ +Àfm ¬ERÊ 9’0w/,ÁÃÕÕß`á;*™>âÛôÿó Äè á:™èzJq©üH˜B‰å(ˆOÐÙ|9É°BcáOÃâÆò‹<â€.Póºÿó"Äç á:™ðIÊqÁž€ÛD€t + ß´Ò ÂFDƒ "è?˜c +I›Žú“oÉü…ü#ÿó Äç ¡>‘@bŠs爸$éÂϨ£'@­à=ˆR2' +gž+fzû—û ÜvÖêœsüzÿó Äç ©:•øZDqqch°4 œûÈ/ Þ!°¬Ö.®¥Wãáõ÷1Ü/Kyòýÿó Äç +>š01ÄqÿàŸ‹e€€<<äâà\Š(ŠJtÆ£gCiîæ|zqFt™ÕŸøñPÿó"Äåé:ŒRÄqßrß*iÀ<¹VD€žàü)âÚ8ÈÔò:ùšùŸÍÛØÀüeÿó Äé +žŽzJLz3¸¡‚#Ð8ŽXŽ*ZL¿7.Y¼Wú÷ó¦Eû{‘²ýC€óÿó ÄåÁ:•ðYDq;*´ÁÀ( ¿ ݆Кbd‘’ßüßÊاa?oÿ¡›¬cÿó Äé +€þš0aÊpÂlj€|Ä(w¢Œøþ7¹>BûjQÛj‰(O›z+«þ&ÿó"Äæ +:‘KDq"Ü»ŽpÂHì1`Áäœ?¦²eÎ90òž¯&~u‰ÿПè¢_ÿó Äåù”È9Îp©Fà° Æ ×þH€˜²†Øwax?!ÎòLžŒÆNÚÞ®Š|ÿó Äè +QJ¦Ø1Dq…âïÊ !`e¿zcs†` 69žs«­}[¥X!lïÒôQÀ”Ôÿó Äåù•P2Îp!ýHœÌ@âÓzïa–^ƒ«ãô}-aâiB-± Pÿó Äè É¢81Špf}" €…X3‘Ï.òïP‡gÐo?èûtt<Ç©m¾0*ÿó"Äç +Aš81ÊpË~¶”pI*ñ÷Ù—ãÃÙ:}nµš ²Z÷~yB½SçÓá„âÿó Äæ ©"–03Jp3ìJ@Œ B³ÒöÈ0Ó„ýrDÝÈÓälÕ8±Bz;Œÿó Äæ +š81Äp5*Ÿî¡ÇVW+. ¥›­KgÑ0tR9QÌGŽüIõ‰‹Ýÿó Äå I•1ÎpSþE@ìäœE>³Œƒ°÷<÷l ôÍLã ðÁÔ¨ÕÿÄ:·ÿÿó"Äæ é–01Êp€‡{OÒ„øÆù1HøÂ+YR8>رZÁôjO«Wþâü¿þÿó Äæ A„BÎp`6°ï— +j‘B ÂM‡óЄ¼V7­5\µ²¿ÿhgë݇8<ÿó Äè Ðö‰ècDp +€tèÀ@`,ÍË¡7çFREçRh&ÝuÔƒ6r~ù–®”Cÿó Äç +ù*Ž0IŠp*]¶Àz3|Íà1x°hˆÂ÷ +۹ˎú©/övý¬ +ÿó"Äâ ).¢ÐaJqþFÛ?)îwó2„ A £`Ãëøpú4™pH+4p±¯¯&ßûgÿó ÄÝ J¡pHŠq6@£ûŽ>ïÏi¦™ó(Þ…¾Ð_ÐPq,Xv"€­½ôqšWÿó ÄàÀæ¦0IÊp×ðB}’›z·åú0ñ"ëã\:aòV$¸Uí„ý¸,ÿ"¾1Tÿó Ä䈚¦02ÄLüx?×Ñ.&/Müt0š„ ͤŠ/¥i×æQÞô1þ¡ƒu(ÿó"Äè +‘.šDq·úØÿÕ>€3¨ã'ÌP†…«!³Uû“B“ê¥éÐàO«ÿó Äå !J²Øa„q)‹âʃƒ¡ûÛ°ˆ#+Þ£g;‰ð|þ"%¦Ð­õFõküÀÿó ÄÛ ñJœÈZqÄ:{$´ 0¢Ë)à4@sw ÎâP% +Ô(¤36éõoÝ_øÿó ÄÚ©JœQDqwdAè¼ €€Á4{IYR¡Ç +!BÃÆI6.¡fÒröSþ©èËÿó"ÄÞ A +¡hZÊpü5Ô”ÔŒ@iðÏ E‹Éôà–nMn&õþ |«@É÷'å¿ç7èÿó ÄáÙJ˜:qôæ@¸€ >šEÄ£t +gØßE©»øÇyøÿ´ŒÜëû„·µ]ÿó ÄäùJ¥p9Êq_ w‘­làÆï‡@³7C)¡7¿•w—ˆ]H¡Aÿ¦o(ÿó Äç ù¦ÐaDpæ°× +€‰@B]ætv¡ho_Øhí}Gµè:‡9 ÿŠ?¯ú¨ÿó"Äæ +.¢AJp§Z‘`d‰R€"‹¢ÉXô„œîgL¬&:ÿó Äå !JžBqÞx:ì Œ]Gº Ój`5t #JxÈá—SŸ….¥œÂ=+çxÿó Äç J™è2qUÜIó`%Ÿœ HFÐ[ +m3ãúHüLoö‡8ýÛR ›‰|^ ÿó"Äè + +ªP1Êp², ð¨ø +³ÆW1'ÉA°¬ã×%Ç'—m +=Búõg±û»ý` ©™ÿó Äç ñ +²øYÄpõYøÀÈPdSGXúNâ‹ècp,pQþ§˜ÖKÈ?WÔ +'öWÿó Äæ J®Ø0„q·ÔwýüD0¨O1H"Ìÿ³œ +ž´ù´êwÚ¥oÿœ'ÿó Äç ù +ðYÊp‡«ŒÿýxF}î³ ¾ *©ÿÜ$£9¾Ÿ2±µ ¶+Þ¾ÿó"Äæ ™ +šZpÚŠ¿è/­ ¡"ý³” ‘BÍ +ÔÓd3ghWÿŸ¡[^±ê?ùÜŠäÿó Äç ¨â¡ˆ:Dp3ª1Дâ@À@—a1pÒn} + ~×?´"kª³igyQÿó Äç á*¥ðiÊp{섧­uöp$2àú€Œqð³GÎT<§ª¾} +SA Gë™Pÿó Äæ É*¢jDq[o&iCE—þ_qèU¾.dmEÁ +z÷×ÿó Äå +>©1„qvùÕ0Kð0¿8Jqò¡˜(º[9iÌ~ÒÏ•õ.…ÔÁGÿAGÿó Äã +¡: ÈYŠqqGE@´€ Øè¡Ê‹ƒÅG÷ÄÂà~Û|Wìl¾®® v‡•Òʺ ÿó"Äß þµ)Äp§ô›¥AÕ°Ù˜À{äÌ¡Žcs?\³ÿštp’›~GÁá~ÿó Äâá:¤QÄqQµI€¸ÂtØm`r +Á†·“ðÊXå]'R¹‡kÿS¨ÿó Äåpþ¤Rp¨ì?Ì€h€WáŒ$ÃÚȶ·=—!.Ú>S?ûÌ'Çÿó Äê +É6²ÐJÄqœ´°À˜@…I g4¥ë­7GýyìêŸê÷ÂKÑèYì/õ‘çÿó"Äå ú­: +pÿ!Ä¿ÆÅ€ü ŽÆ(|nx'Æ0€6d1Êúô1=N@FÿÏýHßÿó Äè +aF²8*ÊqÊ"££Àµ€‚. Ö°ŒÔ £i!µùÞÈû¿ú›ü("fOÿó Äå ªºXFLÐ ÀØ€ +­š!¤l\„Á<…u^jd)™{¡Œå—¾f¨¨þß+ÿó Äç +þ¦(2 +pÓâÎУIüé àY)ÓAk.ßEÏ6•7ÊÊ¡7æÈ5?ÔLwÿó"Äå !²Ø„p¿Pl|~X¼§*àËÄÄ[² ´ +±ºÏt­×E¬ßÿѺ‰;‘ÿó Äè +a*²ø2Äq +ñ`ÿ €Z(9Wp¡!På¤ÀS{Ñ.:ÿ_ëM‰ó[ú±§ +ÿó Äå ‘"º81DqOg“Žá`¼Ð`èq -TPkZ,Ñš·å]ÿžNÚ:ÿó ÄåÙJ¶P)ÄqE¼Jý@¸ g/t¸öÝàL1ÊŠŽýù¾PKç›ÓÑ$"±cmrÿó Äè +I"žJÊpcó¯Ôá{€i0 #¼ÃHü‚N +¬éAóùõ}[ÿЫ +•ÿó"Äå 0ú˜ CJpC4†@œ Èëî2œ#Žñ¨ðj«‚̱ürßÞÚƒt…þŽŽqýßÿó Äè +I™àcFp÷8”Ž[}˦‘{Ìà(\Ø8™M¯ø¯æ^ŠçL·¬„Z«yƒÿó Äå +öªÐ2p¼‡÷E( 0 +J˜lüúÏiÀƒÎÓj:¯|{xJØŸæÌ ZPÿó ÄãØþª*p!oG!Œúˆ;€âê&%Èó<ðøª}ü¹‡ÐU]Žòê} +èÿó"Äæ + .¡ðIÔq/‚.êÌ-½ŸÖ@c_¯XÁ·X<ˆ¶YªÑbÒí²ù„GÇù¥¿ö”v+ÿó ÄåÐþ²Ø1ÊpÑþ4l·X6ÿÈyj7û±©ì[¨ +¿=õvõVôB|7ÿÿó Äè ©.š bqbÀB~ +OÔ<ÔPVJ…@øä€?E* ´‘jJæÓŸ ó™ðëð¡›Óÿó Äè +a.ž(bÄqþN…¿$üQy­n#W€­lÅ¿Oÿ‡ÃiÕËÜÄúçÿó"Äå I*š {Êpߌú ´ ‡zêOÖ‹¯Ø ™²ƒŒÍLJë7¦cåñ_Ûê§~§_Õÿó ÄÛéµYDpvú +r…”n*.Uqûüà!*(+rüY4¾Š8Ì}?ª·¬Ÿÿó ÄÞ ʨÈkÊpÄß‹“ S=ˆÁ%wª"TžIË¢ñ˜í8CôQ_FOãÿó Äàñ*Òø1DpŸ÷_Ä)‡üʵ°nŸXòZ _8‡Xú-ßѾ„3~ßB‹ÿó"Äã I +¾XB„pàÈô2&å½u„²¶ :<©œÛHŸºa¿Á07ê.ÏÐ\Q}›ùÀ–ÿó Äå *¨È;Äpû~$P\0>»³•eŸ'(°Ç8Ç’ÿDƒû¨pSû~*,ßÿó Äç Ù*¥àcJpsþ&àì +H/í_ yMùt Çl%¥õòæ/^$OQêŒÿó Äæ ‰*®ÀIÊqoG¡û€ÖF–ì÷(Á´ ‡WQ4xüf¿@ÃU8q¾?ïòÿó"Äæ ùF®BŠqÚ ~¬0`;rià"e¦`®$*ÄÞG¿“‘þ3÷D"ß?Ø3?:ÿó Äæ© +¥àCDp'†@ü…O+@+_fËq›úh#xµb™<­rjCÑ +ìÊþû|ÿó Äê +aJ¦(ZÊqák‚Ùh à n¶4šC Ïàµf’êy{ ÿ†±ÔìBë„ÿó Äç ™Jª BŠq!hüXýÚPÁ™×ÆdÓýÀ¸.¦e^F1kðèE¾Brº 2]ÿó"Äç +I*¦zÎqŠÇîu +“Ì#ª@ð±U +¹@9ú…Y2+Š1ìþêP߶ý¸ÿó Äå  +Öø0„pWþP¢¸˜ÆHØ „%@#Qôˆ8E›x¿âHwܤSx7À¿Æ¨æsÿó Äè Ñ&ª8B„pÎábX¹°°&` =ž˜­Dîô¨p@ Rj>§êGÆîÜrQ½Šÿó Äç Ù +ÂX1DpùSô´ñ ðþ "i¦È‚\,^ãiæ~™ùtÂ!JTóAòá`ÿó"Äæ +!&²8ZqÌIr†‚XíïI„t¹¶ ÄüƒŒqÁr¼÷Ð#@š4(™ò7¥ÿó Äå *¤¨zp9€Å¦A€[lH6 +ÌC*'…C{vvÛ$£ã+š„TF¦ž~0³€ú€ÿó ÄßñÊX*„pYI‡Ž3B-KÌýâò,ÃÕRÍ ŠQS»DlÅj2 Aô*ÿó Äâ ¾ºX2„L&'>D7œkcûú®ÝŠS=µ¡ucyéTTç´¾PDPûs Ñÿó"Ää I.¶8YDpFÇ ¹© ZÏ“,šØ!¼Z‘O® ÎëøWÂ@@\ùàÆRnPXÿó Äæ ˆâµ0†pÇ m7_º û?Þ×”B1~‚íT Áþ XvÑíhçJÿó Äæ™FŒ {ÒsÅÛ½™³ºðO€<³ÊýFÃ͸:N ³0å%Óƒ—%˜Ó¤ÿó ÄÆàþ´Q„p„‰x»j;pYbî…*«ÀSw¨¹ˆz ÓŒŸ‰}PðÀ ‚dÿó"ÄÉèú¸ÈQ„pj£í‚O³PÎt#ã“©j >ÖØÐnÆ©Êvháéü©B?Êœÿÿó ÄÍ "´ÈQÄpk€‚œ‰T`²^ÈK–q{Ì0"D}‘ã×eJ]AUîÿò­ÖLg)ÿó ÄÏé&´È9Dpl8 Iî™=„(‡|¡Ccl…Œ>‹« ‡]‡u¬Ÿ…2†@…IÇ8ÿó ÄÒ ª¸È1„L`ÈX¸.†+¸VoÐ9ìVõ9ÿª?§(ËùEº(» ±”aàd68ÿó"ÄÕ !"ÁJ +q¡qR Ê×Ð/cí´ö¦\ÿöˆã%³œ@Êàá%¡°%ÇRÿó ÄÌ Y"Á˜JqˆáÍ3’½ŽÒ¢G‚=½6Ô­¶$º½·~¯¢pL>£'ýl¥ÅŸgÿó ÄÁpþĨ1Îpñ‡JJ·í¯eâø†@ãÀñÀá(°€µP"ž‚pCì,éÉq£ÿó ÄƲÄ1ŽN¶[˜CWÊïVÚrøV­-@CFC¨Å(Aúê#\bî«zqÇÕÿó"ÄÊ A"Ö8(„qµY¿Tæõ›êeˆ€ `ó$.YÒÕªtŸ[¾ +{ª6rŸ:ÿó ÄÍ ®¼JVL:ÆyÎ5ç«X–&BH¬Xs²±«5dôÅ 2HC1Âÿó ÄÐÑ&¨{Øq#«%îâ÷T§¢X¡‘¬” +µ£ˆÕ +2°H@<·ˆ‰ß®Óÿó ij +"Ù˜1Dpb÷LÝœT[÷ r‘{ãå‘c•ºŽY +@ŠrÀ…,x²‰*Ri‰ÿó"ıÈ®ÑpJJL ÖM µž¾ï[›îª9+ûé_`j…`÷ÿ¾ß6¤ˆ_"Rÿó ĵè²ÍIŠLKÎ2€pfN]ù4<â`3ÊÏü‰R-r‰Y*!P‘/C ä¢¸œØÿó ĸ¸²Ä¨IŠL_á- ô»ò.³ŒMÇíyꇶ££ý†ëë +(Û:É øÿó ļ™*°bVqÚ6+†¢t Ïa(|0”´ƒðT÷ ¾`„¸àY wŽ[“=]ÿó Ĩ +¹&̸Jpôy(iÞÅôW™Ëûµ7Å´ó†Ô+HelÙˆØ\[Œ!sD¼Iÿó"Ĥ (úÕX0Êp¥Aq~Ÿx6T +0d +‰œXDT4 ‰ FĘñ Ù‡ +uHùÿó ħ "ÑPHÄp:‘*Tó‘N.£¬dhógÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó Īð®ÄJDLÿÿÿü”&¨KD3Jž9jбJ,}nÚ+Pµ 9¯J˜'n©šÿó Ä­ +(þÖ9FôÆYÝÞ¬–0· +6H‚šƒj¼‚([Ø… [f¡Ÿï$ƒÃ:G¥ÿó"Ä«4‚À8c²Ž=þ²˜YjõITP먻ƒ»7—ç¶ +ïŒG‡Ä¾jüíÕ›òÿó Är éÈÌ@á_ # F.ƒDg¢]²R‚Ó}Wò¢Ëh4ÓïØ_å{ÿÑèçŠjÿó ÄiXŠáPA†L ’÷t—Ã¥Bˆ¤åºa¾ùóT1õSŽÕã lHÿ†Ši‘îå¾ÿó Än¡ +ÔbDq€ä?6i]p[‘¦Æní–`&yÖjhßÆG¯ä¨‘ÄýK‚æ^ǧEÿó"Är ØÐJp¤¸–á»wËj¥K„žb´ìôÜLqA[¤bàR´ +ðã'´$E%¯‘€ÿó ÄvÀ¦Ùa„LÁè³ÊÝQXÒ÷§"«fõGÔK«H“"KÔ_e +#B‚t1ÿó ÄzÎÐaŠp,ë~z(Ÿ-Ñè«™¾Ž‡ÓûT1Á¼8†„”îvËý¢¯ÿó Ä ÊÈbJp®áÿŒ¡ôíÕV¶#=~€è]¶äM¶*,…+ón?½0‡Ýÿó"ă ÙIDp— IœÞ»#Øíó>4¡¥Š„q+€°`›åîUüä3DXÿÞuÿó ć +ÄÈbqÊåx»¼Dë6ØTx2¶à2†fÒY½å„ì-Ä„ÏC®U¢ÿó ĉ !Ôð1„pÿP|™)œ4 é¯Däæ{Áo· +¦hQ +ªm¿äb?ý ÿó Ä‹q +ÀIŠqÀþv'Lm›„áˆq㟠®xðÅIôñ6s°cõ€(–ÿó"ĸ¦¼J LUˆ/šBE¢ÔfZ:0ÛÆÝ,Ô½˜ü®ÃV{TˆAÀðåÿó Ä•°ÆÀIŽpfj#ÂÈ£ ŠJ‹î “ äövÕæF5Â…kH!œDáÃ#d €„ÿó Ä™øÞ¸bpKsÂöœÏIT"”J‚Ÿx Y“Vyaz€É3Jy¶AË·1ä´”{Øqѳ¨ã0Ý.jµUïÑ¿’ØìTy Áœ§àÏþŽç”süžO¨Œÿó ÄtQ:°ø{Òq1(ptx{HÏg]GÕŒ¯5ËíGyÙßò¿”wO‡íÂÀÓFPF—ÿó ÄU +ñÔÐJFp.ébó·+~tÉüÛZU þò=­$¼™>°–Å–7QH¦oÂÿó ÄP˜æé˜1DpÀ»R­>×òÔpÈ}×ÎIä{·CHΰ8þK¯ ÉÐÁÿó"ÄT âÔZDp êt¼@ËM‹ÆÔL-Èć;M)tD•áØ—¸ØÀÌT W‡ùIJ4V +¬ ÿó Äz vÄPzÐHqf:’3e˜˜+ Ù«´:*4ˆŽ˜WÔ$oð˜DÓ£¸qǸ Üÿó Ä}øªÀ0bFLq™Y:UUYMÍ"<%Ö—w o ¬ð«‹³­(â4 +w¸ÿó"Ä€ 1¼zDp¬‘ú—„d/÷Íä ͦîDˆöe@M*Òé_ªHøŽùcëô®£6ÿó ăø~ÄÐJFHwöQ­¹‰ÒWôq»1žà&F´’À-aßHÔPVa3úÖì,Üÿó Ć°FÅa’$N]Ù+@ Î$¡H˜@LhÉS!¨‚8¼”¤2Bd Ùuˆ†ƒVÿó ÄŠ ÞÀPJpƒ/:Ý gKÓF?€™X7ã!\ö1þÕݾ™¶ ’öX¶ª?u=Ü _ªÿó Ä”˜¢¬J +L"OШOâ_~n&âЂ;ºõ¨ä€°Œ“Ä—™Ò}-­=ÿó Ę Þ¬y„pi¼#éjÈ´’3Å¥Nd/ÑþšæüJÈ€I˶¬¶áÐT!#J*Mÿó ÄšÐr´ðbJH’Ä/,#>8ð‚cü»á”Ð=H“n#Áp¦õûžS*dW½Aÿó"Ä +Á.˜ÃÐq*=˜©V쾌8í<2¸<àp‰#Sk»Íš·b°{;P9§LÈ‹ÿó ÄŽéB”{Òq³ó ÅÂu0V«CààBY&²±•`v †˜-)£p^§ÿó Äm é>¼Jqj™Þï#QVp€#=ÚËÜ0ù€úpþ:‰)À¡’¬R+Nîÿó Äl +XÖÀJFp‹Ô>‘ÁËv}o]Z*aªk¢€@ ¼$M×1¼4sœ©†¯ÿó"Äi >Ä8JqB†Ÿ±-l;ôåL¥Ú"„¬dÏ4º¦`œ'gL[eÄÑÂVcÿó Ä`  +ÐJpd¾æ'×…p+·èψn+â6£œl 8ÓRm³øÐð1‹(DîÀGÒÿó ÄbØ®ÙI†LC¨N8—z¨bTð +š”@Åø'ê¯éêÿæbÍä'ùþÿó ÄeÀþÔbp­ºš Ê…j*X†úè:o—µª + Õíå˜ÂBc“–>ý_’@ÿó"Äi€®ÔZLŸ +_ ÆÕ£ï +Œ¸?t¨¨Ä2{ó}Åteò±ÿ¢´å@‚p %ÿó ÄoàþÜÈI„pRënŸiÜ…”®bª´É"wûþÕxSõŸ.ßpj¿…@ù -é(Fÿó Är¨®ÐbJLs®—ÑÊœ~ÀúBJº¿Z$LEå0߆Œþu +Áóðü@¾›ˆ­oÿó ÄvQ +ÔaÄpáõWBÑõ.ûÔªoõ3þ§D¥<ÁÈnRnp¢ù.Є&Tuÿó"Ä{ PúÙPb +pJyþ—v(1?Øš£jÂÚéÖGìd=U„B»4ÐÑÖ[àƒ !íSÿó Ä}®ÐyŠL[{ï-€…ïî—øÃv·VÃ"€œ ’šYVÊŽÂÞì伡Æüÿó ăðúåH„pþ±­ðÈoÿÏ@Ìä)$¨¢ÐZyƆ*ʪù­ý#>éÿó ĆÀþÐ0YÄpöþ‡·ô€û.‹¢ÃäF|ÂÃÀu1²µÔÏàŒæ×îÈßÿó"ÄŠøúÈz +p‹^Î’ ›°gÇN8qS†8C"2½¬Å#?·íçdýE3£Jÿó ÄŽùJÕxaDq‰€Bc +°>¬ q›‚ú¢X È€íヲ7ÞS:¡? +pÎßÔ+ÿó Ä‘HþÌZp²0ö*\¨Jl¬äò:Bw‘t]؃ϧî/ÿê³`;¤ÿó Ä–àþÄyÄp °>ˆNªgl|¼ÝGºK€‡šÅÃÀÇ{vþ¡àF°g€ø)ÿó"Ä™ HúÑaDpÆ@…0æRü+õkKroÊ¿å¯Ð,<½úÒ0 +ÂÄ0!ö2´-Iÿó Ä› Õ¸HÄp"¡1%øuë~}·DR·üßê ÿ»?¬¹€4ÔœUÀú¤C|ìDÁÿó Äž !JÑIDqÈ0ß™¶Íòéç `x|g¯ + ƒó0ü½ÐM±ceÒŠ Iàÿó Ä ZÙ¸IŠ$+ETPhšg™Nÿ}>ŒÏÿý¸ š´Y€³aè*hÂŒ¬ÜÌNgÐÿó"Ħ 1âX0Šp;ìETÿCëñ„¹íüC §Zm6Ht2Ge‘Ó{=­°lñ}Ò‡ÿó Ä© FÒ8IÄqôÜé`-6­Oàá4þ ¸€£0ú°0‡ Y£+°.ƒCçv"*©Ôÿó Ä« ¢ÞXIFL¯Wÿgvú7ø2Àg À'”°¬$ƒ`Å7©üÌ”‡T·”Ïÿó Ä­éJÍIDqþŸê¢à°€³0ŠôŒ²YÕ Šaaº€?Vê6ö¡”!þŸõs¿ÿó"Ä° !FÚX8Šqô˜Á$À; ‰’Jë›Å'_ðfò¥ÿ)Õg Š·ú¿ñaþ ÿó ij誴zTL”†ð@йÄM2vkn .†Nê~¯21B¿ÈÿÔHëþ €53ÿó Ķ¸þÅ0Äp2âÏFy—Òœ­Î9Q ‹Ãí÷ÖËûO0#5Óþ>MÿZÀ¨ÌQÿó ĺé͸ADpÀüy +»4?Lò‹:ø8õº+ýˆFÿ*ˆÿwÿýaÚP.Ê¥,ÿó"Ľ±FÅXŠq˜"¾‘ÉŒcxAíÉ”U>äB³—ü9ÿÿÎ*p=€%P6ÀYÈïÿó ÄÂéɸXÊpS¶nªå(¯Pwµ|D¾T!eþпêÿðt +ÖBÜc@ž`²?w“ÿó ÄÅ Á°YÄp¬Ø)ú‡ …—̘ñ[ÿË¿åÿÿPa(ÀÇàÞŽ·]Xn58œÿó ÄÇ °(zÎp•×@Ðäz7{ú™ å?ÿ÷Oœ–€Iºtq¾! >Þ–ÈÐÀ)¿Ÿ®`aŒ_Öݼÿó Ä×ઽ˜a„L£¿Ë ç€%0I$päxZxô‘ ´#¿‹ýíd>ª&ÿ¡¿áaÿó ÄÚéµb +pÀãƒà8ÒF‚1¶²QE§1 +ñ"ïEõ2¿1ÄL7¯_øÄ\ÿó ÄÝ !J×IDq"GåÃ`À`<· +1Qc™ÈM(Z]<çöS¸À;¯ùÇÿó Äß úÊXH„pÿÆpFb€Ž#¬°Os•*Üà F·9•>hð@6oû4ÿó"Äá Pú±¸IÄp ký`€ Ätñm‘N@òĘ`éöÄà¸fk®ÌQµÕ"0;-ÿÿÿó Äã ú¾XH„pPáƒàÀó®$§*35aôˆïù ‡ÿ{; :ÿÿó Äæ ™­¸J +pÿÆ®ÀB¼`€ñJdО%²ìq(•(Ãï_3W:˜@:üŒ´ÿó Äæ Ù ÀKTpaŸåD< IŠW$#y_߉ĉ]Ž WýÛóÜÐ\¿çS;ÿó"Äå !F±°BŠqpïåðÆxpúŽãÖ2PÓŠ}Pä¶Ön¬aìr-<‚¡ÿó Äè é®PJŽpýAJp@ì%-3¢' É©å?X'æ¶êÓkÙnpˆEÿœ¦.ÿó Äç +®XIÎp*ÿP2lØpô dß¡²DuQ +Ý@GO|ŠËWHÀ ¯ÿÈõ(9ÿó Äå F­˜ZŠqÿ€Ð 5Ã\ +©n×½˜5:+PÀ𪧻¿ú‚Acÿþ" +ÿó"Äç +Hú²XYÊp•_ÿór`kÀ03@DXzŠj£œã)Ôƒï·þqQH&[ý_ÌÜT6ÿó Äå !¤øyNp3ùaà(€# ¹vÈF&¥FpÅ +ùˆUÞ¯ÿ¦1Åýó„ n·ÿó Äç ¡²XIJpÿëcu€hxSLŠVòe~Ë¥t˜/©¿þ(âó·ÿÝ„ÜKFJÿó Äç ùªX[Np 7ÿ¨Á!@²¾¼p@@Ènb¤úÙÍno¨bOöÐêì†)ãvÿöñ8Aÿó"Äæ ¶XHŠpÿÿ<’€iÊ`ï hKÅ5½]|Z ³×ûšª‡”]ÿþ‡âÿó Äé +™J˜{NqQÿùdF,°pÙäKÊ$-Û¹æ¯Âˆ:ß\Ïå`3öúm‰ÅÀÿó Äå ±¸JŽpsþƒç€ èÌ`ü@R QÉR³SÔdÿeoÑFå‹}ÿ¯4„"ÿó Äç ÉJ¡KZqKÿÿ €¶`÷14Dtî™þˆ ßÿç7úœßÄÁAÿó"Äæ +FcZqqÏÿülD +fPòÐ3…òdXm}@Uÿï«åû~ùAà$ßÿó Äå J²XJŽqÿ¤’€ +Ûp¾<†ÞÙ)?s£ÌèmÀ¸{÷{¨®` þ»²ìù®ÿó Äç +JªXIÎqÿÿêUÀ8`qÁØTùrN›&Þ°˜üÓÉXp@ßoê¸éÿó Äæ ÉJ®XJŽqqyeÿþAÊ°`œ ¿8θä-æ +€£üïë0Q4÷ÿëª)ÿó"Äå YJ®XJŽq3¿Xð ÔxpÿÙLEu,ݺ«ô„¸5Õ[UÊ +Ä—ûÿ]ÂP(Yÿó Äç ñJ¦XcNqÿQ¨Ðh¼@ø(ˆ à|[‚˜ˆÔ!ð…ýÿWuŽŽÿÿMÿó Äæ IJ¦XJŽqIÿ.< BÈ&Æ&C?¿V—]]E!$꿾§ê&‰x,ÿýkáÿó Äç ÑJ®XIÔqÀ<ÿ“ +XÀ2£‰Öëí%­ë*Ò;þ| ŠçÿIâÿó"Äæ +J®øKNq) žü¸`z€ŽÀ„Î.>… yÆ£´ˆŽ_ÿèœÄwÿý*bêÿó Äåá¦Xbšpÿÿ&f`®G"âÕz«~Ê€0ÇÿöcRH<ýÿú&„×ÿÿó Äè +!F¦XcNqÿ6D*èÎàÁ¨º(ˆª“#“@Ò6ÿÿT4G “ìýLf Ä€šÿó Äæ ±ªXJŽp+'ÿö%8*tpÚ8L¯E,wI$}a%/·õïM@4—õÛC“ÿó"Äæ +¢8dšp `ïøp|Üp× –ð3(%48ï@$¾ßò†ý·j¥4 +ÿó Äæ ±¦8KTpßÿÔDÀÚØ`@ô4R²%ª3ÊqŸ×Ì~ƒÄ“ÿôʳŸÿÿó Äæ ÉJ®82šqú¸ ºCŠÊšË6íw©#ü +“ÿ¼Ñ@¦3±Â?Ñ•-Ê¢ÿó ÄåñJ²XIÚqGwë€\t`r0áô\ÉÜRš2¤ü& +¿ösߨJûRïøüÿó"Äè +qJ¦8KTqU ¿ÅÍ€+À"€=±¯wr£Í>›€øžßÿåAPµ?4xƒÿó Äæ °ú¢XKTpÿV´`“‡ +ÿe™*™š)Ð Å/ýýP˜·ìq§4ç\Pÿó Äæ ÙJ¦X2ŠqDÄ¿È/j€ØA@Í!?‰‘@Ê¥×0MùüI›ÿïÄŽ +ÿÿó ÄåéJ¢XIÎqăÀ4´paã¬.dª6[Y*«™FGúé$§Syë!û^•8Íÿó"Äè +šxZŠpC äÏð|~„£ÇéN¡Ø~¬À”EzhP4éúië0€œTÏ©ÿó Äç + –Xb”pó…Æ¡?F¯õ€ŸèÅö€´°N‰SÏ*Y.3ý¾7˜wÆ)ÿó Äåù‘˜JŽpŒCH Â(Ý …Oÿü«´¨¹µ€ ƒÈ† +Cx62™gÔQš©Ûÿó Äè +I–XKNpâËÓdQMº÷)›µŠé‘.Tð#œusÄ¿ï®'äŠ +º¾J‰æè¦Ìÿó"ÄåÑžXJŠpšÁ€û éd#1Û¶_ê Æ/wÑY3¸O÷ 9¿á›ÿÿÅ{»ÿó Äé +q’XKNp²0Ž€š¯øG…ÔLK + +Úš®ÖA3þIÃàérØUÙáQÿó Äæ IŒcZpA¼ 6DcÀy^JTëO&÷­ÎwþP¢¹×J'VZb™íÈ„ ÿó Äß ÆX{Îp Ý¬¡¼æéV4ÑjŒ7Pcz:9Q¿Ê#ú:Ûý +NV(€ §‚éÝÿó"ÄÕ2­P{s3—îkF ‹(>ŒªHôO&oèàßîΩùA¿Pà— ¤`„ÿó ÄÄ +É6ÚXy„qkÕ'<@¾0NrPµ"bó£ÊÈu‹æ¼²„Qþ}Èð­^ñ­Hvÿó Ä¿ȶÈcJLpù¸ç¸Sà˜‡ucSÁ°À¶¦öðÜuoºV†ß¿4óÙ½ñÿó ÄÂñÌ0YÄqÐÐK¤ñéÄ1ã–@9cYê¢Ø w_ŸýÂZ“ïûà…7B·‹ ÿó ÄÅá6Ù˜H„qÀ ;ĦjÒgAeN%RÉÍ¿8 ³ A¿Ðsÿ‰3B àÿó"ÄÈ !ÀyÄp=:¸©#®õãs”+õ/ú»¹µá*'æFûÔeöä8¹@qˆ€ÿó ÄË +1:´zPq¡”*Q ‘ÖrVðüó¿ðÿø6ÞÚ0Dö¤â€d@=ÿó Ľñ +Äbp´@aa812~õÍ$Ô‡8×ÎñIóŒXñA>ªÃ=ÝÑ]_Ú¡Ïnÿó ÄÀ©>ÌJqÝêQbïXçéê–qd8Óž¤Cª!v{®za(dÎÚ9t<ôŸDšÿó"ÄÄ Y6ÌØIJqÿ²ˆK¤þH†^€ŽDë 7«Ò}ˆëA®==ÚÃÿå ÙÏuµÁÿó ÄÆ 6Õ˜`„q1°ÖˆÀ`Hð"`çÔŸÀ`ƒ H+G8˜oûOò¿×þþ¹ÿó ÄÈ 6ÚXH„q(Ð0¡hr»¬È¨¬lbP´2‰þUoùýeÿ@BŸï)œFÿó ÄÊ Q¸KÄq°íë¶±í±¦Á XbæȆ” ®¾ÞKý­ªÝ?ýåŒu,øOÿó"Ä¿ +É +ÄzÎq¨ÀKJËÄPbÔç&np÷4€ÈÊàoeœbnØC|4 -0:ûÈN£ÿó Ä»вÔÈKÎLi  ± +©8üf¤Ÿ^›ÿó ÄÁ !>Ú8`„qú¸£ °òA åƒRÅpO‡)MA~Nú‘*eüîßÐKò©lxÄÿó"ÄÃðÞÀzpùvåûÁ¢hèª:ÊÅ dLâm +ØÕhä[üßЧ†À Ðã‡ÿó ÄÇ8¶ÄJÄL˜;nVÙÇ«%ˆíÄ}÷;뢂ë¤Ý.cˆKæý\éäÿe˜ÿó ÄÍ É>ÈØIqV_,ÊKe.YßCf´4}ۗΰ7Ê7ˆ]•GÊEÓ#e.z”ÕÔ£)ÿó ÄÀ áH„qe +Ÿ*˜%¾­¨ Óu÷ãvØXëø‹”¤™ÍÚ\„yl(°ÿó"Äà )å0„pb`o ý·;rj-¿GoÁ ÷ÔØ°èD³1)°\'¦9XÖ.ÿó ÄÆ‘ÐaÎp¯!é¬öãFÓÇöÊòÅQ´€˜BÃÄlV!Û<Ÿ†˜ŒÝOwÿó ÄÊ  +ÙpaDpðµ~µ"†ZhÿÊÿ¨£–D`³CY@øµ”±•Ò +Íÿðÿó ÄÌxžÌ{L½ +é+ò›¯oÔCÒäC +DL5„é_(}mŽQŠ4$ÎÉþ §ÿó"ÄÑ *ÐyÊs DÑêìú»ÐXz‰€Ô!AF "d(Yó3ÅÂ6†®þ.Ún‚¿ÿó ÄÔ ݘIDqëÕ$( ;mƳκѨ1sLVd° +[ZòBÀ м/ú‰ùŽhÿó ÄÖ ¾ÙJNLþ “ê€Ô"0œ +Ùì¨Ç•ÌÆÒ´ ÛÔCJ‡ð^û +m[™þÿó ÄØ ÕPJÄp¥-ú@D ô}£ÚZ¦ L^‰r\îÊyñ@·¿mꮵt9¿‘~ÿó"ÄÚù.îX1Dpú;ˆ¤DÀÑ$äÔ˜U¸’2tÔ-pÁí|ߥõñk?¯šOúÿó ÄÞ !á˜IÄpB¨¹EnšÂ!ô#Ò™‚}ÂmfV3sy[0Œí‹ËõDÊÿ/ýÿó Äà &á¸)Jq‡@€G=¶·^‹²'æ†åFã0¦žNV7?è +·~\ßâ#v øÿó ÄâȺÐÐJÊLѶñó0:á,.¬Ðd²Ò§»…@6çZ/&꺀?ó ó®çmYçÿó"Äå Q +Ù˜JÄpÌGУ 0Õæ'ÜZ¢c­Eð¥g]—4/7}OþoåoÊ"ÿó Äç ñÌ8zNp=ù "Ò¤0YtʃS}Gx)»¦Ï=„øÕX:/ß„™P½Æ¯Öÿó ÄæÁ*аZq =µ@]fMÙTl÷H¬£rè,ž¦©Ö9ÐíYß÷¾Ï”‚ßœÿó Äê Ñ*ĨzÔqHýG´€T‚B–6yx<`%À£ÑÆzD +£pûóøóu´ÿó"Äé +Q*ÉX{NqâIöúa@Q‹´…B‘³oÃÎ`Õµ_…·mwïÏèÚ¶æÿó Äç + *ÈJ„qäcoŽÁÀm»Ùå\ætt  ‚Á·NQÿÅ=è 6E-ëÐŽÿó Äåá +Ñp[Jpße€2˜4ü67‹5/c • 5=²€SÛ@,[=,\‘×U~ÿó Äè + +Ä JÊpm’4}|àè¯<¦º<ÆvwÅfñ¼À_mÀ¶Û]H}ù÷Ðÿó"Äæ ‰ÉHKJpT7ˆ@@€œ*kô Ó%.æÊ©Hº‚¡NQjù®ïê>÷åÿÊÿó Äç É͘INqìyš!øhªõ†™ã|ÅlÃ"€ç!̲  ÛA·} _+ÿó Äæ ÑÉXaNqþDfÀÀ iZùÌòÃtAOƒ‡ 娹™|í¦×ñV` ú™¹]Wÿó Äåù*êX0ŠqÇI906© €B€Å­P}Ü Ò'sój½1§µRž]UŠ>ªÝÿó"Äè +¡ +ɘIÎqÁFrHÀ;ŽQÔ»$QWˆ]\NΦk“o}•ÿq.þ©ZPÿó ÄåÑȸaTpøÞAŒÀ|ÅgrèÌ[—/TîWM(þoPrÿ ïôoÿó Äè +AÈøzpÇ$:ˆk€”×3Xþ®*šlƒfWPÁ\±ã¿ÍßãgþU½Gÿó Äæ ‘ÀyÔpï˜ÐÃcizŽ)Ü.s%YeGÐœ×Z†§S¸}ó;·[~Fkÿó"Äæ + âÁHzÎpùˆ£ôX¤‚Š‰74&ÃÆ;n§š\€MdJÊ‚=5"£Ýõ¤ÿÎ?ÿó ÄåØÂÍbÊLóY Ð@È᪕¬¾á…VQ¤1Ê{š÷ŒùÿH +'»ìu&õ¨œÿó Äè +9*ɘyÊq¿è·H‚’âåo:`/dåÄ0"y^"üÄ EWKš.þ£cÿó Äæ Á +ÅpzÎp߬ë·€«&áõoðoZP£¤^ÎÍ{5þxÛóÜÿЯõÿó Äæ ÁÍxYÎp!,츀™D8$ªP‹"©dÀs>¥©hÞû"÷ÍM<ÿòÿó"Äæ +*ÅPaÔp®ìCPÀ>™˜nê"OÔ'È'qšww(u¾àþ¡©ýùvÿó Äæ aÉøIÚpèÈ K(€0R°@¥¨ÈùYå¨Ü7Yì÷L¾úßPšx®Éãçÿó Äç é +ÅpbÚp¡F²°ÐXÀŠÀ1|= +¨˜´ÌoØ”#eá’©/ÿÛEl×ú˜›YDÿó Äæ Ѽ¨aÚp›ªÚ +øœL æM¡eè‚Y¹p3_ÙH?èþò¶ÈÍ3®6ÿó"Äå )ÉxJ”pºÁ'äÀ‡ŠjhµÌ.‹
trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-Symphony_No_5_in_C_Minor-16.mp3 Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-fuer_elise-16.mp3 =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-fuer_elise-16.mp3 (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-fuer_elise-16.mp3 (revision 782) @@ -0,0 +1,2105 @@ +ÿó ÄHÀÏÌš=1Hdááà‚Ôµ9Xÿú¼ïsâ~B`š„T@ø +ñäÿó Ä'H@& +0£·ÂÌb òÃq%ñ„(Áà°`˜„˜ ?…Ð`0†¤ÿó ÄNàœh¼<‡¨9Ï ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ00áÿó"Ä +\‚L‡ðÿÿÿÿÿÿÿÿÿ_ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿà +ÿó Ä€*Ù“[å'ç—i‹ÊÔ¹;þ‹öêní6”èXmžÿãn–Òwç)*b®<å\ÿó Äø’ ÈÄMìûs +IJ´¹k’(éôЊ#{ÀßËIjq.£¨ 'ÕXφªØ´4ÿó Ä +ÐZÀÆ%C*á[®ߟV×-Á{Ê6 ÿ ‡÷j–À§­h³²Ju~‘’.ÿó"Ä + ¾  ÆMšç’K{§™{ê{U4Ò“ +‹¾¦]“e'pÌÀ°l~ê³`¸ÿó ÄH.˜†Šæa¯#^IùŸù3®®þ€ùàÂO”Djl§ÌÓ©öco¬; fÿó ÄÈ"˜†cÙà¬WAš–Î +íVzîšÕ@UÎ{/{g'×5ä&™c¼°ÏFÿó ĸʘÆqq7J©'L +ìÇ2sçPHÉáÙ^zïtËRMïY ýJäöó»êEŸƒÿó"Ä Ù˜†qßn3`’*?3Ô7ÁÝ® ™Ã¼ûD¡Që}®IîÄ$¡ù€!Œÿó Ä$HFÀ„$Eü†òsL¡‘ô‰ÓrÖ“œ %ãäûV¹nïvíÀÍÓ0ÒIÿó Ä)Ø> ÂL¸.ú»fšÞ}A ¥ÎÁŠ{Fv'¶¯ý¶÷b•wB"¸Ü¬,”:úÿó Ä, ñ20ÈÄq¾èþ¸ÄB͸ƒA— ˜hÉ“¢›œy·Š™¹ùøTÿó"Ä+xª@ÎÞMs$ª Ÿ±Ù8h„cÏß¿¼tpz=ÿþ°–3 †Ïÿó Ä Ø’hfL]T‰C'v%F¢)çìÕ!@ì§i%îøÜ[Ÿwòà€€1^†X$ÿó Ä ’lÈfŽLOŽŠ&`Yýå_F'±¼ÅcT§.öÕ!+ÿ[¿”ð ‚+À4u +oDÿó Ä Ö8MpjÛ1S M†X$w“ìêýt°ßgßòþ ð8ÌhÐL¸M{u¯ÿó"Ä X’hPN”Ljš2!<~É·¬Ú–ѧ6rRŠ ÓW”;ý`é8ùðÏ~p¹Éw ¦`ÿó ÄÀÖ¸\„pø±4zÒÖ“ºh®ÿÛ‚ÿ‘` +6À +}‰`ÕlŠln „$ÿó Äéu5 +qˆŠH¥îÖªoö¿‰ÿ¨¸@`ô3^Ú™3¹JMÞzI(7§uÚÿó Ä ’eNNL|†ûù´sp•ÿ‹½?•@"›&ÜGHoÒ„‹¨„! E'蹋¯ÿó"Ä Ò\ðMNp[kú3Óå_ý@ü&u‘覚n`X&ÈÀC0;ð´-§Ùû)*‚ÿó Ä°Ò`P4Îp¿§ü«ÿ¬&B2\>lqðíG‚¾ä9”ÔYÏÍnMßÑ­ÿÿó Ä!x’X(N”NЗÀ 8$ Á ˆHBPdl‘!Ù@É]çÿýØßÿó Ä& ¨Ê’XcÌpùˆg÷¥ƒ¦¸c˃àðŸxOΩzP“¨u¡W;M°‡ãÊÊÂÊ`ÿó"Ä + +|~Nqh”žÅœ¹½þUUØ´jTãŽ9Í5y¢ÛWÿÊ€¤„¨Ò–‚§Zÿó Ä +àΞX4ÄpÌ-¨†ˆDþ4–’W]¿*¿çfô?ùèá4`&äÍ›„e¶„ ÿó ÄÙ +‘¸LDq8OMÇ“Ïÿ@r›ó7”?ÿð@è@â$™ $Ð#¾,n@¶ÿó Äèθ5p0/§MÖ>ÛõúFþ°ðü€à€6˜@¤ˆ|SºFa®ñÑÿó"Ä  +¸L„q$³­_ÉÇüžŒê7ÿð èá,VãuPD˜›ÙÌÌfQƒÎfH6ÿó ÄÀΉ¸]pÿÐ!Íù¿ƒ‘ìà€‘=g^´ ÉŒè@Ì)¦¶ñ¯ÿó Ä Ê…¸5püFœ–¨Ïà pÇ%=Ù5ÃXTX’>Ï«ò(ÿ§ê ÿó Ä ðΉ¸4Np'÷ÐHäÁ +‹˜‰2‰;ä¤d|@2x.òšÐt”ÿÈ0ÞµILÿó"Ä# HÊ}¸Mp?õ€š P³1ù¸LÄqÿXÕúþˆþ˜À.Ì#‰»7Ó,b| +hö<•¿ã¡ÿó ÄA Î…¸M +pÉôüÊý@Ø@ç€RǦ +”è3‘P%@ZT[F›7òÛ?ݽ ÿó ÄDØʉ¸LŠpFX ne€iD²T „‡•$ÉwYŠà®†ÃFÿ.ˆÿó"ÄGøʸ5pŽF¡Ф¡ý'À¸¹ÅcÈ^E9V~·;/1#DT…áëSÂϸÿó ÄK ± +š8cJqÉànIMþ€äàÑà+©­VTô–p3ó2±¯Sº]™åÿó ÄC ’”ÈNL_Ltcÿ‡½èîp:OÑô…ÑÂâ×&t N$ ËÐZ¯Ò2„Æyßÿó ÄE Ö¥¸4JpíGÿÿ*ÀÒ°/^γÂw.5™Ü ƒž{­[¥IiÀ~¬^«Ôÿó"ÄG Y¡¸MqÛ €ÚJÁ@F0Ulõ…Xq=ÆÅ*ýœÍIÛôNªR>Eå€ùÿó ÄI Ö®x3DpÎ4¨öˆšðæ¹–µU9ó³"Ç*ß ìšî>#[¾ªÀ`j…ÿó ÄKP’|6šLàÑ(!çÞ«ªxptì cÂOì¥ÙúθÙË »ú€À0à tÿó ÄP ’•¸NLÀa§¡ÈœºYO’‡ÂO!ïÊSÃÅZ& †X;Þ€±<¿§ífëÅÿó"ÄR PšxÈNšL¸!qoŒí \¸8@(¤YSi¹É|z/ ŽûTµ/–^ÿó ÄT`ŽŒÈL±MÑvJè"³X%æwZÌFÂdìÏëREÓ`ÿÏðó‰$;o³Rÿó ÄYaB€ÈÆšq(ˆX—dãoâÀ·íNÅïþ‚ÿçÿñàp !žcª˜$^øÿó Ä2á>­[Nq† È’*Ê»'? +"käñÿãÿX`P%Dš0à•ïôqÆAÿó"Ä5 )¦hKJpºcËù‘¢•×n"úqÿÆžú€ý`s8(€ƒwÑ$Fa®Áÿó Ä8 ªx3Jpcú²zMć±ÙrR;ëwÖÙPjxŠ„´DÍüŒ +ƒáõH[üÿó Ä:øÖ¶x2Šp«;w¯8ÀIkS‚ëwÔóUÀäòÃoÌ4$'“®´„Ôò_:ïëÿó Ä=øÖ²xJ„p§ Gc±ŸÆ7Ôï—˜ C»™UØH¿ðÂá>6Ñb:o±ÿ«áÿó"Ä@ @Ö¡Ø4 +p5ëÌ;ê ü µS?ämðg(æ±Ë¨:RÍÐÅZ?> Î +b«ºÿó ÄCèÖžXLJp¤'œ_­ÒT\2Ÿ-‹²ôk2ŽÐ†Ô^][„=rtíKžñÀÁÿó ÄF +|ÆRpžO™( ÊÙ +)º0F²@aG\Og²àLIj>gê·Èßò Àÿó Ä( ¾ ¨KÎL”iâ2«q½U”´&æw³ne{쇖ÔŒ§Ñ¾T¦¿TŸÔd(ÿó"Ä* 8Âœ¸NLX vU™ÑJ=FÁÚqh|«p¡-}¾heÖøqg> pg0 +Pÿó Ä-Ⱦ¡XDÎL.¡°|a Ü•tOúüœß«}÷ÿN7þ Ê¨ÃJÀ@§co ÿó Ä0¹>¡ø3DqÀ×<[*)6ö~f߯ñ_ÿS4¿¬d°Ž2 +£A6{–7%±Qôÿó Ä4¹¡PLDr%|îsI¡~Õþ¤2Sþø!ÊŒ“(Ã2EåvÝÖqn2ÿó"Ä8 ¾•XNNL?Æÿ®1ø,Ôñü¾CÏ_ò ÜKÇ~ÆÎ%‡p˜ ´W…,³lœ¼Ìlÿó Ä< ¦•˜N +LÝ—÷Ôrät‘ÊöîÅ¥iÅ#Ë°+ÚŸþþl@ŽÔìð ñÿó Ä> +ù~pÀ4PR°yXBh…A4…[µBa©óyÛùŸ4ˆ*5þ©P °ÿó Ä- )©LNqR +@çEqËeÕVP aŽú»ú)™þfßN‹üø!fä€ðÿó"Ä' ²XLDp@:'q³«ÒTü,A:sm«ÔhNÛ©WoãGü5À× d†ÿó Ä* ©¸KJq26| c0Âà¡STú’J?Øâ}Lô±Pgÿ‰Ä qÀòÿó Ä, !5qyÞ¿§8 q ›Ýž½H•¾®ÙRþßãú°—á°€ C€ÑHœÿó Ä. !"ªX4„pR²kÇ`(BˆøÖ^ƒ<ÀõvÑžþ— +ÿõÝ@pÀxÚ’ÿó"Ä0 Y¦X3Jpß©°K¥Q™¢«¿U ßÚÚƒn§íÔâàp€ 6Ê’þ«Dÿó Ä2 ®šXLÎLØÀ‡ +ý_ȹj0ýÿÀÜ߀ý­þÜG$€a ²ÿó Ä4覚XDJL±]tn„xY»»¹ÿãÖ‰ñ0ü1 •ÕÊäj*•ArÑ>›bÖÛÿó Ä; ¨ªÊXJFL×j1ñó ÚßPw•;¨çþUÞ Œ1(˜ÅRÃêRX° `MRDCÿó"Ä;  ê¤ÃÎpݧ|—^oVè+þÑ­òÃL&àé·Chɼø'¥EíâºËüF ÿó Ä< î®8bŠpò¨PþÜâq/†= ‚dƒÖ>!m  ‘ zOCÏ8Äsû'ÿó Ä>ؾ¨ðcLþÿÔï¾YJ·Ð€ +‡³ñb-8oÀ¸AÑaA*&Ããßôÿªêÿó ÄAøî­JÎp·þ;úoš€HTqæ7‡É@>Ì—VˆIs¿ú¿Fÿó"ÄD @ZJpo‡€À®*Y¸mÊô`5$|ÚØ*C–ü7Û¨Ûëw¬ïXÿó ÄGî¨xYÊpÀ€×ØÙš-œK]¸¤>)ÕTb¸!çéÄ?ú–Ÿ{š§yWøÀÀÿó ÄK Â¥˜JÎL Ø;£ÙB&FNØÒðÙ5ý€Ðe&-4úëq/†À¡€bÿó ÄMà¨xKLÔ!Hì>ÌEZ½S¢2¢’ˆÓã"pgUŸÂvÿÅÞäzƒà€2 + ÿó ÄP ¾œxkÎLщ÷A>H~ál!¦\Ýĉ¾¯ƒ>ÿù)øÕÛ¨:Ä-~r[níÿó"ÄR ¾œxkÎL¢~Ýq Âºsr†‚›[ÒŒlÔdÂßüŽ§¡oòÀÀ^ÆuÐÇÕØ”‚ÿó ÄUøæ®8bp³ä€©.U˜{Ž`f?>…ø]¿èOMÄÀÀ)o %…Ió “6ÂÔÿó ÄXØ X{ÎL!Ç`À¢Â‰²tTY:ê­ø#ÿÔÞ¯LEÀ€ +8gJn3Àf' +S´ÿó Ä[ ¾˜X{ÎLcÎIÎ7®AYEÊU'5?¨ïq0À  øzÊ¢HkbA}–J€üÿó"Ä] Pî˜X{Jqt5!™×|W~·Âÿè¿ÓàÄràx-Z@$ZpT3#¤Øê•g¯ÿó Ä_ ¾‘P{ÊL•Wügÿö¢Bßé$xòÍóyórw ˆaùˆŒ.¯SÔ¯…þ'ÿó Äa˜î˜zÄq÷}Tgôx[ôÄ ¿ ‘äf)Tpš ò„H(”“Ýé£%_Žüÿó Äe€îœXZJp­úa@l ™¶}H¶xBAÁ$:zwÀÐ^>‹ô»‘Õ2Ÿó¿Ÿúÿó"Äj XêœxzÊpa?É€Šäãøœ’¸úÒ¡(%S››âõuêÖùÛÛæþ˜_äÿó Äl°î˜PbŠr@‡ãào™Ñ š®7ñ’ì!€P"ì._ó È_€üíãL}žD ÿó Äp î xz +p«àN•‰¢F1Ú¢ðL³6®¹ˆmÌUüÉóÿL|‡¤ ïÿó Är îzÊpõÚÁÂ;kƒJÒ€~ ,kK5ÆΣþ»ø÷ú`ÛáHÀä`c%ÿó"Ät 0î˜Xzp­û¨²Åa›1Иô‚â™ ¬ I*úŸuI}€l {žªr|$ Öÿó Äwðî˜XbÄpŒ>i´6›‹muW‚o_Õ%ððà;–€-–È’ü ÿó Äzèî xzp‹‡Obt ¡Y†-›Ó +gÿ°:½Ma=ý»Ò?úÀ ÀÍáÿó Ä}Øv”X{ÄHF~»E”®‘q£Kõ¼fÕRýCŸâ´üMÎ胠~åTî²Ù!ºÝÿó"Ā辔X{ÄL­…ÚMõ© þwbÕPÖúµœ èäòÀ(?âT«ÒXUj#²›ðàÿó Ä„ Ê­¸zLpÔ²“&7a÷mÅ¢×ÔOã{GüCÓ•T†æèÊ@š*7ú` †ÿó Ä~À®¶XzÄL}Ëjª$Si'úzrÀ€ G U‚x§Û8¥?˨;Xÿó Ä‚ Ž XÃÎLcèÔAÏß÷÷·ÿ©¿Ö€#‡u7q‰,øƒ„œØ:‘¶€3ÿó"Ä„ ƘÃDrjAê&W[(!ú?P0súGLesœà,Ñ-ð}ë +>¬aÄBdÿó ĈØvœ8{ÎH¿3òÚÄ}ÿõ€ÿúã˜êÑ”@aåFeËãm*º\¤-§ŸÓ£¥ÿó Ä‹ùªØyÄp/šn²½ÿ?K¡¦gmˆïÇCç¾€óßø`¤#-¸ÃáXís&{­ÿó ÄŽ¨v˜ÐÃÎH+rÙ(ãwøçï-%×áÀ€ +ìùå[P…¿x86Qÿó"Ä’ H®œPÃÎLp_ÜßSðÿñƒ|˜ÀÏ0ïÜÀËŠ:qÔ¥¯3²ŒÂY¦ÿó Ä” +pÚœPÃØpÞ?þý¡þÙFêwgXÀ.̯2Í îmZjx#0^,X‡Îÿó Ä…àÚÂ8yÎp,Mø7õ +ó_ΆÀÀ°Ð4±§hÁtiŠ´ÀÕå<©bOÄÿó Ĉ Úµ˜bŠp /¾1ÿ¯ÿôŒp¤*à]?Ñ<\@w>ã‚]ÊøœÓÿýûàÿó"Ä‹ (Ö©X{Np‡þ¿ÿÖ€€ +ƒrçNW.ªôl2@ + Zù7L!ïµn?fpïúŠ«Ûÿó ÄŽ Ò²zŠpAû„`ßYþ€€C ôŸ-‚ÒoF„HÉ¢íT:7…?mÿâõÿó ÄáB±XzŠqQq¯é„ +„gq" ¿($I°sÇ( +£¿áæþZ-nãühÿó Ä“ÑB±øaÄqeüˆÀ6¦ùWa9àãpG<Ÿ(VãtPl£·áñøûêþ 9Oäÿó"Ä– +`òµPzÄr@€ƒØXx¼z˘ìeYÌN JOüDÔê2xq^GÒÀ0ÿó Ä” î¹zÄpp‰~Õ{€v:ìÓºkf¡Í?.ßÛ"«r +ò€ˆ$àÿó Ä—èî¾8aÊp<…Ò®ÅþžñB¯‡<‚ Þ¬oáø»kûQ¿ ÞÑà !Ú©Ù2ÿó Äš aÊpúëñÉŸ &Áâ5¼ö!-*Ïô½J$é,…ÝÀÃðñ”Lø ÿó"Äœø¾­PbÎNø&G¿è;îÈXéY²¢íÛ¦*šŽH.L’À)@Ó¤HIIApŒ#ÿó Ä ྶ8bNL€²¥ÞLL¯OPSv×+Ñjµžþ²ÏYׇâ7õÁÿáÌÇÅéÖÓ6ÿó Ä£ "ºØaÄpjÚV¿áÎßm€€ + + ÌT@Ò©ª'ƒëbVµÖÕžWïÎ7æÿó Ä¥ؾ²zÎLõÿœW_ð€LŠ˜‡‡ïK+>ÚéZ b±RÎ&³Šuç[®õác»ã¾ÿó"Ĩ @¾µK +L?ÿ9òàÁ$-aƣɔ0C‰ƒHÉ'”¨]ÖVýíNJ¥ñÿýÿó Ä«‰B©xfqG~PhÖ`OªÃÊ*p{… oµpKDqàà«ÿP9sZOªâ? F:…ììzËÒúÖ¼pg¬Ò +Õ‡äÿåÂÿó Ä• °P{Jp#Œ TBª§÷SÈAØ*Úg +³ì‰¾*>þœ÷Äú§WéÂÚuøÿó"Ä— 1µKJp™‹1NÔR¡%WïcÜ­iG5ÏÁuJ ðFûÓ ¿Ê€àJ»P5‘Õÿó Äš °XcDpÚ-çDb)>·­VÔÙ_ø&튽7ßê?ê¤ÜF{!H—¶ÿó ÄœÐÖÁ¸JŽphØ^–=ï¾¥52Ö]Ž,€?æS»=Ë ¸m’£Šÿó ÄŸ ÖµbÄpX`ò‚‡J4í;ÖRçêÚ Ù›Þë¾€`‰eÙò€O(àÖá@*Œÿó Ä¢ ½JÄpLº“;ˆ–«êNÝ|TFAg¥ër›òÀ€ ÊËï´¾‡s-%ÿó"Ĥ Aµ¸KDpöFQI~ÛòÎoñ³.ˆý—·ò á@ÛP$«Â̾ ä§aü! Mÿó ħ ¦œ~ +LïŠàŸFëû 9#(M-¹lú€¢àe±Q¡RñrâJé¼â‰QaÕPÿó Ī Ö¤pKDpZ\«¨ß§O¦äoã~€Ñ×8ƒw- Lá@|„£K! +/Fåÿó Ĭ ¶¬xKÄLõ;hÚˆÜüÿVÐ]`AÔàfÎmäšéKrGm‘ÔœnpÕÒ«¹ìêÿó"Ä® Y©˜cDp £tòÔËÁúŠý€E×%f¢yôÅ1 P‚Pp{V¿Ê_Ö@–ÿó Ä°ж±¸JÄLb‘?²*Awâ@€ 5+RñÚ7.TpeÛ6ôÌt¹3¹8Zºÿó ij ! X{DpGfæ}F@À×€& +ŽÿH|øÀ`lX­7Wj<¯çòõE¦Ÿ/Aÿó ĵ  +±¸J„pn X~ 2hœA–p¦²ÎÄÑóåì.+@—°±£ ûé}@ÿó"Ä· Y X{DpÀ¶€7쥕·(팗bW 9›¡úãþ¦¥T‚ôVd€±ÿó Ĺ Ò¹¸Jpà;VlW¥õ’ûÊC4Š!€ýP7|h‡Ä™ÒásˆüîÝ`Âvÿó Ä»І¤ð{ÊH¾Š/’ÆS†Â:Eˆ7>ܯ^A0'D™á5Þ¬–Ý@áÝˬ'ƒËÿó ľy¹¸aDqkÈ(,²¨¢§æ±&DnR»5%Ç9kܦ"w³c…æ0p¯ÿó"Äà XŠ¤pcÊLg‚nx>À ²Ð%8ÕjÐ/ñ¢:; +oõÛÉ>¼`Mï¼`ÿfÿó ÄÅðα¸yÄpï†@€ˆË­“”¿á‚нӭ@y +l•]š>ð Eêýû–bÞ ÿó ÄÈ †­¸{H€%ø¡'5\ž¶6…8ÕâûK ý@?ÇþWäm_ù†<•ÿó ÄÊ †¤x{ÄHjLÂ`ù„ȃO©Br(vâã¾Ò¨[ß03ýKÿOÿøû€ Ú>Çÿó"ÄÌ +8ú 0à +p•V!’ žÎBQ<Àöü‹Ë…ú>‚ýü©~¯õ€¨ê¨GC5øÿó Ä¿ ÚÁ¸aJp7xL¢Ž¡áL +ï^pÑ7´C§Po¼hÿ!Nî€Ãy}RŒ«:¥tÿó ÄÁàÖµXcJpƒ¢NóBÕÂEeŽ®r‹oØGðn]û»uŽ€îSd‰4Ý!ù¬ÿó ÄÄ B¾8IDqÀ‘èâ|o´<Íýß®ÏêÜ#ÿÔy  ¥:¯I”ÖOþ˜ùDFÿó"ÄÇÉB¨{NqÕBA—xÔ¾:þ¡Zuð?õhÍ{=k°ÔYÂm 1ˆˆú<V;Üj_ÿÿó ÄË Ö©Pzp©#æ—¨ç’/¯5ë u0Íc©|ÿq­\‘08ÆÇ6fÑÿó ÄÍÀÚ¬¸bŠpßx¼ŸØfþÒý_¯ÿ äè‘W—Ìb¯ì‚ƒÌ ˆs…ñ‰òÿó ÄÑ @ÖµPzp¸·NöŒýùôÀ 'ÀýQü"îwÞŒ…žFµ‰_"ùFm£Òÿÿó"ÄÓ Q:‰DqŠÿiþÛÿYÀpúý¹ž¢¾÷ĉdd&ˆ÷ˆ<³yZVÿó ÄÕ ÞµðÁÊpþЯ©ÿ©`€Üü³ôš=FîÀ¡u4 +B&M£w§Zmwý³ÿó ÄØø¶°°^LÄLº_7$D˜DV¢ þflÈvqù”HpŠš?ë*> At@@Ð ÿó ÄÛ >Â8ÁDqº0áUCø^‚,âT'T#3•Ô…þôá`½ÿÿNÀ¿þ=€€üèÿó"ÄÝ 9:º8yJq«Jh/ê'2U¼dÆ &lFåÇÑ>ŸšüBÚ—þV¿Qß•€³æwð5œÿó Äà :µxÁÄq*È.Š<ÂlRdÞdÙƒý+p¯ÆþºÐˬ5Ü8*ÿó Äâ Þ­ÉÄpT¹…ck€Ë°Ï*ÙDúþì¤bkÁÿ=ò Àë*öõË0ìÝaÿó ÄäéB­ÃÚq…6Î'ȹ¯œß2Üóþ€Ü®ºÙòÀ€ÐçjAл-0²Ìfÿó"ÄÇ QB½˜zŠqmG}ÎÞj`Çeožüç95}ÿXÀ’7W d]1HӢę‹Uÿó ÄÉ Ö°àÃNp¬ÀºúM¯ö—£òýÔ—õþ ö6ƒaÖ”93¤1 ZÜ>º0mßNÿó ÄÌɱhÃDpæðÁmO·¤HsÜPçXŒ.2ÀÔ„Ëî}åbÆ"ªî‹ºÒ¶ÿÿó ÄÏØÖ¾XyÄpÿO7ûÂ@¿èØÂ]@\=¯ +ò¢er +E†ÈÓÊ“›2”½Nÿó"ÄÒ Ö¶„pžÓKÿ‚ûè8sðT\vDJoiù`–&†¹˜‚•¨é¤Yëúlý0ÿó ÄÕèž­NLBÿïÇ€ }i|Z»J“Ûr:Tt(t½ÃEúN¦Î¬‰ú«ÑŒ¨oÿó ÄØ Ö±¸{Dpýÿ^ NØjú²3LAG‡mäùþ»¶Æ˜]q•9ÿ¿ÿó ÄÚ¨^¨f(ܳ` ^Äjê6LŽ×~6ˆ%㹊%*.†´MÈß vÝ”ßõÿó"ÄÞ YÖXZÊpx1ÿþ%¹@’àNG‹T¾À9(S¹·‚<ÜúµífÂ8´q¾Mg:ÿó Äàé¬({Dq˜£ý €*UÊ©ª\z“»µ.O–E2q#M—Ê’ þýhZÿWÛÿó ÄãÁ´P{Dqÿã¿*@—Ü=šœ NèÀñ»¤l:C}x“üâ»]þ•ÿó Äç +!¤XÄÄq÷¬ß ÀoKb1;^?¤ +F&ÒheÄ_r×Ö<œ@hæ~’ÿó"Äå Ž¤Xf +LŽŸŤº!g›®LuÚåz'SM ¦2G•¢gZKÛ¥IÿQÿó Äè +a X|„pâ?E<'ŒÆlZÀõY˜ƒ07Áqd@±w¯“\â‘ 6n’†[ú÷ÿó Äå ®¨XcÄLûhÚ`QxR?@<‰R{RZIš0è•;º·@ú5ªâ}·ÿó Äç ¹ ø{DpþQþõDáhX^‘îõƒÓ%œD€p ·ÌîRÏL?Øͪßþ­ÿó Äç È® xdŠLÿnm#àok¦‚n~Áa9ìPŽ±¬j +NVJ[æJ<µ–îºÔU¿ƒÿó"Äæ +ª X{ÆL°2'ûqý ä™Ì±aCL3z„ ¨ßu¯9ž>ra4¢ýFÑÿó Äå Ú¤X{DpÅ€ @^_F§t^}àŒ0‰2D¨ŸvC­”¥–nu¹š&ÿüÿó Äç á˜{Jsoô>£z@èÐŽZ;·‚‚„Ú +võÐÂUtKh{£…ÿó Äæ Èæ¤x{Dp +ÿÍÇ›œ¤Õê!Y‚Äý2™€˜¶…Àú·ÕåQø[ûÿÙÆ?¡ÿó"Äå A¬xzÄqŠ:€ƒL®ÆdíD€o}H6¬×ÙDÅÖﻚåøˆþïÿ4á0ÿó Äè +YœX{DpyÝ Tš‡R ¯ìÍÇx„1"Ðe³²ž¤&— +jeÿ]ÿó ÄåÐâ¶X1ÄpÿKê,DÔ +{T§d¤–|^¶ P›<ˆ@ÍÛªõ.Ò•½@W÷oúÿó Äè +Q˜x{DpµGÿG|l 06g ¨¨F³v]`Ù‚´±’Íu¢ó$³p¯·ý%ÿó"Äå I¨xJŠq«ÿºqÀÀÞj1!‡èº¹Ñ<î À´ìO*¶÷r¨2¹i~•ÿó Äç PÞ¤zŠp[¾ Ð³ö|¬Èà-p=æ†Ó¡ø~Mƒ+­Mα±Œ¶¨+÷oý^£ÿó Äè à椸Žp¿Û öåÀüUöÓª€¸=$I1¢¼f=oXÿ¤Ú¾ï´ 7‰ÿó Äç ùœ{JqŽýfú@ÿ‚i™-ÇU¬ˆšüTg£Økƒà[g¬–µ¡×¸ÿó"Äæ + 8ÂÊq#?Ìd5¿BÀ‚ðÝØc#Ôë2â +‘Bð^)†øŽÆ%¸Qÿ—þPb›Èÿó Äå ¨X{Jqôy€;øCYs¡>õë´º: Ųƒ_âu*¦?oGø!;ûÿó Äç ¨Ž¥˜{DLûòÿ‡`´;¸3©âà úÀ$¶´«IC´8Ð/vK´})›ŸÐW`ÿó Äç +˜{Jpc~&n¿õ€NìR!äËwéÊÚ.áä^-[æ’«øú ÿäÿó"Äå +ÐÒ¤P{Êpú|2t?: J—SÁÕD7”FHXø”¤°\£ghÐZZ§=¨-ú´Êÿó ÄáØÖ¤ÂÔq?ù~³Ý@€°ïœG‚þ¬¢V€IH#IHÆÿ3 Q–ã?¨§Sùÿó Ää Ú°°zŽrwJêÞœ0L×:¨ê¨ÂÐH2›%ÚN<›²|öüÀÏô/ÿó Äè +!B¶8aÄqü§•ò@¢ß›®·¡‰uаàêF’!—•„‰Ë7ùžZþþ‚’6ôÿó"Äæ +ÖœÃNpòP¯Õþ°‚˜þ ¡=HÀôžÍÚ–´žÖL [%3¥Lk +—Tp:þ¢ÿó Äå¸Ò¨¸zŠpÞîC¨€# m©‘© kŠÚ¶Ê–Ò‰0PFz—Ëlí¥·?ñOÿó Äé +˜þ˜ÃNpâ_w?ÔÀ†º’gÃÍ'ê‰M<€¦ðkÅtÈkÚ"â¨Áÿ ÿó Äå ²¥X{ +Lw¬GÖîd€p+ðÔÖ˜R´·ª®àÇ]=\C¹(©$Ýå¬<]whÿó"Äç Øúœ{Np/íéëò€ÂçÀý²‰¥%²Hfʹh³žÄÝS œÿ +ô``¶õÿó Äç + Ö ÂJp¯Ð€ +8«$†Yýð;!ØåP[€Û–·œ­kêÿ-ýKÿó Äå 0²¨È~ +Lïå_ÅÀÀ-xµÙµ\wëøÝqÏ<`9àN‹H|åIÛ„?t?ñÿó Äç øÖ©ø|Jp®µÖþꀎеâ!7âk J J0W sF[êfëN¾®?ÿó"Äæ 𶥘~JLE<úk>€ÀÀ»[ tdŒÄum<Š{¡§úŒý ÀÃÔÖq˸å{ùÿó Äæ ض¤ø~ +LÿîC‘~æšçmEÕoÙÒ¤œ€@€>T˜,zl§Xê.‰p ’ºÿó ÄåøÖ¶X|„pdëÑo–Èo”ß@mÿü#€€0ZÑ`š£×}—"^aÊôÑÔÿó Äè +ö¦8{Np’õ¿È ×ãëÁüõ ˆ…ÀÑ@磴œÙÔ„xL \Ñ»Ïüÿó"Äæ +Öª8|Šp‰OœÊýãÿú@€‚Àå¢d]‚—K9¢d È·¯Sü¾Ïôÿó Äæ àÒ­˜KDpE¶¨7ò¯ú¸Á&PŒÀò3êÌ– Àã•3ùuËý†mÿó Äå ±¡~qA7ÿðNÔ€‚'("‹b™¬pÀ³xàÞΗÈN~GÚFØÿó ÄÙ ­¸LDq€ÿ«qL›02N´ XJ!—ö–BÁÀóJå·-ãÿž÷ÿ¸nÿó"ÄÛ Î¥dÄpG=4Ÿè2<÷òàÔÐê:DˆzS/s§J>Š€3¥sþÏùª›ÑÐÿó ÄÞÑ +®X3DpÏÐ}[ÿÛˆ!6‰l]´„çKGnÄLÕ8õ&2ýYê=–»¢îoõÿó Äá ʪXL„p¼—ìš +EÙæMÔtŸõ¥Å + +¢Ì à"©Z½µ@ v7Ыÿó Äãù©¸cDqn§e¿D­ Ð"¬ÆP®|™IŽAy€\!±ª[VÿTÞ¶ìÿó"Äæ ù¡¸LDq":0wí‘€Èâp)r¼t®r,¯w*×¥H¬ >r}z«»üø"ë€Zãˆÿó Äæ +ØʘfNpWèywt€¤–]’Ën">¿ÇQH}(¬Ö=où¨˜¦Œ‚ÿó Äá ±¸LŠq¿-@ÀŽ%Ú±zIBˆ(jt{›€.„JO²ßúo?t1µqÆÿó ÄãÀŽ˜(NZN¡yφñÐÏÀ¹ûc™xzX¼’#æED˜ „*4–PI5/æÿó"Äç +@Ö”xMp Sè6šÈãÁ`Å‹·ú4ÂçNø\Ð@³A@#I¡sxó<+ÿó Äæ ÀÖªxLÊpRœìáÛ£~ŸÌ:'ÿP PN7¯=Õ)Ѳ&Âmê3$QÛûÿó Äæ È’¸NL•wÚÚ¨˜I¿ÃÀ €çhM¢3³ÙÂl b*GÙÿÔ@˜ÿó Äåè’šXNNL<ßýFÿÿà €-¢G€ÃM^W@̸B‚ㄸ¾yLèÖ‡¢Gš!ÿó Äè +PÚ¸KNpÿùÁÿÿǜєQÈtHs°ãŠ@J¥r@ªìÕþx¹ÿòÿó"Äå ñ²XcNp¡ÿáÀÐ-ÃàŠö®aZVàQþ’·ÌyÍ÷ÿûï 7§Kÿó ÄÙ芪X6 +L,ÿøФ Àô¦„É“A-Ê3† + å&3í,ˆ)ÈÚŸèÿó ÄܘƘxM +p +ßÃ`¼2û$„Cé‘èJO_°Ìd€*Aœ´-ó¶êÞe̳Ïzýd|ÿó Äà •LŠqNn%±ö©–ãõõÂP2‚ÀÀ„…*™ n¸dCEÓ¤¯Ù@ðÿó"Äâ 1ŒðMq¥7þ¶¨ÿéqPN  œ8Ó†"„(Ò¥xúÈ/B²/sgþt#m ÿó ÄåàÎ4Îp….Oí‘h@ë)=>^»Þê­HÙ¿-Ãïuïg:ÔØÎËŽÿó Äè +a +ˆxfŠqŽ:-ûf€‰£ÅÀÚgbé¡¿°²ˆhÆ‘‰‹µjBªá3|ïÑÿó Äå Æ4Äpê[öB`¶€ƒ¹ÀƒÓ=#”)Y~¥€ÀM™Û®Ú +¯ù¬û!ÿó"Äç ˆÚf–pz–üÔˆNÀ0ˆÚ‰®ô^£JpÛSžßÝî9ç®~]ÀÙô?ÿó ÄààÚ”ÚpQú~°ÿðÞ`§Õg#hŠ@ÍH”bK¢R#ýþþªÐ]œ‡ûÿó Äã ŽªxLÎL½g†åL9EÄÓj»‡ÿ ¬^Ï#À€öý+«Ô¹é €1D™Pÿó Äæ ÐŽ‘°NL¤±U-xümõGyáßü£}g>!ÄàkAÁíJ´ + [5D;›±ÿó"Äå XÖ¢XMp¯Æ¤>¹Ü,Q¾¼£ùoÊ€µP&Êh€äJOúD‹%ò¤FùÌÿó Äç ¨ÖžX4Npg¥x;*zZoþ‚,²Å„’zƒh²:ŠÌ„U••ßãG'ž!ÿó Äç àÚ|6ÚpÄCY[$>§ü¨ñÎ0-aâ5Qÿ“m !68#5•£öŸˆ•ÿÿó Äæ~pµ>§ü°ƒêÀÒ–Ò&y§pIIƒÇ›æ.›t­ÄÏcù±Ãÿó"ÄÔ Ö˜dNpX fGÏý` J 0†bìÒRR Ð]bǼ¼Žµ=¦áàA“_ÿó ÄÙ ™¨3Npþ ð +ðÛR" ¦&kWCUÇ¥øKDq²áÉ€­€m€Ñ’5 +&FB¼EÈA¬ %çKo@¼pùaÿìÕeÿó ÄÛ ¾‘PNNL?©•J–R ÐÚþiª/(àäž86ôÅMfÜ–,€EáÓÆ»^¤ÿó ÄÝ ¡øL„pÔHjåú§ýÿõj€¤ ÎpQ똺,”Ò+†P¸=µ¶Qšÿó"Äß ¾•XLJL$ÿéût?ôoÿA½@Ô€X$) 1+føê +q8ÌMªz˜?~eÿó Äâ ¾‘X6L¿¿£8SÿøÅ + d<ÄŠÊ¿Ttyq|{zå¹zUúÿó Ää ‚6FH“Ó?ä@Œ€ $l>*"]Ã~Y[„z‘Õ¶­G‰­óŸ1¶öÿó Äæ ®XKTqÿÿ〈 ::O‘JåTÙ8F‚46vÑZ5·3kA½ÿó"ÄÜ Q¡˜LDpÿ¨­rê°ʸD̖ɤÂÑAZ$—àú²÷{µDÿó ÄÞ ˜4Äp1Ò¤T…ê{—1€C,¾€\P +ÇÓŽ&:þ«¡å9·Qÿó Äà ªX3Jq~ƒ¾¡ßû8¾é0Ö€xïx^ Wh ±äa+s¸Î¢4wÜ¥0”ÿó Äã âžXL„p:þ©Æ„ŸÐÿXð +Ð$€ibB×ïvj$)9VšïyHâ½ß¿ÿó"Äå IšXLDqøïõ˜É€d +9P=‹º¥¨6ç¡~»¡íNÇ[\£ÐÚê ¬Ž‰üF½ÿó Äç +â’XLDpRH€)@oBr—É›=E5 ¾HFAü”"’ +5, (óëׂ={øµ´ÿó Äåøæ–84„pÑã_é‚‚X +ÎÐkȈ®ù +@X kK ž`1ãZ¹ø¿ñKÿó Äè  îp{pé£Æ¿ÒîÄýàvƒ†ØÔ^!Úã7#b…\“)@êOO„~þƒgt÷ÿó"Äà (¾X2ÊL¨ÿ‘ô€„3àf‚ué;äÕ‹ P8ú"ˆ)ŠìqÖ4ÕI$hQÿò[úÿó Äã bÊpe_ìò`O¸w…j‚ÀKØý%Œé5Õ4ï@ÁôfVSqm©¿©ÿó Äå莩¸{L'×òÎã@ƒ¾ê£5a"7‘“ª…ûHèÒÆÀX¾Îºd~!بÿó Äè +î˜X{Jpµ¼8À6Àz•j—éêÈ>"HñIçÃ*¾>è>²3ÿãú_|ÿó"Äç +`îzÊp>l ×ú€@ü +à©k8ô{¬Å|I +þZ]˜yêÕÙƵ ÄþJ ÿó Äå î¤XaÊpÔH¯[Ó²€€°å+ÈcÛöF`Á@xÐN¥•êú—âõLdÿó Äç Øî˜X{NpëÝ €À›4Ô‘iBž^„[딂!0z”B¯‹û­§>o£ÄÐîÿó Äæ ÐÂ{ÔLÚ¶ê`æ~¤U¼3¢CRÜ܉lÀ5»á2øg/×>,»¢Žÿó ÄåøŽ˜ø{ÎL#PåàgIt„©Ù[uMÂøãð_é-w•2ˆðßÔÒˆgÑÿó"Äè +X¾œX{ÊMº£A6Ú¯àz̆9ó<âGJ°|èÙ*‰«¸ïŠáÅÿ_öÙGì‰ÿó Äæ + ÂœP{ÊLë&€—äW)#ñÏ!y,ø6XÐØ‹èg®úÆ7Ü ‹ %.²o‹†Å +ôŸ² >_ÿó Äåø®­˜zÊL*_©Ý`À$ G‰U‡a¬¤·Š:®PžSÂÌáÿèïöÿó Äè +8Žœ(Æ Luv†À€Àc +­FJ,i,„­EW"(%TË!dÿ2,2ý¿uíƒèÿó Äæ ÖµzÎpßíô„p ÀU¾%Šuj€Ë-J€aì/Xy¼Œ±/éýAŸßâ!ì{ÿó Äå Ú­øyÊp)£$¿ €F@Û^å8ž·#‡œhdµF™:³›: Äÿ¨» Åäÿó"Äç áB©ø{Dqã¼,rßЀ3àZ €p ‹Ti—””sÐõ$wÐ-ÿó Äç Ù>©øzŠq·þ£µ©ÀïP—*¤„Ag©’PôjF&”gü-þK#èÞUÿó Äæ +˜öÆXa„p¨ÿÊ€€"àe®¹5Š˜ë"Gjãpä O’ˆбŸ€í÷QL^úÿó Äâ îÎXIDpÆÙÖõÚ,À#]° +3;$`G à‰€RÔ[ŒÕ–¯ÆåÒeS¹•ÿó"Ää 8Ž¨0{ÖL ¡îOXh<&;&ðº®É3ÒÚc,(%©LÔ‚]Ü°‚©ñzm~8ë-ÿó Äç øî©xzÊpãtpO2ø_Ëv=„‚—|­´Ø¬€==_ÿ-@Õ²à8€Iëÿó Äæ ÙµøBŠp«¨eÉ@€ò*ëG«¯ëÆõÐ_Æûm¨g¿ñp ˜ÁΠ#‹Dÿó Äå ­PyÎqA1ìãzw~–Î?¤ûͳŠ|þo +?ÿA¿@ ²°9s<\§ÎyŠÿó"Äç +8ê©øyÊp ÐñBzr›ß¿(í¶2¾ ëÁú@ ZùÀ9Ñ"äËžŸ:Œxÿó Äæ ¨ö¾8IDpŒKYåó-n >èz{ˆ†þÿ ÂÈ©B¤FVa…ÝÜ¥Bñ‹ÿó Äæ©B ~r¦›Pœ=×zp§ýýGé/^Þ Y·Ð,£+ +¹7#‚àø|2,„ôgÿó ÄÎ !>ŸIÊq¶ÊÓ­~ »TT|ŠëÊ€‚¹'E»–¼÷–ÖÁèåƒâ+6¢’*ÿó"ÄÐ )¹3Äp×µ¯'A»csVË×ú€.Im¡ê$AüUÚÖ†Šz>fÞõ„W+³!âÿó ÄÓ ½¸J„pµêËÐGgwÖ*úe@€B®7FZ*M¶OÔ ±xq!ÒC5N?š¾•©4¶‰²ÿó Äå ºXZ„p¦Ÿí +ØÕ]•æm[«ŒÊe bÏ$¶$ÿó Äé +! +”8ÃÄqë-•u@í +Ò±¿Ôœ +*T™º±é$n +…òßÕ¤Á¹µ…-Yÿó Äç Ò¤P{DrGô€lÜ×U21·AM¡U¬ƒ1z%Ô}ðw>ÝJÏšBÿó Äç É +­¸zÄqíýºŠmùp€€íÀ§YM+ß«Å}“KA@Ñ„„{*'g¦mgÖ#—¦ÿó"Äæ àŠ©{ÄL ÐÑn`D|ÿºw +<Ž4W·5§@¨ +ˆâ€üóbvqÿ¦Y¼%ÿó Äæ ¨† P{ÊHŸ/A_è;ÿÔ‚Ð}Øzvµ¨­žXÀWp)# š ¿6(âAO ‡Â^VNXç3\ßÂß +ÿÇõîÿó Äç + + XzÄpª=ëý ‰|7¨ÓƒœQ+Y¢IèÃ9ˆR:-[Tõ_ûD²ÿó"Äæ +Ú”XzÊp‚_}ÐôÅ•‡N“%‰AnÄÚ[‘ea[T%¾õ•6&9¨Ç=3¾ÿó Äå Ú¡JDp·ëÇç0ŒÅí>Ñ(¸´Dm +Ôt6÷q5©^šów,f¯¦èùÄÿó Äç +Úœx{Dp*ã‚}-¸yL=O!ˆØ¤Š3\pôò(Ä"ûNj«p6ómWvÑ»ÿó Äæ ± XcDpƒù`€eÀ Ar>† 2ŠËƒ¿Qb +%!ab…}«j{‰}eÞ¢ÿó"Äæ ˜î¥¸zÄp ÛA¯0ßà~|²`›1al&ƒQ¸nr@ ¦¯:ÓŠG†ù¾¿oÿó Äç +ê˜x{DpVú/ +Ý@¨ +äõm8€ys©®Š"å∃Ànßêð|ƒðüîýÕ»Öÿó ÄåÀ’{ÎLýà['«˜ŒAM(CVjM ‹ÁñëoEÖ´M¸¾õÌ­Iÿó Äé +˜îœxzÎp·|ÿ@ÀîlÀ‡"Â\„X)£òN˜- „†k^U3†ooA¯‘ÿó"Äåàê¨xz„p·ƒeï“é ÿÙyl‡sÆáþ¤ð5‡„ð2¿¼Áé¸V¢’_ÿó Äé +xê{Dp“å@¿à_ †òH ›ìXÂâ @GpP +wm刼í÷·%ujòÿó Äæ ÙœX{Dp¿ ü²@¿ +ô’œ—ƒ 3XXÐ*.ø-õo»Üj üV^á!9ÿó Äå8’ PzDNÐºÝ €¼ +]¦œ(™VR«`„£v@¸*Æö¦Ýo:åà+ùÿó"Äë +¨î˜X|p5Ç%_¢ ;ɶB‘…îOÑ&Ÿºpä'}æŸ~(fX÷ï¬N:C@Rÿó Äè +@î˜z„p‰ôÏÕþ öÀ|5Äqç!’ë>YÛ²¸Cw¿ïW«ÃêÉänbÿó Äæ Ž x{DLü€¯ FÚe<±ÂZÂQZÄA¤[ Kà9Ý”½úKã?¯¨Gÿó Äè +œXyÄpì)t†€€&Ø +CR§È0*ªÌÙ ¸©d¾ÚÎ-kç‚zGáµbÿó"Äæ ˆŽ˜P{ÄNun䀀Ûk•gŠG&Ì,5›pVuÉI½}p­Ü/ëñè­ÿó Äç àÂŒPÃÊL—!ò@ øõqö\ñÛ7 +†piŸ•¾“¿«Þ$Ó•¸C²³’Ž&ÿó Äæ à’ˆ(ÆLËTúÀ +Ü ûDÅ…%³T–&е +nº/y·÷¸äÀíÿŽL‚ÿó Ä娎œX{ÄLË¥t²O¬€ßh*fV”Ž +Åmþ{,¡†yk÷‡iL¼ôâÿó"Äé +ÑX{Dp=‹W¶ž €><7Ÿ„Åž±NK`" †è',ëÊèÂ_ošøÍòÿó Äå Ž™{ÄL}@Å7Ù¼&éõm܇çiqEÍÍ’µš +"òu(j5B{kÿó Äç ˜¾”øÃÊLü¶þ°ü ö¤Hü +¡D9*FUäZÔ:ÌG0>F’ëRèuà±2ä¸Gÿó Äç ’”xÃÊLÉ=A!f¿ú€€®æ˜% ÏqY]É0E|¬ÚŽŒ˜Ý—YÑ‚Óÿó"Äç +0¾Œ8ÃÊL•¸[ßÒ ´ åNðà±$éc#B¶¢R€¸“ªiÌ„[Ç”%Z¶Ûúÿó Äæ àŽø{ÄLѳÖÕ ZÆ7±‚K¤Ð¹vh×ø­ÁÀ§ $¹åË¢{ðÔÿó Äå˜ÒÐyÊrâH‘ ø]¶ÂÒ[’»NÍsâ&ÅðÅ€|äù>hšµù¾„ÿó Äé + ¾|ÆNí4ÿHðûzs ´nÈ8ávfN— ¡³5cqPg­ªoÿó"Äç +’ŒP~L +·§ª/BÀ€à ]2plI7 çú—\Њ„ƒÕ®ôÑ?ý¯ÿó ÄäøŽp~JL ß ð +ѹÀ"˜—O´LÓ«+~ÙÛgHR¸Î;#Àfº¹Îð…ÿó Äç +¾€8~ŽL?Q0€—€5£‹Ò°©_–“9Ù5sêÃŒ,«ßÀûèµÿó Äæ ÀŽ„XÆŠL|ºfC?É?€€‚Ïð5&«8ÎÃ÷c<”tÖF3›‹”t8"â&©6‡èWê…dÿó Äæ ØÖ€P}qh×ç´Ë€€Ú¨ZAQDqxÀN“˜‡£\Ùih7Ò`¯ÿ½ÿó ÄåðÚdpF¿è€/à3äÂñÚµ:{Ï ¡g€T p&h…U[ç`¿Ò¢•DÑÿó Äè à’€P~ŠLúªþ:æFÉÉz¶_ð͇Àº‹Ÿ™dÛ‡!Ûëc¶vˆqÿó"Äç +˜Ž¸fMüh„ûëé pÉÎÈMªM1·9nY%æ<2(o\¿@“7ùÿó ÄäȆ•¸NHÜHmŸË€0kª|‰xÙ–²•åói”~Ž—•ùkˆÕü/=÷‘Sëÿó Äç +ʉep¨ µ¼Ñ¼ñN|†‚ìvП !P%ÀGBä +RpœÝÐé pP™ÿó Äå Ê’XLDpÛ,ªûtÏ{¿±ÆsX€ Œäè¶?%*Tr¡RÚI¸dË8ÄÄÿó"Äè ñ +‰eqÕ¾{C.×dॷðü +:e¸‰Àa,jzí}Þx‚àA6Ý×ï³Ìfìÿó Äè +@Âp0~DLŽ¨ÓÊ” +¨l1ÆXLEveA³À,ÔžEH«ìªá6÷¹Ûÿó Äæ ÈÂ|xfJLPù`€Ž&(`¨2°"UuÓ5gФÀà-³-n…—€Çÿó ÄåŠ|ÐfNNÿÚ¼¿úÀ - +/€*6ÕZ]dTˆú΀ÙÜERd®º’Ô¨m¿ÿó"Äì +hÚ€P|˜r½ÍÆ@HP¯€60lâ*kÛ±l @ B.qFA;¢ö]øþù“ÿó ÄÞðŽ„ÈfM—¡µª £à°„!‡€ä‚ +K!ˆ ®¶EQP ¶QÎnÿó Äá ’€PN”LXpÚ™ëQ$',d¤ÉœåPâÏpì‡ò`T—æ¦21)y =ÿó ÄäàÚx5 +p(‰ÝN*€€Õ€ãn*òh‘P* +0½«76gdÔÏæRÿÿó Äç +Ú¸MpÕ2Ýõ` ;À +:/#ÔþW5L³mѸp±ÙÐÓ~U>¤ÿó"Äå PÖ…Mq©Èü<`âƒrªð[9ŽE~Qfµ¤œ‚=Ä$ó:±Õ}:poØÿó Äç +Ú}¸Mp*(+ü¨`â®.ˆÑ#²Ûk8@Á£>‚-H“d›oœ…ýÿó ÄåpNšX2p$žÿþ0ÿ꼦d U5 +†”ØwÚ°møòÆ*I/æìýÿó Äê +¸Ž|È~FL[ÿønú@€+躉Âsw¾0qg;ö€W&ô´ì¯òë“÷ÿó"Äæ +ʉ¸Mp³×\™@÷@`#/‡ÙCÈʃ€ñ2äÀÆu×/·¶Ø÷óbæÿó Äåø†…NHØÛ²`.Ì¡™,Z‡\W}fÕ¡C‘ÎiÕs@d±ª`ù=›ë,pJÿó Äè +(’lxfÆLéPu9²Nú`@²‚ Ù%žÅ~g(UqÔàß=Øöíò°·$ÿó Äæ ± +xxLÊqõ¹¥ý@ ‹hàbŠÂ'Ó¥kgÔ +Î=è—Wµ¬±ÿþw7 þÿó"Äæ +txepý8¢ý`è€û€’`©„¼öZŒE0ħ4 +´ªôݺÿó Äå°ÊydÄq1A ÿX hb‡4['G˘ó#äé.ÃÀòøÈ—‘K_ë„íOÿó Äé +X’lf–L£DÃ?¨€c°™œØ9OuìË÷07)¼ c3ÅÆ;‹I5½&ª½ÿó Äæ +P’€(fPN{ÿÊÿPMhÓ€5QøQâQB+nh(ú!ƨ¢Ñ$É3!ÐÜÁßåÿó"Äã ’‰¸FNLc·˜[ý@“POm€·^jbJ +¥1°Â€!‰­@âìÃ[tªóðÒÿó Äæ ˜ÊˆxNJp[¸ÿýôÛÌUïc¬ã@ä—(qœL¿†óðÜÀ”“dVlÿó Äæ ¨Ú‰¸5p … ƒÕ šú)EA×™hŽÿû¾°ŒõABt™ƒÓnw %ÿó Äæ °Úxxep½1‡¿¯(_(^³9Ÿžù@ÿð4DÔ„¨÷võˆÖ#¢"&ÿó"Äæ èÚpðepGÀµÎø‚efQZ±jO}Û9pªƒ„ª•†³Wx$qg¨^q¥ØÃÿó Äæ ˜Ú}¸M +p?L$žXÎ4×Ûû¾€Ì®&–•^UiåÊ䧡d%äš“cæbÿó Ä檒XÆL°Ê'Êõ.ŠjÔð¶ÐiyÞyaK˜íÇ“Y„À©$c©RU²ÿó ÄÒ ¦²XKJL¥*{꥿¿èÐ  ”Õ@äÑد +–&Ú9.S_ÿƒao«‘&ÿó"ÄÔàn„xN(´fNÚÀàÀº´3ð–_JPë™…ã$ZDéÏ­)ûH¢ætÆÿó ÄØ n‰¸N(Bêu£Ù$yZJ§Ðà»`ʨΠJ-¹0^ +É€OÉñßÆnÀÿó ÄÚ žxPN +N¢Yû}G_õ¹ &¥2hp¬õëÔQ"V¢K™0AèZaqÆã&ºƒÿó ÄÞø¦tPNNLä¶[¨ïëØ ˆøy¢ïždbŒU‚Ì·D#ݪÛïyÞwþ3?Ï«þÿó"Äá @n¸N$(ÿøOù {"Uç1)Ä7„¿%PwT8÷UÞ`Ë,»¯•kàX{ü[!äÿó ÄäТ‰¸N +Lç½b`¢îc‡c5•'³¸2)ƒC +|¬g&Ûá[%: L‡ÿó Äç ¸¾‰fL†ÖÔx¨L!–jöv¤Bºg)Mûm)ÙNC´w2Õ¼Ìv*ûf¼õÿÿó Äß •˜LŠLœOÿñ@#ÀhðKJ$F܆»°¼pçrnQw‚ӳċ«ÿó"ÄáÀ‚€fTJ!ÎÿÅ^ ÇÐ0Ķ€9iŒä"›OÓ ë€K¾-«8óBå·ÿó Äæ àþ|8NŠp†0ñJŠ­ÂPíþT€ŽŒ©ö` IyG‹~pq~ƒ«{¹—~Ô`ÿó Äå †|NVH™éʶÛw'îú€@1^@ +¬RnÅ9öîÒp¬ÑÒ5_§pžPÿó Äç è¾xNJL`VF³Ùôþ<µÈ¾Y&TЬeD©"ëoZÉ7ôÛo¾ÿó"Äæ à¾t~”Nÿþ¢€¼ƒCª£Á¥C2šzføü¢ R2^¯ßùªT€”lÖ·¿ÿó Äæ +8Â|°NDL(GNÿ¬€ ð&ÈÚâcñü¡c'²“EåÜÿÑÓŒ'o=.éÿó Ää +𒙸NLëòooè`t“du&©¬S?&.dH¯Idoµw®(žq ÓÔÿó Äß ¾ˆøNLšÎ=ò@€ð%C¨Àù¡,;,¿<æÄy7¦˜Ïõ”LEƒñí? ÿó"Äá rNH‰ —GéÎne/ЛD"B Jƒš +FÙ(–`% àMûJQ25-ÿó Ää‘ŒPMs¬£ 3Žn´ô†EÃÊÑo/y½¡À­1˜m‘~õº¬UŸ~Pø<¾ÿó Äè +0¾tPNTLp6ßv­s>–Ü + Öžë<í?àÄ¥• ÛE­B”ßø¸¿È€ÿó Äæ ÀÂpðN”L €6‰r‚ñ•w‹ïB|w–ZFt È‚Oð;Ðöÿ¨Èÿó"Äæ ˜ry¸NPH0 ‡€y +‡ìÀh½%¡Br&“¡1ð wOÀõÿÇù€œÂÿó Äç +’tðNVL +¨&j&}Iáp#©Ia´y¿@·þ¥¿ô/ôáƒäò‰Öÿó Äæ0òpÖžpÒ1pvfÉp°e-<ˆ„˜¸ûëÿá?ý©üƒþ€‚„x +ÀCÿó ÄÈ +ˆî­¸zTp\o'=›…„hN ŠŒ%ËUŸôøøÿãÿè?ÉÌ2nBxôTNÿó"ÄÄ 0ê¸{Jp{°“£a›ˆý±QP×ûçþoúŠQ¿Çý`Ì0 wªËŽžš]8YUÿó ÄÇ î¦XaÄp. SDÒaÊ¢;ÆæÜü!ÿÐþUþ¢…ä©Kõ.îTæP_NÄÿó ÄÉ îœxzŽp…AÒÆm¹@Þi‡·òêòHÀ Ð%áô^þ¯è +ÕY¾±ÿó ÄË î xzJpW8Ñ¢ ;ñ÷x·Éý Áßò ûQ–Š8¨AÀ½,#%Üÿó ÄÍ îzpÜFþ¼ëâ_ÿªü;ý ¡ ä¢~j;‰°–Í¡`Ê' ˜XLÿó"ÄÏ ò”XzÊpõê¦øoýßàÜÀv»D‡U³EP`Ôñ Ë5Gínö…äÕh|5ÿó ÄÒ î”XÂÎp_-Äÿü¿É€„0Sñghi” éè Y‰¡½ %Ó‡ªgÍ·†üÿÿó ÄÔ¨¾˜x{ÎLRSü€jªçW«¡#Se +qiÂ4Æœ‡‹8ô?ù^À,wD~ ßÿó ÄØØŽ¸cÎLôúÜc¨À[¨‡x£‹EnDýt:µžÖ›I›gX_=Àÿó"ÄÛ îœxzpôõ»ÔH3àj<‡¯:“Cûb+Â6-æîÅVý¹,Ç,~^2®58Kâÿó ÄÞðî˜xyÄqe58kâ©?ÙÅFÄ ‡c#]+<¯f¥ìCFT‡ÿã}ÿó Äá ¾XÆL †ØжùB7'ôŹXš©ÆÚÍœ!¬õ-Faã +áϯÿó Äã¨ê”PzÄs¦ŒI¡”…Ø ýYŸåcÀ¡±U7!R¶M¶0ß{²5Z5(ÿó"Äç +0ˆXÆ +L}>?æ6d€¬¶-7ik|!{AÀ¿ÆÜÙ(„|ûèÆP¶­øÝx“ÿó Äæ xÂŒXÆLä4ä€sz«”¡Ä‰¤TRÁR +sK´ö«ð!„]JtÐÿó Äç + ŽˆXÆ +LOŽù +9 ¡çàw +ø}Éóp@$è@¡‰äÿó Äæ +’8ÃL¢C‘ á–£qBd_<{c/€¹ÐEµ»R6ߧyW”p”ªøî\ÿó"Äå (Ž8ÆLôHŸëÈ€€€çà×× +ú°\Å8_«SDÀz5Iõyƒøðп´ÿó Äè +’”XËÊL¨½­E@ŒxÕ)$ú€ÀŸ`ê3œ +C¥bRý˜pÎu3|£"ÿó Äæ ˜ŽÃÆLxy¿R{ac½=@À;¹Êu¹( vi˜¨ô+Q@ ݥϤdØïÿó Äæ À®XÃÄMà/ôÞØÑÀ ?øµÉ µ„Ó5 U„±P¨›œ!ëõžKòŸºÿó"Äæ +¾XËÄL÷ÇC´ýÀÀr‚R •|‚!ÁÍ€4ÓU¡ÍI-?ðü[ßÿó Äæ ˆŽŒ0ÃÎNŽï3u`€/;”Õ l jÖˆ)Ûj邺j4d;µ¤ÔÊ{pûÿó Äæ PÚ¥{Np(þ7yÀòš£%w–"Ÿ®Ũ¬„4É‚róM¨ŸA_è'ÿó Äß Ú­˜ÁÊpú +¥@€ ¸pµ!7#a°ø&¯ÍbH“%A×Vï®UÑü¯ü}­ÿó"Äá Ö˜ÂÊq‚¦ðMÖ€(Am€ü)¬É%«ê0˜OzF„<}o fÀ‹GdÁY³Þÿó Ää Öª8{Np›3K¨~?ÿä묥KEÈ +i_ÄÆ!Ȉ’4Ï–µ\¥ÿó Äæ ˜ÚXÂÊpEÖRLs\ >{S;?ð#ÿl[ÿù0€ +'0=Ül¯ŒvÌ;>ULÿó Äæ àÚ˜ØÃDpÈPZŠGS6ÃÍýj)ÿ mܘ€ FS¦;…଀:O4—Œÿó"Äå Ö™XÃDp>m˜2æ“ÿ„Þ…ô +ò ‚ †år©ˆ”~›±aŸdá6iXÿó Äè +8ú¢zÄp’¬«|(ÿÒƒ>åä@À€7YÎåÄa¼ïk(%ŒJŽh™ÿó Äæ¦XÃqŠƒ+;ñmý´ÿÁ?Ô 0°|ê:9^vhAiTÁr~I”Ìnÿó ÄÓ î¨PzÊp߀¿þ5ÿÁ?È )•-óeP¥fXp(:P}ÜÉ@ÏÁ¾ÿó"ÄÕ (yÊp{ÿ‚ € !MÀ–Kص¢º‘}ÌÀx&û®‚yËñ ýé¿y˜Ÿûbÿó ÄØ î­˜Z +pÝ”ïÐ6™&vúœ>.àòî¤,!T› ¦‰ÒH˜²I!8Ûÿó ÄÚ î¤øzŽp¯£Š +ÛÊ-ñtN$~­ü0ÀDÝ¡#Šà|€c«‰À'GÑQÿó ÄÜøê­¸yÄpé%@û¿Ó‚nø?¿ßñöô€† + +¬¢=$T.Ü:ˆ+E3E:d×ÿó"Äß îª8z„pœ£¡Oèß¿ßÿ¨ûzP$kÓP:fä7M—‰ÊBjÏYçjÐÌe­)ÿó Äâpî®yÄpÃõê}Ë9òÀ.p Kc´vFyT€ žbaõ´ò+^çÞÿÿó Äç 9B²Xc +qÏè^È?îùPBƒ¼òE@…F(ü—ÁàEÚšU´ë$¥ž[|÷ôÿó ÄÝ +™B¹˜KJqF¦ý@a™t`($´_Æ5/€œ-™jÎ-%ž–_Réü(ÿSzÿó"ÄÙ ¨PKDpêßAÿXƒˆ +·=j[“s£:3 e„ø'©&}H×*¬Ä¶½úòûx!ÿó ÄÜѵKDpòZÙõÁ–~Ü H\èqœ/Îâ †d-–¥h^…éÁ9i‹àÿó Äß ¾¹¸JÄL‡û~7åÀÞàn ×Ôçqê…h#ÓÔöeÞLÑM4Ûá_ßÑþßÿó Äá Ö±cDpA} a¾xF³aúo†¢Þ²D#æxŸ[)ؤÚÊÝøa»ïÿó ÄãØÖ°xKDpèÿo¨û9`ÀkØJxÜO!xTõcqQ:yI­ +OsÚÐíãsb=?ÿó"Äæ ©¨xdDpmµúÀ +ÜR´JA`Ž.«°–È ÒEji-O)·-tàÙ&…^ÿó Äç ÈÖ˜8|ÄpÿâPDÓ€n +…î‡2èFé ÓaÁ°ÙŸDåèTº¨âò¼«§ÿó Äæ Ñ­KDpÓ‘úý`*` +µ^XT`”Gæzˆ°®\%–ôn¬Äþ£üw›déÿó Äå ¤XcJpÿñÀÄÀHÄ´ØGI`4W(X¶ïå~Ž¢mu•»¶ +ûmÿó"Äç +aœX|„péûmƒ9ô€Ø”Ý‹Z¦ ]+´À `/Da©Â랥Ç䳨U/Qÿ:ÿó Äå ©dpôÿøÀØ WÓŒ­–Bà>e™*È’PE‚þžÙËÙ»U‡0¤’Êr‰®²œòÝåoÏÔ7Úÿó Äæ É +¡x{Dq£Ï䥀ƒ`2ž¬ÍßúÖ—Í ÎH@+[ŽbN’ÍÏdöjÞa^¾'êÿó"Äå @Ö¥x{DpŠ9WÖèhÀÀ~Å0Hj†–—ȧ+îG´M]Qÿ OÜ}“òÿó Äè +`Ö˜¸ÃÄp:WfÚÀÀ`¥š¤B†Ù.ô¢¿- ¼#5¿þ‘ò>ÖuÖü7Jÿó ÄåøÖ PÃÄqÞl¸€s5+Šñ5§e!¯¨ÄTs†Ÿ*KÛ7y¨“P <þjv}Eÿó Äè +`Úœ¸ÊÊp:çpÜIP€J«ÕEÇ’±}´êŸ-É8àW1Lþþm°¤ï[¶ÿó"Äå PÚ±¸Â„pGÐWFÍ2€À¿ÀžO¡ˆ³{,Àĉ†@`û°ä[[0Rj*„$Ñÿó Äç ðÖ¤¸ËDpG׆ê€rjú×f!˜Õšô*Â@ÂŒºeÎu2 ›#`ßPÿó Äæ j¡f(ßÁ9»$@Àöp›ísm•ªËº¤€¢›:M­™”ûöþÿó Äæ h²©˜~ +LNÔn8€öà +;# N€à`™<$<É)¯–x>‡šœÎÐEÿó"Äç +(²œØ~ŠL©ÇôDÀÀnf×R +IÑ"®:X­¬¼iC–â‘ÿ°øW}ëôñô)ÿó Äæ ز¦X~ +LÁ¶Ñ}ÀÝ߀:F(W"f mæÊWÚXÚþFÊï])ªu©ÌÉÿó Äå €†©~HI€ÀÀ/ŶT¦Ð\Û^¦§ÀÒ$Øã"ŠÊm˜ízòtÿó Äæ ÐÒ²XÃDp÷¦¯Q€7—zHdÑCm†8)ÐÐE„ZŸ›  Ýä ã(\9 ÿó"Äå ) +­˜{DqKÿè;h`V˜ƒ=xz¨#âˆ"úþ¢ÎYŸuó +à´ûÍãÌl¨ªBâÿó Äè ز©LDLcƒûÔäÖ›¸s™”JZ¼ÚŠa„U†Î–ƒ ~–üª_‹í†Í€ç6ÿó Äç +²¡˜~DL‘P.QÇ{}4€À&ÀàfQh2i¥ž Å8c +ÕïOÔ´g`ÿó Ä刲µ¸KÄL›>•ùó¾&“Á €:"à´XŒ + ÐJÈ€*ÙŸ¾(Ô‹+ÿó"Äé +Ñ +™˜ÄÄq­ä=@Jàí0ƒGœŠ´.Ž…˜®è”TdIÒßZ‹ßŸPƒ¨Óÿó ÄåÀj˜(~V*öÿ·M Pùù`QÖç"èð0iåª6ûðîU°°*u“AŽ#ÿó Äé +`¶ xfL–tzdð-Ê䥊ÚþÆæ„b• Á—`º"±ØrD¹írmÝ7ÿó Äæ HŠŒÆŒLý_< €Ø†Æ3P‡¢!q;ˆ0€à4X9®xQwM|⊠ÿcÔ—ýÿó"Äß r¥˜~H]¨ÿêÍAÀ,g¸ô5,œ¢ !Ue¸°ß­V»ùëSPIÿgl7­ÿó Äã˜jµKÊ(ÉôI€U°X§nlÕá—ØjWÊy +`:X¬*Ùþ¶8¯3å¦_øÿó Äç ± x|q7'Ä2@Q¸ø&&¹æñÎãv(~ˆpJøë˜VêàáX…K“ësÿó Äç +¢œx~ +LrvH­¡U=à« ±,I†Á­v£ÏVõKÇ«l^øŸÿó Äå ª xfLc¾JAøYE* W¯£‰Ë§bâa#bŽ‰S)ýnh©í ÛÑÿöÿó Äç ØÒ”xÄDpÇÄp +@6OSœÉ^ñ¢ŽÆ°û,€²L +Äâ·õ›—æ àÓZ¿ÿó Äæ Hr˜x{ÄHë£c²™< +ØÙY+§X{’¤º‡ðefDný±ÑÒº.¹ÿó"Äç +‚0~ +J7é•ü A*a9Br:+¿©},Hx› u÷ßß +ªœ[Ÿñß­VÅÿó Äç +ªX~ Lð#Øs’°Ò +™™dR¬þ.å,Ê;æašY—LEÕ¼Ûxÿó Äæ hŽ”ÃÎNÍ‘Yø·ÏPOáA€€&ø µ°GUocˆJÎy,rxSÍ_—äÿó"Äç +Ž™XÃÊLq‚»øPëÿ?Ô{•X–Øâå…Ë +Š‹ßÄ+`_ÅàrÝ¢IrêíËÿó Äç +”{Dpþ Î áà1)aIð +ií@ 8V<` +/¯4uŒ;ËòT ø'þÿó Äå ŽœX{ÄL®«É€(ŒÅ‘ÉDÈ?·‚5‘ÆBvÎêäÂÓ3Š~Ÿ\3ÿó Äè ÀÚ¤xzÒpøÁýNìë ÕŽ¿«Q„À´BªÇ‰ÁböâdÍ^¡™%:/Âýÿó"ÄÜÈÚ©˜zŠq(úä€^üd±rðÏì`òDa0Ë1 GÔ?2)­¸Ï®þ?ÿó ÄàøÖ±zŠpøÖ¾·r €Ø¬5ónh÷’¿|tÄt’ÀŒɆŒc=Ë:zõvéÿó Äã Ò „p(O$„ŸÁ€ÀÉÀæÎ –¨~õØX]ÁâˆË]Wùf‹÷¬nÿó Äæ ˆú 0z„r~±_ñý`ÀIГÅâרø1vÇÆ#ñ‚"Ò °¼kó¬ê¿Ûô?ÿó"Äæ +ÖX{JpøÿOH€[Xìõ~øgžj#6÷6±ñƒŸ/ƒïzáRæ#Ã'×ÿó Äæ Ú˜¸ÃDpäºßÓÖ€#˜—ÍiæøÑE>L+–?’L@‚‘Écd}ëÛ}Ú3~ÿó Äæ Øúœ¸ÃJp +ºŸÌõÀ²€2¾žÇ!øìci`@¢–ó‡Òü#öt_ãÿó Äå +ö¬øzÄqGy(€I^à½nU‡tTj»b,™|e+ .ŠMyaÑ‚Ÿåÿÿó"Äã XÖµ˜cÊp©oåŠú ×=%hžéŒÍï0%À(æfÍMéj©ÃþE7=¨ÿó ÄåèÚ­˜dÊp7À lŒ´~ +¡xwJÔ•´Z\:ÐÃÌŠXj~–ÆYÔßïÿó Äè +8²˜¸~L©‡Š™ÌIÈí¼åvÿÿò™J”9éز ä€Ë'Ñç*+ZÓZÿó Äæ ÈÖ¥}pÓD• ¤976»¤¿Èïî¤Á.ÿ× +¨œL‘6odxÿó"Äå 8Ú¥¸cJpápWÀ +C"nHª­‘íýôÔ»þ(NˆDÇ#ÅP¹± ž@/ÿó Äè +Pú™˜}p¼¨ñ­Zß惂ùéÿôÔÀã€9 +BQ·AŒ’:_ £ÿó ÄåÀÚ±¸KDpkêZ/ó)þfRSQÿÈ€ Šš¤÷Š¥Qä°) /r,ÿó ÄéY•˜~Lp¥©u?ɲ³ûP¾ +ÿÈ€¤Šhµ8· )ê2@7`‚CÂÿó"ÄÒ I +©¸Lq>§ùhtú>ú' „,Úb‘#HŒÙp²O‰°°/"_>´õ)ÿó ÄÔàÊ xLÄp?&€%Îwú(Àˆè¦3Rs kD£9:%ÀiÔÜGÄòI=_“%ÿó Ä×ù +œxLÄq‚d7ÿËr,¹æW +ñY™]Àµ€i ŽCJÆ®‹íóæ€+ßÿÿó ÄÚ Î¥¸KDp–cþ°ïC㬆Z>áù±iËäè  jDsÙ¢€i-³'5Pÿó"ÄÜ HÆžXMp¶ŸþBù +Ž­À¡5G„áÍcº­ˆ€P“'§mqU*‡@û˯Sÿó ÄÞðÊšXLpÑúaà ô)¸èKEÙ×媒ó*‘~çðÞ=ýåßæõq€‘ëõùÿó Äá ØÊ¥LÄq|·æᰀȲ2)-S¨²…7|ú†¨^€E|65JôéÀ»Sµõ©ÿó Äà€Î dÎqvBß­ê€CïÀ€SŒpvΗ[€4*_SýJþŽ¬Ó¥Iÿó"Äå ÊœPMp8˜µ>’ÞŸ>Ò±|“¹­m‰½âŽ4À[Å^¾Ýx™¿Ïåïô•÷ÿó Äè +I˜xMq–$2Oî +px¨ +äãâ&´å2Å[ITpŘÀ0©XÓ£`Áÿó Äå Žœx6NL•Ùاý@„€Î€:ÂT! +2Yª}2Í®üÒÑ£­ÑoÉù?oÁÿó Äç àÖ”x^p=?‡€ ˆ펤š„Ç·ï M* ”´N”R½õŽ +ùÿó Äæ ÀÚ™¸]pêa{þ° Là4U”¤ ÙMÒ³†! ŽÃ 8W+3ÿ¨u@_‰2òÿó"Äæ +ÖžX4NpE¿¬3Hà€À€ŒuìÍ0ÿ<8›& 2EÏ ·¿ë!ìü¯ÿó Äæ +h’ˆ~˜M£”kÿP¦3ÂÒ”R3D­:¤XTP/ù©¡:ÿù?É£ÿó Äã ’NLpcSøxàÃðAÁÀhóüZj)ƒ@ñ ŠEBLÝÿPÖfþE3ÿó Äå ƸL„pÑ¿ÁF—¿Ø“ê«|¹iì K4°"a  +L9c¨ðR&tŽìíÿó"Äç àÊŒxe +p¤RÖ¯¢¿÷)XyÂ&fãd¬9&Þ¾¯S™&»WÔͤ£l±³Mÿó Äç èΑ8LÊp +AƲj$Ò3"°CNnú-££:ký~Ôÿ¤@@ 9mB¸ƶÿó Äæ ¨Ê¸M +pY÷‘¶°*\ÞJ«éìÉèlÌù?úÀŠÈ‡‘@m—$²Ò‚Ôÿó Äæ °Î¸}pbà0Ì/Ò³;¤ :×ßú:)õ( +"Z%G"v1|”™ÿó"Äæ +Α¸4Äpx1€u ‰ÌŸ0©Ú¿²ƒ¦ßúÞwý XÔA…„b*¶Ö¤CBÿó ÄæÚxÆžpÂ/f¦Æ¯ÿ¥ÿúe^'-þ°¯0£þç<àÂÎEÛl™0(@ ÿó ÄÍðÚºXKDpëgoÑŠ÷HÐOõÛSÄ1PÈŒåÏpÓ&T0žùƒ&F1Îÿó ÄÐ ’”ðN”Lu)±§ÕˆÞY^·S•Îâ ¿yŸB>éàÇí@L¡DØÑऑÿó"ÄÒ HÚ”xLÔpA0Y.¢ÀsüNä Úëâ+ˆ}nú€€6A!‚vÎlÍá‘äBZ2&‹Yÿó ÄÔ ÒŒPMp66ß +_Iû5Põû)¨š@ÿó Äå †¸NH H€þ¶ „Hl}2 •!ÍéÆ.aŒ¯]kãJ¡# ½õÿó"Äç +`€NŽL+YX÷Dôþ€Ä+𡜈š/—7Jñ ²BµžÞþ¼˜e.œ¿¿ÿó Äåà~x6H­ÉïL€@ƒ¸Æ ¢âeIwVíC†Z«Àå»o7û^8 +š”ÿ°Ñ ÿó Äè +Xþˆ¸LÊp¹:©ˆÀD ‚ËéÆ™ŸmF"æÌ—ìpRµí†\î¿óÂûÞYOÿÄßÿó Äå ÖXMpOú7 YÀ² +f!·¦zÅ4fŒÈ‹+'¤&‡ùUøäøxÞÿó"Äç +0™¸6LBëÛ¤€nó€QúÉÁt”Ô²d +:Ä3‡ó§s”€{ÿú‹i¹ÿó Äæ +`–XKÊLrJjÝÖàUüç20ˆ+8Z:C‡Œ»¸XªïGÞÙ†2{ymÿó Äãè˜NL·d¯»b€¨ý€ +€áOgØMxüóù)ÖÚ¥µÌK i‡òÿó Äæ ÂŒøN +Lo¿@Ú€0®m€‹K["–)ZâØ—ñåHÀ +ÕCú$í‘ɲ4ðQ°ÿó"Äæ ‘„8Nq1ÿ´',Lj×ÇmÏ£ +@»5¨ñÐœÏøû€´h¶Z¶•Æc@øÿó Äç p~xNŽHåY0Õ <íin¾”åìÎb€ö§ù©þ°ƒt0&&àž¨ÿó Äè +8¾˜N +LL辚¶|vF²€Þf‘úù¤Œ;€g‡t +˜hÝ9ŇÀvÿó Äæ оxXFŽLXlOìçaßïYê¡žÿÿó ÄÙøŽ”X{ÚLïüý€hÀ¦c•‰dÁE8Ò‘AÄ—k‰'£åK»0ÊYŠÛÿó ÄÜ î xzÄpñÿ[ý`À}~a:&æú3E¸2À Cd1ì4T·u|ù¿õO·ÿó ÄÞо˜X{ÎLƒz:À€øë½ +6¤Ëý†MÒŒ2J°¼är¦\×ÊÿÿÆ®ÿó ÄáøŽ”X{ÐLÜôu€Àon+IXV“˜D½ô€= +“tij{4JxƒAcuRqèÿó"Ää Hî˜xyÊpQúµ½Öü¯C÷‘ƒ¯*(šõ¥ÀD!D˜-g“÷YM~YÇoü}ÿó Äæ ˜î˜xzDp¾èRºÀ¿àyE=HâÌAŸT6‘&:zcÝýê4£è^_þ#Ößÿó Äæ ؘx~ +L“ÞªŠ*§Ð±v¹øŽ‹`Ä«ø•y‚.·¶û¬I?øsþÿеtWÿó Äå ê˜XzÄp裹Ù0ü;sþ7Ë"ƶÃ:¼ â0ew;¤™ï¼ èQª¢Ú„Ïÿÿó"Äç +ò”xÂÄpòèùÛëÇÒˆ +{ð nç7@u +=!L{ÇÏÙLãN¢³†ý<ÿó Äæ ¸’”X{ÊLùL[ý9À6~Ôrª¼-oÌ)ç°…¸²XCf”ò§ÕFfGÀfÛÿó Äæ ÐêŒÃDp»wõÔÜYòš.“Ît¶J+’F‹ÀÛ¼ðÖµƒ›×w9×±¿ÿó Ä倾˜X{ÄL²£õ:×z€ ƒÿ÷7 S¸ LÔV&Õ-qµ +¨A|&½ÿó"Äê + îˆÃÊp>¢2€àeµg+!›—¹œ%Üm"^Ñ/ä"<"ñ¥âÎÿó Äç  ¾{ÊN«GÙÈ÷[ AKDG_ø%{ê‰0÷M©êÁ¿¿z:pŽW+òÿó Äç + ŽŒÃÒL +àá%‡’ +¬Úm 9xäk”SPóÁÔ$®ò¯sûøý÷7ìà‰ÿó Äå ’˜XÃÊLï,ï¾°À‰€<Ž +ë¥Ð^ƒø¿7 (¾P7®+­@ÄwÁF‘ÿó"Äç +P’ŒÃÒL”?“ý š˜´–-|Á¢“!Õä§L ›¬Ö…cF>•£ +1QWËÿó Äå ŽœxÃÄL>7¢\ÆÀ~¦¢L=DÇtÙ¢Z(²sÇPQŸŸ[fǹGñ ©éÿó Äç +ŽŒXÃÊLR_“GÔ(?¯„2$%êeP×C†´ÙÎ+¯[ì±iIÀÕ'ôÿó ÄåXŽ”0ÃÊNº’£õ€ ´ãQ€Áx“U0e´(ЩŸLãͼØ9úÕ’–ÚÕÿó"Äê Ê”8ÃÄp>‡b?Ñú€À8`Ü—Ò@1rÈÖ +{ÑxYѸ•¬3jÕŠ§†LÞçÿó Äå Ž­¸{Lþý`¨ ”⃱ DÌëob¥]¨7Ø}¨€©~4ý'ÿó Äç ðŽ˜8ÃÊLßÉ€€y«3›© A +‚¢dÔø“ÀH)"URKʘß} +öPÿó Äæ ¸ŽœXÃÊL×½šN°À›ðL€™,%”+*ÅšÈ|¡!Ÿ‹}*Ú;ÿó"Äæ ÈŽÃÊN ëó}`vô4´ÊOd$W†>µ¨8ŠCͤçéíÀýyÿó Äæ Ð~”8ÆHñ žžÎ°•}Û“peVæ¨G”ëv©X‡„Ì–f3ó§¿ ~èÞÿó ÄåØ’¥˜ÃÄLüwX3Ü$•&XT›ðb‹Ëz41@ÆÌDC¬¹V3±b +~_\]ÿó Äè ˆŽ PƒÊNþ[­ýú”€/íR\qèÕUç$Tžý•Pµ(&çøÄò}øOê#kÿó"Äè +`Öª8ÃJph7[ûµ¨€ ·lи͕àhaTǬÚ&„<dC\÷¢} +üíú öÁÿó Äæ ˜Ö±¸‚Šp +÷Çé‚×%ñA`(Ì¥fH…r.ñ(rÀŸ$ÍÑUÑNuê°4¶ÿó Äæ àÖœÃJpÞ°%|}Lâr¡?§Åbõ?ˆÀ¨%Ë@ÿ<¤)ŠNg™%‹ÿó ÄåèÖ¤XÃJpâŽÁÓ + ¤ß…ÔÕ'§ÔZ½‚=•ÂëLp•#–›BŠ‘ÆÒ¡Ôÿó"Äè +xÖ˜ÃNpfüûPMô)^HÀ(‡ZkÞU +S½`d^t%ú¹BxíC¶'øŸûÿó Äæ °Ö¦„pbòhþôÿÀÀ°Ó=ÔAS°m¾†? *LѶE T±›q/ýêÿó Äæ €ú¡PÃDroGðoõú€ÀÐ0Ù]¦ÓÊXÔaÉqƒXªM1p›+7ðßüoÿó Äç +Pî”ÈÃÎp¿ƒnäÀ€~n™}8a“Æ`'•PEˆVÒ¡ŒQ e\—âö ÿÿó"ÄØ XîÂXaDpßʺý €`¸ËŽiDè±" ø˜Åq\Ašå¿ þ¸¯ýMÿó ÄÚ0î¸ÐyÄrþƒú@€ø^Üó7t—Óª"È$¶ÀX9¬»vÍ%dÂAoRRÿ[Õÿó Äà µ˜yÊqÐ\´WÑêCÐôåF†•=˜L-.Âo¹€ZÜ€¼2 f ô’€ÿó Äâ ê©Xz„pIµ‹†P"œc¶¾À¨‰á㈢§¾!È䵺Î\+!äò¸ê=ØXE\ÿó"Ää Pî­¸z„p\)è b6Ù +¥l¿Ï¿ô·ã¶t ž`gi +åÓÄ6Vÿó Äæ Xî¥pyÎpÆFê5­üênŠŸú7Ôžößwé Ö +®T‘লž6^5ÞT%%ÿó Äç Ѫ8yÄpžåÿËV°åg5$ñ·•Ùûþ€î`uÔß½ŽaO~ü’#Ëÿó Äæ™B¡XÃÎql–i&}¿ƒoÅø'ôoÅ~¯ ÂKÎÅVW2¨1‹3!âS¾uðÖÿó"ÄÎ 0N¬ðZ^$xú„¤ø^á6ÍšÝò B“udÛMpz±"±†#X.-–YKé3$Éÿó ÄÑ ¤0cJpS§ÿ·‚ä9Û9`À„eÔ B}eøaGÐÁà™'›(ÞšÕyÓÝ­ÿó ÄÓ ¬XcDp^£÷Ëà¿¿ëð +C@^l  1 åÁd„ls ©¹=Ramc‡Þ®ùÿó ÄÖ ¦¤P~LìL~­@A °Õf*6­¬‰E \Ù&]ež¢êçv36|+CÕÕÿó"ÄØ !¨X{Dp´UnØ +ÈËйqÂሠ>ƒœéb“½ï[ë(wãñl“aCÿó ÄÛ ž P~ +L«eÊoÐd¸ +·C†Žì d?†ü@@R–,úg`Q¯/FãP¦ÿó ÄÝàÖ¬xcDpèßÓÅþ Ûð?JŠÞàœ(0”„}&Îýý¸Rcø—QÛRÙ +*ÿó Äà Ö©cDp¬÷Ö(]uäóM‡Å¡¤Cµ©ÂX-”Dqë¹/Âðcqÿó Äã  PdŠLùz§ú€€Ü 5·\®Äðƒ šÏPƒ¨«_Ò=­.œvéÑ;ÿó"Äå HÚ°x{DpÞý`€ô˜ Au–iz +.2Îà°Lá>´¾fz¥•;ð¶Ð´9ÿó Äç øÖ©{Jpý¿§‹þ€¨ ᕨÑcEì óžáB É#CMë_-´íÆÖ˜÷Ýÿó Äæ á©{Dpñ0À¶`(ÜØæ-f›Kh,îKl@”èr5çßËanÔ-RùÚÿó"Äè +PÚ 0ÃÊr_Œh_‡¤@‡Ô£³k9*Â7•‚z CÁŒÉ- +|DÍÇsÿó Äæ pÖ¤ÃÄr¦ò@t÷'£‹6_=6]4Í"nƒ—SH{_Ä'‹è|ês¼¾•ÿó Äç + Ú¨øÃNp¹d¢@€lÜh’!p±PèaIÅ À”?q 7éÔ¹›Ö~ù€uÿó ÄåèÚ©X{DpW£mêý¸À€<³J®q¾ 4fØú U3§-gï‘Ïäqž¿’Sÿó"Äè +xÚ XÃÄpˆi¦! +Ú¶o(C7 ‰ƒÎB€…·¸;±O×ã €á̵ïû!= +sÿó Äæ вœ¸ÃÎL24Å@€P5%³L­ì™ *©ÌÀŒl%WÍ+¼üp¦ÚY{uÿó Äå †œÃÐHês0Í €/àj¬3ŠXY%Õ0%Hc{ý#ÉoTߺñÔÿó Äç ತÆLäì¢X€ÔáGz- +(³±[ "ʈZó§oN¿²ôSÿó"Äæ +²Xz„qS¿‚Ë€ü?r6ÀÃUÿ.0‘ÂMöTbq™2—Ñ®áf_«ÏO^r>gSÿó Äå ²µ¸{ÄLxìêÐ[¨»ý‡a2P&‘Ò{"Ÿ)Áô½‰Ãjø§ +…‡ß €a{ÿó Äè в 0ÆNÝÀ뵧ÛÎ!ËD œ…Ë!Ôå]6£Q®3éªõÿã~\€0A’¿šÿó Äç +²¥˜ÃÊL£ÓÆ/€ãÖ\*ô§ÿö®‹aºvê×ý[úðD¾€À ÊÀ%%Øÿó"Äå 0Ê­˜{DpVõ@]¬‚I+–þ@_¼ËòÚ‚ÿ«ôô€€à»(B6yGâQÿó Äè Èú ø{Dpê)Áð¸K˜X×ï‚’;η½”¿·ö}ÀÓÐ56Ó(9 +O›‰ÿó ÄçiJ˜Æs0V›ž¯æL“­«¿#¥D_ûñ?¤À ŸP:ŠølK¾ƒ®”ô?™–ÿó ÄÈñÊXIÄp&pÕÕO¬÷j¥Ðè_´ýêÐÀ ŸP> ´O.fš—Â6Sšÿó"ÄË !¾XbÄpþfÏï75qüîÔõ¿å€©¸»þÓÐ,(‰v°@)ZØË2‰Üÿó ÄÎɱ¸b„p‰Íx‡™? ¤òƒ„0ÎÜéf–zÌ€:*¬óŽa•úûÑÿó ÄÑ ¶¡{ÎLPójÿñÑX†ˆØêÊvˆ7KZBÈøÓXuïñøµ©µÌ/ÿó ÄÓñµ¸KDpÿS}ü`¾¦É€‚TZO*€YòrIJ ¬3N‘. "ñÓ3±‡ÿÿó"ÄÖ 8Ö±¸cDpèþ1ûé]ÊPÝ’žNzC;„ÀÐ,äÅŽX‰`oïX;Ñ}>ÿó ÄÙÐÖ±¸cDp?êþ?Òˆœd£Ñ1.IÎ…NC–‘+M.wßÿû„ÿñÿðCÿó ÄÜ P¾ÎX1†Lý[ ÿÌà~„a’å?}„+éùa»­^– +ÿ{ëyß@9¿ê4ÿÿó ÄݨêÎXZ +pÇŸºG¨˜Ì3à~U]‘w}«jØh¨‰Ò1³1x¼6îaþ†ÝåMñÿó"Äá HîµzÊpâÿQΰÈ#`nRDx(U³èÎŽ¼Ï¸øæ®ÁeÇÇ\BG¯ø{³ÿó Äã î´xbÊp×è3ß ‚LÚ¶€A•[ç}£(Ó»Š'“¸ãæ5x¿êOÿó Äæ ¹¬xyÊpWôß@€Û.ì)ÈlêôÑr²¬àþ×>ˆ«÷ó/øCÿÈÎÿó Äæ ¹"±JDpl¿± €Û|iØÉRÀ T¡z@ Æd¾6z–ô +èÿó"Äæ èî¤XcpN³_òýÒ@À:r@av¤¸É0“$–÷*Å¢Ó!¯ŽáöÿÅ£N:ÿó Äæ `ò¨XzŽpUþ° fy V:wˆ­;‚:AFÍd~y¡A‰Ï»ˆoÀ¯ÿQOÿó Äç øîœXzÎpVõß&€ÿ2ŽH•9.„Ô&αá»ÃåKS£ð—þ…¾­Îÿó Äæ ¨î¡z +p4}÷É€€à[sÂö×6„UÇÐþX2Þ; +™qó¯êÿãÿõÿó Äæ °î¤xzÎpzÎIõ€¾ûƒ"­iëž  $¾Ús3(b)™Öt£S5jàÿSzÿó"Äæ +î xzp¿pf3ºL„ô é x +£‘¦P á.Dô0—†yàÔëzË)µSÜþ7¯Ôÿó Äåà¤X[ÊLmO¤ÀvÀbDú ¹Œ‚XȇL…ø`ÉÅéúÚ¾Æ7È%¿è»ÿó Äè +8îœxzÊpÕ½Fï†@»¾=×%ˆ»¦á„9‹ OÅ—ÌǺ¨5^t~êtèÿó Äæ ˆî¤xyÊpÉkÈ€€4àrº†Ã芄Ј¥ ÜN-û uÈ®Q·Žž_…teÿó"Äæ ˆî XzÊp± +Hù‡\ öü°f2 š¿Ñ"˜Û”Ñý†µ¦ª3ò4NU0ÿó Äç ðî˜ÃDpÍ$>¶†–Bã0"]ˆ*fÃÔS²MuRj~ñ˜IC8¼vÿó Äæ 0î˜8{Dp”tÓ ÀwÀoÔjmKäy3FÍ…qà¾2ëxãd0ôiˆ7ÿó Äè +PîœXzÄpÉd4hà/äÊ`_Ñ•£ +C(£þ5NÏ&ómÙõ-zÿó"Äå Ž ø{LÝd>[n@€ ðe2÷™c +ÝiC‚"XÀE¡ *îùfÇêËÿó Äè àŽ˜XÃLⵓÈ} üm/“C‚B +#l¨(ÆÈ@RW.ÉÌæ÷ $ùgTÿó Äç ØŽ˜8ÃÊL}Ëü?—ga“ †Ìé{BI {#L1ÈW/Ô¦¥{uòìæ1 +ÿó Äæ °¦ÃÊL9 +ÍÁ{‘4‡Wîeç yI—tî£p†3:î¿ýÒPÐBâÛð?Nÿó"Äæ À¦˜XÃL–uŽ¡“2¼lW>¯¨Æü¼c‘üw@¡ÿük>\À ¸Sº¼Èsÿó Äç ð¾ŒÃÎLS`‚`D^TZm×]L~œ~ÿþ7è€ Œ¸Û[¶V—×;ÿó Äæ ØŽ•Xà +LUd RÉÑà“)—Þv¯3'ßÓÿã~ƒvûq¦P%¨•ÉÔÿó ÄåÀJ cØ$ È“¨rÔ·^sZÕÙõeõoúÛЀü>‡Òƒ¬°3>Ñ`¤ÿó"Äé!BˆÆqÍmí*WG§ c|¾1´ê}½ À˜“Ð5r8‹ e³ä#±u–`…Jÿó ÄÌ 1Á¸JÊpRæMS¿^ +×ïà›N·ý‰âûË À– +ÁÂþÑŽÆý4ýþü +êÿó ÄÎÁ±˜b„pcÈ”¦»Q‰?Óþ‹;ÿæž8ð€0ç³ H­I|–X§ÿó ÄÒ !­˜{Dp0NU+Z‹Rów2µô7]¼qÞöͤ–ÿõ©CèÝíÖš&!ôXê²Ñcÿó"ÄÔ 8Ö¤ø{DpÁ¡Bš.,@øBxdD€HZô!rͺŽ·ýlÿþ£…z€€Àÿó Ä×ØÖœðcJp{/PÄPÕߘ‹Ct®;Ô½@ùú®­_ã[þÚ¾À (ÿó ÄÚ Ö­¸KDpo½Ýœã¥@ 2ôTüÊ=¿N»ÿúÿà‹ ßâ'êvÖA“y£Lÿó ÄÜ `æ˜cÆqm‹0ð;öíç-¨|ýjOÿPÏûã_¨Càz;@Héø‘ÓÌÿó"ÄÕ!>X~Zq5"©2*v~¤Gµ}» XLÄq[ᢠˆ›¨Ðl„€8yG’Í +%¢hfCGX“e[¡œ¸¨üÿ·Pÿó ÄÖèÞ‘M8gíÔí=`¸2¶M` *ŒY¢fbD °.‡«í¡ÏˆývêBêÝ’ÿó ÄÙd‚” ™ïá°Ø(ÚÈ(àŠÀ¬áú'ߢ +aáß÷èòYq…äúÿó"Äž (¾ÂYÏX€ ¤ÒA ©ëšú¯~ä]˜žE/Ëó½çyõÈÿßߣ[¶òÀÄÿó Ä• µ¸L +L‚(j‡ˆç™vY4š/|/>¦½PzáË·ˆÛ.ÝÝɤ3ÿó Ä—ྱ˜LŽLðé–Agà}î»Õ'±·594¿Z‘ }ês¢اgû¹ ˆ€.À<ÿó Äš ©x4 +L>‚d«5ˆp¯Ù¨Ô¬Æ¾žR7¾«øˆ¤,nZõy Ðö*(ÿó"Äœ X¡˜NLðõ(ÀáÀ,›Ä¢8".óK ŸœËû†³Ö8äx +É[éÈÝðÞYÿó Äž ¾™PNNL*í£‚‚ H%#©ˆÔôÏü”AÂÔ¤èw]Z€„ZŸåõ¿ù`ÿó Ä  ~™6Hí0Õp=¡ ˜„°<ÌE뎮0€—‹<¨Ùš5M~&Éÿ’À ÿó Ä¢ ~¥øNHÁYÀ£†þcÔÏŒ®ê•;ÀVššê£’[³´+èÄŸæ@À`±ð5ÿó"Ĥ €Ú”ÈfVqBB: ‡<ÂT™Q!ìZ@ž*›]m¾·xÿ¡þ;ü(À v€'„¨Hÿó ÄšàÂœN”Lêäeï‚ó1ÜÆÐ’n|×[m øÿ›ÐwúÀ c``à¤óÿó Ä Ž¹¸cÊLEü=d>DH°3J¦Ég[}\7öÙHºŒ` ÂûÀ$§BZÉœ¨Ýÿó Ä ÐŽºXKÊLÒòX;ìäs¾ÖfùaGÿ&ÀXÖ€Õ̯ކ„os[j Hÿó"Ä£ 8Ö­¸LŠpž¬ŸD½íÛ ~üÅð¡ò€ ƒk€‡3‚¸(’­ƒ6c2ÿó ĦÐÚ­¸{Jp{Gµo_éâþþ€cæÍ&¯4cž u¦83²IVÿó Ä©àÖ®XLŠquÐn´ðŸvô'?úÀ \»'ed3puÖŠBLÎ(&šÕRãÿó ĬøÖ®X[Npæõ|Q>Þ¾ƒÿ €p#]¸Ñ;lP»ð5ÝÌÔçB‘å-n‡˜>ÿó į Ú¥¸|ŠpO_“ãÿÅÀ€öà9…ÁQtaÅB­V*‚€=Æ;ânOGÿó"ı @ÖªXzÊpñPßð𠸎º€ZT­*ªÚ+HàŒ™lßS¯Òl:7úÔÿó Ä´ÐÚ²XKDpõ€ YÀºZ@…O)¸ëx4VJŠ¯‹gúuÄ'ý Ôÿäÿó Ä·ðÚ²XaÄp@ ?À³EPNNÒ¾vÖà˜Z7ïèïàøèßê+'ü(€ÿó ĺ Ö¡¸{Jpüàà§0Ú&3ÅŠìh¸Q™Ó2Žo³à)ÿ’øQ_öõƒÀÿó"ļ (Ö¥¸aÊpÐ5L´`¼¦ël"‚[@èëÀÞeô¤ø'Ã2°%`˜äЃ»`/àÿó Ä¿ Ú¢X{Dp9W‡Àͤm&¹CðËÊMvþ¿q:^¢Ûqå8—Ê~°¤ÿó ÄÁ Ö¦XbÄp @|Á×*Ðð³†N°J`ŸÙ‚bŸ¶dðg2?•ý@Àÿó Äà ¾¢XcÄL8ê KñvBX*ýôàkøn‰S`ˤ4d`ÚêtøÝ?§õ€  yðÿó"ÄÆ A™xz„q¬Àßâ½2XíÝÆGÉ”ýF:‰üfTÜ[ñ7?¨ q0 +¹•‹ÿó ÄÉÈŽ¢XcÄLY)û¬Ø +=Rà{þ’hÌ¡ºqdøý(ý—Àµ¸sêª`XS®ÿó ÄÌ `α¸zNpÑÿñ:(ÚûŒ‚4áHÖ̇âÊ€Â[S­J¶D²f–n³m] ÿó ÄÅ ¦²XzÄLsÙå^°ÀÅ·ÏÖ|ÿó ÄØøÖ”ÈÆp:ž¬ ˆšäg1 öca°3/¨î›ü¨ÀÀc)¿B#Ú4ÿó ÄÃøþÒXaÊp (ðo jäaIÓþ_üø¶£S|f +¤ÄÓ%–S†Oÿó ÄÆéÆXYÄp“f:OrNgþøEçoU7í‰7ú‹zÀ(Z€ØIH0<ás +‘kÿó"ÄÉ HÖ¶0z„p!eD”EÐ÷6ÀÒŠƒè·0Ü' ã š!àИEi‹ÜÁâp“Ð5óuºÿó ÄË ®²8cÚL“2AÖ§Ô£ÈuRfÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó ÄÍ°Ž®{ÎLø€  8³ º–’Û }#%…E¿þ´æƒótoùCÿó ÄÑÁ*ºXIÄqþ©ÿAÒ̈9Àpñ.â~p¾ÆÌç8œ â¢Þ%ôßN>·ÿó"ÄÕ PþÆùK(zÀ€àËU¤ÐÒ[ߥ­©Þ6%tÂÒÍ¥eò\W¶P4f¥ýr}Þ%èÿó Ä×l‚¨h)ðˆ‰Lx1ÓµuŒ@ÜD}ýò+xMµÛ&5;¼"À ÿó Äœ +ù2µYÏ8R++üæ:§èxÌ€âg81@  &ß¡§õŒú·ýðm©Þ°¼ÿó Ä—âÂ8IÄp‘%RíçXŸÈ¶Q&)›mO^pÿ†öÿõo£Ô€ÀAŸRÚâÿó"Ä› @ª¨°~LrƒðŪû4îð +ª”¼ê#·p»ré²í>²`*)_ž_Ê/îÿó Äžøâ¾8KJp]Ï1Äw³_  ™ÖGVßwßÇõQy D +rö#²˜@4ÿó Ä¡ â±ø{Dp¯ÿßï¢ +>!úG€àŠððqãGƒÓÊ%’ÊhÄ°‰™Îÿó ĤI>¥xfqoõ7‚=ùIX2»ì¹)aùóž”™ƒ l»½^eÍÿÆó>þÿó ĉèÖ½xKDp¨ÿÿ‡` +Êp79°Š­·±vê©¢zÃî¯_ÕM@}éÔÿó"ÄŒ Ò¹XKJpÿÊ€÷àWĸñAç`sºàÍÂþuÿ:÷%é¿pÞAÖú‰ôô€ÿó ĸּ¸CDpàE „†h°8P|;¤A8‘S®žG³¡ã^(ÁÉqnS–?àNÿó Ä“a>¼KDq*èP,HÆ÷1XÌÔÀ)Ó­«ò®ÿ=i$9>ÿÔ%7àoí‹ÿó Ę ¬8{ÄLE•E5À#CN…š·îi¥¿æù2×ÿ¿è €š…ÉÂSŒ€Âœÿó ÄšÈÖ¸XKDpE딯H ‘”J7å¡jœq£¼“¿ÿ@d`r-³:iˆA‹ÿó"Ä Â´XKÄL`ɉ(AbÏOÎö ¯ñÞ4ý»êõ€@ Žùíeô´ŒT„"sQÿó Ä¡øâ´XcDp˜Fãɬ·èú/xX%?ŸÊ?Ôúýª¦¤‹=•Ùýzí„ +ÿó ĤÑ>¸XKDq$¾ÝtÊSbô…C¯Öz§õeu +Ñ®0A¼ñL®…ž2{}ÿó ħè–¤~ +L§ó·Ôßñ8Èg›Ã€lš­!ÁÁñì>i +ìfrüáÖ5ÿó"Ī Ò°X[Jpx—´h oQù]¾¿X ° +ág¤¡ÙŠÁo:åÐ £±lSÞeµ6Üÿó Ä­ Ú°ø|Jpßñý?áÛ8Ë¡0þ`zúCò¢ùÃg•ap +˜&Šd›Êù^ÀÆÿQ^ÿó į š°xKÎLìúø<·¨ð?qÈ0žž‘‘"R°™ò[¬ýE3ŸèÜ)ÂQF«ýDkÒÞÿó ı˜¾¬8cÄL°2v€|>ÕÒÁWP¸:ñqUF8ÿ ÒUqº8™Ôh7Ôß'Så +õ€ÿó"ĵ (š¤cÄLá¼Kå°JWyn1ì +2 j:h?å|¢Ôkø¯úÓ–õ€þˆÿó ĸ þ¨8{Dp– M¶óa!Ñ%  +!´Qý‰Ú›å·ƒyÔêý@€@ßàHåÿó ĺ°ú°XZ„p|*b±‘0d:A°a?OV/j]øw¾£Ö>Œåä€o­€iý6ÿó ľ`¬{ÄLÚChîówÁƒ¦O±¨5º +©ô×ý`@8öïWÐ.¦;Hÿ€¹ÿó"Äà H¢´X{Lu†LØHõè¦C<[è0·XéíX€$ú÷.F‘íÌe`+çèQÿó Äňú´0yÄrMÏ22rœ{ÎŽý¨GºÏR9´ÍHq¬·´œ`7Ûÿ›p ⹚ÿó ÄɘҴPyDrVÝÞáj€iÓvé]‚ÉÆ)~~R¸Rùk¿…T×ø…ɈÀàÿó ÄÍàÖ¹¸iDpõ[÷ˆw½ +°V¦ª4}b@Àâ^S‡s·ˆ…¿õÿˆþ Œ ÿó"ÄÐبX{ÄL€0¤·Óò|Ü 2O©¡B‚;Ïc~)‘þ_û„ý`€¤rÿó ÄÔ膤È{ÒH¢ø LÉØÚ…AÔŒò3gð´ýÿÿú°àÀÃíåVÓÿó Ä×¹©ÂÖp™Œj{‚¬š ÃÊ×(¤Þ–à?AÿßüoE àÓ0û­`½$¯ÿó Äà ¨Ëqàu&¸Ê’Á!B¹û1?ú y›èŸÿð/Å@˜‡À¦5 +î’ÑÈÿó"ÄÅ ¹˜yJpÑ`q¡AƒŠ:–º×ô!]hÜHÿþ#ú€ 4píPÒU¥cªòÿó ÄÈ  +º8yDp$74üî­r‘j‘þ­K{óÞ¢]åüpp1CÕGV.&Ó:ßã2ïæÿó ÄÊá +µx‘Dp@€ˆž¿1 ~„9…$ýƒñ`W$Qõ—¨ _ø·wÏÊoXŒÿó ÄÍ µxÁÄpbË€{IÖ¦L°Me.¥ŽÀKMÒ Úoß +'ùIèÔ®6@ Pÿó"ÄÏ µ˜zpqؤ˜­Ñ Qãɾî>¾ƒgCT¿ÓÆpšoÄ;/å²@¨!·€D©ÿó ÄÒ  +ÂXxŠpª>Tã´Mìë. +`Q‹ +)z•Òl•ÿGôþHÀ¾÷>5:çhÿó ÄÔ +Ñ +®8Æ +p€k-XãÓ&B W7]_ÎñlŸêÿ}¿Âjz€ +@3&r¶2€êÿó ÄÃ蹘dŠLyFïf ´ ËFÿüþWĹÿÊßz7ÓÀK2±‹Ñq–,,ÿó"ÄÆ AÆX[DpM%¢8 „ô&›Ž¶oœ‚©U6/NZ&T8ËÈ2hF]Nt“dÿó ÄÉØŽ¬ØŽ +L +öZ®çÑZgS]oK­èûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó ÄÌéÂXkDpÿü…[@µ "Ï(kZÒ ’H&ÿÿò>´ÿ +àÝoå¿" ÿó ÄÏÑ +¹˜|„pPÃ%˜h¡ÒL<¹u¢1€Ø%#_í“›Ÿý=èñ¹N %Àÿó"ÄÒ Y +±™O+–Ùسuö³ƒd!K¥ù#ÿÒùÆųpÀl¶íŠÙÃÀ1¼ëÝaÿó ÄÔô‚¬˜€+NC-b·&n ¢©’?¡üoõêßফë  p€SP`ÿó Ä›øÖÎYËÚã!=Zg/‚m½äñwú×+á—ä²Wä +îáÀ"è­'VN¸Nÿó Äž ! +¹X{Jp~qP , +K—oZcÃÉþ«ê6ÿV†ÕÔƒ»þÝ:(éu<›àÿó"Ä  ¾°Ø{ÄL,qßÂ’ßzÕ 0ì—ÿQl©s`ÀvÐ#¡s®®”‚R¡Æz8Dÿó Ä£Àú°|Dpä[ÓÜeôaºLê|¥št-|ÇñvjJ‚]CÛÍÅn²7k2`­ÿó ħàŽº8KÄLÎDÖi¥ëC‘ìˆDA·;²"›ù´òýþPg÷øTxÐCDÿó Īù +½˜z„pp"Y K¬•áÆú >‹Ý|¿~{ãá¯_Ðßãÿúˆ`Ì€1Àÿó"Ä­ؾ¨¨~ +LjaSJ‡Ä»o’„‘°lã¥#vûB™vöþ£ÿ0€¡™”DmVÿó ıY½¸cÖpŠ²Ÿp«†'ÕEé©ÜMùÚ€@`»G“›ÿó ÄžñÖXJŽq5Vž¥’ÍÀFLTù€‰›"DóéëvÍOä@€! +T ˜Dvñª>ƒ–ÿó Ä¡ !Á¸JÄqtŽEâ]­Zª>wWKQÊßþ£~ߊpP\ dºP«ÜœXµ§6`2Gÿó"Ä£øæÒXJ„p•B³i¿€2³¶½(;G»%¬åHÀn¦lYZë¡"T:e€ôC~ÿó ħ r½{ÄHU‰éÊBSmÌG\pü‡Sö÷uBá— ÙÅ¿P줙ÞB@uN÷äÿó Ä© v°xcÊH󸈴ç>ÿpÕ£¨öÝFzÀ€-§ ê”ibØ@@³L‡ÇjQû—ÿó Ä« !µKDq‡a¢Ÿø,&¿zvò €°—.+TÆ:íŠÈG?7~­nš–hÿó Ä­ ®¨8cÊL¬ßQ­þðc“ª~ƒ€%C/%íQ½àÊp€Á¢Ì÷פǎžÿó"į H¦¨X{ÎLè7ï® +ׯ·ƒˆ´ˆ +Ñ"ßtƵߑ€4„ o¥Uéô=ÿ©ÿó ıЮ¬0cÊN:Úb`€2Àšç{O‘—n +RPÖ¦£þÙøÜ?L{µÿó Ä´ ’º8bDLFüCÀo-ñ[ caÁ.ÁP\*j÷ëdSŸ'J§þØÞ«ÍÄ°ÿó Ķ ´øcDqQ(sÒ¹Ï+žE`C¹"C:eo¯RÐ]‡DD,kÿL2/+€ÿó"ĸ 1µ¸bq ásFõALM¨Šñ\ÐØT`â+/[Ì%º¼…ÿôúh8€`; õÿó Ä»àâ´øz„pqØxØs@bR AéRλEâÛÝÿþù´£. @À Aúá2Nÿó ľèâ±zÄp”9Ú9G¬.ÊÄúÂxîïþ¶ï_ü¿gÿøôd+ €€.|.!)Äžÿó ÄÁé°XyÄqÄ០"Z\LL©ºþ8‡ßÃ|íÿ¼íoGñ€—®˜ŠcĶŠtÿó"ÄÄ @â°x{Dpw7C $*$ƒDߣ2Ü?ÈßûÁ¿¦£HôbBK.žN!ºØæLÿó ÄÇé¬8z„q)¡ª›ó­^ìîÁœQô¶Ž·'Ô€¸ v¶E +”ÀmFÙ}p’œ<ÿó ÄÊ ´¸z„qDu»o[ µ/|ÿµ[ú·Žàü ­†ðÒ³îY „˜"L¦ +õÿó ÄÌ 潘zDpU[ðywè.ABhqpm}­HtœI`~ +Lbú@ŠFj*mÿó"ÄÎ Q´XzÄqù¼¤ÍÐóÖØ€6Ù ¼74岨x=fW²šr˜ý›ú‘¸ "Í€š!ÿó ÄИްz„pú’ð +·´ÐCú5-Ãüþ ý—×á°À>Àð#F[E:~ÿó ÄÔ Ž¨¸{ÊL4ÒT‰ñ09wø€»¥¸Óø'å©<¯PT«5?f'ë2Îeÿó ÄÖ °8{Dq‡(ÙŒ‚Ÿ^3)«Çþ‚ÿ ýn'žê€€{ò›ˆ£Š¹oiŠñ‡ÿó"ÄØ Ž¸8jÄLƒï\,0zß—úŠþƒ÷62[ÍÀ<€¶¦`ühTÈvD¥ &ðˆBëÿó ÄÝ +éB°xzÔqÿµ”›¿›úˆÿ꞊ÛÖÀp[€sÛ©hë° ZLFHoÿÄ1ÿó ÄÌàÒÊXaÄpÆ£§Ù¿BÿuOçzÀ€YÞZàž ñ02Y2e@,km?ýfÿó ÄÏèÖ½xyÄp2¿Õ[ÚB_QïTÈ1O¾C” €Þ¼mHËa€â®!-ëðåÿó"ÄÒ Ö´{Dp6©Z•¡ã¤ÓïPôbíêÀà)BºʈN¸j"°HÅ‹?Üÿó ÄÖÈÚ¼øaÄpügÍþ6þ +útûù € +à×6$&ë—l:™™@#„K¯çK¢ÿó ÄÙøÖ¹xbÄpúÿE©«ƒ'œþ.À°»$ˆÝDãš6Î%óÕ& FÆ?½~…§øÿó ÄÜ ÖÂXbpüuëwÀ +è•’Æ»TÚÿ™$ÓA¨Ø‘e?œ<–dÛÿRQ}ÿó"ÄÞ ˆúµxzÊpF¦³ŸÅ€3à!’ ‰õÃ\61ãPCܪÜó*Ol¿âszÛÿó Ä×À¾¬{ÊLƒþ@ , C«º§ìõAO‚”¬FÑj]:Ï“_ý·W!ÿó ÄÛàþ½¸J„pÇàß°p &À.㥀|¤‚rˤ 4MK‘,êå [o×—«¦¨úÿó ÄÞøÖµXcDpR«gMizÓi¸"’1f?I4N…P岚*¤€Ð.@(‡Cÿó"Äá ±X{ÊLE³­`Ùc嬶óm\Ϫ)mÿ‰…¿þT8€ŒY^/œ¿ÿó Ää Ö±X{DpñP‚ÐL%­ù¹ým¿ã!vþ ¿ýn ¥r¸š«·Å™0ÿó Äæ `ö±ø[Dp‚@^¢Ë}3^_¡ãåþÿà‚\DÀÀô7..aî_ò?,)&ÿó Äç èö­ø{Dp#!µÝ½Tõpß¿¿ôÿAÅV€dÀ0¡Ã$µ=DÔbáT”˜<ÿó"Äæ"­øcÚqïõ1–—_ª[ÿŠÿøïø4¤MÀÕ–H_;ó‹Ã±p`Ü…¿R#¯ÿó ÄÍñŘKNq„ý½¿ƒ~lá°ØLð7¯5e‡k!ZÍFåNmÿÞ²þßc¦Ž‹ÿó ÄÐṘKDp}¨ßÌqPšÀ´á¶”#Z% BhŸQè$ 4ìfè*þ{„Ùÿó ÄÓùÂ8IÄp¼âÞ7“€J!? Äpþ+”@-†AÏ0MVb·_þ¦¶ž"ÿó"ÄÖ 1µxcDpû¨îÿâ ˜ëÿˆZZûyW§ý oÿó ÄÙÁ>±XcDqêe¬Ä`ô›²cJqKßí»”ˆî€J²!-âû¼“Æéƒ*®u”óìÄšÞo`Ûÿó Äå¬cNpå·Oô€ „d´² í½Þ] ÆA$Ëò‹µ|í_Œçöî~§ÿó Äê +¹¤|Np\·ò €o_À ú* ê½n]ÁI8ÄôO{'Ñ»o\ü8ÑRº°'§ÿó"Äæ + ¬0{DpíT·òÀhü B`S›³BÇ(«D â_X«íSغ˜¢¤²OƵ"—Ôÿó Äå ´XJÄpöhˆè MPP¼‹“ª2’Âj +³¤¦Èõ>³jéÁ½/\À¨ÿó Äç +Ö¤P{Npƒ÷_ur@­ücé@;ròÑ+ãƉ¥::Jµ/Ê?§FßÔlÿó Äæ ÈÖ°XcJpU^‰0xŽ™“:R0|G=ÜPZq@LP+Ñs>q6tIjíÁ=Ôÿó Äå ÖµcDp›zwÿùP€í c.pD¤:û=œ(¶Ç¹ã[.è7~ž&–ÈÂÿó"Äç +¾XJÄpµ9Gþ  +| +Êæ|X ›RH‚p‡.O^­šdO×okG«ü~žÿó Äæ €²°PcÊLÜ}H€ʆ»‰8–Œþ‡›¨BPDFY7úëe”ºuÙAl›Çÿó Äç +æ¬x{DpßרŠ‚[n¬èhAVN$®—s( јo2F`Ç9Øérè®{=ÿó Äå !µ˜Z„pãAûA € +¨<‹qj>M×ÏÛ +a +lS)­4SäÒŸ,¨xÿó"Äç +a 8|p%;«å +£zŠêÖ€Ñ:!;`Ïòà÷0,ˊõ~Ã7ʇ{ÿó Äå ¶¬X{ÄL€Íüñí§ó íiøû<ÆS ¡ÍMIª`¦×ÐÊEûá€sáCÿó Äç ¹ 8|„pºr§9ÿPUòî½îPÀ¯ú™Óè ½¸Ô•çøWOþƒÿ£ÿó Äç Ñ +®X{Dph;oP€†@4Öù¸qíÆ`èV·ä:Šf'ÇÁÏB—)Î¥Âm§Aèÿó"Äæ + + X{Dq?ÉEkðð‚"²È»%ÛwC–«9ˆS• ˜¤É×Ò,ÖPáÇýAŸê³ÿó Äå 8Ö¨ð{NpõïúÀsÛ“´©±ŒätP´T@ÌVx”(ryf£^?«j ýGÿÿó Äß Ò¹˜bÊp‹Tþd€!;`­@ÂÎqÚÏñq/™úαÅsˆ?è_ê+­ý`€0ÀK€åê›–X2ÌôÂêÿó ÄÇøÚ¬ÀzÎp˜ 1o«"#±°ŸãÿÿãÑ.îdÇkšSªö /9ccP’ED˜ÿó ÄÊ >¨{NqI]¹Öï¨NÔò¥?•õ?·¨ƒ(à7— ¬fFËÉ,Dz!€©Ÿÿó ÄÌèÚ¬HÃNpgçt•p_ðÏãGy€0 '€ê)Äó²^p°zÇÁäy_Yÿó"ÄÏ Ú¹zJpõÖ‡þ‡þ£ÿ$Á ¨œÖ–ÉÊäâ…ÆaGž­ë¨Ö¸ÿó ÄÒ ÖÒX3Äp þ-ýGu¬ÁŒâ:˜µð +¦þ™iNE¹KhüãêuPA·©Ÿÿó ÄÔðúÊXJ„pзÿ2×v¼¡Páh.dÈw£.ÜVžHªÙ‹^é‹œe]Ù'ßÿó Ä×ðÖ¬}pÊêwõ Áuw0ŸR0 Q²ÈèqÀ„ß‹ó +ÁÛ‰ÿoÿó"ÄÚ HÚ¹¸{JpÿðL8Z¡¬èŽíds©ì笶r=BÆ4ßë¥4ÚÍíúųá°ÿó Äܸú¾Xd„p#”©/ó@ÀÃð«(¨{ÊnO{E%䌧?Å#*j7'õþŸëþ¿ÿó ÄàðÖµ°[JpàØ3©7¥'”>Ì0E溆Ê: €&ÄμTÊÓÍÿœ‹_¬âÿó ÄãøÚ±˜dÎpÕïÕþbà"2­/€Þ‡ñ&…(ñ×á•õ¬pø7&îü¹ü¨/ïÿó"Äæ +¶¤~L}^Ž¿ €À  5W>Ûø da‡Å*„D‚ˆ(ë¼ÿÔ +ýÇÿVíÿó Äå¹BÆXj„qÿã €g@ºW±\ÁÁ»Û…+CœöúÎÝñðBPO<Å£ÿó Äé +˜²¤X{ÚLoW‡€œÝë¥sü± +UÔb(ÉàÇ€?R*ÌÍÛP ¯è0;ÿó Äå±BµaÄq÷ˆõù°Â( ƒ63¡ÝJ™5`l”›Î¢ì§MPçôþÿó"Äé +™B˜Êšq3×çúÀ€(Ð;T[1Ùî^Q¡XqhÙjå”èÒSÇþ¡¿‚ÿó Äæ ˆ²˜(ËÚL?Éò¯æ@À dwsŠñ¤°ó,šüÄ +?DúÙ~ÿ oÐÿó Äæ >­¸yÊq¿‘ê  +Ýi´¤™5‘ÔÜ&©·T5U.XÿüÅû¿¼7”÷Æÿó Äè ÐÒºXbJpÿÃzŸÈu€ +8—,0øÑÄõÔ./5:“|¥ÞÕˆÿ‹†ÿGÿó"Äç +`Ö¬È|Êpþ£½€Àæf3cÙÅ40k·ï +ÔÌ‹Äbª›ËŠuj…têþÿó Äå Öµ°{Jp£ÿŒöõ€€Æ^¶,Qk€7®‘šY£0è ÊgÛÎÚ지P/ñºÿó"Äè +ˆÖ P~JpÝÑÔ€ à?{*B;t\ÍZ”ÓÐ)L‘ Ì®‹¦º4!;Q|·ôÿó ÄåÙ"±zŠp-Öî¾(Á(qð=Ù𕤶( ç“YÀÒ,c¯©Ó¥à¿ÐGøÂÿÿó Äè +Hö¡˜ÄÊpë=Ѐ0+yc5ù™¨-ð X”8KÔIsªnr†š™qŸËÿGÿó Äåðö¹˜IÄpþUüׄ¡é€(°‚­ QÌ“2"à+síÙ&V•áêOÜHÿó Äè +`Ú¨ð}p[û:À,<ÉGMè_ì©ëˆ2bÀ«>gUåòèë¢TL“[ý­®µÂKߤÿó ÄÏðʹ˜4 +p·ËýN½a0¤ÂÃ<Z:ÃvVJS^ƒ²µÅÍLt€£úPwÔÿó ÄÒ Ê¹¸JŽp¿Ñ\ À´rÀÂÓ0¸dDдAÞ_Q¡£L”ïBå@¬þåÿó Äհʱ˜L”pßBþŠ€’IÀÚtD¤ +ªJ¬Q•]!|°Ëã‰$ŸR›­PPëèÿó"ÄÙಾX2ÊLÕ¦·mR Å0#8·l=Æ$(ÒÖ§Za{Z5ýÍo×Mý¾Ôoëèÿó Ä݀ʨÈL”rÙGt’ËÙÐI—Ęhœ¤Ð¨8¢ +ºÙO­…j7õ'êÿó Äâ ζXKTp=8߶‚WpF¯P3%"¯dŽ*E¨†€XÑ„W6¾Yüá8£ô½ÿó ÄäèʺXBÎpYÃÿ¶À#$gmàjI@áªÉà =3HÖÙ×^‚ÌÔËS¹ÿó"Äç +ʤÐ4Ôp¦zh_õTÂ@…ð:éX‚Ä:]Ë-14·=WŸúrz¯V7ï—ÿó Äæ ØÚ±LpêÈH?P  8 ÜDŽ/`æws›½v<\ÐèZ³Ý͉‹÷bè{÷ÿó Äå º84Žp“êÉM“p pô8Ede##QDøtÀ+&É«ÎUæ*oÔ—«ÿó Äç +Ö©˜KZpÄåý•Ö€ÃHŽà8¼ÂSC#(^¨úë"„³É"“æM~r ÿ°ïÿó"Äæ ÀÖ˜ }pW…ù +Þ£@(Ô¦]J& >\(D4I#Á€‚Άé3¡Lõó„Paoÿó Äç øÚ ðLŽpçO°w[¹©AÊJ2o(xœrc—O™„@ pù+ŸUNu½"I€?ßÿó Äæ ¨Ö¥¸LÎpÁ²ÝõVÄ€É`*OA+'ÒÖ§Qm`F¡p§Rõ˜ýf.ÞèRtÿó Äæ ˆŽ¦8NLQßšó`¨°À”STyˆ#é°qÐ \ [3zßç" ŸVÿó"Äæ àÚ¡¸LŽpÿðrÞ€€(­³AŽ“ïÜS¨ü§ € Hd#BÙ» Ô^f` +k'¿”ÿó Äæ ØÒ¥¸KJp©oÿ,à…LRÚ +¢ jUä¡¢!þY‡d®’K|â”ö´þçyÿó Äå +€Ê ÈL„rFÛÿÊ~ €€¨&˜yØå4°T#ƒþp̨ZIžs~” íÿó Äâ¸Ê¤(LDpå»ê€C01†*È©ë©<*¦6Kd ôEÅi½#×æf‚mEæÿó"Äæ +Ö©¸LÊpå ÑÕ’Ñ@£p ·Â8+Hä¿+<ˆAÀxH¦~¦­¾„úÒ?ÿó Äå ! +²XKDpþÂþLƒrùÃfE‡cCM¯ ,>á‘ÜÈ~ä³þîìs_ÜÔÿó Äç Ù”ÈeqsuýKÈ€C0-Wqk2U¾X˜|Ü; ì¨¡pÅ•RÒ[sÎýÞÿó Äæ á˜LÎp¯–öu—ÊàÈ,s"KI>tŒTÓbÝÙÖ‹üÉ‚_J/®ÿó"Äå @Ê™LŽpƒºNõÚÀ®€Y2áÖÝ6©}DûÀø,¬ÄÿéüÎþoQу½ÿó Äè +@Îð}pP²À­àajÑBc{%«HÎâü:`ãÅ£×Ô¿“Ž}ªOAУÿó Äæ ± +¡¸KDpýK?“„€>y×àf +DA©QHÙdT$ÏêüÙ…þäÑ Ÿÿó Äæ ÈÊ”fNp­ÐáP€l­÷Àó«§üJqx‘™ ð3%Ç´«²«­Ö9.úâûÿó"Äå HÚ ðLÎpÓAÿ×Æþ  +ÀDæ„b&R˜b'`>K ÙàVκ.Ú½¤büÞQÿó Äç +Ö©¸4JpúðØÁ +¾&Mƒf¤xÒùQ#P% H4Ú¯\—cÿŽôäÿó Äå¸Ú©¸L +pêy_©0€¦þ2eVê(³"Ȧp‘ •ïÿEÛë@¤S¢ÿó Äé +€Ò¸dŠpo÷á¶u€€€@•t/$P†&—Áª;JA~€Ý ÑLH#¢’6ùÂÿó Äæ `Ö¦XLDp>Åär¿@ѯÒù0ÀÀXj€‚˜{H“aüÀ<‹…#íÿó"Äç +aŒð| +pj’Ì¿ÿ5¿™ˆ ‡À3†(°•h¼²›¢|¡`²½?Éš|¹6uÿó ÄåèÖ™L„p­ý<7䀈!Mò™ù©Ë)œ <ÔVÔþ`ëúüÿó Äè +Ú•˜cJp±®ì—Á’â`:…RMv†]LŸ3À +¨Å'¦®§²³dþlÝÐÿó Äæ É®xKDpm¿Û€ù B±Ì)è;§\ê=BÕq6\Øëæ +ï3™¿ü)ÿó"Äå `Ö™dÊpvÿn1ÀÁ€åðõl2º¸Ëä›8¨OOš ¦Ô®ª¿îä1Áÿó Äß Î¡KDpG^{êÐ0 €|°á]C1é‘P{KèWNênÔ¡>î(æ²ÿó Äâ  +¦X4„pö׿€ 8¼xš¡,!ì’GCàœR<}Û­»×÷EˆØÿÿó Ää Ê¢XLpøW•yO@…§TCã7«‡ +ïÊ\é ¹FÂ~,÷Éø–SšeVðà|gÿó"Äç +a¸L„p7ÄÊwÕ.áØöp g -MDiµÒ'šF‚"€ß ÄU¶We¢´¡¿Ð-ÿó Äå Œ(} +q¢MÕ‡#„0£¹À'’ž†ðü*oë +ÉÀ2Îïò%«²$'Öæudÿó Äç +Ι¸cDp§º€À¥p4¨¹#PŠü3<æ€H°-¼‘)3µJJÖ¼ýÇuŽÿó Äæ ÀÊ™ØDÄpW²UëGˆ cÈ“žnÃŽ=ŒÚ°´¡Ž¥µF7ìÍèÛÿÿó"Äæ èú™KDpOP€ ¬…¨(}x DµòŠÎƒmœm‘t–îÿ{À)©òþQÿó Äæ ¸’~ +Léü9õ€€S0ãöƺV îð6J›š øTt“cˆ×uúТ %Tÿó Äæ ÐÖ¥¸LÊpôþÜ«€ÄNô'mŸ ½ã7rèo3âÑ¢)-N¿j§û}ÿÿó ÄåÐŽ®XKÄLõò»:€€ƒS€h±ÖD‡À»7ŽsÔ*$‰ %·ñvÿx oäõ½ÿó"Äè +ˆÊ™¸M +pxf/Ô€£ð¬é9Ó˜»iôéX/p&骤*ÛZÐü•N®Txïÿó Äå© +ªX3Dp',€ +À8œ ŒP +b'J€Þ0W&G´P>Š{Œ ¨½YÛÿó Äé +HƘep¡(ü€€( :={õÚ`¼|àé™1"Zo{vò€¯íBöÿó Äæ Éð|ÎqŽÿ4‚à2k4<\Ú¢‰_=J7”p„ +ê´—ìãD¸1·Ëúÿó"Äå Q™˜dÎpÿþWSõ¤J®gŸi: +Fùƒ,\ èÞúßäèvýHÜÿó Äç ¸¶øfLÖ~p +zÍ*ÔtçMI^‚wìí] öšûÁV zôd«ÿó Äç 8Ú ðLJr3Í0ÂÀ2US¢K•¨~½yØx8ò-&©"è;ü¸`/èÿó Äé +hΙL +p/Ðåñp’€€ÀÊã»* -ú*8¤/Cl0Lݺ•ÚlÀÿÿó"Äæ 8ΙdÊpÍñÿÉ‚-É—§4e@ß…ˆWHCº@̪AÉ"ó=­òfmÿó Äé +‰ŒX}pòÔÔwúÀËËÍ)„Ž°f9gHÀÔ@ÇÃÇ*ºÿT;õðcÿó Äå ƦXKDp­ÿPNÆ^¹TKÐT#ZDZüù»é9ÛÏŸ^Æ£;Ï +ùÿþuÇÿó Äè ˆ’ŒØ~NL€¸×žšvýIež×到£Î<µÊj½ ¶ZÝcPàLÏIjzÿó"Äè + ÊˆX|Äp˜ÒOÚO][ÿ׋€ƒ°™Š®½Ž„ÙÒß³?I/ (ëçw +½;!ˆÿó Äå Ε¸d„pÝ%»ùPq0 <q:P˜u‘¨Nê@šßYövvR3…ÿý¶þÿó Äç +Ê€X}p¾n”ЮpuåL¬ªëAl«[x$ï)S?ïïxëÿ÷Q/æ·ÿó ÄåèÊ(d„pNQºóððü:Ùo2ä¦xÔèσÐQ&4KËëGéÀ}¯öóÿó"Äè ÊŒ(fp–2oÉ€FCÜ +Y&‰`³È.vȘ° i.nÓGc?{@§-‹ÿó Äß ¶X3Dqÿ’y`MØË8ìˆÂZ~'°z2sÄ’*Gºû%oæ¯z?ûÿó Äâà’œðfJLñÄÝ ÜK#yf4Œ@H0s ȶ€Ì-4Ó¡ÔÓ@*ÿó Äåñ®X3Dqœ>.wWœ_ÈN‚Œ1Ü@nZ€F'€,2BÄù&J„!ô$ÿó"Äè +hÖ•¸fTpºË¨_kQbÑQÖ÷ö +’§ð(˜Àà‹‰–FJk“9>]p1ÿó Äæ HÖˆPMp¨&¤¿÷"®¿oÌ +¿ÿƒý½ €+MìÆ|u˜PÀásÍÿó Äç + Ò–XLÊpÿÇë} FÔÊ7ô?é&¨@À` ’L3’"ŸA1^Cƒ*Óÿÿó Äåñ +•¸4ÊqÖSc}fü3ÿøÏÊü@ÀdèUq„'åñŽ‰ÌBÈŸ6¿ýÿó"Äè +9•˜LŠpß¹›Õ?ÃÀì €`ÙTÚ7>µœ +0:S šUÿ& Oõÿó ÄÛ +(ΔMpçßÿÁ€ +áG‰"§“Ô‹Àu„’“Fƪ]¿DrØŸÿ9Dÿÿó ÄÙ  +¡¸Mp”4n,?èlSŒ¨YlŸœ:½ Š§ìTÕãëÓÿýL(ÞŒwÿó ÄÛøÊ¥Ø3DpfXÀßn à@‚EÁÌYû¢¤hàq0EÔˆ²Iu|ÉEþÿó"ÄÞ I +™¸LÊp8ÿË€ 0@+c¨2tнc3R“Áàx±((®ôzæês9ÿó ÄàØΙ¸LÊpe/ÿüuÀ  €Pª«Dëo›Öy7b€ 1/=m™vO;_`ÿó Äã +™¸KDqD÷ò €Ø:äG}¨G(i¢lVšþÒd[]¿ëPZþ¬Äÿó Äå¸Ê„(5r«ÿ)ú@¬€`ù"R‘ðvDgEŒ +ˆ@¨z¯ç-ÿùÿó Äé + Ê¦XcÊpjü}€ ‚±C$*¥f‹Z7Hép +AÐ;†pO¥å$Êþ^L;ÿó"Äå Ê¡¸Mp£ýG¿Ã`=ñpÁЉ‘”΢hF@H¶ö©>ŒïÔaoÿó Äè +QLÎqú¿Ho‰üTõç³rTq~¸ÏªwèÉÙÓ ”Ó{•ÎYP@ÿó Äå Ž‘¸NŠL~&l~Ëþ àÀ .Ä¡,W­ISýnÆcÄ¡µÈóZœðÿó Äç + +ØLÎp¼ïä–Ä 1IãÈh4*+“C¤Šª„q&‘%S©jîØáÿó"Äå Q‘¸Mq>ßÐëp€ïð + +#«ˆî +b“.«° +ãÉ£¤š¿–ØÿÚ+ÿó Äç +Î|ðepoÿèìƉ“aë'K&h…@˜À +£æ©Yi~L¹_ÛòEÿó ÄåèÊ•¸4Êpÿý‡ôÈC¥ô%„UÉ¡B+Ç,@èÎK ø‰3ïó!œ0Kÿó Äè + ’€~’Léú+ÿà˜@€ñ€ K#B(JÙ‹Íw2"`¤ð¶Hš©zÿ›±þü”ÿó"Ää @Š‘fNL01}@ +X\„Š‰NQS*çS@d@ <'†Éë7õŒiÛåóªÿó Äç ÀÊ€PMp(ßÿð’l@6…±´Dô d;¿;%;xÙÍé¯ÿÿÀ«üçÿó Äç + +¸LDpóaßò ¼/ÀY™%4Ÿ²k"tïŠaY2ëQÊ~ªÞ~²©vcÿó Äæ q„PMs_ÿöÄ@`:6v•¶ç”j“¿¨“€£ø§@ŒÆÇeɱ.e%Ìÿó"Äç +YtPe +qPÑ裦„ ¼©úõèÿq¢ÈŠ`˜y™ýèHÅr®ÙÛ%ÿó Äå ʉ¸Mp,°ÝXŒ©Ï—rÀ¸Ðõà*;DE9:“zÀ +10]nºþÿó Äç é|xeqœAÿíi…¿m h Òà«â:%›,mû¬Ü,Œ +@ØáI•þ³Ð'ûÿó Äæ ØÒ¢XKÄpzQe ~˜ -^¿€õ:çØÑÓÒLÊtÊ4:QÕ{'œãºíô’ ¶ÿó"Äå pÚ•~pwÕ È ¶ðÑB™C,½Í34LH`²ScDfŽ¤Û£ÚŸ²è^<ÿó ÄÛÈÒªX4ÄpáèN°¿à‹þŒsß“¾…Ü.CSN@¬%€¨ºgQ·æ÷ÿó ÄÞ ’¡¸3ÊLš0Â[É};â‰zÃàUF’$dQ…¢‘€UÆ''Å“%ËdYÿó Äà Ö™¸MpW)Uˆø_éýÿPâî°ÙýÖ¹‰’ŒHLÀ!˜p vÇ©(ºÿó"Äâ (Ö‘¸MpÍ>üÖϬl@êü Ìp7–€SBp@è0ÿ)ô>NGEó?OÿQÿó Ä帖t~šL¿P +Ȩš“¢1]¦9 Á“UsÊed¬—‰{N-Azy­ÿó Äé +`Ö…¸Mp2Ÿÿ-úÀt0ˆc|d̈ö±÷pÊë'‰u=ô«ÁUº¿‚ÿó Äæ XÖªXÃpo«õpÓ@áJÇ¥¿O«Ç ×`°MŽ‡º ¤“d—ÉS_®œÌÿó"Äß (žˆN +LÝ“Á=òà@5EÅ`|Ú.*FM¦±j3seÛ,ºÛççòØ®ÿó Äâðn•¸cÎ( ÿè*ÚzÝP\i‚æåtÑTºÑ–ÄÊKOž£6*Û ¦ßÿó Ä婦x2„pսŅ²DËåÀ+N, 4]{mfLUZÿM3Œ—ZеcUMœ*,Êÿó Äé +‘xpep¡(¸ú&­ò¢à€ øؼ1id×ã«EQ£¶Îm'U¾žqm}gÿó"Äå ÖžxKDp+w*ñ7Ö$°LEjò7íÙµÅ? 3R¥¼ïôõ'aBéüK¿ÿó Äè +XÖ…¸dÄpJÝò`,ãbQPÊcé“Ô±RUŠ.y¤ßcè¸~/ÑA“OÐoþÿó Äå Ö…Epò»µhhÄ#gq©Ôvb¬46"Â>“\:‚’ö‡1Ñ¿ê%ÿó Äè šXN Lmò6|PALé‰.ªr¿:Ê•h¨Fì°¦i—ÉñTuÎ ׫}ÿó"Äà ¾ˆNMG4xwêƒ hÇQ£!šËÔö#wLïH³A8˜gŒ~,:fÝM¸ëÿó Äãø‚•XfHõX#ŠE¬7螀rêDC ×9ÑÁS@i¶±‚‡Î „À•Vÿó Äæ X¾‰XNLtf7™•G¢-ì +Ž¿²¦ +ŠlÃp‡Ê(ÖÒ`ˆ FU$¾ÕO~‹oo‘oîÑ+R&];³ÿó"Äç ð¾xNŽNò@#€GØÒáq°–MÉš’` 3îì3¨gµƒ +½ZŸ/ÔÿÌ%@Ðÿó Äç +¾x¸fTL2á«= sõöÊðÌP!@&‚Ú¾¥:Ó"ýüßzþ€À‹¬ÿó Äåè‚…XN +H<‘ÉÛ‡„ [¼ +A2>¤ÞË̈§äüE>¸oê0bfîÿó Äè±l¨ÆÒqx­·­BÒqŒ0>Þ>2Ú+zÔ˜ÝÛCþÝ é¨¯Ò$ýåŒ.3ÿó"ÄÀ rðNHÕ.Ú©iÉö,J¥Ê–^þ°4zs/¿·ô€T +OÀRÈ÷:ÿó Äà vˆNVH*™ª$ãI­®Ô_Qm]nÙjý@GCÈà +a‚ŒHÿó ÄŠ⑘5 +p2ršeZv)IH`äÔe™Àϳˆ–(²Û@NµwÌÑH«KläøNÿó ÄÇ æøLŠpP&üÑ(ÎN~3&dÓD~[ÂvÿŽ?É€° ›\©R-¯ÿó"ÄÊ 8â€PepÒç; +Ð2ÿe~!?¡ú‰ãéð + @!t †,€dä™ñƒÿó Ä͈r€PfVHî—J5å ¿ôLÇ»ãGú>Gé ”œlÞS5—œh"è¨$.¢+ÿó ÄÑØ®’XLJLÛÞ`ý¿ü¿èü)þDàßùD¥§p¶P˜2j@ôXà×q(šÿó ÄÔ r„NXI{þÿâßï +‘˜×\%ºbœÞž!+G‘|éÃÆ)4_抯ÿó Ä× +Èî²XyŽp…ñK¿®ÿPÀl fƒaU¥K‘·’´ñ¨˜2‡ ˜3 +Ÿ_Àvÿÿó"ÄÒ @îºxJ +p ÆùÀ0€=i2tÑl«x@ (ÈR‚•î¨ŠC~éãà¯ÿ·ÿó ÄÕÀŽ©¸cLøÇú€ÜêÂ(¬±øÏS5ÀQ‚p~n “RMYwÃø +ÿ©+ÿó ÄÙðîœxzÊpD_ +ô HC”Yx:á•(CÐa/sÆJìBýèÜOÿÿó ÄÜÀî xyÊpȧȀ€8k5e¢~è1ƒSɼÚVɧC5…ȵÄWð‡þƒÿó"Äà (êœx{Jpý{ÐÖä°ž–òä]Ý2z-˜UP'6)zSÜ¿ArÔñž/w‰­ÿó Äã î”XzŠp$‰€žþ¿)u× ƒOB,š%˜-u«IY©çM¼‚¢Ê²U8“ÿó Äå î”XzÊpÿËz“ô€À íy†_è(‘TôÀ’+#’¿ñ¡o¬Øî‚Ã#mQÜÿó Äç +îxzÊp%ñÒ¶`¼º%.n?àÇ,…‡eàÊ-A+S¶Å!˜Þ„x¯ÿó"Äå ¾˜x{ÎLÿ—Ó“ú@€÷à?SN‚g6€”a¸‘HÓ– ¬oL(Ò¾‡äÿÔœÿó Äè øò”PÂÊrZÿ cûXhB©€fdí:Ê:§á/—åÿó Äæ 0¾X{ÄL¾Üc}ð!¸ +킉N8¤•Es|ê­~¸Z©\7„Ý-ÿó Äè ø¾„Æ +N¥Ð@àoî—“9 FŒ,ªQ°%HÖšõûwƒwwâ;ÿó"Äç +`ŽŒ8ÃÄL±=NÛXð)²YN«—ô¬³,)߸A +"k\8ãêªòÀŠ#wîÿó ÄåÈ’œXÃÄLk·Ö­kôu ‰’…¬/9¸è’‘¥îÍåüuxCŒÜP1ÿó Äè ¨ŽŒÆNYsý€ìíK.êš +3¢‘Dˆ¤‘¡·aÑ·,u¼j³ŒŽðJ Ãÿó Äè +XîŒËJps´«ÑS~×à_¹)¤rY›&bƒ;€xBÈzÜø/Ez1%7Ê6ÿó"Äå 0ŽˆÃÊN$Gèý +ü õ£¶Ò #½/ÈÁ⵸"} +>ckFfåè)Nß.—ÿó Äè è’ˆ8ËÄLÐGñ_ÒÅàRn¬¾ÁÜñ«Ûq)ánAÿà¸Ò€éÅ´ÿó Äç x’ˆÃÄN¥?§õ€ Lçfy&FH‚¥.úéŒß=Ä1 ¬'ô§\j‘›Qÿó Äè ØŽ”XÃÄL<»¥…€ü ¬¬CË]×9<ÓÅ•µ¹ÓvðçûOV°à*GàBÿó"Äç +`Ž”¸ÎL=súÀÌ>ü’ClIhŽà± >t°!kQå +š~ÔpjËèMÿó Äå v XÃÎH¾_£Ð ÿ!ð”𜠃Mm¤Ï²€` +¤jÊ˹¨B ?áÏßÿó Äç øŽ”8ÃÐLÿjÂkÕ¶A©€’Ã%v\€ ˜å©W`Ç& *â.Ðdÿó Äæ ÈŽ”XÆ +L¢‡·ýJÿ-õe÷ʇÝv­<Ë&—–î•g9Kah‹Ùÿó"Äå PŽ”XÃÊL—“ŠJù¿e·¨Ý`_”ò•©Bj¢2"ŸzGàÜó„›9ßsÅÿó Äç Ž˜8ÃÄLø_è7øÝIþ À `ƒ[øL0Áz å«£\\¹ Wcûñ/ÿó Äç ø®XÎLÝý±š¾ €ž«¹^J½Û$$\”®’9µN%yõñ 7Ôwÿó Äæ °Þ˜xÂÌpú’êwu€;€-Ì}wòiMá +'òóÜÏ*çíÉýD{à†ÿó"ÄÚ Ö­¸zÎqûÁú@€JÀ(P !&b,xí^[Í6G”½÷±•V”1Œdÿ%Èÿó ÄÝ Ö XÃDp”Ák¬€ ŠÊïÌWs¤I»CJUÊRäo²÷ËN6Já Ô“²üÿó Äß ÖœÃDpXÁ/º å5D(Q4ªÿÊ}`€6߆¸G¹RæÌÒ‡éÿó Äá Ú©˜{Jph¼Â§P”6—üoü£üÔ€ ªvºt XIa{¢pœI–xÿó"Äã H²xÃÎLö#ÑŒü/ýªJhþ&ÿ €žbŠ³0ÂQž£¶ã×B\èŒ)Øÿó ÄåÐú¤Ø„pÿÀGþ´ûøÑêòÀ U0cVÕŽÆQ_…Rdà£è/@FÕ“ÿó Äè +0Ö©˜zÄpñÛøô÷ðoôÀ_ÐáÝ"%³‚ÊÈZf©s"1k7ñòTÿó Äæ +Y¥˜ÃÎp×ïãChßÆ°€!h=Í©®)wt!N[c˜íHepú»þþØëÿó"Ä× 8ò­¸yÊpÿ·ñ €ÁÅqå2HvÆeµ>ѬB #Þ¦© +±ËKåü9'ÿó ÄÚøzŠp?½mGÁ¾°ýoÖÀên¡¼&r~ +>Ð|¢ž¯§–Ûþýëÿó ÄÝ î©XzŠp~–Ñ>¢‡ï’êPÖã¹­R¡£’¥þ± à•@Yй Ey4N¼!ÿó Äß yDp Ç’Y¶‡e~n½ª)éõo9ô€ + åT)pŸ„¸K®ß/ŠÐœÿó"Äá )µ¸aÊqeÒ'4 ¶SË.½ÿ†òú7«}FýÔ ksàs‘’=(À©’gÔÿó Ää ªyÊq*È‹ÚfûÙÅ:ûú7Ûè'ô€Þ +À@E±I† 쮉08 ´Ý·ÿó Äæ Àê¡PzÄpí|¢DK–³ð·e2Sþ€ ë ;„²Ô»ÔhŠ|7Ñ&QüÚôZ¬ÿó ÄÞ ¡B±˜cÎqã¾õ|þ'¢ +³¿å€1ȸ•¼.­`ÐÅ¢¢t>4†ïríOî^xÿó ÄÒɬXKJp&L•øQúr5³ë‚¶²µ" !çå–!F¥e å Gë<¦tÿó"ÄÕ Y¤0|Dpm_÷øÚ;¾  Z} Œè¸fÃÔÖ‰JêÌÂ{oóÖ¯ÏQn·à‡ÿó Ä× Á¸JÄpèÑ£ŸúÀz“|ÂcNà>€/i²t©JuS¹šy¹R¿Ÿ•YÂqÇI ÿó ÄÙ ž¤P{ÊL}ÈÐ Wæ,°¡Ê!paL¾PË€•‚±Šâ‹«ðæyüy´*sÿó ÄÛÐÖ¬X{DpVË®ù`£ÀAª…âRï ]3ô@"×K0¾6·ÅR˜ÿó"ÄÞ @¦œ~L+S.S¾T@Û€G’iùSÌ!šÐÔ´À1ˆ‹2ZÏ3/Sê-æêÜEHÿó Äá Ö¬øcDp[ÿÅþ €€r©îÅÞ² Ôxîì>Ú£áÏÏ»+SÇáx6±€bÿó Äã ¦¤8NLÒ_Yï¬-Òú\YŸ€ÏCåÌÂá4B"HV¼ãTtçø?~½ÿó Äåøž˜~LFÿê#õߊ ¸ +tPðJÃ@ød:%&.®£ÜüêNÿó"Äè +`¶ x{ÎLFëýþ\€Òp5ãZ¿$SåÃçS#¨±4¾¶Ôký^x•fOÿó Äæ °¶œX{ÄL®§ü¨€€´ !@¹û©,®ÄQf(™’ðÍ$TüïQ½ +ôy˜z)ÿó Äæ ¡ X{DpýºôñÀ-w4d†ÄhǨ‘G{ðÒ6•›¤{üíë?MIÁ:æ«–ÿó Äæ °¶¥{ÄLÕòtêõ€÷Ø µ|&(OHjšBp‡&™õw®ßѺj¾ÿó"Äæ ɘ8|Dp~ž'õ€D?~6g€Ÿ>¥˜[ Ÿ„8õ[ƒX˃íÐV£M/fvc^Úÿó Äæ ±œx{Dp,¨?ò€€ÿø +Cw*å<Åé˜h;‰4 X¬¿âëŠænÍ?ºÞÿó Äæ hÖ¥¸{Dp¾nž?éÀÿð!.í¤r0fÊ4Ñ¡âýHò–¡óº7µL ÿó Äç Ñ +©cDqzЪÿ*­ SÝ¢‚›?4XCóL†cnŽ'Ù¬§AUåî,«7ÿó"Äæ + ¤x{Dp¢â4Õù`ð µ9’ŸoånØ4¢`"­Cè./e^¯ üR\ÿó Äå ­z„p?k€€€¶à &Ê¡Q”4ÆJ%È1ˆXvÿw㸈é*=»#ÿó Äç ض¤x{ÄLœ§è    w&cŒÕáC™>rføR!¬|ã¿Ñ.ø;½ƒíwnÿó Äæ Á­zp;ï†ú$€%  >åõ—üZ¼dqòÆ1FP 0°èWZÈ\>²uèÿó"Äæ ¸Æ©¸yÄp©»jøŒ +ô e ô~ +NS)YRÃ|h÷¿ò%ׯ©¯öƒÿó Äç + ~˜XÃÐHýµúÀ¾àE–Ô·†ô6+%BáÎ6ZÜLÚ¤øžÏ©>Ì Ôÿó Äå † PÃÄHuœú€·"ÜšWoEIPb]Õ÷ Ë^f27îý#+ó-ÜÆò=ÿó Äç ðÚ­zp[ú¾‚H€—ð鑬±/̬CØ÷2òƒ_çƒòÌËÓ ·ÿó"Äæ ÐÚœ8ÂÊpK^zŸô€ '.WÁn?Òéháså,¡¹ýÜ“Oï} ›xeÿó Äæ °Ú¥ +p{¾€eÀr;l_T=¨®@w…HºWEùZò›ã_¼UþÚ…PÊÿó Äæ Ñ 8ÂÄp jzà €ið#ÂZ†(Žwìa+à€{¨±\œµ¥ÕH Íݸÿó Äå Ö¤XyÄp¡z³ŸP€ —&gm, ‰˜Ç!K[ ïÆY!üù5Èý¡ss¶îÿó"Äç +)œÂÄp§Ù;Ò€{€ ªW­…å;¹x¼èI*‰Ò¦Ø'Ñ¡¿¨¿ÿó Äæ ȶ©¸zÄL [S¦€—k)¤›u É¢BËQ\¡úœÁüeU˜ß˜UñzìŸãFÿó Äå Š¨ðÆ +LƒîYßX€î}NG_§i’"+Jf…‹"“s8‡/¯ô7ôhÿó Äç ض­|ŠLGõn%þ€€í°‰¬0j5ub// {7Ì£m¼Mš¸Êuóûÿó"Äæ 趤Ø|ÊL6w Ûjú€=ܪ³õ™|=+Ô'Á&˜H\Œ.¢¹Ÿ;m©¡×ÿó Äæ ¸²¨ø~JL¾¢}^¿_ü€šÐ,ëKDµ ‘xBŒ++F|·Ñ}\´X‹.ÿó Äæ ¶®8|ÄLó½%=oú€€ø×3=BnŒäfP;c$$©çotÚÇQÇÈýâ™ÿó Äæ ¨Þ ÂÄpø/Ò[×úÀÐóp aÓRû$,$2>…@ +È‹;ô¾ò¶æm@Û_ÿó"Äæ á +¥˜ÉÄpúŽü € +SjµŠãBzc•¿|tº%¤¡’øÏÊzó ºÄÿ¼ÿó Äæ Ðâ²8ÁDpŸGÐGàpÀ¶€cRƒr8……J"Ð*ÚO}Ñ»OnÊwIÿó Äå +¹©˜ÃJpmU€}Þ2Jy#h3¶ kb&“ +‚ú(ÈLÒr »5MFœ‹ÿÿó Äá žµ¸LLzý}/¨5Øÿó"Äæ 0vœx~H2b?¼¿¦±8ÆÆeP¨x _-°â3)#µÃ÷ì\î&‡¬Wþÿó Äé +PrˆPÆHýÓËCh!~™ìYÆ~ùê'rõa§}¿&>LK‘£Ì}’Ø$ÿó Äæ Èr„(Æ Hõ¼Ÿ¶€Ch”n$‚ÀPoQ‚,#K‚,ʦ¿¥ÓÖøåùÿó Äå v”8~HÉ÷“gÐS@,Æ»M¶ÿó Äæ  ~Œx~ +H´]ïºð&Ì €ÛQ²Œ¬&!è2ƒ+jaÿXßjÐc…ƒYáÿó Äæ PŠP{ÄNþ›Ø¿¤À›²6ZQ&Ÿlš'€3S·ˆؾ²ÔqL<.ÿó Äç + ’ŒX{ÌL‡{kBݬÿ♨H´DCZP¾€û=ì¹8?ÞÕ¢¤Ä5»ÿó"Äåø’”ÃÄLɨ-Ó™ö:Ñšº/ ã?Qâp,jäø,§¸@ßÇêQõeÞ§ú5ÿó Äé PŽ{ÆLç.›ô€ðy_œk‹+9ܠ愸/AjÆC-^ó#Bã-¸!¾óÿó Äê + ’ˆÎ LÿQàŸH«äíªEÍá³b•‡QÎþ43Q^äc§z¸3z!ÿó Äæ °’Œ{ÄNÅ¿û© À +-Ä¡¥z ˜áRÒºÏàÇŠ8‘`ÊèüžXpâ“à?ÿó"Äæ ðŽˆ8ÃÆLZˆþ +ÿÒ|‡$’¤kdò4Âxz’ + À'&¥GoRñ[á¿ Ÿÿó Äæ €Ž{ÊLàý`\^ä©ÁX!Áá"£ûYºÆyîB?â¿?¤c»–¶þýÿÿó Äç +Ú˜XzÄpvò4Pðþ2§š­qî´eSNÍ• õ?")ÑZÕëÿ‚Òê +õûÿó ÄåØÖ P{JqûÔWðcu€™¾‰Öý^¡]ˤÀÄ;YA‘î®L-/ÔÜÿâ?ÿó"Äè +€Ú”XÃJp¨Ý@€£¨%º—ª–í ã¦fØ + ÆTsÐõÜûÿàø„ÙŒgýýà€ÿó Äæ ¸Ò”8ÃDpÆðàA›CL©@àwM ëKTŸÞÉ°kgzê»>æVüÿó Äæ Ö”ÃDpñ>î Ya>JŽ*øŒËu¢° +ÎÝ©‡ó[¹N)C‡•ÿó Äè +8ÒŒÃÊpMh.¯Q/@ÀÖÐäŒM“;|\·+3b銃 ìyõÙÔhàU²ÿó"Äæ +ÖˆÃÄpbã½`€×€¡Ìcñ¡7A£k¡ª(Øa[£$ò/Ë,mýÿó Äå˜Ö8ÃDpÿ +º¿ s€Zö$€rQ\Þ•riÖÔó/¨J2TJ$:ç‰ã¿Çÿó Äé +(Úˆ8ÃÄpúzßɸ†i¹¨ãÈÔzr„XN‡p~7@¶LÅJ£D®žüßÔÿó Äç àÖx{DpŸÎ?øý`LêåLì¨aa½§e6j+æÆ¥k6>U!µ÷_¬~ð€1œÿó"Äæ +h¶Œ(~JL;ýzßÈ€¯4üÀ!©¦¶kÒTsFÛX +±i_8ë]ºAÕÿÿó Ää ¶¥˜{ÊL‚~ Ào`è­ð‰¸ØË­X¬ZÉÜü—p +lsé bcïõ ýÝÿó Äæ ¸Ö˜ø}pÅte€€ïÉÌl +"ctð"OÈR”LH +‘Mk/ÿ×9s¸Ôÿó Äæ ˆ¶~ +LzÐKGàÈÀAÏ7üE +`o!òKˆB`¸ÒE­­ŸÌ/ôÿó"Äæ Øú}pD ½FúŽ·B  ¾JËŒI\.‡°Vh¸[;B¼Ý—éÿó Äæ ȲˆÆ +Lñ¾¨À¶.@V³Ê{1–±ÅÔü²ày4€—Þ­¾ÿÝí}þ¥§ÿó ÄåàúœX|„pï'‚Ž°€ÿxÂÇáwnošHf³ +067šmÓüîú¶ÿÄÿó Äè +¶˜{ÆLø%ûk€K\-ÎP®ðÀlÈfZ£—­Kº{ÒfÐ_ÿó"Ää øÊ¥Nq‚ÿƒ?Å€ Êñ6KˆÙ5bÔ¼(FCä8@}ˆb¤Jådz-çiýÿó Ää Ê©¸|p_ãý ÀÕ‹!Àr`*i^ü÷Œ‹Ó¯sº½²H½B#ÿó Äæ pʘXd„p +H-å:€ÀaQ‚Uò'q‘ÜJ¢@l:ÝÑJ„´íÿó Äç + ÎŒ°~„pg0„P®€ ÙAÖdŒQ +Fn:“€@`„ò&ÚPºúä«©ÿó"Äå @Ê øcÄp’…ÿ]` D:Ø>£‰`;°*ÖU9CbøÅ•—ÓóÒC—ºˆ¸ úrÿó Äè +Hö˜øMq8äáÀ²ðb† ÔUݳgVˆÆ†1’ÆME[}Pvõfo´ÿó Äå Ê8|Äpâßþ¼c &`ŒÒ² ·I8±ÌKd0Ñp¨è­•uíT +ÿþÿó Äç +¶©¸3ÊLþ°Ö€ó–¹[m¹ åÜ0’çRd›J¶Ö€Ës­ÿó ÄåàŽ±¸KÊL#1~ò R¶A+SÒŸéúMGÙÛÏ@¬¦wë‘HiÇÏ™m•à%ÿó"Äè +Ú¥¸LÎp·¦ÔÜïÔ€B€§¥ÚQ‘K‘¡ Ͳ–§bÀ0WÊ[Í +ÿåñ ÿó Äç ஥N +L¾O +8X@× +u|>!¶ìt„ÍHùÆ1±»;ßònÿ^“˜ÿó Äæ ɸe +q- ;å倀!¤„_U_Œ¿âÈ…€¹±’Fó%Ù´–KÏÿáÿó Äå ÒdŠpDÀà +G+”#CÅŽÕ· +Ä +‡ŒLí¸r×5Íÿ÷§Iƒ7³ÿó"Äç +Ò™¸e +pÅ|oöt€Àã€2Ú¶'ØÛ“)‹²(3BIjZ¿)°º»-ÿó Äæ ¸’Œ(~NLƒ‡€å»¢ à^˶5ÈÃ0j8Ä4hllÊ×ù©¡ÿ¤ÿó Äæ ¨Ê”ðNDqˆ‡`%þ°@00üô$À•Ýò¿+J<7È@L +Ökúƒ:ÿó Äæ ÐʸdŠp÷9F®B@º„çˉÐ#FÙ¹Õh +àt¤]G–›ÿ”Ö¿úÿó"ÄåˆÊˆes¾öÁüþ ž}.гÿ%g§sBÞšu‰DN‰.é{ûS÷ªûýcŽÿó Äê +ˆÎ„XfDpÉ`£*£«7œ÷.,¡q)+h›•Z—V–¿dȃä±çöæ.é+ëÿó Äæ Α¸Mp1pöyLûÒé@þ€ '“DLñf†h=Ãr×oú(Å^Ãÿó Äæ àʸLÆp€ð÷ÿX€4+˜t0ñájïeóÅr„@ 0Ð,S –þ™*Íÿó"Äå X†‘NH¦fûe¿È€ 3À‡AÈ aúƒÌŽ‹P”2"&Ìÿõ¨+ö^ý¨ÿó Äç + ÊžXL†p[õK@3\Û *I)™ýgŒÝÅö` .óÊìlã/ù{”ÿó Äå +øÖŒ~Tq(cˆ’Ôiì7™QÔßÎÚQÓ84¶«¥Fv¯@ r´ÿó ÄถŒ(NšL½çå¨  +ðX³;¬ð?-=Sù4%1\:à©‘•ÿó ÄÔà†™¸KÄH’ñÉ÷€çNZƇ@ ²U+Yd1p„“y\Ÿ,%!oÆžéÚ¨×&CPÿó"Ä× ÖžXKDp\)ðílß^2t€ øòzÍbíÏ`¶˜}6§÷šÊõ +®wþ…ÿó ÄÚðž‘dŠLîg‘YϤr\ 0iA„$ˆ¬gVX³¢âeU(ÊÂÛ‡Ud}ÿó ÄÝ Ö™¸LDp—|ˆ`ü/rä†N:®Ö\^#ñã8Mé“Å_Eõ +fjõþþÿó Äß Ö‘¸L„p£4/OâD¸Zé.*38MNØ\*d»ï_ïràqÆbãÿó"Äá 8¦™¸KÄMO¿Ö|Ø‚J‘²¤5nÌE Cá/LÃœ«Ïâo +ºßÿŒªŸQÿó Ää +¾ˆfLò@$ø С4I³Õ¸ŒèÙ5„'q¼É·4>ÒôþOWÿFÿó Äâð¾™XKÎLœí«þQ@s +ìWÞiDAÊ$á•_¶‚Ø)·{MosêF› ÿó Äå膸NJHOýÄëƒOó‚p2*©%H:„«î2–œj±Íœ)Oms'©ðÿó"Äè +>ˆ¸dÊqÝE×èT%Ç…ÈK“Æ ±LœŠ4pzê…Ù¿Íu0»\S÷ñÿó Äæ À¾‰XN +LOGè€ +—%B“hqDÅxj‹œYÅÃÇÝwŸz5@¾¾‹ÿó Äæؾˆ¸NNLÖåA¿@p ä”SW¶o+Y´ê›q¢ÈBÒåiÞ¹ÓVa€¸Úsoÿó Äé +™>…XMq.¹5;êR@´2ª%®œ3÷HÜÍRe„JùÝû<¡àç}Jëÿó"Äå +à¢X{ÄLb6jä@@„û€(,Ðô×cTn (¨NÁó™‘eÞ¦j$–/ÿkªôÿó ÄáÀ’ˆfNLôö ¯PèN`Œ‘TmMfb7aî—ºrç?zÞðo9ùkÜZvÿó Äå „(N +L·C×^8À­@?LÝJ:Åõ2XÞ4 ü?=ª£àew¿¡ÿó Äè +(â€Mr½Kú_ôW€;’|†o÷²7Aa@O"y”4ÄÅ„s:`¨`å7WJÿó"Äæ +¾„ØfNLK½ŒbV®ü·ëÚ@¬ºéª6 VFãx#l¢¡ÎÎ?ˆŽqÿó Äå ’ˆøNLëRÑ‘ŸóGŸ ƒÄt6 +Æ—B?˜•¶l+jø°1Ë u b rnÿó Äç éˆøEpØÏÿ’ü€„à*Û‚‘±r@``W/ÓŽrÚÕ1©¼å“ãÇøÿó Äæ ¨ât0Nqä>Ä1 Eˆ]ˆŠBÆùrMOÞaR)cÃ…;aiñ»ïÿàÍÿQÿó"Äæ ÈÂpfŽNm}ð¦ú@€ @†2ÊV¢d¨¸¤Õ´jdæ`4¹Ñw™‡ +(´âÿó Äæ ¨î¦XÂÄqÿòß!ô€JJƒŒâÈæn%Tu \抾¦‰­d i7è +ÿó ÄÞ¸¾”(NNèWäÀ)FqUÏ‹Ã'ÚwÞ¤uŒ1ä§zD7Mz«Ÿà;ÿó Äâ辘ø{ÔLâßøÆ +À ß(BÎÅÑW€'(xRKs‹ñú;¹Úîñ=X‘^ÿó ÄåàŽ”X{ÔL¿Ô“ä>@À + ÁMAÙk£ãÛ´ÂÛ™L¸ìåW Àžë>Éÿó"Äè +PîŒX{ÊpÅoˆ~Cèÿ7ë*}ØŸÂëq„âD@ ’áî‡æÓä©{›æ+ãøúvÿó Äæ ȾŒX~Lð“'Ћü? +vXÞÛ°­"sƒJnÌE½•G`K˜óaA´v¡ß|ÿó Äå ¾Œ0ÃÎL[ì¿’‡à çµOµšk`×ÌU")$ +ào”T'.̉‘mWÏó·þ×ÿó Äç ÀîŒXÃÊqÓK‚jZŠÀ€ +¼È£F¶XŒ-AÚÇ2âögÌóm£5S—ýÿó"Äç +0¾„X~L¨êœÐ´BWUV8άDåÕ‘î*æ’e§s\áÁ©ä^hÇÿåÿó Äæ ÀŽˆX~L“¦°†à +¨» +Wj§R¨/ÏG–¬ñ%?»°!§ |KíùÆÿó Äæ xî”ÂÊpu=½`€vE3tUê|¡qŸºãÔQÕîÄ2š~sË," Ü°Bù?ÿó Äç ÀŽ8Æ +Lô5Øõõ€Càs'ÎT c)XU­Anôó?k„|×SJüxâ<”ÿó"Äç +Pê8ÃDpäÀ=´¿iÙ:j¤<‡øǼ†Àê,LFhoý^·½'ôç+Îÿó ÄåÀ¸{ÄLå´|¾üÑÈÒ´ux¬zc©èu•HôDÉp¦·…h,n!ôhÿó Äé + Â„ÆLO§H€ÿÀ«ò¦jœ›ƒe`œ/82ž"òØ3ç\kF4Hƒ¸Òÿó Äå ‚Œ8ÆHýOMöäÀ v-Äi*«¥„,g°a•ID;i‚Ç÷®­r4Â<ÿó"Äç +HˆXÎLæÿ_u@¼ ï(ÜÊ% +Êåp«W"àÚ5])Ã{T×´k8Øý} ÿó Äå~XÃÄH¢²Z2 ü MÖaŠOt1ï ¹&(‡<ø³ +¢UiÝi¿ÞOÿó Äé + ŽŒ8ÃÒLëÿgÐÚòpƒIf0³Nľ m ¼YD“ßý¶sVñjÿ‚ÿó Äå莔{ÄL¾½>¾#ЭK°©ToÊïEqÁ•UñIàë¥â{qÒˆò Dn ÿó"Äè +Ž‘xÃÊLá”9ú@àYÜ/kQÊWQ “¹Ôrõ{‘Zæ]~pò=ðÿó Äå ’”8ÃÊLüì¢@€ nN…â°!Øбý…FzGçh´)¢$ÍÈhâáFŸKÀÿó Äç ØŽ8ÃÊLÏ©ùOèÆàOeIgnðYÈ\ °X iY†nê›Ò= +«ÔIÕÿó Äæ ¸î8ÃDp¾”~„|¸?{Ò•ü“å\FYjªöÀ+»p¿ö÷©CváÝ'ÿó"Äæ øŽˆÆ L%™ù}@Ø 2÷å&ˆU++bpö"aM8Û×U{¨Ò Íÿó Äæ Ц˜XÃL¡?¥:—aØüAñhÁs¤Á £·7Ÿn{¶µÖ´ËïS…¢/–ÿó Äå Ž˜XËÆL~ŸÔÿàO}Zv-.*M[Óû‹èÈjR"ö^Þ·6³çûɺ“ÿó Äç +~8ÃÖH?Zô€€'þyXðÕd¥l-ïS€«©ƒ¾®Gñ/º ¶¬ÿó"Äæ 莘XÃÊL¬{«€¼Âß ñ->Að%€ 9³g1šÇá3¤e¾|¦»qÙ£;ÿó Äæ ˜Ž˜xÃÊL[û_¬ºf‚4‰lÀ—P 6[^L‰¨9 ¢xÇ¥{΋•7 +ÿó Äæ ÐŽ”8ÃÊL=½LþU€°5„ªS4Dc Ø7ÙVÃtÍ(ÀXç•9Š•áÿxÞøÿó Äå Ž˜XÃÊL1½½@ +ü +÷-R)RÓ"îi0ÌšÄZæbë3ò¦/*üo­ÿQÿó"Äç +Ö XÃDp¿ƒ6Ÿ¬@ªäͱ³2Ò¡ Ï`>€%ŒÇᇹ¥oHв¿ý¢ÿó Äæ €Ö¶XyÊpßÔw“°(·zJº˜IT,\šîUÜÖÒLñ˜C#?^¶)®ÚŠÿQOnÿó Äç ðÒ ø{Npöǹԛ/Ö3ƒDZl™–” •‡,ìrÓ¾ŠwîáÉ4=<Åÿó Äæ ÐÖ”¸ÃNq/¯ßüq¥Mîb\µUÐÞçÔ‰™ß +¶VÏ0p@€0Ê뀎ï´ÿó"Äå ÚœÃDrÛEƆ«¥ +pž~§’Nêÿ‰ŠßP¿Ðõ ÿ”’ƒ¨áÝ,§("½ÿó Äè ðö˜8ÃDp6K†B$žPzî=<„9Îü+ýñ[èßõ€ÀC@»f`¡뙊-¶ÿó Äç ÀÚ”¸ÃJp%£ÀDM@¶§<9¹oÃÿ¶Oƒ“‚‘ï‘ +RhÁ|Í‘ü€ÿó Äç Èú”ÃJr*%4O4“ügÿ¨«hþ “  k÷eqx"íIª‹Ôÿó"ÄæéF”ÃÖq +AœŸ›ýöô?È€À +vÐew‹ï\ˆÕòu((u®>Qÿó ÄÎ îÆXa„p1n¿ƒþ©@úŽ¿"G0 †Âl$ð¨-ç:Ï‘ü ]Žüsÿó ÄÑ ò¬øzŠpý²_[ýGºÀÎl60 ÒDjpÐjp  `ñûc‚©åaåq>éâýÿó ÄÓ î©xz„p_Qí"¾‹QOBZÂcë…v0¢ôg€Ñýø.'.‘Õ¢Eÿó"ÄÖ @î¤øyÄpHHÁ‘&D”¤‚*J«ýJØ'ï—íÿÐNΰ.NT41d¼M!Ù˜¤ÿó ÄÙÈî¶XaDpÄJ2ïéŒbêøWNK%©ÿ("‰%jPD¸ëpw…)9ÿó ÄÜøyÄp²mWd”úþÚ¤õo_ãþ\€³Óà%ˆô—rÝ!XKm¯ +® +ÿó Äß {ÎLŒG§·â]%õžù@hŸ`L­;cÏC+ƒÀÆjpúТŠí;dÿó"ÄãF ¸{ÊqUý[óø1¾·|¸f‡}ºƒ@†Šü¹°àFs"ÙêI!=[º(#üóÿó ÄÒ !½˜KDpz·Ûè1~€Fþ´Í, +¢0Ù!BR‘Ô]MAÙsý:¿í\&ÿó ÄÔ¸ž¤PcÊLÙé-`ùûÅñb~H§82œ°Zè?ÈÑŠ™ŸS)j%5д¼¡¿Bÿó ÄØñ°xKDpøÖÑßôI·à1¦Ž.TÚ2Ø61‰²ÐtV“T£Füƒþþ +½ÿó ÄÛ ¾½¸JDLñ¶òÀ -¯²>7e~†VSÀ, PáI%×»Ô†pͳpNô¯ÿó"Äß (Öµ¸cDpàû.Smë@üt+ÃÔe•HíÉ—4E8æŠzÙò¿/Üõÿó Äâ !¬xcDpDëôíÇ *æ%¢EéßQH.¬øNòtx[)j{ö¢»ó |Ôÿó Ää Ö¬xKJpû}ËgË€[€?ÊÛh¬½n +%ª)d „ÆôÒ}Úó¯¢iüÝ·õÿó Äç +Ö”0|Špúô žMø|7&³µèZY1h!8Yþs+Ô~:µ^ÿó"Äå Y¨XcDpœŸÔwå€Á09ÛÈ“™¬þ¼,Qá¼ +Ī- çá½è/ñ?^´¨Nÿó Äç +Ö¤x{Dp +ÿúúÀÛ`QÔB&&¹#U°ƒb¤VmfKœ~§ý¿ƒþÿó Äæ Á +˜P|„q£þ `J¸dH žk b¤¾!ÐK‹©Þ[T®ÿ…Oåáêúÿó Äæ Ⱦœx|DL6þ¿þ¢ü NÔà9ÈÍbŠ¹R +Œ±y¨›{¯×0àÊŽA ÿó"Äå I˜X|Dp”f—¯ô„/ÿ½ÛhÌ5™òNtr'F^¸²ûµ†®4yG Y1öÿó Äç ж˜x~ +LOHê îíA%’Kz™RâB6Áð¡øNG¥Þêµüz.º%~íÿó Äæ Ñ­ØzÄpý¼Wå€$e•Æ´ºäµÆS ÑFúz»÷ ùÍ`ï¨}è ÿó Äå᩸{DpCŠ5逷à·h_.›‡«e`v(¤-GJé6´ž·™ß¿¶Jÿó"Äè +q˜x{Äqµ?jx‡ú€€sük86“Âô/Qƒí &³lñÍ–‰úw•kº5ÿó Äæ ÈŠ˜P~ +LúÀ€m  (ØCÏ#£L.å-f[¨£__ZA±˜ÈJ½¨ÿó Äå J¨x{Ø$Ûã!ŽwÑ~l€+À +aÎìP2Äã+"\tXã£;?Ä ÔYXŸñÿó Äè +Q xÂÄp€¦¾õÄ€–.\ìG®çÒ4Qjh1Ÿ &ó!ÎÞ?ïÿó"Äå @Š(ÆLPίõ€Ú5Ùt©u´îÅÁ‡„§t!ÍTh&aHëRûR­+°on¦ÿó Äè +Q¥¸{DpÿվΠÀ @÷aÊÚõªä¤Ü]í ª…éïn+,õi±WËã¾ÿó ÄåÐN¥{Ò$Ñ@€ +ÚÕYz- 1Ïd¬ˆãt4)~w}¥!í ßL`ÿó Äè 0¶©{ÄMgñ™ÛzÀ‚¾Y·ªlÆ +Åifæ:2…𻯗jgÄ}øÿ¼`ÿó"Äâ Ö±yÊpgÿ +€ü$W5ND&“9t8Ð4:ÐÍó˜\ÂQÍ>Ä4sóÎæ}D>ÿó Äå Ö¨yÊpñî¿ê‚àNù´ÈW^Q=ˆv1™ 5Š¯ò…ßs{§éâ}HÀ¾ÿó Äç + Ö ¸ÃJpÖVØC¸€¸îà!,†ÄÍŒÀ?›"6÷¯“¨m\‰Tè/ì¨ÿó Äå Ö©XÁÊpdQ¼;vã€` 7Ùñß¼Šü-´ KÊ'Æ“5|Éö¡7íé£ÿó"Äç +ö¥˜zŠpÔm½ \'mdL˜Gò¹¨# ¤m*PÕs:ÓŸ^œà€&-ök(§zÿó Äæ HÚ¤¸yÊpn­÷¬È€2pvX4°æ.œÙ@RÉ´H€¨»|ëïFn» Ÿ¾ôÿó Äç +Ö˜ÃJpoWýFõƒ0ÞÛ± §k30´¤- Bºuò¹Íê¯_Ô•ÿó Äæ ¹ +¨¸zÄqÈäz €­9$ÇñÐëM‚4–DáD@a‡i¾bnEZ…6N|Šÿó"Äæ + ¬ø{DqãU÷ðO½@E ˜r”P¯¢›ù6*GÄe0›´óZ½øx¸6Ò×¾ÑÚŽÿó ÄåØâ¨8|Dp¶ú€€8ÙH{ +µbÉ°¯37Uàj‚( fSîuÉ N¨Žþÿãÿó Äæ ÀîœX{Jp½{¨[}b~.‡'DúP¢…ùÖFzFã/ùïyulUCÿè¿úÿó Äæ Øîzp‰î’Ä7 Fj#«ÜXÀ¬¯°íp&֔ƋOœ,ù~óI¾bÿÿó ÄåÀî¤xbDpѽFSî’‰÷¶S*\Žùâü«+>£aãW5"6­Ócù¿õÿó"Äé +¨îXÃÎp'ûãwÉ‚‚ÜzbY=‘K{Žk*lØ(“•¤ïöÿðüÿó Äæ ¨Ž˜XÆLM?z +ò@€  ‡Üɵ˜èÍ8„¯CÜÖ¹$î×1 +ôSqÿó Äæ Øî˜XzÊpýÀ + ¼|ªõ{HÛXlJÉã ‚‰hPÄ¡z‰õ™ªfiÏÿÿó Äå î¤xzDp¨·Ê?Ë€ + Có, +€{D• +2IXöf8åS9×Ê^’Ë"`Ìÿó"Äè +€î”X{Äpc¤Xƒ›¿ßX@öSÜ–ºÑpZ* ü!r=ž$5d~­ú=âþÿó Äæ ˆîœxzÄpQÚß¾½`GIY¢4%FC—Ž29V#À@ZVÕƒÜã¢.ü +úÿó Äæ Øî™ÂDp´íÒNñ‘õÈDÁåx*Š(@”b¤D®¥–ÌýËžTØá7Ð 7ÿó ÄåоŒ0Æ +M•Å´iÑ‘Ù€÷ä‹Ì±PêjðÇ ÉÞCHF[›ýì©yW‰”Îÿó"Äè +HÂŒ8ÃÊLêшtâ …ˆ³x™éÖœð²Ò¶'Dm4‰ò õA½æÜ}z~ÿó Äæ +h’”P{ÒLÀ;àNJ–ÚéaD·qn +QO”£«r¨­4Ù hlj“ÀΖÓYñÿó Äã ªœXÃÄLò:tV€í c“1œP”©YÐäiÈÌÈðÔ‹„bµ:¶¨«Ê®ÿó ÄåøŽ”0ÂÊL5QàWl?V?%Õ÷E÷ª¼ßõsè6¬mˆJ}¦mëÿþ%„ ÿó"Äè +€¦ˆÃÎL¨…vØõ¶Æ‡aˆrAõ4Z´–Ì‘å]ê”ç&¾Ö*¯õ8ÿó Äæ ØŽŒÃÎL6þ>`@‰J·³¡Âtxdz§€¶&àú^Eì®ÔÏTõáøqŠWïñþÿó Äå`Ž0ÃÊN·ý`Á(³Øl²>š¹›LüZ”Z’ÐIVÕnÜ-êþƒþ·}ÿó Äê + ŽŒXÃÊL@H9k/.Œ0Uí,¼‡øb@e½¾Ó×W‰p±vûzÿê;õ€ÿó"ÄæiB”XÃÞq„mòµT_Bš¢nùû FrR³ìÉmcõ߃åþ¾ÝõÂ$0Ÿÿó ÄÄ +áBµcTq°¡U¥VieÚ$£y«"J?µYšÐætvûô­÷}`3ø|Xÿó Ä¿ Ö¤`{Dp ,kC¯tùºê»ÈË÷ÿÏ…ìåLÜ)ßéâÿWê€~åÌö,ÿó ÄÁ Ö­°{JpâÀ)°ª= ¨6ma:…CE‘¸‘…žNThP~4òÿó"Äà IœH{Jp$… ªæžIÈI¹PVt¹ìy"þÊêDw?Ù.G·ÿ¨gÿÁJÿó Ä‘ ÊYË8|/Ѐ +†n1!»ìóÅaÖb sE«ùĆúpT?ÿÄýê rÿó Ä“ ˜cJqàˆ€+EÀzÞËfsö=ñéZ…#íkÖ›·×µEþ½ÿû¸C¿Q¾€ÿó Ä• ©˜L„q€/¾Ðôä>¦O|ý´¥cÖX8&’³èK°‚ÑDàì,{ +vn¤ÿó"Ä— ) xLÊqÀ¹’sWZ²S/ú™ý#J™ÜùÂnË‹6óÈè#ÿÿÿÿÿÿÿÿÿó Äš æ˜d„pÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿð€@!ŠWe²EžÉš[ËÀማÿó Äœ Þ²YOÇG£‹ž¹OgÆ—dŠf"p0Tè¥ÔPë þý-×ëCõ"è„ÿó Äžd‚”˜h°!líMì¶S‘Ä çÙamöèFÆ,÷îáÀL1´Cÿó"Äc +ù>YØh[ÚN,:,â]¨uÚº9sŽß÷æöêìëèh4FEK·ôxÿó ÄS ¾¹¸dL¦9¥ÄÝŸÕzÊÿÿS[½[á—«Ã`È”ØZ“™×35/ˆÿó ÄU@±˜KJL™H ì·Uêªr‘/ÿóC¦íü2²©À4…‘äLAmÙ&8ÿó Ä[Øþµ˜3Dp°Uv»ÖëÊ¿ÿ@íÿ÷þ @­;€.7óá]eüôu +à¥ÿó"Ä^ 8¾¥˜LÎLÄê™çº7Šqß–E*vË—áÀ‰€ïÀ'LÏ$U1+º-s2š@¼ïìƒÿó Äa !:²XKDq2›å7Ñ‘W%­Ý@7ÜžŽ¨‰v?4Nâú +±‡:`¦\ÿó Äc ~ªXdHÕ0V4žS6:§-•FHÙ…ÊOØ®Ož43\Å7mD‚:$º·1¼ÿó Äe˜~¶YPÒ³ë›×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿø» Ûltÿó"Äil‚ ™ ! °µ­¸ýBIO¾¿ÌÊ^ŭש/;ÿü è`T°)‚–c‡bÿó Ä/éÞYË8tÒ“8d&BÎæxú:ë®´¸WÿRÔXîïÃÀñ âgÀÒûÛ‘Qÿó Ä2 ÖÁ¸DŽpí—òÖ±è5‚¼ÍÖ•JºÙ¡?ù~5ß‚à @Ù€z¢1yà9,æ½ÿó Ä4ØÖÎXcDp¤4¢•%Ÿ©¿oýýíÿðFÀbí€Ha%ÀDzÓAÔñ”!ÿó Ä7 ÂXLDqº™ó^}Oýõ +ÔTíÀ `#HˆüK‹m dìx+‚ìZIÿó"Ä: (Ö¾XKDp+9õP²¸ÿoÞ·hv°ÀÇÀŸ´VêY×mLû@©"\à†@¢cuÿó Ä=àÒ¹¸L„p>½ÂýÊÿ. ‚<a€ö¡Rø}‹Äˆ+­+˜ÒÝ—ÿó Ä@øÚ­{Npûøþƒúß €ƒ7€Ãˆ¯Œ ò¨;É¢Á{×oÅûgš|Oê›+úÿó ÄC°ÚºX;Dpÿ©Ú€à'wÀ~Íš0°hzð %Ù#rðkjª0§è6BßêY×( +ÿó"ÄG Ú¶XJÊp·ò@À#€};C¹yHÔç—‡9œ:Àæ,"é7ÎlžŸ¿þL€ÿó ÄJ Ö¾XcNpC€¤§Ÿí£pÆvÑ:Ã…ƒ+±%ª¯:Õ§ý +œhoù ÿó ÄLðÖ²XaÄp:ðV„ãÚšG‰C6ñWF?ʾ(Oü¿ŠCOþ €€ÿó ÄO Ö²X{Jp¸s„žºY3¿AÓ”4)²-¼ÇÀÓíäðcÿþ°`À@¶)ÿó"ÄQ HÖ®8bŽp¨BÒ™õPlRå(#ŠÀ£°ïdòœ±ß?¨ÿˆ_úŠÀlGgÿó ÄS ®Xz„qÛ[¦ÍâäVâ0ò^nËèÙ“ï°Ñ&?ˆ€€»@¦% †(#½Bÿó ÄU Ò­¸aÎpÒ0ÆÐoô[ûl"3†($¿¸<Á¾ðOÛ’ HNËÿó ÄWÒ²XyJpJ…Ç«&$‰jÃ’5î$3,ÚVu 6Z% Üø" +/ÿó"Ä[ø–¥xc +L¦“ÓÃÚ²¸-³~ŸÄ|3”½¼–,|wŠêìXŠsÕPŸÊ +G! +;lÉ~ !ðÈýUhÅõ’(ÝãµzLTuÿó Äa v®{JH˜‚4ã³uüI°î€ 3(á]xç9 ðHep=±¹Fa˜'­TOÿó Äd –˜ÆLqVTv#!ú;ô€Às°ª£ÎD·g}·q€FzAÙh°|2ÿó"ÄfàŽ¶8zÄL|}$÷e@ÀÀ¯†¤ƒ „˜ø„cÇäõÝlõe?­Ü|k+Pÿó Äj v®8{ÊHŸÒ€3ð£ÂQ¥£i‰äÖ„d/ +’`aúˆe†©Á°„oõî~ÿó Äl ®²8zDL稻h”"ºÿ—5`Pr+ laÀì|_Àd,NÍŽ‡Œœÿó ÄnxŽ­{ÊLÄÙ + {Óê¤'€\¦‹øŠÉ‹öPœ‰8f¿‘ÿó Äa ®µˆ{LÂ0ì_Ðÿôÿƒ'¬Ä†°Zš›ñ)›zC)·×SBƒwïPejOÿó ÄdèÒÂXZ„pÇÿ‡ù/(ôÄ¥€½'Z”dÞ +†!öÈ¡ +rïÿµEâ{ÿó"Ägðþº8aÄpEÞ, H€NÂCa1pP• @5 +2b&8ô…H„áh˜ +ðÿó ÄkÈÖº8z„pnbI“D¡Dàæªc¹…CzL´ÓYþš 2¹æÍVšoÔ¢ò(ÿÿÿó Än¸ŽÂYIÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü¨6P³O%ŽÜ‡Òìÿó Ärt‚¬h;¼™OKZÿúP)»—õ,mP»Ñ ¿Ð£C +À `XY¸‚#iÿó"Ä7 +ù2ÆÏ(¦$4%1F”4~Ù±gP´ß&0ú¾°  P„µÜ®DªP‚²ÿó Ä3àâ½X[Jpš&¨v,c·ßÍv‚¾ÿ÷о§ùPÌ'à ä B¦b¿PJÅŽ×ÿó Ä6 â¹øcNpMCœ'*Ÿ¶>¾ðÕ?lºÈúÀð  °V«.«²`7êáÑîÿó Ä8 æ¾8[Dp ·¯DþÑMÛþ=túÃÀè'`-X¨Ë`aU +¾/,Æ€Aÿó"Ä: æ¹XcDpÇé…HGÛ÷Õ£_÷íô¤(€\“ZÁeÒ! +ŽÚg ñ‡›}²sgÿó Ä=ù*¹øaÊq„÷ýò`ÛÿþÀ€(¼ã~àU#„¦gíHà@JÏ-AØ[ibÿó Ä@‘.¹ø[DqŸ\ÖòþOɲP^Áû?ú߀»Jñ/ÊBÜSð%0O·ÀðÄïÿó ÄDq2¥X~q¸‘s泃6’>Æ}àsÿΣ"=Mÿ-_ÿÆÔÌ;^å…£‹ÿó"Ä- 9½cJp©·ëþ;©ùÁri*Áßþ)/‡°ˆw-å^Kõ€;Î2sdXrÿó Ä4°š°°cÊLÀfÅf ½¶Ë„¡×Ñÿê:ïÉ€@<½õ^¸,zS(ºB"`ÿó Ä8ÈÖ±pLÊp9…R ßå&Äê÷ÿ¡;õÔÀÝ@t\bÚŒRb­Q‚–-I×.ÿó"Ä; 8Ú±ødŽpÿÜö!ÛTÿsŽÿ¨€ìð ¨)™¢nYD±®¨°y¹ô¿êÙãÿó Ä>èÖµxLJpŸQßä×ý’@>ãî‡vÅY›ÆÑn[ˆŠQj„5Ôÿó ÄAØÖÆ9M(%ƒÙ8\ÁMÖT&NMÒH¨O™´’1tÌ%"r¦¤Õvu"×5^h´ÿó ÄD„‚©Y˜”‹Ùºÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€²4L*ÿó"Ä 8½qÏ(W?•¶h8qÃñp@V·ÿñvÍÒë ©þÿÖ =Oe®Umÿó Ä ú¹XKDpRb Ѩ$#ÕÌÿäÓø9¿A~þùN°Á¬˜œ(D(#O1-ÿó Ä Ö¸¸\DpƒÑ™ +æ¯0?„¿üU´§l䙀J€ôÀu  ¢ä‘rÿó Ä ½xcÊL. +êªÛ>ÿ„¸ùiúŽÔyGkê / t—ീWejð°¸ +K +pÿó Äè~¸XcÊH“~¸}ÅE¼®)q öðàºà—XȆT‘ ¾Š]18 æÂ|*­?ÿó"Ä PÖ°|DpVÒUô½Aü(ü/ä€Ï@™ *^7\©Ct´0bŠs ä/Za‹† åFvÜÜÓ—·{iéŸxI¸U|¾OÈlðp% S¶ÿó Ä)°–¬8{ÊL肸LbCdzX€A\¹vŽ›yå¸ìç¥4Tê}`ŽŠ)DÿOÿó Ä-Ø’¬X{ÎLâ7vjÚೂ†ÄÓO½6…|Mÿ–Í!Y-¾ ä F +Ú@Ú`’õDÿó"Ä0Ⱦ¤{ÎL’'Bt€õPÞ¿EôöÝÊÓ~ +Õz€\ÜÁ;a›=‘óŠ²ÿó Ä4 ú¬X[DpÄÄÙ>ôòÎ ÿývàÏï]}ÄÔL+á|Jdvˆ¤-’9áÿó Ä6É>°8b„qúÉ7¿Œ›`_õlÍBFä+ë*ž¸¢e‘z3 \%f[ÉÒíÿó Ä9 ¨b„p,ýu«N)˜)?Ôo³g‚À`VÐ7—ö‚O ¢ëi‰¨á陊jÿó"Ä< ¾ {ÊLpú Î žKIÚîý@¿¯{Pí=4D"©âNOôñÑãyÿó Ä? ’½¸zDLH¥Ã$2m怀nÐ +ÈÍ©ˆ/) D¹ïº³Äé~žGM +ïÂÿó ÄAž°zJL¥î+[ªõ€ü…nZœ€<Sø&šÍ¥1xC›Nk €Á'G±|ÿó ÄE ºµzDL¾‡³X÷€maF&‡µ2µ‘ +JJy_rÅôx'úÑ5u’ õ«ÿó"ÄG袤P{L¨bÛ`‹¨’ +1ŽÃù1kÌÝiŽúü&é ÙwIPÿËhbÿó ÄKðú°XyÄpAv”nÛcSfºŽ`f BÉÀˆOº°\7 ‚Á1ƒc ÃA™RÑ0„ÿó ÄN ºµ¹Mx5'Øži1rÄŬ…KŸVRi®¦:–’~6mÿÿÿÿÿÿÿÿÿÿó ÄP‚¨™PÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÐÀÕéZ¾\ÀQþ­Õ'¬O;T²ýgÿó"Ä I +Á‘Ï8ëeôwåHð·ûþ¡ €ÀèyÍδ¨úHÞ÷l(2ƒxèdJòˆÿó Ä !´¸ÁÊq4ïˆ:þ4wôoð  @í_û”Ž¬¦ R+Z £ÑI1`îó”oþÿó Ä  +¹xÁÄp)¿ƒú?øvú€€0íÊÿAÕ%0HD„è,Á›ˆÂX½L…ßàÿó Ä¡°°ÁÄrÏþÿã~€ÀÕµˆX>£ˆ ¤=ì:Ïà(Q;Üù??Êoì'ÿÿó"Ä! Q +¾XzpÿÆßrÀ€ Þõ­ËÑ­ÙFbq)ò12D¢d5%_éÐýêßÅéû·øÿó Ä#ù¨ÈÊÊq +¬„šã/ІÅ8¡Å­ +ÈÂé_V/üîBº2¿3/ÿø €ÿó Ä&áÆXxÄq ܹø ~ë!@mHi‚¿²Ö–X 3•mqõx¯ö‚쿹Pÿó Ä))F˜ÎPqrÎDƒbCAxK–š¦¤Ï ø{ÿÛÕ¶ÿ —v°€I,‘÷’"u´AÚÙƒÿó Ä ¹˜{Dp©ød„SK×CWþ‡øßü'€ ™€Ö#ù:ŠA¤%"àâMÿó"Ä 9¾X|„pìH‘¶Î½|S'ýþÛý0<2¨‚:Ýç¤ÏvÜ*i¬k1˺Bÿó Ä +ÆYOÖøßÇ´¯–ÿêOFßüK€€Ê“úÝŠ +Ÿ5¨Z~y`1‘Ãoº\ÿó ÄÔ‚ØÉŒ8Õ§¶woÿÓûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀ„ ÿó Ä Á>Î9Ë°©dš[-«±G(Üëçãàùéþ‚ýmæ X??ó ðCÿó"Ä !Ř{Dpf—sAÌîðz•ÿH¨Ø¤ÂX±›èt_$ÿñýú8Л¹ € Œ˜êÿó Äè´¸LNL¸H¹2§¤J€tÑÌ3u7ZÐ ;$Íÿj[ŸWXðð7¤ÿó Ä !>Ÿ{DqÑð+¯Õ* +Ôäû}•Ì› ÿ¡}‡Ëêß„p€÷pÜ)Í…ÿó Ä ±x~L$C]ÖVÃ$û?rÊÿï¤Ü##‰«þƒ=ýv}@ì +àb,ñ7V:™ÃRÿó"Ä + I½ø{Dpl)2èÃP¿¤ß¾M|ìŸêO¿û`öQŒj Ë´r+6šÿó Ä ¶KÊL´’ +¶³Â<ÓïÙ°[ø¯SÎ}`Þ!0VÌ4qU©bKÀ2ÿó Ä +Èâ°{ÊpÕl\ÚžÙy5ÒQ2¢Èt¿Ô_çq0;Ø€Ìǀԉ䅸ÿó Ä +ÒXJÎp|X.½GÕsoù®UQ¯Õ?b¡¯ÿ*,êp !€Ô.? kÿó"Ä )ÊXZÄp A½­€?ž–ßë¨ùøK·ooàßÿã;XäŒp:GšÈ€%æÿó Ä ÞѸKDpt>¬L–hîßLǽO+«W ÿÁ»ê1Â`L`:AgPz`¨©]¨ÿó Ä vÁ¸KÄHÅX¡ˆ­‘èò°ª¥T»åºÝõâ Q6Ø“MH}‘Èpc8hOÿó ÄÉ´({DsfI +ÈûîFS[õª{õþ;€#ÀKBná˼#<»d íËÊ’7;×èÀIä,ÿó Ä Ž´x{ÄLAg¾³Û5ëk<Æ^jM¨±X.CŽÔ‰òëÙðÓ±DÿÑ••ÿÿó Äñ¼PJÄq«ÿ“OÀD=p<©g>ÚU""b0´ß£=KñzY·—b‡ÿó"Ä" PâÁ¸Z„pê:zÀ€Sêy Ðè¹ ”0 +ÃC‘ªMD»¨6C¢ÿV¨Ïµÿó Ä$ æÎXADp`à|¯Ó6öÃ9"31¼†€œ¿ãJ/†suÇß÷n±f%i€ *ÿó Ä&€®´X{JLò»ŽçÔ“¨tè„0xÁýþ +È€ŠÒ³KÍ™Í(h$HŠ¨‚þÎ>©…øA=ÙA?¨gì¯Kvá0ŽTËt¬ÿó Ä ÚɘyÊpQlH3¶3Š‘Š€>ÿMG/À²ŒÿPÎýõy0ÀP'\Q+žð3ÿó"Ä ÚÁXbŠp>ÒBƒhé„`EnÑ‘c‘|þø?øïd K¹à-€™»M½ƒ–äÿó ÄðÖÊ8YÎp²¡’¡‹}Ë6Ü“{T§ñ0tâ.n¨€ƒycˆNOQ>Ÿ'áIz6ÿó ÄèÚ½PzÎp€–ÿü­k–WÆ¿|;ùBÔmëðà€Ãy]á.cŒºsü^ “0¸/ïÿó ÄÙB½Pz„qñ{·á¿ à›ú¿ûÿÀ€ ÊS*M°‹aðŒ*<ð‹ø¼ºÝÿó"ÄéB½XZŠqúÿƒôõšŠ½?Ƹ€‚<,¨ÂÅÅÁØW¨” =µär_ ˆ•`$Öÿó Ä1B¤¸~q¬ÜϽ'Êå×Þÿ¹UWcŠƒƒP$c²„ÎÎÍ.Ú{~…œ€Kÿó ĨöÅXKDpHŒíØWðò‡xЦƒk·Î;f¯¿ô‰ôàwñ €X„ÖŽÎ<ÿó Ä è²½XcÊLÐ-l¤Úž1¾÷ÿz/ô~§ñ_ë@€ ÂŒ 4R`û1ÿó"Ä ö½P[Dp¨c +a$qlÖóŒ‚äæÓúŠÍ÷þ7ÓˀЅP&²ŠDè?¨ÿó ÄðþŸKDpž\ Ê%íýÏs6Õ´ñ¶ó¿ôýœT y€}±âî¡ypó”\3ÿó ĸúÆXKDp&@þ¶ÖuÿN…ËÕGÿýÜ2€#¨-5D€ëøg8¡PœÁvÿó Ä Ö½˜J„pòºG…òÿ½°x;[º:€Ìu;â2d+Gaˆ+'kÿó"Ä)"°¸cÖqóºf]«í¤–·MCnŸ1ÍÉÃp.œ{3èû€¦éLýÄ` &ÿó Ä ©ÖX2p4ÍÀ±{Çg-¸•d¬è]®§d÷®V©Úßöå_è!?X€`@ÿó Ä ¼ØL +p4ëÓPmŠ ¼‹!<†‡(]'?©Ì×;Éô*ã[ÿÔº@Àÿó ÄÙÁ˜JÄq+´¾Éå‚ + À* ÷ǨĽ—ßñâ²VÿôÀ€ 0hMÿó"Ä QÂ8KDpBqV{ÐÑ€ c"ýÛÎ ]ÕËò¤F_ñ¿üú€€šô“&Cÿó Ä +ñÁ˜KDp“KD(„œx…‚#wõš›nÙ¾£K¿ûúüXÀ Ù0Pæ +ç!üÿó Ä +Á:Æ8J„q´I„R–ú±mx?¡o¿ðGôÿÿƒ€Á8D*Bø·ˆLÀÿó ÄñÂ8KDpSsŽŸÖ´ÿ Óo÷ôOÔG(hôSÊÏAì!ˆ*Xü#ÿó"Ä (¢´[ÄL,MÏœ X™µ÷‚GP !ôåC΃q$ ÊÇ™xµ´gÿó Ä yÉKJp£õ*ÔP6ÞþaV_ú +·ÖÀC–B‘ +màšXˆT#pŸ•)<åõÿó Ä Ö½hKJpôáèÞþƒ–s¨ýý@‚Kñ0 ×FÉVÅZ‰ðAÚ9P.‡Î3=:çÿó Ä ´ cNpðQÿü¶ßòûúÀP¹)O!š6”’T>) A´§N£÷¬ÿeÇÂCœÿó"ÄØÖ´HbÊpÖþƒ®ë=ò€!*ˆ Ô\6ø¹w¦t3Q˜ú]ŽeêÉçüã*WO·úÿó Ä éÁb„p‰­Ü¸ >ãéx ñ¾ +|KH J–O12µ¹6¶Yú–vèß-þîÿó Ä#ðÖ¬(cNpPÍ.» +%2‚‡&-†:HUÌôÄ1„þ_«G\摿¶ù/Ýô€‚yÿó Ä&Hž¨~LBU¾Ö’£jЯ©Û]¾¯ø6ÓÑ/Ê€ €c¨#ÿó Ä+ ¸øcDpç±SŠxÓ$ˆNΔgÙ7W8ý+Ó”vÚ­àÚíåŸP¡0,m€bÝÿó"Ä- (ÖµKDpÄùd‡‹•†ó;¤ÝüIUeÅwá16è +îÏßõ€ÁʶÐ)v,’ª`ÿó Ä0 ÖÒXBpúÅøŒ̯2<Ú‘m¸mNü€ÞíëeÝ€@6ûp"Ê +|xarÿó Ä2 ÖɸIÄpB`p[1ä®s}ž„¶›™¸ÿª¾ÉÕøÙŽíL« )·³dQ§ŠXBæÿó Ä4 !Æ8J„pk\·¬o…±`¼Òñ¬¡jëu´€‚4Û£/™Ô‹ÂõÇtÌ ÿó"Ä6 ¢¤~ +Lî%ÝïC>¶–óukOì£l¦Æ‘J¶¤üÑ 'à;Á´œœüÿó Ä9àÚ¬Ð{DpÒV)*tÚªûh?Mãzj€ HÚØQÀ;ìZ Ñj1¹2{rÿó Ä< Ú¤ÃDp©'OêwÑFÙ¼üHh1d+;?ÄeÇSñ$q¾‹P¿ ;ºèÿó Ä?é +¾Xb„qŒOÅk‰Ý|tDÄ'ážèª%„ĵ’ˆ\¥Ïõ1!åväSŽ&·¼÷Vÿó"ÄB H²¨0| +LÜ—ó°mŇ[W +Û7£­ÉÊ?‡€€ÃÒ,Š9/`CÉ.‚†bÿó ÄD Ñ +¨0Æp™zÞ®õçê‚?è_㿧“§øÐÀjs†qC“AQ·¢‘Zÿó Ä7 !>¹P{JqI +lÕó‡õ¥Á¿Áÿ ÿ|­>€Òá9T¤¬=‘lÐ,j)4+Ìÿó Ä9 ÚµX{JpT“ViÀzõ +ýGèzŸoPÂT¶ª;Y"{€$¥”q üÿó"Ä< (Ö´¸{Dp§–â]|wê¡¿ÉâÛz€¹³]¶kn­B,îƒá ´þ¦ÔŸ ÿó Ä? ½˜aÊpÕðAÿ¨ÿÁ4—ä€Õ\HF_Jø +»Ã(¢p)Ñ6¥Ü÷-âo}ÿó ÄA ú¹x{DpCOoRýNS¾°ÑÒî¨y ÍÜ pÄÁñ*ÝjY*rëï©?”[ÿó ÄC Ö¬°{Npþâ4~íü+€#A¹$f\–RYR— Ä8º &B±©9E¢|ãÒ‚Þ”ÿó"ÄE IBŘIÄq¤IZ&W$e&™9l¢ Ê¦w²D˜À!èÙ;ÑHÏêu“Ê^€Ä0ÿó ÄGÉF 0ÃÚq¡½€´‹å°ÀÕv0ŠßÄíc 3B_Æÿ¨ïëéËþÃÀ€Gÿó Ä* BÒXYÊq:#q{“vh9 +â„..wøbN¬‹Á]í¨kü·õÿÿ”pÀ:±œ¬ÿó Ä, !B½pzŽqôâjãöÉRxdøÄn»ðƒeê$(þ¯ý?ÊÀ à—l™ÿó"Ä. >½ðzŽq}÷G…Tùr£K|pejwëÐOðCz}Ü<Á`«­ u#XZÞoÿó Ä1øÚÆ8yÄp$uº‹¿Æcmg¸±õèÄź½½`À($p‘G¸6G¹ã ÿó Ä4ØÖ¹p{NpÓTL+§Àã4#Å¿¨øÏñž·ò`€¨ TŠÇ7ÍŒÒlZ•Œ·ÿó Ä7Øú¹˜yÊp‹ù këøN©Œ_ê:­õ z4¢7èßïüqÀÄ0CÁí€Ò‰ðß8*'Zÿó"Ä: +ÑB¾8kÎqÚ€•7Ûé­^z"3õBÿÝÈu„  Àû^õ¶…Çͤ£­‡ÿó Ä6ÈÖÚX2ÊpÈ.ük”ÊðŸøþ§ò]náàÀ@ÁË@aŠÙŸV)¡6.j…@žÿó Ä9 ²ÊXd +L_å]YL´'õ ýþ +×ÝÖB@òĪ3ϱ4VÛ‘Ä‚P*ò©²ÿó Ä;øöÎXZ„p>‰õíÁÛøgøÿoW†ÀÀ …ôá# +5¢™õ:DgP)Wó‡Öÿó"Ä> Ú¹x|Êpµ.¨+þ‡þ£úßý@€€g€·c]Ü€)o-)3P^Ÿ_Î:óôà_ÿó ÄA Ö½°{Jpãÿ(©Jßü°ƒkVe°¾!Íü5Û¬1Š`Ñ»–¾¢¦èaŠ!{óÇÿó ÄCèÖÂX\Dpï×é ¡¹€Ôø‹ªÊ"ò|^dÌûbÁ«E”mþ4w‘êÿó ÄF€²´¨{ÎLó €ƒnĈ;À ¶ÈŽçœ„ço‰E‘þÚw ·ùQŽ§ÿP ÿó"ÄK XÚÎX{Jp ­-ØÍ369‰ötC*Hý#Æ +x#þ‚ÿã½~@€ÀÈÿó ÄMèÖ¹ˆzŽpÌÚ@æõg94e\@oñòÈ—› ›õAe4?‡€À (ÿó ÄPðÚÂP{JpŽ{—RãtåE¨±xWoȬ촦J ÃÐcý`À€©@»U.ÿó ÄS Ú¹˜yÎpÍxÕøQl,¬4=ük«ZXKøÁè;Èÿ†À€ O Ü“N ÿó"ÄU Öµ°‹Np…N66:¢ýFOÛŠÿ¸5ÿN¯õ>¬Ž8¶ô÷ÀFt2gæ"—ÿó ÄXÐÚÂXyJpØFXˆª€z,½ä2ê_΋Xî³æ:“£+Í=æJè`Q»ÿ¸ÿó Ä[ÈÖ²yÎpwÏ°ÜÈÔ?ꈔP€ À9€øyµ«S% Mm&R" ‚¦}¼ã­ÿó Ä^ñBœÆ’smþ7ðCFþ@Ãh‡‘ÖT—éWQi$0?L¾r’·xÿó"ÄA QÊX{Dq?è/ø&÷r €  ‡»Œ‡LôÈq§3(P0!‹…™jÐâÔøÿó ÄC˜Ö½°|„pÇ÷qÀà‡k¥8ðjR=·,¢`™: +ɺ*ó3Ýê#ø!úÝÄÿó ÄGèÖµ°{Jp½@ÀÁﶢ6ùˆÎPò3¢d_ µ7e2—hßÐø!ý½ÿó ÄJ Ö¹°|„p`‚€°Ô(ò½ì¡Šãd©²NAÁ*ªüï½âÝzÿþ7ÓÖÁÿó"ÄL XÚ­{DpàMà/yw¶Šˆ6Ü9ó£H^˜þþ]êö—ùÃQ]oäzÀBÀ^ÿó ÄNøö±|Jp¨“ +•¨4³Û‹º“í«®T;ʧ/º*‡aŒXEÒ ´¼É¨ã¬w¢`ÿó ÄQ Ö¹¹OBˬp̶pÌù£±§Y6ÔR2{Ôɴ3‹¿ÿÿÿÿÿÿÿÿÿÿÿÿó ÄS\‚¨˜ˆÿÿÿÿÿÿÿÿÿÿÿÿÿÿàÁ q€=^Õb׫ƒØ0q»á" +&X¿üÖÿó ÄØÚŹÏ›*[Žß¡ÿ¸’ôòÀ B타>5½öG¤ Z‰ÏÄݘéáÆ—…¼¥µ¥ç?\ÿõÿó ÄB ÖÂXKJpz“ú?3c@ã +.ÎjajѾ(Ôk"€f™²/Ò=õ(¿Éú¶ÿó ÄDѾXLJq[öÈ€ÂOÀ”ž fÉY”–ZLðt 7âAKó3ÊôÐ?êKÔµ=ÿó"ÄGÈÖµ˜KNp”À°(À’{˜ø˜:c¦‹*øAÍ_η{@íüwÇL;ÙPÂÿó ÄK Ú­LÎpÀª8©„šbóÔIZì7@2ÒNËâÖ©‰/×S¹ g$‚Àýÿó ÄMèÚ¶8CJp0[C» ÃQõ7$@%ìBGÌKWçPãý1è—r½°Þ`˜ÿó ÄPð’©\ÎLž!,¤ˆÅâoÚgƒÅ)ŸË@Õä!ÂÙ8“Ôþ€Ï!°Eh+0Wÿó"ÄS PÒ¥XcJp$”Ð/p÷ ã:yaû(|‹ÞˆÝB"Êm@€(y_#‰=Š5…"ÿó ÄU ’ ^ +LºAÄ€^96.š¥\±õ +È_ø¿©ýµV €y^‘PؤyQóÿó ÄY XʨLÊp¢H1[¿œ=òûþ¡ºmÿ¯ƒv  !8 ašÓT\ PIÿó ÄZøʨÈ\ŠpD8 ˜hH¿Ö{åØ¿ñ½Fù9Z|B˨LØÔ°jT^@ºµ(°òK3i£·Ôõs ˆ¯èÿó"Äg @ú®XcJp? ÷rT`/½Ýq-9ïBu³& Àßx€„õ~r¢9  çÁ»°èÿó ÄjøÊ©˜L„pÙõ¤`DX 3 ‘"£&Q8]cTæÞ³d™ÌÍvRtüÓÿÿÿÿó ÄmøʾYMÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþˆ B(¥åzܪý¶$ºÌÿó Äpü‚ ™k3xÏ­¿þ*ÂĿՆɫõËÒ0;( WŒFQ>ˆùÿó"Ä7 H²ÂYÏHñhóW³}Eýò§NëëÇ@€6¸T…#s”ƒu²î¯÷…ñÿó Ä9 µ˜LNq«=âjßr…·ñmn'û!ž Á 1Ž#1ª“y8üˆ /–ÿó Ä; ¶²8N +Lí¯óCúŠzŠFœíªXÁ +ÌZÖ;ß@3wË °ùë68ŒÓ¨^ƒf?Kh·ÿó ÄaèκXL„p­þvúÁÙCÊ€„#¼\é2W)¨îLhçŠËì³ý¨Cÿó"Äd ! + ðdÊqÿŠê]_ú7HÐÆ€4ôøNüUÁ×D~€HÔÎp¥Úðýÿó Äg Ú®X4„pIÉŸt€À Ày +eˆþíÁY‡[@ZÇ"˜Iya]æ0Ûnêÿó Äié +²XDDp_ët<Ó¥€5KQ0·@±è@úŒBÞ=Hûz›ç"Å¢Ð×ý|ÿó Älèέ¸3Dp€0¨œY£5œ.‹f`ê(Øæ¦Ûj=ôà7õOËwmXÊRÿó"Äo 8ÎepcHÒ‹°¶HÒ—àO«$ÅÌâÞ¿Tƒè&PlëA“¨ý Ä€ÿó Äré +¥¸\q¦›ULPj©$´¤ÀŒlXÞ¿Çr?GôGÿïÄ)Ñ€ê€:­ÿó ÄuèʪXLJpa‹Þ3 +‘“$L².®ºÌ_ÖY‹oj™ó ÿýø`ÐÀá€53tŽÿó Äx ŽÂX3ÄLáÁÍ–(òbÔ|´ÿó ć Î(LŠpY5þ~ ÿé£ÿø*€?3âfÞ(­_¬h’8ו;@»»M‹ê®üÿó ĉ Ê”ðM +p´þ#SþYË÷ D^',ˆF*Qc­mãáv;„Ö}ë•ÕMô„þ›ÿó Ä‹ Ž”È6LþUÅÄH® Bk ãÜÿ—å! +¯F±Éy¾ìn„DËÐÿó"Ä Q +™4ÄpòÀ@É`>4ˆO9ÙIÞ Yàð††‡Ùûüì;ê·õi_ÿ”Éÿó Ä‘À’ˆ(NŽL uÃØ¡_wœ¶Ü8ó‘Z;ÀÚ›³–9„q à.s=n%ù ™ÿó Ä•’²XKÄL€'Šs3ÊlçC‘½põpcµ£ñ£§äS¨Ž§#ó\ÄIOÿó Ä™ ’•¸6JLKQ$µ‘Q/ iJgÄÉhª’º‘äÿðC+õB‹Äêÿó"Ä› I‘¸LŽp9¢x˜Pñ4( +d²%£,’kùyŸÿàŸÿøwp@ ¨` ‡’lBÿó Ä Ž|ÈN”L•O*´ß…²"­•'ípÆrýB°Oâ?å^°Ëhb,'Mâƒ$ÿó ÄŸ Ž•KÄLÓR@‰öN—¦_ò“ýwÿñ€¨ÂᘤN¥ÇÞÿó Ä¡ Ê„ep¢„T!_Mf¶[SùÓ¼ƒy_üÐt€å€•%…J>ÿ–šŠÿó"Ä£ñ +„(MsàD‹…gÖµ?ËŽ¿vóUÿÿƒ`œ@ó€ò´”©è1žkQˆÇ|Äÿó ħ ’…NLjªj›çØ!¾FªÜ9Æþe ²Sþ@àă(€#k‘Ý»`°ÿó Ä©  +|PM +q`®ŽøhN†7‚°Aþ …´‡j„¶£4mi”²ëÔJRD î»Ô)ÿó Ä«èƸLDpÝ”‰¥Ô„­alOŽaßHD(cAôP‘ý_¥Š[X&¤þ®[äþÿó"Ä® !¸dDqUÝZÌŽÓýOúÀ<Àã8'@© þ»g´°ØèóÔQæ^´ÜRÿÿó ı ƸLÄpά;Œ¤6ÏÒ< +0tVöÅH2³3šffáÀVÍß;>fËóÿó ij RªXX$¯ÛwÔ‚¤ ¦} m-HÔù8PóAq¤µ2¤À­©ÿ®¥€ÿó ĵ ¨Ž„fLˆ ^hW¦úõ¯o:Ô°@“&ik›Þ"£]:ÁM|ÃZ·}u€ÿó ĵ ’€NšL$€ˆÎ€ÀS\¹ÿ½q 6-ô†Ö'j¸Y–bÌ„H J¶ÿó"Ä·øŽ„PNšL€×s]ˆ!LÀò"|‘…pÏý)ÿÿúQD”žˆßÁ +ý@_{ +bY°ôÿó Ä»¸’„PNŽL .ó6[ 3¬óQcÙ± •ðý·×¦·¶º@€A¡Cÿó Ä¿PÖ€MséâóŒänÌ[(ˆPßYz—ªÌõð„ßíKþ  @òteô( ©Ì#¥Ã»wÿó"Äà 8ʈxNpPË~‰ÛóˆßëGÔ,À.„ÀÔ^ฦf&(“‘"¨ r¼ö;E˜Jÿó Äã ’¸N†Lþz«ó—»€ü͹g6-ÏÒÓW$Œ?pøÆ=oô¶¥oÝyÙÿó Äå Ò‰¸4„pò€ÿ +.J4C 5Ó8° È(óSÔÀ˜‹HZê()ße]´uó%R ÿó Äè +XÒy} +pòZÚ¿.P6ØFQ>‰]ÕZ +È=ªÈ[ +©7)2Ÿª½/í©˜ÿó"Äå ʆXLp¿?ò€Ø`P,Ê5R_Ü[ VÑHs˜‘4ì¾hƒÞº6eeìÿó Äè €’p~’LÑÿü¸± ÛðoÜñL1þÑÕ`”2&añ½Òjó3ÊÕFnŒo’™ÿó Äá ¢xNLMßÿ¨ŸÐñ)ÿðB=z¾µ4™ t™ dZeùfšð}Xë­¦ÿó ÄäXnˆðf*xqÝê9ô€pÔ|0LšBàÌR16/FÂÄÌÚIeùMÍyÿó"Äé +xÖ|PLÄr`ÏÊÃÀ0D‡þMÌOÅÌí¨»¡£„•ä—2‡ã•¡æ³hÿó Äç ˜ÖL„p3É×Å€  +72]£Ìv“Û OQóÉ K—n&]Bîtÿó Äç ¨Ö¸L„pwêïà’ÈŒÙæ4„sƒÆb +€ +´,xò õy +~ž”)ÿó Äç ù…¸dDpõ Ì8´ô ÜÁÐL\‰™™ý³÷™;Žµfhã'r­Â!ª«ÿó"Äæ +Ö…¸LÄp¥f>€¿€1$XqHSEQ˜Ñ>õ-ð¹SÕÑRŠÜªQþ€€0­@N(‹FÌÿó Äåà~|øNHäf¢ó23¹P)dz[s*Ê0g`‹”ÔÿÒ@1f€ è¥0¡Dóÿó Äè è†tfNH3TâµÔN¸r3ýÿ*eßœíº?Jhý @1wàãyH˜ð­ˆÀÿó Äç +¾qXNŽL+ÇÆúÙj@_‘´ ì8ºHzd€0†_€ l„¨M×;^0ñÿó"Äå ¾‰˜NM´dº¦¥×íp±"EÓ¸¥ìüJ ¡Êóâóg +¹w”TÑÿ B4¾‰ÿó ÄèÞ†8Æq¨æû­-¼ÔcYmG|F0ìpÆ0Æ9fÆCža±ŒÁ꺲ÿó ÄÎør‘N H gêM<ôòWoúÀ 3ãªwQÇ€¦#‚!PÕÞÔËU©G@ÿó ÄÑ ÂNDLó?fÏrYÎv(RØroŽÌ=a†€@^„>š LϦ(œìYÿó"ÄÓЪ‘LDLQä/{eøracß÷Ô0>õ`‘‘ ¡!q .å… EÖQìÜÿó Ä×ør¸NHÆñ˃2³˜µ”é¿òߨ€ÀqX±Ç`áÉ6PžW6šñäu»ÿó ÄÚ¸vl(fžHý‚1G;ñíñ'Ä?€ öJÔ ½8¥Peá /Pýo\ÿó ÄÞ ¾†XDL19/Ô*ÿò_©þ €¸Ê +Œ¬pßD÷Wñ™á=c)4H}ÿó"Äàà’d(fÚLÿ +òúú€€&AÞ¡ª>¸¬2ƃ$ïS6£'£ŽÊÅn‡ÿó Ää ˜®–X{ÌL仼·Èü€‚û”írЋÍGÊ +Z0µ Z/{ûDPëÕÉWÿÿó ÄØ 0„NZLÏ}Ÿ@ /Ûq¢øäžà³6QÉs +\<Ô¾¥¾[" +ÕÒú‡wÄÿó ÄÚÈŽŒXcÔL#ò@Àð{%€YÜnÑM/jl„®îä Ñ +q3qcÏ_ü/ÿÿó ÄÝ ÂŒ8{ÔL©/ü¡?¬Âõtìµ·N‹«Fw"ÄbTKH†_Ÿ˜ø€ÿó"Äß Pòx{Np?þ#ÿàÄ Y¤"Ü•«-ût‹CÇ’Ëa-«Ïê{Uíl0îÍKÆÿó Äá莌x{ÚLÍÿB_‘€8 ù;yx„ÌÜ9B‡*‰—܉@·g÷\TWyR|ÿó Ää辈8~LkÿËüˆ€( í¢úÍWëb‘xš“ „Æ–ª®Ã%5~éò§jï+Ðÿó Äç ˜Ž„x~LMñ6œˆ 2¨–¯J·)“Y•dq ‘~,–v¹r‚Ø5îsP¼¥¦‹6ÿó"Äç +0ò„xÂÎp&ßùo‘Pð,umÄÖjmçJ+™g¦­"š¦§­ðÕ?“ïâ/òÿè»ÿó Äæ ˜îŒxÂÄqKîƒå€ ¶o4wU×}ŽtfƒÐ¾MK*Ê®Wó¼(I…ÿó Äæ À¾€XÆLøKÿú@ =e öJ)¨‰HÜn;$m–äÄ_û܆Î;PÞ'ÿó Äæ ¨¾„P~Lñ&€€_•ŒßRÇšC/55Õ¤P°Ñkgïu.óÅÂm©¹?ôÿó"Äæ ¨Ž„PÆN¿‹È×PB@ ÑÔþk ¥øRËayJÀÇqÒj@x¨ù¦þòüŸªù`ÿó Äç è¾€ÎNC! + €ÿÀR\(¦­€Ê[ÂCQG‡Å=cj£onkøgÿó Äæ €òˆÃÄsOGJvä +À}Ft“€Þ‹FÃV»M+®¾c_txÄ?)ÿó Äç +¾€PÆ +L£Nð2Á2ÜBü•kvd„KP@È6P“™kUÑFÁŽKýÿó"ÄåàŽ„Æ +L2ÍÈü6ºaäDÛÀ£pp‰X¢DoRÚsMµ_ÉÿÛªÿó Äé +h„XÆ +LŽÕ¬ÖÌ£ª*‡}*ŒôyÆ hŸjHó…¾±›©hñ© +eþÿó Äæ ˜–ŒPÃÌLŠ‘§$ÿ?1$…¢ËO bÉPU¢M´&úë_}­+¨ªéôäÿó Äæ ÐŽ”xÃÐLõ€ÚZTÑQuÆg`³PBÒ°:&*EóÁ™Ý6Ǧ0çÿ„iÿó"Äå Ž”8{ÊL~šr{QHƒCÿzìÖ-³u !S굶VP½åJŸ0üÙøïà¾ÿó Äè ˆŽŒËÊNþðïѤÀ +ÀÌÊ¥¬Ñ2¨6¸`¾$ +úm7®µÑêäF~[ÿó Äè °ò{Jpòþ?ýÛÒ‡„”-"É)±å@”W•‹UBzdpªÍÁ|Éÿó Äè øŽˆÃÎLã'ÑO0€3.LÆj¢ÑpÄS¼aqÛ4]‚^Z['ÖðutxÈ0Ó6¢ÿó"Äç ŽÃÄLΕu*ý)pÇb,°`dH44V¿EÜXP½Ií[”x’_ÿÿó Äê +¨Ž„Ì L +Ký ?oà˜ò8¥A`ÂN/Q(˜%:ã~¢3ìãô +Ðÿó Äæ ðÆ øÂÄpúèz@€2ܦ,‰iÌ1Tœ*ÍOód8ÈœKåKÑê@‚8ÿó Äå ŽXÃÄLãÍPH‚±– +-NžÂT =þZ d¹¬Þ“®ó‰{kN¾fwÿó"Äç ø¾”xÃÄLDý¥+À€¸/#e9'çE%±Ä4)ËZwÎ1²þ)ó)Ã^ÿó Äç +ŽØËÊLŠøXà€# óPÄ¡§Õ$k²\#R¢è6ÄætN3›Î(]øÿ#ƒÿó Äæ À¦˜xÃÊL ±[0ÀÀ_œˆ±)qW,­ÛŒ¨$¢w805™ï8xÝNüOøÞÿó Äæ ÐŽÄJLÚÛ~XcVnñ0,0IJ1½Ú™‰ +ÀœC) +¶šVó2ÑaKð“ÿó"Äå 0ªðËÊL}†÷øî°ÀßÀûQþn¸±‚.1 Q³_ʱ»q¿ãýô ÿó Äè +PŽŒ°Î Lëò@‚Àµ5o1e1bª• ”N¶RE0’¾¨F5ç}3•¬úÿ ?£ÿó Äå Ö©¸{Jq©} y0€X–J¿õ×[¢ƒ‹µˆ-;RxÖ¡G~úÿó Äç èÖÃDq êwH€ hq—É«j_w4PM4•Ø-Sê+µ¸°zžuÿó"Äæ °Ú™XÃDpþ7íT?Ñ ÔœÊ”Wº!cÿ—€ÀxAý€Žë%1uõó|`‹Üÿó Äç + ÖXÄ +p4TCŽ¥?7ù²K£ø!•è¨¨A}€‘t 2>-%<(Ò£Œhÿó ÄåØÖ¡xzŠpžTb“þÔoGð‚Uä€À +7À™¶$‡‰R`Dê4Åé2­ƒO© +ÿó Äè +`ÚŒ°ÃÎp‡*(ôÿÀOþ/÷ñò@   xEí@9®.±ò†$=n^ÿó"Äå (²™øÃÄL`sbߎ»¼Mò€Öê~ÞH£è]&ÀꆸŠi„¨^E?ÀSÿó Äè +øîš8ÃÎqÿã¾þ0VîL…Ûi†Óy²•2ía$›‹¬G ²¬‰ñûP~ÿó Ä× î¾XaDpo2ý ÀúÌl9Ò#ÞU Ä €ÊMT’#ÕÍü;ÔWþÿó ÄÚ îºXIÄpƒA»‘Vvì.ÇT‚.Ž)ã•¥à†§…;èÝéi­ö ·÷9k™ó=ÿó"ÄÜ Xî¥xzÊpKª~òˆö;p@uY‚T‘þÆÐîᶢVh“VÈEz-äfµ=ÿó ÄÞ Ž¢{ÔLÄ5žYšçª§²!Èä{¾Ð(OP+¢P”œ”Ö½@> ÙÔÖz·ÿó Äàð{Jpó³fMùzOßè6΀F +v˜SAMÞ7Ì“?Å9šN+àWwƒtÿó Äã îœ8zŽpu%©ÑŸZˆÈûÕù`ŽF±’ep|%ƒ«’—„2Œ>-öSø]Ëu:=ÿó"Äå @ö¡˜z„p=sܾ +ÎÕú@"9¾K ¦bŸÚDA„Yµé/j=ãÚÜßAò9ÿó Äè +©>”~q5où`ÿ€a¼Û±£WÎ'WE`Рè©vªŠè^œoµMk…>ÿó ÄØ nœ0~(O¹^°¥€L|¨¬3îL\ VÑe¨µ…hû*¹û)Me#F~ +ÿÿó ÄÚá­¸KDp°.O»ê¼RdÄS¦*[ÙÄq„§É Å›±Ï·øs •1?'ÿó ÄÝ ¾¬xcÄL=*;-¯¤° ½0ÇŠ|¶ðükìÁk?f6Ç).w>âg…i•Pÿó"ÄßТ”~Lœƒ·tV°d‹h’,¾5°®†.FSsР•ò4fâ#ˆõ¦ì?dIÿó Äã ¾¬xKDLV¹:ð*½Tå›LÑå0Bm±Öcw¾þ¢»tè&qñy8Œÿó Äç  Ö X{Jp +~³B¤(¤5¢~Ùì¡ôÑ9C;ôyXByWSÈAC%ú7/ÿó Äç +Ö˜X|Dp+«ßõ‘7ü en¾ìDóÇ`|âaºÚyO}õòøÚ¥ ½ÿó"Äæ ð¢P~L—$ºÙõ€€€¤X+ë©Nh)öÜ.‘Ä`G +󄺊³{^ÍÕ¸Þÿó Äæ àÂP~LC÷}@*¶pQ“äFÆÀPôõ) e3çrßÜüºx7•p±ô2ÿó Äå ‚¤x{ÊHCBÞ§} @+h|#d9ß)c€òé­ÀÁ²:ÈLbšú›Z_Áù»¶ÿó Äç°² ð{ÄN ¿üpgô{ Z—>ð¡†+Øе°D±¥›í«bPM|kÙGSÿó"Äë ¶ˆ8ÎLS%ºÏ}@,¿øXsÒŽ}‹~Ј°ºE…›~¯}3…¹têè¨ûõÿó Äæ ÈÖ¥{DpO_ê 7xlíÇùC¶% ¡Ô;ãÉDÈ®Œý}U¨xJôt°·ÿó Äå ¶|DLÿÄ:À/ÿrCÅý’‚Ì9‹@ƒ:M5" +ºÓçéÓ’¸Õ™ÿó Äç +ž”x~L•ºöè-þ  Ó2ÉJ_P4T@µÿ¡ÞZÁT¥ÒÎÚœ]ECgÿó"Äå ! +œx{Dq§?ý ígÈKÔ­¯ì&0 dJ×fK*°#ƒ~]ÅÒ†PHTê¼ÿó Äè +¶”xÃÊLcíù ¨&älpysNPÕÁi"ŒWE”Å¥ŸmbsÊeÿó Äæ q +¨xzÄq§ùPheÄeØ° +Æ`‰VŸ„x¦Ð§Ã~gøàˆ4Æ~üÿó Äç ² x|LR§í—ø²-Èx´<`ãlB +¡Òh×L¯í¯_tBóóqgbÿó"Äç +a x{Dp|ŽÐàO·& ³EP·Ü…‰ÑÀ„à’*qš›£ÐMëJv]úÿó ÄåØ‚”PÃÄHŠÚp˜ZUb”ì$»\‚3T<Ú;©#¡B‡vòcù#ÏóÀ€ÿó Äè + ŠXÆ +L_A]üc€ à +J²ð<±œÐŒeª_°ŸœŠ]]°§3Åg‡úôÿó Äæ `Š”P{ÊNê~ƒ²ÀŸàgJ•áKfVÅ2œ‡j ƒ¼œM 5y¯Ìðý±ºõ·ÿó"Äç À”x{ÄL ÿºÞ _<ŒäÕi„vÙ8Z–i©Y‰{¢bßøQ"~ïÉÊüoèÿó Äè ¸Ö¤xzÆp?QŤ°51?HLFùå®àb”“©©ÒùxH:=S3ÌËJgö} öÿó Äè + Ö˜X{Jq oôn<0"íV{øÚ2βäKÁt1šÛ^Gâã_qdÚE)•ñÿó Äæ ÈÖ˜X{Êqãýý0Æ×j¢î‘+/ ¤»)Q\Ï\=3›jdªtâY¿5BÃÿó"Äå X²˜8{ÊLe«=É«X€Ürm€ôf.œ—Š +P(HëOnï yw÷éêïJ€´ÿÿó Äç  ÖœXzÄp¥o?¶!ít¥ äXR(pÌ`2I>©lH² +›B\¼(r\ÿó Äç ðÖ”{Äp£þW^lÀ :œ®“L^œ‡`°¶âÇ€Á áëÆ5rØ»7ø¿ÿó Äæ ± +”ÃJsfÚ êü3€€?Àð% +—lr6Àd“‚ÍéNô¶ÑŸýBhÿó"Äæ è²{ÐN¸þ™@ü XOʶeõ´w¨Aà’@áH2Q¹ñUÂáÓ/øŸGËÿó Äæ ¨†”~PJ ò[½ €.à Ù_¬³âÕ­7 +ƒ1)ð¢(`%âMÛ¼m?˜;é}ÿó Äæ À²¡x~ +L ¹p´f½öf¬ŠñäšcËœÐj +a¼©”¶[½ç7ö¿x‡_ñÿó Äæ °†œXfŽHZX@G«HzL  K€Á#VL®U0_„ÍÁÓ‰[…‡g'[˜@aÿó"Äæ + œ8ÊqqÔǦ™!P`0h7ŒYð‚À"´ Zx͆ì-øˆ œODD¼ÿó Äåಪ8d„L1â}7bÂ@Çpô,dñ³ +4ÌG8Ы88LP53'ÍÙ3yxÿó Äè +Xú˜8Êp¬’Ð+M—7)«ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿà +Kjÿó Äå â¥ÉDp°>è2údà‘†y˜8¤œf†‰†Ò•6ᘼ‚‘ Øÿó"Äç +(¶”YDX|RkŠO4j]\tË’Er7<”Ùx³2‘Sœ‚õîúÀ¼-3žÄŒt'ç'Ø“'ˆ”Y +]H­ÿëÓ©ÿó"ÄB P†¥~H¡mÙ¸Ž§3m WlB_Kƒ"{PŒ‚©mj?Î6…7VÐÿó ÄD ²˜P~DL=[›¶D +< šà.BPOÛR”*t¥*£Ç +$6ÑŸh}yîá/ÿó ÄFð²²XcDLßò€€OÀZã +XS:¤µ« âŒï¢nPã­ë9êõ€ÿó ÄI †˜8~H€RÚG7 ÃÆ“){L'œ39 + !2U<çÐÀ ÿó"ÄKÈ^™~L(E¾ @¥3¥6"4@Iß›l+åiC$ íRU?R.u™ZpZѤ•Â¶GÁ@ņM¨ÿó Äj rŒP~HØô€<ÚÀ½Îü'¶J·§E¿AEåTB).h +ÕœÓêq?-ÿó Äl rœxcÄH(Sh;ÃCu¥÷ð !Œv¶ ú•€yÜÈ,ÇáúE¾æþ€@ÿó Äo r”x~HA@Ò eà¾a¼4ó(¥‘Ëî$gPKOîUðθVU¸ÿó"ÄqÈr”PÃÆJªT‹çª¤ŒÅIRZ•ÈïÕÀJº{GÑåe€,ထÉÖÿó Äu ‚”xÃÆH<ÌïɤGÆüPŒMJÉõ¼6Â̬1nËŠ§ò0$Qäþ\+QPÿó Äw¨r”x{ÆH:ÑòJÞIr^8Ón¶©‹ØüÂT0’ÌL´ÖVÍéðµÿó Ä{ rŒXÃÄH™–’܉Ó° ó¸s‚ŽˆúŸôþ€Ä?jQ§Ö8« 謘ÿó"Ä} X’”xÃÄL`ÀY¾–-XF£ _‡èû“î‘À/àoØKþüæòÛ/É5Á¬L ÿó Äxz„(ÎHßH–öî…ÒrtügÔÿFŒ†lÀ?à[l(ââèóˆó“Q½E^c­ÿó Ä„ ªŒÆLfÊjÄKpÚßâº=i€7à Œ†(Ar!ž¬hA|'£pv}SYÿó Ć ’˜X{ÄLÓàþÁŸO¾€°&cëb&ØYnZs8ú]‡Ò[}gã{épJÏÿó"ĉ 0Ž˜XÃLÂ>Kôß¾€\ûGfÑIjÐx%1š#Cˆˆ¢4¨Î·ÒŽ?¶~ÿó ÄŒÀŽœX{ÄL›%FD ´~¥ÔMp°×þf@™-`Þ#d¤·Óp¾}º@ÃNM@^ŸÛÿó Ä ª¡‹Lvê@$ _VœÂ讂S¼2j;•PãæšÖµ;và²ÀÀ ŒXÿó Ä” ’”XÃÄLðãÓ:Ú(tÎ…EÒ,gx’”ÿè®}Hþ/åd_àß ”Žÿó"Ä– X’ŒÄDLMÆi¹Èš L”z”°Qø"f¡ø}»zËKŠgà_ñÿÂèýçom¬ÿó Ę ’ŒÃÊLäØYÝ9!ne €ð9—ª¾ó«¿ }£D6ñ®ûä€À µ(Å ÿó Äš莠x{ÄL¸žk‘ +rä´ø<ˆn¥P}o-‰‰ +Š«qß-äºÀ°"á$ÜJF‚©°ÿó ÄàÒœPÂÄq€Ä€1‰ÀJD®¡¥nD”nÜþ‡þ4u;n¤x»$0"J,Ç[†ÿó"Ä  Ò”ÃJp)x + —,ÈNîýGŒ•àmüê7†ú@ À +ÔøNB!’·n-F`ÿó Ä£ ÒœX{Jpâ2x3WÒ(‡/Ä¿µDïe`Ä*iÒÀ2Ktà’±ÁÔ®ÿó Ä¥ ¶”¸{ÎLŸ¯Á¸P¢tùØö|àW&s Þ€Ô°è/ʘS?q×’% ÉÀSÿó ħðÚ”{Jrùk,™ñˆ5ø)n£ý¼|(eÑÈxz…{`ÄÄRDédP€Ò¹ÿó"Ī Ú”{Dp¿Î¹Õ»p—õþ€·TÀ +Ðh+žDŸ´ÿó į ¶¥˜cL/ðOä:@€&€3˜Ld˜%ò½;l{W˜[Sy2•$RÞï@¨÷oþÑÿó ı˜Ž˜~PLýOè B fšñœäq‰É 1Ä'‘áû [–~¶rÿó"ĵ 8Ö XdÊp=`À𬸑¼²Ÿ.VóïÀ5i#„[¢Ë=- 1ÕÚ—ýã{ûy@ ÿó ĸø¶¡˜~ +L‹lœŠXóN’µÔXK‰Í‚[•O_¤Q``#õ¼ŸXÀ@›ÿó Ä»ÐÒª8LDp€- ¡S|7_ +¹±â°`š«ÎÖ®?"?•åÉ€íaI¨ÿó ľ ²˜Ø~JL„A· íØR¬™ +‰ š6éh¾ðsxf5†8²ÞÝ=  v~©ÿó"ÄÁ XŽ0~LÓ²F ĺÅöÀÒ¤èΉûÊå[C±<‚ßý@ ö˜C$Æÿó Äà ²©˜~LöI“í8ÂŽáXØåkŽô=y`¿4|‚ý€À4JŒøÿó ÄÅ膺XKÆHoÖ³àB9c:9ÏÌ þ£/Á_@€@Ë€"º@ÌPƒ ¦’ÿó ÄÈ Ú©¸|„pË—grN&¿Ôàs˜…®‘ù +대ÐyP션‘ê¦ÿó"ÄÊ XŠ˜XNLpOXõkôiÉÖRöAÀ€wÀ'—ŠÚN§q¦™ŽÁϦŸ`ŒJʃÿó ÄÌØŠªXcÄLì‰RB%Ðî6¦»b % +cÀ|9ZrÆ&^9Ø!2… ·>gŸÿó ÄÏ ²”xfL\«5îc:t€ð JH.‹Š—A få“-†RÂÀ!Ë^lúÎÃÿó ÄÑØÆšX{Dqª‹Ö±j9 €Øü4º)ÚÄr¶äÁ|}`° ÅCG»ÑMlúqÿó"ÄÔ Š•¸dÄL1mòPX€PÛ5k+ÇÛ¥Ö4!ÅÁüe€”ÂLv¡[ïWhoÖ‹ÿó ÄØʦXBÄqè\“€4àž9°D*œ²í{:)Í·ÞõvG§Hþ†qìÿó ÄÜ Ž”ð~ +La?é +p<°[K‚üIÉêán#h…ß + ÞÄ­äºvÇ`»˜ÿó ÄÞÈ’„(f–Lsÿêü‘WÚ‹Êe_ÆD¢[ +¼Å@IDN~b¶±EDd/[Yÿó Äá ’ˆPfNL]sŸPîÀCLUFW‡õŠpŸ“¡i:-Ég1GQá¨ÁS’•Kÿó"Äã (Ö™¸LDqu»~¯{„pe¶W„È\æv$12ÔŠÝj‚û@9Ò Àn*ÿó Äæ €Ú¸e +p:Kć–R&SàÑÌ@Üþ—ù×þ†ü]ßX8j*„Êlÿó Äç À²‰f +L—mr¤µi +’tãv­mÙ‹_œ¬6Ÿë4 !v "‘¦1š!ÿó Äç À’€x~ŽL<‘H!P†ƒaØUz¬—ɦD¯þ‚­ý”,Çc€$ªtÛ ÿó"Äç ¨’xP~ +Ly,€’Ò¸ŽÚ#ôŠÁÔïèÑp~l}v Ý«×cŽÉ +ÿó Äè™xX~ŒqÇ;äPËÞø¶.ŠŠþ +æ?!ý` @%óUF«ûÿ–Vöç©Áÿó ÄÌèÊžXdDpˆàXô§èe+, ÚÈ/…Ö|®]b\N€È˾ÌEø„ÿó ÄÏøŠ„xf„Lh(ÚRX¨ÿö‚Æ œ:9üí¸ Ñ0‹`4 +#GHvÞ2+9oÿó"ÄÒ HΈxL„pŠKùhש‰Å¡6Ë0lÉ#ewoŸñü¾Ûø†fžà‚ÿó ÄÔ †xPfŽH¥ê39šËS.§5H$ PÀ,F¶†×ÒB +ö)%XÚIRA€»m™þÿó Ä× ŠxPfJLêë-ÏÐÅçú@!BàÛýÚ±*«rÒ ÚG4ô•Ã“Þ½•ÿó ÄÙІ€x~NHs]Zx2=¿“€`í“ña%Õ<™“òÖH4a` 6ók±­Õgòÿó"ÄÜ +ðšf Mœsò`”Àÿ€$ ´˜a[³sàžÀ6@ó2\òU-Ñú¡ÿ2sÿó ÄØ ŽªXN +L:KwE`[]Í;8÷O³œ‹ËÆÊò)ˆq¾!ŠÄ©ò¤áðÿó ÄÚ ’x~šMxy7| 0štƒè @:—ÿàYÛ5 A3!¿’M ½ÿó ÄÜÐŽ„ðNLÔÙNS’Ê€âÛP"Ä ]µ©,BN@'z4xw†®¯øU}Krœíÿó"ÄßÀŽtN–LmGç¾€ køЙf•‡ôÖ6"I”„¤ÄHlLõÒ(ÃÒê¬Î=ÿó ÄäØŽtÈfÔLl þûú@i4GÄ | ,O-¡§ÜN J:#„Y\ž÷³¨:$ÞËïÿó Äç ØÚ‰¸4Îp•»é l耀`žˆ‹4É>…òàï|T6_Pú<ÞðÁ½êªÿó Äæ ¨Žx~Lì˜>®é€»`p +$ó¬¹7Š«”–ÕÔ«-VuüÃ&ö‹¬ —ÿó"Äæ +ž€ÈfNLHhIõžùPÓ¶Ð\?FõªaÖ”ä©Üùü&_¤W{|ÿó Äå n•¸6(—îú€°Kð’6ÀöL›ÇšóÅ>æœKÃ|pw©Ï›£©Îäÿó Äç +n|xNb(þÇ`€œ dBÊa×$M Fõ¸ÌL0MtúÊj¶š,pû¦ ”ÿó Äå žpfZLsúkõCDà€àL¢m3®guYÛÉHÝ! ñËÉB [L†³ÿó"Äè +€ÖxxLÄp›ýâ0 lD#Ã`ë•i%pJr£IP?©`Amü‹W…ŽâPÂÙ5þGÿó Äæ àŽ¸NLù¹î°€l¶âBˆ·k:cAFs½¥œL>è¸fqPd•äÝÿó Äå ¦…¸6 +L“ÿ Ùñ@óäat‰Õõf?',‘À£k!HmºMäFQ1ÜzDõÿó Äç °ÂžX3ÄMÿ¬AlAiûoØõFé”D9gƒ™nS²<Åí 0åe:~£ÿó"Äç +X¾‰6MEYì»ààV ˆ|f”Õ×!ܲrš\2Iã²¢$Ž^C•ºøLî_âÿó Äåà‚‘6Hõy0,3ðZ6.ÚŒ4€ ÃhÒ4Í1ÏafŸZ·óüéûÍÿó Äè + ¾|¸NLÒRa3άìYþ†äP2ãÀ?ÇÀÌx¢æ`”E@)ÔXÏj…€ÿó Äæ à¾|¸NTLb–ò12ȧRö”Æuh»}úÀ@ +ƒåC“°pqVx4SýÍ,óÿó"ÄåðÂxNŠLZ¶n$ÀÃk;¶£ÿú$ ÊXJ‡lÌP%‘zËìÒí&Ê%ljñÿó Äé +h¾t¸fTL»áýÁm–hÏnoä€x?1ñI"oA)›P +!ˆ¸‘@àl tßþõµ4ÿó Äæ `†pfRH;­Ûûu-×ú€@`*Ye–¿§–üš©¼ö7ìνµR€iÿó Äç +èÖ}~Dq3vÊŽò_‘„ì6<󼶕…Z—$ LßõsC5¿îÎæÜÿOÿó"ÄÖÐv€fRHÅhý € À’¢lLdÒ™¹V‹ìl% +6F6‡B\uN}FšlRÿó ÄÚ r€Pf +HÎ,ô¨À&Ða–áç“@ñHmê9ñp4 ËÞ}"§ÙzÜÿó ÄÜÐr€P~PJ-±I–(’Ö·za¶ì,Bûô`ÎÂœœ$ÔÖF”’©è¶g¿[¾ø ÿÿó ÄÔ ò®XaÊpâÿðL€pÑŸSË"Àãpe°›¨ÚT0h›8.¡ÝUp·þ©ÿó ÄÖ Ž”x{ÔLu·Å +ôH +oc®Ñ„áAbr¸!¢©Éº®ï‚£ÄdLVßùÿó ÄØ°îœxzŠpˆÀc€ä%Õ빘ˆ +òp’5òP_%˜{â鯟-ëþ ÿAÿó ÄÜxŽ”0{ÎNüc}«ü +ñvFŸ†ÌrøG%$4ŽŒV³Vµž´ÖG¶fÿó"Äá (î”xzÄqÿ¨·È}ŽÜ'•¹g-ûF´*”‘+ÅàWиã_Î×2†Tû1R +ÿó ÄäøîXzÄqŠÞ¤> è|"R„Pä} Tk`beÔĉr›XøQ«ãp_íA?ÿó Äç +îŒx{NpP¼;KuÚñ+sªå +ܧãC*•¬-:VX½Íž*O(WÛÿ/ÿó ÄåÀ¾ŒX{ÎL“Ø·Í6°„€ ¦J‡¶¡Š¾&ÐKH©Äº¨çTbÖ;Ô2ArÐÿó"Äé +Xî€XÃÊp7Š¿ÄßbÀÈÿyNÓˆçN¹¶‡méÆ}RF[^÷´º¨ý?øÐÊÿó Äç ؾ8~ +LÝSý` h<]Ƴ”R·$ud6ŒLBöÜcêÿh:F¨¢ëô¦ÿó Äæ àˆ0ÆL0Oº§úãÚŠÍ«¼ö>à„¨`‘}¢©*U¬\ߌå}*ÿó Äåh”X{ÄL§ô€ʈDpÖ ®@ŽÂæ_„8I¡IA©Zê”þÃQå?wÿó"Äê +ྀÎNCÊbOGéÿ~ +‰ÅJ!È6’ðKÔ—$hè1í#^·«ÞÖ0þ÷øÿó Äæ ÐŽ„8Æ +Lª,©:ÿw‚ªE +P› ¨!¯‹’¸šŸš² ýa^tQüCäøÿó Äå ˜X{ÄLý/·êö_¸·£•À1ÀTA~L,D #ÖuVºáE° ¢éÿó Äç +ÂŒxÃÊL|M¦¢@øc´Ý‹ =$)ëlÕÂl5Í¡Š´nŸKz«pÉÿó"ÄåÈ~ÃÆH¶;E`öÀe‹YXé<;±$TuÎIA&Ê?—ýÝp¡x¬¡¼Q—¼ÿó Äé +€–„8ËÌLUtPßÿºðÃ^ê9&kɼõ6Ô›­­áq*œ/ãwzÿó Äæ ¾XÃÊLpÅDþ€‚èwãÎò)„éÀÒ¼" JE¬§r¬Eè‰Êçù(çKÛÿó Äæ €ÂXÃÊLý ßý(ž¿x°@nž~âS-9†‚d,Âñ#ÓŒs•%±_³ËNÓÿó"Äç ØŽˆXËDLˆKhŸŠÐ_ô*8îÍN³EàÒQ•ÆF¥ÀZŸßïåCí ìÜÿó Äç X¾ˆXÃÊLàÎRŸÒ€`ÌÚŒAj¤9¹‘ƒ]ò$ô6 |~‡jÐp%'PŸÿó Äè +@Ž„XËÎL¤[ô€€n´n2< JL¹”çrL‘ U±~¿/ºæ’M—äÿó Äæ  Ž„ÃÎLM’%ú×eò¸j$j”ŒÔè’‹ ¿ã»Ðà÷~#÷ÿó"Äæ HÆXÃÌqŒwçt€Øiéz$DWiQ†!å}`fFþõÏ\#B†­ÄŸ[ÿó Äà ®˜XÃÄL)#ùí@€B«€3ÊvÒ¯p…P«@ŽÑü ’oBN£AB¥µ:|gÿó Äâø¦ xÃÄLO?þ°À߀7U涬Œ°è±û!übB9“’™ß0b’~ä'ÿã°ÿó Äå ®™˜ÃÄLúž²ÊtVAÚ@À›0ØÁcÆ$YIC×Ì# $9A¾Sбmÿó"Äç +PŽŒøÃÎLøŸî‚¾ØXî xõ§&•ýBGºìºñ àdŽõ&M3÷,/ÝøOñÿó Äå ª˜XÃJL~Ø1½ Ø í±rJ”F@%Á’Œ””Âd¥‘Ábr§”Ê…[ŸöP/ÿó Äç +ŽŒ8ËÊLñ´ó@À Ь'ï. +åQ4æagpÒ¾6T<^nÜìÕVíû(&ÿó Äå ª¸ÃDL×㺀€ +ÞŒ£±¶ÒEeôØ>¦@uô‰vs]ç\¥oû wÿó"Äç PÚ©¸{Lpy´ êwõ€€ +¯Å©j8¡—Ã0ƒ:72ÛçË}[ümÿó Äá Ö­¸yÊpôƒ¶r»ªÀ¼FRœ +dÅdêóHZÌV¦*–õaÞIé$wÿó ÄãØÖ˜ÃDpù÷¥Èsþ¦ q‡T *é‹ vþ îÀ0ˀù¡C[•àðiÿó Äæ ØÖ”8|pEè„TбA8j”üí‡ôø1—ä`ÒûÌã¸å&åãMâfTÿó"Äå Ö¡˜ÃJpåœ3ΨY‘ê£õÛúâßúŽú€(@]ëö´20ø8§ÏÇÔÚWÝÿó Äè +HÖ™˜ÃJpkù8b”boË{ĉ‡s_@€SŸ«ä.'¹dÜvÍqÆÞ]\ü´ù—‚ÿó ÄåÈÚ™P{Dr¢Í‹}›ûdi#’ù À € /rÂø„¡ôL~ÀqBA<ˆã•ÿó Äèa˜øÃÊpŸøödzQü;½`ƒÀÔÅó¸ö9Ñ£îѼÄLBÂþž@Œ9Ôúøÿó"ÄÕ Pî¶XaÄpÿ=Aê5`ƒ¶ðÙAšü>[Ð1t†aÔ‡q»4˜‹Û£ø³|ìÿó Ä× î °{JpêþÕäÀÀé@¾+€žS–‚âÜe°O{‹yÂÿV¡ÿR3ÿó ÄÙ莡ø{ÔL Êô€æ ¸d9ú¼_û”¶–ÒAÑÊ`'—+øb[PŽŒú­â!ÿó ÄÜ ¾¥x{ÎLçƒBl–cºG”Ÿð>¢)vó˜ìýþV‚gÛ×ýñ´ÿó"ÄÞ êª8b„pd.QÙ¬€a éH!«g±\õ¬íåxX5-Ýkî½wŒçºx-â«ÿó Äá òœ°zÄpR6j}Àe%˜D|å“’ê6ˆ Ρd¼î…\Þß½õoþƒÿó Äã {JpþöÀy?)‚°Ú -w%¶AågÏWP·2EfPï¸H™ÿó Äå î©xaÄp-+­ÿ*EÿÀe¼Ö„(zŠ"³püÂTš:B¨×8µi]w­¸?âPH5ÿó"Äç Ž”~ N†W[¾Xì i&¢l·"c2:ûâ°„…N9-R?ÞðQ¤ú¿zÿó Äãྵ¸KL Û‘îúÀI¼è“Áv.OÉZÙ}åäÃGQãÁ9PÖÞ°Î+ +Îå¬S¨ÿó Äæ ØžœX{ÄLþ[n æÀn Xô'¦¹UNHb ±ÑÙÚÒ¦GvÑ´µDÿó Ä塨X{Dp__Çç¨ífCÁó+2ó03É£`ï’Å‚›½ÐjfŒ„Ÿdgàÿó Äé +x¦œXcÊLŸŸoúT€߀:ô›>à©Â),:pn‰Ae$PIgzß·N¦Tÿó"Äæ °¾œX|DL:6 +ô¨€Làc5 +Ž­ †5…ö³>KЛ4ÌáŽH,)ðg'¤(žÿó Äç +¾˜X~L¯½”á €KÿןŽ ŠX À–Ã#ÒÄÔdêïÏp~5õkàÚÿó Äå ¦”P~ +L¢j­ŸP€€ö| ··H³{@åU˜Ip},œ5¢‹+9ÔGÕž¢»ÿó Äç +î”X{Dp> +«owÖ M¿ŒKF#ˆ³ƒNêpKÁÝ»9êز`›A}¸6¼i4ÿó"Äæ øÖ˜X|Dp[´R¦ü /ßZŠâæ^’ä"{±2¹³VëȬ«ÑµMu4P’ Öÿó Äæ pÖ¥¸{DpÞÿ¤€½<îÓ;Ñ3:cÓr" W]3çC9†õq¨ D(„bñÿó Äç àzŒXÆDHºn­ÿ-_(ù/4ÕÑ…ã Âq„´‹ŒÄé£sðjØÅݼ“ ²ÿó Äæ ¨Ö x{DpO÷|` ¿ø]vØ?U§ d(Ñ[W$Ûÿ¼kƒ9èÑ.~•puÿó"Äæ øÖ™|Dp }³‘ +(Qùv“1aßIH‰0 éœÀ˜|bIŽ!mU]Íê7™}ÿó Äæ ¨¶˜x‹ÄL?²ÿÿÅ€?øpf„s™ÎOTDqå/FÈN†|x5X»ªªÿó Äæ 0~˜xÆH°à,ð,!5|úɧKgLB70%E„Ïw¨XWÏ÷ ÿó Äè 芠x{ÄL;®‘+°v[„”ølèã£]œVm‘Bµ­þ™K ðG>»‚Àÿó Äç + +”xÃDq|‡Ë$=8óyÐuÆ)‰pîpÂ) ?¹”ï÷­{áWăÿó Ä娆 x{ÄH¥»ôì € ð <*/V×PXäcóPÚ£ahôQçO=j£ÿó"Äé +Á”xÄ„qÿ÷Œ +ýÏv†Y_ÅëG†D‰âð䪡ÿãƒ' +NÜkÿó Äæ áœx{Dq·ý Aà ±ƒžµ†‡¡Ù0ØË(UaòcÒÍ}_æдBÄâý¼w“ÿó Äå Šœø{ÄLå2 Ì PNFH¨¿eóç º°ÊŒ’yÄv3Î-㶼ñ~#÷Ž6ÿó Äè +Š˜x{ÄLžþÐbº€°;”Ü‘[ÚtWB¼s–ÃÞHy|”‰­]Ië6¼Ú|àÿó"Äæ ðÚ¤xzÊpßB605vO‹³eo¸“°Œð3²ÌDÛOÿs¹I +ôÖs·ÿó Äæ ØÚ˜ÃJpEË€ my\›BP£€Üa W àÜXlZ:ÞSÖÿÂÎ>¦òS¿Aÿó ÄåزœXÃÄL?ÁNÚ€~»~“Fê ™£ÄC‡sw*×ášhÿôžw.Á}ÿó Äè ˜¶”8ÃÊL`‘%¹¶K`` ·E}¤Ñ(ˆ0–Ë}Ò ª¢«Ê9‡sK”@×µÿó"Äè +ÖŒ8ÃÄp¿uò@F0”L3Ô„&i78ôíº¾}%5Zuvô9Ä5%¿ÿó ÄåøÖ”ÃDr7šCÝý€P¥  +µ?l$¨ +ûRâuÈ påïôfFOYdîÿó Äè ÈŽŒËÄNFš(G?5/ =LJh€dk*-H™fÍ­ø«ôÔñÃ_Lh +ñÒM¢øÿó Äç +Ú˜X{ÄpÿG¿P­ZìYã]N4ôÀM´IògáL6Ô®¬jÒ÷PHQ§ŽÍ¤ÿó"Äå Ȳ²XcÆL[EÜ2 ‚@‹³ÕH˜«"’eO¤ÊȺ€4- ÉÓj}⯃q‰ÿó Äå ¶˜PÆ +Lümvt€€ +; ‹+ØJ÷8û ØÛ‚cîë{ÿÂoÿ£ðñÿó Äç +²ˆ(ÎNL¡ÿêöÀGÓ¨"Ô¸xÞ7Å´î4…±4¸K©Ö¾ÇÐjõÁÑ£úÿó Äå ²¥{ÄL:~§.€vØÍNJE,=ǪMƒ¸1U–7ÿðŽ]­õs¡*ÿó"Äè 趌0Æ +LÈ­Ô»ú€$ø ¬Þ¼NY @ ’Aà2…5 ½QþþLoO•î‚¾ÿó Äè +rXÆHFêÝ9ô€ f¿-)nL×R´Í®H7·9ݘ('ô»—ÿó Äå ²0Æ +L¯æÖˆ‚†­ ’Yƒ1zÖ„¥Q+°º«Ýb ’êµ~ ±™•ŒV}ÿó"Äè +x¶XÆLY™”ôœÐ¡‰P‰Ž¢g¿;E– cƒHù{Óш’Þ!ûÿó Äæ ¶ˆÆLÖPçÉÌq Mþ/$0ª&²)p§‡$1:‰9§ ¬À;ÊѲúŽÚ~ÿó Äæ Xž¡¸cÊL‚~Þ¾„) ^¡Ž€H¯,ܲ‘#7ƒè—÷§†âkGr­^‘Wÿ“ÿó Äç ض•x|ŠLü—Ò­ êå‚¿kY¢Ô¶–ð”€ìS ‰ ¼hû3œë³%­CWÿó"Äæ ¸ª|ÆVMûV^KHd€Ì1Zæé72*°A2¯Ì“¦¯=bz Á*¹å:Eüÿó Äç +x©cÊLµ,Ɉ0 ‹ µ“#,-Põ9`OŠ%øË&½ª<ÁÙžu¸ÿó Ää ¾¤xcÊLÑþ#Ù’È1ÀKaUrîËÄuŬ&ꬸaµ‡±ø^ŽjÙV6oÿó Äæ àî˜XzÄpü–C1ô¥Ø +$jॠu8£tù'»n/1¡çÉ”º¾‘ÿó Äåø¾”X{ÔLþ¥¶h€'•À<„ûmýö¢-…¿Cʾõ4þßç‚11Ö†G‰ÿó"Äè +¾Œ8ÃÚLÿBš„€Ë$ Ç8Å9%o^#´Ý‘ÂÌMWY傤Qjš¬»ÿó Äå ¾”X{ÎLåôä @ +ZätWÔ]Åg¢'?¯Q*vÚª«D09”éNâG’¢ºÿó Äç +ŽˆP~L.dr/à ì˼–+Fµ”‡©ˆX‰èo,˜©lu +ÑZß‚ÿíÿó Äæ ȾX{ÎLèô|mDÀ´·Ë!³µÎ™&‹ƒ4=2á„X:ôͽR×ÅÜàÿó"Äå @¾Œ8{ÔL÷¨ùÛ÷ið%!ÏR©@®³c3É)]tîE½jߊC˜qèåÿó Äè +¾€~N¹þKäèU°Ü­¤…#Ù+[CÐX°ªÉõ“)êMn¢`´Bó|žÿó Äæ ¾„0~N¢> ÿà_‰,‡©º¨.e)èå¸^ø"‚5}TDh/¯ßÐMÂÿó Äæ ˜^„8Æ(´©írÓ(´ "Š¡•f v§òp"éF㞃†ûÖÔ2aÄUÿó"Äæ ÐîŒ8ÃDp}?øÿ—ùÈ0m®C¤\D.Kr;–RÕµÐj²TŒôo?ÿó Äæ Àb€~(¨¯þ € Ò‘TÒ`*ö{`£FAÔÆ Ñ¼hv…-¢@ø0b!6’ÿó Äæ оxÆLÝ~Ÿ!ô€ V;©Û>”mÎ÷%Á´Ê~ÊWY´ðúÞm¡Ž·ÿó ÄåàˆXÃÄLâþ€¶ÀSm| º6<’(Ø#…ÝF +R̼‡EZ…'{Ý;§Gà“Óÿó"Äè +xˆXÃÄLãê{7xÐÀ +×€èL Œ +@qJL@ŽUÀ÷‚/yžû}æ$óiÿó Äæ ྀ8“ÊL7âßÞ$ î$)°’`œË4ƒ1ÁÔø]F~(µ[`¨Ì@’ŠÜÿó Äå ÂŒx{ÄLDø„öOÐÑP#Ê ty>.äe(:åqëî4]šŒÜ{ÿó Äç +¾x8ËÎLz ÷Å_º°! ø/‰4ä…+%ª+5EOÅiŒ_í¢Ó¦æj³p¿ÿó"Äå ŽxÃÊLúŠÅ´€ÿc¸ûE0°”ý!‰ˆ–22¸/dë+Êß¹²5ãGVü+ÿŠÿó Äè + €XÃÄLmÕ¤ÿàe‹Ga é +Á¼È{ç3hö,!+3q65A¸_wá÷y]9ÿó Äæ ÀŽ|PÃÌL<[e`öOõ…¼!$Ptð†ÍÏ&»ŒzL’íSíYB"ê rqÿó Äæ 0Ž| ËÎNWþØýºtÆe“=^H!L30á÷3ˆÓ)™–ÒjoJÖŒ7ÿó"Äè + Â€XÃÊL +¯ú@ü¼ærjšJœÆBð§(¸ð/›ïvVŒ{¼/÷÷ÿó Äå ¾ˆxÃÄLÙ¬ÿàj«vn`b Ifl}Œéù´öÜ<ë½õhRF߇¥GÚÿó Äç p¾„XÃÊL¶XüŸ±ðg¨2.‰TXâDã‹!!HªIÆ¥:±_í Õwâ›Ó|ÿó Äè ØŽ€XÃÊLWNжOjeDÚS6)\Èw +Ú¨ÁÖCr4rµÙ.9p¿ëÇÿó"Äç +H¾|XÃÊLZ2ëE`-Ì–m¸© ¢\[…Ê‹ +·¨ç¡!Ÿzê. +¨eáýÿó Äå Ž€XÃÄLZƒý_"­ n>ùNUÙhTBD‚áP+ˆ³`Ð™Ú T—çÿjÿó Äç 0’€ËÊL‹ì£]€vOàÈ&‚ƒ ^ÂðÛp5|\ì»fÕu€gÓ±("¾ÿó Äé +˜’|XÃÊLSÐÒ + ¶H¸´B¦ãXŸB\jd«QÖE¹—3\œè1Ñ©Åÿó"Äå辄XÃÄMè&¦­ô€ð> q†€ÔÅ],aðp.Íã±áûAÕ"ÝÕÉ6 Þ àæLÿó Äé +¾|XÃÊL/þ‚ïþ!ÿÉZBcÁ¹GØsC¡ç¹%ÃV¿: +µegÄÆýÿó Äç ø¾txÃÄL´-Š‰·p‘ðyñD˹J +,NìrÛRÆå¼U¾íÃüÈ£ÿó Äæ оlXÄLØgy_ Ûmõ¶‚pÿ³¡! À€XXdH’ó¡ANOжçƒÿó"Äå 8ŽpXÃÆLqQǽîf_É‚@ "Ó·á¶þRq²d?F)ÓvQgXÀó¬0ÿÿó Äè +¾d8ÆL ŸÌ:«(2èÖp ‚–Œ´8ÓRå´‘Êæ$,5ù’Æ 9–ÿó Äæ àÂ\ÎLlã†kÑyÃWhw¾nùÉ"<+þ±ÿÞ-fâO@Î`ΖŽÁÿó ÄåÈvxxÃÆHA-atJ´ 䜦Š%³Ü”Dη¼_E·õã¿H€8À³¬é¬Gÿó"Äè +0¾hxÆLŸhïp€{ :%'šùÆIÙ#÷A~úñ¿PÀcùj[†I½ +jÔÿó Äçñ€x{ØpÞ ø‚¨·bÖˆ5gãþh­2Jþî°¡àw{ÔõTëÉ µ|yÿó ÄÆ¡€PÆžq¶BMFVÎÍ4VÚ…úÔGµ£8wôz@ œzü±°—EùË ˜­ÿó Ħ (â |ÊpŠÓdžÉ‰§ì ®aNhåÀ›·ÞýÄ;ËDÔHyŒ¡ÐRP+çqÿó"Ĩ â¶8{Dp×ÿEê-™°[ë;­ €'P”ã¢ñIuI>û@­®‘¿­õlÿó ĬඤXÃÄLs?øVõuí6†¨Î’âÀÃœETBÄif¨Œ¶XT.Xñ彟ÉÂÿó į ÚœXÃDp¿KÁ> +#rž¼"÷A'Úd% ÖÂÕ©ôô¥ßüïöFÞÿó įÐ’X{L%qÕ_Ëþ0^/h6z´& +„É¡0Ì^†é* rtB¢èœ.«ü>ÿó"IJ XÖ”xzpg¤€_%Ö'ZÚ5¡á¨OÁ’®›Ó˜(˜`iö‡£à°ù~]ÿó Ä´ ╘bÄpTKÇ5º>ÏΚH$Íö´èéÈ£:ÊÈ&“Õ üFÊ´r)Ø1Åÿó Ķè’|{N?(‰ß1} iú¯‹bClwåÔ@^7ªlgb…S„ŒŒâ^J—(ÿó Ĺ©XJÄqx¤ËN4¥y¬Íÿ ´‘ß÷ýÁú‚â&©ã©P£ªob¿ññ10Àÿó ĽèrŒ({HÞ#æ„üŒ“P£.p˜ðÔ É×Flìþ4Gà®Éû)€ d|ÿó"ÄÀÙp(ÞÞqî@LAš%­"€ø£Bm´Døªsù™êŸàÝÑ€@aýõ*¼ÿó Ĉ +á”(ÎNqšÌ8°šÈ «ú†©Q]sÎ\ñ©ÍáYé +Üýé$€BG¹o¶À7ÿó Äw ºµ{ÄLÔ«ã#À N¦·Rï”{xG +@ûŸŠùê €Ãp,^Þ%€ #tÿó ÄzÙ¹z„qªp( ™HÒ÷KA“ù™8'è2·ÑÿÂéLœ ÉüqË;R`6Íÿó"Ä} ’˜0{ÎN367G^ȬïÂëÕý¬´|Ïþú`€ @6çpȯ¨i;A“þ>ÿó ĀؒœøzÄL¨Ã]§!V/ðŽÜÞƒ_÷ÿ ‰€„Fà)._FéªU‹C#`8¹Éÿó ă  +˜øcDpWm˜AŸÏ +×ݯÿü[ºÈ¾`fÅBIDŒe¯È>ŽòQÊòêWÿó Ć !8{JqÈ‚9—)ÙœÿZ€¬ÀrHkÔ3r¶¾Tålm(  àX .ãÿó"Ĉ Q +‘˜bÄp'Š=³ÖêKd29‹4eÐR†I8£|ÜÝJý^£Ÿ[­¾vœ'ñruÿó ÄŠéŒØyÄqÅ­_Œ^ÙÔ(åI=è€H¾ïü«µiä¶1[C5¦mÇ£Òÿó Äð¾Œ{ÆLuµœ¹¡ÔjmB½F¥¿@ð¢ /ïñ@¬Ràck(ÚÖU‚¥Âÿó Ä1‘˜Æq_( +GYÓ zùÖ|ž{õÿÑ¿Æõ€À.Ã3 ÑÒ0±â÷°!ÿó"Äf aºX{Êq „Œ5T¼«•lâcÿLêq`Šà|ç +æsNªž;”¢!Ùêÿó Ä\ɽøcDpž×cüágÛPéAqoyȱ@®ÏÄ@šk;l-T<1êʪÇgÿó Ä_àÞ½˜b„pñ4§¥\¨ýM/ûïöý×@ T|üÐ8IÔ +¬4b¨FN ç­âÄÿó Äb ’¬X~L +À-Ù“Ôdòïn.ý@@×Ýñ€Úåƒ"¨?îiÝ + +ˆ¼ÿó"Äd Q¤¸zÄq¦tP‡•<½‚àÀ,èh·¨ƒâçеLh$]@ÏÃòW”ÿó Äf ªœX{ÄL¨>îË°ÒªrÀ€Qð1Ùi²> ÎC#|0–A™â +çš¹WÍõ5ÿó Äh ’œxK +L©ñÆ‹þFd €ƒŠÿÀ,›¬H€¢ ™F„ã QöGö5‡rý'ùFÿó Äj Ž¡˜KÄLÏ©ê¶"xŠØ7B8^:©þ²þ;oMøϳØCF4³ä{½ ÿó"Äl 0Ú™¸aÄpÌ?ÀÜÝO©4ªPÂhÝF‚š&„†ôÀ‘ÚÑý›¢€ìÐÖÔŽÿó Äo Ö®X2„p¿ÿ“=ïø G€àñyhamÝqlŸ™¬–°ç‰»c¸ÿÄæÿ ÿó Är˜š”{ÌLý¿„4€(aÍ\5«  xA‡ÄRåäÍ Ó€Ž#þSÿ½Iÿó Äv +©Áqðû¤€À8Kµ+tÇI>6†H‘®£@¤4Nübå>•:¹jí +5ÿó"ÄlÉÂ8yJp\3ü>S!é¿ó¿àhÀpØëÿ^äH&›VXbPHÀ‰TÙ# `ÿó Äp ¤¸zŠpP ŠpñéuŸ¼ãZ^ü/ÔÝSø'ÿN‚À˜ +p=¹ÅÏ !ƒÿó ÄréFX~q%×L(óºGÓ0Hçšõa¿oÿAÿþ;»X@ÌZÒÅ#Æÿó ÄY ­KDq…A‡r6=̼­øv1_è?ÿ¨§À +4ŽÕÝ ÊÀpÄаSŽ¤ÿó"Ä[ )µ¸cDpLÙÙfïžü+ž˜þOñÿX×éÀ%]R]ñÁ0!©‘X¨V^tSÿó Ä^ ªX\Dq:”õðÒuO_óúŒ€(FôR lÙB7„˜üí¡tgðÿó ÄaÀæ­˜KDpiÿ¿Æ÷ÿoÿ‰€ +ˆ/†í%¬R« æ]HAh#<¯’¨0~p½…ÿó Äeù©˜cDqQß©Ýu€1.Ú˶Þdݬ +8¼}ž©—›ubØž?ÿ‚ÿÿó"Äh ¦XJÄq§QUkÐ¥,Z¦Ø +MWŸ.\|ÀÀ»_™?‚€#’lgä}òÿó Äl v™˜^ +H@ˆ2Xßp€qnPÙ²ú‚hB¦"Uk~|ͼvó·þøÿçê3€ÿó Äo ¥˜cDpO ¢,åÙÒLe ö} ÚÏö:þ¿‘¿ë¨úrجg­²ÿó Är ’¾XK +L{ˆ€zˆ—UX;£³–å‚@ßýzçš_h¶y?¡oO¨Àœ?Yût!ÿó"Ät I¶8cDq%m¾Jv`û‡×W¨ãøÞAÿý†±º*¤À8À¾5”ùÆxÿó Ävð欋Jpõãê¤ÌÀ¤<˜zoCÎ7†?Oýã[oFñî€> -¤!É“Šsÿó Äyè® ~LpY#%–ê:þ}ì¼öæ9n€¹½ ~·vfÀ -è|žD&BÀÿó Ä|ðÞ¨ÃJrg¢s RŸj·R­á)ö ìÅ« ÀÂÞÝP$™ CÛçÿó"Ä 9©x{JqíKÂQÞÔéè5üù…ùsõS§0Ä?õ“ôÌ‚‘V(û}}6ì…O5Ë®vÿó Ä‚ ®¥p†L«2½‰šŽ˜þ_ã§wd@‚jü^ÊŸ#^"ªç¤ ±Qæ*QµOÿó Ä„ ²8ZŠp…ý¿/ãÑ”¨? ,9^ÎÒN’‘“I!T«n ¨¥ŸQåï¿ü9´ÿó Ƹ®©P{ÊLÞhvžý<Þ€€{œÛµœ&pnŠŃ|¢ç +ò…³;x™ÿÿó"ÄŠЪ¤(ÆL[ñ3+F.€è¤|"˜Ê*d¤7rjÓHhíw};Ã~9ô?×Ðÿó ÄŽ°æ´¸z„p@ =@Ì(Žh²kb2B²†z®åßÍñÛÚ7ÿÕ_Æëÿó Ä’ Ž¤ÆL€?€¶ wârÿ.®“4 ËP—&§Réð¾û~8µDòÀÀÿó Ä”øÆ°ø{Dpêq³¤ÐÒ½­Ô¦GM8O¹-: +á>ïôÿT—Å8€ +­ÿó Ä— Ž©X{ÊL€^Î’Då}Ò¿Ô¢ÊWí(MOóufèOè!·@€É¬ì‰@ÿó"Ä™ ¶X{DpC&Y>× (#ž-n(õ¶ßmƒø§K;¦ôìѤwç(æ/‡Öÿó Ä þºXz„prež&`œ"f)FäoàþU÷·ý;Ïâ€ìþðø$ä…ÕÁÿó ÄŸé­˜z„q®AÑWc:››+à'Ìÿ—·ÇP&Ëå€ ¬ +5P!†.–8™Ô]ëÿó Ä¢¨Ž¾X[L×ÝÎó£q ð7J¿ظ‡'›Ð€‚“þ¨z¡KÂh¡`Â2?„Wÿó"Ħ 0Ž©xƒÄLSÇöÖ>On…r~*œŽŒ[,B&†T¸TñˆZdˆ\2ÒY’ÿó Ä©É°xyÄqr +"["ë l! $h\:wˆg?bS ŒC$$ÑdF0€ÿó Ĭ {Jp°^ÇtY|¬Z—˜Ôý–ËO¦™tÛS¢G:ÿÿÿÿÿÿÿÿÿÿÿÿÿÿó Ä®øŽ¤8ƒÄLÿÿÿÿÿÿÿÿÿÿÿÿþ æÀ|欼ä¤W¯KÆ{ËR4ªÚëÖ¿&ÿó"ı 8ƬùO¯ÇÍäsŸö÷BiGè¶Ì6ƒÁš€€C &%xZ Ù¶‰faŠPÿó Ä´|‚™ 3÷n†›ü‘/³ÿýñ²;¤€IÀZx¦@ ʆ÷8¥àø±–šO8Øÿó Äi Q.´YÏ8ÏoWɘ%¿÷ú¾½¤Úë€fé}>2Çž‘Ï *Ê€ Äoÿó Äb b„pütà?³ùS/ôÔ€€gÀ-÷´ Hß +G±¸*XÞ¥²‘þóÿó"Äd A +¬8|pÿÕ·ûx­@‡1åFOSTí,ð‰ü: 7•É_×÷b?ÿó Äg¸âµ˜zŽpíùoõ€À³°¢ÛÉ"ѯ¦Y.zçåà¥n7(¢™–—=IGtÿó ÄkÙµ¸[JpwÉ€Àž€Äg–¢d^iN9 ämdÎ +Ǭ½[½ú$Pí=ø‘ÿó Än âœÄp€'€{ó:èQ¯6‘™2^‡í¹Û%=]‡!Ù‡ÿM@€ÿó"Äp –±¸[ÊLïÀô¾DÄ›ª‘¨ì<$‡žÙcgSèÁyÿ¹·Öýê|ÃÅ€™ÿó Äs –¥x{ÎLr'Þ˜/“鸯VRÞݼP ttù++=.õ€À“ð1Ûÿó ÄvØš¦8{ÄL± -ój=ØXJ4 ØÒÔþ¿çþ‚Ý°dö"2‹Û¡rÐ=^Îÿó Äy ʺXIÄpÀðÍõK +òujÕzª"#:²j pQXy'»ºú,A«è:i­ÿó"Ä| Hš¤{ÎL©æš+ ŽÿÚ˜ûøÀÕß)‚âIJì…Б|G+Òi?IÔÌþ Pÿó Ä~ ¹µ¸zÄq’kÿÿÿŒ€PÖcxeJoâ¡Ébáˆk€ò’Lô¯«Ô„Ûÿó Äv y±|ÎqOüi?ÃÀ'äwŒ@Ão­ªÃúfL mCR£½ý/`%!Íÿå¿ÿó Äk µLÊqÿÇ\Á£÷@D-…Š‹¤ÅCT „‘«ïÙm´vw9¼ëÌ( üˆÿó"Än XÖ­|ÊpÈ#[€Ã£\-í¦äkÙÒXò%>õŸŸýÝ® +/zKÞ‚ÿó Äpñ¤eq³ÑÿÿÿJ)Üœq!\Vµž~Câ"7dh­@ !.‚ON‹Ýs Óÿó ÄsèÖÂX<pþÿãÀ€X‰áëŠWÇ—»,`|¢3€M$ÓjÍÖš6šâÛËÿó Äv ÂX3Ðqÿƒÿ†À…€'ÁÀÍv ä"7üë¢NÇ66ΟïïóµDðg?ÿó"Äm Q°dJq¨8€$:wÊ…„àpJÜÃ}ðv*ƒôÞÉËÿÆÿÀÿó Äo Ö½°dpðð5=åÐ’5ÌÜFÿó"ÄxøÖ¹¸LŠpì°æ<€D„BŠ/;æþñ‡ö{×ãÁò¾Ù@€©€6{£ÃB¡íDÿó Ä|øŽ±¸KÎLµi—ApŸE*ŸRð\ÉÑúßXÿøø¤"—@ê)-¡6?Ø`Ùÿó ÄèÚ±¸dÊpjƒÂ:×êÏ/»P¯Õ=ÿ—ÿ €¬€Þ-1n7eeKZÇÉcÿó Ä‚ Ú±¸KNpÓ˜ïSt´„+ñoñÿ䀅P>o¦-C[ÌfÂÁ¦ÿó"Ä„ )©¸LÎqÕ¹¹>ÌýÐWõü< +ýÙ¸Å.— YŽKÄ–ˆ&-S¾úUÿó ć Ö¶XJÎpÓÜ =¯ãGÿ“šà|o¯ƒ‰WdÅ;Ñ ´H ÀU_5ù™?«òŸâÿó ĉÐÖºX{Jpwù€Žp>1Ô†ð£ÊòS8 ŒUσù‹êv×·Û¤Hwð·ÿÿó ÄŒ¸Ö±¸yÄp(Àp7|ôþçˆFÖ <bE–—Ó~!OsŽþßí¤®˜Ìÿó"Ä Ö°x{Jpp®3#Äû%L[ˆ‰2*d‘UHÖbø„þ­o`PíÈ”ÿó Ä”`Ö¬XzŽp4ÒÈLöDâÁ…Á¢æ@6c¤E@@0HìÏà¸àF ”ˇÌ$ÿó Ä™ Ö±¸{Jp½£ h(²Ø–I$ЙAŽ3Wg‚X`óÎû$aÍ%ˆ.w%Ázækÿó Äœ°Ö±¸yÊpNŒåVª×%9Þ½5=ƒxº”¶«òªöd’«ìc;†‘A·mbSµ¦ÿó"Ä àÖ ŒJqÊIÚ哯«î­.C Tc¸a1Šë¥³GQ£Î§ïPCÕ¿¢2|Ï|ÿó ĤÁNhÞðq,pn¨³áhÈ9êé‰" ¨jÏ­{·Àp̵ýãty/áÀ€²ÿó ÄP +©>°¸|Îq´L¡²ÀË@=ÚÂv z+9 ç‡}=*Ÿ”ïüSîÊÿX‚ïzÿó ÄL ¾´[ÊL‰A +¨ˆp5º“òˆhYôsÆw§—–¥ñ7öÿ&ÀXÝŸ‚à©ÿó ÄPè°¸~L`¤gXɶdˆŠJ ¦uöÞ€¡™?–â~ßä@€Ï@øŘ™Ä ÿó"ÄS¸†´¸ÆHàFBk|™l +Ø œýû¾ØãcÖ½x¿5–~¾ €þæý¨ók:Îÿó ÄX ¾±XÃÎLåpyÓ Ï÷üBÒµWD:)Ã=¼€àRï¨6c0e¬«ÿó ÄZ µx{ÄL$$ +U65¯úc†ëÕñ»Ý«¨€*ìÍåâ|;)i´È ÿó Ä\è~º{ÎH8÷ü7“’j>å1«Œv°Dˆ +9Xxjå¥Å‘äàôGRÿó"Ä_ 0²{ÄL²m:çÓ1c_#=[ÍêãzÀwà|ÿÁ +ÃBwy á –ëO‘÷ÿó Äb ’½˜bÄLµºvõ{§Ã¶ÐÏ2LÛ¸|3x®ÊeZ£t«ë=oB ë|mwÃ,ÿó Äd b°8kâ(JüeN®}]@YP=w†"0‘îó„Ó8\ÔrÏêÆøÃêrgÿó Äf¸þÀXz„p‰nßáÀ= +Ô7B@Xƒ:¬5§ÏB!8§ýXºål±’K=[‹ÿó"Äj ²¬ÃÊLwëëÀ h¾ôˆƒŒÂ„³áÄ‚ÀoÎmÅûùÕ¿çé7Õ±²Wd{(†Àÿó Ämà–´Ø{ÄLB&DgWkï ¤ÀbLä§ò¨‹0òT™!Nò +M•>Flÿó Äp š¬PƒÄL1 pŒH‚cŒd Àå„ÒZx‹•Î¤zËdë3Ò)“ì™Ðæÿó Äs ¾µYOŽ¢\6u¦¥±‚ Þå²Ñ*”¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó"Äu¼‚”™ˆÿÿÿÿÿþ€ B’ ÕcñFr¿{–(¹zRLŒWJŸFÊ©ãOz 9Jÿó Ä" .¹™Ï(Æ¿•Ò=Âý¥**øÖ +¨<–î×%2bñócçL 3ˆµuA6—ÿó Ä ÊÁ¸{NpJÛÓ¬¡vT‚…ÿúÀ€¤s!@éoÁ¶…s}avqò6cT5vNÓÏÿó Ä .ÎXJŠqÆ=GBŸÿÿøÑàýr¬<ÂUÓjzîÀ‚öÔÅé¶àgÉõ÷-6ÿó"Ä (Æ°ÃÎpcéÞ|¯üˆH ¤0<{k ´ $e"e§ž]lµ†Ó+o²OÕ°/ÿó Ä ñ*Á¸{Dq¿ÿþ*õ»¬£Žéh~{‡ê2IoΠ .µ?­cuå‚o¨'ßÿó Ä# ú´øÃDp–`P¿@ÿ+„¸ )`òäQ¼™*¸!>¬—“Šý‚1r=’@ˆÿó Ä& ƾXz„p èï]½Y“TÚK*lòhEÛ¬¢(ô§òõÁ‚ÆÝÏ)å«É!ÿó"Ä( @ʱÃDpÿ¼/гrøÚâÍ*"Í>/³€7SQsÿ7ñ™FÑL_áˆ# 7óœÿó Ä+ άøÂÄp®Ðà,ðàÀ10%ŽoÐsþKŸåÔïEƒßÿÿäH‚Ó±À©§]3ÿó Ä-¹*°ðzq`¶Xä›'¿ñB¿¬„ Ü”â´5[ÿÿøÆ… V›¢.ÁüÑä¤ÿó Ä1 .ÖXJ +q‘0'È‚î>.QC¯ã¿;/ +ánÿn@C‡Ð4“H] +à¸ÉçVÿó"Ä4ðƬXŠŠpGtÉl£Ô²çÉòÒ¦çßÿî¿8àÑ`9•C’J…Dߎ…µ ™Ãð-ÿó Ä8 !.½¹M(3« jƤᴠÇDÐ+8šÉB›ŽQüÀú £Y±q12š šrÿó Ä:¤‚¬˜h“²^¾´Ý]ŒG’Ûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿð ÿó Ä yÆ1É(R©xàÉœ•jTÅHžE7á9#mIj*_«0Y£ÿúŠVÕ;ÿó"ĠʸÀkÊr¸±ƒ ºh³o&¡Dõ”T*+ýuuM]úÙC#_þ€„Ü‘©X¢ ÿó ÄøάÈ|p#‹UÊè»Dp´Æ‚%€¨AÞí=C¥ºèÊ—ÿÌR,=©ˆ€Ý䥤ÿó Ä Î¬OlGïk{¬ÿu6u%\1-½û;‚ê?þår¹@!¢òý÷ˆ¸èuÿó Ä ”‚܆(œ$ß²ù?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀÿó"Ä (¸©Ï­d‰À¢¯]Äøm¤À€ä ƒ5?N¶ÆcŒ_›Mƒ"îXÂApÿó Ä ŘKJqJítCà´6hÊ%óæÕªë ÓJÐjèüô^ίQà¤0`Bÿó ÄáÆ8JÄp94# 1½£êçyY·`±uûþ:ÿÚ Ôÿïþ Âr™W2µÿó Ä + µP{Îqˆ¬ÖhF¤ŸÕÏçrÔõð¿ÞfÿóAŒŸýÿÇÀ€£òPh X[,ÿó"Ä P¾¥@cÚLâk;¥ŸWÔA7¬rµ–u[tnT9Uÿ†@‚mw‰È€È°&¾G¢Úÿó Ä ¤ [ÚLÓ_ £wá2'¨n­%–uýz‡Y_–€ 3°t¿HG±Y»³ ÄÇÿó Ä ±[Dp袋R)ZPÑYíÙûuJ*ÿÿàê€#à´Ú ÑCl +Œöþºçly7ÿó ÄÀ¾±KLpdP;¢²Ò½ç3¾€0Ð3/Ÿ–ËÚU—gîÑH’xÔ,ÿó"ĸcÐqàÎ%,Xp³÷ô +؇pÌŸ|åÙ2->£Ô÷[Êsz€@µ! ÿó Ä ª´ÈNL´äd6V²l˜W³ùJˆÉ +³T‰Ô=›ê““ß­úÀ¥uí€õÿó Ä ÒX3Dq,.ÜP?²l¤x)L³NmóÙN…FÚ´9?×øG€ +‚Vi0:™(ÿó Ä +ÈÖ½Plr +×3@rÈ›ÉiÕüÁÚº‰ÿuªü¼æ¨`Lv2”ÿó"Ä + 8®´¸d”L?:ƒ9ÀäH\ŸÚ3ú©ä.Kü7Ô   +G±ŽÀ2 úŸfÿó ÄÙºLDqJJÈŽ‹¡í ôIëvý[ð@ˆ;¸OÓl8àZ?ÌWZ™0Kÿó Ä ÚÂ8KDp:ˆÊS£ùÿâ; Þ*ì½y ÀøÞÞlEoôÐg.ÄDõŠÿó Ä°²µp{NLX£’ýüé;ª8ÌW  - %A…ÍU° +#braˆ‡€! =ÿó Ä!.µøKÖqEbÖZ¼ßü㈻¦S¾µT«IÆ©9·HöØ|CŸ¢¯± „ ÿó"Ä Xæ½PKNp©S2Tœ ûK®˜Ö‘Ã!¸ðAβ›ú¸/m›úrý½òጠÿó Ä æѸaÄp&±ðvmëOO¡qÇQ8?8:7æz‰}1h¿Ôù ÒöËÒGÿó Ä âÀ¸{Npµ8¥%Pâ5$“#i0ŸÕR›¥ê›¿¿ò¯‹»Ê€Á@«°:m€ðÿó Ä ²É¸CL‚öz"œ»D £„ G«s[ÂíªiþKk¥µ U•ŽÑA‘H†ÿó"Ä .ÄXj„q¢ÂÁ0Ýà"ÀSd×Ïõ~2÷þ­Úíën€Àøµ(Œ+2eóeEÿó ÄèæŘj„pf Q$ÏŠ7æútkÕ½^£s]ðÐ 9ŠT< ^¯šR2ž¡ÿó Ä ªÉ¸[LÆH½_#vÓΠá›eŽ¨…`bGÿÌ€@aõT>`‘¹ÿó Ä +¡ÎXKDp8 Œlh´Z«úâTžk숎+_ÿâÞ¥§w€é»dY¹¢}Òÿó"Ä PÖÞXKDpZð²EŸiš™ªl +n«L½]߆d@ÂÏ<-ƒ¸ŒÇYÇÐÿó Ä ͘3Jq%†Æ¬ÊÎ×­ª¯´wÉNßÿwÐ% +ç†È9ª5Ö,Swÿó Äð²ÅSJL£ÕÍ–°„C£ šžÕž!úÜ\äÁ}€è*˜+"öäàè¤z£ösÿó ÄàâÊXCDpµVÐ÷üV”K/å^°è‡À¸3SXPÛÛ0Gâi6ô´g/ÿó"ÄøÖÎXB„pª€Qö”ekoÌÔ¤¡k€Ø½Œ@,zEÚb ‹ˆ£¼å´«‹SÝwÿó ÄàÖÂXD +p­àŠ×á ƒžï#U_ˆ,8LùsBrjZÒDß…¯òþôÂW-ÿó Ä +ØÖ°¨{Ðrþ’Ë~=_X?ÀƒÅ]2´p +#ÆŽãdX@‹/¥Ì\_mÆ¢ìqÿó Ä ¾¸¨cÎLLüꇢ ööò@  +ÀRÕ +oDÙ<ÍÔ]Á[+1Ǿܰø{þÿó"Ä @Ú½XLDpÕ% @~·èë€8nÖìHÊê«\_Kf€ÛÔ +ˆ¿«ºøÂl«ôÔOÿó Ä 𾸸{ÊLQÎdLñªÃ t+ +èŽgÈì‘Ê›ÿzW  ½÷@>þÇþÿó Ä#à°{ÄL € (Ëò¬ÄÌË?f;¡¦Ä¹~Xõð§ÿ†êúˆÿÿó Ä& ¾¹X~ +LÔ +±Ú €c{ð½^ˆDƒ>Å„˜5ÓÛx'Ú³†îN"=­ÚÀÀÿó"Ä( ‚´8n +HÊ·\YdDt‘U³I—i¦H— +jnJ໪tø}®NSúÀ€I°2Ó$ÿó Ä+ µ˜{ÄLnpFD—Çe…†íÿ¿âð™±3ÛXÝš-¶*Aeÿó Ä-ðZ´ðCð$©ü¥Ñ§•F®RÂ5”d8uøï?4Òœ§©8ºå¹Dä4Õ)7ðÄ»ÿó Ä0˜ÆXpþNÌóÐ|ËëIë{)<{qàX”›­ +솸OZ¥ÉÆH!ÿó"Ä Q¼ÈcÎqœUÖý7äˆóývûúÿŒû†€€8ÏN¢h¬À +‡ÿó ÄøâŘKDp1öÔ뱟ëþÙ¿¨ß‰‘t<°, •Fì†q6'dÕEÕ_Öÿó ÄéÁ˜[DpÏÁOÑQªßãúˆ/XÈ!ÀÐÔ‘([Ra0’—ÉŠ6kU£ø6ÿó ÄæÊXCDpgï}¿ Ÿæ:€€)Ž¥nK±T¯™0a…dÞ—Y-ß%:™MŸÿó"Ä XÞ¹˜[Dp÷ߨ$÷DàÀ† :ÒüRc{…˜ °ÌÊÚlL5Óu@þÖßúÿó Ä ©¹¸J„qÿè8à0ŠÛ]ÙBïB&FBÇúµ&W¤º šíþ?ó|Pÿó Ä$ðæ­˜d„p´ŒžÀ4%!8BâY¶Û¦¿@D ëT?Ai»ö¹ñ ÀŒ8ÿó Ä'(ª´¨CÄNúÞ™‘RJéVæA8rršvš[g2š‰åõwŽ8ã8(sÔ\úÿó"Ä-É2²Æq"ŠsZ¦ÒêSùni#†€Ãæó·vUGÈ#[!ù<°ÅjZ¼’²¿ÿó Ä .¹PÃDqÀ›T·‚7ÛáùÅ€ŒÒ±HVÉü$L¼DÛK§*çµzzÿó Ä .¹¨LÎq†LÕ%?ü{ÿË€ô€T@®V. Ô»Éx#–ÚÕ—ßü8øP +Æ:ÿó Ä þÖxBŠp‚(ÏÛâ¾ù0ÐÞHûfaÖpaÈb íé—4?HŒØð{µSÿó"Ä°þ¹ {NpÿÉ~L„Ä“6JT÷€ ¤äåêQŠ¨ÿˆz½©réùoþUÿó Ä$ .ºPLŽqÀÐÞ a=gTÚ +áH É|ñ*Ôº‘/fÚ•à#ö÷§Ñþ?ÿ€ÿó Ä& *µ{Jq Pø—¶Â›á-qÜ äyòÚ”ÝlkžÿnÞðMêïâ?ø0€,5<ˆÿó Ä)¡*¹|s@5â +€¸9qLS²N³ð5ô$~¨¶û|Ÿÿ*ÀÀ¬n…×ÿó"Ä- Y.©\ÎqrGÂê%ˆ¨h=Cß³3?ÀGÿm¾ßþühà”Ì?­ž€Šÿó Ä/á.±pzŠqU¤bà‰2äˆyȈWÿŠlíѪ_Føä€Àt½ì¼ žÁÿó Ä2 þÎøJ„pè7B ZyæÉj›i/â(öþ¥ôüCò@@ÙûËS¤…êK!¸Â€—ÿó Ä4 þ±pcJp„X€™Ñ*f}‹zþ(`òm×_ÿýá÷ðX¦n€%ƒÐwÍÿó"Ä6 Xþ¨HÃNpKÅ ¦×7ÍÎ|]Ûo’¿þ!ú€!'@ºP™šCà¸dÿó Ä8Ðþ¨0\Jp O­Ñ>X çþ¿þò@À€qà9 >4Þ9±D)r œ!ºJ ÿó Ä;Øþ¶XiÄp¢îŠþ ·Þ +¶eºk€Ãàn²hS• é‹Ýë@èòjê›fËøNÿó Ä> ʵ¸[Dp'Î߯ÿˆÿ#cPú®$)á›Ù ²åñÝÚÌKÒ”EYŒ¦‰LÄÿó ÄAñ.¬XkJqöV%×, €(Ci€Ëøv˜Ø™Dw5ðE‰ÞEE-)·èFÿÿó"ÄD¸š {ÆLHÖ–-˜ç¶ÿ_­ D,ÆS‹ú×®ýÕ(ø›¯ÿÛæ©}±cÀ­àÿó ÄIÑ"¶X{ÞpÚ¼¦6™ ÓÐ,`’†tOŽì«}PL3¿ó €€€9Çÿó Ä, ÒxINqÜÆÝÏ$˜eÎqˆ±ÇäÝqÀìŸè/!-æò p‚(–õ€¨ÿó Ä. J +pS¦ +ÊÇÂŽÕ¨`kò§þú‹[ü£÷þ1ýÀ`õ—̸@ÿó"Ä0 ½˜Z +p[ÔdTa²8‹ +yô_ú‹&?ûíü£zÀç@ÝgñTõ—Nxfÿó Ä3 µXaÎpÞ_ˆ rÿ„Ûþƒf3~ ??ôN€ƒÀøÞÕÏÆ ÷-±ò$vÿó Ä5 !¹xyÊpQ<@{dâÇÿ¨iÎè^áÀÀ `ì.—ÄÌàù° ²Laÿó Ä7 î¬°yÎp„÷ÈÓá'ú†'ž^‡€‡ÄÖ]<³Jš%åG5±÷üF™ÿó"Ä; î­PbŽpB/Hbj¿~‚©O'ò@ !píá¯$Öh-¥¿OϬѼ¿„?ÿó Ä>˜¾¤{ÔLô +(þNÞ +€ÀÂw®`T=ÑRøb•È‰úì˯¿(.|û® ì +Nÿó ÄBˆ¾¶{ +L,§ör`à:À÷yÕê¡‹+©Â"ѽNRv¡cüϑ-ÿó ÄF Ž±PcÎLè#‡À ¸šíÄ6Æ +Ô.’"kØD½êïžSÐøONÉäÿó"ÄH P¾µx{LäÀh>s§ áM à´ì2ˆj#y^oÞâó\ͺƒ·æ|¹OΓÐEü +ÿó ÄJÐŽ´8{NLõƒbՆ଻\iÕ®i_‚Ç^Ì·3zrU3Ê5)€h£Íÿó ÄM¸¾¬{ÔN€ð`õäVaÖ‹½å`¾kêwº¿ƒŒz²¥ßÊ0ŒC€)+¸“ÿó ÄQ ´8iÎp}éò™Wîhãô " µÚVÒ‘ÙQ=ÿÄ__Æeôž KÊyÙu@ÿó"ÄT PŽµX[ÊL€ pxÞÑ¢XŸô0MÁÒ©ä‡ò—mŠ?ãç +,â ¤Hÿó ÄV `úÂ8zÊqÎCòÆÈrßAÙ ¬˜‰¹Àù¥`°QßÄ"È2ãá”ܨÞÿó ÄO +¡2Â8{ÊpwoæOðm¿õn6Àá&¸"œÀQÚ(XŸ• ± +‹‰[ÁWÿó Ä? !.ÚXx„pýMGþ­·õ.ƒY‚›HÉ€ps8X­ïŽäÐçýK‹ÝaÝ~ÿó"ÄA 92Ò8B„p÷þfDž·'® À€ÀPI€ázÌS2“ÀØŽ0Ô3Ô|c¦ê @l1ǵTÿó ÄD ÂÀ¨SÐL­BVÈßÇÚà(o•Ýø8ß Î¯UC2³Wƒ'¾ðíÿó ÄF +"ÚXYJqêÛü}@À1È—­Éë#iDM=¼`< ˆÞšŠù~ÿó"Ä7á.¸PlÎq¥þ‰üågÜ›”ÿñßÉ „:‚Ö|¦0þ6'! þÃu +,ÿó Ä; þ¹dÎp÷©æîâùcÙîD槜&ø—TQ€N£€ƒN‘X?|SC ­íµ—ÿó Ä= .Æ0zÊqM)=%žR‹šŸ4"ßÿãE¾_Æ € 0çnà©JðÈÆ™ãåžm~f6þìì%ë=©V;ët…`à „YÀÿó ÄO°ªµ˜DŠLµ¬Hü0= n>¤†²Õ›1[zÓÛô¯òÿe@ xÕùqÿó"ÄS X–¶8KÄLI¬‡,l¼ Ùh_wÖÛ›R¾7ÿ ß©Ò5€ÀÑNö²\ +¢ÿó ÄUÙÂXB„plëƒ@:»®ýú<ôèíèß]8 o”¥#Êøi™ò›¯þÿó ÄX æº8KDpAÒn¤Í9ÏR»Ç_ÇÿfÜ+ôýé "øÐÉ Ÿ¾'¸&ÿó ÄZñ¹˜b„q•fˆ²ênµVï7Õ?VðCýÿŠÒ &qÉ#Ÿ`Ö¾„ðŒ…`ÿó Ä] ¾8cJpõé=¹ÖÞ¿†{ç5œ‘€0°¼LF‚“ MË J£QM7\ïÿó"Ä` 9¶8cDpš¯|ŸBÿú÷þ7 €Ç4±Ó +yÀP?s¢¦Ö÷v¯Þÿó ÄcÀæ²bŠpÉÑÿüý¿A€ý\ÍhÃc˜k.ª€TˆãåQˆG„`Nµ +ÔÔÿó Äg ®8kDq{¨æKO"€È¾´w¡ úšZ@4ÝŽ5¬jÒÿ^?â>T÷Fÿó Äi º8bqú£¤€)Ì–½NâLÏÒS +àHÅ—Ä™ÌÔo¡éã}ê77®´ÿó"Äkøª¤ÃÄL–Àcݲ†|T>3B³g:Ñ?‹óÐU¨ß—S²ÝØ-­šÀ ÿó Äoðâ­pzÄp +©8ïI>0¥Ë…ƒŸ-ˆ³]&/¨O¡þ©~Ÿ«~7¼€Lÿó Är 湘yÄp–^Œ”v§ËÜ«Æ /Ïquxƒ„šªÙ€mÿó"Ä ®¶8bÄLTCiéÇÑ-SøWÜߊêèÕËÀ ®]p-JèålTj¤ ·¸kbÿó Ä„ø’ ÆLúÓ ŸéWk¡^úÀÀ©¶ñÍ0eÅ…Ú§TR›ÖO­÷½ÿó ć ƹ¸aÄp9Àtm¡Ý.Ë÷ýgµÀ +*ó´÷±3iœ$ÊÈ Óo¿ÿÿó ĉ Ƶ¸{JpÐ<­à6‡å»ÿv°" B¢øP9 ¨`'YñŠ{O±SÞ#iÿó"Ä‹ Ž©X{ÊLóS½QÆbD†L8Af?‹È£9Çp^ÆOÙTJiÊ' LC½ÿó ÄŽ Ž©x{ÊL4g<¦Q9”ËV‚)ÖÝë6ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó Ä Ž­™O(ÿÿÿø€ XףʇDcZ´¯vSµÚà QHTªÌ¦þÿïµÄ/ÿó Ä’¬‚œ9™h˜w‘t`4 9ó§ÛØïÐp€P€¨¨þàdÏ$÷Ï*Ñv3ÿó"ÄJ +)>µ™Ø8¦È;šè>oþ5ÿýFåz€€Pp ‚ÚI2B6Y«•?—¹!Õã.ÿó Ä=ÑÅ{Dp‚±Þøª{õíûqFƒŠG +ƺávkÓYWôèd‹f}ÿó Ä@ Ž¹cNL_Å×~ý\Ð=7¥Ú¤Î5©ÇZ^—ÉÏž#âËëtHÄÜÿó ÄBp°{ÎLþP6À@ñ±à.‰PÔ½ihðÀå©cή;Dý[ñ¼©ÿøÝ\,ÿó"ÄG¸Ž°Ø|NL  LåÍ\ò'åe| ªž=Ã႘£Fÿù¸ +݈÷¿è;•æ@gÿó ÄLù±x{DpºªQÕ®P…õJè +M#Y$Ô§ðÒ ÑèljP´Ál,„³¦…dÏ¢ÿó ÄO ‚µ™O(R"ct“sˆ'Œ +Ss68ýEËäWkÞùÃϼ°Ÿoÿÿÿÿÿÿÿÿÿÿó ÄQL‚¨ ™€ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€Ð À™ž. ±ò=:ÖóB `.Ýÿó"Ä QÅ‘Ñ(gIWSjP!Ÿê4ÿüI€A¡`9ØU‘ˆÅòSzFKP)Æë<®Êwÿó Ä !ŸKNp×6fùå¼?/ÿü}¾€€%ÀÕH|Fæ/ +¥fj ˆRºßüÆ¿ÿó Ä ÊÆXKJpz¨Ñ8oò¿€0Àq4â0 b±ù3TÁ +®b³w»ÚµÕ*pŸÿó Äñ +´X[Dpwöƒ7ÿ🬈"h<{^„`ÎõW/"Uhm­š·öuϵ¼†èÿó"Ä 0ʹ|Dp`mü³¾X +“X˜UÔS¥ý@g(Ñ_ÔùF:þ{y(èwÿò®ÿó Ä"  +¬8\Žp¿•(¦RÁ¤¾y< ³Uƒ¨dZ(Ý=ý\˜â_n¢˜gÔò ÿó Ä%˜Ê´xkJp¯RŽçEÓ–Ý#2`F:·ûgeøMV¨”`/ÿ½?2›ÿó Ä) ¸yQ(X 1 (”šïp.n=’ø”')¥gYŸ\º³Œ“-:*Óõ;ÿó"Ä,Ì‚Èy‹hf¦M÷d×OSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€ÍÜïÿó ÄñêYÈþåØXñë¹Ò6H.ªû_ܼ43zÿîIúꀀãÿó Ä ÆXLŽq&¥ù!üø婈pcpFÍR©kþ¸WéîuŸÿò Á +0د)ˆAÿó Ä ιLpâ&OZf%d ð"É\ݾýè T™¶^GöL€¤"À¤ˆ92„ÿó"Ä ŽºXLÎLP•=7rDG€¼Ébò>N¬'uN;]?ç©È@c×@rÎãJl‡¤ÿó ÄÐÖÊX3Dp¦B; ÏIÔ“hž¡úªàÍûd€Ä ©À؈a%£¡EtÉ`ûÿó Ä ζXLÊp‰àG¹Š¾Ý}RšŽ“ý3È 5pÄŠŸ]]>ÖŸ'-Dˆ7ÿó ÄØÖº8KNpf³ímm©øWý·ÚU¿ Àà€ CYÀåxúžÈÑÊɸóý~ÿó"Ä (ÖºX4JpmBú5å2 ¬"û ÌÀcK€ÝV…*¢,Þ“ÌQà/„Ä-¾¯EFÿó Ä Ö¾XJŠp:ý•6¦43ôC€À C×Àé±OR'fŒêhÌMAõ&ýùêñßý»ÿó Ä Ö¾XKPpÖŠ£$Èf2ÀÀ†Z–ð®Ctÿó"Ä1 XÖÆ8[DpÕð»Ê&Ï`Ÿ‰º|ýc ü?Íý¸ÿ#53r‹åõÀMSÿó Ä3 îÁ™OˆYì’EÈ. ~ kp'ËÌ,£Z\iMSÌË–Ôê!US)4ôªIÿó Ä6|‚ÀYˆ¥¤¤Ë†ˆl³Ñÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþøÿó Ä žÀÉÏ0’:&àgKVÇ|ÎQÄ0R Íñ÷ý>wn”KSô­ßä@ÀnïWÿó"Ä PâÁH{Np;9AXyAk84±Ã= T޳ݗW&[êó‹]ú€€-Çnÿó Äð–ÁðÃÎLÜ8|ò2åyŒæƒçCxþFƒÿúà€påÙÿó Ä'™´0cDsðÂÐ`–@¦AÇ8ÙnäýmTÇ9yP~©éý[úŠ~°Ü"¾ƒÿó Ä+ !°°\pðèšMj(â‚HZA»K›ScmM™ +ã{}h5>³“ò€`9|)˜Psÿó Ä- 潘KDp +òE%è.HÅ^·6™ú Æ•Ôñø…W°0ýñŒÂÀÄ–‡µÿó Ä/ š°cÊLMYI¿P¹íF„âéÆ“è<_ðc^ŸSºÀ€€ºÀÓtÃZ€;ÿó"Ä1 ÖÚXyDp.YxqsJ +îôÄ1£UðÿQÔßÔm+ê?Ö€šóûfs\i—¦ôƒ,ÿó Ä4øÖÆXYÄp=ÍjȧÌÿ?© ›zŽßÿçÿaà  h}@öÞa†Ó“”Ä[$ÿó Ä7 B´¸{Jq6^Žøš¤IÑ•íGÿó Ä9 ºzp7ñßE†ÿAÕOÿTâLÀÃ{ïJaTÁ!r¬&÷Ñâÿó"Ä;ùB¹øzŠq;^Jþ]J]S‰hâO$ÀOb+ÝAÒGd`B%B"ÒÞ%3kÆ·êtÿó Ä?ø²±P{ÎL2Éôl¶·wu€À F`ZTt&¦³ujÂñæþqc³7Ô@ =ýÿó ÄBÈæ­HzŽp4oüWÌ€€Ôw‡˜t¼Ï!ç jîÞFÝ ÄÕ9A´ôÿó ÄE ú¹¸j„pw­ýý@ƒð7“Xû K ÉŽâaŠr›+E¹‘íúDG úÿó"ÄG XÞ¶zŠpu–Oð ;.E”.ÉAöŽx½ùfVñÐNÞ¯§P· è>>ÿó ÄIÀâ°¨{Dr2g&Rxk»h\.VmM/ÿE{óê­ÔÈ/gÇÔþî°o|¬^tÿó ÄM°â´Z„pCdvŽdP DB…‡–òŽÛ>ŠÝYM§£ÕüYW# €E Ÿà˜bÿó ÄQàæ°zÄpHfØ,¢aø󟉟Pmí-ó»¶Í@6Þ*\–gqmuÿó"ÄTÈú´j„pq!~cF5æÛ'áL$M†ŽÈˆg«Û!Ò˜ +²!/a’ 6€Àøø©·ÿó ÄXØâ°8yÄp›ÿ¥M÷×pc{ÇÛȘ…ñ¸ÓÊË€ÇòQ ‡.Î1„-ãŠ.¢ÁŽ„ÿó Ä[¸š¨[ÊLñÄÌÀ°ÑéÔ>ºA:˜§wò ‡ß£ ÀMþiÒ6˜… +$ …Ô¹ÿó Ä_ þ°8jÄpB:ùBÍ«â­Õ”Wõú7Ï+À€hýÝæ0Š@PÑÂBä +vÿó"Äa +pÚ¨{ +p™î0ú>«~)ýGûr¢¯æ€DÆü´®‰:xãÛ#ˆ¦½?ò³&zÿó Ä_ÙBɘiÄqŸ•¾„©.´lXuñÖ®• •ÚΗDRæ-oº¸…[ÿó ÄbÐÚ¹XyÊpñ|BÿïõRž°Àh3ƒ¥!ŒÄK86Ç ¹?Œ\›*ØA[ê%ÿó Äe¨Ö´¸zÎpü"æì÷pÈÀ ƒüáu,x⾪ŒíŠüy¿þ“¯výDÿ#ø'ÿó"Äi !°zÎpwu4õgºá°òR€ìé¬u + ¾¤0¤[“7ÇBT¢ÿó ÄlèÒ±XjŠpµ"^#HLÏÔnçdR@â!F­MÙe4P­AžžÚßçÿÿÿÿÿó Äoˆö±QOÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÀÐìV¡nð]2մÓÿó ÄsD‚¤˜hµes¯ÿÇL(IóÛ÷”u!ŸäÀ‡¼+2)²€ÞMõV¤ ÿó"Ä9 P¾µYÏ8=ߟI­sÝ[ýÍQÖsù°&ÜiÄ66ªá¸ìzÀïxqý…ÿó Ä;ྱXcÊL—eûTJh@õ’u~ ,Î1­rÚN‡aLøUĹY¤—Ûÿó Ä> ¬kÊL}Ô·ü2Õx³¿.qeÖ +%ÒE˜‹H‚ê Ãͳ|°–Uÿó Ä@ ¨¸|ÎLÚôîûø3jõ€Wå¿=~Ç;£ÝôÙUÖ=?W”n£~˜ÿó"ÄC Hú¨|Dpõ}üÜÿ‰À¼¯H' +-)Ír¶+:¤·§æmªÿ宼¢ÿó ÄE ö¤|pôhëN~!ŒŒÌÁº¸mlrüDH“·ÿU¿“Âç5¿Ü]¢-‘?ÿ£Àÿó ÄG€ú¬8\„p„í€ÔÜKðöQÀU§×6Q[N 0¡ñ‚}êõ€ÿó ÄL °XfM`=âüº®ÁêIçËÀÎsÈUnź¾7ü`ïè¿L ïƒHÿó"ÄN I +ÊXYÊpÞ;ì‚ÌÊvŽ~Ù0À@ÜGtÓ@¡Û¨ÿC ÿð é”DÌrÿó ÄP ¹¸{JpìZ>=B‚N{ÇÖý¥ßýß?W(Ãý~ƒðC~PÀí³5¤ö”)ÿó ÄR °8ÃDqUHÂÀLÂì³ÆÔ|©G?ÄaooŽ»—;ô€Àbk™ï ¦ãÿó ÄTñ´“ÄpFGp ÂrÆ +^dÆ?ã!_«|wúäú€ov~ÍÌô¼…“fép ÿó"ÄW Ö±`{JpFBVÉ“ëó4MŸùã·Õþ_þ÷ÒÁ“4màÁ(ãVË +Ç¡"6@ìJRÿó Ä^¹©HÃDpŠÍY=eÆ0üîõèÕo¼hÿûãA€´˜9Àée$H4*ßÊ‚2Wÿó Äb +Y¬¨cÊqRgAŸ¤÷øŠõ ºÿ«ÿø0G•¬28ÌG„ÉÄ©wŽ%†‚s(Óÿó"Ä_ Q¸È[Jq òŒgãôê*¿]ÿGià‘@ÜU‰û™à0öÔew8 ºì¸ÿó Äa ÖXJ„pÁÿûDR‹Vsê;© &©(œ9õv+zV\P“ý.d¦}!È âÁ3uÿó Äd !"Â8z„pâdºo¢¬Ñ˜ÛèÆ[VEb¤Î6‚}6¦‹¢` +#GÜg¿9—¶ºÝÿó Äf ¶µx{ÄLqó™÷çΧʫ{ˆÈ¨-˜Õe˜¯TD”Ýͨz}O;ÿó"Äh"ˆÎ^qGð¿G¿¾º~¿¸ °éÀ‰Ç¦}¤qrÕ¨9É,Ò G•Öæ߆Dÿó ÄB !ÂcDq›ß¶þ®ß‹0‹Q5¡@Ì?¬ÝÌXÈ~ç¿_£ÛÓµGÿó ÄDùÆ8[Dqýnê€Üùß–™ð/ -œNŠC´(}OÿÅß÷ÂH“ª0Ëíÿó ÄGÀæÂ8[DpP +ô÷Ì‚|MÀéµI²Ñæ—ÚƒΗ°Cé3A‹<ïH¯õýÿó ÄK +€Ö¸È{Êr>¥,ЀêÍ¥Wp„š¬¡Ý=j‡w¥q0ÊV(Må¼TöÈÿó"ÄH 0þÒXIÄplà3àÿcKðà¨f\‹§.Ø$Ïë%ìÎBl¨Â?|ì—¨¬‚ÿó ÄKð’ÊXKJLK@ô£LŸ!¹´¶.¦¥:͘•gVÙ‹êÌÚ ÿ“·ØnòÀÕÿó ÄNðÖÁJDp[ÀÝɦÕmH.N£J˜éÿ¾§˜Î…•öÇѾÃ}[ÀÌ<[ÿó ÄQ XþÎXKDp€œE*ËTÒÊ z&h$í@È/ùÇ”v+Qö¨Õ?GqP±¦¶Û@õÿó"ÄR Y*ÆXKDqP‚ +mE„Nš»"ƒ·FÖcÌe$õÖƒøAôð‚¸ÀÛ›.øÿó ÄT ÖÂXLpšî¨ôœÖêŽt³ó3\3x'êëðC|<Ì€#ÀiPÛjNLí@ÿó ÄV îÚXJ„pR6¢½@X¨}úð¿Ñúí­GÿÊŒIñàà`³¯Ÿ¶£ +Â8ÿó ÄXøîÒXcDp„k8Ä05ýKÐCúÌ.Ûýÿƒ`'*S;\ÈV«/E1áWÿó"Ä[ Y"ÁøJŽp4‹ðD:ÐÑAu(|Q°ˆH",®/73jm°Cñt‘&³Èžæh%Œdÿó Ä] !µPb„qÒ¤=éìhšþÓübõz}©b”5Žë¶ˆÚ`ªŠ>õÜ\e9Ü·vÔ#ÿó Ä_ŒÆpütTE¦ÄÏR¿*Ÿ;÷+¬Â8‰O`–&u†¬í^ Ö;ÏR $¤Fÿó Ä:ðª¬NLøÎ1ü,[/Y+‘ö¬¬K@e#6¨Îß›çýà6Ü ?áÿó"Ä=ð®°¸6 +L† è•ƒu[1±@'<—ÏxÙspØgQ|Je¿y+YòïÒ˜×ÃÊÿó ÄAئ¾X3ÄLl„8·Î_rè¬p WP Ì€ ©(lu§Í°ž”É «a-3ÿó ÄD øÚ´({Äp{nø]Zûö‹?Âö¿.`Œ0TmÊ—ðZsLߺᣴßâòÀ Hÿó Ä; +™BÎ8{ÎqB?JÝqPz’Ç6â(úšÜÁÞþYÆ7Wøó»Jžú¨g Àÿó"Ä+ PÖÎ0jpcóMÀxT¥£C"~µºÙvªŸQ´¤+õ1>ü:&89®?«Ñž·Fÿó Ä-x¢ÅðcÄL¶$Qæ”Tñ-n6Ëå¥#rM÷ÅÆT,&Ÿ¦ú†3LÛ¾íµw8ÿó Ä2Q>”Æ^qÓ +õGörίŒAÝ`Z-õª¬±«í¿þ3üEÖ ´o€å„,±¥ÿó Ä h¦ÚX2ÄL¥¨w&·þàÁß/ë, ëðrâRßHèp°å£¥äž0óÄyiÿó"Äñ¹3JpnˆEZ¯¯µÐ$a¡žþ¿þ⟠ä²ðïr\Ë£¨lüß-â—ÿó Äø®µ3ÊLNG%u;* @QÓ©¿, ƒððrÀ†&£Xn +øë0ôæº}¹íÿó ÄÁµ{ÐqZu&­ªÄ?XEŸê±¹ÏüÁ¨&ôÓÆòÃé€ðM÷êúÿó Ä ±îXJŽpÙÿÀõ\–)Zc°T-¾GîÅjÉfŠ›¼½¿±8?íùRPÀƒÿó"Äñ>ÍPZDsT™ÇO HÑÏjjy’oý7Kò»àþ©_à–£ÿüfþÀÃ+0“Mÿó ÄXªÁP[ÄL¨ +Ýãÿ¡;é-p¥-|#üdõIþ!ò@ð!Œ°ºËò$ÿó Ä "Á˜KÄqÉfø|;®[” >ÕYÞo]ÿ&ôaýÔ"ÿ£°2ú8¦oŠ’Ë8ÿó Ä Ê83Dpà#^Ä+“-W/xç·|/M¿îìÅý÷ÐQúÀ‰€xk€‡ÿó"Ä PŽÆXÊLgP +÷–Ù­ëº +'¤zB ºC6fg.åñyÀÔRáÿó Ä ÒX2„qCžØð,qUi¨ +¯Òc¹Œnb+B;²;}õâ<Õ€Ù]€ôÔK–_ÿó Ä èÖÒXcJq+ + +Ô `™»³DÚ¯5Q¸O@äbÂ/#h‡÷Wÿ`.þ8 Ø +Dÿó Ä ââXIÄplm€õ›‚‡ ääâyØ€—¤ßó26§¿v°ÐXÿó"Ä YÎ8yÄp„ÓÆmz`ú:r`Ü@!I‡ƒ­÷l{úb}ýq¿AárÜ^_Àêÿó ĹâXIDp=6oC)0txtW÷Ó"§£WýOýàŸ ÌX>›1Uý@ÿó Ä PâÒXb„pÇT{Q0Ê€|luvÍiKkcÿï|á%‰€è<ïÀ4`ÖÁTÿó Ä ZÊXZ$ +‰‰ó…w[¡õȆõ wT$~°"€åò0z`)§_•ÿó"Ä @ª­6Lêà®®Ôä`/Y››1=,åüåi +ièÍ ÏÀqhY¨8b|÷ÕŸ4ÿó ÄØžÂX3LÚíƒÇÛÛV¯Š{ΧPmf”M`€ š<ÅK‚ÄbAŠXÄIÿó Ä +ØÖ²8NqŒËNÚ'YË?çãü˜³› lÝÕÛ/*Q‚ÂЇò}»ØKÿ@øßÿó ÄÈÚÍ{DpÀÿPÞ¤I :ܵï>,‚F³ãµ¹×ëd /êEý§ô€ð +Úìÿó"Ä AјKDpE‘‘L2ÌüÔù¡< cÈ)ù×}|7íO*ãªÿO¨Wê°*è¯Xÿó Ä ðÖÒ8KDpÌúbu2(NDœËçÛ_û0ÞùÇÿ9¨°‹x RA@©pÿó Ä ¡BÎ8[Dqÿ²ÑÙ"`6Rȃ%MS™÷Jg^.¾;A£52ëÓzš•ƒp¸ßÿó Ä8ÚÚ82Špø։ƜˆfYåûƒ¾”úo½ý(41›‘~SÒÐÃÄUˆ´Xšÿó"Ä + 8¦µP~LØÑå“¥füM¥s.5QÀ ðb®¢Ž¯5Ôð0ÏÀÐe¹ÈDÔÿó Ä +ÐvÒX1šHÌßrÎ6°ÛoL¸ÚC¨»Ð\ýHÃz€ÙÔlì–4‰å6Vÿó Ä âÞX2Šp¶Å‚ìlŒ&‰oå£e)Ûï’@°3õ€ä"ã$ÚË$4¶"«0cmÏoÿó ÄÈâ¹KÊq sSxÆb‰ôÿÿž­ÿCÂÇ€ÍJš4I.”E7+wåþ‚9ÿó Ä âÆYI8ÿ×€Õ&Ô2¦~Þ¥Iäº@îÏôŸ +.Ž džâqy3Hx~\ÿó"Ĭ‚Ȇ8ó+û}=¹ÿÿútÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿø˜$ûÄÿó Ä ¹>¼ÉÏ8}NØÛhí¸}Y¨ŒÎ lå6 +QÆœ¦šßuÿQÐJ¯ÿÿø’Ðÿó Äñ>ÊXKJq@² Jñ"HË^U1jŒ^;ÛX-ôëVÿÃkÿÿüXÕPÂ,ÿó Ä ÖÊP3Jpi6ÀTCh]ÊM4}b¨ÚK7žèYÔQ¿ÐgôÈ€@X8‰{dÿó"Ä Y>¹øKÄqdëotÕXä¤ErÉò=¿?¹Ñ¿Î@è=vêèKWA@ª@*ÿó Ä°¾Ñ1ŽLøäVÂN„Ò—€Ñs¸à¨Ü¿WVodâcýß· € +BZ®­ÿó Ä ÖÅPcDp)âµð-PŽÌ‡9ªUõP%[ÁýÛ ®¡ÚïÎt€ (€£D€ÿó Ä ˆfÒX*X('iQýçj¢Û…ˆ„×&©2Ÿd¸^W}¡€1«øÆH`±!¸ÿó"Ä +àÖÖ8AÄp§^¢Á±ƒw–Ùú¼ÍÿVðcimY>À9ö©ÑT~9!O–â +ÿó Ä +Ö½xcÊp +Êܘž +B­:šÃ\Jf›ÎÜ"ëh€cý1¢,:Hü† 9A€€ ÿó Ä ŽÎKÊLö’Í\“‹[Í¥}qgzÈj¢ATm×WŒÕò}¡’妺@àpÿó ÄHÖÕ¸3Dp;e +G”‡Õ’/ÞšÚ·£Þ¦íÕ‡ÖÔðÝ4Æíøpë‡Ðÿó"Ä +øÖÞ8J„p¦Yß"ìösÓ•ÕÍM^ÖnozÙ +mg.‚ ØmU„Óú¼ V“Úÿó Ä !.¸°cÎqÐ0jÁ";ÂNàŸw¬¹[ëü°ôͲÕæÝ æ=Õ—·^'pÄŽÿó ÄøâŸCJp2|àÀŒórk§—‚ÁÆÄÌ_IÖ}m*§[ãµôÖ€€)c-ÿó Ęš½øCÎL!ýcöÝü1‹LD+j_?ù$Ôî­â†Û]@¬ l‡3†‰ÿó"Ä @ÒÁø3Np2dStÌÉrL²Ô(þì¿1 ·;þ>ò?걦b·@íh‚xÿó Ä ÖÖX3DpRLGЗ%’&­Ÿ·VIÑýýE_øb€©0µ@ç’ÙªÁä‘®Áÿó ÄèÒÊX3JpôT#Gu7ì­'€“uøקòîX‚ æé.‚z"°;]2X‚L™ÿó Ä Òµ5pÓË?^ª +ÃÌêÿò§‰~V°È ””G=‹ª°¡ÅUñÂX€ÿó"Ä ±µ˜KÐp'Ú\–/œ{çïç.ï¥H ¤½ôbu×ß_þ2øœáÐê9Ĉÿó Ä + HÂÉKÊL5]¦«q&Ø´|¿ 1#Ùnp¡º›Æ»õ€±XºèyNúÿó Ä ¾ÉX{ÄLëGbŠáÆžÔò!ë=wî>r[t€pñ«/¬‰†`ÜÆ+ÿó Ä + Š¼{ÄL‹XA *Yœçöƒ¦…Vq)•=Sù]Eú€€ˆü'+úLù¬p2ß3Qÿó"Ä ÂÄðcÄL!lŒêÔ£ιٔáűÆú×ê ßp)4Œ‚ÙkÜÔ‚§Å¤ÿó Ä é>¾{Êq®CÞPq—Í÷oëHjÃKÁÛu¦5}Õª»SèRÎ(° 7Û +ÿó ÄxªÀ^NØêÔùMåUÔ¯#‘IɼàS_Îq[„b¶oܧÒ +«Ú@ìP¸ëµÿó Ä ¾¸8^L»¸\l´.¤ŠAL›GM5«°7ñ>æLíñ@@‚~ÄÀ 7¬À¶ÿó"Ä + PµpNL;jêºëÙ,Ž€_!;uÌÉ"¥X<F[ú€ƒŽs!!0 r4R;%Èæÿó Ä +®´¨CÐNb ô8`K¤ÏÔ÷L0#«Æ“q"ë0;’`²:˜0Á0¹×cÿó Ä + æÆKJpj Ç î&Á¨ ä7õ__·ô­ô€©²0–.´’ûºÉ—Mÿó Ä úÂbŽpq ‚$/IÀ´ÓõÿÂ.¿W¡¿*íUé܀볃 ©vºz£DK ÿó"Ä @þ½xKNpP§H{Ÿëöôm«yÞ¯(Oå^®÷jBï€ÕIV‚ º%AÖ*ÿó Ä æÞXJp<‘¬s?Ý|u‚úÓò@€ r:f„‘òîϪY]ˆk@ûÿó Ä µøKÎLÓë; +«ñsvèOÓ”® ØhÀ¡‚{TÐIP¨ÔØ+Rª$QÓ_ÿó Ĩ¹xLL ù+vñ\zµP°LÀ˜Óo*¹$mÑì€Î¡ŠÅ´ŽÊ½ù;­·ÿó"Ä @þµxKDpRiWÛ[nË(ç,Ý—l1«ÙØÎtÀ¯“ +Mm6ŽÙ ³Ÿ«õÿó Äø¾¤KÄNªÜ×Ù$Ýow„àÅû×Ýø1• YÞ‘DkJ0 +™Úr.ÇáÂzÿó Ä"ت ~Lý`€LÌ>çõ\H¹g£èRŽ`zäïëNÖ!0yN¢*ê3q®»þ°ÿó Ä% °ð{ÄLÀ G°ÕŠh{œ6©íìÖ™{pp¤ÎË£ä‹ÊÔvÅ¿L ÿó"Ä' (š¶8{ÄL®3nÞ °c¢²° 3­ +Ñ_8ìE`–b=â>Þ-ý Àáìÿó Ä* ¾ ¨{ÊL«Db6SØÚkTªÁRD÷L‚ˆý +¹J]}CVè‘2ÞàíÀÛ[Èÿó Ä, –­P~L±b¿mþzÀ_«së¬V!÷J”‘º ï;¼ µÞ4&m ÿó Ä. –±x{ÄL8–s«;'RêðSQŒš‡7Ö7¼ª°‡)îÑú€¢Â`b +›³\ÿó"Ä1 Pª P~LÍ2¡ÒhFbªÃxó]¼J©•Ü7äèûÝ°ða +ã¼á&"\×-ÿó Ä3è^Œ60)ÍX­2ጼڥy€Ò^â½åÀ +ãµ–9ÒÆRæeG”1ÿó Ä6ª {ÊLÊh{Œûßø3zxÃyËðÐÀrþ![à€Tyu0º»Ý«i )Íÿó Ä:¨®¥PfN‚+V§hSoÑ®¤‚ ¹ÒNW—…·EZ)#V]¡° 6_ÉÆÿó Ä>È–­˜cÄLÒ#g½ÂMNû–€kÀ¡«sK€ã•Íªtlh‰åaYY¤×È¢Šÿó"ÄA¸šœ°cÄN¡ÌðOsqô?Q ãeU'JÁq禓åkx߯A0ýM&;>LÅ«0‡ÿó ÄF থ3ÆL˜¤3v€8íØO‡ðåMÔó¸ôü²Ì™û}LKéekp©•ß‚Ñ¢ÿó ÄEতX^Lì&£*Œ‘0è í¤Cêå¸(îz­ÁŒ@ÂEÂ#á+ÀÆ£òšÿó ÄH¨¦”(fDLÑïðú¶éè%°d=múM"0•Í9Zg î ¸ÿ¶^È<,=oÿó"ÄL –”(NLP¿â‚6r€´ð#V +‘VÊN8Ä0öÂ2ÉŸ€E±h[ÿçÐ5»õÿó ÄO ˜î­ÃÎpåä ÂôL^núÑ=TãÜãX½Nqf‚?§$ÝB­ÿ›ýqâ²ÿó ÄG î¤ÈzÎp<€â®9/«”2‡28ƒÇA* Û BYPåW?W ïâý>‚éäÿó ÄIèî­˜zp„1oÀØžU’…Ðn†k«È3Ç?.?×ÿt¢£$ë¶hLÿó"ÄL î ¸bÄp­2iú2š<¢e©Ð@!?p9J§†¥æ%eÉZ·ÜâÛ‹*úÝE¥Ÿÿó ÄO A"²XKÆqB‘d—¤ôÀ(_p8;91Zzóf­}ëß`´sCô= Ôú·‹½m®YÚÿó ÄE°^±¸2^(ëÀÊû’€p·Ÿè·õ­oIÕ]Ãj¨´ë'Tº”KÝÉ€ñÿó ÄIÀ±¸3ÄLýÀĬë•Z·  ÈF~AÖò©§u÷þ8–¥#šàÿó"ÄMȾ¨øKÊL`¬naý[š…baÛí°@ÎõòÇI*âÅ& 0÷)R%Rþ5å=~¯ÿó ÄQ‘ +ÂX{Îpª°ùbXnêÔyzõÓáà€ ™`9×Ïgx ˆ f°Š!ö®hå§Áÿó Ä= ª¨~NLÛ^Ô¥Exª¿+úÐ#’>‚S¯17ÃÒਠ+]¾ÛiÝ^ÿ†ÿó Ä?оµ¸KÄL»SOFRjŸý_á€å6dŒ@*òýG’æ!|V ¥vž¤!¬X`ÿó"ÄB Qµ¸bÄqHD dòÞmNÜÔÞÑ@j¨˜y½ ’À0B‹”EB[{Ÿÿó ÄD ª˜NPLeÓÀƒ‰ Õyݶ§ØìxÐУÀ±²"d +;z¯Ÿ31üÅÿó Ä: ‚©˜3æH&ï¢l³‰kw×êyÀ³ÀHõ"2R”Ë­AíÛ›å9¡Œ|F¬gÿó Ä> ‚¥K&HÞÂÂJ +»Îz@À¼ù‰,^4ç¦@ˆgÛaÌK ‚ueØÀ +•”ÿó"ÄBÐŽ¡6LûS¹Àxò¯ÙìFn{P»\W/?ïlŸKšY9'<>Ä@Ÿðû¦·-#Jÿó ÄF¸ÚœÈÃÒpp͹`'å÷Lµ£‡çÌr|DQSú÷XÀöX9Î/ÂM @°ÿó Ä2èÖÅ{Jp'*HÚ×ú‹»Û|;züT—éò Àl¡˜íóø'?VÀÿó Ä5 Ú½pzÄpœšιϣ—ñ/Æ7ƒÎuGužê€IÀ–ÊÏ+œF6¡ˆw ½:ÿó"Ä7ÀŽÁ˜cL¶s–C5Ë[¹ÿ§ÙCWÅßÛ—”—*Š)…oʈõ¸ˆ2@æÿó Ä< 8Ö­xcÄq¤P%MÖuXÛÍ;`þ¦§õoñ›ë€õð(âç Ţъ²2ÿó Ä2 þº83DpÆË–(`«ÓüêÖþ¢?Ä·Y¶Ö<¼ÒaìrqXOXX›{J©eÿó Ä5øþ¨ØLÄp7ÒÝÙŠ,‚eTèõ ÞQ S÷r Àx÷ܘPq %AìW2·Áˆÿó"Ä8 ª”(fDL‰" +löšf*J¯'ùpØŒ…Ûlܵ÷WXd0 òo‚".÷ÿó Ä;à~¬È{ÚHlœN â›°Ð ] ò¯è¨ ÉÀùy˜²Ê +´ Qe‚µö‘Êÿó Ä> @–ÚXzÊLfã[^m¸P¿òÚ@ýa(¤“:g¬¢°P&®ûD†­99-›avÝœÿó Ä@ ¾ÆXzJL’Ì|—oJ}`À6^p–Ö—ê°VMyákQ§K“ÔCÛÕ@ÿó"ÄB X¾ ÆLŽ{×öþÚÃÍYºåû}>3Þ˜„‹y4F‡€ÀV€&‘•¥Ä`ˆÿó ÄD +‰©˜ÃÆqø  M"N‚z»«Gš¨ûOåŽ÷@>9á  ÖaU8h,°+ÿó Ä4 ‚±¸JdH”ÉunY©9cWÆÿ¹éej*rCoÖ×(Ϊå&„.rÄ„ÅÈÿó Ä6øf˜(3ò(t÷ÐéCûT]®û³ ƒi¿­‹~˜ÌŸ°!©(Å!Ú=ÿó"Ä9 @¾¤xKÊLfûÙîFN¶wþAvÅ€ë0¶ß^æøÿÅ)˜›ØLÏ_á‘ÿó Ä< Ö¾XJpÑ Ö]Öp×ç¹eÊgº\Vª}L¢f¤­ß ¬ªàš®jã‰0ÿó Ä> pÖ©~p2ŸYZ$K@–üíu +³‹â>¸ÞôAÀA°ý|-N2e=ä aÿó Ä3ÐÖÊXbÄqA–ŒI0GbÒBÏ~§KVõiý·ý`ˆu€ÌX:x'Gaààöÿó"Ä6 XÚ¬¸ÄÄp×Cg|U†£"?Gø?«(­×òý@ >±¾•$`@}4"gCsIýSnÿó Ä8 ²¶8{ÄLè +03Xubm–wo}´¢:ÅɨâÀÑ=ÈBNåÃ]_ÿó Ä: ÈŽ (~ L3›`ë‘Èΰâà‰ÊŸ¦@¬þ²äŒ,N—$@#Æ1E£Úÿó Ä9¨V²83Þ$ˆUõ-F/¡ÿ5oX°nÐ9ÂI¾¬ÞšÆs_ÝNs¿“ÿó"Ä=èÖºXKDpø· `€ +¼°øÀÀ¶ Š&'T„NÉEçf©o̳M^Qxu2¤ÿó ÄAè®ÂX3ÄLMàB'eWîZªK굈ÏþO(å‘y`°%§Ú“,–"ìŠ(ÿó ÄD  æ¥Np˜SqÑú žš}>ª­]ôx[€²¬&Ö˜$0žÒ«“ƒÿó Ä8ÈⱸKJqiÞ´B,µ/pþb¹=8À¨&HiI——Y”Z‰š'Ž…ùTÿó Ä;èâ­¸cDq÷3u”¼ärÞsêüà€c¨ 15ÃO—¤@CQé¥b¶OKR7Tÿó"Ä> X⩸KDqè—,ýˆÄ6ÑLafð~¬T¡VòÃF ‘¢”êÒ(ô‹]bñ5CÇæÿó Ä@¹B™~qÿü‚D,Œ@AóÜF 6éK:]¸¬š„ÀØåõ¿_ø'©ÿó Ä >ÂXJ„qÿþ€ÀÀ²èÈ•ƒôZCú¥­£{,p²ªð¤8_èþSzx'þÿó Ä" Ö±KDpKË× ×@4³ydÁÓ>ǧ¶ÞªUöÎÅNKÿáÒÎ×úð¼1¬çɳÿó"Ä$ 0ÖŸ2Æp¬Àæ¢p÷%cøƒ‡i¤(— sÍ‹!§‰50››éÖ¦o-.ÿó Ä'iB¥˜{ÞqÎês{í乤SäÜŸYÕ­Ÿÿ£íã5ÔfõkPÿ›çXÝ|/8‡a9fÿó Ä ¾´0cLNÐ…Äê<r‰¬.B]wI—z¿~‰e?ó½`‚9P< Öÿó Ä ¾¸Ø{LÐ…ô"e(#Eø3Ö›ó0̵:ùÝ?ýGŠˆI-¿‡‚@Zaÿó"Ä @°¸KÚL +†¬Û† ·ÃZ¹Þ­Çðôš™)ç^×ê7×ûk€o~¤dðTÝTÿó Ä ¹Á˜ZFqÆ/eGÎf&P>Âl×÷Ðÿþ¶Ÿ]óD)ôŒÝØIž?ø¤ÿó ÄèŽÎX3 +LX€Ó'Ÿ=Û_ŒºeÞ\n„E©úÔ&XòÝÿAl÷XƒÀÊ–XÌÿó Ĩr¼°[ÞJZÄ8ö¥K<æÏó 89AŸÉ5¹Í¼¨çòÎl¨Ðºþ±š˜jÿó"Ä + ª½˜3ÄL"—ÞöÈç‹ÆÞ\à¯F:½^;|jÎ]û˜SÌ€H›9€³ R6âÿó Ä + ÂÁ¸CÄLQªxmðôÞ'°CvD×9)DL¢gú¾°€px#F€G̽{kTƒô†$5¯ q~…8åõ)¯ I•ÿó"Ä 8¾¸ÙOßC¨d~Gk8.ÁQÓÙkF!‹jÆÄl¬$Ò)º M<„¼ ö.Šÿó Äœ‚¸PbNno9×ÿëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿàáÿó ÄPª´!ØÌ+Áï…jiÖòf–ÝgFRöK£HÝÙn<×Ï“ìÇÑ€œ–`? ÿó ÄȪ´8NLHå?ùêŽ<Þò¨v$ýpÍ¢?a³•®YßÉ€í\"„z´×ÿó"Ä + Hª 0~DLiëJ'ª>ÉIµiPÜÏ!ÍZgl :ÐMGu -àLÖåAÿó Ä ^¬Xk0(M]ìYÛ6¥ºn +¿<ãLÕ¥«öàI`äÑ +qÈtâ8ó²øÄ¥ÿó Ä +ðš¤fLQöýæ"€N鯧»eTCêõ©BØÛ¦þPtÎ}.ƒJÿó Ä â¬LNpU¨ŠPŽ*‚ä…‰UvW¯©ÀnŸ7ëRúßêÌØDì\|V¶ó]ÿó"Ä þ­XKNp‘8V^ì'î¢ÛßÔýÓÿêvü½ˆÍäB×Y ©eÏ9‘ÿó ÄXš­PKÎLi>Ø'è +ý*ý5Ÿ’Ê}`ÖÆm€ÖJš@`FBXR:?ÿó Ä +XâÎXJÊpCâÃ3ÛÛ?Яˆ÷-!a©úŽîý@üMè <•° =½·ê˜ÿó Ä ¹˜KÊLº +¤'iüx§ˆ>„@ž{}@á(,~0™–÷†ui¸$–›wÿó"Äø¾¨¸NLî}Âê·Ô7IÝÆ©ý¿d­X4DqE}ÿ¿þ­”p‚ ”ÉÎÊä`pšT`Øi‡©Yè%LÔºì‹ÎÕ×7úÿó Ä ðÖ °fpîþš÷œŽÊÓ s3$8k…u\®DÜÇ~ÎÚæE‡Z=í|i”ÿó"Ä ÚÒX{DpÑО £FÖݬæ(E×£»ØÿþÀC{¼ë0ÔÃ&yFé#SÆ*ÿó Ä ¸ø{Jq4(š£êõÐ]=ú§ÛÿüEÀ„óÔ¼…~éµQ‹×¢ºû2À^~Vÿó Ä ¬~NLêè½¥`(ãØÿж£éý@  -øûùðB7M"Š†Á˜'f  ¤*ÿó Ä ÖÆ8KJpUýQ¬ßóü†ÙÏÃàÀˆcUtà'¶X¨ZRú%–¼ +ULµYÿó"Ä 0–¹˜cÊLºôp‹ùd4²Žÿ¤‡lCœ6!xL°™r‚w4¤zU<ý;Væÿó Ä ¨Ð{ÔL‡3ùo#þ  {Sz£p+ž,¶J@´‚ù|Æ·©/«€mý mÿó ÄØâ´x[JpZƒõý@þÛˆ„“íûŽô©›Éè?ãÑmž_óÀ¯þÿãúÿó Ä" æ°xzÊpi²€ æÀoW¼e²ÁösŽ¢¹P˜" 0À¹/ fr™Ä+[ÚÄGÿó Ä$ +8Ú¬X|PpUö·;·=0y"i×>` ·R5¸n0ÌŠÕ¹¢CÆqGÊÁ ÿó"Ä HÚ¤(}pé­oéA#&·¹ô€€Ñ€=öÅQl[…`ÝÀAbç+•lÿó ÄðÚµ¸dŠpröZ‚Žöõú + >¡¿W®@uˆÏ< Ašcýˆ„¥¤3©ÿó Ä +Ø’ (~LL¶ŸMñ¾ƒ¬¸q•±8¢Lý ÀÃ;}«+1rÅ°= Z…xâyÿó Äøʹ¸|Dp)•öj¿0ÔŸðN§§ÔÀó€&Ô¹d[Oã¤&PúPCÐCvÿó"Ä ʽ¸cDp·Ó-Á[èšÒâÀ€BÒ€-™!ÂìñLŒç¦ ªC¡ª.ºI£ôNÿó Äèʹ¸\pHvÿt×X >÷x)ชÇ)È­šF4«ÆâǦ0;ª¿Hc ÿó Ä 8š¤(~L"81¼œ@¨ƒþÒôˆ_×4rÚ¡– Éš®“ª—ZÏGþŽVõÁ[ÿó Ä!ÀÚÊX3Jpê—(äKN0¬\ŽÛKá¾’ýl +ƒ&å«N»õß®ë8Û¿”ÿó"Ä% @’¨XfL€Ã°7jFr)ÜûáT¦màá=§¡ÚžïØäFó cÙçQ?ý@ïs+ÿó Ä( ’¤ð~LãŒHa?pQ MwŸ8pÜ…–[r;~ýì^:.ß64ïBÃŽÿó Ä* p¢˜~Lòõø`57wï•Ð‡Ì ×€WéT¯´n ¨¹%<ÇòÃŽ‘ƒÿoïùÿó Ä#ত(~ +LpÀ-h K®8¤€ä²4Ô²›À +(¶ }~»ðVûQ Ù^¶}ÿó"Ä& XÖ­cDpØPâÈk`ª¹ôåðtßà7³æx*íG+áP+·ëwÒ€¸‚·ÿó Ä(øž¾xKLMÖB¥yägUÖå…§-^ÆûbÙŽˆ~°$œ<vL©ÿ ˆ€£ÿó Ä+ °š¨È6 NlѶÖL—#œâ"y +”¢¢´’Zke+\¯¯nQ_ë‹Mªnÿó Ä+ ÚÂXKDpq¤nXabL£a AÔKf/çjîƒìˆÏéú“ÿg@¨€ƒ~¢ ‡ÿó"Ä. (Ö¨xMp‹ã¦£„%¦%3}<ë¯Ó‰éÕö»X‡±iˆ½À¢"‚°S§ˆÿó Ä1 ÚºX3Dp•™$ÌDòî$N”–ÉU—=~ "C]¿O˜U®°ÿó Ä4 ¡²XLŠpÀl‰Eä­†ûÍ”Js9Dë5½ÞQûÃfŠ[%Œ#ý`Œÿó Ä( ’ XNL@%î…‡w^úZf²½F®N‚á5OóŸ—iòÒfAÿÃvõ@P8ÿó"Ä* HβxdÄp<“ñ†®P˜i:OÀŒ9¹H¿^¯¨jub_û¼{þ €À™4qÿó Ä, Ê ðKDpiä•Ö%–‰PÖÀVdÐÀ6.¥Ó_46*µÝ5W>ñ +Gý nÿó Ä. Ú©dÐpu ŒÛƒ)¹ëtF³§!ÐT {wÛ£ìÙà主­ßÔŸGÿó Ä(¸’œ6VL¦Vy)–×—YQ¦ZqîôN]ÄÔëI¼ñ€f)ô-ßÖ®#Îÿó"Ä, 8’NÚL +¨ÄQRÛ¦ÜV´Ø“±¿.Wû°WKÏT.à0ûp“ÿÀìF?(‡ÿó Ä/àŽºxKÄL)!P, µ‡^áLAôp +]z(Z¤=Ïu1—ˆ7ïFÃQ¿æw?—° ÿó Ä2 ÊXÂÊp¯Ý€­&tÛ9ÒX aLä[å ¯~ ¿¯¿ÿBÿøñ)ÿó Ä) !>ÂXJ„q•ÆÅ@+Üò-¡¤[¢NÉ´þqýhIã3j¤NÿÐËË]ÿó"Ä+ IµØKDpB#^Ÿ!Râ‚­"<-øOëA¼¤h‡¥7Îßÿÿò ðÏdI"ÿó Ä-  hLDp>Ó <âLnU +Øñm'Òdõ ­Öœ3ªÕ>õ@ðÃÀ÷Þ%ÿó Ä/ àÚ±4Jq@-yÞ×Î…M‡àŸQ%·u¦è·B :?ÿ*ÿë0¨žr@›ÿó Ä. Ò±dNpWeM8®J’–/œg.D̯ÝÐn´BŸÅßý@PÃëÀ„8—ÿó"Ä1 X¢ PN–L°ñòá§ä€ÝÝëßG§:¸ éÈ0aO÷õ€˜ÀÕ‘A†d [Ô¡ÿó Ä3 ŽºXÆLèž•²µ¾õ[yæ~ŸC  ]ü¨äÀ QFŒ³:g¡,fd ÿó Ä5è’­NL@\3 ¡RæMòùA·¹ôú€$’  P¨ÌijEíõ!8ÿó Ä8 ʱKDp•Gn¢B¾à@+שJwð÷Ö.C NN)ƳcÞã¢`%`£šÿó"Ä: 8† x6JHŠ‘?Ö‹z‡ü•¨‘@¥`&!0¹-™jSå‘a'( ±«5ÿó Ä=ðÊ(d„p5ú…S¤VXqÿç>°  +ªƒØ`™:S2 HÉ‹ÚÍþÿó Ä@ †¡¸NNH`èɧ¢qÿÿ†`à àhm BÂÁ0sÉâpc™@<LqŸ[Õu72ÿó ÄB !ªX3DqP]·¿ê<õBïîÕbØGå*DJêÔ ¥ç½ßÍÇHÔo*±}ÿó"ÄDðÊ È4ÊqtýÒèHPË ëSY±f´tÁ‰ŗ­·&y—k¢À¥žûTïêÿó ÄHØÚÊXJÊpvóð880–K.I˜$€@0(½]¾¨þý¥¢ÿùøš€€ ÿó ÄK ’NÚL|:²*Ѳ}YÀÅeQ^ø½3¥äzë~b€OÿVËÿ™”u‚1ÿó ÄN ­¸3Jq2H‘^&AŒJ‚36p ê4[‹NŽÏúÁÂÿõsàöm–Hñzh$™ÿó"ÄP @Ö”ðMp“ÆÁè‚Åû–Š]I|ê@hvGÿV³à’ ÞyPBÚÿó ÄSXÖMqIËA°áUëgRþ¨ßûÑãGÿ¬Ò0#lX"˜ãts"è¼Èfÿó ÄXXÖˆ5q€e%´óèÓo§µtþhâö‡W™D ¬¹û ‚E\Ô¯§þÔÜðNG6°N& ¡C`y:8aœfC‡ÿó"Ä| 0’xÈNL*SÛörjÎ7Ë©†ÊÀõñ2¿ÔBk·( Eïe“¸ÌÑN¤ÿó Äù’X3Jq²s=&öúCR ’=âe?é¨.¶€"fr ‘‘¹dÐ>¢}ÿó Ä‚àÒšXKDpÕÿ3=ûîUªìã?¥À6À È)°º"‹¶ÍNdédwÿó Ä…¸’t(NL3²¿Ð@Íû}ê_ý`¬À¶€ Å%EHZŽ×f>`3 _Ä‚KÐÿxÿó"ĉ 0’l(~Lý»:|Nôz¨>ˆ²€‰s(/5J["RE"E&v«ô`‹×úÿó ÄŒ Ú¸LÎp?‰Î+ÛP>(®€0QÐ –ÑPÅ"¹6) é.nª Ìšê] 9¾¶§ÿó ÄŽ ÚuL”pÊ–úÀÌ,ôD›QŒÊÍÎ HT¬¸Õbu&II~q`JWtô+ÿó Ä Ò¸LÎp4 &fa†QÒ³²ÉpÜ€©±C`¤šJ]h}8"{·ËRÿó"Ä“èÒ}¸4Np°cßÀÉE +¡f ¥®³'Ðp¢õ5oôgoú2§ ÿgX åWÿó Ä— Ö¸4Îp¸Ò»sÃq‡lÀ‚@ +oD湟þ­ÿþ¾±àæzÿý AB»ªÐ*ÿó Ä™ ÖhMqãÐVÕ¬ÓN’Lyæþª(­¬ Ÿÿýß ?ÿÊ0 ‚ÑZ‰Vkÿó Äœ ÖqMqé‘ _€ìPIƒ5&󈿧/ÿð@ r^0pX¯GˆE’¤ÿó"ÄžèÖŠXKJp}D na—‘IèzF§=~»z+£± +ŽKi=©*³;bÿó Ä¢ Ö`fÎq ªâvìbǺ£kLCù„Œ~Ù|¬ÕÛ·Z­êÐi*C–ùÿó Ĥ¨Ö`fNqiÔV%ÔÛ,:P¸^ï"€0rÝA^… Q¹·ìâ[m•†ª{ÿó ĨØÒdÈMq?}*R¦â¬&0•} Î`Cm€†À¦‚—+[‚QƒXÑ‚™m‹ÿó"Ä« @Ö`(eqÐÚüÎζ\c¡F~¶S´Ï«Z´L °ÅuÜþh€zNl–Ì[ÿó Ä®àŽ\fÔL#¦ MšfÐ+\vŽß<×4B/X,:Å ökœÉÄÜáÿó ıøŽ\fšL4à‚&€ê{?È9Öä$]It9“Óÿ,зP]fò²ä¿d4ÿó Ä´˜Ž|ÈNN&\#iŽ¿øS«ô‚¾eÝDÿÏu€² ÿð-<\®sTWbÑÿó"ĸ ¾–X~ZLõIGoœe?Ãu²§{¢þûz€€ð šsas|Û_'"ýž%ÿó ħОxfNMXáÞ<0aÚáåoÏÛõþ°/€"CbaÆ…1kI²Reþ“)Suí¬ÿó ĪøŽˆxLÄL38ÓÁñ¡ŸƒÜIüŒ§ßÀ.|’ÔóŽÀè'PÚt†ûkåš-Rÿó Ä­ Ž…¸N +L +‡÷ÚÓø1¿wÖi_‡HL±vÆ­n(@wð·òhøéa‰çSâš=­­ÿó"į Ö‘¸KDp\ƒáBÿýK¼[°È($A=eÛéà·D$r—ÆÓû!ßÿìôâÿó IJ žyNNLô¯ÅÀàÏj”lø°\3w¡„·J(óì¸æ5Ánó¹Ë:6¸ÿó Ä´è¦dN”LÃú…—ñ²b@¡ £L°@=ùƒ/ermóÞ +'¹Ùv>]™¨°ÿó Ä·øÖŠXLÄpŸg­ßE@ah÷€4Tˆ<î'4* +ÒÊ~Àâbpµ¾ç +Khþßÿó"ĺ Öh}qûýIcóÆÈL @ü@/à© $¼É4ë6üÚŸÿBÿó ĽО|N LÀ±ÀÀ`'"0}ªe˜Ë ƪ: +i¹IºÖµ£Úÿþ8’0ÿó ÄÀ +Ð’‘NPM l(PÃ@Êò™d!Ífƒˆj! –®‹¦Õp ¿ÿ„‡~™@þh®€ÿó Ļؒ¢X6 +Ll-GeqH%¯‚ "„²Z4 +–¯€ŸþÞPÿõµPÃZÿó"ľ Ú™¸4ÊpÉT‚L½Ñ"“" ¤¹ª–’Üäú/SB_ïü`ÿõ€BÀ!Xÿó ÄÁ Ö€PMq",¤´˜¦|™ k¨{Elô¬¾‚„ï”’ ÏÀ¥°õ¿o4ÿó Äð֞XKJq%Ï*ÐpïÑ@QÑ9ÝÕ: +ŒRêY­ÉòžœË +ï~ù/Àîf¢±§ÿó ÄÇ Ú’X5 +piÝã’ÝÏÒDÄXƒC!ž*Í€\4lH…@ƒGÕJiîÝ°ÿó"ÄÉ HÒ‰¸4ŽpØ…îoîWüL÷Ô‰ï¨Û,)4o:m\Œ–‘2à7ðúJÅfKÿó ÄË Ú–X4Êpý"ôû8`ÑßÄ  +°D(×!±‰e­ÜûŠtŒµeó–<Å·áÿó ÄÍÀÖŠX4qvvÚbâ®ùP :< LHÁ–¯ËùSÎË‘”þ9Ã…¯ú‚‡õ=ÿó ÄÑa†XÆ p@˜»ÿ² „€Î@O‹¬gGJ…¶€m¡‚ˆ.Wk/ùÅúÿó IJ°Š¦XNLþ  e3 +†Z»ôÕáê¯>aÁÄ#ïÅÊ®Ç:ù /"OÉÿó"Ķ XÆ‘¸L„p*”âlj¢íž®n+P¨³#/Îu¶ü%.Üògü Vÿó ĸ ŠŒxNNL®8Òƒ-+³üuÙÛnŸVyqÿú§(§~ àŽ€Þ(ÿó ļ †…NJH +!ÓчæšDø .I»¡ÿ™·é;ç‚k]ôäÉV¦P’ø-ÿó ľ ʸL„pH]ÜFOÑ@†²Ôí7¤ŽÄƒ)Ý»å[,æ)·‡2‡‹Etÿó"ÄÀ 8’xðN”L“î° âßÛ£3¥éîéxt¥ÊÃ+ÿû$­GÞÓÕF‚š¬Ó ÿó ÄÃ芅¸6L;¨èb@Ò±öÒ×òôoKú ø×P( +Ž&[hGœ³¶ðŒÿó ÄÆh†’XNH|«³j^®´[Ö‚ÂJš~•»úÀ6P Zçq\òE#á×Y€7xÿó ÄˈƢX3DpÀKi;©(P\ ÿþè[ý`ÙXÙ€0‰gž˜ÒÔvÓŸ@ ¢U +ÿó"ÄÏøöx~žqõ&z¶ô -¯§õÄà +ý@ªÃýÀX¤°šþýGC.À•Ê÷gÿó Ä«èÒ²X4Špª‡ª÷êÌoððÒÃîˆño¨ŠßL«˜ (™:O7o­O +ÿó ĮВPNZLýýöQùx”ÚW\Ùäŧ©*º–'N3Uµð©¿ç;¯çâfuÿó ı Ú¢XLÎp7M¿üáðr Ú +àaNÂÒM‚þ‚Ô rê´?ÕM駢ÿó"ij XÚ™¸5p  7ú€’ #P4ÁcÁaËÀ©nd +C)µlÔ~ð?ïÖ»ÄÁÿó ĵèÖ¢X4Špª@®¦€"`ûJ†§‘‚LðoÀ[ E—oû@º›¿þ…ÿ]` ÿó ĸ°Ò¢X4Êp"5t,¬ƒ(¶,ÐP?ðb CvfÑ6‡¢Å%ÿÞ²Ðk#ÿó ļ ÖtNšq€íË:v%Ž\i׺rÈ| _bîûþŠ‚Óï¯þ¥ÿÔ² C¯Àÿó"ľ PÚ’Xp'Q ¤ IClbê{‡@ +¦å­E¯ú-÷ý:—×Ù€ãÀñðtv‘ÿó ÄÀ Ö’XKNp–¤¤´uš¹dkSZ„“ìˆFÅÀ ++PM â6ñF¢((ÿó ÄÂØÚ…¸Mpº7FÀÇb˜“È$ÿèÁ\?GRWûJßý@ ƒR-"åÿó ÄÅàÖpÈ4ÚqÆòtÈöë[k˜0g4A_·åêeMÀË°Øô&@«O‘lÿó"ÄÈ 8Ú†XdÎp-x ÈRy7ë¼%Õtôo*ïåÀ 32ʱDiLŒ.EÖãT8€¤ÿó ÄË ÖŽXKNp@ ˆÛêåÕÚjý§O¬izQÀêú°*dxº:³ø"²=¿ÿó ÄÍÐÖ…¸LÎpË 9þº«êϨ€8øŇS¸ºÕHâÍKƒp-Ô}Žå§¯W”ÿó ÄÐ Òh(LÚpà1‘þ¾¬÷ú€ 0a¢'²z¨jRNe@ÂgÌRü¤«¥ýzÊ €/–ÿó"ÄÒ Òh(pL‘«È*°þÍPê4„åúÕPcP "«Ôßê‚_G£Xõ(¡ÿó ÄÖ ÒqLpš§ÿ+¥ßÛ`¹´«IÉ̱Щ!HzI2º¿úàé©·£k.Œÿó ÄØðÚdÈMp»lSÐN £Þ âÂüœ|¢jÃ#¬ÍKÈÑöe©g %þ›:&ÿó ÄÛ°Úd(LÚpP_ßÖ x®€5f™ÎvÒ4A2p"4 +háŸÕÐ2@;mÓÿó"Äß ÚdÈdÚp^íòßÊË€À@èH‹œ¦ÓF–%@p;ˆ0Ì“ÊJ¯¦´Öíÿÿó ÄâHž\NšL¬øà;üâ +Yç +×MK@¾¨Xö=žÿíìYüþT¿Zÿó Äç +Ò~XLŽqaî9@¦€ +§&y)mu"¢4¦fEÄj“Ò@Û"wFÿó Äæ xÚ}¸LÎpCTÎWžòÀMYÙ‘’Ì©#r`¾3?­ŒBñqZú¨¨ +uÿó"Äç àÚ~X4Îp_ÛñÓ ÒáÆ ÖÝÆ…&>ÔE‘ŒN°¹M•†Ç.Úßÿÿýh.ÿó Äç +Úm¸Mptÿü©`!ŠHRÅìÑj×b7UrÁÁÀ%¥š±ÎK©pǼçþþ…Tÿó Äå¨Öhð5qŸOø1€*Ë@fÖïïZ5¹¹¡ ˜ò8]óuVË?#ÿó Äé +XÚqMpãC¯ßXcm€"Ýó¡õ +Ü©d0 XX8ƒ­%©¯æð¦ûÖÿó"Äæ +Òi¸5pJ­Ô1_Ú€8ÀŒ@çº %Ì?„`Ð;ˆ)y«×ôa?ýhÏlÿó Äå ÖXMq·ÿH <( ¢$ÕEÖzÛ +jó œ‘Âr½Øýîï÷Ÿ9ÿúšH"Tÿó Äç àÖTÈ~Îqe}G¿Ã íh[æi÷_vQjÆNè„`~ÁX4V²ÒAh»k35¾ÿó Äæ ÖT~Äqk +þ€  çT”ìr»_Ÿi)à£g|Nc™OÃJ™}¨¸2ŸLëÿó"Äæ èÖjXM +pb¯Ù¨Vžh´µš+da0DˆŠH¤ÕÚ´”q@{2jÿó Äæ àÖnXLÊpûÎ?útÝqÙ}ì0Îï*ctÂŒ ¶Ï=ž›.§ë¬è¨ÏÒÕÿó ÄåèÖi¸5pêñ@)Ïð)Wš™Ôã·MYìy§ƒP•H“:ٔ讪Ôßÿó Äè +XÖTÈNšp´ã÷õVq{¦*Í7Bî-D÷2œ¡&X›Ò\2ßÃÏäM©%Ÿ¡AÅ‹ÿó"Äå –P~ÚLÞ›¿ƒômŸƒÿ@qq¶‚l7Äùhç\è„`Šk~gw›v!/t1ÿó Äè +@šTðfZL2wª¨4•’úÀ hs…(Y4G¦hu„34š-š +ŠK׬Ý=Jÿó Äæ ÒXP]pN/¯Oðnú@ ûðÍœ@ˆÔÓZdòùŠ¿"Ú\ûæf?qÿó Äæ `šLÆbL“¨‹-%'0|Rô&ýŠÁ& äh1l(òNÚ‰D¯ÒêýÉ¥£ÿó Äç øÒ]|Úp:]DUº€ŠöË« <•—°ËÀ¢Au ²ˆÆ&Úê,7RÑ…~ëÛ_ÿó"Äæ +è’lÈÆN/õè~zÀd€Åz·Œxþºè +;M!g7/wK‹'¤%Æ>îsÿó Äâ +’lÈ~PLé¬cmÀÁ<gµé”ÜhÒÑY!ÚÍÞdÒx> {ßÞ“Ò°ÿó ÄàÐÒ|x4ÄpYè™bƒ`s ×ðÞÉø§ºÝ˜—ìAòX¸‘Ëé C®dƒêEnù&ÿó ÄãhN}¸2p$ø© ¶Ð ª‰ÍQƒV!€œà¾“ÄÈÚo¨D_è„ç _¡ÿó"Äè +PÚhxM +pÑš›¿H Û`ڱ׫gfš~ äÈW0*C1.n(!6vM3G³?¼ÿó Äç ènm¸NN(kœ™Q_áðåèÿ€6²…úÄn]jÑäÅ ¿ +`ž"&Ì«¢›Þÿó Äæ €žm<ÄLúý?ð¯ú@`ð$Ù“Lc; +œDá˜4 š;ÉsɪµY'ÿø3ÿó"Äç +ŽeNJLŸM`06àå„V+hXp¡‡zDè €;âJ8ŒReN6ÚþÍþÀÿó Äæ +’lPfFL¨³o@€åjÄ퀬¦še!œR&Ôà B"’)6É%Òÿó Ää +€Ž’XNDMÿþ +€ üœkKT8•f&L©‡Cö&)KÊHeÛ¿Þ÷˜{øÅ¿­ÿó Äá ŽtPfŠL×Ð,3ý`P$€|œáÆbÎãM¿ô×&Ç0!…5+;æ<ýsçêÿó"Äã PÒ…¸Mp_öþ¡•~€@á3¤±dh‹†Î-…rÐ6£A¼ŠÅÑVÿÃÿó Äå˜Ò€ðLÄrÿÆ€X++K£ù`~.â°¿eAÉÀô [¡8d¬Çî§þ¿ÿó Äé +˜ÚqMpÿ À0(3Ø5ÆÚa„MѱzN lˆ#"=T–ëwvt·•þjéÿó Äå Ö}¸LÄqà†ý2Qj ,û_X`•0¾øÏ’'x@À†¥q„kEm£e:0_ÿó"Äç +Ú`PfÊpÿàýˆ ô8`¶ +Ä›“‘ž“Ç⡱h[€¹¡E"Lƒ*§£AÎAÿó Äæ àÚmNJpÿEÉྀÊüq`ºz ƒ7ºìÁAG-`À†`LjñßèØGÿó ÄåÀÖ`ÈMDqè3ü b¼Ó^4˹aaº+„€h4Û‚8üñ‡ek,²j"ìMa=Sÿó Äé ØÖX(eqšü¾XáÂÌ(Y8²‚Ú]PH¯pýi Pqi¶]DDYdp$`xÿó"Äè +ÖiMpDªTlú?6fýùµÿ—Á"ÊÚ™Ð)«ù”I"KCú~ÿó Äå Ò`PdÄpú~=[ðŒ÷äïúÀ ¨ %¥JÄ•ì°¢ECÚ~ sŸ'©;ÿÿó Äç + Ö`xep8åþ½Úoÿáàí×S†ñúITc);è:é«Ñ{]uøù_S¥ÿó Äåh’h(fM×y ¿[ÿ‡ ŒØV3ÆĔà ZËã„¥b(}oS_é×í«ÿó"Äê0ÊlP~„ppvþH 湓¤O)ôS!†á1eÔ‡ ãL’gjªÙ‹¯ýþàÆÿó ÄÙÀʈxL„p¯ÿÁ»¤lBÛùªS1 }£3R`B05à…d¾Z4t?çòk±˜ÿó ÄÝЊpP~JL£Ií‹€ d¬Qô6bÞz‹Ë^!AgˆÓ:v™ÛEŒKü Î~‹ÿó Äà  +txMq¾ Ë`*’²öF • i2Ñ +åà +²]—þåG_ü­Aÿó"Äâ PŽdPfDL¾il?HÈ•GŠ²~2Š±¸µœéuˆÑËæéÑÜÇ[×ÿ÷ÿN‘üÿó Ää°ÆpxMp¾ÿü)À»`Y¤o ps‹x‡¬YG6คŸzPó_üŠ +ÿó Äè +1 +lxMp!táçÿì#¤psN#˜Bu$}7ªUZ! Ok7]"²¦t‚Îúåÿó Äæ ÈÖy¸M +pC$ß#æÀ h‚†^ð3q+¸Oòm˜-èAÐ-ÿvv«-Œ@§ÿó"Äå ŠdÈfŽLUO"¿×( hyy(V_lxGI,³RØÙÏ G=’Óbs§÷„~]ÿó Äê +hÎm¸LÄpíHçòÀ/.\z@*ôôý%¼à&gÉèÖ·ç3SªŒ¼Øÿó Äç +\P~ÄqÝý`¨]Ëðà¾Uƒ+´ÎU>ÜøŽ«T¦Ö÷Îóÿ™Cztýÿó Äå °’žX{MhÝú€²M GÄ’ƒ¯MÑÄà7,Åèaˆ['Ƕ»Îeýýéÿó"Äå ŽxfLÀµëÿôÐù%£ð/^?†fõ¹l”8P*–Læ-W_Ý÷ûùáœÿó Äæ ¸’„xNNL7úÓÊ€ª€¢â¤Ï5ê5FI˜ Ç‚$ø™"dkg·d`/Ïÿó Äæ Ø’|xfŽL›øÆÖ0c “–‘”@R”/ @Å +€ +\btÉ4Ù¿HÀ3oÿó ÄåØ’lfŽLþÑŠí¡E”8 +837‘}\1˜“E­¬u‡òËù¼`zÖÿó"Äè +ÚpPfÎr„Vá'ýU]íúÝ)ÌÑ>ŠV‘*ƒ"$¦©<zsëš¡áâ#–ÿó Äç +Öd(f”q@¼Ûׄ‡™€‚&ŸÈ€¤ÀÀ´ dá ”&èif­Þ%9¥I†ÿó Äæ ÀÖhPfÎq& +áÜ­èV¢]Ä@,AáõÂ˃ª‰jÏKPyGð‡25w#ÿó Äæ xÖu¸M +pKnÁŽ'ü„÷õ€0¢‘J`¢çBìNnr!©$I2mýDÿó Äç hÒhPMNqÑ +þÿ¡Æ_âPÀ5ØEèÔkù¹€„à¸@„™TÒèÕùÖþÿó"Äè +ˆÖhxNJpª é7|å €- hˆ…aS擘O]˜$$ðhÌô¶Z)åM~.tÿó Äå Žl~’LäØÛ(šl.9,žTJ‡ˆ"D¢ý{~J2};©Œÿó ÄÛІ‘¸6 +H "ÃÀÐzc$žŽúš½Yÿ”‚CŽ¤¬Ìã3OײN¶¾°ušöÿó ÄÞ ’xPNŠL¤Äþ°'ÆÉÄŽ74õ¸Ñ7.¼ÃÊ͉‚º–Ë^鿶Àÿó"Äà Ê€xLÄpXŽBÿ*°» þOѬ¬G€PŸ°\ADPD@Á’úþå~Ôÿó Äã Æ5p©ÅßõÐ_,@Bn"EFÉnÙ‡Û\©˜ÑçÚ¯û.—S &…[Ðÿó ÄåÐVyJr$r§{ÀÀÔ€ú "¤4@Á3¨¨¢˜Z‘!=Öÿ; òÕÿó Äè +Æ}¸MpMÿÔ +/“Ö‰XL Leð%Hzý…g3¡3 &fÅù­JæÜ6¯òB`ÿó"Äæ  ŠdPfÚL½þ·ÐHÏé4œÄL¨“ Àù(ÃI']Ñë¥?ìšÿó Äç àŠ`(f–LµGúq" ŒšFp‰£íˆ>²8 ø ¾1hº’5ÿ: ïÿêÙÿó Äæ ˆÊžXcDp`€Ž£BµŠ ’'jr8²|€‚àbÚúè+ºmU‡×õÿó Äæ ØŽ‰NJLêm¿Þ `- tš%ÝzËy¶„ÔŽ Xò*^GwüÁo¦©ÿó"Äå 8Ò¸5 +pÍ:Qür+·ðÊÂÉtO¢°Ò`˜€:¨m"´ÿæñ?åjѨ+ÿó Äè ÀŽp(fÖLðãÆ€?À‰Á¶ ê.qÁ3 !)µsš'ö‘ý£½ÑJ@ÿó Äè +a}¸M +qc«\÷‚L#‡Šì!&ˆYÿHQM£µ$-è×íºÉ +y…+? Lÿó Äå`Öx¨Msšƒ$á²líaìu}@BÅ„ôÄäîܓ˧°h©Xw”—üÿó"Äê +àÚq¸Mp…ÏØJžxUC‘þ  @òOPN¸c‹— tô(8a%ÊÈ«ÿó Äæ á +uMpþP§ýø'èÁ•a4 VsqîÕp[>|0Í°à|L‡­{É€ÿó Äå Öy¸4Dp©ÿÉ€ ¶Ø”I[·2#v3H*0 +'1¢«}fj!ÿæiÿó Äç èª}ÆLÛÿ†}ß°,aÆœB­QeëÑšÚƒXéà Å—9Ð6 uüÁÿó"ÄÚ †x~ZHïÉ«õ€ƒ',…®yÊßÙ¹§– +ƒ>gÇZü¶Y³Ì»z˜7öÿó ÄÝ ŠxPfŽL?ñ`€p`¸— !ZMcÚ };´ 6|¡p°Ã‰ —+McfºÁzÿó ÄßhÊ|PMsfA?åÀ²€Ú:—-Lü[ÇpJ†=w¸ht#‚&R5÷ïÿó Ää †pPNTH:iÌù_Ÿÿø‚BàÁ bÿË–T'ר¬üˆ•4ÿó"Äæ +! +}Mq…Z•LÈ{…0(A9Ÿ‹ZÙ¿MÇ_n +ýàðЀ×ì) ¢•ÿó Äå ŠlPfŠL­w›¸¶Fh}-X´ï[§ÊÂÆW +»ù@¥^ ¤1Ìoq®ÿó Äç  ŠpøNŽLìfTÆ@-D¢Ô /ÿÛú倀ˆ}cl*4?”å5)Màÿó Äç +ŠhðN–L*s¸QÎ~cVN¿òc@Ü÷Ü@0•ƒÄ¢Š¾Z½^ayš/Ô»ò+ÿó"ÄåðÚŽX~pÙÖÿŒ`Hxïä¨@Ó ææAf nÏDÈ€ƒfNe¢xÕÑÿ˜AÛÿó ÄÑ  Ž¸NMÓ¿Lc~H8"Dæž^M5Ä`’,D è;ÿ›š¿ÿÿó ÄÑ ’•¸6LÞQÀy‘, æfäRV€^.©R¿£}\Ã&4ÿó ÄÓ ÚžXLÊpòñÊ*û0#þ8“j¡¹’hxxdŸÈ²å˜…Ü +{’•j…ÿó"ÄÕpŽ€ÈN”LJççüÂa¿$8»+…±Ôy Š€Þäƒb`i §%j—Xé2ÿó ÄÛÐŽ€(NTLˆoF†Ë¯ÌdþÚ÷˜Ô8Á÷€%#ÄÀ‰>1#ê`Ý®‡Dÿó ÄâðÖ¸M +p¹³;3~aòÿWÃPx4íAÀ˜©*ëã÷S˜„(4®Zÿó ÄåÐÖMqC[ ‡ÏÂÿüõ€Kg/‹£&·­Ø´¢ q6I’E&ÿó"Äè +xÖ’X5pÿ?þU¬þ°¸ÀÒàº0@Û—tßY˜~†ôx’?MNÍòÄíÿó Äæ + Ú¢X{Êpÿž Gû!Ѐ<ÅÈ a0Üjq·ž`)Ì ë%ù6Åúõå ÿó ÄØøÚ¢XLÄpþ¨¸”@ë¡Æ†œL¤ˆ(˜^D²w­^¢«“íEÿó ÄÛèÚ•¸LŠpt@Uþ· üeÛÔB ÌF_7 cè] +$Ìܾšoû“Jÿó"ÄÞ HÚ‘¸ep¯ÿèàÔOz3 “ƒàL¹þ–<Ö¨ÑÇF¾®Ýœȯs¹ÿó Äà Ê|Pepd›°êÀ„€c\PD‰¨g;®ãÙ)lˆßŠË±ò»êÚ<ÿó Äâ Α¸\p÷äD¿å ü +B@–vÝ6÷bfBg*iÜî5k  +5€Éÿó Ää¨ÊŠXM +p{ +ÿÔ 3ÀhŒ¡`4Ž J˜E(~@ +ÐÑdò*Ô¥yØtÊoÿó"Äè +pÊ}¸4Êpý^Q¿ýùPy*ÖÁUH'¬Õ±Vµ<ÒË5®f³µ}9Õº))ªyÅ„…5ÿó Äæ ØƉMqýªœÐû€œñ†è¸ÆÀ,7‹ˆ¤’›ùØ.ùöiÉRÑâÿó Äå +Pª‘NLÿ_Õ¦qÎ',(XÐåUTÀP0( HÙêþ„ïù¨nÿó Äâ ’žXNJLÔ/úä@¨³…×W²…æ`ŽI›"ÄEÓ‹vþü&úù}ÿó Ääø’„PfPLÚÓJÐGý  l­–FËËÈêR2–ÜÔ@e  " +˜yxÿó"Äç +aMTqpèÑ• ¢†@-‰9Q-ì¹yÄa©dQÒ@Æ^ÚäùËcÒ•~˜‰ÎÖÿó ÄåÀ’tfšL' ÌÙËgq*X­OžÓ¸Ãâ‡Uãì!Ù<‡ˆíBnWû¸eʱ¨9ÿó Äé +‰¸5q9|¹€‚4ÆÒ’p¬$1{};ÿù@H €’¦âLÎ烙` C!äµoô… ºý?Žÿó Äå1Ne˜Ï0qÿaó@U€P€¦":3¬¸±6=D5º}¿›7çoÁ/ÿÿó Ä› ±™¸|Îqðoú¨Ààp +ѦËÉù´z°ö€jX\´JÏì²5_‚ýOÿó Ä“ ! +™¸5qùp˜À` HâBN™õë' £àiÿÇc¯ÓFb‘–ý@ÿó"Ä• Q‘LÎqy‚†}„0läžûš-!ä Y X0Enïþ[oí#‘(7ÿñ ÿÀÿó Ä—  +šX4ÄpNÍé3bi +'£©L¹€›$ò€<™Ôb¥Sú'ÆG¯ Ôv?þÿó Ä™ Ê•¸Mp«ÖkÖ‘8ßÖF…Íl£Uø¼ÍX +¥Z›Ý‡åÝ÷_ÿýš„âÖÿÊÿó Ä› Ê•¸3Jp²ÝõTŠaaÁ™ànÖÎÿýe’bϾQinUcisЊ®%ûÿó"Ä Y +–XE +q$€’À!¾ $p’Ã×ßRc PEÃÉÞëýPþý\Žÿó ÄŸ èʺX{Rp#E€lãQÒ•¶å±4 Wº)TµQúàvÿêAV!ûd@€ÿó Ä–øʘNTp™À(àè ¼GÖÓ0ð‚N_6=oúá+þ¿M?þR·tÖ Lÿó Ä™ Ž”p6šL Q…‰S$ì²èÈ‚5rô€ßÈßòÎ@ÿð–Õ«k…ÿó"Ä› 0Φx4JpÀÙ8\-†DÍC,]#×~2É“†÷wÄä»úb[Ýô¾q,›#>Šÿó Äž ΦXLÊp…I›7€Ã«ÇZË,¹=ýÖYi +P4ŸÓºŽÿòÿ–ú`Aÿó Ä  +žX4NpªjóN„¶þ1©‹#Žÿ_:ü£‰~uðOÿÔWå@!œNPÿó Ä¢¨’¦XÊLŒƒ»€ " áv +óÚ¢"¾¸¯ÿ\Iþ³Ÿ,„#¤ê@ÿó"Ħ +’©KÌL–ÛÖx*¦‰¸hFó"Ò¿à¡ÅNQÿú–ý`¸@!f¬˜H©ÿó Ä¥ +Áœ~pÏŠ#¼5:ÌÆMõžW£^ŽËÔÜê +}@Œ5 "1?äÂÿó Ä¡ ÆxIÄp × +5Ö+@³'Óù*ßTœÁþЧúý`´0#Z"ÎSë¹H„yÿó Ä£øÖ™ 3Jp™ÁÒù‰õûß„Çý£óÿP´b»¬ãP?8wlŠ®J'Éÿó"Ħ YšHLp5?ý]e—ƒ28{ƒŸK>°) ÜÚåͼ©ÆDC@m-I’‘ÿó Ĩ Öªx3DpááëËÒúí_Vµæ&¬ìv& æ•gšcåÜþ] Í·˜––ÿó Ī Öš84 +pˆL|.pY‘ÊÀR/ —_Ô܈—é÷Õ¿ÑàßëQÀÇ0Z&ŠbSÿó Ĭ¨ÖžP4Jp¨Âɤ!ôBðË»zÛ¤{^ ¿Õ¿ÓQ?™h‚c-¶F¼ØÇ ´ÿó"Ä° ž¦XÄL(@´ +?ÿ(-``ÌÅ~ÿó Ä´ ž•˜6LLèïBà/a ”Eˆó®At¹É÷öþ£ÿø ý1À ‘ÀÖŒ6ÿó"Ķ @ÞÆX„pRë}È¢ôpŒÂ{·­2Kå/µ¿üÿþƒ¿HÀHÒ€ÇF3ÿó Ĺ‘¶X{Úp¸xŸ&·ì‚C©êýè_LGÿê àíÀ0™0SÈdêÿó Ä¡ !µ¸3NqþqÂYVw»zÛhp?`t‘óÿ[¾¶?PÌ@СÅP|ÛŽ¢¬ÿó Ä£Ù ø4Äp!DçDâ6ÝC÷}j?·øßÌt€´#gÀ‡Â† k>Åð’æéÐÿó"Ħ )ªXLDp^ε¦cû?E'óQ‚Pk¬Ú€Zm€Ôç,#£ +Á1YplÅ=ÿó Ä© ”ð4ÊqÇ|èÄöÿùÎÿúÀýç1+¥­*uG +hAL.HȳŅkK¢o¬Yÿó Ä«èv¢X6 +H–¹­t¡;zÔiþñÀ÷–à + À6ˆ˜iÏœ*–bi5„Xþl;ÿó Ä® æžXKDpÂÛè°ûøŸüü€ý¡xb€ÄˆŽE’¤¬Œ:ËǪÎ +ùeJÿ³ÿó"Ä°ðæ¦X,pÿ§þ‚ÿ®ƒúÄ!¹F[ŒS­Ø»G‡P(!«/“©ÎÈzVU6Âÿó Ä´ÙºXJ„q~ÝGÝr?0ÁÜ‘jù‹dVÇšXXš=ƒ0:ÿü·úñüké`mÿó Ä· +@êœÃÎpÿ$€>ÌR£› sMBàÃJ .sÄ/Ù~)¿óÙ½F‚’ô€ÿó ĵèî­¸J„pg¼*ߜȵÿó Ľ¸î°xZDp%¡†>¨4]§Ë9x’Ï}qÐe«Œ?¿ÅÝoOÌ€pðù)8{ÿó ÄÁÈî­˜IÄpæ8 ÂBT!ùø¯FáXäqàG7ñ@BÜø~d +°¨(ÿó ÄÄ ¾œ{ÎL…ÅÄà°FÌͶܓáþúâQôz²Z ’r D®ày‰8t‹ÑÁ>ì< +ÿó"ÄÆ 0¾œX{LÞ9t—íÖçfš“Éþ=nýmrv€€ å9ñ²—¸=wJâñ v5ÿó ÄÉ Þ¤XzÄpA¤úöî¹¹ŒËï÷Än«¨ý%'@ÀP¿2†ä5øZ¹ "ô ¿¿ÿó ÄË ¾˜{ÎLÚ®ðBy~Ž…e-óî%X +€dzâ±Óxw¸hÓzc£± ¦×Þÿó ÄÍ ’°xJFL¨ì¨ľ¸øÆ.Žm@ `àÎxÆzß‚|@0's¡öŒêÿó"ÄÏØú°øIÄp×éRcÎ幜Úé7"˜ñ1¢¥è.o£§Ë$9?J_ŸíȀɜ«ÿó ÄÓàö¨XZÄpW‰‰F@cïL§5,/<1T`âÚ¿ÖaӨ퀆ñiº˜§E8ÿó ÄÖ Ö¨xbÄq^ qTï‡KJ8¨4Kpì]ˆ‚kv¥ +þ±x˜ã0*à3'³ÿó ÄØ赸I„Lˆëf“Èžàož«d8 +Q‚‚¡8Ðø[Íötñ¶‚ü/ãî,Úÿó"ÄÛ ² 8{ÊLrðlöÊ…—Lm\î=cØjHzeÎ?Vægðíö¾¦Øÿó ÄÞ Â¨xzJLà† ‘Úø5…ˆ–ˆ+Øýö‡ ‰¡zq@Iý·©©ÇoíUm˜ÿó Äá°¶ ({ÄNFð +ó9TÐÒ¾HU68Dš QðOÖî«N:ά±ª¿oÿó Äå ª°Xb +Lör„¶Y ð7”’äö +…TQ;¸†,ê +ÃÚûö”Í8 +sþ· ÿó"Äé +¨¦”ÃÊLc÷Ê€À@¯-EtCT{ ‚Fê d}X †~Bˆ~ñV°Çÿó Äæ `¦¤X{ +Lý }`À @ÖÛ ´‰Àò£h^ÅÀxÒ)Ãå58Q´Õ¡>ÿó ÄåÈ’ {ÎN˜&ÇC9p€«@ý†9Lu€È y*\”hèŽÞ˜úd0EGã÷ÒKÿó Äè +­¸zDLôóy@À£`'Ûd3˜…14†Ü=‹j¯¯)~ÞtÁ8 øW÷7ÿó Äæ x®©x{ÄLQHüIÙ—v½5.‹Š€›†H[¡s“ˆaP®¥…\ÝŸ AdTÜ)•ºÿó"Äç +@Ž¨øÃÊL Ÿ£ôÀÛ`5Ú¬›] +3$M-fpˆha„ByÅG3² €h\‡Èà:ÈxD.MÞ&­ß0dw~ý¥´Iÿó"Äç +@¾©¸{ÄL{»:À ;øìr«¬Q2Šü-+Ô/*<ÍñréðŸ•÷—7ðwÿó Äæ ˆŽ¤{ÊLüíôƒp°¾XøÕzÌdC. aP8 ( ¨ËƤ + +¶¡¿Þ.÷Ô·ÿó Äæ Ö¹¸yRp“÷gÈ€ )°°ÀاœÃqå¼)ðŽuà?§—ãöéøŸ«¨¦ÿó Äà Ö¶zÄpÔn‡÷jPà2eS Ò3ÀÁoô-µ¬-×Ų!*¨(o‰¹LBÿó"Äâ XÒ­{Nq!Ø d`^w)FâΙ¢dldl£Ä‹­Ò[¬ûPškÎ=.j¿ÿÿó Ä䶭XzÎLÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿà€sè‚-<…—Hxÿó Äè +!B¶8z„q­b¦K+;›”*öñZüùñí£t0ÊòÀ +È…¹†‹Ê¡ÿi—h%ÿó Äæ ˆÚ¤°{Nrè㊠'+Âüê™èÝL"¯ À Ä“¨Á¹Ð\¼­ä(C›Lÿó"Äæ èÖ²9O ÿÏð(65ÛðûŠ—ò +ôÀKÀð`eYfçEg€‹(i¤%ÿó Äæ\‚¤˜hw?ðý éôj7ðcz€À.ø†ËEL·ÑR(ƒ + +¨rÏ@Ú:/ÿó Ä« îÂ9ÌÄ¿Ç­‚ª|³½nê‚Ð弆<3ßA™2ì^¢” +W–¸¦Roá?êÿó Ä­øî±XyÎp˜¬º? ê·ñ ‚@„ÚýµCelZ×B=>^`-Ͻ…CQæ9>4åÿó"Ä° ¾±˜c +L¨Nî§7¬€ Â,›ˆRÑX¶(j­ LA€Èx«–t°ˆ•iò’‚Óÿó ij "µxyÄpë¬ÚëXø9dÔªn‰pIÁ_!—›ú ãÜØ€#?o²žÉbdýÿó ĵÀ²º8yJLw”ÙqFåÍ%y<±íã]ûå¼£ÿõ%ùP´¢ JƒËäÿó Ĺ ¬¸zŠqåÃ!@¢]9wF¼e7Ê> mZ†ùOÖså€ †±r a7@tÿó"Ä»ð¤°{N‡‘Y³Ÿº¼­4Qµçá†íéÿñ¿*à$hó@:æ’8tq#Àñ¢òÿó Ä¿©B©PzsE2j¯—Ÿ>ÖêήÙ/‚oéÐOå€À˜ÚÀ9ÒÒìÜ·™0d&–µÿó ħ ¡°({NpÓÈ Þ—øÖç ëÔ(wÔ{묄 Tñ(¡µñäiDØ! FÄ‚êÊÿó ħÐÖ°@KNp{Q¯¿ïÔ(¹5¨DÝ g Xö"&ìx>‡x1z4*y“tÿÿó Ī¹´PKDp”vÚ¦ðCdÕžúÀç„¡I“µ¦™ +!‚xR¡QZ:©VzÕQ¯ÿó"Ä® QÁ¸J„pû{ŠYïú€ð/¹\\¼ñyMÓõ0;Ý.ozj¹àÚÄÏN àÿó Ä°ÀÖÁ¸JŠpsvD¾å€ò%ò-I"@|?¹ÄIVðÄ1ÂYùwO‰× ù^<Úëwÿó Ä´ðÖ¬8cJpe 0˜=ÀRgÒVTàê,X”<¡-—Õù~žÙ¥×«õú€ÿó Ä· Ö¨X{Dp€èk`Èò·¢ËQÚ fÆ™#ýã®Ã¬Ž~­Ç£Eu>åÀÿó"Ĺ Öœ|Jrð1+iÑ™XÔ彉àê#¤mAj´©ù“¯Q=¹:>¢€€0ÿó ļ ž¬ðcÄLYÀQ"ί’­æžÁIgÖìºùΤ{ÿ—uéïÓÄéé€ }ð¦ÿó ľ˜²¤~L†ÃþW€B]\ (ÄúÐ¥C©µòÿ淋¨ú +É€€=@\é³ÿó Ä öÂXJ„p-Ûƒ3æ*q@ëÊ.úÛYo7õM‘¨rhnE€¼³E"!,@ÿó"ÄÄ P¶©X{ÄL¥îP…¡®'ŸñZî 塉£Þçv® ¤]@èis.’·†ÿó ÄÆ  +¨ð{Dq¯(2^Ôꦹ5ûß×ÂëÀòð9;$0û´^ÂHä¬9&¬ÿó ÄÈ ºX{DpvÝžf£AO¨É.AÁ£¦¢Y €  Þœe2uã"èk2·¸#Vÿó ÄË ¶8cDp7L]´q4xvn'+§î¥ÕÀÎp5+H2zx +¾P¼\Rÿó"ÄÍ +²8cDqí3QÔª±7ߺ"}€€šIáðæØôÅ/Æ(‚£ñ[S0‡ÿó ÄÐ Ž¨0{ÌLWªBNŠ¿s0  ÏÀ~ÊáH«pUãÙ¨T= +.ÍvÎ"ûJú;ÿó ÄÒ +ÆXaÄpò쑾ÛXÀ¶€- +Ά*6•ù÷˜Û¥˜bc=Hj¼Þ)Ðÿó Ä× žÁ¸ZÄLD}»å€À¶Ð;n,…Ã|Þ§k[“8h2©óÈ5œ‚SM ÿó"ÄÙ ¢±{ÄL4… +§ÔF?á€À ȨÉ*©«ÆEÃa¡V^ÜÌç fÞ6,ÿó ÄÜ ‚¹¸KÄHÚx&•{ÿЀ+Øj›)H´¸Ý™1€a'GÍù^©) ý êH'åÿó ÄÞø†­{ÊHj3õ€ ÀjjìÄ–×h +¢Ÿ‰H¢4¸–8ë¯Ñ{ýmð—/†ý£ÿó ÄáèʾXaÄpù:Þ¾°ØÀ +lû•Òf#pÚ á爡ë¿åÞ67—è±ÿó"Ää ²µ¸{ÄL¾"Þ¿"À »¶Ó!'¹€À­(êIŠËDrê«œIêyȇ+ðÏAñÿó Äç a +¹¸yÊp½[þ €%àO˜í‡Jã2D~¹†aª +£n(åg÷ÐOÕèÿó Äา½˜{ +Láή“@À"À&ó[Þ'åxJ;CÐdñ<'õ»P/VEÿó ÄäÈÖÂ8z„pâïÕ¹þ +æÀÌ»…ק—#a¼IA.—šŽ‰tzD…b±Ù[ï ×þ€ßù›ÿó Äæ  Ö­X{Jp××ÿŽ@ÀøÝ ½ +eq]F„&& ð5â¶Õßxªêý~¯ÿó Äæ ˜Ú±øzŠpÈýþ0p â𕚥bÌ ŠTŒñYI— ‹÷ø[àÿó"Äæ +Á:ÆXzqÊwÎl©`  ní%–_"#¤1¿ ó»‰‚ß>‡6ÒGðjáÿó Äã ⽘yÄp›Ðz¾D€8îù¶…5¹Õ3¾"™Ê¢gÑÖ©LB­ÿ¾¾5ãW!»þÿó Äå :¾yÊq§p}’àÀB†`?:ë\wd±h——УÀ>„:V/–²<×&ÕIÿó Äè +!>©XÊŠq's…Bx"ªH ]ª| Eš¿ñŸ!(¿[®¹\::À `ÆoCÿó"Äæ é:±XÁÊq³Ùû½Xΰ|A'45æ¯üËámÅ[ñºã¿,–{jŠGÚA“ÿó Äæ ˜¶²8| +L17š†ð½oû¨÷wñûp«Ô}95úõ€‚›‚íµ Ÿ… ¦]fÅiÿó Äæ °ú­øÊ„pKƒ;9?ÿ×lö„Ÿ°ùîL§©ÿP€ +Ãwðd´N,(ÌÒ–ÿó Äæ ˜â¬ÈÃÄpU¦rÒkåVóöáíýG-÷ý` *ݬ±0æãôÉ(;YÅ`‹ÿó"Äæ9F©¸Äq³èùÌÞoÁ?ÓQׯ?õ€úÕÂcKSŠ03A. #¢@Ç™ÿó ÄÍù¹ÃJp6fßJÜ7›æ¨ÿ_ë R_@‘³é*¨­Ô¸BÑUËzù×zó³ÿó ÄÐÈž¨ ~Ntê¾¹è•3ò€Ð M¶Ð+%ðýáq RGž4j«×Ëþ\©¾ÄFÿó ÄÓ覨¨~L7@ +}pÇQÃ‰é‚ + 7ˆ½i=[1¼ bj3Nnl‘£¼Áô÷èÿó"ÄÖ XÖ©ÃDp›²™?ÓPÏôðÐ @ÈÈàš5^HrYlJ‘¡ ãåë®®qÍþïÂíÿó ÄØÈÖÂXyÄpÿN7äÁÅ€Àƨ€5"b$Öì‡ò­ˆSº‘Mn­I!þK<óÿó ÄÛÀÖ­p{DpMôÉ‚à|©ÖPh\´z"¨ôB2š6Zš%Y‚ßÿÁ7ÿÿó Äß ÖºX{Dp¨Ã>ÀDOá Ù$'Û22AD¨¨%Ð3Mo:Ä’½r2¥ôÿó"Äá +@ÞÁ¸zÄpûh%žª@‚ yR.L°m’¦‚pƒ@Ñ¡ºeٕι+úukÕè?ÿó Äà !¸ð{Jqê*€S‡1jO{tå¤ôÄ„Œ‡‚ub€ÈÔŠ}ÈUï¯R¢ÿÕÿó Äâ â°x|Dpñ_ÿÔC#àLƒ…´ÊÜÀþÄái|D®p§IÑê6%îGËÿŽ³žÿó Ää ⽸{Dp}b° +àO‘íDië¾BU!¶3´()˜Úe:¹‚dß¼v£!ÅÑÿó Äæ ±¨X|„qöÿ¿ ›GrUTt¥Ëà9)Ø{3Nr€å?™zyHE ´óüÿó"Äæ +¨xcDpY"'ßý€Ho¼1¦¢.·\ÕÇêXv‰é׸ç÷Õ‹P×Æ}]Éÿó Äåøæ¬X{Dp©ÕçîcVyéôðdè| +ÃÐÀ/¥ê÷êÇU4Þ‡¿õÓêßÿó Äè +9œÐÄÄp‚p @×x=_³ñgòÐw$„ô Ôî)5”†¥ZË8æé +§õÄÿó Äæ `Ö¤XcDp‡ÿü{€ àkP ž)ÏM’ÂÚˆ˜€œ\êÈ3?R&óˆì?<)ÿó"Äç +œX|„p­ÿÇý`~°€³ƒÀ Ù±ÜrC@(`|Æ‚·D2„öʶÿß×ÿó Äæ ˜ª˜~LÛ@PXL9!Fóªñž~… +a)‘õ6›#YIðLìZÿÿó Äæ தø{ÊLz¿ý8ÀX ôDs€ïagŠ$Ï3ƒ wO¤çR_™­æ&ÔšÐyÿó Ä塬XZ„qÞ +ÞÕC¸ +sÒ´Ídb'mÌhJŒÀj?¾½ +i˜&ó¿ýuÿó"Äé +I x{JqÒõÀUú•AÍ\„±y²Áed9­ô¢ë[ÖôÐnù¦×ÿó Äç + æ˜XÄp–ßç¯.à -o +uKaÂmè32ć‘T6y¶ÿŸ…Þ¬_ÀÝ¿öÿó Äåá­yÄq‚ò`V–Ôoj@çêòß\zÈl 4Š +úϯŸ•±)ŽîáN”;ÿó Äè +œx{Dqõ9’°À“®‰Z/f²R8˜¬è¿ˆq<4 0Þfo8ËR~û¿ï«ÿó"Äæ +Þ˜8{DpÆFŒ€öüw[pƒÃ°>Œð Q”‡W6˜q†0îÐÿjÿó Äæ Pæ¨8zÄpž¼Uê2…˜î—)ær÷ULØíìNdÀÝwe+[R +ÀÛÏÿÿó Äç + ÃNqøôé¨>Mü +Q%"g3!‚„ßÅ?Œÿó Äæ ¸æ 8ÃDp S÷Ú¦u€2Ð?k”è#Q¬È{]©À°°5»Ä½Ÿ„þ¬…þ0uõÿó"Äæ é¨8zpS¿¨€pîLÊ™l5!ˆ‚Gr«°?ƒ¤u˜ŠÔò"F‹¿èÈü£ÿó Äæ °Ö¬x{Ðp“³ÝÃÀˆ?*’%kav/!ÝÛ+ÂhH"D®–§Ç“Z~jzÿó ÄÞ Ú±˜zŠp(×Õþ°Ï^Øƈ6\Ú4Ž¡øE£ÓC½#ÆJvà_Þ÷Œÿó Äà Ú¨ØyÄpè~ó À Ž@°¸èÖKldÒìoRo¬2@·E˜ÒÓ]k¯Ôÿó"Äã HÖ¬¸zŠp–ý¸þ€Ìu5Q·`V(…Vž0x†¤P²Ã¡ö¼£}øî?õÿó Äå°Ö¬ØyJpú·ðýÀ €³aC—n„>UC +Ôk[¶öƒ"»¯L²ß¿ÙÁÿó Äé +XÒ¡XÃNp€y>°>tÂâ*N×È-Q½8Ry@Ì%O/»f&é¯ã‰þ­ÿó Äæ  ÖœÃNrüA=á° fêyy&6߀~/Q©šðFFŠíŸUÛ›ìÈ/ÿó"Äæ +Ú¤{JpúäùP VrùN#A¦¦Ï±†x¬p7  •R¤ÕE_ýET[ÿó Äå `Úµ˜{Äpú†m¿ú€€Xš(ËÕ&ÝCΔ5¦h˜ä2VOSUu|+éŽýPuÿó Äæ Ù¤¸ÄDp9 +/ °Ý/f"ì¯S­—ÇŽ|‚åQÜ.£¯VWûØçr0ÿó Äå ¶¥~DLèñ»°¡¿Ù¦ò9Å€ Àú%°Ìq»­ŽŸø°[Ñ©“ÿó"Äç +a"œ¸|DpQÖÞ¢l¤úÑþ7Õƒ Ä@ÁÊ(â60;$í Ã: +£F¶H;hÿó Äå Ú²Xd„pgûãõ'ÿøW€¤€:†E\Çu´ Ž‡@”8S?ë}êÕÿó Äç +Öœx|Špû)SÁú€ Áào¤x#F§ŠÏUÅæ„H FRú”»Vä«ù¶êÿó ÄåàÚ©¸dJpÿË;退  ’$:<¨?™j"ª +h@³h–h´áÿ—ÛÖÿó"Äè ˆÊ(~r‡µ7ÿøÐȀ€*zÅÍép‘…ò`DYÅÄÓÚ§ù“/ÍŠy±ÿó ÄÝ Ωd„pÿÃ`€(œÓM@ÛÊ5Hôñ™D? ;„/"»¤Ï«ìJÁ2v!DeUÿó Äß ­¸4Dqÿ¯†ý € ´µ:8{Hwªa˜Ã0€ÜÈÐbÏ©w˜íùH©©VÔrÿó Äâ Ê¡¸cDpTÂŽ®,€()` +›i† ÌæÓòšVêeîý*Ý3m®ßÿó"Ää @ʘXepvInúå€ÀXÎWPø¦VØ‘òò#X¦=-›ª­z­J¿ßlµÿó Äç +! +•¸LJq[ÿÑò  Í€/5ÄÄzpš”Åù6Æq-£j×N‚(® +·¶ÿó ÄåØΡ¸L„pÞ…®ú¥ÐÀòðªôÃm2<°Ë=ö:ù­bÆý®WúÀM&ÝSYÿó Äè +Y +•LÄpûáÀÁ@Ê &DE,X×$^5!€Ü 7º/I·úvÞÙúÑèÿó"Äå +8–È~Lÿþ;XÀ@ÆpôÈC5õKºÊæ{t‹T`Lü_º6r?Þ zóJœ} ÿó Ää ’NL¿å§òÀú5CôÀ@„ƒà—y0¸á‡öÔeÖcrü¹ßÃÕ ÿó Äæ ™¸LÎqîÉ÷é_ȹòÐ@ +@ц åÒÐ"$Td`Í1B¶·èÿó Äæ ÐÊ™¸LÎpŒ¡—å/Ô,Ïý` (@ +XJ²2EžUgÀÅDx~€zXÁ4-ŸÿÔ8Åÿó ÄåàŽ¸N +L;}‚džÀ.¼³Æb‰qÛ=¹:x ›% Sc-=ué‰D™ÿÿÿó"Äè é +•¸LÎp‚ÿʨÁ€@óš^sŠSÂeò@ÕÛWÔ3Æoþˆÿó Äè +X²¸fLÿú‹°`( R‘퇷g4ÖVyR(šj[.ÿ±Ã>çúÿó Äå ʈfPpŒ ÿþ"€ 8”c&¡Z¶.‚dÎÃØ5d“+ûIâ;Q˜ÿó Äß Ê¡LÊpÊ_åôè@€€ +ÍTÇJn˜¸Í@7`hÄÂO•P]tþ¡ôÍÿÿó"Äá ΙLÊpì_òÀ¸˜]í±Jo¯ a ˆYOÓE!¶6v’èi)•Êåù~yá¿ÿó Ää +ˆ(eqÖãTÜéül'±«ä‹€Ö £lñ§@äR¸8Kh @6ÿó Äæ ©•¸LŠq{Z¤_EPÿR²zˆ'õ¼ ú0#Ì0¨?#QE¶Û+°MS>ÿó Äæ ¹ +M +qÔj­û®öþ£¨&ý“@¤ €±¤M%‚Ojëf‘hV$ ‘v{ÿó"Äæ +ʉLÊpÑÖç!¶§þVYÿU`»2H+nA!¤EnY€EB±ÏJ•TOÿó Äå Ê‘¸Mp×åk4ÿ?à¨öp.Qn\[<šà7Ò¹Õ]·ÖÀ¹½Ûôÿó Äç +HΑp~Pp,iR_šèÍp`ZœFz,ã­á^£Ö +AÔµdøûÙ@ËŸAÊÿó ÄØèÚÂX3DpsdJ½å¼Oôy¸XÉ€†%⸎¾¨ +´hÿó ÄÞ Ê¡¸5p”›ÿÿè_õ¡Ú(a€h—m£QX‰¨¤6×"¿Õ¶ ÿó Äà ¶xKDqßNƒ¿üëÑ + h ™Ö¦eŠ@v"›.¥˜›¯ûTVsÿó Äâ Ö¡¸DÎpå¿ùV}@p`cô-‚¶à†(-ð‹¿Ì§úð¶»s¯Žÿó"Äå 8Ž•¸NLÿê;õ€²ûÕ(Âá‹ß$hÁh pU ÏÔDKëÒù G•¦³Mÿó Äè ÚŒ~Ppü‰¿wʇ¼8 xñ_툅gY&Ì™Ÿ´Ü£ÊÚÓJ†ÿó ÄÞ  LNp}LùpðKðcXAiœÇø%÷4L=ÿÎ2%]%´ ð~|âÃÿó Äà ¡ 3Jp߯ È%(X¡ n¡¬-2=ˆ†MU),²¢T†½z×òKÿó"Äã Y•ˆ4Îpùg„¶/Ý&ÍCž³B!»›Z-Š¿ìêp£âkÿû4\Pˆ 'P­ÿó Äå ¦P3JpLuÀý ñ¼`„É·Öü”V~¿ƒ÷ÿG¸¿¨V ¦q]-ÿó Äç +Ö™°KPpˬýšµ@hì.ãùóKuýA4û{áÀ¸‚Í $Z/ÜqÉáÿó Äå Ö®øCJp|™™ÌR‡'Ùþ&;PTÓçr¿ ×ýÂO¬RçI4— <¬È07"ÿó"Äç °¦3ÄL ­ ]|ãsj6¿ o£ÿ§üNh %ˆÚn𙋢\S€Ý$ÿó Äè©>š8fq‰§Dýûp…+Ñþ¢_Þ£ÿ€,À8†Í­Ö°z fæiD…å±|ÿó ÄÌñ +®84DphîP\ª¤Ã|Fµ€Û@±¥^ø`yP‰¤KÿúÎõmÿó ÄÏ ¾¡X6 +LÈw7ñõ‰Àgúà‡PÁ\öŠøðD5)¡­c1on´‹¦®¦ãV»5ÿó"ÄÑ 0™PNL¬±µVµ_»cNÇŽwñÏV0B4ÿº&`Ô%ÔGÌ«á´qX@ÿó ÄÔùžDÊpçˆL|¯[Vô Éýº}[Ëühgÿ ð$‡Àâ7=i¨áX ÿó Ä×о™XLJLÑâmýH¸~¹|ñ¿ýGzâ€À@@&‚Ģ͢¾ŒFØc2.ÿó ÄÚø†•ø6 +H6¿¨ÌõHýãú§ô ÿñ¥@°0ŠÊ °$¡¼Ã—€X¼2.íÿó"ÄÝ (²X3ÄLé @µó!zý½Oÿ¨Þ€ô1Qf‘ž¢õ(i°à|¤ámïSÿó Äà á˜È~qÖáj¹ëö£ÿü`Í=ÀânÂccú< +yTw&ƒ+j¦d—çÿó ÄÓá©4ŠqBûÿAù+Š u€˜ Æ8˜ xC|úÈ(S‰Ãº–ËêHx}Èÿó ÄÖ ¥˜KDpý_·÷ù¾$’T€P8Œ +µ`HÕ­ra0ñ×¹ }ÒUˆå ÿó"ÄØ Q”ØE +qžÕüýroí4}pÖÖ€pÅÍ}rÛ%Zö•@j6O™ƒ\7ü ¼ýÿó ÄÚ !˜4„p…ú·Qø7õ˜ð…ØLáMʱËtŒú&)ÍÌÑM!ÑúÛÿó ÄÜ !™L„q¡¿í+øh´¨Y´t(ó9g +ºË ¢(Б0Ú)@îÿ‹ÿïþÿó ÄÞ æ¦X4DpÐmðÐÀ+À|”n9Dž2[ÑüPeTÌy"¡ÓcE| +ÿ~©Ñ1ÿó"Äà @æš83Dp¡mÿA­èÀ×Ô#.yDÖ£¾‘O؆ÂÄî6X–€à¿:Ëþò?ÿó Äã +À¾”NLÓ+ø?ä€ +@"°TœÞEr! 4*QJÇ¢CyÆMwÂÿùÿ£ÿó Äß îÂXa„pÆþ€) +ÃBš)~‹¡œª‚&-ç@ã8d!ñ<ó‡ãzܺº—Œ#Ñþÿó ÄâðcNp³.§’ù xg$j7Lêä¦&*#t5έAt¬½í‹šŸãÿó"Äå (î¶XyÄp%ðÈ€& +À¤ÏÔ?ʼipb„¥$h4ÀdÑË%R¡r¯ ·ÿó Äè +A¤X{JpÔâ_ €°-…Q ÎGTmËÁtò\(o}p°6tšÇÐÛúÿó Äæ Ðî xzNp‰^Bïú©«A4la™O79ÑkV¦„ƒhèãxOüõÿó Äå J +p®Í=  h4-’z3KjP¬oäN¿dsvÀý¦!ÿš…Oÿó Äè +`¾P{ÚLiø¿@‚€Ü +2)<¨W¼A% *’!$ä/v|uñ_ãcüjNÿó"Äå辜p{LƒÔVõ ‚ ©Ù²ê«®ð + +1Ðå Ož¿_V™ +ÇÂÿž¦^Éÿó Äé +H¾P{ÔL'EÀ °_¨Ídj42¹´$”±0ƒÌ÷… ª3Œÿ6ÿó Äæ ÈÂ{ÎL:þ^Å°€½gŸžQârgN=@p= œ¨”Êê¯*úçÿj:Cÿó Äå  0cÊLªM€€¬àvÁ”² ÷°¶Wjd( +†‹…"õŸ±õ¬á¿'ô\ÿó"Äç Ðþ xcqºG¾zD)Pà/ƒ¨ˆ„àfíøþEª÷‘*çïç9Ãr9ù‚ÿó Äç °þ¥Z„pÒN¦= €Ü~bÄ[°Zb«`’RÌÑOvá½µ…xU¥T}ÿó Äç ØÒ¡bÄp¾·C/¨õ|™êU!*„ŠÓ‰aUDA¬'LÕó2Dö/‰k½ÿó Äæ à˜{ÊM·Ǿ¡à ô=¾93R¢îÝQz›j"éy¹4–ï²I {‡øVôÿó"Äå Hò¤XyÄp^Ê£éеÀ~ÂŽ,dI]Mì&‰Y!€±wùÖcªOˆO–š>ÿó Äç ðîœX{Dp¦Qöä€í~OC¾»‡UrÚþfáØØ‚PÅI ^c}^rœ7‡¾#èÿó Äæ ˜¶ xcÊL=:Eߺ°¶¾gG Âö(!ª³p=èûŒ§ ­k|ñ3p¼·ÿó Äæ °’œ8ÃÊLñÍцÀ ÿöæ£ü;ÛZˆ²GÙ(Ú¨õýzFäøaÂ@ÿó"Äæ ØÚ X{Jp7·fL@ïÔJB‹R€J#3LL` @-*w +5Ò¢Má¹½–5ÿó Äæ ¸î¤xÃDpsfj"Š€ å p¸ZIY?žÄÓW.  1°‘–¬‡ Ê%B¶8ÿó Äæ î X{Dp'}%ÿ!äÁ0ë~'ì+JïÊ€ L²¶´öRâe·Šÿó Äæ àÂœXÃÊL’8Zh•èa"ßC|ä÷_ÿÆìË€€hòÃc^{‘ÄÆl%!‰|ÿó"Äå PŽ˜{ÊLË'@mEò¥í—Ðì—Ö þ€‡Ý Û°²G[NÇÚ@ óê6œ ÿó Äç p¦¨x{ÄL@#µË ‡éý ÀDcà?m²5àÑGœñ%†!ŒÒˆúW–Ðÿó Äèxþ”PÃÎpW´},úĈÎå@À\nò1æ®:Qx‹uÐh-¨§QsÖ™~ÿó ÄÕ ®º8zDLç'ïÿè'šË€jËT6. Æ Q=xÑ9ÈX¾³{ø4aÉïäûÿó"Ä× Hþ±˜z„p¿ÐqOȵ˜ +Âéùp.jí€À\êìQ©>âó@ŠÄâVÿó ÄÙàv­˜{ÐHg‰˜}~CéA6öõö@€Cp\à1Êü¬&5ïÂiigñÿó ÄÜ Ž¤Pà +LЋn?î¦öÁ·B;z€€ |3ÕUR²vfÐÊbÈà9¹¾pÁoÀÿó ÄÞЮµ¸zÄLÄ7jhì '¸ÉrXÁ]—ºP@"}ó¼«?á¿d÷Ôÿó"Äá Hþ­˜{DpoêÏù¿xvÀ +o·µ©$©dÍTYPRx•3øºÅÍø-üØ{÷Ôÿó Äã Húµ˜zÐp·_úÀÀ €K–1\«GeêˆPË%Ðð¦'xÒnf¿@“ýƉÿó ÄØ ÒÁ˜aÎpŽòÞdà §楰‚Ì +ÄV+ |`Cãt­G·Ëç?øïÔ Òÿó ÄÚÖ¹Pz„r„ßû7Ú0€")P’$$%ã2V,ï̈©& ?ÛŒPq¨¹Þ=°ÿó"ÄÞ Ú¹øyÄpö'‚WFð¨(þ@€ˆq,›]&\_fä„j-fÊ15ÿoãÿó ÄáÁBÂ8YÄqë}> `tƒ¾h0ñeªv„ù¼¡gí§GÔ ÄÄ ßQÿRÿó Äå Ö©H{Np}™y À WÀ²ÐèÉSê\@XPê/>&mŠ¯XKüW%´ÿó Äç ðÚ©ø{Jpöu»j@€ H¢É` xØ_ +õ’Î=y_÷‚‡Ê–;ð»~„åQÿó"Äæ ñ>¾J +q#±Näú€ !í@åë>+E2)…Wž ÝD¢ñ}¿'좱r½ÿó Äæ +ðîº8zÊpÁãy0€’@/ ÔlC*D^ßP +Ëi­ƒ›Œ +wü[úŽ‰#±ÿó Äá ö¹XyÄpné„ °×¢ä(Ù#QPŽ_±üæëá*ß®[êý +˜ÿó Äã ¾¬¨{ÎLáÀ‡ðÀ€b ’¢E¡ðIN]^Vº’˜’jI²³÷¥[¦ÿó"Äå Pê¾XIÊp‚Ðþûêƒäýy¢çÿå@j<Šª!&VíÃC‡ 5xæ­%r²Ûÿó Äç ж­øKÎL}ø€oz›Æ·ÖϨ‚ó<' h$ÔkªZ—LÁóÐg&S +|^ÃÛ{âÜÿó Äæ àþºXb„pþ7«õòàæ½}|«kŒé‘ƒL_QŠL¦•_jï Y»gÿó ÄåÀ¶°ØcÊLùVÿòß”t0’5’eñ©µm?#`– +ÐôEÊŠt–’šTÈ=uW˜3÷ÿó"Äé +©¾8Jpñ­ÕSþ\Dí`gihÓt”eF¨b)JGfAjkµïzq£µz’× ÿó Äæ Ñ>±cNql—|ï(-¬ OA,¡÷”Ä  N@±49–G«_×UãYÝZ‚·¨ÿó ÄÝðÖ¬({JpZíVÿ¤ˆç uL¤*pÎ! ð0DRÆ(Ðdï1uµwø7íGð¯üÿó ÄàÙ¼ðbÄpÍÅç9P‹í€yjcÊZmC¨l0=u»êûÎz›•w$ ý(q)ÿó"Äã A¬P{Np³Ú¿Ô<‡Jé^Ö{žât±!%JU¨ ¡cñƒúpJáèeAX +ÿó Äæ °Ö¤{Jp£ü‚p»TG#mµhÍêa–áx^I)#yIJ³œ¼qý°Bèÿó Äæ ¸Ö¬X{Jp­÷}Ê” +aj ÐÀýœO]V€ö ÇseªººÈÜÝRj¼Ãÿÿó Äæ °Ö±bÊpú ÛËX>¼Š8ÜhßÇH€ÓðT\!ñF᪉ùåVþå‚"Ë—Û‰Ìÿó Äæ ¡°XKDphõ׿å@ÀJõöl-7Æsø)c5O˜ÞùóW‰ôÿäêÿó"Äæ ¸¦´X[ÆL­ë9õR“ @kYÓ‘ †êð4Šcàêt¡.)KëÓ¨ý›Ptÿó Äç ˜‚ ({ÐHçêúþ°ˆ V·1¼³2åëMÈmÈ©Ä;ßßã^o>-ѸŸÿó Äç ˜Ö °{DpëÿñÀÜ]ª[âùP`ºxŽ Õ,ò=ã}R†<Ð`àЇÛBoÿó Äç ɤ8{Dp, +ùë$ê¬;¼¨a£>¡üR ÁöÂs'Z~·lšSÀ‹ß·O›ÿó"Äæ +֘Ąpj“~¿â@ËÀ^Wr¥Š9(ð1PØor/t¯T/¾Fƒ¢6¹ÿó Äå ¶©˜{ÊL=U±e€€ ð Cƒ\ ª¸6… ñ0–!Ë £ëï©Ë† H‹¨ÿ§ÿó Äç +!œX{Dpðà +•­Z*ë +¦õíh€ïpŒ+X Ù½#¦øV$ƒçÓ-¨¯ÿó Äå  +˜{ÄqI¿¾&Ç0ü û«éfÉÇ,Ë%;z/Ó~Û‘±‡PÈqÚ²TVÿó"Äç +@²œX{ÎLLwº$€ +L§XÌq°|!EZn(5¦Àm‚AT1ïJÜÿó Äæ ±¤0{ÄqÎ_ æò ÀªÐ*R_ƒëœä#N&~°õ¡c³Þ‰£Â<7ZÅÿó Äæ Ȇ¤X{ÊH¯È¾°„»`'#R“aq#+÷Š$ÚJ—ºñøÈ…äuáC*ÄFÿó Ä娞¬ðcÊLô¿ðo‡~°€ +¡Æ\²¢d‘<Óeе•Âˆmîħ=ÛÜ^ˆüoÿó"Äé +ÈÊ xÂÆp½ÿõ€.@2ÝŒX¤Ÿ9±•Ô[4dƒ%‚Y‰¿Ô.ü‰²`^n‚~¯ÿó Äå Š¨P{ÊL@ÞŒïË€$ ø¥ó, ²Œpe`=›Ç^H7öÇóÿó Äè +X†¥˜{ÄHRz€¿Àgf4Õ¨¾fH- ƱËÓ‰Žz<ø^í¨´ÿ+ÿó Äå Š­¸cÊLh +´oØ;€ÁãU*Œ ‹lT†„¥ÅÁ›|Lg{Juò>‹½UÕÿó"Äç +`öµ¸Jp·¬h7r_3–™z€uVÜ'*Y3pH%ï™ý"ÃœÆm ¶^€ÿxÔþÿó Äå Öµxy„pÇ×ä@ÊýËb©< =ÐïYŠT‹g;e¾“ÝKôêCÝÿó Äå Úº8aÄp¥L ‡¢¹C51œDÐÀ¨~8!fò;ZMŠÀ„Œl@Φÿó"Äç +IB±xyÄqk½åéÿ´ŸO\°€ 8 (†@Yº˜Äš+ 9‹†¯úÜ·zÿó ÄåpÖµPyÎr4ýãÿ´ó|¨€&¸ ”–Bdy|½7 À +'’F÷ú-é_ÙMþÿó Äê +Q + ÂÊrÐOÿê;õ€ä¡XßâÏ$'F!(&˜‰+|°|¿µ9?hßíGÿó Äç èö¤¸{JpõöÁ“€$1Õé!¾äÖÊ&WqGhððu(µ|ˆ¡Ù£EÏô:ÿó"Äæ y¬¸{pþëýFÀx†äüZ’´K°‘Ùd æÊ‚ÃÐç™Þ«~ñþÔh0ÿó ÄÜ !µxcDqå~aúÀÀ.N6Ù%$ëåÕg8A”’CÎ÷óÆÛ×7Ô@0é”ÿó ÄÞ¨Þº8KDpFN˜ŒT€ ð•²P(”Ê%Àö(”Æîºušo®§lIGìI.2%êãÚ°ñÿ÷øm\oúÕ¼ÿó Äå Ö­xb„pgMOã@€ ¼‘ ©oÀÃÁv£8TL¶¾Dñrÿ–A«úÿó"Äè + Öº8JÄpÿÆqjÅÀ¢·ðzBé傸’‚0Ò£I }'+ïÿÔËßÿó Äå àî¨ÃÊpQ;¸Ð€þ¼*RÂWðÛ6?ŽÞ+¦qøËŠZ/Û +ÿò>èßBÿó Ää îÁ¸IÄpÜ©oxÀ€ Zk‘D°È> @H%åË ø7gK*@Gÿ ¿ÿó Äæ +´xbJp§Ñþž5€ÌA%Õù—HµÔâ—‡òž2YÌHÿLŠÚø;ÔÞŸÿó"Äå Pê°xJJpOïÆ€Á÷<©‚¦ƒv³ÑnÑÒ‰!³ÿøÜ!Y¿þéôÿó Äç +꩘JÊpï¨þ"ý þ=ríìÂ*XKâJïÃ_èê"ýöá/ˆ÷.•½gÿó Äå ! +´xIÄp!°€pBT%­#¸@6· +`R%j#gÏ4Æþë‡Ï ÿ¶Kïûÿó Äç á"¨xbÎpšü¶Ï €ð¸>¦C7Àþ®](´Àû¬ëHÇâß¼pÿ©>ÿó Äæ Ñ¥˜IÊq?¨‰9`„t[Ä‘V¦k +Õ ¢Ì)ˆ¢ulŽ¦žzõW/âßüVôÿó"Äå ¤XbÊq@ÚÐk´€ŽXùSDsHÊÀ3“h”.ÓB×<#Z‘[Vžÿ¡ö@Cÿó Äè +Y xzJpÕÔ+}`‚>ç"R)lõqÔ²E +c1 +1öØÛ½êãZŒë¿õÿó Äå Ž¬x{ +LÕ­ÚÐ+ÍBœÊ¬*ÿ@”Ê‹E9¡˜Ã_XÕ3636>/üÿ|wÿó Äé +y¸zÎp2$khàôFé—Kiƒ¼g©”¤>XÁáÌ®kšÙž˜c‹êzÿó"Äæ àòœxzÄp¦»ÔõÔn×H'­Ùд€&±SÄ<$ +e ×ü®Dkð‡Ûþ®õjÿó Äæ ˆê XzJpŽÐú@¼@KÑ'„qŠ`M3ìcHT÷_7«{Û_oòu +ÿó Äæ Øîœ8zÄp›* +£Hâk(ædå[ÛàÊl`¯Dxp ú‰ádóûÊç¸ +þO—¡ÿó Äå ˜ÐÃÊLJ–Aú@"@#JòèA¯ã ";¦~šx”Ýeù5Öuü9Ø4ž¿Žÿñߤ´7,¯Ð¡ÿó Äæ a 8zŠq¤áËÔlªÁ„¾\¨£©V og~=°§_·Çñ‡~€À`"F€uÔ+‘ÿó Äç + ’”¸ÃÊL æ²Ö\HFµ¢îöœz¯ËÁSëÕFÿè?é€ Iö6Õ .®xÿó"Äå™B¤x{Þq#Qú¼&ñÜuiå4f๛÷õÿÈ+o@Ž ôÙg†´“ÉüXÿó ÄÆ !°ðcJp õ–Ú×ýÆ«7mFL[%õ¿å€ÖWL%ÀB†BUç8b$œgÿó Äȱ¤@{Jp+¼*Âd9É⮲]Õ´?í€(b†ü‰n,/C +)>(ÍX ÿó ÄÌ !¨ð{JpíÅ™³†tºíNFV³Ç% Š.îµÚÃê$à˜„sô[¢bx¼ÿó"ÄÎ A²XcDp +ó·IDìúÀ ++ÀaÈóó‚¼h›øb‚GԪע™ŸãzÕ?ê¬oÿó ÄÑé­˜z„pûb ˆ€*‘Àlh +Ìè´q0ÀŧX×µ)øGÛoÿú›Lÿó ÄÔЦœP{ÄL¨ƒ@`2H(ÉÆâ¿áážÏè,ö­ç"¿›¦ÿþ4SÿÐ4í¯Ð ÿó Ä× ’ {ÊL (¥Åè=.9@C¹_ަߗÙ_ÿÔoûê(òRàØ0,ÿó"ÄÚABX~q\ê¤C•û!Dáhê>Ê[­ë@ŒßÕ•?þßôÁ³ ‚K€‰ÓJÿó ĽÙ½3Jq¤Ùäg'‰PiÉÙšO²õ¬ùúã¿üaí¨ârÀ @)SOfVØëÿó ÄÀèÞºXJ„p;p|MkƒPh5pé¼€ °ÃÉš0VBƒu A+ÖçœÐ­ÿó ÄÃù>¨ØLŠqÒ†âUEó) +gÏœ1¨÷—Þj†`{ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó"ÄÆ ©˜L„pÿÿÿÿÿÿÿÿÿÿà­S‘µOIW¥-*-Rh’µZí«–ñ³øó1ÿó ÄÉñ­˜KDp:€Y•о‚ ~–ïáÀ”Ä°0`â®,Ï‚,xØ¢>»>Õëÿó ÄÌ ¨ùQ(¤ì,Ô6¾ý®µ| ÃȘq;¯º.pVEd‹&Lç½#±pÿó ÄÎœ‚˜˜hÏûs熊’ÕM½`Ìð0˜C>ä(– ¤8dœgAí¹¤ê +¯ÿó"Ä’ `¾¤Ø8ýº‰Zìæ·s €@ (mÆøîìüI6¢AçÑÙÃï«\Z_þüÿó ÄŒ ¾¹¸LNLt0Û‘ªŠ:€Ñ€-€È K5^¶\O@‚-+·ÝySþ¿ËöÛïÿó ÄŽج¸L +Lú òµ€ÿÀG6Ñ Èåü–VTJŸ}ïé5‘»ýEZŽÔž½^ÿó Ä‘ ¾­LŽL€À#À& ìšE;¦©i8¥€´£tÙ5O2Ý"5 +–×ÿRÝÌÖí Â0ÿó"Ä“ P¡XNNL/Jy/¡Š_~Ú67[¸¨lH”UWfgQÅCU€xÉÐhy3BÙpgÿó Ä•™²XKDp͆¡¢¦å¤AÕ1Ni˜µ,¶­kvè"¯@ÍZÿÿÿÿÿÿÿÿÿÿó Ä™àæ¾XKDpÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÚ ×l>ŠŒR1«)µÎVÙ_ÿó Ĝء‘T8ÌÊgµwþ¤ŸŽ§ÿùðP0`0¹(]é1ýOg\‚Œ $ I5ÿó"ÄŸ|‚¨™˜êàÿÔž#»ñHµ ÅÀ«Zt·0Â&-9‘fºdáàz}o­÷Ólÿó ÄeáÞYÍ8þ_wàïHÀ Õõ–‰lhïTN&h!€Ù‰HóçÕm|ÿÿó ÄhèÖ½¸KJpò~…¿Â` aÛÀ¶킯³>’$‹xÑOuŸÓï„¿õ7Œ.ßÿó ÄkèÖÊX|p·âN  @¯F ^‡-­ƒâ ¨Â¤MÍ7˜_3N!ýÕëv° ÿó"Än XÖ±˜cNpa«Àn +î$g¼–dQ69\ŸM)ÂzéÂ?tW#íä:@€ÿó ÄpùÂX\ +q° +!/+^CZú8däQ÷)ê}-&ÀÛÿAÿÖÝ@€Š@+ÿó Äs ’¶8KÎLˆ¸Òå +oX-vŠ$ˆç€Þd µ>Úø+ýõQþ¿æ@ b£@?ÿó Äw ŽºXLDLá”Üࣵ8¬2 Z—MíK»±•‰ïå' ÿñ@À˜ ¡ÿó Äy Ú²8cDpÞ #Ö™I)YÀÝ{¼äç©°»ÿËñþC€ +ÖK'äò™ÿó"Ä{ PÖ©¸|JpáyÉ°Ëô¤Aólõ)ÿï®ÿè+Ôò`€ÄÀ/c‘ÁÀü¡Ä3ÿó Ä} Ö²XbÊp.DêÄA<ª ÔÍ|ï ++õM\w¨ÿò àFO€zbƒ© FãâÉÿó ÄÈÖ¶8cJp£Â9PBÉ£%³_WÿŸÁþ¿x¦à#ôdV„4r#;$ˆ|aÀÈÿó Ä‚ Ö¶øbÄpÛ²øÇÇ•ùÍÊÐ%gëàK@ÒDJP Úg¸'ly«÷~Íÿó"Ä„ XÖ©¸cJpå¡Õú>ÊVàÿÅH€À #~5N È\ä°ê/)€ê37c{¶!ôÿó Ć ºXIÄq½ÇR¿oX€Ä p‹á&Btü‘(ÂAj.õa¤Mxµ~ÿó ĉÀÚ¶XINpnTWUÀ€(ÞãÝ H„ŽçJ†J¡ýµÆ±N¯²¿¼ÿó ÄÈÖ®XZ„põÝ}` s@Ëš)®"R VäÒ?¾ÌúÒ} Üõ„Of° hÿó Ä— ª®ÃDL;zŒ•‚›¶:P–ÍÁһ̵¶~Þñêz?XÀÀj#Hÿó Ä™ Ž®8{ÄLêE¿ W¼'¦P> ¬5õ0(ØGÖ*õ?ݬæ³n#îk+Nÿó"Ä› ®²X{ÄLhlt4°]AîÖ¡~u†;¹Éï›el¾}’vïdÀkó÷³ÓÀ3ÀùÄÿó ÄžàŽ²XzÄL·'.Äk5#„~ÅY/î¡ì„ÿ•vPb?Ôý  ‚hÁerÿó Ä¡èÊ®{Dp¾Ìõ˜§¨ÄñÄÇ“ +f…§õãáI¢Kìÿ÷ù€ (3+Eb•,ûÿó Ĥpb¹KÒ*`lɈvXÎ'–³}*…D0kÔŸø“õ€À+€ÀùºèOéÿó"Ä© €ÖœÆ q`/d£¤ÁåÖ'¿¶^, •ôÿ'ü¼6’´%C:³;\>¬2m´ÿó Ä£ØÖÁzDpŒa0®àwï…ËfúŠÿ‹oõÔàÀðo¡7æ§tÕ_ ˆ±wÿó Ħ Òº8{JpæˆЬB›ÕWÔŸòÿã|8  ®“b¥gtü¾.è¨sÚíqº›˜ÿó Ĩ Ö°ð{Dp§ùëA`mmù‡<‡¬=¨Ì.‡Â,è¶k˜ÔA‚â¥Ñ %¥›/ÿó"Īøú¾XKDp1$À˜¦âF‚`qBRÙ\4¢ù,‚ù0TZÏÏ8ðF \6ZSÿó Ä®øþ¾¸yÄp]Ì7­2Ú(Ò ý”8ÉôÊl¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó ıù²8{Dpÿÿÿÿÿ€€ >ŽÒå +—ÅLåé?u127,ˆ¶ÿý¨-àbsÿó Ä´ð®±ñO8ÿ›n_èó6ª±ÁRLÄmg‰ôÚþ+i ÒEêp¦ƒß÷ÌË4ÿó"Ä·Œ‚œ™ @ +»ÿͨþGäÀÐY ©(rѧX?¢eµ2Lú3ýª›•…évÿó Äp 92¹ùÏ8»Ú·éõ‘Ä@€tƒd“Rb¸ÕIërž rº__\*_HÅ;Ø·ÿó Äj æ¹X{JpdþL„`g«9®ãœSÛ(=C06¿V`X]´_ûåK}_þ…\ÿó Äl ž±X3ÔLÈ€WB¬Ï$ÕmšPîe 9Á@y~Ù-¢_¿ÿ¨ß_ýØpÀÿó"Äoð–µøKÎLàØ36—Ž™Fµ¬èÖ +Yñýòqì胫ÿÓ·Õ¿ê8H =`ÿó Äsñ.µøcNq Dfš#[{e·’äDá`0=aϦ7ú¥3É4òÅlò“C®þÿó Äv !.µø{DqM‹IeB™´ÍË™0r&Ø­>¶Xˆ€ 7(ƒ ›¼²]FS¢Èÿó Äxñ.±XKNqØ»«õðgпò +Ûÿᩤ  =Op6¢ÊkaŸš( M7ÿó"Ä{é.®8|Vqù‹áTÚç£õ¸\è² G†TóGH^€Ü"éE¿Ð|Wÿó Äc Ê83Dp¿ùR÷~ H¤€ +ÐD5¬Ä‘ß°ÏæH,AKÊÖùÎ~ÿÿó ÄfðÚ¹XdŽpð¬èßÿ +PÄ]@ª9‘µq`'É TË©ÿÒl\WQðã)ÿÿó ÄièÖ¹X4ŽpY©   +Á”IyTÑ3ƒ°¾jaÿM±X +½¿åþ¿¨‹Tkÿó"Äl )¾8cDp䀻ÀAz˜”è _2eÐT ¯þw‰B¸Åÿ ïÿõzˆ€¬€ÿó Äo Ö¾X4„pK€Ô‰ÔíAó¡ùž£E ÐÉÆLþ¯¬üεc¿A¹p!ÿÒ£(]ÿó Äs .µø[Jqf0€ÙÁNcW¨Á’Bnà˜ÌD`ðáÎFÎHšTìs1¹Ààÿó Äu *ºX4ŠqÐyT"Y!dqXÓco‰¢š×{VPt`6zæ»È¦î¯Gÿó"Äw 8ÖÆXIÄp%ÏÒ| ˆ>$”ÏeVO.åWEäGfýÞ[—Dj¼Sý±I70Œî4ÿó ÄzAFl×0s[iU`ÆPgË"(‰Ã“502ÌeÇÀî¡ÿÊÏ fì¥]ŸÉÿó Ä$ Ö½XLŽp€p˜¸¤ml1’5îYR ̸ÔPzÿñ`ÇŠÄý¸ÀþËðç;Á Æÿó Ä& ¾¹XKÊLÀ@h»IÏ*­âË OÅz†ÚÚ5<#Z¿¨»SÓ¡Úº€BÚ8mÿó"Ä(¸KÎN€tæƒÀ8`l͇q×}½¦/­?ÔE÷z½´q¿‡€p-±!`ÿó Ä-Ðþ¼¸Lp›­‡ŸÅOR.Ðçz‹ÓnGÍ­?A¯zk.ïÖ.À}œÕ¡iT6yVÿó Ä0ø°cÎL¼8+€rÊrFÕºi¼ ¨ö¯ñH‘/zÙÃ`᜖ÙÒׄk/Ææÿó Ä3 ¾´X{ÄLë_tÒ´Ñç£×ÂÛSìÿQÚ­×ý@Ô àº£Óíh˜Êaÿó Ä5ج0~ +LðL ÍÍÞŽÓWºVŸ×Ñq‘*×}@¡øòb7ˆ(áw^‚lÛ(ÿó"Ä8 Xâ¬8dDpÛw¨~ôè3j¥[ðÞã¡ÿ¨5“,gœ„Ãò³®O‰y÷h2,uêûÿó Ä:°Â¬0cÊN^rg>²x1 ]š¿¨rhA?Ã&Oؘi»›Æ24JŽYYÉw®/ÿó Ä>°Â¬(~NÿŽÊ¿–t§—j‡b…’ +–;âo··H=‰XÊ«®»B#ïÿó ÄB °f +L:Þ~§ûªõ€ U07´µ¥$°6ÖŽÍ,Þ!Wgu·­O?ßñY2ÿó"ÄE Hš¬X{ÊL÷Û·Ã `)“¸“ƒº$“DéàRéŠ2[j{Ê•r +OÔ×þ7ÿó ÄGؾ°Ø{ÄLú€¼+Qê©dbÌJô˜$´Œâ®®9á:µ¼0ÙþsžO=áàÿó ÄJ ú¨8{Jpdî>g*‡] êÓáÚç ’5"Œîúa¶‡j¨1¿Ð|³¬©õúÀÿó ÄL ¾ {ÄL ²ø © ž,£Õf“‰‚ÐÖ[×ÊòýGõjQø'þd”Žÿó"ÄN P {ÄLn øBÅjðŠ{)ŸÝϦBp¦#Fÿˆ¤¤ž“’Þ °Y@®[2ÿó ÄPðþ°øZ„p™.@LÎpv0r‘8lHÇænÀ:#ÎÔë7Wé¨û_€Á|Œÿó ÄS ¨[ÄLt/Ò¬œúñÛózµ¡& +ã£?Aö +º#¯úÀÀƒ¿ð-‡Ÿ +€Wÿó ÄU šµxzDLj¯´–¤Œó}ØÎ4}нÓÁ¿o2a½ËR%A`Lr] Uÿó"ÄX ¬{ +LñW¾0;žw¼.^;šßê­õú€`@·`3Òa`}Ž¢ ˆ† ;ÿó Ä[xþÁ¸aÄpˆx‹öwíV¿Qô¦Aÿ‡• #b6š™‚LÍC„ô ôDC¥ÿó Ä` ¢¨x{ +L‹ûB=©nÐtB¯eOý`ÆsˆÌÀù$l,‡¹¤Xš.â!)ÍZÿó Äb þµ¸iDpº2¹M9Nñýò­ê6 + ¥)ÝÊ¡BJ‹• ‚b¿f éÿó"Äd ¢­¸zDLzÆŽÏè>ßä?Âàà˜õM\ßšfxDj.2‚EÂP ú|Ôÿó Äg (–¨{ÄLüú7øê•Î÷k|HÀ¥9˜‘{Âÿþ¼ïý4ükÿó Äi °ÈÁÎqGÿÀÀ DâRÂ"Hh€VÜá…¥…Þi⼯XGþÇÿðÿó Äk  +½˜ÁDpÖ´£ÀÎ)[s—úã,€ˆ¡ÌÌ8xÜvÛè·Làd ˜Õ®¦—{£Âê?Çßÿó"Ä{é +¤ÁÄpêñ>0p"ðkÞsU5LÁ}®­ „º +ôhkáØßêŸþÐÿó Ä +‰ ÈÎqH®åŸ9™ +„ƃ­¡cÀ éó¨×ýŸàÿÐoWÛéƒÁÚ@Èÿó ÄoéÎXz„q 8ø«ÍÕêªåPiÔÓc`©ŠÊ¯~œQOä”waL6Ä +'xÿó Är‰Â8|Dp…&±Æ,p±¿FSF‹v§œÙoÿVßéŠÔý@ˆ 6€’-$ÿó"Äv Q¹˜{DpŽîÄÌ–ÛÞ˜£À\¡Ûý{~†+Ð-¡oå@ÔP5_VkC…AÑdLáÿó Äx¸Ž¾8|„Lò BÃ.=²¤N‚¨LŸ¡&’Y¡*_5#Q7Ñ7 \*ÿó Ä|Ù +Â8z„p>NÑ4¢ÇÑM5šÖ`¯ÍoµÔ¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿó ÄŽ¾9Oÿÿÿÿÿ€¨ O€Þ^mf§Úb3uµÅ@?h4u—õݶ“ÿèÛzÿó"ăL‚¨™ù€Ú±éAâŠ@qô©Àœ>Dèæhç]ö&È+ ¦g ÿó ÄI !ÎYËŒxý>?l8­‰7P(2ãûן§ü3U:Üz®° ÿó ÄKðŽ¹˜LLp<’yjÁ{s‹€§' Yä_Õ^dØ*ÿ¢úwùÚÐóò@ÿó ÄN ¾8cÊLÀò?¤)á@è®&„ð°ï ’'ú꥓ÑÃÛþ+Á?Ô¤€ ‡xÿó"ÄP Y¸Ø{Dp«êÒb¦ÿø¡á”ðž'êíf¾ +âLÙÒû8là>Œäö‘S°Fÿó ÄR¸Öµ{DpXý䊒6Ø?q7ë| ?5vün§ò×}@C˜î¢ë é\@Û*Æÿó ÄVðŽ¾83ÄLÈg€&|W8¾›¯±èlv•þ.ÔñÞÊú€Àð¾_UüvÞ*½eÿó ÄY ­p{ÊL 6x0ª­ó¸¶ùƒ-­m†5ºy>¦Úû계¬`–µÿó"Ä[ ¨¨{ÎLhÞÔ–º>†BNÒ(Múê2×Ï_ô/ñ€ßþ¡`ˆ€L±À€Àšÿó Ä^ ±¹{Êp梮TÆ#‰jFǨ9®Ïµ=ú?øÿ©Ü2ð†¨Ð= Jë!z©%ÿó ÄV ÁcJp)ÖÄÐR`Ýz4Ç/§{îí\7õõâ€#°.jŠµ#ÂÔtÌÿó ÄXøæÎXCDp‘Ldñ”’×KR‰E}-g··ñ¢ßþ €…(`2Æ&ð±<*ƒ¾jáÿó"Ä[ Xæɸb„p(¥ÐE ¹òÍ( +)òýnü+É0bßrózÅ2‘4Âm$ ÿó Ä] °PKJq*ËEÉ +~%ØïWóQ¿XÞ 0ˆô.¥ÒöNj˜¦1KŠ1H§>ÿó Ä_ vµ¸fH…y‹WðÞÊOoñ¿þ0à^ +‡)x'+ö¥À(¤#f6±ŸÔ Êÿó Äaàæ¸xZ„pþ7ì;õ?f¤ñ€"¼h¬ô€" +.L` +¥M[\©Å»ÐŸEÿó Ädé¬xdqÿªÐWíøîÁ¤mÈžxDzà„]2™”‚´Ó5릩bñÿƒ¸ý}uÿó"Äg¨®¬XKÊLGoÇ€‚\”KöÆØ7* DˆF,*VSßï«’O/ZŠ³¡o¨ý«}ÿó Älùµ˜J„q€@qKC¹*‹RhI‡©Ie¬õu:ê>–o”E¿Ú uO±`Àÿó Äo ´XKJq<è*_É`×Ï‘µÈEJUþ¦îK¾¿ö«}ùøÌB\àzÿó ÄqÈ®°8zDL¦if(&fª¦†ìÝqú”ÝZø/¡éÿ¨ÚN(ÅU€N€? +Nÿó"Ät Þµ˜KDp–öàU¹>¡&K»·©RνqíýKÄ`€j@t¡cÿó Äwù±˜bÄqÁQ¾žƒ(ˆQÓêÆJòu©‘÷ôx"·ûqÀ€ +{I]#"Þÿó Äz æ°XJÄp^G: Mê‘ÿªXBw-äYÓ&À Zî;ªÁ Öĉiåÿó Ä|Øâ°ØcDp0«ÍÿÏÆ?ã?³×AÕ9«Àä _-CñŽ‹ ðÌh …Pÿó"Ä ±˜b„q_¹½Gö±ðß3ÿí¿îŠn%À»¬6¹#Ã^ö9\t„B0ÈÈù&ýVÿó Ä‚8‚µPcJ[ƒú¿ý£®¾YoÁ@€HòÀμXtÎøÄýbäï_¤ÿó Ĉ æÁ˜bpÊÀ.ÍßÓQ „œχ"´P2'ð08p¢ P6·8ÍI>)ÿó ÄŠ ´Xbq½›Úÿäü~ÌÔ"( 㬠ðÑ›ô¡úôÏïµÑÇárÎÓ­ÿó"ÄŒØæ¸yÄqÅ­%Xt +A¢•¦P!×â +1¸²&œHÊx,çwœúâºÄ’ã7Ñ æ~ÿó Ä Ž±˜{L‚ÌC/>Ù÷¡Þï^wÄ!ÚÀÞªÊåkû›²Lƒ¶ÿó Ä’ Þ¬8{Dp2 +ÁÓ3mØÙ¥¸U|÷Ak~Tc¸Š“w€*À3†Ø×€Kôÿó Ä”°Ž°8[LàÈE¢†ŸÄwu· +ûP_úŽþgßÏþ5€4Ž×*9%§ ›j©Î. ÿó"Ę +I¤0{ÌrI”\*ß´b:Æ£ð¿ê-þ;—§X,3ÜÍ;y/¬V'WÚÁP89¤oÿó ÄŠ HÚµpÁÎpñ]ßÚÿ|ʆ?¡ooSød <F×­ÉÓ6>@vrÙ8*aP›ÿó ă BÀØzŠqøP‘ˆ©Ãÿ@à„ûû:€‚(~¥§:Å$ÅÀ†'TioˆÕ9ÿó Ä…¨Ö¸zŠp›“é@áC¨ÙîáÀƒ0ÃT/äÕ«‚"Sõ¥…À©d(íâ¢Ãÿó"ĉ 0Ú°ÂÎpýjø*6‡€t'ïžV‘@†ž˜`)L$/ŸŠ=o¸ÁCß!ýÿó ÄŒ ÖµðyÄpÈòÎ6ëÀèg„¸<ÚhÆ«+™?4MóDD¤òeylëí~ióºÿó ÄŽàÚ´¸ÂŠp¹øzdyP`Úƒ™ñ‚ë~¬(,¶LÏôaà€ ‚Úsz¦I×ÄO,rÿó Ä‘ÐÒ°°ÁÄpY`xELªÌÂœ¯øÌM‘÷vq@<Üȧ”>bh÷‘Lžý%ÿó"Ä” @¶¬{ÎL}wø7\Ù?©*#¿‰=ÙbÀ9@Üò3µn‚y]¤ K QŒ‹·oÿó Ä—B­X{Êqcü­³ÿ‰¢ýÿƒ1Éqpƒ ­¢Ã:›¢X9ádï0& É·ü㢹Eÿó Ä… ¶¹P|Löþ‚ñíbŠëÿÀ `ìÌE>®¬»3 ÀqC3$¬þU|˜øoÿó ĉظ¸{ÄLê+'¨ôÖþ€#ö<¶ÄL{)ð¾ƒ!è(«/Fâæ×ül´Õÿó"ÄŒ ö½x{Dpÿ¨ºvu€ +@3%ÒÍ“Ô³µ×qfÝãâû:C¶Ÿ²ZÇÿó ÄÀÖ´°|rHäÃÀK@‡ +P§'1<#ŽIrbIB˜èŒ¿q«ïÖ–wªÿó Ä“ Ö±X{Dp–ÝëJŽo?í¢pyï.­'*Nè¢hI`‰?¼ë€ÀÈÿó Ä• þ¾z„pÛ¬ Z"D)&&ÇKÍúÖc©öúµ6þ0§ð¢€À +Œ†àùÛÿó"Ä— X½˜{ÄL°f:2á<@±bõkt³.o¡ccÿAÿý~°€Â-siŠ– Mþ^ÿó Ä™‰B­x{Úq`2‡ *ήïìlQÖÚþèþ?ÿÔ{r` @>&Á⊛%NºE„ÿó Ä}ɽpKJq +èi ¢]¿Cƒâ5w½oú¼PÀH`-d2 +³@£ñÁÈÔ)ÿó Ä€ !Á˜KDp“«¿¤FGÁ¶•…y/É +ÔÀp·Ù‘ÙL~#½‚’ÀJÁç/Žÿó"Ä‚ Y"¸øcJp¬âÌô¿ò¢ãÿÿñ=`À!p>ª6.$ +¬-§ÿó Ä“ +ÑBµ˜dNqú}CöLã‘Y¾o£býlSºt53AÄ"­æBL'à3ˆaÿó Ä‚ Å°JŠpå9_:‡Nÿ0…ÿѪßÑF©½ À`¡âXƒc‡dÓX„ ÇDd±çÿó"Ä… Y¹ˆKJp.©\ë^ÖùÆ·ù2Ýûúi #N!H.Ñ­Hä„kb™iSët^ÿó ć ž½cÄLÔ¾ +‘º˜Ëwºþ ~ +¦}x»ž óç ‰˜â›¢kEYÇ^•ÿó ĉ ´KDp…ïÑõcŠõ +Üûà6Xä_ËiÙBb†ny‡ržÓ©ÁŽÈ­ÿó Ä‹ Ö¹cDpSu"ú³÷uSºj.hàÊP±¸8ÌHô+êfe.ŒÝ‡ý»ƒÿó Ä Ö¼xKDpmüýGÎõ€¤4¼ 1ìd»òE(PÙA¿#§9ŽÎ§Á[z°7Ûÿó"Ä @Ö°PcJpHù‚£ð27 +!Xœ+yº%'-ÓÛÞµ*B @óðXžúÜÝ4RŽÿó Ä’ ÖɸIÄp-†VÂs†5ÈtÅ`ÛåS7j>®¹GÕÐ'œ9$¢õ»¤ "Okÿó Ä” ½˜KDp€`¤x¾ÕÍ{CSGo/N»©5oÕ­VM£lý|ÔÁA’€ÈÍÿó Ä–àÒ½Z„p+®K:@„%iK¨å7ùç“Ÿ/\±ÿtoþ£Pü 2ªl ˜*ëÿó"Ä™¸¢´ðcÄL©+å“xˆ»ï^þN³²ÏN½DÀGlä" € ZìÜm`Š[ÿó Äž°‚¨(~HåÞ‰˜ˆ.i©¾=úÙÕéâT¨»»b:@ÃB–"ù>›!ZÊÛÿó Ä¢ùÆXJ„p`©"(Ñ¡UoiméÓ º}[ÿ¨¯@„Ü_¸à¥ƒH4Ÿ0pC”Vÿó Ä¥ù +¹¸zÄpFB³¿MÞ³k)ßäg>¹oþ£€áŽÐ5ˆ²(õT<*«Åÿó"Ĩ X²¤P{ÊL”Q½“5Óu»'›0xw¥ý?•z(ô€€7 ‘Ü6lD¸r0çÿó Ī ²¤ð{ÄL h'"=þ .¯›ß‚þƒ~ŸÈ€P¼-T¬4•Ròè¤pñÿó Ĭ ¤X{Dq˜æd+ã3j]P^­¨oꃿ§ý@€K€›»‘wxUÇS…@L”ÿó Ä® +°X{Dq>›ñ‘n^°.½D~àÛ%_‡€€ %48·<­ +¨èð¸8)(åÿó"Ä° +Èú½¸{p³¾å’¯HWÐOðOu{¾°‚ìráUF-(g±g@ˆ™'ÛåY*Õÿó Ĭ Ú¾8yÄp†÷Ð_ôñô?'ø7‚pG¤ížì„ì=E2(æ¿È¨óÜ/£ÿó Ä® °{Jpêþƒý4þÀH¨W¸Þï^ŠÀp1I¾UÝPÚÓ§Q¿ÿó Ä° Òµxz„p¸ýDú€€©Ð;Z¦4q%ÞÚJ¦²i*šixüÚŠvPPÔ¦ÿó"IJ Ö¶z„p£¨êšš: ª×ÒÒ£rÀƒ +ð«Ï-U:;–#X‰:±ø4M—äÿó ĵ B¹˜z„qãÚÒá›^Ü“ú—êÿXÀNFÚßYoÒÂfû<=Ts5m((Õ¸ÿó ĸÀÚ¨°{JpCõ7øÑoGW“Çãb¼C>×ÅÞa³¥Š ‡ZHs2Åg¯ý{ÿó ļ Öµ˜aÄp†¿•ò^D€ ˜/‡X°ð{JqOøê7·– ðÈ€ €±Ä3Í-nðtû?Y1Œ²[M—ÎZ‚|7ôÿó ÄÀ©BµXz„q/ò +×亀€@€KÀ³¦9èÊ×cG®1€1Ñ6ú™Yþýÿ‚oàÿó ÄÄØÖµ{DpÞŠôhP¹€ØHm¬°Q3±2,MBnüh‡ç•Z\ŸÔð^·ÿó ÄÇ +yB¬ø~qò=`Áh +pa˜·€,še¥¤3 _š¥|ë5lÉÀÿÆþ ý>îÿó"ĸ (ÚÆXKDpÂ(ð'ÏØbØ°Ê«YYEnÒ™Oç}¨Fþ‡þƒùw"ÀÀÿó Ä» Ö¾XdDpWc\® ÄG.Sc4ÇP.Íú;jAG?Ò+ùàá{€½-wÿó Ľ úÆXKDp9ÀqÞu$&ëøȉoI'ûÿR·à›ÿüÀ U 0ØÁƒ¿°–ÿó Ä¿ ÖÂXKDpZ­‰çè2š?"šÚ÷·àÂ(ÞC«ÈÀ  6ÜóŽ¤Ø3Lÿó"ÄÁ @Ò¹¸D„p¥íù87{Ÿ…Ý”wþ¸qÛèëò@€ €*.œõ˜¦ c7e¨ÿó Äĸڵ¸KDpòÁù•ó®µ©?ôüû®»¬€ +Ž“·§ ¾p^TSfÐÁXÿó ÄÈxö½dDq|Öþ¥Ï£ÚCú†ºŸÈ¤€!K;¡[H®@ðBq´Æä¼¢÷yÿŒÿó ÄÍ©>ÒXZqÞhÿã@žG©×ÛÔ€Àu@¼7r+þø…9c‰™@w”sU^ÒÿAÿó"ÄÑ HÚµ¸{Dp>æ¡ÿÛýÿ‚ÁÂHk´5U⷇ΞJÓÐ +Šß~—ÿ嶾ÿó ÄÓزµ¸zJL‚þü•žh€0K@ê»UýD¬º“Sb¦¿u Û-¿ê+ÿó ÄÖðÖ±¸‹DpüWõÿºÀ€ à6ÕH2RQcµ~f¼1Ný\µùÅMkàWÓÇ{ÿó ÄÙð²®0zÎLûyWðØÀ(Ð5 +Ío~ºXyÄqRÝo満€¸µ°©¾`ŠlLó©­1Èi»ýn¿\!üh†Þ£ÿó Ää +0Ú¹˜zDp¼ŸXÀ0»~åf?ÚÕ”÷e“隆¤ÿ5$‘~£ëÑ  =§/Œÿó Äâ ÊXcDp0·¿úÀ„ÂGÀ²U¦Î¨föJÏ­lhß8ë©éÆÁÿÿó"Ää (²¹¸{ÊL7‘ÿ&€1ŽzÄ¡ã¨V +K¨0>Š"…à8N¤‡8Èn¦€Äþ-ïP¡ÿó Äç °Òµ¸|ÎpßÆ?G‘ Š[@XÒÜ?·x=ñØÄ0Ý;U&K©eÓvHG‚ÿó Äç +Ö±¸|NpüšêÀá×ÀM…Òm7@»œu"1À©š›7c§2Ñ¥ þ_à‡ÿó ÄåèÚ¾X| +pö € #]n¢¡ÁÖ¸­…R9'¨p4¤a"þYÙLë`8ë'—ÿó Äè +PÖ©ÄÎpþ…úý`€"P +K¹'G<R­}ì:ª¢dONåŠc]TŠ¸üLÿó"Äå 8Ú¾XcDpKÄ]NäúÀ$*×HauA ËË^í†I !Âr9?5Í'Þê ·-ÿó Äè +@ú°ø|ÊpÔþŽ € £urªRT"°ðYCÎæŠLxÔÙ~§]níÚê‚Õwÿó Äæ ÀöÂXcDp»ÖÁhÙà:Opǘd;Iœ×`¸˜wø'W²¤/_µF?’ëÿó Äæ 0ÚÂX\„pò€ „&‘[vRÔŒ-Üj•VD„}Æ*ª£&S$ÕÁÊü·ÿó"Äè +XÖ ð}pòü¯üs’:L”U\ÔTÓwžüúS +&ÜZöÂÇ+˜aXÎ8ôÿó Äæ ж©~JLù·÷õ€Ã‰»à£t;м+¤)Ëlý‰joT³ŒŠòûœkp%`(Œÿó Äå ²œ(~LÕü>B°¼zÑùÒòÊͺMÿËÝÐoŠ@ÑP‘À΀ÜU£Ûõÿó Äç + Ö²X|„p²P9óºV[ººc”œFGßÃ@Ê`«@™f|[Z»èFÿó"Ä嘲µ¸bÄLÿþùs¢¦N… ]^õ?ûÿ;êa@ƒç€óh5Ÿ§§²AŸ]3ÿó Äê +¨ú”ð}pgóûÅ×è?‘åÍ‚ØéòT91ÅSÁ´“ú%E&þØîÿó Äæ È–”~LÈìrS™Xû)ê÷õ€  cá@ÔÍLLùØÌT‘SØÐë¯ØÁÓ§ÿó Äå"µ¸KÒpv@øìÞ£ýoäÀ€ˆ-x"ò*³ ÎÝSâ$‘FÀCà³Vü)Ùšÿó"ÄÓ –µ¸CLª¡Ÿýü‡Sùé £ûC4Î áI¥ðã)“ +fo©•R ¸&ònTÿó ÄÖ ­JÚp¦—þƒ{:€€Bç€m<7|†Ô_Qˆ`ïœYÜCÚâÞJÿó ÄÙ ÚºXCDpŠÝÀÂØà:Â`F+B Që,8˜øÊoúl’JNÐ ÷^ñd²èÿó ÄÛ ¶©°KÄLý[ýÿ`€0ñŠ@N"Ñ[Æóž#<Áo»ûì÷•ú¹pÅAÿó"ÄÝ Ú®XKJp·¨€@  V 4‘¡E ‚@Å`4ø¹i%¨TòÉóƒt@,ÉôQóòヶ¦êThkÿó ÄäØ’ªXbÎLh[鮧ô„À¹€qÚHO­ê®wcÒ +ô=?4 +õôjŽúÿó"Äç +aB¥¸KJqŸ +ý`€Šõu0ÖŠ,zHð IH0 +KA‰Ôê8ß1@L¤>Ÿœ7ÿó Äåp’¤ÈKÎNW‘«w&£)Àuú9²¬Êb  ZÕþõ©Ó + +ïæ½ ÿó Äê +Ðö¥LŽpÿå}Ý@¨°2ð .ÉÀ¾¥E¢£E%,†H°ºoç[µÐ ÿ-òÿùÿó Äå κxKJpG[õ„¤ð鉲š%æ>Š‡E8Ì.óR²OÎÖÕÑ`M©åÿó"Äç +HÊ©¸\ŽpßE/òáà˜ü¶„:Å.Fé$LdÈ9bé,Ì­okç€ 5_—òÿó Äåض¶XK +L©E@àMà=8!¤2[U·%’'Aà& tÓe)K@;üÏ*Zþÿó Äè +8Êœ¸MpKý €&¸Z<%m•‰˜O‡A#ÌZ}ÛN¨qWâOÿó Äæ Øö²XJÎpÖëeú¤BY€\hÌR&AÂI–Ql@¸Ñ –izp¯ù…û +ÿó"Äå ö®8LNp?ð{g:€“ +ºHÊC°|æ²V>΂J,hFuõ%ôaoêw”Ê¿ÿó Äè +`Ê¡¸\Žp^É ±°.Ò—ƒ6(¥Æn?’j!À(|ŒRdš¯Ì”'ïòÞPöÿó Äå ÊœÈdŽp!3­ý½`çI>…Æ‘›ÔUy®ñ@m~µ­µ~6~#ÓwMÿó Äç XÊ©¸LŽpu?“L!ÕŠ’õ³ž¸EP€ +‘°» +Ho áuε¦E©ê6ÿó"Äè +HΪ8KDpù|—È×ùÒJk²°o¯ÒÜx‹‡ujdˆ‘wûŽù”þ¢šÞŽÿó Äæ Ðö¶X4Äp§ÿPb€ÁÔŽ© +*Gc3G4$‚Ó€½SÑ_ã} ÿó Äé + ÚŒ}p‡ô{¹€¬É±É›ç/2™h @x#$$<ãö»ŠA ¤ÿó Äå趥˜KÊL`o’ÿ"ÔÏÀœÍÈgP,+Ĩ‹¨¼/€. ÍËËFóe& îŸUÿó Äè +XúMpè6?ðmP€¥ÀGU–Õ}‹¦°×–C:´£ÅsýSÊò,Åÿàÿó"Äå @ö˜¸dŠp†HÿÁÿÃÀ +€HÌÈ-‚z×%sÜ ¹¢¼Í¾Q§ô/‚jÿó Äè + þ”ðMpäë +|"ÀÕUlhTǪùÄ’Tà H™é +ãÿ%Çÿÿè?øþÿó Äæ  Ú”Ødp\Ÿ[úzÀÆiN€¥ +±€$¥–4òC@û«s7d¤þ¤øõÿó Äæ ¸Ú¡˜LJpÿ¹@€­ÄÏNí«a’6P^õ…êëaó-3æ6¨¶½ª›ú +ê?ÿó"Äæ èú©LDpÈ×»ˆÀ8Pèð¥Ì(éªF5~¢{T“6äØTf@N¬ï=}´ÿó Äæ ØúxdDp­èêÿPÀ (ŽÿÏ[nàÅBù2è Ï&Ÿ2³]ýMÿó Äå ÚLÄpàû¨€k€o­BNÅR,e˜Èpðb%@…½;µs&VÓ)ÿÆð£ÿó Äè +Pθ^DpQÔîž°ÂW.8‘Yd ãXº0µøªÐ[a“q󦤱¼÷IúÕÿó Äå ú©¸3Dp—L,€ó'½ìãv@`s,3àˆàñb®Ðî@“š ’a¹­b0ÿó"Äç ÐÊŒ}pG35EuÓ~i~˜¿øÿw€8¶Ÿi»,Xhm˜ˆóÇEÐ$ +"ÿó Äç è¶X~L N:ºÿI$fùŸïÿéÊ€€¨çaÏ3Ù åKœÝAHž "Eÿó Äæ °ú‘˜dÄpËouuòªw;¼Ÿ_†@‚€€ \h–ÑÆT™dÝöÀW/µÿó Äæ  Î”ødpž´þ„ú×îÚ倂Ȓ€ìÝåÀD©Ö~b3€åRó;Q¿Óÿó"Äæ +¨Êˆ~Ls‹oÔWðcy>°ÑPd;…‚°^”l³3,\=î§ú1?íö…ÿó Ä× Ö¹¸3JpÉÕ* 'd… G·Ã03„)€åÖ pæ«yÏyI˜Ëzÿó ÄÙ  Èeqÿ–÷Ù.€ ÌÓLá½2àÒHÑõ|*ef¶q¾š…Ëú=ÿó ÄÛ Ž¡˜NNL:Ÿm@´mçäG¯Æªå °‡á—¡@¨á€=Ð|áSØÔà ¿Ôÿó"ÄÝ PÒ¥¸LÄpÏ=å uìPƒN6É!Np Ù‘@uˆ¡™i·œ.¹þŠÂzÿó Äß Ú©¸4Äp”Z½‰.倀š1yQ@jË8AÐÊ-ëü’…þ‚þ=ÿó ÄãxÚ©˜KDp?ÓÁ¸€ªp®5÷£{ˤó¥£ä ÄcP>êç_¼a×z—ÿó Äè +8ÖŒX}pW”z“É€„0\Ô04þâ°ë"5ö)"ï÷ûCÿàÞþÜÿó"Äæ ˜Ö™˜dNpº€.êW 3—¡+õ#ÌK‹À„$'Ç“ÞP?ÚeÑ}Zþÿó Äç ÈÖˆ}pÜM¹ÿŒ`À +0o!g÷ šŽÕÐGæ—‘ùcõÀ¿ÇõOí•ÿó Äæ +ʺXKDp¨†ð^6RžðH Ð#M“ + +p½ G>ÜáîóÇ _ÔSã·þÿó Ääé®XCDq7Ñó—øÖBÇ`æøkø±0ͤDú¬ È9Æ&ˆ{žúQ΀_Aÿó"Äç +HÊ¡¸dÎpßø‹ämëjm…±·8 +\½Ã—Ê¢ÌO¨(S­¼•A‘7ͼçŽÿó Äåy +²X3DqˆÀÃêq0aÄÐÔ+‘{VÓÇ,Îé €6tÇ÷Š1w¿äW%ˆûÿó Äê +áB•˜dŠqÿé€Ê€¤œ¡–\° +«iƒ°ÇÖ€mäé$·ÜÅþ¸UõTÕÿó ÄåpʘLÄp¯þþø'€³ã§Î=Dz$37`¤HKÁ€ú¢@v ÊÐ?Þ`Oýýÿó"Äê B™¸{Jq¯õTî.€íÐCd3‰ã )°ÔÈõJ ‰ßœÕ¢l¡ÿ…5óÿó Äæ Àö¸|Êp%Õáî°Ý<ŠìanTÒFÐ5DPÂÄ>I¿œo˜Ä?ñ¼ÝÑÿó Äæ à–ˆ~PL+€€Nç+žO8컵yv" +à È(‚–&Ò=òÄ"'¡üÿó Äå ’”~LLiÄ{©‘êÌI#7³Z|„yš +e£vðE”ѼÌ÷¬Í€õÿó"Äè +!¥¸LÄq$ÝK|•@ +ãÀŠÒ8#ªÅŒÈ‚ÃÂsv%’ŠKwŸÿû¡ÿó Äç øÊ”|ÊpÃõˆ•ü ï¶P0€ +À2®Fêk†Že!ž4À…–kFŽ‹ûÿó Äæ àθep–‡‰þ¤ú‚š€„(ÒÁ’¦ÔaÚAð¢HñiûÔ·øöbÿó ÄåÈʘX\p~±\Ñ¿ÿƒ€ ¶îŽˆÙ`0ŠÎ“%y.µ dá“{öX½(kõÿó"Äè +€ÆŒø} +pAÔþ€ ]ö +¾õ€óÉè²} Ñ@ì -Ó䉭ò`xþͨÅÿó Äæ ˜ÊŒP|ŽpßÿÆ;è€C?pƒ.[sQYà ©E€öšª·æLú3åAÿáÿó Äæ ¸Ê(~pàÃÜ5§­d>#·^bœOcüÇ¥µ²Ç>wÿÿ76h_ý5Tÿó ÄÞÀÎ¥dÊp¯ÿÊ·ÖÀÀãp0ž…褸ø™0`Á•dfóŸš9>ØÔ´ÿó"Äâ A +ªX3DqþÜgsú2œÀþGbn +:Pì]š~M.4Ôݺ–>¥'ÿí<-ÿó Äå Δðe +pë.Û/ý€5Ù»¬Ÿê4!:¼'BŒ8ò¡¢bDÝC€‡-ÿó Äè +A +•˜dÊpOõ˜¨DÎßÿ)þ Ö˜Õ`pfG£º!‚ +I&×h|UZÛ½Pÿó Äæ Î˜à\Êr¿òz²…ý²@°°&Þ!°äõ\å-VQ4À()¾ÚíE‘Fúÿó"Äê +ùŒP~NpåµüÌ68"|½Ë¾„tÜLO8è5©dD‰kÖë]¦üßjÿÿó Äæ ‘¸KDpñœHZ ©À¡ëÀ ™YTSúyuòu©Œdi"è/J¸öôzÿó Äæ xÖ X^ pŠüÕ˜­€µ8ñÁT˜>QMüCj$¹3]Ô`}o ¨Lß¡>ÿó ÄÛ`Ò 4Îp÷«ÿùYPßžÏa­fHsMÉ+Diæ)€n0ÅõªÐë󘥹ÿó"Äà Ö±¸LŠpé¶<§^fÖ@\ÅÌëh@n£ÊHY‚ðK›5ÿ3týÊÝÿó ÄãøÖ¾xKDp¿ÿð€€(umP«Âê—2H*À×3 i¯­º1\1ßÓ˜ÿó Äæ Ù"¥M +pµ7øp ( DÏ`j  Šô³øbÀ<\-à°K–ýb0‡òºÿó Äå ÖºXcDpýFÿþ +€¼@@¢€] ôm84rI›W¹ûW™ÿó Äç ðΕMpćÿ+‡@€ +æÊíQ>"@ˆÞ™\rýõÀK§‹¥Å©¿Æã€Ïÿó Äæ Ñ•LÄqÿÐêXÀdXï°¹£•\¹*à¨Ô‰§çb‰¯¦Ä÷?•ÿÿÿó"Äå 9 +¸LÄqùu€AÇs—÷.r€"` ‘®ÙptB½Y +Šï¢=ŸpJ¶µ}ÝEÿó Äè +I +‘¸LÊq@7¿&·}`Ê€ËÛ% нWÊ—¦3ÌÁŠÍ­6;Ñ|õ ¾ÿó Äå ÆŒðM +pW:Û¾V€ v1)²6®g¹åÛ2‚9•¼îÞÍ+nìTà&;ÿó Äç +Ê„xE +pòJÿP`=Üñ›Dø¾*Ò¹É"æ h bNŠ1«£ºþrþ•ÕH +ÿó"Äå @ÊŒð|ÄpQwü…Àh@ÇËÑ=ƒFß{ùò¢ Ÿã=µ»Ãÿç°[ÊTÅÿó Äè `Αp~q?åãÀ@ÓvšÄ;“N"Úêt À +"xO§Ù+ßíý×:ÿó Äá ’ŒðNŽL<}ÿ¬`&€¨¨ˆVªÛri›œ°m ¢ä8‹².Ê×é(cÿCÿó Äã ’‘¸NLÔWÿ‹OÀ7@OlXýNÌñ Ârx’õbni¸¨kµ¿ã¿õ\OÙÿó"Äå (’€(fÔL]¾:ÝûÔ`Ö€õ%"Uˆ^ÅC¸éx¨ dQZ‘vþ`æù§ÿó Äè +PÖdÊpW*·ÿ‚@ +#ÙZŒ/°Þ6À–³±¦z8PÈÇ•{žì^î¿4YÏ­ÿó Äå ’¸NNLÄ¿ šI¡Áô„k’!Sj߇ 8’^Ù©?]î?­~±¥(Gÿó Äç ðÚ‰¸epÿ¿ÿ`Q’W€!C$òè´ÅÊ’§ya¼*÷FdÚ-=æ;~ÿó"Äæ á +|ØMqßè¨üHg¤/S§ée·­Þ}Æ5 ¾s©üiÛtЬ{bPÿó Äæ ¸Ê¢XzÄp@ä@À5›Ù×\ÑÆ4uMŽŠX82 i2A&Uþfáÿø¯ÿó Äæ ᑸMqÿñŽèJLÝf&™›óÎÒg•BD + yolÏOÀHAßJ2ÿó ÄåøŽt~„LåÝMX +@]ß6²<Ü qÄý:S$Ÿ!ó¡c˜DJ$°ñmÿó"Äè +¡xxNŠq"ñvÝòeëœúÀðÙš5#F¸(ŽW‡y?<ñƒí=¿¹Õ‹¸ÿó Äå°’lN„L¯é(9Ò\Ù 88UÏeS¬­jõ(XI‡/ +톩rYD¸jìÿó Äé +ŽpPfJL¼ëöU`à06Ü¡*À%A®E@Àð#B(B%tv_–~uÒÀÿó Äç © +t} +sˆgóPÈ *Ó$#Íbf׳~umz*yA²¬5úÞ?—ÿÜpÿó"Äç +’tx~JLZÿó"Ää (Ž‰4ÊLÅg\šòÜ®³8€¿ªÌW•`b¶ÐØ@HÐ8éˆ + `™¸›ÿó Äç èÖtPfÔq5Ïí–?Fý}¨ßœú@4@cÁÀ#DÐ/ØxýpžE”NÍgÿó ÄæðÖtfTsþ£F5Et\Éú3¶Ð£NƒD‘bW»J¡äY·ƒŽ,j,?ø˜ÿó Äé + Úh(~Úpbz •F½ä¿?ô€ ¶ÐXVÑ­ r‹nÄZÇHXâF»ásmFÿó"Äå +ŽžXÆL>¼§mhúÿ@ ð¹Ãù`•[EvI+!½\Ö¡c +Ú·¿z…I«uùÿó ÄØࢀÈ~MGû¾ ÿp& GjnP°•ÄœáÑð½›ØÿÔþfví¢°)ÿó ÄÛ Ö¸LpQÏ•@°´É¹ÃgA@t_¥QùA’­Î9ü–ï¦OÃÓ³M¸ÏŽžÖwéý"m=P›†°žÔŠ†ÿó Äæ h~|8NNHh΄•o;Îé™ÕBw§-ѼæßÈÁ”jB#X¥›–šèO‡ÿó Äç ÀÂpfNLˆx““¾þLˆ¦ÏÉ3o-gþí(t€“^RÞ Ì +‰«ÿó Äç +Ât¸~ŽL%Ç;Þû«üߧÈÒÚ,@Šß€6ßbíŸÊ–\eH„IÓŒÒ+ÿó"Äå8Þ…˜ÆqÖˆ€º©nøŽh­ê{n +‚ $¢§W Fo~[› jì,aARww<ÿó ÄÐØrPN H¿U¡Àƒ¯#éÏq7è€æÐ(&¹­Azô ij()O.½ž9ŸÑ`ÿó ÄÓ ’ˆXNNLÌô9ûùà@-  XÃd+ï…¼«<ãý+ ëgG­Ÿ çöµC(sÿó ÄÕ ª„XNLHBx?Tn-É’L !é2fÆu¾,˜&è1­?LI¥t$üqÏî¯ÿó Ä×ø„XNŽL‰˜ð&cgïþéÿ€ñÞtQŸ˜ŽjßñEàµ=í%ÞkÆÿó"ÄÚ Xv„øNNHN©Ë¯Ž>ÝFÿ@À *0'íÍÂ~1”¥É¾oØe•¯ ?Ì·°>Lÿó ÄÜ ’xXNTL¹âÛԛ䀀P xKO7Ô"¤®/ìúe²J´óPa2NMÿó Äß`¾p(NšMøõÿòEz ͵P3æÎT¨íb«!Üe(á²m‡ @È|×-ôÿó Äähr}NH¾!ù ÈÆ$ +eb¨Ð¼VƒTÔ_RH¼'%ô + .‹Ý?Àÿó"Äé +¾|È~^LŸÿ/gþQ€‡ jÙY ÷¼ùU8O·Žõ…©WM×bH@ÚiÄCü¢ÿó ÄÝ辈fLYÈÀÏ•°s Èçâ]à±OP2ÜסyÀÎå˜:\°ÔÙ¯ä³ÿó Äà ¾ŒX{ÔLæ©_ }  H›GøÍØ»0\Y\(¸ÄáV7¼lé ,ïÄÿó Äâ ¾x{ÔLÿ/ò„¼tfëÖ­¨DÀãñá)”‹µ˜qnç«]‚¹íž¡ÿó"Ää ŽŒx{ÔLöíÖsä3),4YÄë"€ïNC³·90j>ýÆN}Nø›½ÿó Äç +îˆx{Nq§ À¿ò,G\8éàÔ– BÍQ-6«®!ÔV Ÿ/î‹Aÿó ÄåÈŽˆ8{ÔLnëêrŽÀ šl»¤Ö'ñÄ^ÐÑØÊÆy·%~»{¸Š‹Lu°wÿó Äè +X¾„x~L¾_¾1Ȩ€¾àUÊ +¶Ç^«â°.Ax‰hËAJZ¸°&‚½ðþáÿó"Äå ¾ˆx{ÔL&ÚH+Ò °ÉÀ;ð;˜GìàG7 ÒN.¹’B±ŒÔâŸüÿó Äè +P¾t(ÆLVÂR¤ÀwH1jêŒÇkÉ”uL +Át$Ê+¶G½¯cãµ +âÞ™ÿó ÄåøŽ”X{ÊLýÑH¥ À÷D÷.d¬À¦€„ðW†²œú‰†™­º‚xvH4åÿjÿó Äè +¸{ÄLŠÔè³Ù@ÿCSj.Ú3—Š–à®p€h¢H‡îXUÖìað¿ â_ÿó"Äæ ðÂŒ8ÆLåŬRÊ@° MUÍØ»XÉ°•¢Eu¯_Õ¡x›÷˜{ÊsîÕàÆÜ&ÙûþŒm€Dè8d1ù……¬:B¸Ò+¦{I54åUÓƒoÿó ÄÕ˜^ (N*ÛÁ>nùP!ˆ¬ÈÙ£…íÆI± X>óJtÑdi˜Û[àßx‡ÿó ÄÙ ¾©KÄLfŽwê%€%Ó(ÉFu¶‚ëUÈr‚q +Ìx›PSœw3-Z÷·?ïÿó ÄÛñ \ No newline at end of file
trunk/orp/orp_soc/sw.old/mad-xess/songs/Beethoven-fuer_elise-16.mp3 Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/songs/Moonlight-16.mp3 =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/songs/Moonlight-16.mp3 (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/songs/Moonlight-16.mp3 (revision 782) @@ -0,0 +1,2719 @@ +ÿó ÄHÀÿó Ä'Hÿó ÄNHÿó"ÄuHÿó ÄHÿó ÄÄHÿó ÄëH…§½îýÝÝÞÙ0OLbˆÿó"ÄÿH É£nˆÉÛÕ +\$Š= +`ÂädèöÑ·ª @Å Ëÿó ÄÿHš1à0¸ŒÄ ðŠA”ÎǤqP¬í°iJLu2bÌJxöËÌ +.p4ÿó ÄÿH–`ðXÃÀåA@èÐF¼ ¡ +,9âì‹%@Âÿó ÄÿHÂà&ÄhP2(Á¼¦`bDŽ(&‚;\0¡Hs„!Å@Ç‹ÿó"ÄÿHÀn€à åÂvƒ–9B@à +@„(D¨Ø€`0´ÿó ÄÿHO€2bÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ1”w6ÿó ÄÿY=ŒFHB2<6ÕƒKÁfïÙš99ŸË¼lº`µA‚Ž5:lbà_ ÿó Äè/Üœ @A?ÜI”xz@±0Ý>•gÏ¢™@“%ÌTÊ¢J&\Y.R ‘ˆeÿó"ÄS<‚@›h%±ŠïÌÏõWÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ¥]ˆè ÿó Ä +8zxØR0t\7 zŽR€]ÏnŠá`GHíÅñ§¿,å=·]ïüN<5]¥ÿó Ä ŽŒ(ÆN +=ÂZ,928ÒKNE@×ŸÖ aìψŽÄ†'¡|[Û@€-ÿó Ä ÖÂÄq +¼tŒ6ë€Ã/´ÑŸ£øRl7°üÊ¿­òÿÿ/¬€¿m–ÿó"ÄØŠœxÂÄL™ªS4ØÈ“'˜“ƒ[|¨z4¨¸'ýTz“Óe`˜ eµˆu¸‚\ÿó Ä + ÖX{Dp{»¦¥TSdA[0“ÆøÔ•Gùüãÿý8ÿú@_‡âÐîIñl›ÿó Ä ÀÒœxÁÄpzƆÄà(H ¹Ï¶©”?ÿÌØX‡ýé4ÑÄÒ®B©\Ó°ÿó ĸŠ„(ÃÎNSð¹B\:£æÁ“˜mùD©½n,‘F¼%ë¡ZÀa ;Õÿó"Ä ÖxÃDpU2TÌ¢ó§´8Þoÿ ÿú@ +ð +µ^ÔÊ6Ì×µT\íPˆÝåÞüÿó ĨŠ”PÃÄN£f™Eà†­Òò¯T¸­†ì¯/&f +tü¥ÕÝ Ž|²TV +ª +ÿó Äø†”xÃÄHx'z,µ ÿÒ¶7BjµÚë!)Ñ$=ý…Á™í"~ÛÄ~ ¶ÿó ÄðŠŒxËÄL»V½_¬ å uD¸´#KøB)Þºxp\Å\ƾQBÏQh¶·ijÿó"Ä! Hv„XÃÊH;g¾´€]€sÒ},šÙ¤ï‡“ +tÃ_™d~[+ãC7 œÊ¨ÿó Ä#°¢”xà +LOÿPùä3lÙ$³˜P°_ˆ ýã:ܺì{×}·ô€K@ÿó Ä'ˆn˜xKÊ(jw7j‰læ’dg‚ ðÑÒIûSÔ=íªøMUJn;„ðÿó Ä+ˆ¢ŒxÃÄLVÐ,8?ʬ• ‰ ²°üÏ9 ­å×:F+>€³ +DžCn}mÿó"Ä/ nˆxfV(?SÐô#pÿ7rÂ*=¾*‚Úm†\ÏêÔ³ !pL â„í$ÿó Ä2¸ŽPÃNPdÓtSÓÉjü}gÔR”ë +ïÿ•€ +¦ +?X=t™u‰“Þ®<ÿó Ä6ÀnPf *s -x¿‘mÊ¿¿ßðµÿòà?ÿß‹òHØÙ§óˆæ14 (Ò”x„pRŸØ‹ý»EúÑ€s‘§G°Ód + AóèÎ{Nýö{^‹$ßÿó ÄAvx{HMumþR ü½! +!„w-ìÃèSŒ_2iA®SˆTÿL€èÿó ÄE š”xÃÒLmJ ÿ’RQÎÏ-±{K÷]?„Õ×ãGî´~³·¼³©f…hÿó ÄG°Ö˜Pz„r m“qX˜Â†Ÿ… ‹9‚¬}g~*Žp7áÔ39GÑÔÿ®ÿó"ÄKÀz”PÃÊJðÙÕã •cƒœð,4·~| ?±E?«’r’¾æ-ª[@s3ïýWQÿó ÄP¸~xÃÊHÊN7•Û“fAGÓ¥¼Ç¸2ÃÆñ€I@C óÉ“á„¥¿ÿó ÄTÀ~˜x{ÊHT»´ TF¯þ­Hvô£ÿd Gñ +Ì2ƒ2‰r!D.ÙÌ2ƒÌÐÿó ÄX˜zxËÖHcSkéËêiýmÿý!¯ÿêÛ@1øS‡p {œö6ëa +vá™ñÿó"Ä\ 8ŠxƒÌL”ÈØ‹Ú‰ƒ‚Î~V°º-ìO +,ãØš¤ðFBÔ@ú‰°Jþÿó Ä_Ö”ÃDrvÔ;[–™tÿw® áoø«œ1LÆ¥Å>$bhªì”|¶A¸”ÿó Äf Šx{ÄL„:ý6Pí¶ÑV×z^ ºˆa,CÀI7¯Èøk;Š’$Ò¤=ÿó Äh ~xÃÐHO­Ï}%ÎåöšAé¹î#Øj=\¦ÑNè—ã}úþçÂßôÿó ÄjxŽ˜x{DL  + &2`I?‰m@°ÔO}y9_ˆ`ºüšîÝœoüÿó"ÄoØzx{ÄHKá,oNKÂ' M²22±<3’)Sû TíÞ¼ãP"ýø€ƒÿó Äs z€PËÒH“Ào +ydð­{tÇm03C ¹Üòú™õ$À’çZW ‹ÿó ÄunˆPKÌ+„Âðé +‚e„;Ÿ>OÍl¶äñHчïg•ý¡ FP飼Úÿó Äyø~xPÎHô3"•²ßË6–Æ€™©ó´(DPûÍó`ü ¹ì‡NÈBøõMÿó"Ä|ð–˜xKJL¼±`¾­ÿ— É÷ +ù#%QjÞ¤ ÊYãÏlxxR)$9ETœFÿó Ä€ –ŒPÃÌL™S×Mû=EaÉùVûIõ ?ÜÆBÓß…’$¡µàV›¥‚ ×%Hÿó Ä‚ØnšXN (ÂÅñf¨ Fùo € » t€Hž’‘zH%¥Œ;Œ85}yå™ÿó Ä…ȶ”PÃÄN–óåšp¢•Ò€ðØÀ€äxi³•8QGškd ¢T +Z.Óù©aÿó"Ĉ°²„PÓÎN +~qmn €vÀ +V—¿·éàÖ¨ Qˆ-I R +«ß8Èß 2r^Ãeÿó ÄpŽ|(ËÎL^æzÀ]€+ˆw`Щq6I:Í8˜8zpˆäwøÁ§~«¹[€ÿó Ä’ n•¸KÔ(ðÊ(™qgMº ¹‰™ˆ{%^Ø#,í‚–ÁåèGmâõJ¹ +€ÿó Ä”àn€PfZ(¶€˜#WRBŒƒm=µ¯°ãÂ&â—: KHAõ)ý $É@Tÿó"Ä— P’‘ÂÄL^ÔD[x€\›6¬5C\ÔñÞ¾€ÚÞPÍÒ=u¼À©híê5Æÿó Ä™˜rx{ÊI=Qbƒ*b/¸Ç”rZ!{Öþ8FÖøÿÞ{]NÍ ½°ÎÈʹ1ÿó Ä r|PËÊHaÈA3xÕ¥gdb NlSFUø$Ú^xZ¬Õ «ø©²Žˆ¼§Z +6ÿó Ä  j¸N(d›=SÐB¾WŸ·Á~ç×5ŽAïn€?ÿÊÚ“†9b‘! +q*Zÿó"Ģ蒈x{ÄL`aD<ýxÑ—vƸäFÁè×èZ=* 5æá,8ƒ™]z-¥ÿó Ħ ’„xÃÎL¬Žnö?ðÈ=h­ì#ê”®XyQ H¥Ñ”"øzFÙþ®"\(Dÿó Ĩ nˆxf(I͸M]†g+9 r9®Bέ$€Á@DÝê>Ó£}zWèÿó ĪÈÚxz„qt‰á‡ê—Wй®" +†t„$¶Â¬TÍ®Ãx8‘S)ò{·ÿó"Ä­ @n”x{Î(XÚϦ— Ëh”Òfwy:[°‘Ò½T|8@©Äôj–×ü+¯Ð¯Qwÿó Ä°€’| Æ +N¦í ðËê¬X9ÏYq‹r’‡zRãIÑ°˜:è<ªW"°ÿó ĵÀrtÃÎH +°L´FHê0±xKRœDè”Qê ¨6Óé¿_i +ceý€ÿó Ĺøjˆx{Ö(?ü\ ¬d ´€íMn_@ÈIÕ±8W¥g.zÃŒœë¹Âà  ÿó"ļ 0n„x~(ÉB, +ÍlHuS¾ŠQi€‚àB÷H~!—’ÕEûV€vÀ 1Dÿó Ä¿ ž„xÃÄL/ÎÕ".ܬ-½´·TÃ,édøW_ÍÅÐR·Ôíš*Å¡$Ê«ÿó ÄÁàr|Pà +HV@!SØT©GÊëö¢(°I:LÿÍ[³³”€ü¹¡l¸A@·ÿó ÄÄ nxPÆ(//ZϳÜFPÐ9â‚øÕ½o¯Re +Ï8Ǥ™ µÜêx!i0s4ÿó"ÄÆ Xj‘[(lT±aMÖ +óñJüÕ²)þXêk}X€´$uÉì`ô' +´Â ÿó ÄÈønxP~(Ô)Y â$á†ÁŽ¢Ì"‰Å^¹9 €- Bl;ƒ¼Ì%dJ4ª¬ŒFÿó ÄË ¢{Lˆ6ñ.ÝdMâw%¡öÉ¡}`€ÿð;U'˜þc±rh€j쇢Wÿó ÄÍ rp(ÎH3ж¯oRº $ç©«õ€€6ÀNñõ¾ö2[¥Áiäø2Âÿó"ÄÏðƈPyÄr´Eõz‚~ðäd5f”@ð +CsÊ=@žB„ŠÿÁ͉­¯ƒä_¨»l¼‰3êôË‹gäÿó ÄÖ r¸{H'ô€¨ +Ѻ^p2c°…fšÙÂÏS‰ëf$¹ðK:¡Þ!U +:ÿó ÄØ j{Ò(šX–ëo^ 8k®,Ð1ååK$ÉOíÁPœ}_*]gÈ­ÿó"ÄÚ H¶¸{L§Êúü dp„Ó–ÂT6é +!Í&êWNãÝâ#ñe`Ï-xÿó ÄÜ ~ÃÊHDݽ îØ ­.?ã~ixÄ\êìW7+1Ò¯XñXó*Yÿó ÄßXz€PÃÌH´аKh›­ÊqõCÓQ㣠ó΄n%’ŽXGÁáØAÊÿó ÄäÈ~‘¸ÃH•TD…€€ÀÔ¶…`ì©’:E½K ¡؆ fDxO&à“¤ùÿó"Äç +`~pPÎH™QÍߤ𠤒§îO‘‡¸+(Ë6º9zF»†ü´åÕúïÿó Äå n€x~T(8a¢Î ü ²©ŸTŠ%IþÏ0&¡~R">9¶—RדoC¹ánÿó Äç Ø~xPÆ +H×5nókÀ%›`7n½>¤pœŒg&·!ÄG¼¯«ÂA•"ðxÿó Äæ àJf$CeÝH€»`2Çcòÿã ÈäŒê?͔߲¾~À}*ÿó"Äå Hz„xÃÄHa-¬¡ +ž ¤n¬½Êžq#a+b rbZV@д$õÛŸÝzÊõOÿó Äç ðz}ËÐH¹'½ Åx"FZg PY²`1³‚ªÜàcB$0^¿°PŠ*2é³ÿó Äæ °~|PËÌHx¼…¨ÆÚ$Ñ +…i„; 5¼HŒwi.~‡±×ÚoÆ=Û>ÿó Äæ À~xPÆH¹Ýÿ@œ}T#Š¤ˆŒÛoÍHd©³JñíJð<ÿg¡­MCÑÿó Äæ ¨z¸ÃÄHtc{S'­ V‰Î²™{ôª%šJjœ-7âFé[/ýµ½£ô'øKÿó"Äæ + Ò¸z„phi]€P†M èM6«´} šlŠ0BQÚ•D­R-÷Q|&¬5ýÚÿó Äå ²€XËÄLÏâ} áû‹­yÊRPÊá D;QAnš.úíÏŒ®¢5ƒÿ Ê=ÿó Äç ð¶pÖNÿ¶d¬À!@sóeç:`…)§ˆ¡šu,¬ +WùCbüçf @9‘´r=6ÿó Äæ ¨²pÎNÃÔCX-qâ¬*DÄÒdœÅÐw»°Ö)žgõpÒa(/I¨Ïÿó"Äæ À²hÖMáè£@ 5+„ +ò`" "Se2YS–DÊUræÞ¨eÇÑÕW¥ÿó Äç à¶|XËÄLƒßºI©¶q:wÊܺˆb$Ø€‹†Â‰ér³áè¦ö}¼"c’>ÿó Äæ X²lÖ +L™vÌLÚ€ ¡žUk"¨’AAìiÙh©%"ù’Kåk7§øÿó Äç p²t0ÃÄL=%\倳 +Ç/¦ü™XÓÐŽâÄØŒ®o jÎjßï±;9ÚŒÊyɶÿó"Äè è¶dÖLÐN¯³ö,Î oËX혇½†1—RžR +ª²6„,D3°ALÿó Äè è¶l0ËÄL> ³­` /fb²b¦b[¬@bI·úÿó"Äå H²yÃL2@¤€}zvÙâŠ÷Ž‘ÈálÖÆ‚D0á}á?q>[‘¨Ú^ÿó Äç ð²pPËÄLC[1_HÜÄðXm|/¡N0·ë௖ØÂœ°Æ<ô…âõÿó Äæ ˜zlÎ HÕû€üÝ2v-£ ´&@¦£ä2(¦X«mp@oa¾Üz  7£®£ÿó Äæ àzt(Æ HçÎíŽ ð ië²úç4 Û¥ó p¬$VDiUŸ«¿@OFW°¥ÿó"Äå P¢„ðÃÄLMÙz@ªÃq–“|™ªÊ 2ÂFô“aC~²Øüå·o¨aÏlíÿó ÄçØbt¨Æ"*ô³z€ÿ ftϣſñô¼‰¡ŒâÈ +»ÂÆy}µ5:*ƉÔñ*ÿó Äê +¨Š|XËÄLù &;mB?àƒ0¢¼æf2ÊÍeFàt]Þåª8õ¾-h³ãÿó Äæ `ŽlÆLfoiGYX)m.ÐÀ²âêÆÁæ[z +r·ÊàΌזç‘ÈîN0ƒæÿó"Äç +XžtPÎ +L…Ó˜™Ó@)_졘 ¡ §`8#²IµC…ÖU›ÿwûì,Ÿ4…²ÿó ÄåТ|PÃÊLŸ')Ýõ€ð5Û*¦þ‰udõ!ÁC)é*fUOúz/ ‹h˨Oÿó Äè О|PÃÄNG耚à?”ÍrT,|XåH† ¸TÁÞp.ýUüÁ¹Gõ¿êAV©bÿó"Äç +(^„x{Ö(‚±GjOÿÉ*GCŸ’-¸ÀMxµËt(‹•§úN-ÿó Äæ ¨r€xÃÎH±™ÊÀð-XéË•Á\¾Ú.š0À2ydÔ„ï6;ú[ÿ cÛŠÿó Äæ È¢l(ÖLiAñ ¨5Ëè9#WLŽÅÁÄ5,Ü +v\ûH.}EÂÄ—ëø«æÿó ÄåÀž|ðÃÄLqN•€)m±Þ·鬀%È£aµš„/Æsÿ„;0yC´­TsÇÿó"Äé +°â}¸Ê„pú:ªËâ€.ÒÆÑØ´¯ødÓS,›•hÁ„úH×ØÛU]ÿó Äæ @¢ˆðzÄNïR€< +Á˜¶î`ôÐBáJ2TYÂRw©`í~é©3…ï+:’ÿó Äè ÐÒxyÄp_w¨=¶;„ÛÉ!ð دÊÌKØóÇÿ®Äy£êëuƒ—Š( +ÿó Äç ˜Ò‘¸z„p×í«ŒB;m?½ŠfᢶßG¢@·d>J¬¼°­êrÿó"Äç ˆž|ËÊNVpªýP€ý°•ìiø¦Iôrê—¯(kXŸôè~ªM[Fòû7ÿó Äè +X²€xÃÎLK´¶Ú€9-¨ÞÅJ±HèPYšL8äHQá¨Ô‚™¨1²ëÿó ÄåÈ~p(ÎIÀßð˜è…èΕêÄ}¨Jõ÷üø×ÐœXÆ!ÿó Äè °žxPÆLAaå-PFR^dX¸.¦§' 3­O eø~@ø8‡ƒgSsõŽÿó"Äè +Pžˆx{ÄL–Ù³Ò¤GV“Ì(StVØS +äü@KØ°eN±MÐ)j|¦Íÿó Äæ ¸v„xÃÔHE[øà€ßð0>€Dàg@Ñf¡2TS—¤g…FqÎPDñ 8¡ÿó Äæ ОŽ8{ÎLäªíÀ ¶€3ÂU7”UÀDAq§°ùÀ®Q.G^5¥S²ýMlÝÿó Äåˆvt(ÎHoΨÀR€7*¯I“±« Ï‡RìðS~´87¯QõaJ/Vlÿó"Äé +ˆ¢‰¸{ÄLÏqS´€ À9XzHÌÞð3£…ßbá)ûõÐø8‚¾¶¯ÿó Äæ 8~t(ÎJú@€ÀÊÝXîrªŽhÃ’ŠÝž7ädn™MÁ²üÆÕ7AXNÿó Äè àvhÆJPÞê€6¤,ÿb1â‡ÎÀjdµ±a~RÆõ”ðf‚¶$„:¯ÿó Äç Ø^¸KÎ(7¹ 2¹hME{&évŒïEŠš)Ç=‘²¸¸_öê8ðžPþéÿó"Äæ °Ö¸ÃDpß6_Scp륎²’&ƒ]E_ÊTÕbÃN5u +/äE–±~’ÿó Äç +Ž¸ÃÄL¨Îpò£€  +Xf&EðâĈAf0€V +×ÕðguMeÿÿó Äå ¶„ðËÄLiÞ €.H¥õ\¾GåãÇLf‘‡+ÔõY¦öÝÂÁˆÍÜüSÿó Äç в–XÃLØ.÷ýÂv~MFæÆ + )*‰ìµ’xÆÔ¨iÆP`Ó6¬åÿó Äæ ²x ËÎO¼ÿH¿ Uˆö¡q^- ;ŸÆòǃ¨Ñ#«uz«¯Ÿõ+þ#êÎ4rRÿó"Äè +H²p(ÎNÈËÞŠÿ tÒæã Jè¹IŒ‚@mj„Ü,Ì°Øœ\Á¹/.5ÿó Äæ Ð~p0ÖH’‡õßÒü š—¤4ìvT çW”°  Ò´ä/UÆ›Oˆƒ•¾Ÿáÿó Äå ²€ø{ÄLÍcÍ·X&êKYÕF55ÎЖ/PÂF„ ¨dnûïý1ùÓ¿ÿó Äç +¶}˜ÃÊLOWÅ—ê&eYB`‘ Õ˜&ÙFÈÆI0=E´]âO¨l#"w0ÿó"Äåè~lÖHPm×=´€»¶Œö¾€¡‚T㣡9_ÚU\î'‚-aßð»áêã/Gÿó Äé +Ú€PzÄr)¿v EÉ u-ĬˆK|N†Õ2OUE rìøiÅ¥dDjÿó Äç ørpPÃÎHØôÐ`>å×Õó6½„ *´½ê÷¹1‚°ì”¨¦Ÿ!·+âþÆÿó Äæ ¨¶tPËÊLV½``]¶ìÁ`‡¨“ +t"”V©/ÌMëòr? H|,L™Gÿó"Äæ +’l(ÃÒL?Qo£P—ÌFŸf¸f\¢Àûo]¬ü/ ¥¤/Fèb¡ànÕ• Õ¾…ÿó Äæ ˆrp(ÃÊJ¥¿ã@í°VïTã!°[ËèÂâ寔~:üáÀ‚9†\ÄZçÿó Äæ `’hÎL9q`_ÿ×`r„|Å”v§ra:a0~$M·<òÉIóË€K!ÿó Äç +r|xÃÊH7ŒyŠÀ_ÿæH×óð8!h¤ýH¶"æŠ~râb!B–°ð\ÿó"ÄåØnp(Æ*Žóú€=¶·®—*‰0„”’Í~ ÌÀî¡6âú÷<5{dE,*ÿó Äé +(’„x{L„YÖkÿ¶f¦­%Üù3˜SácÉǯ;á>ƒËÁzÐç-I2+(Vÿó Äç +r`ÖHÓêEh 9m è¼Ékˆ(Œ­\@¦t£•‰EZj½ðš’Iöÿó ÄåàŽŒxyÄL¸Ò`³­Ê€[hWÉú%tš +»TádŠ>‚›‡y>^„ÿó"Äè +nˆx{Ê([µÿÖÂUë +-TÈa‡I–£_xQ4&o(ฅƗœ j(ÿó ÄåÐrŒxzDH`Ú€]ÿ¸–PŸ!ªø} ÖE¨…à + ï ËÊ‹i“(Yºkÿó Äè ¸v„xzJHi)ç“]ÿ_5Á&a¢ô£›P×z¨ÿÊ7r}RÔ»8ZË¥ïxÿó Äè +rˆxà +H¢³€vÜp=w.áiÈ€¢ñX×¢P³›ûkÐñQà±~æLÚeÑ ÿó"Äç +HŽ|xÃÄLÅêþí ¢-Q¥`)ÌÐQ ;=ÎMêöW‰vÀ~aîÍá´¦I¬ÿó Äå˜r„xÃHgémhÿ +IŸ©534aÆ£ëÒ@yÛG‹æÓ£s‰_ö•Š8¦Gÿó Äé +r„PÃJž·Ñ] -NÈž)ÕoUa¶„e@ä,J+{Sj®ó“[ÎßÈ*Õ<ÿó Äç Àr„x{DH¡Wåe¹$êš;Ë¡ê7€o˜$³´+Ç(ÃRæ¿ù‡U6®¯ÿó"Äç ¸¶ˆx{ÄLÖäô3ô€ð +L)ðÁõ|È“#d% ÜGò +E¹â$D)ÿó Äè Øš‘¸bÐLm +”€–€5%Ö` +FxB²9ŠÎàž¨F6¿Å,hÅ%œÕ Cm¸ ÿó Äç À~|P{ÊJJî!‰»Ë¡ Ttoó øË'Í (Â%š>Ï•Ë"ä…Ïÿó Äç Ø~tPÃÌH¼À‡¢€ä€ ¸FdŒ5ÆÈZ +W!ËPLjŸ\o]¸šãýÒ0ÿó"Äæ ¸zp(Î J$ÖÞÍð +¶jC\Z“ƒuC”<2uÃbâé¯yM¸f£Ç¡Ž>ˆMÿó Äç +¢xx~L‹ÅÒ ›ÿÀ9~©äì¬þTÇՔثŸVîXÅÓ9Î8á-à½ÿó Äå ¢xPÄLÍE@€­´ +& š"hâN~]ÕQj·¬ÐLF\ZG:ú“ªÇÿó Äè øZ¸KØ$Á»Wà€-ÿð+¤BÔÊÕðÈ;š!í1‡Õôq G¡ÿó"Äç àrh(ÎHö'Vü +Ò4­·Ó©‚ˆÊþ(áYL¿’—~7DmÝž¿}J<ÿó Äç Øž}{ÄL×?u7— íÿ·Z“L——BäÝÎy¯é€Û GJPêÑÔqÿó Äæ 8rxPÆ +H­Ùi€À +¶Ð1»,‘ñÖnèÜq•QmWÑbzõ„5™ì½žÿó Äè ˜~’XcÄH Ü5º·h¨ +YˆIiZ’hÚÀ ,¸Nàù=*·N³Ÿ†ø›Uÿó"Äè +˜^}N(lê·àk8äB£;| 6z¸óa¨FI9iz…Z…CkÈò¼8[8áCÿó Äå r‘¸zDHešva°ÀÛ0¡­wô­/ˆ`lŒZX_˜'ÏÕ|8ë÷3o=ÿó Äç +~pPÆ H_] à +ѪìY®·p冞 +„Ec¸Öv+8m#·¿Eð„þ­óÿó Äæ `¢x{L·ÿÕPÀŸðÉA@ià_&a¯Vï¾vDhOÊ6¤ÏùZß°Øÿó"Äç +@¶‰¸ËÄLDûíÜâä€0Ç}±ËW¬ V1x ã©[W©2ÎcÊ„XTú9:_Ãÿó ÄæÀr€PËÐJ£=4ü °UçqÂŽ³(20CTBF¾vQPç +뵶@¿Ú¥…?ÿó Äê +àr„XÆH•`äu À%ÿð ÀS¡lÄ QÒÜïå­BB©ˆ¿O,艡“w]äÿó Äåض‘¸ÊDLµí´ +±—Ž»yQ Á8â,´ÿ Ì'UZ×Àü@_ãXl˜d,ÿó"Äè +(²tPÖLÇš]_Àÿð‰19˜…3Pïq¸Ž'•z ¤£@ÿó Äç +n‰¸N(´(wW  +)"ÔÌÙÙt¡¡(IÅ(.ƒÅšÍXÆá=Çè¢Ô•ý +mÿó ÄåørlÞH*¿è?– 5§Ž³àãÌ…ù"”©¥UÉjŽñC; + +^äÃJÙºÿó Äè +0žtPÓÎLåWý €¥´ DÆ +ÒÜñ¦‡bR‹zU©±3æY‚Wø6¸+ÿó ÄæÈn‘¸3Ê(²ƒ©‹M~€À%Ø`4þîn•°ƒÀ´ ÉeÎs +ítòv«ç’&[ÿó"Äé +À’}ËÊLÙÿ¤„‹m´ +·ÈŠ±EÄ]ŽA!Z€¨]¾J³CH•'¥3n(€ÿó Äæ °n¸6(«Þº=~È(0+³^w€ ¶€»c ENŠô{zóŸ:ÚøÎOÇèÿó Äæ @’p(ËÎN,=³txGÌ <¶ 0—äÄÇAà8—ÆûÖ)— +m¢×ƒ#Œÿó Äè ØvtPËÌHò/!sÞuŠ €¨ +eÓK‡m¿1ÄC3u¢µÀ-x½ö M¨ÿó"Äç +`’ÃLß8âÙU½ø0pN ¬8’lÊFø³6HSæmC˜>ÙËò(åNÿó Äå°’‘¸zDL%w_ñ€¿À/—€¢O`±·@ä×tÓ,Î7ÙÕ^Tòþz–·„ÿó Äé À¢•{ÒL^h¸M¤ÈpB|ì8ªSXä3¨æ²Qõ?þý-ÿÐí9ÿó ÄÝè’¶X{LD~´jðQŽæyQ•·îXlIî”˧«ÓFÚˆ1ŽµJ5õ¬ÿó"Äà (¾¨x{Mß…ÂÑñ ø1ŒÐÐ*´ÂóÓ+Å08T±`¡¼Ð‘Îgÿó Äã –¥ÃÎL ¿¬ðn•àë>` +v–ož0jàÆk>ŽÅ+("V‡Ìù…ùÿó Äæ غ¤x{ÊL£±5 ¸ +ÅFÐáa=Ž4jTo­ÎJDH¢æ²tEµ8¯þˆoR±ÿó Äå ²¬xzNL›Q_Pí}+s²Ótü8â– Ïi9¹,q’ݵ*©<.«}¨ÿó"Äè +ΤxzFp("–ÎúÀ­¸(H ÷F¶8:7&‹éì`nðúృÕu/ï,ÿó Äè +XšœxÃÚLÇg©øïIJÒWüÁYöë^Hè/§"Ò7G?ðÏìv¿ +õÿó ÄåðʨxyDpÚ¶Xýp +êìÌ£,ÜãI Å¢v"ü5 Rý÷Íw_áÿó Äè +šœXÃÎLÛçügW¬À à‡üËi›Ár‡ìDanO"`ßË©6­1^^Îÿÿó"Äç èΠxzÄpËtU ï¬+ÿ/Å41±È’¢¨Ó-Š j÷!ÔšZpТ÷žúÏüÎbÿó Äç +–˜XÆ +L +¢ý£þ€î +ÙŒV cöeä©g8p†òJ<ÆÂ!ƒv“ü”Îÿó Äå ²¥{L9džîbáH >n  ì€=¡ó2¢ßåLLÝFß¾cu¼Tÿó Äè ÀÊ xÂDp¬»·ꀿà +Y—”yÓofTÂApˆ .’¦ÉP +™­ÄË?Á%ÿó"Äè +pÊ”X{ÄpõOB–?¬-8+ÅHä,ÑñƒU¡ ³Ž à~ò´‹º4·Ê55ÿó Äæ °–˜8ÃÐL'ªm€ÿà +¿d‹ e) tf®Ü¾œÊÔ×g"¢Cê+Dƒ'ÿó Äæ ಜx{ÚLîô  +Df{ +audBçz=%¼,%fŸ +ðFð¾½òÆKÿó Äå ²¥ÃÎLuÿJª¨«€îHÊDÌ­@dF—ŽfC^ºE5"áßíðLÊ% +™jìëÿó"Äç +~˜X{ÞH­ +3ß!OÿdN6 +! Çb^Ei6[PKóO~²§®zaÿó Äç ðÖ¡ÂÄpÖé·Ô3˜”ðè1F5Lh`hÜúö²hP¦£ÃüdPdƒrT‘«ÿó Äæ Ȳ x{LSjeË€hÄ ióÄE‚½l`¨ÓèëxRÅqòA HÔ‚õÿó ÄåÈ^­{Ö(2S÷zMù;€ægÊÒûá³k`± “Ì”l®Ï6³vTáýÿó"Äè +0²”P{ÖN$¨ ëÀõ @˱ü‡þ„œ4©¼y)©4Æׇœ¸5?8ÿó Äç +²œxÃÚL{¬ÄÍ€@¬ü€¤’×î@°´@¨ k¶(GBË,CFP–ïAÈÿó Äæ x–¤xbÎLûµÿ BvÜÌs´¡ .é]v'ˆÖçÄ 1y—÷–ü:Tòÿó Äç È–ˆ(ÎMu½n¯ÈÀ ´5r"ô5q¸µJ °J/‚G”Äv‘ß… +‡žå5ÿó"Äæ + š”x{ÚLÒH¬õë¤+h; +pÄLHo"8ZΔ*ðŒÃ±rw–ÀS¸z:t{„ÿó Ä倚 xÂÊL¨·¥Êv°·A 'l9bZËàqú7¶T¿©Úñ'Ž“fßµI–¤ÿó Äê +Èfx{Þ(+°®B@$0š’Ä@ rYÊàØb¥uœÂ š4ûƒ?ÞãÕFÿó ÄåÈ–˜xà +LžÅŽ¡º€ð +ÄaâjøC!ydȔٰ±Ÿñ!i€ šHÿó"Äè +Hš˜x{ÔL¡Ÿ*’µz@_øÈzͶS(@®'ìB¸ñ0Ù rÑx$óО„ÿó Äæ °š™¸Ã +L»ô€˜ÜT¯Xѽªì#¡ÅsáË™+$eO4 µ#¡%Lü¤uÐôŒ)ÿó Äæ àfx{Ø(·Ð +öÀx¤hd«_¨V j&Õ²ªÖØš‹äŒ”|żÙr¥Îòÿó Äå0–”@ÃÎNw×G¡ À?`¢ÐÑBâYKb¢1 ”Ξ:XŽVÞß 1Ìý·ÿó"Äë ²”x{ÐLinÄ€veÑ GœFµ‰d@Õz>ª?A°CP‹ÑÍÃ6ÿó Äæ ÐŽPËÎLæÿÖzÉPÀ +Ð]"å™®ÃtÁºZ%,‘M㊧€¼2Lp»ý\ÿó ÄåÈz¤xzFH©¦þ@aøÊg2¸¨• )h&¾,f5+_nÔÀµ:‡Wþè1x‹Õÿó Äè x’Œ ÆO NW$Qh+Åtå/l­%‘Ðê—ÜĘÖù¸pzY nHÿó"Äé +Xn”X~(j/ú¦3\0-É4S e¥°Î˱etwV02øŘWø&‡Šÿó Äç ˆš™˜ÃLÔïô€¢ °\¤¢‘Š6šüŽ¼È.ÇT NˆŽ +ð "þßAg¾ÿó Äç + š„0ÆL-§¯ú@;hÀ3 êâEqô +AT6¤Ž) +g®5Ñâ,ͧù3ÿó Äå ’PÃM*úçÔ€klŠæ‡ +¥ÔGª ª Á…‡K”Y˜ s_R#äÿó Äç ð–˜x{ÖL5ž(Ñ@=¶¶“4QÞÎÌÔØ>8¿9 +¤†4‘î`Aÿó"Äæ +–xÃL;<³~Í`¹·0ƒØý’9 ¶‡ƒòF8ÛÆ·«ƒÑ…Õ<¥Ìÿó Äå –œx{L›Åó +5‚_Ãõ{1“‚ [DW½r\Ö Æg%d65[­©¯Â®ÿó Äç ÐzˆPÃÒJ¢Å#ÿ¬Ì +L¿Ec•—9®‹,BÖýJ$·/U +\η1Ò=ãõÆÎÿó Äæ ¸’x{LkmJ4ßý@- Ù­‰H”y4,ʼn†•»Yì©ž%)G D"!ÿó"Äæ è~šXzÌH(¿h­  ul­Ç€™Ä \E™ o©µ†U ½;gs€ÜˆÇjt;(ÿó Äæ Ø~”x{HÅ)½°ÈÙ, ~XgŒ’&µ“¤²1… ±õ¦€DÊÿó Äåø’x{LSPÍ°/ã˜ÛXý] <°BÚîzí†jŠ¨È¯ÌwbÃÿó Äè +0j€P~( Õ]`ðKoĪN7ãUS ¼ * D"Ôæ X:XWÿó"Äæ +n€PÆ(O¢#L‚€=°Ô£Ž„Ôä X§‰Ú\“:ªƒnŒ)|¥7^ ´iÿó Äå š‘{ÆLkÎî@ h0m€¶±&* Ò×xY¡a•H°Ætœã’¨Ë‰ÿó Äç + nˆxÃÞ(.˪ m-™Û`5Š¨3o w±Óµ€1À¨*•§"lû˨¨òÿó Äå¨~”x{HP+½•€ÍÿW¦š…D]Ê’Ÿ,?5‰ž¶Bò²jóDÿó"Äé +XšŒxzPL{ý=)-ÿ…¼[E¹$µ¼‚Ê)Ó +¨Â0¾‘p»Ü×±—ÿó Äç Ж€PÃL™èJ@­¶À»JœœãÁ.¢0ž#=ƒ2i¾Ðåè„LvP½cŽ0ÿó Äæ ¨zŒx{ HjM›þ €´#¿CÕ ä˜n"2é%WŠaà§nCãI¦§j1ÜÎÿó Äæ @nŒx{Ò(‚ï*d¦0 +³˜ºµS6/vè{¨ËeW=@1WtΔãg Êp·ÿó"Äè +Hn„x~ (üg3~€·5Zç˜`Έû§8Ñ[üèV +ÞPÝ,©ÿó Äæ €®”xzDLέ#@/¿ûBóGˆ /ëÂfÓŽ7#+ŸÍÿ ôc(ÞdÓˆ1%ÿó Äç Z”x{Ò$ñf¦êÀó¤™y%ÒöÈR7 ¼©rÖH^^·Mþ‰BƒxÓ/Ï@ÿó Äç à^Œx{Ø(JÿÔ€>üý€ÅoC“#㲪÷’•Ê+&¿x¨ÔçP‚Ò¢;ÿó"Äæ + š‘¸{ÊLÛ™|Ü–úÀ+EVbK]ëhð’v»-–1§ ›R;çì(×Ê´¾H¬°ÿó Äå šŒPÃÐL³þ€hSˆÒE`–“ ÄÞ® ]ŸÛׄ}4Qµu߈ÿó Äç –•¸ÃÄLÎÒ‡}Õ€í~à–™ráãmãÙË8ŒÄV9ÿpäaÑÜÄ=–ÿó Äç +²”xÃÄLtÒ§¤mFU yH PKÀ4YFBª„ž‰V6Ÿ×(J Ëëyxÿó"Äåø’”PÃÄN5zö} Oÿ›8–v‹|Jüĉ¯Ä¦aÒ+Llÿó Äé +–™{ÄLÝG]Šü +Î32!CL½'aôð;™=JV8fDúãÍR€]Ê0ÇØÔÿó Äå ~xÃÌH¡jBÔ~üFÒÀÖ L-Rh¹š ?˜?aÎýGæÎZQÿó Äç +²Œx{ÊLí@hR·© +_–¶¬¢tˆF†4€O 'YeØ,¥ü:VàAiÿó"Äå 0’XÃÊLq&÷ÝÖOÿå<Õí„À/o‚¦H–Ù&ýðƒq§÷ˆœX«¡Éÿó Äè +²Œx{ÄL¨S]z€ 3JI®“[‘w)vœÂ$Ø3r€tëH‚ÿó Äæ €^œxN (U`È€»ð.ã»’¨j:äÄêÀç¬Øj§Z2É1…ëþ¯ðÿó Äç + ž€PÆLa¿Åuæ4T¼ãÉÌ%³(ZsX7š&ËF#üvF×m¬"<¿ˆÿó"Ä娒˜PzÄNù_vnž<Ÿq(S@ˤEcP}c^~–mõˆMáa«øƒ½ÿó Äê +x~ˆxÃÖHz‹zú€ € xñ +‹µ~YáHxmO;xZ[ØmÎ×]v?æÿó Äç +š”x{ÄLþ‚¾[¨  †2™n8<ƒ|SŒ?áEÉ-‘µ•äFü«T¬ÿó Äåè’™¸{ÆLü¿ãÿ0€€»:½XM^öäøÑ)(ir }ŽþD Pr·ÑÉèÿó"Äè +ˆÖ¸ÂÄp0Uø¶I€]ÀW¤Þwòm†TKË.A2Çàn=¶ã 1TÊâ»ÿó Äå ’ÃÊLkõp€/ü J§ЬÞ, +¡ +Ài‘Á$?˜Oiõq4% â1ÿó Äç жŒXÆ +L(v ü L‘jC¤°¬›xT!AÉÏIŸfðJÞh³ºÿó Äæ °¶ˆ8ÓÊL¢lm+pÂÄ$ѵ¾C…y3KOw`‡ +qÖ±b +ð6þì< ÿó"Äæ àÖˆ8ÃÄqË?Ðï =ÿ1ObçˆðW€×°r¯$VÛˆº\J +oʃýÅ•U »ÿó Äæ Ȳ™¸zÊL=õRWNÛ¢l"-‘@£ '؃PÆ*æûbt!q@lkøáÿó ÄåಜxÂÄMÅù‹wuMø8\¡a¶3‚èx°÷£t¨k|—£êáˆ{Ÿzÿó Äè +–™zJLš€wü c« åÙj¸½èL½íÍA_H6e@U ÿó"Äæð²”PzÄN9÷²ÍÚ@-ÿj'ø€}VJ¤¦ûvW "ý¥á« +©ÏU@ýAôÿó Äê +pzŒxÃÒH}ú¨ÀÆÜ­ &å`ª¼2·ðÚÚMÞ[Éè ° Oÿó Äæ ØŽ˜x{ÄLêʘÆSX E1ÏPAA~Ýâ?Z_]±TO0 €Ÿ–¶õõ0Gÿó"Äå XrÃÒHŸÝë×èànž6L|Kñ‡IòTŽD:°•š’oÞ™<¹YÍ®ÿó Äç +~„PÃÒH=Gž €°ð²ˆiAå¡„HåpP«®…À)™Ó{Õx“A×MÚ[ÿó ÄåÈv”XzJH?ëw €;`;>FI‚@!ŸB7˧Ġ‰PÀ{þƒZÅ*_9X]¥ÿó Äè ÐÎXzÄqn +^ûˆh+¶Õp¿‚·ÍPbÐa8»H¥›uŠ‚‚ìµj%âìÿó"Äç +(¢xÎLë7)z4€ ,ÄÒ*™Â4z‹ 挦ÛXÀw?ì„Q‘Ä”õåªÿó Äæ €vˆ8{ÒHoõ€ü>í UH¿ƒEU¡ß6ð˜€æ…ºÞWa±Ê*œÚüŸ”0iÒÿó Äç ¸zˆXÃØH¨Ñé€@RÉi@q ;O9q Xœ°«ãCÊÒÂS=3§)¦×ß^®ÿó Äç °žˆ8ÃÎL[ÿUt€0ÆؾÂ8!ãôë^‚¡ˆK¯ÚÁ{Ê!M/ç”ÿó"Äç +@nŒØ{Ø(Zwø°À’€2ŠÚcò‡ýÀª°2 µ[/UxˆåØ¡ì`w;Iÿó Äæ ˆ¶”x{ +L÷_X€ Û¸ä®U4á3à×× Š5Ð7GÊ]Ô.=.PßÖSgÿó Äæ žŒð{Nÿµ£@€“5 +¸¬Â4@R%Ãø8ᾨñùó!AŽQÌpþnÿó Äè ÀžŒÃÎN¨F£ÝXÐÀ 5†¨y"”±˜ž”MA%«Q`-ì ö²ÿó"Äè +Hž„¸ÃÒL?·õ€, +Qä«â+T”V¦‚æ/4m–a7ƒÚ@bˆ½AŒ§–ÿó Äæ (¢Œ{ÖN?=Ö°â1øÕw]ÿsNs\¥/NšVEpK™‰ÕIZß„ÿó Äè +(¶‘¸ÃÎLuÖúÀ€¿üÔÚÉ8YˆA=ZU(~€º¦3ùšÁ8ÇÕ·Á†ÿó Äæ ¢”øÃLÖ·ò?Ö € cq'¦¢·­}%Àu®µÐÄHšì\îˆI—ÿó"Äæ + ž•¸{Lä+;© +Å€€9I˜fС¹m¶‡˜\[ôŸH&4üû}AAi<ì[Hÿó ÄåÈv™¸ÃH®À}ÉLªTú¬³X•¼¶¹ö± Ž¤;Æ!3)--ç¥rÉ}‘3…ÿó Äè ø~„PÃÎHÄM±@ +ÿà|Ý,Hû:"Øn€ƒÜƒ» jè¿  Mu0ÝüF{¸ÿó Äç Ð~xÃÆH#³½ @@ ãd¶v•[W}šSmrRËà¥écš}ÆdAPÿó"Äæ ¸²™{LMÿô0¾Tð.ÑÖÄÙsÌN’‰¸…ñ*ƒ™XÕÙ$”†AB‹?n-ÿó Äç +ž€8ÎL¾»º€À +©cÈo‘t> ÀNŠcÆÚ}±H±ûà(;àwoW¢Žÿó Äå(jŒðf*ê"8€””ÕXEæo8L¨Ä×0‰£–Æk|&Xÿ)ðE¼¥YßKóÿó Äë +˜zˆXÃÎHùìLþ° +Û½wJÏ‹naö#Ï—)¼âd–"ÜÔ²ú?­²'ÿó"Äç +(žXÃÄL +‹²³þ Ø©¨ÖÚ((Å1-÷s*¨3”ü°{$% ˜ÕçÍä´®ÿó Äæ °¢€PÆL ¼ +vøÒ²7Pæ6ÂÑÝ3pš e‡ÑTV¼#ЙÁ¢òÔ&÷·ÿó Äæ Pž€ËÊL¯°ýJó@Ì .㔑”ঠ˜Ob¥ô>ⶪëðX*o +„]âW‰ÿó Äç p²„P{ÊM*þ° 3•Mj^Ö¡áåð$Î5"¼— +åˆ[´º[½¦þ]ÿó"Äè + ’ŒøËÌL²v%¤ W~ocibµ¡€>†l¯î¸ˆž)˜DG*·_{kf²úÿó Äç + z„PËØHDÞÅlР WþzþžXСŽ²bÿ…da°®ÔvQÞ=%°Û7ÿó Äå`~„ ÆJõ€ »`™ê«Ó_àÔ8TÕ„L˜ËÒÁ= üã³)¼ì2jLÿó Äê +ØzxPÖH…«hzŽr €m +ù +Ÿ¤’áa>‘Ñ + +¯Ò.âŸÑ]£ÿó"Äå ~ˆPËÒHåOvò@Ì &: Ò! R÷i/Ë’5?Ž’0#uèC„Tÿó Äè ðŠ|(ÃÞNoõ#r€ +å•ÍPÁÖ¯³ù!Ÿ•šæ‚î’ÿó"Äé +àz¸{ÐHM?n€ð-C˜ŽBÀu¡ +Âr6F"Œá¢¨çåb;-ûI(ÔŠ9ÿó Äæ ˜¶•¸zDLW²¾°óe]̤A²EU\¦ðk:Ž3»Qýäïx`µõ9P¬ÿó"Äæ +–Œx{ÎL}ä¿ô+niù¡M¦®ó +ë o©t#¸V?Ê ¹ +eîˆYÿó Äæ ØÒxÃÄpY»H€Ø;ÈJ»œ¢Bœb`·X(LË…•¹›è£nìå–¿ÿó ÄåЖˆPÃÊLq3h€­´ +V‹dÉ¢bº¯Ciº· #äjŸXÜ ‚ñ¿«GÀ•Cÿó Äè +Xv|PÎHûz1thÀ¶€5^mÔ˜eª8[ Iˆnž†®)æ—[ðx1:ÅÏÿó"Äå ¢•ÂÄLguI6"< © &k‚y¤yÚ2æ–Báµ™A#ñ)6Ælㇼwÿó Äè +H¶€PÃÊLç}míT{ï)cYã™)š“Ð+¢¬½7`ŒÌ±?IKŸ°_‘ÿó Äå蚀(ÎLë6€ ¶Ð73 ÀןrP“ .Áv Ïñîjÿó"Äè +v…¸ÃÐHߘùîD€ÐÕ±!‘@°J´ž¼)#InµUgSEÂá@x,‘;õÿó Äå袄PËÊLÇÞw‰€€.­Ü‹ÄäsPá«1˜Ä9Êê7œ6óÔÑ• +ÁÆŒÿó Äè +8¢•¸zÄLø÷ßÑý`‚Ðt2¸µÙ ­k•3h3µäÂa«xåª žÿò]ÿó Äæ ˜–•¸{ÌLBGérÀ;W‘8•î™EC÷•2âçó#Zš¬|ƒ'ù¿ä¾ÿó"Äæ 8–ŒÃÖLèy]gEÀ€ÚýÀQZK#)4ÛåN^€ õ¢—•™ÿÍþ+õÿó Äé +0²Œ8ÓÚL(¿""€¡•@ò¦ÞHâJBËYÙ‚ EŶ&'1‚~ŠU?–ÿó Äç вŒ¸ÃÔLóÜ™}@Ì{ó.õg":ô¤˜+î‘F¡185‰#2Žk¬^Kægýÿó Äæ زŒ¸ÎLaºÿÒƒð©rvÔ¯kÐÒ† Øk²ƒ¤Ø%]9’)Ö6!øWû•ÿó"Äå P¶¸ËÎLQÕz€ ~ƒ$9Æ+;ã”J_:yb€¬×œHõ'çÿýþôÿó Äç +¶„ÃÔL«Ð‡Ô‚@É\‘ûƒ^º¬bÀÁnQ{–X;5ûhœ<Ïã§ÿÿó ÄåøÚ•xÂÄp-Ô$ê} «3n´EÒ•±Ã˜±˜£ø2 G:~{øhá\40ßAƒÿó Äè +²„8ËÔLª|¿š@;(®ÞIŒ0' Ü#p7g)…wM ùdGŠÆh<¼ÿó"Äæ øÖˆ¸ÃDpy%?žô€€>›qæ›HΞµk2xá( +ÛØ»7¸)/¯ –U|Iÿó Äæ `þŒ°ÃJrÿ/ân± À Ø,½èî‰Â`2y?Îö Ï};°Q¡SžlÚ3ÿó Äç øú•˜Â„pù¡Àßð7@ 4¦ +DÑõ]«® ªƒóš0ÁÖ¤ÉïÙ:ÿó Äæ ض„¸ÃÎLŽW÷×ÐMó½Ui€ ®Øð$œ#É\  +´Ö‹Äí™JÂÌ(ÿó"Äå @¶„0ÃÔLÒ—IXiø2€ ¹§ù~0±Ý—r;J•»0dÄT„Ú5êÕû/ÿó Äè +¶|ËÚLýP9°ŽzÅF6öâòúJ¨2š&j Ã\…s +~ƒ‚ÿó Äæ ض€ÐÃÔL¼æäØ  âÛ~UÀ#B†åÈÀ•°Š–' >>‰gpûµ3|È£÷³ÿó ÄåØ–¡¸bFM>[@­~’ž~A2%Ââ’éÀZ±i$¬9ì(bªË_+ÓoÞÙÿó"Äè ¶©¸ÂRLLnZu ÷o¬ö}¡…ÆŸ4‘Fâ +cÎÈZŒôï-ô—“ÿó Äส¨PzFMf|·Õ@¶o²V¾î²ÓàêÏÿó Äæ ¨†¨XÃHÂB÷¦Ä€91]øY€Å\*¡+04ä¤=L4¥¡²¤ RîQòÿó Äæ È~¤XÂPHß©v®àe‹Æþ©Ð® ˇ)#±¤ù }NfV:*köx¯–¼ÿó Äå ¶­{ +L=º2  ¹ +|"‚|‡™yN®€–¬Gð#]Òß©@›­j?]^ë0µ®­Z–=Ïü9‹,éa”ÿó Äå ¶¨xcÄL%ëã@11·t2˜¢­2PÝQ€T®IÙ.wpËÕ, @´p?cÅÿó Äé àz x{ÊHýÔ¯¬Ë³Š¹¯’ãªÈ +ë´È„Y®=5dt ™4ˆd˜Œÿó Äè +PvœX{ÒHþRej@·à¾’(](àR¨ úešq®m †‚d 9ø>çñ+Šÿó"Äå X®¥¸{ÄLTáÚm2 +ؘcº‘ül4_cN4rÒ‰p€ÆEØC3ÞD§,õÿó Äç ð¶˜xcÆLX­Šõí}ÆìîC2Ù{ôEbm#N¤#XŠÔÕ⶘øÊŒtj}Çÿó Äæ Pª¨xcÆLCü7%^° 7}šµ>,” Kœñß"„ + AÿU ’ +uÿó Äç ð¶Œ(ÃÎLgôÆ¢Íj®És(W L@I5šªLÙs£¶¥Ò¨šÙ¹¸%[íÿó"Äæ ¨’„ÎLÞ§éêmêâ6¬:W,F8Aˈި[ÜÒ›Ë4¨Å3/ôUÿó Äç ¸ŽœXÃÄLÚPçe} ¤cÆë's¦iÚ¸€¨ †ÄntÃÝEFM¡ËS%Ï +é+ìÿó Äç Èz”8ÃÆHå@ +ZÔ¥¾’ˆŠÔ“}C<„Š“³Æpë€ÂXê(ÚüÐ]%ÿó Äæ à®”XÃÄLgÊÜ€·àb‡¢É^˜­ +Xz/…,¸1Ül!j3+Ÿ™½ZÁªBÿó"Äå ~Œ(ËÌJ¤èF…€ÿ>š_°7‹h¶†öC®WyÖz±šN½Ë +ÒŒ;ÿó Äè +–„ÎLJÙéîàg¦}:þA¹=ÅSª-ÂZÊjHää5ãYQžÑCÛÊ`¤ÿó Äç +²”x{ÄLò­§(€ ÛðtÈ°z±÷€ý ³™Z +Ê8úµ%èþ&-OÓ>”ÿó Äår”XÃÌH5¤š«¶¨ +” +|º€'xºl)fþ¥2ùÖŸ uΰfûCvÿó"Äé + ¶Œ0ÃÄNxÕX®€ €àU*ЗŒò´v3¾­)D¼q¶×$Õâ¸Ã'àîÿó Äè +¶”XzÄLA{4·¾°°Øõî"`% 9|)Ä—×Í¢ ­¸ß¢ §bÿó Äæ @¶œxzDL#Q• +î},3? +`n>(éøsë®àÙí#áy†ábšcmÿý}ÿó Äè øŽXà +L,VûiqêÀ¾à{¼ŽÀ+Aª+\·(”¾|9¶n±Âa—‚;Š‚ÿó"Äç +0²¸bJL¹ +¬A¿à~éC²K°INÜõ¼ÿ¼np•2\bl²B™[ÿó Äæ  ¶8cÄLzì¾4·cIŠ`‡°Ýyäìl0ïÅjÂAù}ú¶—n?œ]¦ÿó Äæ àz8{ÒHŽ“Y ð ©£Ð*òL +íý1„S½x©&áoM¾Á²^µ[äKÿó Äå ¶ x{ +Lÿ±ös¨Ý ²þ®>¢bAERI$¦®Ïíñ¸ñ¶r›®)¤uô”Òÿó"Äè +²˜XËÌLŽx·ƒÉ)ÿÞXÐÀÞ^Vc¤À–Bab‰9æ ÉWTuà¿h>l£”§°ÿó ÄåðŽœX{ÄLº6>ÕÀ³»°ðÂ\ø[GGgtÿqç^Ô¡DÁŽDrs7£Asÿó Äè +0’˜XËÄLòïZêöÀn²9¬Pl\]ð07Çl<\ΘwOe Ë<z™ÿó Äæ `~˜X{ÌHãì-õ€önbjE|uLAF(`J}f¢ÊOÊÆ µuF¦_¨¤wÿó Äç ð®ŒPÎLLšñpöà|/nÄ,^õLÅ"èžÂê#žK?7:=þ‘þLm4Óÿó"Äæ À’€ÎLÛP¶o(3éÞ±å4ªüIªÑŒ:"¨‚Oé¿iÓý +Ì‘¡~\ÿó Äç ȶ x{DLÍë»CÒ€r€3vHeÄXÉ!ÄÁ[iUþŠ•è‹(õ2oVïTÿó Äæ À¶”8ÆLèºúG°Ú]*ƒáÌb¨Àvb¦‹n!ƒ0Ž«¸$óùÿó Äæ ÈÖ”XzDpPµéËVI¸Õ¯*ÁÌh ¢Œ®*RÑâj¯=íªùÿG.Ž–ôÿó"Äå ®”XÃÄL"ŒÔ\ˆ°< /Édr’ó«ƒhÖ\£B¢¦ºÀs²Ú§3p½X¥9 é ÿó Äè i˜Xzp=Ǹ[êÀºp&pÌ]MðÕ("ÌF~ŠíFlã´ž +8žAÿó Äé +yXÂDp}MÛŸ öwtê82„>Ѩ;=Müåð¢5êý핈´7¬S­Šÿó Äæ ¶™¸{ÄL8Å%Ó ð7R ½8UBnY‚n,âI¼†ÉBQi¾\ݦ}JŸ[ÿó"Äæ ¸~œx{HÏñ[Få€üv‚rÛlîI€2¬-PÉÕÇàznIþtý ëK:Tÿó Äç èÒœxzDpQÝX»RùËR©J·+åUE®-ÅÆÔfå[–Ú´ÚM‘}‹ý»ÿó Äæ À~ŒPÆHî=ÍûÔ÷à}6ê)ºŸ$…N1à,²¤Pƒ‹W9e¼¯(ȹÅMÿó Äæ °z˜{ÒH>ûÖ€ÛŒ1»KD8ÿ×Ä*™#xlcInF¥jº„×”zûÆuÿó"Äæ ˜z˜XÃÒH?/Ö°€¿À×€tœ?Ë.ðq¤˜t™ªðCÝ ²÷ç|ƒÿó Äç Ð~ˆÃÒHî-XÀŸð4þÝ3" %Ö‰•*…׸7ê<¬Õtõi›Õ¢_BÏÿó Äæ h~PÃHgöëü3U#’¼5؉Ø8¯¡9YàËΈ¤°NEG¾Q_Á·¦oÐÅoÿó Äç ø–ˆ0ÃÒLj«ÂyäÖ÷yC\Zn€ +Šƒ—°„¶èè½FÐG +ñ§õÿr¯pdò2nŠ`ãƒ4eœD_¯ìöõvŸ“wÿó Äè +P¶Œ8ËÊL,«RÀàd¼¯”©Á¥•Q0Ÿ,¶„KWQæRMÁ”/=ãšÆÿó Äå ²‘ËÄM7hš ÞU`€ +Ð!E°¨ÃêX«ñ:ÔùØó ƒdŽ,“?#0»K:·ÿó"Äç +z…PËÒHÜŠº€ÀŸð(ÉæY`T`gô¿—<½#Cn F"´oÑãtOÊÿó Äç +–„0ÎLÌ_-²€.l§]ï+–3È Š0 +2TL«]\´¿ #–ñÒ}/ÿó Äåø²ÃÊLôë·ý ˆ¯øfTâ“+èPbÀ*H#Ç—™”ŒØe™HÓ ëŸ¨ÿó Äè øþ™˜zÄp»ÝÛe@€—¹†sýNØ¥™øu±Ä¸²Ÿ¬+­‹Â1:¨Mÿó"Äç +XŽ˜ÃÎL$#؆î) @€¥@”$œ„Ú¼óZ£‹¥á%ˆCæ”0ÿó Äå n•˜(äg“¥@¯àcqLãdQHtnQU ¨-­?ãBŽ ££uhÅÿó Äç ಙ¸{ +LWì!«ý`ðb‚:Pp<†K¬W7ë¶õvi¬ ,B©>àÿó Äæ ˜¶•˜{L ¨÷ ô\Ø‚U…•E…Þ l%•ÊÌ¿@ãæè‡ ÄU;ótžÿó"Äæ Ж¢8zJLŸyý^Ž 1¸¹¢”T€mN«=B# »2¹@ÛÜ}Ê$•>\ÿó Äæ +0’¥{ÌL¾y¿Hðì‰Eä ;ìÔ©•Pi0ãB\åSAyºÀ‚hÀ\E_Üÿó Ää ’±zDLèýÝYP€ +󨂈àŠeƒsÐLÔà…eƒ çuFrC¥ÿó Äæ ØŽ¬XÃÊL +uMä@ÿÊ!‹IøÔ~€'®cò<=[w>rd%WAõÌq¼ÿó"Äå @–¬X{ÆLöy«ý`ïkB.n¨±\]ˆ à$ +û¾”ï´¾ÚÅ%þÿó Äè + Ž¨xÃÌL_)ð¶ÀY´?œÑàüt•”¿E$®ÜY³¢™ÇGG¦'Ù‡ÿó Äæ h–°xÃÆLô«GÔ=€:S ïaI2Fê8°«Dít¯Î«A¸yUW{´™ÿó Äç + Ž¤xÃÌL*õù›è+°Á® +12‘ +ÂúÎ7\XLYUyÜ +Îëÿó"Äå PŽ¬x{Lþð’Ó„õv = Å:„/ÍW‰cGcE¦b!­€…Œ%Ȇ0æ ÿó Äç ØŽ¬x{ÆL-¡ ¸¶ú NŽµ2±DÐPÅQ4gÝô + ç•ÊÄ%‰Egÿó Äæ ¨Î¨Xy„pÒ£ú@ @³%À‡‹!6^H|ÀætaÍVÕ­ô+Q[r³‚ÿó Äæ xŽ¨X{ÄL7Öö.áPèV@×H“à\Gy8hU5R}^¿é$âú@‚@!Ÿÿó Äç 誨x{ÎMœ© ü,Âr ‹)71F6Øí<œ%ȵ¼ëPŠ€µñ”åúCéÿó"Äæ +¶¨x{ÄLÉ•Õ§  +TLœ”#‰Dµêþj£•x¨_’òû‡…:Ë«Oÿó ÄåØj­{(—w£*¿àxàêD”+°ôr7‘” j’Öëë˜s›ž·V&òÿó Äè Ðz¤x{ÌHósÿ À5tHcpP'YcµƒÐTb`¸2·çD0iøêc€.»ÿó Äç + † xÃÌHRð>°m|pIŽ¿`%¦M¢›\•e]Ñš1øîê"‘ÿzUÿó"ÄåØj¤X{Ò(«v ÀÐ Ä +ªÂ'µe¨Ü {( ÔFáÍ9wÁj¨‹[áFé’>‰ÿó Äé +pŽœ{ÌNÂ7 \ + +@”öO€: ûÁ?Á’Ì”s&²0ÃØɃÎS510lÿó Äæ ¸†œ8ÃÒH>wNi«øpÄÉvUšsÀ‘òâ´¤lŠg!'ÔÁúd!Ïåÿó Äæ ¸Ž¤X{ÌLoju€)@ì6(¢k¸  +¬O“£í $p62çö¾‘-¥í™”ÿó"Äæø‚ à Jk#›gã@øØV«š²±êèGD0XÕ2zûæÀesƒu}ݾˆ¡ÿó Äê àz˜ÃÌJ n)Xða´ †hЂ}$šü§U£¢©(Í°W +S‡qp8eÞÿó Äé +p†˜8ÃÌHy*ƒE\ž0ˆlÇ@Ȇ‘hÆ"û¬ÿºÐòÅ“¸ï/ÿó Äæ Øv˜8{ÒH÷úÀ?øÜw+¶™9Uå¤BåÉá>ÃýùÇŒhJ{fê§éÿ’ÿó"Äå Ž¨x{LS¶Z0ÿ}”‰R”öIèÒåÊHy Ÿh(lµc[µ–¼ëÿó Äè +šœxÃÌLQÊj9pÜu. 5´}Ô£ +fÏTš[n{¾˜þÓÛ‚‰ ‡ÿó Äæ h¬xzÄL½þîX!øðVŠ:'髽9·ž–MÄ‚oÐkêU±§Ê= z¿úÿó Äç ˜z X{ÄHÿ£[ðL/pÈ,meAÌZ«â3Fá/¤Õ|r‘V¦ÄRšÌ옚ÿó"Äç Ž˜x{ÌL´õ¿«ÔªðäI+&±¼TZ¸\¹>7kW³Š4¦Ó-ÒdÙ”;ÿó Äè °Â¤x{L(·õ;¨½°}n²ø“Y“Á1Ñ[÷‘rsMiò)R›åíµ*¼£Mÿó Äè +¦¨X{ Lùª?ÝÔ©89'G)F7UÊ\ÉŸû +QïXcJp’¯”“£ÿó Äç °~¨x~Hœ'â¾DÞÀzàA͘„‰ŒEiZ¨Wå’GÝE~zô{[@Qÿó"Äç +9¨xÂDq';Éû6Ø :øì®WŸ§RuÀØN¨²bþý;¬PàÙ´LÎÿó Äæ x~¨x~H§Ñä@Рzƒñ ƒ¬TŽS´¡v8\Ô1›³‰ëäù8©• i0ÿó Äç ð~¤x~HäóÉÿúÀ8๢…1µÌˆ\$5…#žÉ`Ù_à=pH02Úyÿó Äæ ¸Î¨xÂÄpÒ~HÌvñ 7ÁD)4W‘!!JÌp09Ò6ÜÛGP‹Ò˜Àÿó"Äæ °z¤x~Hžy>HðñVØ9ËZ°½EUÕnF ÌÅÕœ¿1M¾:ïû“ÿÿó Äç + ‚ X{ØH–£úÜ•¹0à¹>'ãCCZˆ¥s® ¾P¡#UêØ…m¿5ÿó Äå ¢¨x{ÆLGò^Îz $(l>$EÑ9V¹œÿº¼Ý2Tk2QélÛ2ÿó Äç +‚˜X{ÖH§eoër5Óà~^×K©+éRˆ°Ê-Å® ä¶"LÃ7CÓÿó"Äå (j¤x~(›íý@Š¯ö®å!(ðû*6m¼¬-îÌ¿"`˜¼¿¾s˜égÿó Äè +(z”X{ÖHJ­ýØ ½oõ:ùTd~)Q‰ãðXEÅ$ƒpÆ+œæ8š£ÿó Äæ ÈÎœxÂDpúÿÔ +ö¾Ò¡†D)#tåtw-^D¦U»å +bô­ÿ¹n”ÿó Äå ʤxzpå­ü¿úÀÜxÅÙFKˆƒþRVÈ3$.V·À¬0¬¢·ÿFÿó"Äç +HŽ˜X~L¶[­ý`<ÿôóDRœ‡±6é*3gΙ÷³7à‡s•78Gðxÿó Äå rœX{Hoë|Iõ+hýìˆ0‘è]ètäs¶yà*2ïôq¡6Œó ÑÏÿó Äç + ŽœxÃÌLò`+xû¿î f—*g×”©ä¾$A¾{þmc»2ŸþS7þZŸÿó ÄåøΨxyDpO‡{í°¨èXd:H@ +ÈÑ£®›Yy³·]¯X¿þ\ÑrÍhÿó"Äè +ŽœxËÌL‹~oOûúÀà×)‚¨â¥8Üz¿Þ&±¦‹cX@(Œ1•;ø™nÉ ÿó Äå ŽœX{ÌLhy5ç,f¼…'Ü!Ëžr'•[Œ¿9ïÚ¡±S XÇܤ·ñÿó Äç +¦ xÃÄLqçÝH¸üqYªG˜•#~›æ).cÔö§IŽ(Ž¿£+î-$‹ë¢‚ÿó ÄåØ’ xÃÊL¦ÿêuþ£€ÑøáTÜTج;MÉP³Y«2#¥ù¸VSöaW‹ÿó"Äè + îœxÂDq +<ä /øá(“'¡èD +Öã6R. +¡ð_-”= 9T· vÿÏQ +ÿó Äç +Ž”xÆLD­oV  hõZ¬ºT¡ê”ð?£«&Œê¬ÿ”Ð(ì£Uÿÿó Äå0z¤8{ÊHñÇ&éwà—ˆ¢É8qC¸ô` ÙTŠ ]}E'4GÈÿðbÿó Äë +¨’xÆL™whŒ˜€Ô•éYCbË-ˆ£Ëà0œXpÑ_ýòH,JäÓ§oÿó"Äç +HòÃÄq9Î’ô€=à~ÌÀÌ$ IF#Ö‚;bâ• +Š1¼ +=çã`ÁÓÜñ"¬ÿó Äå ’¤x{FLM?®°ð?ß—yPî§ÉžæÀŽUX;ý"í…Îýß9ka»Ìïö¹ÿó Äç àÎœxyÄp*º{êwà|9¢FˆR2áD”AM»fM¹_­[²Ø yz^ù4[Ëÿó Äæ À˜x{ÎL,ã¿úÀ¶|²‹êñD_P–÷¢¸äËlª‹ï_× ^Âó²íÜÿó Äæ ¨â¥zpªÜÅc€á-¾~ ¨ÇkxߣL…\É­ýøòˆé‚~#¾x’\ÿó"Äæ ˆ’˜8ÃÐLbGý@&À~À~‰ÑBAtÊvC FQš én;­ÀïKXƒÀÓ½ uÿó Äç  z X{ÌH5?ÓXÀ>¥ÆÀ܉æ°ÇsÑE>…¦ˆvfÏQ®¥0&ÊØÿó Äç +ŽŒÆL~YcZR €¢ûa§P'N©U›è‘{Ø°ûC»Ø1Ÿ +¸¸¯*ÿó Äæ ÐŽœX{ÌL·5?Ѐ +ßà2²§ÐÄ 3•I±2™ÇF&ôà+CC¢D&ÎxH©ÿó"Äå P–œX{ÌLë7íZ€÷%KI„¦P²\¥ºL#;”¿ øéï>ðËš0U>Ì0/ÿó Äç X’œ0cÆNÊÝ@oà~‹V …@©dTÁUÕMŠºq™0 Ù‘Áã +Ë-ÔËÿó Äè è~”X{ÌHŽEú Ösž ÄŒbé\È⤥·+¸ ¼“õÞ 8Õð--5Ÿ4ÿó Äç + ž™¸ÃÄLÎt”“1½@€z€Ê1DØ`Cª¨_k>”ʇ«ËŒ8 q¶ŠyúÐÿó"Äå 8~”ø{ÊHä2Ó4y ¦R„~**uœ¦(¼ÔlQ{8³á6A” +zKÿó Äè Ðzœø{ÆHíoœòÀ@)ðH@Q`y"<3üîaoPþWõ3‡,s4Iüvÿó Äç hŽŒ0ÃÌL7Èù€@܉¿Qúß²ˆÍˆ‰Ä¯¥ŽbÜ5T›,{ +Û’ˆt¸ÿó Äè Ð~˜X{ÄHr +ö·Èù€ ð>K–¶RnµòÅ\ÎÒê#«>×Ñ…«æFz·ÿó"Äç +X‚Œ8~ H©nê€ ´•Š(‡ÀKù cæ(¢ÛõnçT'-ï˜U‹L|#5Mýúÿó Äå ž˜{ÆL—9#âÀ6àÝ[ì*åâŽ{œžØÕ/{«ûAÌš Vü?Rèÿó Äç +¢˜X~ +L]OêsòŒBX„ŒÖ ¥ƒ’…saW'bgÕ¸9r‹hžîrÖíwÿó Äå ¢©˜NLU(þ¢Ô€fà“Ê VФ +i +3$JŽVŽÚÊD\)ÿÕtÿó"Äç +`‚¸ÆVH­Oê05 psÄà +È„M9P6$ÝuêZºN!FfåC„¬üüÿó ÄåÀ¦ ð~L—ò´o‘àjävAØ%äTÖJ’ÁÃÓÓ¨ +Ì´0ôi<çúmÿó Äé + Ê˜øÃÄpíÁdV-~®SQ´°: ñªv4a! 'êRlù/™Þúâÿó Äå ž¥˜fLrõ'Ü]VËÈÀDF I[’’xC4Ï=W“b£}ª"s +ö„ä0³ÿó"Äè + ~~Hò×UWÒº%gM*Ü<Z¨ñ’Åfbž¢™&ÙÔ’Gßõÿó ÄåÀ¦¥˜\DLÄej  B%¥Æô†Í—Q@–—;QTxW­Dz²ýWÿó Äé +€Âˆ~LSR)r€€ ”Ú“'­LäP¡Bf/ ˜±›Ö°¨±{Öˆ»‹’àÐÿó Äæ àò˜XÃDpá.Ò¸aa€ÄŽ I¡È5‰àâÔ­°’C¯ÃiºîsR:Rݧö—ÿó"ÄåÈΘXzÄpmÏ/Ê€pÔ#ñÈ'Â\’ÒHø‡µ0¾gÛ3Y˜òUö‰”1ÿó Äé +~ˆÆ^Hg/·¤³(“02ŽÆu·â¤¦Wƒ4¨ÌÆü¯ƒ„V•#žÍÿó Äå ΔX{DpßúÀ¨ a|¨Ã}LAJw|ÎrNtæRž/ãí{ü2±P¦wÿó Äè +fŒ8f(õ͵Æÿ}` a29PhñÈAŸ´Bà +˜ÜÜ]šuy1ÀWFÑ•ÿó"Äæ + ’ø{ÄLê>Îv€ aû :ÛWIÕÞÆùBDÉ‚e(xqjõ}q×ìRãÚ>p¯#ÿó Äå ŽŒ~Lr4z€¨t$æ^Žó±*0°FÁØ“qT4|]+É÷*à-…ýMÿó Äç °j˜È{Þ(,v°h)‘Ú³Rcšnäƒ/o“zÏ«…¾˜?‰÷Jåîóÿó Äç Pª°P{NÔV[$?°Ø´2öyŠ8ù1ÞYä´ž“™UrR>ƒ1)nÿó"Äè +˜â¨X{Äp¶¨s£=uIVuí€̾œÒä6ÑŒŸ èÚ"¬èç„£Hÿó Äå ž¤X{ +LeÀ®| ™%!Œç¨éW( 6YØ$gPCI +xí»ëªªYôÿó Äç zœ0ÃØJîÕŸê +¿èA`šÌÒÿ˜³½ž¹¬*co+äïàôþlzíÿó Äç  ~¨xzVH•ô€ü4ÜJb‘N ’Gj èŽj^5 Á«(ô.Œÿü&'ÿ&˜ÿó"Äç +`âœxÃÄpùêÿd‚ã±²ýmÈìHúƒæ‡R[?¸³ÿÌñÿ÷ßoÿó Äå –¬xzFLÕ¾†Txè=‡ X V¡ eë¼Î—F¸d³ˆ£èѲŠ÷ŸJÿó Äç ФxÃLt·\>AÜïFä(€×H½rAZ£6 +E;Èzzíž;ü³Ïÿó Äæ ÀjœX{Þ(”Ó½ú@ãäD)ŒyJ—²)K)ô¢èÐ(‚»ïÓçí2EÕ²ÿó"Äæ HΤxzÄpP¿P¬…èŠ; ©jb¼(¢<-êü0á1Yhf’ —ÁÜe‚1zÿó Äè €âœzÄrg¥"7~¾Ö}¹’õJ.’œX^™`šÇ!'ùüþÔÁøuËÿó Äé +8úœxzÄpz`›óTNÛWš, Ü‹´]`h½åå|­Óz°,µú^Zÿó Äç – xc +Lô,¿Þ³`Àƒ í +âð—Hf’­˜Ùa eHFÛ®¤|3’³Aÿó"Äé +Т”{ÌLÒ³•ê¿îÒ`й 8¤Â\rÃC_ÇUiO¶uÙàô[Ó&\O½3©(7ÿó Äåèâ zDpÄU‘%|¡|[xÐJƒ”ÎC*cÈT^ñS-`† ÍÆ©n×Çâþpÿó Äè ¦œP{ÆN­íW¢f €?l%ÆÆùBŽJµ6­Ìýëçj‹IF†Æ¿iK5ŸUÈÿó Äè Øâ¤XzDp»覘Á BÉŒ™ÃAò­N殄ØG.Nâ(«œŽÝ‰A¸¯”—Iÿó Äç +vœÃH”‘2lÿX€ h–¾$9†"ÝãÌH<,ZFd·“°üò~ÿó"Äå @– 8{LånMï© ¼<¥UÉiŒ²wÌÅlhq×^vÑ¡uC?—)Ê{Ͳÿó Äè À®˜{ÄLpãG¤€ hÊÁ• Ý +yT60έg}–§:®Õò#yASoFÿó Äè +`®˜8ÃÊL…#BÀü0 +ˆq¹#• k¨™6_ééPóQyrväð”БE ÿó Äå@^¥øcÒ(KÞ €øËò R@Ïi$‡$Fõüê¤=°IîÁtsQ‰kÿó"Äë (ª{ÊLЗÔi€lQpaV-Á3ëÌÐ0ví]:¤…ÄšpmÂJÏñdÿó Äæ ˜j™XSÒ(ã +“ЀÀ}½šSmh2ìÉ{8³Ù^Io[Å–ÿó Äæ p¢”{ÄN‰Á½@°NÔ|œE8Ü/h±×#M»ðì?Ê?ƒS’¡ èÎF—ÿó Äç –•X{ÄL±\“ÌÉU³š Súnèúÿó Äç Ør¢8zLH ùá72À.îꆣË.a/Ü4K7³ +\‚$w\ßÿ+Éú +ÿó"Äæ +ª˜~Lòýú€wäVƪ5 +óPžM&fMqä²°͖רó3ùu×ôÿó Äå°z”ÆZJDy;X°Œkk‚©”׃ȸŽr]eC7Œ†¬Ç&ní¹oMšÿó Äé +¡˜XÂDq+ßÊ€°.|‘F£k°ªF1&&PÐoubŸè‰ õucøßÖKÿóçÿó Ä帪²XLDLeo ¿úÀ5bJø5w +Ÿ:Ñ$mΤc3d à# +Ôôt¯òìÒþÿó"Äé +¸Ê˜xÃJpƒú€€b€Ý–Æ”E»?ëUÏ@°éh9Ûb*3ƒ}÷òkÍÞWý7ÿó Äæ PÎ¥˜Âpôä ð +ò‚ëRXÛól…˜Q¬•$ØÜܨ .´÷Yï½A=¿ÿó Äç + Ê”{DpAÀÀA¯p)*½rk!CÝœèdKIÀ¡´¦Pç_yÛŠk˳¡ÿAÿó Äå ®”X~LÿÜb;¹É +h!)†±„#ˆd0,FÔ‹nÜg +\¦¡‹›;†ÝGzé»ÿó"Äç +PÎŒðÃÄpÅ{úF;XÀSÞÆÕèn„G%€ÌÎÃ’ÔG¶óß>Š×ïz´ã~ÿó ÄåΔ(ËDrƒù'’ÅÀòªÏQaè(ŽB¸G2D*fy?!/Eù@ÁIþ^æñâHÿó Äé +ˆÊÃÊp•’ô€1”ûxÚ",AQÁÆ¡gTÖ¤+L¼@¥'ùˆ>ÅMÿó ÄåʘPÃDq+§É¤À†3 ÈPd%oÉ›·’k8ë8™Íœ•dFÿó"Äé +Àö™¸zÄp¾;ßÖ ÕÀyW”„°Ñ%¥(jeA–(nMTŒ&Þ¿NO¥ßNÿó Äæ ¨®”xfLÈù ÷¬ÜÆû¡)YãO(ŒMÌ»r†‘:÷ƒ©7ƒªº +A©ÁDÿó Äæ ÐʦXbpvsÝkþ:ñYl…¶…¬·åÌ“¡\bpĸeœÍ?¾gA? ÿó Äå zŒ~Hþ¿È¨Éä€"ë ‰K@{7éaîŸYÒžVB[ +ICêzœuÿó"Äç ðzP{ØHo?ßÖ  Q¯áºD¸´ ]–Ä=g^àßà3…¾Üú&º$IÿAÿó Äç àž•¸~L[\µ}0¦ÊÏRô$åJšh¾½²K,¦†lª‘|]ñ%*m=»ÿó Äæ °ªX{ÆLßÊýhP!^åëz 3Žr¬ñ=cž ‚'R ßè6ÛÃâ±®Åeÿó Äæ €–PÆLÞ#ö·Öü>ß Q¦Èâ@Iš^"•ðMEÖÇÿþÞÿoíÿë{×ÿó"Äç +HΔxÃDpE öÀ~žDÔQz].>Ðn<à€£RñnockáïŸ?ëSè}\ÿó Äå v{ÆH“Ëhår“Yt§5 _ +ýBÂ>¨¢(Òö¼>t½APßÿó Äç ØÎœx{p¨úT À€/ +>šá°MØ‚N-†¶T²Åb½¬K‘ ì)Ñÿó Äæ ¨ž”x{ÄL©‰øŸÅÞ€v ²+CDÆâ …ÍjóõŽùAbûGeswMÚÊÿó"Äæ ø¢”x{ÊLßÖ°+hÙÛ‰!Užg¸'ÈuáašËÐ`@Þ?ÎwùZÀ"É›ÿó Äæ˜Î˜zDrõ¸že €E¸©3Û³G"R)Í….àn¦†0ë[ÿ²¶©ç|Nÿó Äê +Hö”XzÄp#á¶}@€D´ nNI>[…Šý +ùRmQNMtþ¸<õdè@ÂÍG½Åÿó Äç øÊ”xzDpü]TI£ê10yʨ/ÈÚ(þ aº"è™E‰ÓÐé%~¢*û¥ÿó"Äæ + ¢‘¸{ÄLbòd€ö4oxý R‡"¤i+>B{væ“*ÿþ<²dïµÿó Äå v¡{ H<Ë~І7fk<í,€)c¡Œ‘Ÿt< Š*!ArèççT‰D:ÿó Äé +XÒ”x{ÄpÿiP<ÜŒ]èjéD%xTF£º^y Éf;?HYÅH ýE=ÿó Äæ ˜zÃÐHn}õ ùt;?«l +çœ5$¨QE&@`dcn\ÇÈÔuq=_ÿó"Äæ +¢•ÃÄLtöú@ÿõöXˆR$ + ãبZ”ÆD)³Šs–þ+ü?›þ¢´ÿó Äæ ¢”xÃÊLÌ‹ô0n€€¾à$¸*W㸘9b }¬ÞMæV¶Êš|LHS$žÿó Äæ ¸r”x{ÒH’`€¶€?çìÔ·2)äÏÕ™äÁ2(óƒ-­i'DÞݼõk“ÿó Äæ zŒÃØJƒs.Ž¤ðºÙd-ªÔj.:£ô!Àè®AÆ©x¬|"J)7ÊþAO™ÿó Äè ÈžˆPÆ +L„ìMq +Àð»µa¼¢ÉŠ‚@ãå Œ8]¥ŸLaì‹—Ê“ÿó"Äç ТˆPÃÊLòòZàfÀ$¹ãŒNEê¹r,j•WØ4a +…¨ºl>#ÿó Äç + ÊœxzÄp±•»Ð€|3 ²é1: +'ePU4‚€Ó…eq«pÒ:Q´zæy`µüÿó Ä嘢¡{ÄLq¯@Fv^%®†L%†¶ºDu`ïì4xÓíÝ\?ÐÖ}¡¢Jñ•tÿó Äé +pÆ•¸ÃDpðcì¯Ô€8Zz—åíé(ÁÕp¹ŠÎ¨Êˆ R‹XühFç«$Ì›ÿó"Äæ ІˆPÃØHŒCçóúðàào’¬âÏrw¨Q…ëûn8‘IjÊÿó"Äç +`Ö™¸zÄpûàÄ»} +h5o‚çaì|˜ý¡C£ñÍÐf‚¢N/Ü#Ðà«ÿó Äåè’™ÃL+zzÀ 0Óê¼Ø3ðÊ“Ô)‘i³4X$íd°v×/Qx‘‚îaF¶¡ÿó Äè +@Š¸{ +L¯rîm`¿Þ‡¿Cùº*€¸]‚þSO ´;ÿó ÄåØV¤x[Ì$Ч£oÖ€  0¯ +#íJJA©80FéƒV´P P¤µ!ìƒÇ *ÿÿó Äè +(’ŒPÃÌL1c”ê@ l‚32Èø+«?+ÅÔ.½”—úî}d(ISž‚ÿó Äæ à’œx{ÄLÝw*°€ð1UøC]RameòÏاš†2ÂuÁÅ7ªJÿó"Äå¸Zœx{Ò$ñQˆRQÌ×i21äodCÄôÛÙúpÏãäù84L\æb×JB ÿó Äê + †ŒxÃÒH¡¸V€¶Ø*èÍ+Ü +‘P¬Áið%ŒG|MZ«>\(óÁ^Ùñyÿó Äæ ¸z˜x{HòKm}ZÀÀ߀' Dã÷:¿dì9Eâž™•«4)WØ¥…ÿó Äæ Ðz•zVHkŠ€€®À#hÑqR‚ĶM=z‰*Ëž˜×KÂ'Ä·Á`íß—ÿó Äå b¦Xc(ü›WdÀ›>Or‘ú(Tšgb"g7'Ó +¶YHõ1kT xÿó"Äç +Hž¸{L¯ÔûfÖ +%~¤“,vÌ­^ + Ru‚èÒ²*¸nò\ë³Í*jKÆ{ÿó Äåøz„ÃÞIJ]­ý €:³Ä9àÕŠ=ÁŒ±4:îPiIsª‰¦º†[zÿó Äè +Pf™{Ò(Žâܤ˜€€/E{bÊTð%“²º¸~*ƒCqñf]ñ¡*Š6Ëÿó ÄåÈ’¥¸a„L-âŠ~€ ³•ðÞÕOAÄX˜·ÚµR݆ýü€kÉ#ØÑ—[ÿó"Äè +0–•{M5=GøxV2°l7ΠǬq–LªUÕ`Û̆– 5ÿó Äç øj™¸{Ò(|>{†€€!€_¹”]¢FiåêyÆXɤ¨^á†?Vàÿó Äæ ˜ŽœXÃLžW¨aXfùèë±2EvÊ +´3­ +-·¡Í&Ú’Ùâ6ͫ鎑ÿó Äæ ¨ª™xzJLŽž[ù`€ð 593Š×eJHT?%t‚³gÅã¶FÄAÙ%<ÿó"Äæ  Î¥¸yNp`ïwl§²°Ðð +i$|FT¹Ó?×SpÝô'齈éŒÿó Äç ð®Œ8ÃÎLwЀ‡ø?CʳÉÍ$¦!âBnçU©ŒYsÝX‘\±Žìèÿó Äæ ЮX{LZÔÚºÀ"~n%LˆL§= 6ìË Î2 +k.§j‘n’×n‘çê%;™ˆ%oÖÎÿó Äæ ¨žŒXÃÆL°W|v O»C&`-†BHŸ'ÄÒÇR"À"qV&q¸>Híg^Þÿó Äæ (ªX{ÄLÊ@° +ôÑÄí«Ia*=´äq¤Ý^"¨h¾nŽßmijþ¥Ôÿ.ÿó Äè °žX{ÄLÚ«~¢»-K¸ÅX>HµÉqÕœŠh(d±xVQ¶ àýÙjK”ÿó"Äè +XÊ8ÃÄpS”ë:€ü3IOrh(ÑŽs0‡:ÁqÂ&ªÍÙ­…éÚì%Ä#\Y—ÿó Äæ ¨Î„ÃÄrφ~€ùÅ)Á /Ó`.8ÓN +¢Ò¸ˆgAŠÞÅKOUû[nËÿó Äæ àžX{LVþ+e À?à(0-%¹ +—`¥‚}dݨʠçÒ q™ñ +ûŸmdÈÿó Äåèjˆ0{Ø(½äº?à|µ« Â:H¥.Â퇂³…©”zU“>mãêÛ~€éÿó"Äè +€Î„PÃÄqáê½üÿ ˜Œ@i¤˜W +2ú‡»ðY1© æ«6ä„O yÔrÿó Äæ P¢X{LʶÀ~¦ ªæä°14ëßÎ;Sñ!Œ¶Ó܃¦t»©èßĘ:Øÿó Äç  zzLJ«"ö¶ä€9ÿøMBFƒf9PàC¬”w‰ÃF?~¯Q Ô#žÂÿó Äç +Ê„0ÃpôÜËý@€íVs° âà<ÓNhá=5™ Ù®g +´iÉ!•Pÿó"Äå z„ÆH¹Ý?”9ô€¸áâ‚ aÈq¤cÞŒÝ\Þ–Mpö³q}å9_Ìÿó Äè +`ÊXzÄqX€ØÝ5Ѭ§ò*(Òm`=˜•¡J‘b‡°"³þå4YGÿó Äå€j0kÒ*Ü_CW€/à~ÞÂLÀÄ&ã&p.Ú:J!XÐYU½Q«ç<ÿó Äê +ÈÊŒXÃp Óš/àgk•ó|7_÷´¬n¬H`7MA%L>Xª3«oqÊ©•ÎÆE-È)րϟ,ÿó Äå ’”{ +Lú+£ý@/àg-u.%ª0°b\ê¦lrQˆéòb%|$hw?îÿó Äé + ŽŒ8ÃÌLm´½jòË ²@L„'➌”@TfìK„ËËòÎiÿó"Äå @®˜XzDL¡;–´ùˆ(PÑS0×È grg †{4ªÿPIYS‹ïÿó Äè +8jX~(t:ÄjúA°ûÀÆ BƒÀ£~€»Ž’`á¹&—CR…Ê]ßÿó Äæ ¸Î˜XzÄpë@?à{·ÕG +ñ1 +äú¡¦bB´éC€B@ÀM‚©qÔñt¤ÿó Äæ ˜ªˆÃÆN›Ô@-e¨&^t­%ú^Ãé å w1E5¬U +¸ß¤S€¤ˆ‰ÿó"Äæ €f”X{Ò(–s·˜ FvÇV0µé–-B´‘^ét£)õ¦ãlÞlGž$T!ÿó Äè ¸r0{ J©œBÄô€ A@³êS\Ô%HW¡ƒ=/EG†é‰-ž ¤<<ÿó Äè +P’Œ8ÃÊLž€/àjnõ;€·ˆl#)¢äM0•ã‹±h· â"—vÊJÿó Äå¨v˜x{HnÚ×Ö”÷bUЙL[L'뢱OÄc„ÒÕFÃG’'Âï; †ÿó Äé +r”X{ÆHárúŸûï«$;$´åCqÔè{pä7½bS1á!vøÇÿó"Äç +0vŒXÃÌHjvö(¨w÷hhQ)Оà8$–TXˆ ìDtÄ°ª­Ž‘ü¡nÿó Äæ Ȫ€0ËÆL#êúÀPðz`n3Å„HBZG¨Tz¦mZRâ(Uæ/‹Îc#ÿó Äå r”x{ÒHñ3yî€sˤ‰ÛÅS,¤ÈZQ)ÒÕíB—šHdÕîaÊ?ÿó Äé +8ŽXà +L+Ê¿ú@}h6<“ö_tQPæGŒ-`äÕ<.€Y’ráˆ}ÿó"Äç +ŠŒÃÌL3qŽïì@/ày±”Bý¸‘!` +ƒGâ=—»ŠÑç =•eÎpÿó Äæ °¦”à +LçAö6° n’9 ²˜À€,Ds”ƒÉ:ÌYuàvˆÒ+ï-ÿó Äæ ªÃLíä¾Í@00ôÖ +$XK•1DT*‡€l£™ø¤Ö±Oìv#²·ÿó Äæ  ¦”x{L?ê+•p¿u²øL AáðPLë5UØ–}Þ€EGpÑýÝÿó"Äæ ªÃL-EÑ´­ÊÀ3Ä 6ñ1lV+§#€à XW[“­/K¥ë5ÿó Äç 覌XÃLj˜¯à}@ »ƒSµô$[—œÝ¸CR££2¤N4ÅkB*¹Ú»þÿó Äæ  ¦”XyŽL¡º@? ù(X+E I–í&ùXäÞ¬x1#XúS)n Ël½ïß{ÿó Äæ ˜®ŒX{ +L§Êõ€Ã?ö¸ä´K0G¦Š½– O +7@…+e×êtÉßtSÿó"Äæ ÀʈPzDpºf½NN€VÀÔšk‘‚£H‰lÞ8a5`,0Wc3šà"u¿œÿó Äç +®”xbÄLòŸH€ `>hØL +±&âÚ•2û0 DMÌñÛš,³-þ`L'Êÿó Äæ ØʉzDpúcKzÀaû·üH¾D²‹KµÙM«‘8vè$SËü—T´ÿó ÄåÐÊŒPÂÄr¯õÆûÿý`€GƒÆÒC²ºgC ýN\hdRÚµ y ‘®>ÿó"Äè Ȫ„(ÃÌN¿ÿÀ }ÈôyaÖ" -Š%Ä|SùLÈ+-qÔ©’¨•]ê+‰Wÿó Äè +`ÊxzÄpíñW+]À_ð;[Þs©ÅÑm2µYËTdHš;ÓãÒdÞ­úŠÿó ÄåèvXà Hç,ý € ß§Y”a3WLO³VPÉv7¯=V¶å—Ôõÿó Äè +š‘¸{ÄL/ñ MŒR€7¨iõ–À-òÚ ´-•JÐ×\9>R¥N2˜Öx*~7I~ÿó"Äæ +¦€0ÃÐLšòà€6à +DÇrÿÀu MãHm‘ÄìÿWûlåßb3çFhFêãÿó Äå°j•N)„÷R +î`ø;‚F~ƒôT†…8\ŒÛx%ÛÅ.žîËô™;??ÿó Äé +˜ŽˆXÃÊLI`Áº°€¸=Ó¥……xo‚e) +r¢äºÌæ•K6ÿý&ôòÿó Äå ʸzptš[ hkê‚(=†fÓ…gpî U2¶L2"tãOºfJusÿó"Äç +PÊ•zDpï‰ Ÿ¯Ò.ü N`ÇÂûiÀìZ³Såü ¥G­Ä‰Úl­b¨ÿó Ä嘂˜(ÃÒH¡´ý`¼¬ Ä0õf`BBu ØŽHáêÜ·•.ßOÙ9,Ó{ÿó Äé +8αÁ„p»Š¥´ïàXô.åÙD­nðÁ4\¹8'²™TâÕÜž¿ùËwkdLÿó Äç + Ö¨XzDp¸ÓöT  +»J +Œî"ö’²Û—»)6/ám¬ÖÕZVþÿó"Äå XÖ±¸zDqrl²,Ùø­ä€º*Ò‰‹+ª˜ d˜ã÷©·øþJWÂS?ÿó Äç ø~¤xÃHº˜­G€Ir9\9ƒ¬¢:í2db®=/ëñkã—Fÿó Äæ ˜b±cÆ(,œç#+ø$c·%À÷À?¼pûf=¡ÝÚ7üIåÖ8âÊOiÿó Äæ ˆÒ¤PzÄrB„€àVx(Qr]ñQh Šš°áÛ¨.©«YÄš”÷®Z`ÿó"Äæ ¸†¤XzLHûÝ+êB-° #๹‡ÁV Ò-0J©ŒM¡Æ¨ñ*ªÿó Äç ¸¶˜PÃÎN="Ñ2f@åQ”UmLù:‚ïˆÙ9?‹‹:>x´Nc‹·ì?ºÕÿó Äç ØÖ¤xzp?Xü +$„IÑÜ`ƒpÉQã°FÌ$:¥×9¸—öu‰×ÿ—­Xÿó Äæ ÐŽ x{ L:ÁV_¤ +¿Jg€| ž€Å9”Q© +݉ºñ˜–Ê©ý`å°„ÿó"Äå Hn¤x{Ì({þ-P9*G ŽÃóü<òú¢Ê$6ô”Ñ½× Üûpr•ŸC¯ÿó Äç Њ˜Xà LKiÏËÐ)¿¦âÌÊbž¡H5Y*•ç%¥ié=ý“:IJ}ÿó Äæ ÐŽ xzDL(±Ú5€Á°·*J·#\â½óõ„TG4Á¸Müëÿ\Ýäf~\Èÿó Ä娊” ÃÌNÛ5€0 cj`®t—XÒrAÐã ÕQŸ#‘5è òR¼<ÿó"Äé +pÖ˜P{rEAVz½ð +$V˳£¹&`´)Ɖõ$ +)…‘c½AÓRÑçxÿó Äç h^ xcÒ(®O=€ ”Éšæs½beTTåq2þŽ(½ÖžÏ®N‹¼@Õÿó Äè +8’œxÃL&¥€~üO“‘ŽÅ ¶““ èLp‚B΃¨ ù‘ö«yªHú˜ÿó Äæ Ènœx{Ì(Qèݽ`»ÿ(ô„>´eiMÀ7³‡üOñ p¸å4’ÆA¬ ÿó"ÄåÈj¨x{Ò(³â1"?éð +ÓC)¢ËËlŸâ†G÷Ç`ªÌÈÖs‰ÊH{{ ‚Ÿqÿó Äé +˜rPÃÖH$Òà/¤í°·«Q./²àðº˜ESÕ06Û °Š +ÿó Äå žœP{ÊL纀Yÿ¯Ì£p/h ƒ›•LËΗíF9ÂêpHJ ö4ãÿó Äè ˆ¶¤x{ÊLËä(¾ ·¨q)WƒpÏh™Âή@',EÜ+?Z&++ñD1£ÿó Äè +¶¥zDL׊€€…´ ¤’åñ"Vø¨·jT [Õ,õ<\SžÆ?*Ë\Un`ÿó"Äæ +r¤xà +HÕ'uè!ÿ¯0“·`Ì#ê䡵\SâöÍBI†ýÅ<šÜÏ”tÿó Äæ °ŠPÃÄLŽõ€.ö€³c@Á_qý‹&ªkÁ˜\eñ\“ê(¦‹82(,ÝKÿó Äæ –¨xzJLÅHü»= ³ð®,Àø^b"HåÒ¥sÑ1EQúaESåçOr–ÿó Äè + v¤x{ÆHVêÀ€>†}Dá„­i®£Ã»š¨³{&•áD}‚Â#¹[YÏëÿó"Äæ n˜0{Ì*/¿Ó1 G›¤&ögŠÛœn±Y¹Ž‹¨¼ŠOÓ,˜Dô¢y1C/†òÿó Äé +€v™ÃÒH¯±7šH€@Ý$¼tV?D<€¡’%P58VÈbu‚ƒt÷ÿÄnÿó Äæ Hrœx{ Hü™Ç꿯\Ájs?E@¹9Ìù\œ(ê½ßvÜRA”1ùwÊÿó Äç ˆŠ„ ËÔNåBO[×R€€¿üeõˆ²$Aw6¶ã€:÷W@XîJZAZþk§ÿó"Äç Pv˜P{ÆJSXI°€EÀ +/èæfö­4ÊÎÇB+â=ÅN0Ôoõÿó Äé ŠÃÌNÜžôü:û³fxŸ)•02 ìÍÜdߥ–šÅ9d¾Ðõõ?¯ÿó Äì (nx~(‹€ÿ´“ÐĂ䤠­ÔÈ°z µh8Gû:´²¹m­ÿ¤'z˜ÿó Äæ Àž¥¸bLLMS“v¤NiZÒͲ§|ûtF°ö&Ùð-A@Qè æqoÿó"Äæ +š˜x{ÎLRµ}¹€€ ð(ht4MÊcIÚærûÞ½\ïyÂ`„é5œ;ñÿó Äå Ò¡zpgöý@ª +"Ú"0–¯¸‹+!ÚE•1„2w0Ïà A…#yÞªÿó Äç ˆ¢™zJLås?PÿDöÆð†P“@#¬†ìÆ8boä09±úš{¨±©ÿó Äç ~˜zRJƒÕ-öÍ“€ÿÀ»¨Å&ÂÌ\tñ¡ï0 pg·“}HeOÍÒ‡Ëÿó"Äé +€Ö˜xÂÄpf*†}U€=°°'‹¢ÂgÂÏBiOqõˆ¯üõÂhïè#¤òÌÿó Äç +ž”x{ÊL]w\`< ­ ™Ú.XÇd::*ëfF‡¿˦æ8õ ©D˜Ÿ ÿó Äå Z¡¸KØ$—Ü{jÀ¡ÿ0ÄŒ€:u¥§"¡aJÌL;Ç S‹Ï㶚ž‘¿&çÿó Äç ¨‚ŒP{ÄJ‹-G†Ý@¢í¬ F"ÐÇ€´‰l% +Iz§€]º|¡>£ÿŠ$Ã^ÿó"Äç +@z”xcH˜o.6¾€€<7#ž†S8C IãOC¢1[ *´RAüç£@ÿó Äæ ˆ¢žXbDL€ +÷ð7E·J Ø|eQÈØÕ“ƒP¨G‰rí¥å´zâ[úOè6­ÿó Äæ h¢”x{ÊL{Ž°Y@ü<›?¤ \ ÃY +Tkk9}Ù&¾3Fl_Ÿ?þ!Vtÿó Äç О„P~ +L +÷Ö€Gü$}BÌ„ŒD-*M¢‹áHgú“þ‹*¸ÿó"Äæ è~”xcÌHgm¾n1°ÊÀ b Æç "}¨|3Þ­}ÑîEÖÄÿÒšÿó Äæ ˆ¢„~Ma>° +p —§ó 4—ÎamY™|ð&""¯Hס'ÝM÷õÿJÛÿó Äæhz”{ÐJwÚ + +¶Î0L8 ²”ƒy× D©‰»ò :•>OÅ=`ÿó Äë +Øæ¸z„pF]Ûu«QçÀb4#ks>y’Òºm=’|á…}ZT)élÿó"Äæ 8ʘ{Är{«ôcÒ/ÿ+Ý™ÐVDA$bQ¡F/ÚY:Bþ”ÓÚè+äÈ +ÿó Äé +€â™zÄp •ÎRÿ-ÐQ;z¬ +#9(ãÁK‘]•‹™öó×???úÖæfjÿó Äæ `â˜xzÄpØ'ì¹ €´ +ÁVÅxba2HÛ—Ee]“ÈÎT’nø;BC2¿)ñÿó Äç  ö”xzÄp€®ðçÖ¶Ãn:ÕÔ,+)óëÎuâQKl=ý6t?úÿó"Äç +n”x{Ð(½©HÖÑhÐü†ó•œ5W! BÓV‘}rðTý_aÿRˆR‰9ÿó Äç øž˜x{Lu€ü¸ÐÊf ÃÜjÂ6àØÞ\°þÝöý ´OõXûÿó Äæ xv˜x{ÒH\FÕ€?ÿÈñ^轜ãÍê¤íi‘p-,ðô¿|3ÎŒÏú¾”ÿó Äç Øö˜xzÄp§pT›ý€SþĬL¯ÜOv’e~· +rŠi·Ÿ×BÅŽ Û+ ÿó"Äæ ø¢{ÎLë.ª)B€€~Û{ +ëo¦ƒôé"ºBóó½-Šó37çøÂÿó Äæ ànx{Ò(¾H  oÀaR·Ÿôa0òX"¬„ðºÊ±hU¹3J·ü${Fÿó Äåˆr”P{JjR€€&ÀÆœ·Z¸=J™l¨pnÐÛˆËÊ…OîLàJ§Sì<|ÿó Äé +¢ŒP{ÎNsâ•¥Àûð/Ê%ïݼ#DPüX6¶€[½çgÿI¬íå<Êÿó"Äç +ö˜xzp jR9*€ü +Ñ…ÆÓÊrAchͬvÖ¿úhÊ£Šù84°íÿó Äæ Т¢X{ÊL4‹õЀü0×F]Ê̹;=Vd‚'uuzÀg»Ÿ—§Åšt]ÿó Äå°¢¦X{ +L×uVÿhD™EÙÔ"± +šB€0(ÔžÃ~ë +Ý.óË80¸¤ÿó Äé + ~šX{HjH¸Š@ÿ•ÙïÏÕÈÄHÜ{q3‹Pí´‰seú/ÄJ½bÿó"Äç Ø~‘ÃÎHˆýT€À›`.Ø欹Õ”ŠŒz õq›;ß(h}ËYe…zuÏ)……ÿó Äç +~•¸Ã Hê_õ$Oÿ`Heƒ¯Â÷](Á ˜{ºÚ¿Ë—éފ죠ÔØ.€ÿó Äæ  ~™{ÌHãž*¯X€ð>nu7j®)˜8`ËdÀn†XÄHL¹Dì$ÿó Äæ 8~”ð{ÐJ8WÛuõ€öÀJxGÃ9#“ƒENÀâ’ìpô~:°»N}õÖh³Kÿó Äè +Pn”xKÌ(4ÛYµ ¨ +83haùhTØçU•‰“îÙ×??ýIàüÿó"Äå ºP{ÄN~>}@Ûh +'m…ÂcQw,·6“Œ82NïÁz‡p…ÀáÒÿó Äè ðv‘¸{ÌHàåS= +èRKoë_‡áдӳ,Õ!ÏVÈ]Z}KÔ*L‹{®ÿó Äç èʘxbÄpû¨÷–Ò°€´óX=ô,¡›zA•-Ðá„¡9¯o#áqöñR|ÿó Äæ È~„ðÃØHïDe`ö¿Ž ©¸Þ[€.ƒõ…Çu$]¼Ž¾ö¤6,Ì?Æí>ÿó"Äå XZXc$@‚nÊ€ 5%+$âƒ> +g㌿Á‘ı×BÇ™¶¦bp.;òíÑÿó Äç ¨Ê„P{Dsa½l@ð¹-kòÕ”( Òt¥}˜xÜpž“4fï$.|Œ_Íÿó Äç Ø’”x{ÄLp¶jÙ ü‚*1+š)lA ÷þ(‡²3àf­…Âd",Ë9ÿó Äæ à¶xËÎL±krëü¬û"±¨7gLš‰»LøR V´P‰…‡‰=tçÿó"Äå ŽøÃÊL즷,€Ûð/Dä/ìn$€ð©ISmÀ$Á4pô ·¢Kt8ñÍÇÿó Äè ȲXÃÊLu»¬€7ü 7°²»Âøþ• +=Bj‚ô˜½Gr§xf{yÝë# ˆÿó Äç è’„ËÎN¼qßë+vèk2,'ª@dÃó3˜6^ùWkhí¸5¥oBÍIÿó Äæ  ŽˆPÃÐLxe? =ÿËÀûK`…ö2:—hù›ï„¢ ¿§Ÿ¤^Gø¿7¨÷L•?ÿó"Äæ +~€PÃÎHìÄù;Ý€€¶€3©u'åÒ±e7¯ÎïÄ8J¼×Ê;»ú§ÿó Äæ 0v€PËÎHø €¤€}ãŒ>M”»˜rOfBL²ÈmÕ÷¨÷Èr8zÿó Äè °~‘¸ÃH_CÛÙú€Ân;äî]1{EFÌs“v6Ò{2„m×ôô]*_ÿó Äè +Ö™z„pãký !m¦[Iþ!,ÁÚCS¼Væ!Q¸tÈë䔃WbO0Gâÿó"Äç °ŽŒxÃL~D ue@3 ôéÅ0…œå°J³„VΞ;ÐÀÑ6àO¿Â‘Çúr.ÿó Äè +Hjx^)ªý`©¶¶PÍz'N…é€l#–ˆôH#“¹™ü©™gýy¼þÀ¦Õÿó Äå Ú¸ÁÄp©æ*  0 ¨‡Ž¬ºmdðà‡§G€é|ç¦M q瘾ÿó Äç +’„XÃÆL™mÀA¿·ÝGÁ½)Ô]®t0†ß?AáùËÙ:+¡°ˆúØICÑÿó"Äå Ž‰ÃÐLm¶— 1¶µ¸Ÿ®qq6õG#Z^d¬ºïKN¨Ìþ§jø,Ecÿó Äè +XžŒx{ÆLßí¤ü P O˜?m‰aTʲ¶%‹¼QÒ5QæŠ*4ËzÔoXÿó Äå ¢„P{ÎLnA=@%1¤[Žl%T’!3–B9 ~»Œ1ç ªïQ¨‚ŇÏÀôÿó Äç °Îx{Dp¨T$זּÑùq?ݸƒà©Ô±YôÔ–‰î¯®8ö÷©¹âÿó"Äç ¢|(ÃÎNP¡ñ«Ö€ À(Ù ‘0 ^²ö)1êùf”£€>\vþN5ÿó Äè °~”x{ HÍ,Ÿ@Àÿð${ +¥ÎhÁu¬Òé…Vgà6:T‚‹1äÿó Äè °žx{ +Lg=~hIÿvšxMÕÒ›ñ¢&Î ;`ÑM3}ÓQüßfRRDhÿó Äè Ø~|PÃÒHf»UÏø"˜¥+P¡bŽú £ýaH`ˆÂ(ÖÎÈF*( +¯þåÿó"Äç ð‚t(ÆHB¢Ùßë€Û¦©ˆ8EÚÔùPh©–ÓÊc•G´¿Ø 9­UtgºÉÿó Äç øvˆx{ÒHœE7T  H¤ `ÏJÀY¨ƒ»¤`÷+ÈØU~thqÏsÏÊâÿó Äæ h’„ð{ÐL‚¬Oøð€ ¶·—$`HQ‡¹,HœŽž ]Ü£âX›·D&-Sÿó Äç ðr•¸zJHõ­w)Þ ù¹Q-¹BLü4´ž=ÝÕzpF¬5¢Ž±Q4ùYÿó"Äæ Xú”xyÄpA¯þí`€Çü–#ó‘´|&ؤ” +Ô`^‡}F1ûë?ýYFaÿó Äè +ŽpÃÖL¢rOßv €1š£iÍ +ÔpàtH@Žú¼g%×Êów{´_ÿó Äç øvˆø{H­‘¿­Uõ~ØcüM%2\>ò‹DLYÜï1‡ú6;pr´ÿó Äæ  z|8{ØHQÚúÀ€¶éÜH1– Y¬86i€E¡al¦ñ ¿Æ%äæ°Døÿó"Äæ à–ˆøzNLƒ®– ‡Ð€ÀD¿€)*¹dþˆfmYuÖ¦úƒÝ•š¯Ô5G¾ÿó Äæ `žxËÖMúÀ€ð$z¯CUf‰˜LÊ'‡%Uá^ _å¤FxÝüO©Ej´ÿó Äç + Ò•zp1‹¡K¨ð Ÿ Âx9™9¢Úl“Råáaµ_s†ÒÔPYÅÿó Äåèz€ðÃÒHë?Ú°€îFRý Kò0³–‹°•APª9F:„½‹ý2]Ô•–"Øÿó"Äè ТŒPÂJNŒOÓW%t€8YŠwå—µv` ªÁ‹e +¨{eÂè´yxR©Ìn¼ÿó Äè +`z„ø{HW_Ѐ­Ø +ÊùCÏk¤6„mÑ6*ðïötBJÚô8¾v³¬ÿó Äåž™¸zDLV·wò .Çn¦ZX(É +§ ˆ3ÂÒ•/‘ʼ¥Á|J`² ¤²‰ÿó Äé +pž‘¸{LQdñüJ€ƒ”±æ™ +¸Žˆ|”›—” +8àt‡Bɦ9©ñPÿó"Äæ `n€P~R(€Fü ’›ôI¯­­•²5ÙàPM‚9Á +¡¦wѼ_ÏŒ‘jJ“ÿó Äè +H¢t¨ÃÐLÑ:êy°øyíIÕÂ¥8J$”•„,ÏwF„`² çˆ-GYJ¨¹ÿó Äåø¢„Ðà +LyŸ¹€€ íˆq”L·vFBuú ûoni© K#;ëŸ!Ã?|>ÿó Äè +žÂNLÜwè¨0SÑ;ͲòQ£ ’c”.=n³B¬´2”¸aL&5/ÿó Äæ Øžt(ËÖM ïüh€BÿÀì33¢ŒÌ(X"Çêš–£ë³mSÀtÙÿ ÿó"Äå ž€ Ë +O>¿W耻§TbS´ˆÌˆÑŠ/ù½"‘w +™ßˆ!z“«ÿó Äì `¢‰ÃL)äº@ð %²†„ã.ØIBƒ +,.·º#e¸]cÍðªR-ÿó Äå žtÓÌMGè7Ê€€€)ªN:2‡½…$˜"bŽM)*¯«À•5Dû +jšÿó Äç °’‰PÃÌLùR_j@€°À½±]ŠJÕA„«F³‘;䦹Kª-ËûÄÿó"Äç è’„PÖL‹O¡•"„€Q@x¬R à”ðEÌ”ÙÏe‚4/Vʳ_+Oÿó Äç +¶šXÃÄLâô¶ÌšCˆ15AÃöóÊg)æ/ÅN¨ Û.©,{ÿó Äæ nŒøf(j_ôÀÿð2¾ä|2Õð{¹z–È©*=öÊÌfч>Šn¥jŠÿó Äæ ȶ€PÓÊLS-'U*í n¼ËþóÊ› 0T¥esjtϸ ùŸÊÈájÈ(üF&Îÿó"Äå PŽ„ðËÌLã‘V×ÿ@€í€q¢@éˆ1ÞYëVcÀéZk¤­õªŠrøöÿó Äç +ŽšXÂÆL>?å@€0Æ–Mæ 'q„gôƒz µòWå3>Ÿ8í dßPÿó Äå n’XN(ay¿H€¶Ð7reÓ{æ`2i ­r’:ƒÛÔe`·VøßÚ ›ÿó Äç ˆjŒxN(CÂœ5þ° æ;I&˜ÈC8 +óÒbl1 + +e…á‰$ŽËÿó"Äç +Ö•¸z„péSRΪ@€N@£S›s¦Ñ:?Ç +ûŸÅ“Hi›Äé¢dµßÿó Äç 莈XÃÊLé„?ÃÀÿÆœåŒßÖ:S$õ™ZÉ=3 ¿–ÜãMàÑë}ÿó Äæ Pn’X6( =‚ÏüH0ÈÈ—oÀ˜Ï1tP¬™ +jWxqUƒåIŠFuÑÊÿó Äç è~xÈÃÒHÿ¸Q}lõˆسo€¨’HÊ—ÐùðNÀÅ–i2Ó¾ˆ¤ÿ„üÿó"Äæ ඉ¸ÂÊLff5(1…2MFn!ÂNYJ°y@íÕ!Œ·Æ‡+üîºù÷¾­àÄÿÁÿó Äæ r„xÃHÿ‹ú€q-€õn€äªm4Œ-½è:`w™Ë¬TÏ›¿åª^¾­þÿó Äæ غšX{Là‡õžòÀÀñª[Õ“¬.#h¿±…q¬bŠZ=\ßW¾ÿÿXÿó Äå +0â¥zJqÀ߻րJvö+8Ï^gŠ¤ˆ#®|©Æ>­ÏûÇ›ýúÿó"Äã HâºX`Špƒ~Ê€À à55£ñ&PÄÃÒ-–Üñª™âuq~Æ^_9ÿó Äåpâ¾XHŠpä~ÿ, ”ø¡À~°>×bHá +p V9J&õs6˜þþ_û ÿó Äê +‘”ð{Äpoþ)ñ(c.>nÈ:§+W«~ Øñnyú´Þº¡Œ†ª'œ•âîõóoߎú‘ª+"œ¾,Üÿó Äå¸Þ™¸yÄpâÝè F®7b;dQŠ` ¥ ƒ*¬-…Ísfþl÷?.´ú”~}Gÿó Äé +y:Œ8{NqzŽuYR;,. ù2¢å1É~ÓÎÄfÏŸd÷y8(§_ßÿó Äæ °â|ÃÎsÇüR^ € OâE‘‰¬Ù¡n1€V_MÙžç^­dÒ¼òÿó"Äæ +╘zp²_~¹P µÖcLÕP*`¡P%"³:d!]¸b9…U½–ÿó Äå¸â®XJ„q¾ ßr½ ‚ ¬¸ï¸—öH,w«-³2´#$Ï8²XæÿÓÁ7âIÿó Äé +¶ŒðÃÊNA¾€T÷ÊÚ™K›fhE΂ž5}& =Åq+UÅ–;åG7è2iÿó Äè ÈâxzÊpïPYÄ̉^è_yo4DyÍÀ¶Ð¥LÙ-OóU×ÿÿó†'ÿó"Äç +`º€0ÎLɠ�@Q?õÊ")Æ§Ç +›l,»uèߨæuÿv'«~º7Kÿó Äå ²ø{ÄLõûáq`€z`3gîÕÃÒcE@ĨóKêy¿åcx6ý0ÿó Äç +¶€PËÄL_!¤ÀVp*Áé²,ÍD®CQ¤t&)¹ó†Ê³Ÿ¿ÿÂÏõ.3ÿó Äåàæ”ø„pÿAýÌP€ +v€$y“ÑÒap +ºÐBʶ&\w0"Óìeðc¶ÿó"Äè +HºŒx{ÄL³ê]rb`´ +Z},-®´¡«°9„È(¶3)§$V÷¼Bœ\ߥ=ÿó Äæ ˜âxÂÊpG·b¾€`m®tèÑ ø¦=h%„U9Ñjǧ̅¹äÿCfñ0lDÿó Äæ ÙxzÄqÕñèÀºp,ñ<¼é Š°_Ó8ÚŽ{ø>¾-yaÿó"Äç +A’Xz„pÏÝJ€ìîW Û±$‚@±'CG5‘EFÔ†uòe +‡±¯æÿˆ¾’7ÿó Äæ ¨¶ˆxNL5K9H€2;vl‘*…Dxd‰Ëœ Æ +؃¥í’ ï2V‹9gêÿó Äæ Á™¸yÄpôŽ~ú€.ÐÛ¶aùn¤«°WHõóîÜôñ)Û_Põ8·ùý +ÿó Äæ À¶˜{ÎL/É_éÀ›ð.ÓHe´öy!–›=A|¨AÍ/˜2È~ˆNNŸöãÿó"Äæ +Öø„pØI’øæÖ¼4SùòÓs‰%„µK¡áþéEÝÄÿ*Êè‰ÿó Äåø¶¸ÃL^E«ßè€ððe‚ȬS§ƒø[ÄP’P®Na`ίFçä{E’¾Ã9²ÿó Äè 貑˜ÃÎLK¡ ÿ ÀáMöóP.ô5 +¶êð±èZ?N‰‰2Êÿó Äç +~„ØÃÖH +}Ñ€f°ÖÕ׈Õ¬YL8$èËb‚3étËö¨eõC?ÿó"Äå @¶˜ÃÎLû… üÿ”À¹ª%em™ësÁf?ƒ±ØWa}¢YGyz˜ÔYÝåÿâÿó Äè +8╸ÁÄpŸ³Ë€¡¤¯Ø6î˜3Ú˜Á*Ú4ƒä´|_'º¶þÔþáÿó Äæ À¶ˆP{ÐL ߣá°ÀJ*ånrˆ‚•Ä6Å ‡ Ôh$Ù‰e­ŸOèý\ÿó Äæ +°âœÈ{s@ +ÿ§ÿp vg€«f ëâ**Ó‹aÚ“âÚrØéŠÕO?ý\@ÿó"Ä⨲©[ÆL +ûü°€ ¬XŽWì•q Ü¤’ªMGtÜœƒ,Jjsu>u‹Û×ýÿó Äç +â™z +pbA¿9âPÐ<¼¤WFVÕÄôQ™+`ÍT!¤¥¯©Ñõò?ýÿó Äæ ˆâ˜yÎpùß(€"¬'£³°¥ª'Zs(8ôIÇ›$¡4•2­iWn—Ìÿó Äæ  æ•xzÊpÿô +ûü°ôÁÿþè€âრc™¿æ!~xÕͬsPæNÁ‚ÿó"Äæ +!>™˜yÎq€¸%ñÐþÞ!—ÖE°UD„ó9¥­c˜ckFdˣεˆw€Àÿó ÄåèâªXyÎp¨TÏV>ÏJ›4¨õ&q0Ͷ¥‘µ¢Îr–ÞlŽbÉ’jÿÿó Äè +`âXÃJpÇùï.¦ +æÅKÝ0¼$‘·ÞÈÁfnk’ „sè†d.[ÿ-iZ©ÿó Äåøâ˜yÄp;_ÿ +û½€Îp%•À6æåÅK$€hÅR\W0BößZ˽×ÿó"Äè +hâŒøÃJpãýþXÞ ¥ +”{Téðð?ú­Ê²†Ç¼}«oFºju7'5ÑìÔÿó Äæ àºÊX†Lú÷úÀ«UÂp‰ü40éñ‰ß”‰šÌù_7ÛÜû~ÿë*ÿó ÄåÈŠ¨KÌL÷z Þ€evF¾ä_ 7j$E‡×¢A˜-ó8Š_½Ð/­nßþÿó Äì +ø⩘Ãp47ÊòÀÝÕ^H0~ž±ál{ÌÂÀr”â•óøíô§G2¢Öƒÿó"Äç +Xâ¤PÂÊp°1þÿXß 5PFrB˜UpãÕ†Á¤…ÏSÇÇô®­ZToÿó Äåð⽸aÄpø7õ³Ð¨ÕÇ:FŽ©(æMOÔ÷£Aü€ó4ÏÙý­Ùþ±£ÿó Äè +Pâ¤PÂÄp¿áo÷y`c°L3rä{I&ØJQZ®¥]W+™Á·üÿó ÄåÐâ´xzNpÔÿXPÊé܈ ´xðQ'zî‘Æ%dxD†Râ«ÙË¡­ù_õÿó"Äè +Xâ¨XzÊpa ïÿŽˆ&þœ:t’Uë|ѺJ‘¡J5èè®WÓ=Ϻÿ`±ßÿó Äæ hâ´xy„pGÀ«_¯˜;ÚÃfVz ̺Ä@L˜$1{OüdÝ^‡J—?ûÿó Äç øâ¤PzDpF?öÿÇ@€AcLž+YԪܔ'+ ±ìˆÓÿDB´”:°:þ‘ÿó Äæ àâ¤xzJpߨ€¢Ô 7¡ +Œy'¥`^: 0¤LêFSXõCÏûŸ…Mw„ÿó"ÄåèâµyÄpþ£zßåÀ€gð2ýZ,W²AXCa*œ@³ UZ¿ç8d_F‚ÿó Äé +‰:œ8ÂÎqüo - f«Â"ö9ð_‡¶ f¡[Ñr•j:ÿó Äé +PzœX~HluÔ|˜€í` ¹@/rDkDŒaäh+›\$Z¨›0fÈÿùd6ÌQ ‡ÿó Äæ À^”ø~X(]Mê?Ò¼ +ž²…Óyê4L‚«áŠÓa^rÍ PÆ<9©èΧåhÿó"Äæ à¶X~L'­òïôÀ–€,Êí?!ö¹S…¨y(ºaö¡tdÈŸÿª‰u–ÿó Äæ ض”X~Lê?Ä~€ à;V—µáÒE·ƒfsP»¥£ëú1š§1!&MGÿó Äå z¡˜cVHöú@:€ +±xóu†Þå:+²òÁX]ñÂúDWe°Avÿ?„¤šÿó Äç èÊ‘ÁÄpRâ¾·z€€€]×;Û±CdjÁ4bÓoýéTtœ|`".ÿó"Äæ ¸æzÄpo­Þ€ˆœ¸ .›U¯Y_ÐÞ&06 +6XÊBuá}‰z´³ÓZ> +½ÿó Äç ȶ”P~LýF·¿Ô€ +4XêÄð>CåTí6éÙÚ×1š$¡¦í­—cÿó Äæ  Þ¸z +p9^úÝé» )•ä©ìw—Vðq—UpLéÎ)$Ùá?§r"Cÿó Äæ PÞ ðyÊrB‹?Q¾€@À³6Áµ]÷LCPÁ<²ŒP"^úKmSQÿó"Äç +PŽŒ8ÃÌLüÿ€@€³€2®eB,¬\$™ÈXÓGUÐB=^¯ªßÿ eô<þ+ÿó Äåà†©¸{ÄHí¬ž¢€¢  +¶¼Oµ†ùÜzÈe7  §FGmHË®WH{ÿó Äè +8â™zDp~§y €À/¼ªôÂìCGè5‰š³R÷z e´h]Q›Ö•xÿó Äæ À¶”ø~L,G ÀWŽX …†Å»‚‚Ïg@JÀ€” Øaõ/?“&ÿó"Äæ + æ˜xzpF ß(ïHíÏê©d‘?Ea<[1›•D}#šH;×ívô쌪ÿó Äåà⡸yDp“Ì%¿¸ ð ½SVq?S½e!6º. +JPY‘rgT£+iÇÿó Äè +¸zq’ßP$“áJ·âDBèŒNúƒ–‘>ªÇUâ…›$ÝmsL»l¼=î³Uÿó Äæ ඕ{ÆL{7_gð€Ð +ÓFY& +r iCË +](³ÊýÖH+äQÂSiÌŒÿó"Äå ²•{ÄLl'ò À ›2ß"³,ö\‰c3”r`€ç–$ý¢“¨®WXËÁÿó Äé +hn€¨~(wÐu> $ X¬pdjh9TUCRðk¨1jòôRŽe–Œ¨ÿó Äæ àÞ™zDqñëä@€€·0ÌÞnäÑoRˆÂpf¼MºyÅ¡'÷ÿžtdwRÿó Äåè^”P{Ò(B­þ?Ôài~™TÒ3RÕ‘Œ2ÅBô1üUOþÎyÿó"Äè +ˆÞ„0ÃÄqö‚~Që¨à0õˆtÌ6›G1%C¶C-g +®Ýá·Üˆ!Äüæš+eÿó Äå ²ŒPÃÊLô€G÷àY‚)ç_!z ¿Þ;a‰*òÝ/ÿ-Ùʺ Ð_”zÿó Äç + ♸zpXßÔ¼9~YeIC`Z!e%åS:2ea>ÄýV¿¾›¦­µœ|ÿó Äå º™cÊL?&Ä{ä@'v,0ú1· ¨\#ØJâ Ú¥I%`Ü ëøÔPéÿó"Äç +8晸zDp\}ëú€Ø ãÓïFpô}äh ¼?ôö:èçuwÿ8áº]ÿó Äæ ØâŒXzqh +Ué¹`À7v6Êh_–~”ƒÑpH ÔðtÜ÷aDP^AD´8ñÎ ¼ÿó Ä刲Œ({ÄN˜´³ ®Ü™©rh¢4ð“…Íšó +£YS‰E|.Z^ÿó Äé øâ˜Xy„p‡“%ÿ¬ %N°—£2 Iä Œ‡+RÏ&‚ŒÖÔa"ÿéœ)0Dÿó"Äè +PÊŒÂDr·Ëä€å´ &¸óÖ¼1åŽB€ðž±l8ëcÄ«ÁJçE‚ÿó Äæ P®˜xzÄL‹d¿dÀð&Ÿweˆfú(ò.‹9E“Án¯1303ÓS/Lÿý1éÿó Äç +Š•ÃL£ø–ݨê¤.íÃŒþ”@&Åœ’;¶ªžf•@v‹x¨Ä:úšÿó ÄåèrˆÃÄHãÆ>œ€ $’)Mçݦ…h©\"Ö|á–¢/Ó5J-G«$J«3ÿó"Äè +0²„PÃÊL•;Ѩ¥fU9-¹Êaj‡Á!¤zæœl¥ïTè"œÐÅig<¢ÿó Äç Pª„({ÆN]ŒÛrÀ ÙeÌfñš U‰²¥œ­ïÃ*êÀûÁKdÿó Äè +(º‘ÃÄL© +ßS¨€@ w€6¤xá¥LF`·*ÙÖ‡vfç†4ê­£ +š·Qÿó Äæ °Î€ÂDp!Ú¯H1†¾'Y±CÌ&&”Ó.£(«ÀÁÜ"w3ê%ë0¢*’ÿó Äæ ¨²€0{ÐL¬ý_@Ív2©ádàD +z€ƒÉ/Ý$ô2?cÏgÇÈT¸Áu øÿó"Äæ pn„8~(ÃÕ¶æ ’€@ÕÛ3$g°p£ +8!/*; ‡ +nšŽÇxî,Ä4ÿó Äè +²ˆX{ÆL„ +Tõ€à  ž»Wa‰à;{qërùª"‰©ÕTÊAKN¹d™zÿó Äæ Àž€0{ÄL¿àÀÏ*å:R +v_˜@ %‚íÍ<Èõ!~f[¯ù†Ö­4éÿó Äæ ¨Ê•¸x„p¯6›lÉ€»vt5küz&õ#YR)Ž?,F*Pê,’§–uë!¸%ÿó"Äæ hv|(ÃØJÉýõÌ +Á㽶 :í‰Øòlǯë—íAüÌK?1c<ÔÚ–Bÿó Äè +8ÎxyŠpò1gÿ¬€­üžšÔÔÒËnB/ÌÖ_޽Ƞéo ¶ïþµ¶IÁ%ÿó Äæ ÈƸzpÍ?О€Ä×`2¥os’,#´<q-¡ùG<ÏF=þîš-‚ÿó ÄåØÊPËDq}MÉÀ Ó`9*˜–eGLÒš+(`ŸŒè +­ ¡œÖM„¤ÿó"Äè +ˆÊ‘¸zÆpëíÖ3Í€€è  +˜(ŽF«¦ãò +K©M=ÿS+­ÓÖ}Ε@Sÿó ÄåÈÊ”xÉÄpWöÖ 2ˆ»mÒn5‚¦a¤¨RÔAêÏ‚u*Øa™-ÕÓ–3ÿÿó Äè +0~€PÆH†ãÓø&€×2­eÍr§x0 u@ÿ`'pœ2·HI´æVezÿó Äæ àÊ‘ÂÄp-`˜Õ»èK(ä—Ÿ«tž¬éô!s»DGóPÁy"&ó¹Ôºî9Û0çÿó"Äå @Æ™¸yDp²ËJ`‹E À^Ø*¯ÃE&Âìš ù’ø[@A­÷¶®·TÝUxÿó Äè +HÆ‘¸Â„p-è€5Ø”ËÞ~ÓåLP”eä_ð'Ú‹Í_Óâ:üËJDöWòæÿó Äåø^N()ȵÈÀØ- µãÄ"!@j&ðà@åG£D‚"VÉÔüÿó Äè +@Êt(ÓÄqÂÌ +Äá e™%,# CªƒP£Ã ç&ž§j°ªŒ +D¾Œºÿó"Äæ +Æ•¸zp RN®êÀ64cO7¤ÖSÀêqtP?\¦¾Á£yÖ·dÐòaêÿó Äæ ØʈxÂÆp9S½) p%:_Ø1Ä-¥¸Ä6@~°B3¯·øýÙQã¤Ûÿó ÄåÀʸyDpô?‚vš€\0‚©XõqiÁéú4AÄ-w1SO4Xzõä¡PÁ+‰‘<ÿó Äé +ˆÆ‘ÂÆpwÈ€*íä¯ÒÀA)îEÊ\¶(ÿJ‚¾i›:¡sãÔò¬¤R-ÿó"ÄåØʸx„pX³û:Ö€å´Î ê8BCš†ÙÊÜç­Ôö‹ÛdÈó²?¡(u4ÿó Äé +Pž€PÆL£ÒÏU¾ K¸­Ò°CêÄÜEýU¿É3§Ëò/ÂÊù7(A…Gÿó Äæ ˆ¶”x{ÄLW}r@ hrZFã0˜± ÊÎ ‚~–iø‚Mœ¥g{b¦•h²ïrËÿó Äæ ÐÞŒxy„p}Çj—»€ð +ü¹‡FÈŸHCHÊ’µ¿r4ª&&¸Üab{ÿó"Äå Z„(Æ&¬ï¤€ .MujÄE‰]?Ò@bS-ü© 8•†»kŠmkKkÝ[ÿó Äè ø^ˆxÆ(Û–€»`5 gÒcÓâV&Q^Q4ü?.Qqmª­º9+-IÜÿó Äç + ¶‘{ÄLÒ·™éäbð #XFÀ\ˆ0˜؉Y]/‘Ê8·Ñ·ÿó Äå ž”x{L†—âíÒ ðåö·@<Â;!Y¤ Ày|ÐZòXP!G?”Rr*ÿó"Äç +X¦ˆxÃÆM0!ª€©°k?. +éÀ¤"ëÇ„h—ºIÎD$F•üõbÌĪqÿó Äå°b„PÃÞ(šª*c} pÆ ¸nÉ—h‘ŽDþßzÈÛ.Ô0q¼PÓÿó Äé À¶„ðÃÄNˆù +üˆËœªdƒª°$p&†×q²S­¿VZ• ï…­l#Êèÿó Äé +€¶¸ÃÊLHÁŒ]а`«’èÛ,•’€1­²å•ŽD"x¨ñ?;çÿÄþ]ÿó"Äæ ¸¢„X{ÊLÿÖŸÚÞŸr—÷àô$ã¼ëf +gsUÊ”:)eø˜ÞûÿÿvXYDõÿó Äç àz€PÃÒHq§X퀀»®K K-’8žÅ ‰‰ÿ©Ú(,2ßà +”¿[Z§ÿó Äæ Ø~Œx{ÌH +oŠ"€€ ªO?w•+ÐÜÊLªbó¡Sj8Ûu´ºÅ?ù†'×ÿó Äå ŠŒPÃLõšr.”áX “!ˆq/ +hJ§J.Ú°‰›u Àþ€zÒê"Ú툶s”x1Ö­ÍõTÔÜîÿó Äé +pÎŒøzDp +’éÒ0þï4›m™r’™4MCžw$øâúÉ30¢:‰«j݈ž·ÿó Äæ p΄8ÂÄp‘%Èý :€•y:m$ô'@€" +ŠI÷ߎßI„óGô^Híÿó Äç °’ŒxÂFL(ìû1äÀ€ÎÄÍJš°@ŒÀ&AÒ‹‰F#V­~TñÐJòÿó Äç +θy„p?ÜÜ Bp'$Éd :!bþ¾ìäFX`³åô<Æoyÿó"Äæ °^™¸KÌ(2‹Èý½ :¨]+iºJQ!˜å뤷ýÆYͯi­ƒT»ò^³ÿó Äç ¸¢•˜{ÆL¶¯¯H(m²Ù–w<ì¾í ™E2O9t‹ÿS8]_¶î ò‚£íVÿó Äç Øz€ÆZHUOÿ¿Š h4ª˜Ä˜Ù!•e•k­/Ê͈Ö4)Kp +ºÇïÿó Äæ Ðzˆ8~šH­D#õ€ôp0».xuœË2LòYÙ‹#YAØQ2t(jM-Lkìÿó"Äå ªžX|Lt7‚þ€/µK]]ž}98†ˆ4iQk9ž‘Pg+15—Ó²Û[ÿó Äè +r„P~žH-¶Gü€ÀÄ2¬V¾ +@³Á:‰§u,Ùj[BÞé¡Üÿó Äæ h®ŒxÆ +L꘺PÁYdq%ô"h-Ÿ;êZý\<&n5Y4¯®'ßÿ·ÿó Äç +¦ˆxÆDL£ ®ø&ú€.ÊñB +®M;ò/M¹Ž…½nPíåÐö•îu½ÈŸ  šb ‚bCÿó ÄåÀ®™¸|FL·ýÙ69äÀ$’@3¦×)jý<'bžWŒ¥[™b¢ÍUÿa€ù¹ÿó"Äé +ÐÆxPÃÄpÊÚîºð× +k\þÇGÿŠ»¬ùŠ¯#×~a€¿!*Td’oær3ÐXÜ¥ÿó Äå˜r„(ÆJŸúÅbÿmY_û + +ÿÔˆ\=•è^¡»ˆ5ã4_sž㈠k]ÿó Äé +˜®•¸{ÆLv_Z ª 7ß倀°  Pžq™ˆ„Óò¨d<;*x˜Ï©óïÿÿó ÄåÐ~¸cÊH)Á¿­þTÀ¹„ŽÂ¯²"é^‰åqȦ‹#10£Þùȼ¡ÿó"Äè +â²XaLpöKýÞ À¢¸T0¯\ßa|3ž ÑL¶EÎ÷‹3Wê¶q½v˜ßðÿó Äå 0â­¸zp¿þü\ €±Žg» +Q'ÐMÁ|?UP¼k(b÷ÔÆÌoMªÿðÿó ÄÛøâ ÂJpo÷úÀ©«Ô,ÒÚÃî@¥ø}I0 +V’ø¢xÙ~ÿH×™f´qÿó ÄÞ â¨ðyÊpØ3ç=@ÀÀ11ð13ŠdœÖŒPÇ €¹èxM´pgôuoúØB[ÿó"Äàðâ®8aÄpÔwÄà€€0Õ +vÿé8 +†X©Ê}aᧄ$jg¶u¿ÐŸøXÿó Ää ⩘zŽpï¿Ð€&eV åy<4Ìà:‰DœçÖ4R_O:ÞÔÀ„'øÿó Äæ Ù>¦8{Jq1½g½@Œ5„µ»ÝRÈ<–q2¢ÞRö˜sÙ™ â¾û?ߎŒÿó Äå âªPz„p'ø¤;îòà€@1BP<.ºÁþõvc¡ö´\Ù¡–F0n ÷d¥ÿáÛþÿó"Äç +Xâ˜HÂÎp£zè&÷ P]¬âw´˜9²c R¹¢™„8œVb•VÌþ'_ÿó ÄåØⱸaÎpé4;ç½@  +]Ì'%WVÉðI¹ +2EÔ1/OèŸñ;ŸúLÿó Äè ¸â™ÃJpõœõ€@À…@Ï“­[ÓZTð&«_tI¬ùlŒj×p µûnPwüDÿó Äè +â˜è{DpþŸûâÀH¬+]uöææðu¢±¢#ºÔ&iíœ;ûÐ7þÿó"Äæ +â”ðÃNp03ïòÀ€ ’ÈiØÁ§Äê!|8DJtçM­ÌyiíçKíáÿÿó Äå ⥸yÄppC}þ°€ð³ +ü«3ž¢äJ€Øy ÉAÒ˜"9~ú`¿îÿó Äè +XâˆÄpo»Êˆ(V­DÝ«WvÛJU$Q¯<á,W+¬÷»ú¹0iž4ÿó Äå âªXzŽpu÷Þ§z@ÀumÀ´ª×¸’«†ùJ$¡Ú€Þ5£¶ó +kdŽ£y;…ÿó"Äç +Y:‘xÂÊq2ß뀅¨pgAm…€ê +äA¼ŽŽh©Q ñ•ü©tCãmÿôÿó Äå ♘ŠpÎ+ꀻÀÓ3j£­Ig®‘b z:¢X¡±_å +ËJïãÿó Äç àâ•ðÃDpínòà Ü´6ö~ãfÕRì Á {Á+ú +΂Y«yµ‚ÿó Äæ ˆâXzpâ€@u°Ý$ªÂ/N¶[öB8ÖÌs1aaóÈMPùïÎôŒ ÿó"Äæ +âœøÂÄp…ÿè?ïõ 퀫ètó+–F¦sÑ·c: +þ½©:¯ýc}ÿó Äå â²XyJpoõ€€ ÜÌÛ…íìd¥ªTT©ZÑ „µœB1Ð…³GïhP­×ýÿó Äè +ž8yÄpýÞT€D2λb§+­›’]ÍÐK5ÍxÍﶪ~3?ê¼¼£Qÿÿó Äç Øâ¢XyJp­¾§jq`€_ÎÜš{äºå(Ž¬ Lu«{æo$fäÖÿó"Äæ `æªXx„pá¿—À‡¸çìÅ,¸Ú}ˆŽÌ +‚BâéÌ[FqÅuã[Ëð‡×Ôÿó Äè +Hâ•Â +p~ìMÞ³À€zÎ|GûqÊLFŸ±íT ÜÕ2óëÿ+ãÑà›ÓÔtÿó ÄåÈâ²XxŠpû·T, •$¥÷:…'݇¬RÌ‘í¥@2¥!ºÒ©?wø¼²0' ÿó Äè ð∰ÁÊroQíåÀbj¤r#“@Ô¬{R&eÔ’Uj·ˆ§i9ˆïØýÐ{ÿó"Äç +`♘zÎpŒœýô€  1ìjž%¶ÿ¤ *òV&bmÌ46ôoAàÛÓÿó Äå â¢yJpÁò@À€jlŠWMÏÉ9FΧAØ7 +R¹”Ï?nÞJ…··ÿó Äè +Xæ‘X +pa¯v§zÀ€™Ì„ØÜï +´n ñhRw, z¼Àt™'×ãáoÿó Äåø⡘zp[ëú@@>~Ô¬½¢@‹é« +íQ¥Ôà¶iŽ²Üû6UëÅÏþWócÿó Äè +æŒPÂÄpáuäñ®ÀŠ`xÚ×¥š ªðÜ\ bAŠYꘙg<üWïí¼£ÿó"Äæ +æXÂÄp¯_B›ZàÔÿþÅ‹ ¨vž<‚øžN–=^ QÐx!ÿó Äå æ¦XyÄpë}u€küš¡îtn6ÀI¶„h2H~ scšÍv‘õ6kÕà½ÿó Äç +╘{JpGì%ý€@ 0jÅkR8bq +£Ý­e׳œp1¨Ek©µùjÿó Äå ¶¢XzÊLΓÉIÀ@CÏ€2¸‰W¹Ü bñU«VH{Á¿‰G}¿Ï,jÀÁÿó"Äç +8â€ÃÊqƒ$òRJäÀ€`äÕ$+U˜ºš¹SZÇ_ê>©Ö9 +BUd]«\ÿó Äæ ÐÞ•˜zÄpôè€@Ði\ª)Sw O$,+ dŒCCJM$ÚÞ[þÌ­8Éÿó Äå ¶ÂXCLÅ÷F:…€À€j`nÓòš»E"† +Øá_F.Eº™¯Í´uÿó Äç +âÃDpñ±ºVà»î²õ³Js¹aewÛÂÚïu@‚ A! Ÿzÿó"Äå H²™˜~DLa~.€XÖ[*Ùž£ hƒ f£e¹ $,à©÷¥ÿÌéd©4×8]õÿó Äç +º¡¸{ÎLúÀŽ01Utyžm0MÆŸˆìÂþ ÁAºûøgMt9]Kÿó Äå ºÈÆJL¿…~ßPúÐ":óÏÓ¸!€«ÖPëÜþ¡AfƳ¿ê;ú`þÿó Äè +HΑ˜ÃDpýƒ}g½`À€z.ÁÉzI´Z8wª +£™”[P(gížßô/ïâŸÿó"Äå 8晘„pý¿è8 €~¼àú ƒ$ÙpD/€ë~¨2n¯úôOêÜcûøPÿó Äè ¸æ¾X`ÄpoÑðà€B¬¦Q†©»"àcb«Ô"NñÚÐÌqnúï…_ûÍ÷ÿó Äè +æ ÈzJpî÷úÀÀ —ëÀËö]}t‚…<;våÎŒd ª×ß9ý™¦{êâÿó Äæ ¨â­¸z +po­ž À€¨ ©T÷|–B¬ +à2¶?`ëàÕà¨æ£ï8ÎK棡ÿó"Äæ +âÃÊpïã~€À@,&8lwµ2Þò +{‚_e“-:"†róÇYÍB)Ø›Þÿó Äåù:­˜yÎqŸúÿ‹€ìð"V“0¥sQä(ð–Ž©}ø“¯ýŽ»úvOö÷—Pÿó Äè èæ˜XzÊpåÆÿcÓƒå+øšHÐhs˜ˆ‚f-MYù9Å-X¦¶¸ãË­_ÿó Äç +âž0ÂÊp”i-¿ùP€aÀ&”UJÝPIšP‘¦ 0LÞÙÊIôZQÿó"Äå â²XyÎp¿àÿúÿàÀ Â1šóP(4&Œ9?i8*[ºÕ‰êþÞ¯ÿ ëÿó Äè + æ¸zÊp=åÀ*là1`D1x¼ÑܼÛÚ Óë‚—¶T<À×óº©{o£ÿó Äæ Á°zDqF?öÿÉ€"ûÚÀ¡ƒCXŸ £ + ¬N'»‰†e”æ\ïíQ•¯£ÿó Äæ €â¨È{ rF=G}` +C /lHæ'K“ÁT‰‰ ®J&?h‚¢¤ª×9ò¿;ÿÿó"Äßèâ¬zÊpÂÿ¿þÀ8°Ë›‘‰9yjª…`³%r“»‡Ò7¿ Ýj¿üÿó Äã :½¸b„qß9å€Àuß/Ú5¤gÒñDj zãmœY·o"o?üßôÿó ÄåÐâ°PbÊpÿ…&â0µg–ª…ÒØÿ +Zxch)hÀfg4£jœ·­1ïü¨wÿó Äè +I:¹¸bq©þP&P ±%H?H5‰¤T©Â“Éïb¯]ä÷½üdß3Ìoÿó"Äå XâÊXINpé4;Ö{Ë€‚gUë8oþ_ßðOÿó Äæ y: zŽq÷zÀP +·XmYç$ dô +m+I©¸T̵ U¤ä.Þþa¿àÿó Äç Èâ˜(ÂÎpŸÔwň }$Ä££Uež¼ÚˆÌA(×S …™ËCSuêpÿó Äæ Ðâ Xz +pÄÿ?ïòàP +A—îN¾Ão£®ó¥ãP¯fÔæE•®Œ÷í/«Áÿó"Äå @â¬XzÊpëg¬'ºPêZÍ¿D£%…>#‰9 ƒä7iñüt]¥#ˆê÷ ÿÜÿó Äè +XÞ¡˜zÊp`ÿüwÔ€KJòº&á”äàÙg,1–†*¸&h±kˆæûi'…¿ÿó ÄåÐâ (ÃDpà‡ùÿ.Š€uøhøŠ2¨»EL‡hì3“Å~ûEY=ï]Ñ|£¯ÿó Äè +â˜8ÃDpúÿŠùPè?Y¶üJ Áápabz2êO}C‹ïŽÿó Äæ ¸â ø„pOªá¿€”n€ +$âÝH™$ÙP” 0#eû,×Æ“ +íç–üÕcÿó Äæ áœXzÄpÃÿò + +3ÛlÎó3n©L,XŠ(c‡Ñ=¦³[gKëãÿó"Äå XâœÃJpõ +ûü ÉÀezOìÑ‚'™‘.ÜRcx8Îc^mzyñ¯åû÷+ÿÿó Äç Ðâ XÃJpÔ¿À@ÀÍÕ€:"v*e¬¿ +ÈÐSJ< Žgˆ•`r}G‰¥ZõG¯ÿó Äæ ˆâœXzÊpœì47èØ +Ä°l{‰JJ|‰°¹¤Štj@mJ™î#Ì$9Á-YyW?ÑÁ>n¡ÿó"Äå ¥zq›ý‚¿ßåÀ¸·qüá«1«iœTD­ëÄ|°hÓmo*émÍú+Áÿó Äè èâ8ÃJp¿ÎyP€—–Õƒ´%2Î"c8TðpÜDÍò¥ÍüÖÍóÿÙ‚ÿó Äç Øâ˜XÃÄp¯«!ð`” j!FèZiÐAq@s_N5 +Ù áy¡9 áj?§7 ïüÿó Äåøâ¨xyÎp3ïõ€Ý€|“°ýç" d$¨à+bY1ˆÄäFrܹþ´é¼|·ôÃÿó Äè +0â”Xz +p²5žò€€ v­D±\àr¹”H“pÍçˆKQ¦?°ÍŸüý|ÿó Äæ ¨â”PÂpkÐ3îò €NP4¿B²PàÌ€$¨ Æ–q Ñí[ø¹ÿäÐþ¿ÿó"Äæ Àâ8Špú +÷úÀ€ªp!©ã'Ú“ B„LÌ°©aø‚²=]¨¿¨½ÿôéêÿðÿó Äç àâŒÂÄpC}õ¶ Òàf#3-ËÚèZÅ~,ÅsDHüÃGgGнþ­¯¨ÿðMÿó Äæ HâŒ(ÃJpÿ·¨¿@€ƒgÐ IåéB%"RSt¬T ä‹žéÑÍýuWèþv® -ÿó Äç Øâ”XÂŽp¨ÿ¬€¹Ê[¢"ðBÙEæÛÐ>;ÌE!ÕyR³Žnク§Œ÷ÿó"Äæ +╘zÊp +o_›ÿ"4ß’£á°õ w’¹ E a˜* ˆ"ÆGµ?ÿ…ÿó Äå ⥸bÄpöôo`AKeKú›‡Ã#G[“09 ªåVÆ8ëqåÖÚ 2p§ÿó Äç +â˜ØzÄpõõ€€¹¾_\Æb t‚‡åâ)˜'õ…óõµ9gðtÐ3íÿÿó Äæ á>˜Xz„q?ÿ÷ñ +áð¶t\~+èÆmvI< T%q%/ô?ÿƒú·üÿó"Äå 0â©aÎpú6z@G&yó:¼DªK`ì+Ý¥øÆNÿ´Tn7ýc}ÿó Äè +A:™˜{Jq~_üD€)¬ ›²“((q*wj +¡ø.÷(Øñæ¿Z½|iÿ­ÿó Äæ á>8{Jq÷ÿÄ@Œ aŽ’Aqˆm·<§C¾†&Üݭ廫æœW°ÿøÿó Äå â xaJpû3Ûi±å™è4¤a-Œ«»Š\2à\b|Vؘã­ß©<«úÔ7ÿó"Äç +a:™˜bJqÿo_ˆ§@fìËÕWcaª£* +~:ùœ<“…pÚ +gÈ%Ë{õ ‚ÿó Äå â0zÄpþ£ý¾ €ÏÚ¡"$7ì“Kg 3D&¿¸¿õ5»¯ëä¼¢°¤ÿó Äç ±:˜xb +q?ïè.d;UP˜^´&D ¤7I $>¹gåê\IÿÅΤð…>ÿó Äç +:•˜yÊq¶?îò …­°$¶OÇ´s1ñ’K0Ûò«âêNù.d à„'ÿó"Äå @â”XzÄpÍ`cìþ €’`;\TEÌô ÄM + •Àʸìç<¶•4“Wñ^a)öÿó Äè +>”xyÊq°7ûü¸€c¼ ¶å_B„ädäˆ]’† eår*:®£^þN Äÿó Äæ  â„ÂÄpÁ¾ÚÙå@ @먣›ÛŸÍÂ$ªÛr”Ôx¯â[øº‡ø~€ý¦ÿó Äæ °â˜øzNp³;êÁëÀiªÉ4}1WÈäè 8áÙaÓ?Ayµï†ÐâÞ7ëÿó"Äæ ØâœxbÊpØ"ßip Œ’•ãÁ§IêÀ¡/­y§l´;ñâä”í[iÿó Äæ  â¡zp*­ÞXÀ‘ð1+ƒ† Éð“wb7SÊ +v&ŽÒÚ÷‡òŽ¿êÿó Äæ ¨â¸z„p7þßÞ€€ÀÛð6×v*#î"kù*gH=“Òshä(K¯©º…Õýñÿó Äæ Ðâ™{Dp¡™?åÀÀ îòΓ•H–Æe +]k š.r¥“ÛIϤÿãx'ÿ¨ÿó"Äå @â¢8zpÞž¢½%Tðú’è¤û–þW9ç6`ì0'pJÛÏw?šFyçþOCøÿó Äè + â”XzÊp/þ7­Þ À»`,™„Òp„ÖÉHnÈ +gîi}&ªióx¢~” ÿó Äæ °¶ˆ0ÃÎLõ;ÖÀ,™”ùª,Ù±Ýp–Ç!!uŽe­ÇÂÝ)ùïòÞqdýÿó Äæ Ñ:¸z„q¾ž‰í©ò¤è„ˆL?€I(F‡†Ç¤?? ¦×óû'úÿó"Äå P⡸zŠpÕ³Ôw)>éÕÁ ™>¦!†'±Ä3ŽjïýSÄǸ@w§ÿó Äç ù™˜{DpÛ«ìx˜ÀàTìÝ„ˆ`ú©èæŒm‚yv%6 ku½ M?ßøc¾ÿó Äæ à∰ÃÄp7ƒÿÁ0À§@Ë*8c9du] å‚L·°€c)uÁBb8øƒgöÿó Äåø⡸aÊpÿfßꀹ€ú +YìëгCÊõ¶­P`x{£Û¬´-ü#íáßÿó Äè +`æ˜{Npôx'û·V€IÀŒì¼8Û¦sFÄJÏeʦ¸!u©~™iøšænÞÿó"Äå 8âx{Jpÿ³‚—Àf~£ö¢a4å…³!a7瀘p¯§*@å/Ê +±ý_ù\ÿó Äè +):x{Jqäb– »ø£Ÿüè\a¢/Œ-à ð–6éÔ±oÛRuþðCÿó Äæ ¨âp{ÄqåÞÒŸ$ N_À»c +Û¥5xêa>Ñ@™£@ËéÇØûi3cy?Òÿó Äæ ÀÚ•xÂpaõ¿¬À*nw!Ç«ã2†bkihFœ@>ÿ–%öVÇðßåÿó"Äæ øâ•xÊÄp ú['¹1PÀkð ³+_ùùäÁT0ÇM6ƒf¾®F¨ôäÿó Äæ ÀÞ‘˜ÂÄp·zÀ -è~¯DW ÓÖ²va…å1„ +Ôš³Øÿ³ësèÞŸWÿó Äæ ¸â™˜ÁÄp¨nç~á€À +jàà"¨Ïåu4g,P èNÏ*f)bó4åoÿó Äæ ¸æž8ÁÄpMª?} h5V¥Ùˆu&‰0í¯%=¸#ß)dõi•úþߺRoðé«{·ÿó"Äæ pæžXyÄpõ¨ùþ°À—ð!)#8Z4@™¡]è Hz¾UÍowj/—ú<ÿó Äè +`敘ÁÄpûÖà :€€ À‘z­!Â!++µœÂ`ìöêï^þt9ýˆÀÿó ÄåТ¡¸z„LÇÛý@€8Ã:VñW¡5ÈluZ̨Bn–n¤L0+ØN'å«”«M)ÿó Äè +XæŒxÃJpô§-íÛù»<¶šyøe—F + ÖkÈE- +bþ¯îÏÂŒÂâEÿó"Äå X晘yÄpêΆ"þgþPƒ€ÐÌðöÓ ‚âèE6œo"ê·X™¨Ä_gCÿó Äç àâˆÃÄrRWÿPQòÿÐ8€1–˨f›Åêä Í*ÿËŠv+Ëù¿üžzÿó Äæ Ð♸yÄp· ¾l€5v@à;eYÔ³úR“¢•£û¤¥¿üØÌ +”½Gý×ÿÿó Äå â¢XyDp +wø°‰+~â²wá +š‹çK Ÿ8žZi9ÓüÞ¢ÿÕÿñÿó"Äç +`ºˆÈÃÐLM¨ý†„0Ü-õxµ†ZcÀÝ¢ûX“Ë·OSe‰$ î·œ?ç×ÿó Äå "¤({qóOp›âÉ8~°ˆLk·¨Ëf€:Ó@ÅR­uŒÂ-Ô¡)òè¶âÿó ÄßÀ¾½KÔLH„?nþ›ÆKYÆmWË +%éþ’É&'¥ø~< +"4v}eFÞd{Õÿó Äã°¾¹¸cÔLòCâ?‰€¥ÜB3>BHÅwJ´ì¼OAâtc8xÝEOëÿÀþîÿó"Äç è¾ ÎZNoýFH(~¡˜’ŽnÆ!˜ +Pb‘±Dòh]JZ•–îDù?øÿó Äç Á¨XÂÄqÚ™Fø„§1q Ô ìZ §|gN/1ܪ„5D*Ÿ·˜þfÿÀÿó Äç + ¾¤PÆLÿô_ý„Ý9°ä¥€7î48ìËhÉ„ N–uh…@žÎô–þÿ€ÿó Ä娎°X|”Lz§¸ÿÀ$uç‹0 ãÙ=^(“cºldÓ»œ=á_ÿó"Äé +¾˜(ÆZLÿ?þ¤ÿÔ`€:|¨K#Ì,%q}@ GI‡æG[A˜m½ z?þOGêÿó Äæ ¤8ÃDqOÈ€1¨ÌÙ‚ò>,Ùîaq>Â1'³õ’†ºê ¿„›ÿõÿó Äç ðî¤XÃDpúùp;šÒqØxr«ÝšEa4` +ØÕjjî +ïà"Ffóþã'üÿó Äæ Áœ ÂÄq ÿ¨—¨>ú×_Õö) Rž<¤‰/9êYÿäH +[Æʳÿó"Äæ Èîœ0ÂÄr·ù>ì‡ÔÆ7Uó¤¶@ªN…ÊêÂ¥ À³%<̳ÿæBƒUè$ø¤ñÖÿó Äæ á PÃDqÿ!ñЇºÍ"oêÙI6¤CU 4‚HžI‹©p;ó†ú_øÿó ÄåÈî¨Xz„púÎfþ€áºÊîXÆ +£/˜A(Å(}–+n{£çþÁ;b²þOüÿó Äè àî”ÊÊr†z‰|¸ÀÅÀ‰(Òh%ÒÚ‚ºP’Õ‡ã AÚ`flí(y†Oùÿó"Äç +8îËÊpýͽü˜À?Lö _B†L`ÍÑ:t íH)–”¿ÿ4:n:E¸ÞSÿó Äæ ¸¾ ¸ÆLrÜOê;6©Ÿ†f¾VYfœø +3<Ä°Ãì/³Ì‹‹ë:KøD_Óÿó Äæ ¸¾˜ÆNçÿÕ?øà‡ ã¦Vr¿äÄ„Ç+ÍbÛŸŽtŸøfK&47Äå5ÿó Äæ  ¾œ8ÄŠL±èù¨Œ‚\« hœ„ˆ#©·ÚéW4õ_rg>ö>i*eEÝ?ÿó"Äæ 辘ÆLü®v4È€ üc$‘‚*n*³AŠò ’\ê¿uvçÿYçÿó Äæ ¨î 8ÃDpIü˜@øBÑÂ(C…$˜+Ȫ@,V4'9ˆ}ÑRCõ ÿâ1…#ÿó Äæ €Ž˜ÆNÄŸ1ol!ÑOâ T`x¯#Ñ4BÀÔMMë>Xµ½E¾Qkÿó Äç +!”ÃJqÿO?h&ù€ÈОŸ‰á5Nö—'±s¯YZÖ<$‰ þ ë©ÿó"Äå Ž 8Æ +Lµ~#À3jº—BØZb?¨!l~<”Ê‚'Õ®T{ãáßÃ7þm­«ÿó Äè +H¾”~L"§ýP‘9~(OѦ.Ä4F'd°*œZÕ’_ø3‡V§ü8Ú¿åÖÿó Äå辤X|Lk; Fù 2~ô'H¨4,eA3 +æ¯LTt +·ÕçÐÂÝ¢cÝÿó Äè Ⱦ˜8|ŠLžõ|¢XÎ~#â tù,,}²°ØµŒRešwb&«Â€¾Ab~ÿó"Äç +`î˜XÃDpUOêwQFZ†[(Qƒ-CMV(˜âwexMFrZv¶¦xXK~*­ÿó Äå Ž x{ÄLùeyOQ0ö]’GpÀKŠxŽf€™S?Â{lkþ"š +ó6¡Oÿó Äè +)˜XÂÄqìõ€ú‰õºma—AëÀßñj–]°^µeG +ŸäuŒctJgø_QOÿó Äæ àîœXzÄpß÷ÿã€`=ÅóˆËDžes26ŠåîÎêWÚòî†Uc|Düwÿó Äå ¢ºXJJLr|çŠÇÐL"„„ç+ÍS¤ ZI»r†åËQn/4Á¤Z oˆ=NÒÿó"Äç + – P~JL§ò£`Fu’¾ ‡ZÝ~Á´qUi„»î#%ÄûX¬l×ø;ÿÁ6ŸÛÿó Äæ àŽ˜~Lñþ*°7U[!ÅyåÎsè›z]©™“–³ý +î³.=?Ë&¿´Þÿó Äå ž 0~DLƒø‘Þ€$3 É?Ø{«bJzlƒz)ÙÆ-uS¨çFÀ­ÆÔýÿó Äç +”ÃÊqô;¨TÆë¤3Ò°I Y¯R6(€;ÄÅÌÊ „²å‡«7ö¿ÿó"Äå H¢œ~JLïþ/áÐoþ¥®Ã¶±d¸¸TLЪR¡ë£|¸@ë“õOïûcÿó Äç ˜Ž˜~ +N«Y.Ä!Ž(’âžÊpœKß$ORÁ½»kÞ|Õ¾©Ég/¦ÿó Äç ¸ò˜ÃÄrþ‡zL+dEò“¯2ˆ(Eð"Ô,2I¡àQ•É!¢XÜ;vÿó Äç àΘÃÄpý±ü¿Ê€„1šAöMdhh²·b̈]sŒZü³Aµ?gÇðÿó"Äæ pŽ”~ +L~ß¾+Éý ãÀj‹  0 +›¤¨W¼Î·ä„ÍòÔ?œÔê/ÿó Äè + îËDrå~XCš’–QLXD“ŪÝQ$BkOaZͧWöv…Nñ×Û½ÿó Äæ ÈʘÂÄp=Mù”h 8f®žE nµe"i‚¾,Ì5Äñ‚u°¬yy›e_èÿó Äå v˜0~H¿§å_P#–’æ#6®kÞ`p’1fÂåò¯Ô³7çz .f¡þQñÿó"Äç +ÎŒÃDpÙ{ú>‡VZà~L^ZØÆ&jNû—iЬ =Qv ²jæo?Ûÿó Äæ ØÎŒÃÄpõÿâê*« +M©dIC@ÎFát•dbaXûpT3¸õOrî‰ÿó Äåð–¤X[ÄL_//ô€´zÓ}ÙˆV¹3ºÞ·ÀTK$tÿ¹C‚W©ýGÕxÌÿó Äè +@’˜~L¥ü¯Ä€¡þ¼¥PYâËRî’ÄM28zJØsó¢ïO ÿá_ÿzÿó"Äæ ¨v˜8ËÚH‹©Ò¿@SžôÎbJÈ8æ,¨84…€!È—™1†ÅlN†ßö_BÇÿó Äç øŽ”ÆLœ°»þê€ Wúàâo=…˜ÈRÀyùq_–LÍøÐÊhþyN•¾–ÿó Äæ ¹œXÉÄpµþC]y.Ų±Tó›1KŽQZµ[—¨1NÄÅüxáehÿó Äæ È~”PÄVH_‰~&Ö| cµ' +4pDÙ{(Ä% €n[&銒%¬ 8að ßsÿó"Äå X~”8ÎHÒ·«.ÿ$ +å4'¸p!C7'’0'-æà¨7?àO‚_“†[ÿó Äç ¨Î”0ÂDr ¾]þ!ãWÛèô…ð†‰_W)”š†O½5ØìH—…•}Yÿó Äç +–˜xÄNLuÕ¡þD³`okÉϦx³UÔu ¹à®™’Ä‹¬%˜¥È7‚_ÿó ÄåàŽ¤x{ÊLàÎ/‰€-¡ÐÉ{f¨èŠ'õ_bªÍÍúF‚øc’…õÿó"Äè +8Ž˜xÃÎLÑ¥þ€ kò¹0w Ñâ¥8Ð5XÛÉÄ +ݻ˘Ôð OQÂËVÿó Äç øŽ”XÄJLf‡ø„òöæÅà¡Á:ÂS‡…5^ +&œšX±å©½#§Â—ÆåÞÂÿó Äæ À¾œx{ÄL÷Ööt€_váÃØ통DqOÜ÷x‰÷äQ½~Qf”:QWÿó Äæ °vXÆ +H?KüL èöà '­yÀ~Ë:P -‡å8A\ô°TÎ ã4Êÿó"Äæ +ÆXÃDp•¹ÙGù 4æ mñCª— ^xo¬‚Æ)3½’ØßÀÒœÐï>ÿó ÄåàŽ x{ÄL·t?%€@=sóùÒíàãÔb¦†fùˆ/7ü2 ø—áÆ;•J–ÿó Äè +0–œx{ÊLî—ú@ÿ¨êÁ’Žǹ'Œ@ÓðzÈËxD¡¯Æ›¯SÒ'u´ÿó Äæ ÈŽœxÃÊL¨Ýgâj€ÿ@}šéõÂ<˜¥°e<¥Ç ZñM¥J“yWøë×íQ +ÿó"Äå 8–¤x{ÄL¡UV€ +áþÚHT1"7ÅÄ}'íeQ÷à€ã¤ÂÛÆ}+qܲÿó Äè + Ž”xÄ +L¥Ó• ¼àËW1 +ÑÎ)œ]l +”Í…lcB`nP«+o3zs°Õÿó Äæ ÈŽ˜xÃÎLü¢èBàà}×AéÍœ8m~Cðê®L-Ö³?‘[ˆü&9 mÿó Äå – x{ÄLçÉ)@×ÀzŸ¬ù„+€1¨„ù•É@}i,šÒ4[Ÿ•ÿƒ~íÞÛÿó"Äç +v˜PÃÊJ™õ¢×{õݪ8ÛSPÅO‹:¤(·à´ª>/Ô|£ê¥+ÿó Äæ `ÖœXz„pw§Ë€Äzd¯¬Ú‹¦(w)Œ>:9úvÚöll~f‚s59¹Mkÿó Äç ÀŽ”0ÃÊN"Qnÿ¤ zFÂ`Ü%`€ð—Aj Ýo5*2éy‰go"ÿó Äç +Θx{Dp^`(ÿåxd)Í^9 +Aëòœ×Ìx +ÍJ%òõŒ‘ÿó"Äå ’”XÃÊLEÝ馀D"Ûð>Õós +z q½TO¡q±@Ûåù„_ +^›Æ‹ÿó Äè +a”XzÄpüçQ°‡x¨UUõ¦d±àÒí©–,1j€§1Ëz™áCÁcÿó Äå ~˜øÃÄHT»¨ )=î>´5çg~: ÒÎe§H~cž€àªÿA7ôèé¦õÿó Äç ðŽxÆLç:ƒ€:í™:ØYcMM™FÌp"W$l6›1yÂDš/ùÃ3qÿó"Äæ ˜nŒX{Ò(úmQýnô€ß ñôú„ä‹‚W«uíçk è¶Ó{Ò†ûñ¾ÿ‹ßÓÿó Äç + Žœx{ÊLê, A®%Æ46Èp6ÍÃj´GH–HÐöž’7P®¹mGc_y™Wÿó Äå ε¸yÊp¬v‹ú>€8½¨p€°* +‰„c”r”ï=ï/m~éþž õœËßÿó Äç èΠ˜ÁÄpÕê 4<ƒì⊭O…Áüád +AS9ž=¹ v¶oÃ9nÑ/ÿó Äæ ˜Î xÂpb€–€N„ƒÊ 8IŠiÔÎ[.s-go»Š¯ÇóˆK +ÿó"Äæ +ΘxÃDpÓF—I€˜úäålSŸ*ÂÇ‘R*†!q`#1Š0/ÄT,þÛö£ÿÿó Ä帾œPfJNƒaMHHõ—›`.%¥\I}S³êu +z¶¥²¡xNÄ©üÿó Äé + ~„0~^H¸ç7@««ÊjÅj²~3XÕ3‚¤ÀµAÇRÍ› kàº:hÒÁÿó ÄåøŽœxN +LnUþDê e‹Ÿ3肸lrÈ`´Â(†Ù‰ÒrAIZ)?swæoÿó"Äè +Žˆ~Né¼߯å€;mààoî¢q`)Å·1ŽŒáǘÿ2·Sxw,ÔU?ÿó Äç ȦXfDL— 9vôíμq‡ÕĪK “ˆQÛ'´ rÚwò·ð}fѯþÿó Äæ €î˜xzÄpUû ¨ë‘ì¦ !°œ“ø0‰|¬bkÊcf̶.ùì«Öeÿó Äç Ð~”xNHH(§õ¿ÒIhñJê…ˆƒ¶'²®£Ùªš‹…Mhýì{1¯æõÙÿó"Äæ °Æ”x{Dp³¼ßiÔ5Rô›Bp•m +3ñ@>˜®ùÁýeåÈ»?c”ËHÿó Äç +ÆŒXËDpíe,Ì +­ÛSŠ}`Ô}”L¹ZO¦£(èãàA‰Ç4аb«ÿÿó ÄåðŽ”x{ÄLõ¯Wgè5¿è€˜Ì\· ø«Èå¸çx‚­ÁÉ16îBçÿþüÊöÿó Äè +(ÆxÂÄpÒ¯ÿA¾sÊ€dŠCºÝÀå +‘$OˆÛc +Ê îҘýy|ýÿó"Äæ ø~„P{ÚHÁ +êw–€@y0Ë’”'Ä2CÅúa&F†{Bº÷Eþíoÿ‚ÿó Äæ ຤xKÌLïõ€õ° J5 å`~~¨`sw±!»¿Ì¶wwº™Sävúÿó Äå Xæ˜{ +p8P;×ôÀ£Î˜16Ç£šÈs¨Ú3¶·ÌèQ½ÑÛÛÁÿó ÄÞ¸â ÁŠqA»Ô;øfFÉ,…”€R8ðk#V¹©÷g:„£yŠ©í«ÿó"Äâ Hⱘy„pˆ=Gý`€)T Dt3MÒÖ6œ#‘‚i’’9IéÏP2(ÊžBÿó Ää âÆXIDpûx/ßèI!ö' U>Á̪eUþý¿¶RŽRu3R…ðÿó Äç ˆâ©zÄp§ùÏP&ˆÓ9²']ør^ä*º0$ãÓ`£œ°ˆ6eçq¯g®¾Fÿó Äç +â±aŽpÿp¡þ£¾°;ÀI®“ ­aÍtTªY…0ø "ï´Ó«²½üÓûÿó"Äå 8âÂx`Žp…ûý@Ê n_:D…°×w©¦@X_üÀÓ̦0}ÙîͧÞßßÿó Äè +â¨pzÎpà‡ûü°ñ zŸê›0Æ;C½m¹”yËIÔ ·úþþÅè_è¦ô-Üÿó Äæ Àâ­zp, ýÞTÀÀ»à<êâüñÜ=0/šéPhò Š1<‹‡œrå[úÿó Äæ hâ¬xaŠp¸ð©Þ –²6&Âv¢ƒÀ™%Ó,¥P1.=ÛÌüîÿ†Dkÿó"Äç +`âœPÂJpx?þ?ßéˆ;w¦¦x/+—Jr@ZÇRHB_Sš2ùßpù=ÿÿó Äå â¬xyJpøo­þ€Òàxf ‚y£#2&CX®A‰ØÈŧ“„îj#ž^éø¿úÿó Äç èâœXÂDpÿ·õÀ/À.õˆpŽfxŒ§à}'Ñ58x4ÞL‡†Ò[šr«HÞÿó Äæ °â¤XyŽpoúŽÙ fÃLB†R•*Š~]$V†P¨¤Ž(PP¦rúþõÏáCïÿó"Äæ àⱸyNp¿a£þÿ@`.ÉWh½R£g­}UÖÒ +ø¯†ì"~¦œkòv9˜5:§ÿó Äæ Àâ˜zÄp‚ÿÃò@€1°AX‰+‡vvab%qM„ð‰ig3¯{Þ7‚oøWÿó Äæ  â¤øzJpø„®U᫼p,Šìû€¢ìÔ½"Ç Zɶ‡Ï~~pv¼þdþÿó Äæ É: XzÄqÁÝœˆÓv vÀÏrü“ˆ¬¬ðŠ³ª + rãm½4œÆT®ã¿ÿó"Äåøâ¤ðzqL"ï,&|Ô­¡úä¯Îñ“3d#ÀöaW»úçш0Š+âö ÿó Äé +hâ˜Xz +p û¹ñtK°n'4F²Bñ¸]Ôyܨ†vÕÓv£_Áýêc|ÿó Äæ ØæÃp€)HÝ,ý@€À.NÆ’o +:wÔÉW"c.ÞÊcYWB*p‹|k£ÿÿó Äæ ¨âœxyŠp÷ ãÀj³aaÏÔãÔ1@ÿ0XOwm^­ü©2SíÑηÐÿó"Äæ + ”xÂÄpƒm'w£EÀÚ¤(FçAKeðlZ;j¿"¨g,°=!¬ïÿó Äåè–œxcLt]åÀïàeHð3šIÈ„l–9OxÄûl¸®¾yHr«Í EY¼­ÿó Äè È^˜xƒÌ(ÿA½gµ€€å€eO9»3t…FCXO•ÙSq›)ñÔ«sÿ-güúÿó Äç +²œx{ +L½úí b!ê&Çý”‘@”ÑXŒWÜ;F .Óˆ¶^ö-þ ?ÿó Äåð²œðà +L$¦‚'¶°€”¿€1 ¼ˆ{û¶š8¨Ó +8xfB´j†§éÃýÿó"Äè +˜¶”XËÎL¶‚é÷àjn äØ£”`Hk¨Åg +¥8³ ûî2W÷'ö?½ºÐÿó Äå n™x~ (·ÆMÄ)À*ì¢)…Zêdü Ã'Ó@I••ŠÒo5ÆWð©ýó¼ÿó Äç +â˜XÂÄp3©mPïàfÉ’ä¦é +‚u +ˆÞ$(Qq§º”>î2¿DFü#ù6„ÿó Äå æÂÄpÂO‰©E‚à1úàcxÞ‚Juµf;=jenl§8­ù™­ãÿó"Äç +`â”XzÄp> ŸàeYðg9Õ‚0•âí‘ ñNª ¾€c6ÏÿüÿßÞ}>ÿó Äå 楸yDp$tÌ¡€™›p4줧aºÕ–Ï]1‚WáÌÈaÞö#ßîÝ.¸ÿó Äè +AœXÁÄp!/]uˆ À;‹9Õ Þ8¡@9Ñ"Yüìpé~þׂÄzC"ÿó Äæ ¨Þ™˜yÄp›º €¤¸ B`+Ç*П©S„|78­a7yVb½_B+TW‡ÿó"Äæ +Þ”XyÄp;Nœžwu@paBZ¡6-d3&Ùä¨Ì‹åù&†õÔoݾQÿó Äå`¶Œ(ÃÊNíH€§ø€øÛ†=Jû‘¤8²PK•€#3¤ ÕŸ™ÿ3>¾¯ï÷ðÿó Äê +¡XÂDpϾç¡ÝÀc JèqbÔ}¦+Zã<É0RMè|±> +|aòÿó Äæ È桸a„pšoFé-D€ +´ˆ9-ÄMý¤ê}nyè(ùö¤ü=ÿðê•'ßÿó"Äå ’˜ð{ÄLÏê>½`€¶€1†Æ5hhI¿1)Ð2»­Šgw¿Œ] žŒÈÈÙP mÿó Äè +X²™{ÄLÕ¾½ )&µ”ÌBfÿ‰ûqS +V–L=‹/_¤ö?ÿÍdæúøÿó Ä娶 xcÄL7ÙºÔ­àcI”#d ³)ÄHÙ„¬ÑÐTYûÅ'ó¤ùýÿ‘ez7»ÿó Äé +Xúž8zÄpì ô·Ó¨€®Ø +U¨\aÔ¿G#jµ.EÀ°?vAžQßõ|orùÿó"Äæ +º”XÃÄLüd³Ñ€€,  =|…Ü_BkiƒdUåÛV“Qñ¾’\ ã§ôçꃶÿó Äå æœøzÄpVéW‹”îàbFõRì^6ä°aPW^4¸_Të]¸ +WGëuñºòÿó Äç ˜¶¸{ÊL[3¼¸ìà{µ£%< ²Œ¨+í¬˜#eöŒ“óšýÿþñ¼Íêÿó Äç øâ”xzDp6ÍóG%ÀKÛ%ãÀúÐø®-`¨†}º–uVR䆗љô +ÿó"Äæ ðÞ”XzDp/îÐí f@ykA³6;„¦m_¼¥=•»Œ-‚\t¤ÙÚ¨vDõ6ÿó Äæ ˜âyÄp±+îõ€ÀƒÇSâì®4‡ó²¡%9y—؆©ò ;?B³hÿó Äæ À¶•{ÊL'¿Ð† +‚@%NcôEÍî[ÓÅ:»˜@ øÁèMöAÿó Äæ ¨²˜X{ÊLM›ªÒ‹àzñè¶ `pôŸŒÓÕÊ Œ©ÉâÕˆ IBbJòÜÕ)åÿó"Äæ + â”XzDp>›­Dj@€—`*´¬•Í;˜Š¸­nñ·owmJF¡Ç¶o—¨/ÿó Ä帶¥¸ZÄLõ7Ô€šà:á>e/—¶×§kñ“' º°/aZ Eë†ñ´âú”Gÿó Äé +ˆrŒX~Hû ÚôÐÀ»ð!Vr¡7qÀ¨'ŸÎ®v©5t'öº§S‰÷ÿó Äåø¢•{ÄLœulÕ@ +ÿ9<•iJðV*<–<+‘Ó›¾¦ÿŸúÞ'×Ýò¸ÿó"Äè ø¶ˆ0{ÊLC•4b5¼µq^Ľ]'[D!5úlKK)»[/¿ÂÈñú¯²5Üÿó Äè +P²ŒXcÎL-¤÷àmÃdƒTœ"/ åÒÕ=:Gwýq¿Ùu?žš·¤’ÿó Äåø²¸cÄL§¶ÖÀm¹ +†3©†D{ñ”ºm<ܪžJêL¤ÊLYýY-/CŽ¾Ìÿó Äè +8數zpZQÛP  ÿn<'#¯XŠM!äƒÑŸ*¾V?ÿö¿°þÏÃÿó"Äæ 躙¸bDLN:‘Ï À4þµámÁ)ç9aU”ÁðD£]1Çد^‘ Úº<-ÿ¹í[ÿó Äæ ˆÞ˜øZDp…°îÈàïàQ¢¹ ûOÓø°O(Þ«‡Gëbã>,¾ÏUá5Ü#Åÿó Äæ 0Þ˜PzDr¬mÙ€ €hë‘(¤ñZæ/‡¥5J_RûíJ`ŽWqþî¯~¡ÿó Äè À¶”X[LŒji ••âK²èÎXX_±SÂT£/= + ÆÊ!H‡_gÿó"Äè + ºŒX{ÄLõ¡*€¨ÊXiI¾ÍÇÛ¸Wð"6?So`T•ÆÆ’0ÌR:ÚZ¢Eÿó Äç °â”xbDpïoùÏ>  ÓÖɬʫ>Æ­ +Õ{;[½]^Í6q>¨$þ±GßÇÿó Äç à–|ÃÒLùÂy€/`7YõLÊ K(8˜&”ê¥÷(Pl\u!ù@@‡Î(ÆS©ÿó Äæ ȲXcLo:OþDh9xV? +¦‘ˆ9…B­µׂÐã<¾0ßEŽqÙÿó"Äå ²ø{Ly<ÿЀ Û•˜ {ÕŒY¸pdDlèN¨ +[Èhv;ófÎòÂÿó Äè øÖ™zDqEëÉz@ +˜ +ºŽ¯é¨]­¼Åé2"ÎL¨æ&•Á?ù¿Ãÿ‰ÿó Äç + ²ŒÐËÖL)܇õ€äÀoã©™VÎ +e´ é4´Æ/ÉŒ¥Õ Ë(¡ër¯ò?ÿó Äå ²”8ÃÊLñvä>  +,*¸îÀWëÁ÷ +ñ€æÛj±ÿ*h9P0Ôÿó"Äç +0²ØÃÎLä÷‰–­j¬y.ç§*ˤɩ$Bhæ +&’ë&ü:f³ÿægüøÿó Äæ xrŒËÒJÀ7Vmò`ä~àÕ% +áRØ"¤–G­ëzë«›^á 8ÐÄoò¾ÿó Äç ж”øÂNLÒZuü +Ül(‰·³/P2Hþ— ”Á8`x¦¦ ŠÃÞƽžÿó Äæ ˆÚ8ÂÄp<ë!Ôh™hëɆ:óˬ“%P”¢Ü˜['•¡D…Š£|BÝÿó Äæ ØÚXÃDpyò—Kº°'¥}Hó7Ô£ +â†SÔÍ}l 0µ*/…Æ-êzç·ÿó"Äå 8nˆ8~(º°€Q¿ð3 ¼Æ‘GœJþ…u¬à:ÂÇ[åÕú—Ìz»£wÿó Äè +XÖŒXÂDpAûnÒ€vÀ á:pH½·ƒ¬5LÜæ8b ã UÉô,üÜ^siÿó Äå ’ŒXÃÊLVí‡ôN€€øýG—ëé´G*qZ…Q.%‹Î1)0@¥­¥yacšÿó Äç +²„PÊNLý'«0‹y¾´Ct¿‡ÀÄ®GZÇFž¢Pæ;ø.ñ"¦Ûÿó"Äæ + ¶Œxà +L½†ƒßúX,U¿Œÿ¬›tÚu䟿8í’ú(çkÊk,À0tñUsÁÿó Äå –”XÂNLJŸÕÖ5¿Â¿ò`û€UÉÁ)Ê«ÄþD°˜z) ͘õÔZÝ_(ÿó Äé +8þ™¸yDp‡× oÿþ +À€; ©(z°êðAQtðÓ:Í%–BõuŸÿaTøÿó Äç +ª•zFM#ÿ«ÿƒp€ë€1y +v1v@7è9¤K\g€=,ò?úta{£ÿó"Äå Ê”ÈÃpñŸñ¦ÿ œèù»Ï +7¼¸6›GWrÎÀR¬Ææn9_ðTvÿó ÄÜðƬ{ÊpÿëÿÀ"?8ŠxIIÉ"§Q…çLAÅ\¶'ùX”×÷q×ÿ?ÿó Äß Ê°PÂÊpø/úÀŽhUdŽ+`d Û³%¿m ┑Ԝ+5ë:š½ô]̪ÿó Äá ½yÄqH#ÿ¯üÀ€$°1¨y›ÊX«x +cüËΨ#±BÝHÄÿ¾qÿÁÿó"Äã !½ÁÄq?ü/ ò‚X4í¼³UÄjsC+Mº!DôWÎ¥ç.T—r³Žÿó Äæ Á¹¸z +qÿWÿRÀÌ°Ñ´†5†-db™âc2$÷`våOM·Û +Fkx'ÿÿó Äæ Ù°xÂÄqWÿQ€ª¨í=JñÖ=7€ìÝj¥]" +!&y4ŽwR‘õmD—øÿó Äå ƨ(ÃÄpc«ÿ¨À€9àL-k±è#‘:(Æ*°I˜„ÇxßþÝñÿó"Äç +Y¬xÃDqŸøÿø`Ü&I—ÉÒWÇrÇÒUëaƒü—WÐf©ÞDÿÿó Äå¨Ê°ðz„pêoõ¶–ݸŒ—Ýí¿ÁR½«i+' +HjxЛE$nœ ÿó Äé +™¨xÃNqŸþÿê6°r€H:d#)xpEuV_ÙŠSI¹‚[Ós¿¤¯ú§GÍÿó Äå °xz„qðOéô p$lELϘ8¸ÇϬÐô¸9£ü®ÿ‚?«^ÿó"Äç +¤xÃDqõÁ?§ÐLðå&M™ˆÄ—Ù>X,b 6PÁàFžY”®å½8'ÿó Äæ i­zŠqÿAõ¹<ð7D‰J'ÌXQ„íÑHf7 {ø+wß)_»•ÖÕJàÿó Äç ±¨PzÄs“ý×@(,hR„$×ÅËj8u<á5RÉ·.r;Ò£êÏÿó Äç +!¤x„pü3 ø½+X5I +Z*·Xã!˜zT<é!lwû“ÿª~þƾÅÿó"Äå HÊ­zDpÓÁ7‘/_¯$ÂéNH+Îs&‚¨([’rÇb™+~¬ô”7Øáÿó Äæ ˜ò¬xyDpUžg‘½§Q2¤òË2–¡P`i,`jBÆr…s\¯£´'Áÿó Äæ ¨ò¨xy„pÿÿ ¾·Çb´‘=‰ØHa¦A£ÒG¨kž_~ïÆ!±ÈHÔ]ÿó"Äæ +ò xzDp¿Á:y7PŸ5SŠRè¶vÍ'–!F’ǃØoÈÂOwe$åÿó Äå ʤxzDp¨ÞÏú@;hÀDŽˆå ñzBÎ8¥À[B©mìýžÏÝX•E®ÿó Äè øÆ xyÄpº‰ÿþ°»ÇR +IÚ»OÝÙºŽ…‡QàÜ…óÎUöí?{-Yÿó Äç À’œx{ÎL,þ£z€ü¹IY‚$eÃ-!°ÌeBÕ§ŒÃXEgQªïk•øÿó"Äç ðò xyÄp‡§Ôoð^°€¶  `– ™l·þd brŠú +ÁÙE»fñjý©ífÓ ÿó Äç øò xzpÿë?'Ù2b@0•— ËŠI]~ÁoáQûi»û‚gä0"$•ÿó Äæ Ê xzpüÚëÀA’5¢àÅ!x®tMĆ”¢Úý9Ì„ûÞ½Ž¿»ÿó Äæ àî xzDp|º€}x ›Ô¡yQi´IæD(2i‘@—wÉ\|½šÛTNûÿó"Äå PÎœxzDp¨§ê)Ѐ¡>a~qCN­’2®h,Ì,N°wÂìßùkýÊþ£~ÿó Äç + î”PzÄp£x£¿PÀ6¼õ×°ý"×BÌŠ—\“”Ï&õ¯ûßÒHjP½ÿó Äå î©aŠpËwë nž‘µ”ÀP xzÄqË9ž€ ‡»¡´»8KÚ”'7&¢ ™Èc&Š«>‰µýzŸÿó"Äæ ÙB­zÄq¯ý?³Ò:ÍÁ]/ä)ÊA⸌[Š2À§Õ¾ÕÌßFÆ +‚<ÿó Äæ © +®Xb„pZsêü˜ s­ÀdáPÊ€‘¨œvm‡ÑQ +0jmUë(Vaý‹$ Îíÿó Äæ iB¨x{Dqôeÿ&>®Ⱦݱg@1 +tŸÁAÇ +cE/û"|_Ë‘Ú9/õÿó Äç +BªXcDqû}Ÿÿ`€ +rÛ@ÉRÒúqtf6QûjNÓþiQÎ}(¹GeQÿó"Äå ¢©8zÊLoêüªv\$Z–ÏVDF‡ÀW´ Qì‰{²T Ÿí ´^_ýÿó Äè +9 +°{Jp¾GÿQ€€!ú‘.Ø) +„ÁXyõÛ$ØÿsŒÂCý|6?q?ÿó Äæ ¨¢ x{ÊLF¯Ðö2.X—iãÅ(NùÉ`P¹ù(Msß…é_ª÷Ôs:oƒÿó Äæ x¢ªXbÊL'’ËHù€O +€¬f!²P~Däì< ÅUçIÏoÍÁ¸†“ÁŽÿó"Äç +aB xzÊqh½¿×O>ÿ屇®]µö®xŒ’â×ìÅœèb`î:|üí«ÿó Äå袲XbNL IGõÀ$Ë`>šíI©Jbì@ç¾¢ô®ugGQ J«[(ãìÿó Äè +QB x{Dq_¯Ÿú€¨wô™üÜL=L8è ¥{—Lƒ €CÐojŒO“ÿó Äåøª®xZJLòYŠwH€À­l¢+ECÃÞ*äP 6òµfùÑÐÃjùq›ÿó"Äè +`ÊœxzÄpż–YÉô€+Xê¸Nä¡ŠØCGªEU)’ +ÖR°¨ª=›%AÍíöÿó Äæ À¢¦XbÆLºVD€ X—Š!oM²‚ +.Ä*,†J–š”­'/ÊßÃ.eþ +ÿó Äæ ‰ xyÄpü“*qÌfBŒMŸƒ)a̾Ÿ`£(–~Êtf} ‡08꾬ðÿó Äæ ¦¥¸zJLLâÞÝt€@ µ+Bq”}a> cqðÜ0–0Ö¼úøÖB¸fê +Þÿó"Äæ È¢˜x{L îÖÜ|„æAÎd ³IÍ4?ñá œŽ#bîbåkJuºÞ\Jÿó Äæ È¢™˜zÄLü®þGç +^$ª- +TGˆõ Â4³˜­aÚ»ò,{š¯Û¿ÿó Äåð¢œøzÊLÕ£·þ´Sä·/Œ €éN9ãáÃS+ç{û +<Õ»ï÷ëçu£ÿó Äè + Ê”øzÄp‰ÿºŸH€cØJ5 Ì$þ©9 þ§Ñâ¡}¸¿>=®‚ÿó"Äæ +¢ˆX{ÄLŸîO“–Ày׎a¥MÖ§ ú\:ôGÁËßÝÅÂqøÛ¬fÿ–(íÿó Ä帞P{ÄLnëûßrÀ7yÚ&;Æ¡­¼¼zºü%§¢Îæ7 ¦h¨ðk{u]ÿó Äé +`ÊŒX{Dp9&r` Ì +Èg‹Ÿ©˜™'™„PÌ@XíDóx¢1u:o"͹Q•´5ŒÚ´ˆè_¨ËÑ•ÿó Äæ О”X{ÐL¿sý`€µÜ&¢µYBX™LNx„ ó—È£ãYmJ‰Fðj®ÿó Äå z„(ÃØHK)n‰ÀÏ`2£I°eìø˜ôõ¨åIÂ5·ºÈf“cˆ’%ÿó"Äç +Hjˆ8{Þ(?BU2F.Xs*T4ßD8_±ÿQà™øªÿó Äç +~‘KH[¾“¿X€¿ðAiH´µ¡QÞ‘yŸê7(kò£ÆHñ)Éÿó Äåj¡¸JF(ÊO³ ï +áJjN$ +‰¨lÅcH¬¸"Œ’‰Iµ–¢¯DÑÑÿÿó Äé +iBxbÄqAý?ôÀ Žà8> HIÑ·"9Lhˆ"pËФȶ`$Ž|ÿó"Äæ ñBšXIÄq·¦¢¯WzÀ²€9³(ËáleÂÉZáó$MH2DÃÿØ0œi÷$qÿó Äæ ˜Ê™¸IÄp¦µ æ“e<Ï„-GPŒq9c˜OQÊå2n‰n«;owÿó Äæ ¨Î•¸b„p‘tïÚ°ÀßðHe aH Ç ‘‘̃g X( +¶'?@gÿó Äæ p¢™¸2JL)]¤€påÚxuƒ¦p ˆCWZõ‘¿ãðÃä^‚wˇ^àcÿó"Äç ÈÊ€P{Dp¾e S¨Ãyõ€À"_€>b»Iv¬ø€Ã$5‰”Õ!©ŸüÑ©»ÿó Äç +j‰¸KÖ(ørº[/<š@°¶¯ßf:ÝÝø¡¯d¸º«l”¬~ey»ZŽ +_ÿó Äå j‘¸c(Ë¢øîôö|ãO1öáq÷2^ìR¸•ÕÞ}CÊ¢úwñòÿó Äç + ΄x{Dp×·Ö ´ +Ìe¦¾­,º4ïÿ¦^åãÿó Äã ¶ PÃÊLý¿ÕCu€Fík%j®×õØ4.öÚ;r´¹ôÈ€ëêÝYøÿó"Äåø²¨XÃÄLísº5áØ-›TvX†AJu(éwÿó Äé +Îœ8ËDp&Þý@´ÖÄ-¥¶DÛ¡“"g36¢^5íõÇÓúCQÏõOîÿó Äç â¤XÁÄpݾ|~¡àÀ;(BÊb(kÔú…û. Mt³¼]LÈ­†zƒ3^¡ïÿó Äç ð¶˜XÃÊLoØ ÷mè^²†rÊ«èÅÒô晋 +êÊ]Cïÿúdëäùñÿó"Äæ +ú XÂDpµŠ¹ €¾àbÏŸûKµ©@g{»L×/O´×2³Œ…g¥òÓï¬ÿó Äå ² Xà +L'õÆ€Ø bEÝiŒ~ëÒ;:LRæÆU +œãó–ÙÚÆÑœÏîÿó Äç ˜rœ0ÃJAGÿb€ÿ{Ö·ª?­åK€C±øX+’ƒ” Q²‚âþ®G ?Íÿó Äç +ÖÊÄpˆÖ(ûV`ùFF$Åî†Æ…S¨H.ÛÏœós+}9Ìøªÿó"Äå vŒËÖH2ĵ ÿ)J¬°êH9+ K‰0M¤ãý:V}e2¸ÀÒú?·Q|¤;ÿó Äè ˜Ö˜XÂDp|—ã·i²$Ìb ˆçp£ô!R1³M¨S/…‹½Y}ÛJ9êÿó Äè Èr”XÃÌHrF­ b¾™]B}¦¥FÃ(úD¹âê$¿|? úüÝûÿó Äç Ðv8ËÒH3‘4èáVT›=_-Y±ÊÝ‘ +®ý•©‹DŠíÝ)—fXÿó"Äæ ¸Ö˜XÁÄp‚ŠÖšÉ€öÀm²±k½¼®”r¨jþnE¹°9<£ßóòú¹mÿó Äç ˜n0~*@å×r€2Uªu]< +Àâ\yúXÐå¸ó‚ºcðPÓýo]ÿó Äç ²œxÃÊL£zwà Ø "Cr¦"Kà˜…JHY}QG‘ká…N-¿ÔÐéüçÿó Äç ˆv”XÃÊHY‡¨)hà„‘š‰Ù~cNؼRôÕp¶×èÁ9ÍZ·AåĈÿó"Äç +@¶XÃÊL®ôX+Pm¤ï‚q9ôÌ>X…æôÓ‚=äÏ‚?ߪU=0ÿó Äæ ˆr”0ÃÊJƒ7™e@»ÿ/ˆ»´Sìx|~µ5º~ºcó¿´.ê,´gÿó Äæ r˜XÃHH)¿mQF¤¸J护-‰Ï +fØóÂ߃΄hu~ÏÑúƒªx?Ç–ÿó Äæ xŠŒÃÒM[t«P9¿Ä ©ÄÄh\o’Xæuý9%­ñk×îN©ÐØ•ÿó"Äç ð†”8{ÖHmÑûbÖ ÷àY„PE5/Á) i6ÞÓ.Ë¥} Eÿ—ÁõeNœÿó Äç ¨¢”xÃLt,¼x'ê8-aŸÊׄxWÇü*FJ;â£1p¼ù¿Ôm–·óŽ§ÿó Äç +¶x{Leoeú€;ÿ ðöðUd>(@Ø—.+—<<€pUiwT£çpa)0ÿó Äåh² xzDL>Éž8äbØ µ>™‘V‰D’Â2ÖW+X|Ê\»ú"°èBñœšÿó Äê +h¶”xÃL6h- &€™¶¢ÅTŒq’p\UÿQŽjÚÆ_ûø= xíÿó"Äç +0ΔxzÄp{u öÀdÂ]É–ÚeâÌB18šŠÑíG=Aó?Üuë[üö=+ ÿó Äæ ¨²”X{L?[”ÊTÍÿµŒÉ +¶äð¨|«íˆš§uzˆ´Ôvåè%œ³gýÿó Äæ †€0ÃÒH¿bÀ €`Ò›pßÊJ ¹2›I¦õ”zRÌö^6a+C—ßÅÿó Äæ °^”xcÆ(2UŸý`í ThÑû«Ú^ÝiÇK‚©Á}§Ø{Ï +¶ w}Ž}Iãÿó"Äæ + ²„XÃÄL½‹ßjlÔ° ÿà ñœ(¨HX +x²+‹£éôöÏs£)<Màÿó ÄåÀ²”xzDLüü€ +ìvò™¹¶ ¬`…Ë ‡ëŸz0ór`ɪcZ»Õf¥„sK}Dÿó Äé + vŒXÃHs83ä ˜Á0-_°ø§â¡ÓD8ñêØ\ë·¶p jò‘;¯äÿó ÄåжœxzDL=ü‡‘+Ù*¼–¯É4(2´ËF·ï¸&H5vÐ 9ùXÀÿäþÿó"Äè +X²„XÃÄLΟ§Œ +Ü +À €é£PìƒFf;+s‹0 +TËóž-CÜ3ÿ/ÿó Äæ ඈXÃÊLõ{k¬]ê}n¼Ú”¶3’h`­Á¶#<zyçêC~CþGïãÿó Äå躩bL-ëÝ&2‹À<i·ŸÈÈbã½çXé°›†#üÅ󢋧ð_á?ÿó Äè +PÚ˜X{pÓüC*Ÿ¨§èZ[À61t¬ÀÅr´Œyr⋉gFÓ‰|íüÿó"Äå @²”8ËÎLû}('ý`·j šÜŠ¼rJ«y1i:Ùaííléå7ÊÿÁ}ðû÷ÿó Äè +²ŒÓÔL~° ¼  ªüa˜Pà·l‰6QDq‡DK&<žyKøOðlÕúÿó Äç ðþ8ÃDpÖ¡·CÀS¨8d‘X +ñKƒI0à¹òU4fo°ÿÆ]OÃÝ^îÿó Äæ x²ËÔLó¡Qã€öÀ{ÕàýOPÇÀjÔŠÐS¨=¢Ô›+<¥|/ø?[¡Oÿó"Äç +0þ„ÓDpøsƒtã@Ì€c1|ç'bP@RÀœ¬€‡Ç`RŸ:[›oŽ?YîŸÿó Äæ ØúˆËDp0@’·Ý(®FeÑûDz§ÔÌ }dS¨ +ðt?ÁSžÁ!5Õeÿó Äç +öXÃDpÙD€Lü0z#·X’g,ЖËq÷äÔøù–¸í‚ˆe²–r½ÿó ÄåØŽˆXËLwrlDfPcob‰.ìLÒ¶m6æÌa(O1a&ÂÌ9Ñs³²Ùÿó Äè +`ú„ÃDpey/*ûÌ€ÿà} ¼¡pãGãõ#ªa¥å[!<ÿºwòü<>ìŸÿó"Äå HÚXÃDpÏE@®àuÚ‹ÂÈa!BH +\¯$A>ú '¯'¤þ£üß +¦÷gÿó Äç ’Œ0ÃÐL¡â’,áô2Å4+à2)øì?§4ÄLEÙò³ìÝL¿åùr·Üÿó Äç °ŽœX{ÄLÌ€)¿z>© –¬„ ¬´n‡i` +¿¬‘°¢Õº â,´Ódÿó Äç øzˆÆH—Ô¡)Ô¶ÀA].j´ çòŠÀôÀ7C˜…„Î#8ù&OÊëZÿó"Äæ +rxÃÊH´¨yôVú€m epƒ»À{8X$ɲ©Uþ’qkôÉpb›Ö¬öyÿó ÄåÊœXz„pWôè¿àjéoFÛå\!¡;]² §?)¨•ÎçjYµ’ÿó Äé +xþX{Dpcôä€Y&®»˜s¤:B&)Ïq–äåÿd_‰ÃËŸÑÓ¿ÿó Äæ (ö”0ÃDr—ìMU3ÐüÖ±]|várEŠÄ°vŒ«È‹ú¥ÌãäöøSn^ÿó"Äè +HŠ”x{L WhÀΰì>a³bû–êjéÜ#U¶>¹NÁ>*9êˆ4rYÚt‹8Fjÿó Äæ ÐrX{HK}vBÀöÀy ßÔ‚Ø´/ v‹Âm5Æã/’ãŸïo?Ÿú£Ïlÿó Äæ ÀúXzÄp¦Gó +´&7£0y"§*ï¹ÚÎ*îZR/-¿/—~«âÙÌèpÿó Äæ `ú”8yÄpã)döDöÀyþb©%Ì:®Ú}â3™Òã\Qå벜ì¾XDÿó Äç +úŒ8{Dp“A4¾ÊÀöÀxilA&(lÇäªíÊ刯£wÈþ(Ý ÿ¢yÿó ÄåÈrØ{ÌH5]Ãív»ÇsB–ÙŠn{éKÛ< +ã ÝÐ^§ +ñ’7΃ÿó"Äè Ø¢Œ8{ÄLƒ51Zí}ÙÜ噸È%maà…,{¨yìvˆ¯Ì¿þ㵨ÿó Äè +úxzÄp½@Ÿ¨žÀ~qÖFÎ@N”ìÖ‰ò49Htˆ÷å‘1ÿöP}ü'øÿó Äæ °†ˆ8~HŸNå_P3ñËYKפu¢±XHË ½&]Ù‹+±Œ@L¬×«y_ÿó Äæ ÐrŒX{ÖHO_¬2¨Pá÷$ÿ(gpCc•°Ì+*ƒögQa‡®O…+¿¸Î_¨àÿó"Äå P²ŒX{ÊL‘šŽ\Š®gîr%K"2)tÉÚ´-A:ÔŒ®6#G±BWnŽm>ñÛõÿó Äæ €úX„pÝô‹TL +ŒmîÞÝe‡Œ™ê.%Òßç4h…Ä«’ÿp0Jáëåÿó Äç +Ö„ÃÄp1W˜âÀ€Ûð0¿ÛßX_!FÃI@MO +ƒùW1øÃ~WÉá÷¹ÿó"Äå (ŽŒ8ËÊL +­¦ üp¿ +JaÎgR3+% j3NëÒ`¨I8)ßhb~­——{ÿó Äè +`Ö„8ÃDp…dÖÿ +j¥°îTD•pN>fŒÚà<`Å®óþ{“òê‰É$žRÿó Äå ¶ŒXÃÄL +ƒuóõP°íLŒðçAaqÈHD˜”Z&ô‚ +æ]”øc YÜÿó Äè +0úø„p‚5”Óò€AºÐ3…}(X$”œ½„VËVd²:¼Ñýtãù¾"•ÿó"Äæ Ðrx0ÎHœÝèÃ@ø«ž˜Àæ÷AMwš¦E6+ e ×ÖyAÃ%Dïöÿó Äæ ¨ö•¸yÄpõÿÁ¶A@¼Þ6`€QŽAßú«è³>kìX·£‡a?û}»ÿó Äæ 8rPÃÊJtô€ë +MÎ^ŽO+•«•ùëÍ4oX®Ì +7>xJ/ôuBÿó Äè (žPÃÒLušÏÔê¾=vqÃxkD¡…vÓî¼Á#žc>ÝFçÏgs•ÿó"Äâ ’ˆ~ +L;w Èw+8ÿ5R?⌓ˆK*±EcÚOCYá±¹ÄQ¿‹òÿó Äå Ρ¸{Dp?‡w ¬7ªz4»7QR@ +fÉñ’܅Ѫ¿KÌÔwÊiÃ~²Jÿó Äç +"”˜{Dp­x¨_fÆ™W5Ý’~BέAä’UEÒÜéD–óŸ+ÿµ_Tÿó Äå þ”xz„pÿΪ,Å .\®Ø¶&òŽ P’†E«…˜¼õ C|žP%©—ˆÿó"Äç +`žˆPÃÎLÿÉÿ†Ù€€÷ËðÂL#ìä©„}.…D] reH‘û.‹ÿ¯þ +·ÿó ÄåÀŽ˜x{ÄLÔTouqìÀÙbÓ4, +Sü*-~¦ eE¡¿VNKâ¤8—F4ÿó Äé +0öˆpÃDr¨ˆÿo ŸÌLh§5Jž P<;PÀÓʪqÿ¥/Ýÿó ÄçÀrŒÃÐJ±J*×¥`ü3KÙÐ/UGfJ´¬)ýT +¨°År£‚αñÅ Qÿó"Äë A&Œ˜ÃDp›jü<¦G +5Iù©t„#ܨ‚ÐÑwªBÿÁÉ^‚¿õGi߸;­ÿó Äæ ÐöŒx{DpZß.ÿ÷Õ†Ã)BÂMÄ5úãå“tˆÊn‚Tã¾p©¼Jÿó Äå°ú”xyÄp¢E²:PmµÆ™PsŸ§á"fbH¥]²Ö5C‘ÔZõkPîÿó Äé °žŒx{ÎL'Å25?¿R§ +Q +slðWˆÞupçðk•¡NúžÆòÿó"Äé +ØöŒxyÄpoÛÕ‘Ðÿõ¬CÒ¡¹ÉlB() ”hPœMù…_äºvÿ÷ÐCêvfÿó Äå€vŒ{ÔJ†u&_&¶kQH·'ÎV*@>µVdo{Ó&òÁÍÊ=Gÿœ¥¨ÿó Äê +8úŒzÄr¡÷âà!÷É|\J,\Á:T0PqY0OIhÄ‹_¯öÐèP¡é%ÿó Äè +8žxzÊL¬‹TwÚÞrœy:([ÊL"×H)FaŸÂÄëþÆê®Ûëÿó"Äæ ÀžŒx{ÎL obR¶Ÿ‡ÂjɳÁX<äØJå XšÚžÇsú¤£X*ÿó Äç ¸ž€P{ÔLµVï!µ@€§ü _XœÃ[É»1Vè 3 °ül1¢¯š««ø?ŸÉÿó Äç ù +zp÷!Ô€)·•šÏ㣑Œ€ªÚ’¿±««©0]üexíê?ÿó Äæ XŠx{ÎL*ª…ŸaPm6QP&¥zè!îÉ ¬¼jþœí—9&"ü¢GêÉ ÿó"Äç xžxzÄLîÞ>ꀀ%´ ¾‡#˜·›kÂÖ©|ECü+h?CÇS™òõxvåÿó Äé +8öŒxzÄpejJü +Ú=ã8Äb†‡¤üØj¨Ü4ÕœŠìC.×%ÿó Äç +¾ŒxzÎL®ÀZ î”' ÀΪ(ÔX±`ŒCÆ~P‰?’÷Šç«aÈRÿó Äå Ú•yÄpÑ$UšÀC߀%¶þUGЀ„_Éß‘§C”/Ǭ< ð}ÿó"Äç +`¢Œx{ÊL·P 3þÆ^îîMIñ'FšFõ’ Êåîq+3þDp}¦òƒÃåÿó Äå ž|0{ÎLJ#.õ€ÀªÙ·aüƒÜ£Ç®¸|TEµPbúË­8"3þ1yÿó Äç +ž…{ÎL^ 'É€Oõêra‘ÆZüIO ì'ÄÊ ~÷Ò/ÁˆÁoù¥Öž–ÿó ÄåXrPzJJóÜ—Ôõ€/ÿ{³ñ +6vìb.4hïO7£ý®› á©ÿÑè÷ÿó Äê +І€X{ÐHzX]€Úð—Ý°Òa1*Âoéõ» Ú‰v4ÅQhdß9Óóÿó"Ä帢¸bLoON‚ðýT±v‘ÌŒ¤ ¬Y ó9›cI~º§‰ÿ7ò‹ÿó Äê ÖªXyŽp·MºªÜì¹õ|«€-{#2v ÌB°=Œ˜šøwMÕÎHõÅÿó Ää ’¸ÃL·ò +ÑH@7OE†W¨bp_UHø¦¦Xäf~*~°a +u ÿó Äæ È’ŒÆLdz¤ü×Ö 4?R[=’€’ +ƒä"-À\MË’“bô´U=å ÿó"Äå XŽŒËÔLôñoñïÉ ;øF{…ùéêã‡0Qü÷±@Íé6!4öù¯·R>®ÿó Äç  ¶ˆ¸ËÚLTä–°Àpe´÷nC°%ðcËb²n:L¤‘ìG³·Y‚]ýÿÿó Äç þ°ÃDrÅ}ŸÈ€­À•ãì8Ηx bô˜‰( ˜ö×NcÅÕš·Tíý¿ßøÿó Äç èþˆËDpcó7rHÀ +°nVÕ,Rœb/$Ųà 'v|iu·v +úûÿSÿó"Äæ ø¶|ËÚLϤ€¬¢õÜ¢Ïüh 3)AØJæûy‘ËÑßå[éÿÊ¿ÿó Äæ ÈÚ„¸ÄŠpŽÿoãZ€€;øòùgœ0Èèow7Ï+o\IÂǪõ™¿öñ ìÿó Äå ¶š8ÂNL«y€€ +h˨î£tjTài©eˆJTA/®ë¶ÁPÚÔѲ{ÿó Äè +`öŒX„pÈ\4üànÎzÙ@íRˆ’1÷áùaÎ÷ü¨nCùÜß)à‚ªÿó ÄåànŒX{Ú(¾(¶1cRd=„Æ­Wmbxã¯í•Ïý[×Qÿó"Äè +y*ˆXz„q¹nMuGÿo{¸Õ8–‹¥=„’UéÙùãŸÿùªOôxûøÿó Äæ `Ú”xyÄpw_B”€ Ûi ÒrèBá…IP"Æz2…ÖN5X<ÿ›æô+­èÿó Äç + ¶„XÃÔL²·KÛÖ¤~[P49¬Å,_B„«*Ë +6¤EµË©KTtò¯¾[ÿó Äåð²Œx{ÎLBŽ·9P€1Ø«:ŽâE3¤‚½ )ËÌCjKM¾˜Öü?·—Ùñÿó"Äè +8¶ˆXÃÔLûn1»KH 5z_MyKY¥8¦!Dx“7jqxÚ©ÿÊ„™k3Ý·oÿó Äç ˆ¶Œx{ÎL±@ÿàk)ü­@÷¢!# ùL€gä?£/Ë̱(8ÿó Äç ¸ö”xa„pËaÀ DãYä¨Dà +g1RV˜q.ì볂æÈ£1ˆlsrµíÐÿó Äç ø¶ø{L}Ü_Ùo@ü x…Ìç‚ÑŠ ²ÜC],Ÿ•Øtðô´@ÿó"Äæ ¨Š€XÃÎL¥€“]ˆð5‹ÛZ C‚v +±IØÜ„ +,³aâÄÈXúÙX·;újžoÿó Äç èÖˆøzÄq^"®¢àöÀk!¾=Òu}ˆõŽzë:Z-uÊù¡£ÿ^o0³gÄ*ÿó ÄæØv€ÃÒJjÐñÍ]žÀY÷ÜSy$ÖЄMV4¨žR +,—êü4Æ7ŸÇûùÿó Äé + ²ŒXÂJLŠý`ávü¬YK! ¨~N3 ¢¥Ú(àôϨj¯;u'ŽÄÓ¤*{ÿó"Äç +(¶|8ÃÔLHæßb€"ÿ+[žö…&.»ê;ÛÚA8Jù]÷üü¾ÿânÞ +× ÿó Äæ €rŒ8{ +HÀ ü µÂóÛ J—“, Ðà] 3掯þ?÷Åýcµ'¿ÿó Äç ØÚxËDpJ +|à&Ü +´·µ’ÿ†¥Ã&—7/[)„ªe÷:üµ½'¿Ê“m#ÿó Äæ ضˆX{ÎLê'ùå€6ÀaM9ûc‘¢1˜†@ÿä€n4_Ž\ÁwpD÷ÿó"ÄåزˆX{ +LÑÔñP \Àf½—h¡:‡lG”D^_ƒj íפ[ ¿Qý¤³ÿó Äé +²„0à +N±" €"·à?¬T1 +1 O¬…+1À“¤çÕ +n´m»/êOÿó Äç pöŒøzÄq_¬Óž=@,àù}‹mÆ%/ +±>£¼ ¡§ˆ€½FÿºùYÚ‡ó#·ÿó Äè Øö„8z„q¤i-Ø ¥wó¥kPgn)™±\ +QgÏ +‹Õ¹W–Îæ–áÿó"Äç +Hú„8ÃDqÍiƒÞ ÈýŠ ÕadLÌèZ¹è£¿Ê˜"6»Ý›CVèèùn£ntÿó ÄåàžˆXÂÄL»¾…€ +” ªÈq—0gf2È›]ÙŸ>b²ø`ÞW„ã¿sô?©nÿó Äè +²€X{ÊLu±ýf@ +¹PñÕgÑò¼UŒ-G6`“ÊQœNÏüÎ=åýÿó Äæ ØÖŒøz„p,Û•Ó›ƒ‚½¶à*w2jJ3‚‚Fýe$›®nÞßÈYÁ>ÿó Äå öŒ8ÁÄpú§ÛPçà_ }ÍÁ‰H.G’»@yƒñî¶õƒçñÿǽ”X›ÿó"Äè + Ž„8ËL”³4€€þ[}s;‚âB1\ÐLF”è2¥ž¤ñ¾gE½‹{ÿó Äç ˆ¶x0ÃÎLZË2à +u;ƒ„Y“Ñ@ÐP‘¤¡¿¬hĘôÄC( +Gä|¾…»ÿó Äç +¶€8ÃÎLµ@ Ø °¸<»}¨a>I&…û‹Åì$e&^ ü·üNØ7·ÞŽþæÿó Äåø¶|8ÃLKÍ)l,ÀO~‘ +Ÿ‰´TÄkh½D ,DZ^„×Öº“Çûf2¶Ðÿó"Äè èö„{DpѤŠ€¼0˜“ıÓ$ien¨y4¢Qÿ„|/·øÚAzØÿó Äè ˆÖˆXyÄp6™¤€¿à^ž÷ETn/®A¯¸†"æö£à…ÕÍÇè?8!kœ^ÿó Äè ØÖ˜yÄpÒ³š*¿àA£5lÞê¤nåÌ‹s˜ ¨Ó*w¨»áÁòy>øîÓÿó Äç ²|0{ÎNæ’“¾6v€ƒÀhª„ÔB@`8ö­&ÎóXI%ŸûÄËùD2£²úÿó"Äé +xú|8zÊp6d€nØš]ŠU ‘hò¼›…ÍmJV¸AÌß cÏËîe®:ÿó Äç ö˜yÄp½®´Cô€Âaᦠ3!É‹)ˆ¨­NùÉù\Õn­Áa{|0-EiBÿó Äç ˆÖ|{Dr󟤀ßð™~2 +×ÂE³§"ß +ºøŸ/@Qt +Gÿ(ÿó Äç À¶„XzÄL ±AòÀ/ø˜.÷u•Džçtzäf• +×?z,¬$Ðÿ¸eMÓÄÿó"Äç +PÚ„XzÄqV 4 <öÞ2cÊ“¥¡K¦À› ¨²!Ã0Eþð-‹ž§èÖÿó ÄåŠx°cÎLÏÞw¤ðJÏ +D’½6b3AO8„)5]Oñ©ô®+Î_ÿó Äé +ˆæ‰JÄp¨ßïP˜;ø&Šž=4,±üS $JK%âP¹¯„HØŸÖÂâÿó Äåðž„ÃLN\äMèX+°è+#úÔ Bå°4ã'ÚǨ›p³õDëtÿó"Äè +X’œø{ÎL Þë)+øÁ®¶FÊög¡R€ŒÙó?Ê“>ýGù”f”jÿó Äæ `‚ xà +H6Z°;°‰3ë s5]ô‘¸‰»bⶠ@.S'‹ëëvÕÿó Äç ð–œxÃÊLê”_xQ2ƒGÁ@‡höÍSBå¤×vöŸ÷¯áÐírþHL™Ïÿó Äæ °¶œxÃÊLçê‘OøÆiÄØitØ%à²h¼öÌÊMBìë(JÃÃÂ΃ugÿó"Äæ è‚ xÃÎHeo¨ödÆSã‚ÎQeç:&©ÈºX¢9™^[EçàbZP1°ïÖÿó Äæ @– xzÊLÊf–)¿(ÁB#ª±¡TêõT =ÁMuL8ŸõËÐ =¨;¨¯•uÿó Äè  ²¤xÂÊLºŒrRž¶ü +•µ0²?€¥c3}@‚;;?0>,‰„‡q­Ïkÿó Äè ø†œxÃH?é7š1ûÌG @ßÄ1¥}™ås¯ï‹T3s†òÂgQÿòÿó"Äç €–œxÃÐL§{–ÿéÉ¥®…i¿šÔT eR²¾ôÿµçƒ#ê?£¡’Öÿó Äé °® x{LžYÇkü ‡ØÆÙ¨jÄ!ÈPÆJ.ÓY‹Jÿé Q Ž‘݉u1 +•ÿó Äé ø–˜XÃLz€~  h4•%”~¯d‰.„bÑ4‹ŽÊ>_4Kb„ÏgVÂOÿó Äè +`²˜xÃÊLMe7.€°v +))_ ~Y‚˜!¡t“h’m㛨:yãhP½Lóóÿó"Äå @–{ +LˆS^€ˆ +ˆ 4^²OÈHpí[=]aÝžÿß5ˆŠ0=³òÿó Äè xš”0{ÔNF§ëH øC`@Û‹™Å‰ËÂL—md¬/?ú—@¡b¢ÿü?+;ÿó Äé +@š”xÃÊLÔ²( vqG©àŽmµHf‡tvfZÅÍ­lc}…ÏSõ¶ºßÎéMÿó Äç  ¾”P{ÎNu…04õ@!vDlR¢œ¤ÕtÀyB)W3fmMšù EGΈËÿÿó"Äç à~ŒxÃHC+Š§® +EÁ² + q@¡œYXÛ¤ËEqþ»ÐXìAîqãÇÿó Äç  ‚xÃÔH5%•œú€÷àb<"¢š`ìL7“°~~) •áYnCAHa-èôÿó Äç ¨¾ŒP{ÊN¿ +‘€~½(áº:ØÊHàxí±Óx<žÓW ÿç/»­aȵ‡Sÿó Äç €¶”x{ÊL"E/Í{ÿ¥QÇf™ò¥\O“LØ­°‹©"M£?ãy‰BÏaõÿó"Äè +X†xÃÒHÏ ±kü +¯±8ãÎZŒ¶l–ÁÔ/¬™ˆÖœÅ±Ž?€r¢MöDÿñÿó Äæ  –”x{ÎL¯jÛÜ°ü(ø±£ðûN‹õÓ~I6ÍTn¿òÄ<0>âãµ §ÿó Äæ жx{ÎLâÕë-•F] ĉ=›k'è€Õ~¸ßù…ƒüË.u1%3ógsáÿó ÄåH~œXzÊHÆ{°.ü ©AѤZ6=’Ktî©¿ÿd+‡jùzŠo-ŽWîÅÿó"Äê +ˆæPzsóåŸc€ ¿˜¦ª$ %X͆k¢¾CÏ! Â:!Ú',2ÁW4ÿó Äç €¶œxyÊLÄÇwÒåJ$Awq`M(ù¢U¯W¡IZôù¶?lõÊoÿhVIÿó Äè + ²ˆPÃÐLS)m”e#R[”S7M +H˜ž +§_ŒQnñ ȬÙ_ó‚„Õ +ÿó Äæ €²ŒPÃÊLVe@Àßð,5«ˆÆëýXN qOŒ}š†~!­#^U¡¤ÿó"Äç  –„(ÃÖNâζêW¶ÃDZ œ ·¥”ǽ=$7ŸÁ~1Jô«îÿ«)¦¨Wÿó Äè +®™zJMÅ¡ÆtVMø-¢#e÷ת`NO[‘õÝÔõ+ƒSS¦ +ÃO¶öÿó Äæ ¸v˜xzÊHƒˆ ð +í8m/úÑè)‚½Öº«l–?ëëUt"óÇîiÔÿó Äæ @†ŒX{HªÙSPŒC-¿£j +YÛ¨iÚãÿ LÊqr¬ÉkF¤EÑ<‹ÿó Äè +X†ˆxÃÖHÿù!gwô€ € +ЙÉui °Ò…Êo-Ù•‚ÍÞ·f H5Þ¸“ÿó"Äå P’¸aJLu¯¹z@í {3O«k:v6Ñ‚´ ÇßM2jÀï×£}ǨL~ ¨Uÿó Äç øÖxzDpžŸ¨á’«¹?‘L`X)±RcbRõzšQc®®¿Žõ>‰ÿó Äæ p¾˜xzJLörÀ+¿+%`¤‡gåv‰ŠÓ_¯Ie°#Óü ºfó?Ï7õÿó Äç ¸²PÃÎLƺ}õ€+p¯ƒ5öÏ'Â`*b9Õ`íU`ÿ§îØSÇËÊÿHÛrÿó"Äç +H²ŒXËÐL®¨¿àbÝ›úX¤þ¦Fg4òàa2¡2餟ҹC}ôüôÚ¼w“ZŽÿó Äå ’8ÃÊLûžO¨;¶1ƒÛÂ[ ‚Áb±îI³4Kl᳄'=¼@C<µ°ÿó Äç p¶XËL³¥¿¤Kÿ'¹Mcò$7GðEŠ úõþ t?ãRæçÍV8I:ÿó Äè +²Œ0ËNÛœå$¢Ð ÿÚ+©Vœ©™Teh¦A¿`2øXÄ;éù‘Þðÿó"Äæ +Ö”xÂÄp™YÌgXÿÏEe®¡ìL¯4*A|%ªŽ>Q•¾fûÏ^V‹eÖÿó Äå°¶˜xà +L+ÇVÄŸÿ¢ ¬#X„àhÉ:ß Þl›kò¿B¨B˜]1ÿó Äé +0úXÂÄpR}ÉØ-ÿ§ÁÇU&e”øÌQtxfñÿ5þtlÄèÏÔÿó Äç °ª”x{ÊLþÃ@ +ÿIàôÀ”„³@€’9ÆÔZ; +~–Ÿ*x !=•Œ|ñ´^ªÿó"Äç +8–˜x{L–=ÆÈÁø‹´:®|Däí¤eSÔ'ÎÒÍá%RÁC¼i øP±ÿó Äæ ¨¶˜xÁŽLT]bØ ® +¤ø_>a TIù¸ YóEúçÂgVú1å0ßÿJ³©ÿó Äæ ˆÚ˜xyÄpFnŽºÀmȶd2G\; "t.a4v‹»ñ ÊÈK2Xká‡ÿó Äæ ඔxzNL‰1 ×þ† ˸4Ȇ]†(IØÃ@Ô°˜®Š;QÁÿó"Äåض˜xyŽLj—¿þ p›s¦7ÿÙ) Ìÿó"Äæ + šŒx{ÐL|ÓÿPð0Â"Ñ'Y (áu©V$WݶC«`¤Yž·ÿðøb¦©’èÿó Äå –˜xZJLo¿É㣘=Ö"|l@e36H‡ìâØ?¤ %u(ã•ìWÿó Äç +~x{ÔH—e-¬ý/ÿ«ÎwœµßmXVšÎã÷NñS¡a^ƒ«žÔÚßÿó Äæ ¨‚Œx{HwwX¿ +± xEÔZ¿ JaöîY³VLæUMœ'ˆ‹}9l뵉Nÿó"Äæ àê”xyDp Å{ŽÒ mk±}8»«/Tüã©Ê Z# (o‰aÔàYFÑâÚßÿó Äæ (îzÄrõ&çzý=ÿÊ%0åXú„E7$ŽBõB¾e%bzÎÝU“ÿó Äè †{ÖJ.êX¿ ã2* ‰³b˜€8bñBÅÎ\&Qê0èX1ºyZ­¡ÿó Äë ¾xzNMÖ× EpJ€Äàj-4M8tUП#íÏùSP Xo·*õqaÿó"Äåè–œxzÊL”¹¤˜h¿àpÐ#ètÈ.H²f‡H3Ìq/a°²‘ u%Ëñ徃ÿó Äé +8–ŒP{ÖNjNÊ’ +ÿ¾#å`#Þ7>Šéd- 2ÖÒÿó Äç ¸šXaŽL.6‘ˆ‘öÀiqÒAÒ^^9ÂzLE– þèçHŸoRdÆƹsÿó Äç +~x{ÐH}DîE:€8t2lz&®ŠêÓE Õ…Õ{6`N"”õ'óÿó"Äæ ˆê•bpe'KÿéÆZ@6E©+@£§¢¼2È,£r¡ü­M"#Q=ÿó Äç +¶xKLåÇ(¼ +ɘ7AÛÈ£!ZHié[`i4Û©~x¤ +'™6÷ÿó Ä娂€({ÒJÒ÷àx$6±Êç]:Á9Azq'†ù“WnCüÜ“ÊeVñ1Àþ,VQÿó Äé +€’x{LùI{¿Œ +h>|]A‰Ü0Å£‰%É|Š +jEô–$tLIë¨åÿó"Äæ +~ˆX{ÒHN]² HC;IˆŸü9|½°“¼}µœmò/¬ËE¿ ©V_P»…ÿó Ä倲ˆxcMJJ6t€)h/ŠçjÓüÓ;ÎK(ÁÊTŠ{Nþ…v—d€“…Bÿó Äê +°šˆxcL{®;hwaíï% J1X?j¤Í>øÿWr¦D2 ³ò„Ôwâ€ÿó Ä渖ŒPbNNË"¬ØŠUn†cÍöÌp–’’Íжñ´¸n=dÚ±åÿÿó"Äê +H‚ˆX{H¶Ý>í@ vöÅlÀU`G,ÔŒ+Ñ3†¸Žë‹5AÓQ¾QÿRN\ÿó Äè ˜zxJDHïÅØHžÀraÅ㡶¤kî—NfŒE¡ÎZø:>|²¹þÝÿó Äè +(~ˆxcHMz‘§¤ màǾµh¾4‡y„hÝsDD—r’C±J> +•w ” —ÿó Äæ `vˆx{HÐfª–Mí=÷íÂï͘-1£·W3ÀRûy5Ú:ü@†ühö²ÿó Äç +²xà +Lr¡ï@¾€GÿuMò`gòK÷7³’ +5²ÿÈ#vn,õ'ÿó"Äå X’ŒXËÒLz¿H;¶m•äø/)éYà‘# rYÐóÞ·= +§Ÿ©kZk + awÿó Äç 貌xËÔLž¨cRÿ Ô¥‘üGL`GŒwRW€¥Ýo'ui8At–`eÁ.êÿó Äæ °vˆXÓÐH“Mÿ’H¯Ø“[Ž ñçqì˜2%âm(^¹%ÞØÿWý5éRv‚Àÿó Äæ xvˆxÃÄH6ÞÇÒ€-ÿáù0;Eˆ5r¨fÜÇ<ýƒW}•yuJ¿:þ +œÿó"Äç +`²xÃÊLd{-Ôü 0é™V.´L(•‡Ùܱ+@©êæE!, «ß”|Aÿó Äå¨n”xN(öú+°ÅÑvˆÖd~9ÏÕ©%ÖÜ>å±ÿ&yÃæ#µ»Þóÿó Äé +8šŒxà +LÄ‘yp«¶±÷S®£ßœè6âáUN‚ÀbÒj6Ðâàüüe Eìÿó Äç @šP{ÊN~õ­9˶ñdµ(vj+ XHÉ,¢Ì"ò¦}V­»ø@S¨HŸÿó"Äé +`ÖŒxÂÆpMvxä€ðz,ÊòW1fˆ  jƒýR˜‚ÄúqÕ^õ»ðÈ]ü±ûBÿó Äç xnxN(u­@€9—ÊÜŠK×Dq¦=ù'*g]Ôî7ë×tùýPwìÿó Äè ’|PÃÎLH¶ÊEÂW»X „ôŒ9·M +-#Ú¤?} +JÚé>\ì¸l,1ÿó Äè àjˆxf(µÚTd/ÿµ¥²Ä5½Š0LD…6bu¦)ÎüΞ+`a qÿó"Äç à’ˆxÂÆL»Òï. m'…ü²ÌPºš%i.¬Ž»ý«%KÇ7ˆO÷rέÿ“ÿó Äç ˆ–xÂÆL`ÓY®;EÚ+ ¸Qd!D*Ö¦ZŒ Îj÷„uÚÒ ÿó Äç +š„PÃÐL’ÿXÇ(£†Åªþ ‡g%JPÇè2tâÞ?™Äm ÿó Äåh–ˆÆNú•¨ ÿ¢Oiœ‘ +qƒ¼ƒMÂjΧ³XCÀ6RTuLÔ +j)ÿó"Äê +°‚Œx{ÒHJHºíœØO¿¯÷|V÷Á$0õàær„ wî$ZµA´xúÛKÿó Äç  ~”x{ÄH\È9ÿ ²ôÞU4n ÆMƒJð&ðð«××Ð(tèï¡lÿqòDÿó Äç + ‚„xÃÒH®÷¸°öÀjŒ{Zõ¶"I ÁÓ挼kSL;ÀíBO+žÒ%Bÿó Äåè–Œx|JLP¼Ô“R€ +ΊXVdÄÖÊZH +‹™5ä3‚­¿pÎà4¨!ÿó"Äè ðæŒxyÄpìv~xQ¿0 +VÕ¢Ma>[€Gô×f„«¾ÙÙÃò"ù'~ã'KCpÿó Äè +(†ˆxÆ +Hf¤)¬Hÿ+ͺPÚ­áš)ŸaߊçÌÕ»„¤”{ùz]÷Ruÿó ÄæèšxzÄL«¹`]¶h\i»â»!#¢†„ÝQ·xMI-±³€'t¶G÷'ñÿó Äé +(–Œx{ÎLw—{ü×j€í  +C#>ŒYNçG4ÖʆyÂÞTöËÿó"Äç +P†„XÃÎH©Ýà Ÿ)&Ñè,ÐÝK²4©Õ¹“·›ô`šÚ ˆÇ\\i&¿ÿó Äåè’xPÆ M(§øп Á@6bD-Aˆ%E"kóFL-'à&:[ŠjÈŽñ${mÿó Äè +(‚„x{ÎHuÖûé@Kÿ¶%bÎÛŸõÀ¤és?‹#ݽŸêwQ¶W ŽsF]ÿó Äæ vx{HÐÉËnR;¶œbÀ€è]àÊ€\ݦcvm¦ê®¯átη íGëYÿó"Äè +–ŒxÃÌL©«êN€÷à†x’­ “ñýrç—/2÷_@ƒÅ×Õ¼ð[œáÿó ÄåÈ‚‘c +H¤·;¿-T=ÙÛ(Ë_&µßÑ Üjû%¤o_xÕXóë:ÿó Äè + ‚€P~H°Ñšj+¶‹“!t4@$±-9y!öÁÞR€ïØ·Ê)gÿó Äæ €–ŒP{NäÙßSö $¯¥aª¥ð_!@·ÑîÓ†økÝóÿ¨B<ûʽKÿó"Äç +–x{ÄLÔæþúÀ?ÿég+M¨d 28JvU9)ð€ûÒš¢ “ +Xñÿó Äæ  –ŒxKÊLwñdœë Ìh¶% ØbHN 5\¨Ýzjô :Š^­OãEÿó Äæ €²•{ÄL*°[¿, +;y¿qÔ^M¥[em†³ÀqñZ#9–[˜—ÿó Äç +²Œx{ÊLP\`Z€€oà J[ÂÒ²¬‚¬¬Šg¡.ä¾"Ðw+´âÿó"Äæ ðzˆxKÊHR…€)m챪¸-Om† Ò +(8¾2Ìè(’,®–öq+,ÿó Äæ –„x{ÎL/Möújá[¢ J3RöIˆ™Û®ÌâŒÜý.á’¡­¼aã¨ÿó Äæ À¶xz +LgnÊ€)h‘—µñÜ\ÀyÂ_£Õ˜5JöØu¯χ•úÍ?,ÿó Äæ `²„x{ÊL'Ø\Ñ­`_iÚïË$KU0S„¦ˆÒõ¶ó]¤ÉÇåæØb]™éÙÿó"Äç +P’ˆx{ +L¥*óþTä€YÉç rVcrk¦¬d(JlÁKÕ¡­q–Øöju$†³ÿó ÄåК•bÊL¨¯ÐŸèvÀ5æþ.]ع ªµùÔ Ðø8­‹ÑM‘îÒt Ñÿó Äè +@¶„x{ +L»Û{¹`ð.F_J”þ·( Wânn‹2׬£¢¸mò-^ߨÀ(ÿó Äæ Pvˆ0cÌJ¿½zÀöÀe” ƒ·Ê@5ŸšÌ‚Nz‘Œ+ôñürä3~7‚Wÿó"Äç +’„x{ÐL‡^¢¯ª¢`Ø +|}âˆÎ9NúÍsŽÑì¢ 19EáC§ý ÿÿó Äæ pšxÖLÍ×v€%´ oJd²¥Æðɸ$û¶Ô¾Z!-êJÕñt]µ—ñ§ÿó Äç +²€XËÄL+M—} hõ'ň˜(ø'h¢m;i÷ˆ×ÇkxûPˆ9ßl‡ýñÿó Äæ ØnˆXf +(Enypÿàn½g.)Èx€4x’ºG+yI›Ÿ‚-ÿ=¥“Îh|Éÿó Äå ~|ËÖH»“y͉"hujW´Åé€ !Š‚GUÚÓ •z…‹Þ;ÇÍ/¸ÿó"Äç +XÊ„XÂp½)j©¤Kÿ\œä8òÆhHN0+§î_Á9µ:¼¨w:p®TË^ýÿó Äå nˆ8f(¬Í:@ÿàW¤LJž°*;-m9nQ<áÖ¬ùFsõ ¨%Pÿó Äç ز…ÃÄL¥»Tº‹ÿíZ¹Ì«V°\!4Hðr] ï@€ivºm«Ï¡ÿó Äæ `²„xÃÊLÆÇ;ú+h®}g5Ï®Õ@gFÇ©X³Ëª§ ‡ß)…=¢f(ÿó"Äç +8~ˆXà H¦#ΗPÓxoW!„X±­ÍŸË{œšñ÷bA\»0€ÿó Äæ pš„xÃL F? üNî\>?°ãÍÅ!Õ6Ýn\”Ò„¯zâ¹cµL¸™ï½ÿó Äç °~xÂDHrTkNìlô³èâ’÷ë z@À@O% +'˜¹¯5 8yŽ~ÁŽÿó Äç ÐnˆXKÊ(ŽéÐ(tãH"ÊÎ +þþ¤ƒôÙúUÉò!°\ði1ÕJœÉÿó"Äæ ¸¶ŒxzÊMßÄÅ¥Ï*‚Ä›ý° 5rÅZíZÞN¼lX×Ñ- ÐPy"Æ$iº¿1̽U +‹!ÕCÏÄšhÐÝ^Š#þÿó ÄàÀþ˜@ÂŽsÿãú€ + n9¾´V¥[ š ¶¢ô/Ëèc·ƒy°çG¾¥ú mÿó"Ää þ˜pz„qü,cÿR !Á…g;'EB*ÈñT@h¥â›ø«Ú47ß¡ÿáÆÿÿó Äç ÐþŒ ÂÎrA> ˆ +מ¾å.Ix„”‹1ÖDö"7àT[ÙGê.ÿP«ÿó Äæ ˜þŒ ÂJpÿ¡vò +ÝÕÕ~mH”T€oÆ”FQ\íƒcxÅ„ÐvЉÔCÿó Äæ àÖŒPÊJp€ë=è"ð3–°%ñ•0 +¡¸õ0¥…[kB›)òÿÁÿó"Äå þpyDp7ú‰5€Pept–#ã6…+²>Ë9[Ô›XÿÜ×#Ë + è_âwÿó Äè +`þˆXÊNpyß@ +±)®JÙå’tlC Xõ ÝÙÿóÏ@÷ïí n­Ôßêÿó ÄåàþŒ0ÁDpÿú,>‘ÏÉ[b¼¡•püÏœà‚˜ò _ý·RÖt9õøe¿È?ÿó Äè +ˆ8Êpüƒù,> +ÊÞkÍŠK)DGFPA§R_ø;°gå/ë–ú‹ôÿó"Äæ +Ú„PÊpÿÂMâXÀ0ÙµŒ’ ãX+É7/¯5~Þâ×~‚ûäW¹g¥¼ÿó Äæ É•¸yDp»½þ%Ôgv¬þ3ˆŒ*`AÐ X÷X•çUùÈ&µ+ÑiÚÿó Äåèªx~ +LßðP€éÜ ÀY²¹^¡!Ró0rSaÌ_Oñ û7äeOäÙÿó Äè Ñ„PÂJp¢vW +7ªªK½ÿ†„)H- ¬CY¨ÅÂ_L¯°ÇÄ\&¢ÿó"Äç ù€ÊNrÿCÛøKéàfÊ*:&ìOÇø»–b‹y…‰ðƒÖ”ßçü[ÿó Äç èÖ„PÂÊp¤©µ¼€€B¼rḽšFsҴц)Ì’Ádß•[mJøž¤ÿƒÿó Äæ ¸‚Œx~HÿÄúÚåÀ_ ð!)ÙªþñèT ÁCTüÃôF÷-^8óhÚïÿó Äæ hÖXÃp9åýÈP¯µb˜Heítç˜íˆUI=˜ŽÕëê¹ÕåÌz ÿÿó"Äç Àþ•zp‚ùîÔº%1”6·(a +]LÓVÁŒ2ä‘)ãVM¶Ùÿ ±¿çïSùÿó Äè +@Ö|(ËÊp¿Ô;z€P@¹Ì7.–?:X'|8Óåx'ºb/ùRÑ õAüÿó Äæ ¨~ŒX{ÊHoø?Ÿõ€`.Á°UU¶ƒCB@¶’?@rë殸etGèôÿó Äæ É‘Âpÿ~ª@ +AŽ…Í/9à¡ŒôÓˆõéÂçNÎf\‰Ôÿó"Äå @–™¸zÌLþ%ÿŠr@€B +0ãlÎKPÐçúFºËÊ1 Tð“#õÐR.sÃÿó Äè +@ÒŒxÂÄpßúõEYDåYCOS‹#‘UT”Œ–DUÐ6AÕFW@¶²º‰ñÿõ¹ÿó Äæ Ö„(ÃÄràßÒ |܆ÄóȲT’®ÞÃ=uI’h 1W;å»&ßoþÿó Äæ ÈÒŽXÂÄpôQBÞ¤ÐÀvÅL$ü'P‡~·" uÅ +sqyÊ/¾UUêOÿó"Äå PÒ•¸zpø/óô€€ »goT¼AJפ +¹ûU Ð'³âV”$9Çó¾ÿó Äç +„X{ +pô€À/-¯£.΄l’ ÄtÜ›»ìºñÐËw{\ed8½þÞ…_ÿó Äå –‘| +LT๠4‰™²´:MjŠÑôWMƾk‡¸XU×æãî\mÉeòžQúÿó Äç ¸ÖxÃÄpšêÖ€ìÕ¦ãi° s†’YqBŽ&õÊKϘú«ü¿ð^ÿó"Äç +8Ö„XÂÄp±Ø±¾• } 3Hö¹1n˜]n>£¼A]cšxxûè|Nó…d›yÿó Äæ ÈÖŒXzÄpö`Ï¿ë€À5^Î'Î’z—(˜ZÁà–£*ÂqKóó¦êú{âƒÿó ÄåȆ„8{ÔHËåÿP´€+@ú–©æ jÏá!Tƒ¹(IÎF̨R_ ++Ì|y¿ÿó Äè + –ˆx{ÄL•G^°Ì}ŽXúÃÒ•‚ ÖRb¯D6ü°ž=²øP†Ÿ /‡ÿó Äæ 8Š€{ÒLo’Oà¾f À“`?)š“xQÅL=‚IÎ]$ÅKx:ã8çî?Ãÿó"Äè + Öˆ¸zÄpñ8|,MÑr'“@Ç€¤ŠtÞ"èì›>›kä7©\ß¿ü;¶ùqÿó Äç +–ˆXËÎL‚Ë<2³¤VcþÆŒ€ô<é$vþÃÕÐ( +*‘áfVø“Ê¿ÿó Äæ ÀÖˆðÊJq¤ÑŠ¨áHΩ¢¶`ᨔ\P.0È,rd¼¡uÔÛþßðG°ˆðÿó Äæ  ’ŽXÄLæ»^\?W,G6^ÃËzÀ3@pÚ6Ä2·ÿ­ÿòH’2€àÿó"Äæ + Ö„XÒÄps)ÎOˆ<¿P|ù…]Ýú˜E‚L-©¡W°®M;)óØFV´¤ðVÿó Äå莑¸Ã +Lîw[ý Ð@&…­‰\²¸!Ø¢™F;S¢XÂbOE +ÿ…ÿó Äè €ÒˆÂÄrÿÔ8€Ê(„æf4Ë%å ÎR¦*êñ¬ƒžjÌ0LÓúÿó"Äç °ÒŒ0ÁÄrÿ'ò ÀÊQº8FÅRÝM'cÔy*Íèûƒ$¹½Ñ@9ÿ°ÿó Äè 0Ò(ÂJpŒ[ÄÀ€Ê™ÓåZÎî$# #5v˜,Ê€Âržò“ÞaP¤oêÿó Äâت¨{ÔL·üp€Îô +^’Y^ Ot‰rø!ôÁÝKt¿Å¦8Ê”¿ðÿó Äåøþµ¸aÊqjýþ € þÊ»ZýHlqoàž`BÍzµºa™üÔ¿ÝB?äiº¸þÿó"Äè + Ú¥ {Tp0›þL€¾Õ¶„Ó•P †½”=<À²>9â`ù×2¦ÀÇÿó Äç Ù¡ÃNpü‡¨7Œ9nô +NìÉS„Éî}´‘>Q?å¿Ê,=µ)•v­ýaÿó Äæ XÖ ÂŽpÜ£ÿ3ù€4aíÞåŠÉ†D‘T7•†´¡LðGª¡*È¿ðÿó Äç pþš ”q‹ÿÅ€r51jÜÝ;éMÄ +"¤€€.Š) &FýûUåH–W8€ÿó"Äè +`þàÂÎp¼Ï¥õ€C háÓ²¿†áþàxkÐç.1¹HO`Á›SwUMÿÍÿó Äæ xþ”àÂTq›ÊyP Ò +5.Ç`¶’ ¹¢rÄhu·•‘ }[B ±ÿó Äç pþ”àyÎrÄÿ@AŒ¬8.cªdN +Ä\aSRœ±0éëÈÙM¯åC*Ϙ-þÿó Äè +aŒ@ÂZpBÿè_é@ð<3…ã óHßÝPN ë{:(¼IžA»úáE~P'ÿó"Äå þ¦PÀÊqòóÞ,]|Úaa”,’“¶ÂJ0MWpjtòË%CùQËä^8óKóÁÿó Äè +HÒ (ÂNpÓÿœßòÀ`u÷0ˆ#á”’ì•4âDò?—Íüw­úÿÿó Äå Ö¬PbpÞ\À§¡-ƒ°{ÐØJ@Q¼ÐÍ^&­²ïl7ÏŽ4oêHÁWÿó Äç hÖ±èbNpÿÿ‹U¸HÜ+ꀯ©ZÁ‡¾‘ +%ŠÞDg6"‘ú“àÿó"Äè +A¨0zÔpÿñô€°:>s+pûrDôX¦]/¤ïì,±°ô½ÔÜdoÔ0šÕ?ÿó Äç ¸Ò¬ØzNpáÔßHÀ!€Éë¶RT´S%–‹ÂH<9žH‡7™9$ +~¡Ÿ¨î¡ÿó Äç +þ¤ÀzÎqŸñ6ÿÁø&GÇC¬8üçÁÔƒ}eGåYjÿ}N^ÿó ÄåðÖ²zDpÿá_ýD ðRКåpèÊ•&jfB W…>¡õÅÿó"Äè +Hþ˜{ÊqÈÿñ À0Ì€îݨÞT74¡Cì0T™‡Ç×á„è¢ä¨øÿó Äæ HÖ¤8zÊpoü‘À Þ\9]€†£ÁvÄh½- +|¡s›ßgoü,ï°þ_ôÿó Äç èÒ­˜{pßç éhI“ + ”î‰"r2kÓƒû¤ÎM¸hº¢tÿó Äæ Àþ©zÊqþèò€Á‡@Éê±}–³ð#$°½ íÚxø¡ADžjnF†²¡ÿó"Äæ +þ¥xÂÄqÌç†|¿¨‚ðŽE*O!.ŽC2ý> +!Lƒm"YeåÍülÏ¢7Fÿó Äå þ²XyDqÿ‚ùoP*†ãH§s R÷uHï>“˜<á=bÙwȼïEÏÿó Äç Á­˜zpÿoG¨¡ü ·&˜™j—I;?-€SG¶ª`ç2¡ò•åÔ­%Iÿó Äç Àþ©˜zDpÿ òüª€  +¤Ð;P‡áÐ óÁÅD‡ŽQïâ ³ ä^¡©ŸƒÁ¬ÿó"Äç +Öœ¸zÄpÛ GòÔ€˜ÿ)73(P|ª÷¥`ÖNé¤Ï÷“ͧÀï«õ/ü3ÿó Äæ °†¡xÃH¼åùŽm£ÒÌÉA…ÎvŒYH3Á··[1—ÏõKAûÿó Äæ ¨Ö¡XÂDpþçTõ€(ð)õE)qüx@rp,;ÐÔì´j{È¿¥·BJÿó Äæ °Ö˜zÄpþþõØ +@2zGØT8ÆæíÖÀáÊñL2Y‹ðÉ~rò%÷ÿó"Äæ ÐÖ¥ÂÄpÿ„ù;ÙÀcÆj°‡€˜K/ ] A«%˜©ªÑ/Ê=PG·ü3ÿó Äæ ÈÖœ8zDp½Þi`ü +LOÍDSÀ4N£é¹px9þñ9güä'ç=“1²7CÿÃÿó Äå Ò¤xy„pÿáþ„ÖØç~"Èb#§‡ižk"q.ƒˆ=¿`%ïå©©o7ü+ðpÿó Äç +Ò˜XÂDp§Ä€…W¢@íÙ@%‘!¶Xĸ@ÂT— Ë™‡Tš÷ñ¸§•zÿó"Äå HÒ xzDpˆÿ„p´ ÛÈÙi‚Àg::Žƒ†H!.{r +<×Z¢÷ùŠôêQ}ÿó Äç + Ö”8ÂDpþ ½~°àuÓEW¨ÊºËs;QA™ :ÛÔ»ý÷jw÷ÿ‡ûÛÿó Äå ÒœXz„pŒ?¬F§›3ÄáÌ3‹½jrÀÏA©çû• …mZCÒyÿ;×™úÿó Äç ù˜8ÂDp§›Á¿ ü `¸:=amHbÔЃX‰']¡ÄØiMŒA”Gñßÿó Äæ ÈÖœÁ„p ù‘¨²…ìAœ~ŽIPƒD… \&¸Ìkvš&Çôè:rÿó"Äå ÖŒÂDsôÿô€7%úò•*ôª™as€Až­=lhL1¢`~_ßÿó Äè +`Ö8ÂÄp×`ƒoÕ¡kn¡`OúqÉ q@FÉ)B&KÇXižk*¤ûyÿó ÄåðÒœXy„p^O­@G\³EgÉÆA 1ŠÒò4‘ÝÈõ˜z'€;˜žGP(Ñÿó Äè +0ÖˆÃÄrº—öãž@ 2äü¢»V…íAO»ô&b4‘cn¡X[+Ôt?+¿Sÿó"Äæ ð®8à +Lú¹8h :éÛÌK`“¨PGéaÎ;àŒü¶¶hôöèx¸3Óÿlÿó Äæ ÈÖŒ0{plÿ6>À,0Õ‹„ñ`r4¾¤‚<{lñ#?íqOïkíÛþ¼·ÿó ÄåÀâ (ÁŽqÕå_X,51»³ +W)\…Ò[«¤ —Òcèô»ªEùý¼¯ÿó Äé +Xæ˜8ÂNp‹òÄŸ¬i+Ã/bS Y £ +ýLÍŠù©)Í/(}nx±ÕTÿó"Äæ ðâzNrê¥=™7Ú€ »³•m7'¸„MÀè$àfÎy&–Ú8¾N¢§Kÿó Äæ pâ”ÁÚrWä:€…àyZ)‘fMúpÀ0,4‡½&h¡¥£ÌC(Ë „¶ÊvÏÿó Äç Ù +”zNslK»Ô ·ªa)öR40ÃK 2uDôêH4KýEº°/ÿó Äæ i +˜zNrÍÆ|¯Žõ€ƒÀnÞŽ¬ °°,–Jç&º¢¹eÄ÷¼®×;xAúŸTÿó"Äç +8æ +r¿“æÅ@ÍàUŸÝ‹À ‘… –¢<‰;Lmድm£(_T[¼ÿó Äæ àš{ÖLÎáK€€¶Ûi¨O$©¾/$Ø +t½òÖ:^ .&Þ&ßÆÿó Äå š”ÂJL×+ìÜ¥ ‡mvp¢„‚šÓŽí@!€M<ÿåòÒÿó Äå š”XÃÊLþÞ€ ëW3œÊ  ±U†É¨G^2â©d²`»ˆ·ç·ÿó Äç È”XbNL?¡}¶u€Bðoïà +àyj˜y±f&Ø·‘’düS±,=Uo­åÿó Äæ ÈÂø{ +LyñÖÀg;°‚—R©K¸¥7´¶7I‡‰—øí/1ñc¼%ùv?ÿó"Äå @æŒ0ÂDp‚ïo4º°K8×[\Ž›œ‘¡žŒäX–ñ”Äź}°3x&¹ÿó Äè +P¾8{LÔ(Õ k_ƒp¬Â ´ô%ÌÚ£¶ fŸBôß&0_ÐÐîè7Cláÿó ÄåàÂœX{ÎLú,[½ ~ç(‚„p7é8kÌ¢`îø„ŒB¦Úán¤™ò$ê_õÿó Äè +H¾Œ0{ÔL'ƒúWÖ8ðæF ÀÄi$£»©ÔÓ'±—o!„ð°^5_øÑÿó"Äåè‚œxcÎHÙG¡; +üJóxqÊ¥ „ãni6nf¡'ïp<âI’S©Ÿú·‚ÿó Äé +¡”XzÄpùÑ\‘Z€®x +âב‡DmWs÷D_Ô‹Ž 引¡éÇjÿó Äå°Ö¤xyÄpØ +LJj'zºmÓÎo‡2¢£å!uX‘9×jÄé_a·'Vð{ÿó Äé +XÖXÂDpeP“ºô,»÷ðÉYT`°*-Ò{¢†…{1öú¾ lò¢ÿEööÿó"Äæ ¸ÖX{pè zŸÛ² _bú3˜‡X:³HRƆ³Ÿ@yÅŸ”AœÄ÷ÿó Äç ¸Â˜x{ +LöðT°5Ú[¯@A_в[ó aˆôUo4tß]3|~Þø4LÎ(ÿó Äç +Ò”8{pòzú@ Ø-.FÔÇasR‹QVèªdØñ'Ýa‹ÎÞUÛÛÿó Äå~œXzPHÁ÷\Çkgà|Ʊœi· +´Íà†´>}9/àDyï +Á‰óÿÊ*ÿó"Äì pÖŒ8ÃpÜUMÆ›2¥¯?Æp3a¿nñ~T|€Ä¢°£ÿ¥I”G†é·ƒÿó Äæ àÚÂDp_7ü[œ_EÜ_€&ÕðPi­J™.5Ù@™\Y“ÎøsR‘lÿó Äå ÒŒP{p‚ÂÀÚÉ€4˜Q¡ +3®8Æ$AbbÐ$Æ¡›ô;¥èúdoQüÿÿó Äç Ж„ÃØLðmë¤ € +Ç3Ó U²’Õ}RA5v[V³j:o½5Ñ¿kYüWÿó"Äæ ÀÒ8zÄp‚÷ð¯é±@ :ö§e “„ ›² ‰{3ß])üÁƒ[S€i†w†¡ +Þÿó Äç ÀÖ”XzÄpGÑ U |59›tc¬àBi3„³ÞQYØvÓVð¼ƒömèŸêƒyúÿó Äç ¨Ò„ÃÄq¿‚ú,ã€ÕbH²Ÿ ˆ>ÖJâ0|A´Á–²5Ò¦qQáxÑýVsÿó Äç +†{HÃÞL]@àc.5I탅n¦©¢5F¹äŠôåüooø>‡ ­ÿó"Äå 0ÖŒzÄpR…#(Ì€j½r<½šyVãá0’2]›y5%ìhï&ô¡î$¨ÿó Äè +XÖ„8ÃÄpý8gÐþ ÇàJzbp8j$$"˜¶L»tÍÙ@ÚX£ò¯ž·g§¨Zÿó Äåø~ˆ{ÒJ…08¢r™¥ +\Ê:Ê»D˜è@íc¯3@1Û»šP < ½TžVÿó Äè +PÖŒXÂÄp¼»·Â€J¿¯ÇÊä¾°1ËeiþòEI' +〘q.St?—ÿó"Äå X–”X{ +LÆúÈ!Ö(»0ç–¤µl›&¡(ÔyÃSn4ñ°ÝîZèaΙ¿ìÿó Äç °Ö”XyÄp;¸Žý  éÞäJ.„T`ZÚ¬aî‡QsŸj ˆÜÿÐÏ)ÿó Äç + †ˆXÃÖH Ñ@Û3cùÙÐ\! dÍ™ŠÌ‡Lê{E4…­·eÊíþÿó Ä刖˜XbÎLO¸OîH a„”ðbþXú•©Ñÿó"Äæ ðÖ”xz +p¿ÊùN¥‡ˆ\ b—€¢˜ °(Tv»9TšÛeÀM_G‡nóÝ]ÿó Äæ ØÖ”xyÄpNRÀœ 54e´[™Áô{1Äè}øoó×ÚÎ1";ÛßH-£ôòÿó ÄåÐæ PyNsÞCœ@ˆÑÑiãÀø‹j(«$ê…Í)艀Çýþ°©~þþ¼ÿó Äè +(â”zNp¿—;2N„&p(œ÷“Ž%pV­)Úå·‡zBh¿ºŠÔ_£ë>êvÿó"Äæ °â0z +rÎeú@0¨.’bê‘xˆõÆ^0Æ3nÀÃÎ?sÍlµô¤yÁc:õÿó Äç +æ”Xy”p¾W´˜œ¿EæÀ£2R–)WÛïÙs”-Î?áCƒk)Ñ.¾Odöÿó ÄåО”8bJL•>· %@Ü /¹Uw(B¯Gl8_  +sÈ 4o_³c~ÿó Äè èâ8zNp¼w¨ŽàmµÎTAk‰+œÓ1û&!¨R°¿Ü]ÛÅúòºåìÿó"Äç +`æŒzNpRˆ78‘ëŒàKi¶A'`,Dàš8]ùn÷/¯ñ…£+uëâM–ÿó Äå –”ØcÎLrý­k +€Ðe¦ 9”‡‚E°l nCýƒX0GŸ €Á+Vñ»jg*ÿó Äç ¨âˆÂÎpGT¨Ü€uÒÙF6Ïà +2hÈÕ—‘2² +çwÝ@b-—ª¯àÝÿó Äç +–Œ8{ÎLqk¿¤Ÿ /5Ú`Ó±*Œ+_Jf#în´ <Ð1¯*cÿ*CÜÿó"ÄåðæŒPyÊpç¥Jn € +ätÄŸ<â;¢„EÑxÀÉd +4ôÖo‹ðiÿÓÿó Äé +€ºŒX{ÎL¬õ`vüÑŠµ·4ª<ÉïàÎ[f3¸óÃÎÁ1õ·3Éÿó Äæ È–ŒX{Lu:EwzÀï}ÅÉÚh@.ÑÆuÆš:ƒ¸sÀAuă<þÝÎÛ ÿó ÄåèÂŒX{Lµ±`ÞÀVY®réF¨:Bññ‰|îÐ-'þÀZˆeaËæþà†ðÿó"Äè +0ºX{Lt‰žóIèà¾á’¨(ÂÚ…ÔÌ;v×]ëùÀ¶ç?„ö´yHÿó Äç Ⱦ˜PzNN7([ +ÖŽÀuúਙ•Ó榃=Ÿ+qŸ}BHÝ0d•´ÊÔêÿó Äæ Xê”0zÄr´SYÔ°Ûa<Fœ#­eV%;×tgÜ +H¹ù@0LWÉÛBÚjÿó Äç +”ø{Lt³’!×àb#¹‚U|Ü™‡CöÌ\•Ç7üSØ:}ÅÎÄ•ÿó"ÄåØî XyDp¯O‘–È€ŸbGu\‘O +‡Í‚“oåÝáïå‡ñÐþUŸ;#“ÿó Äé +€ÒXzÄpÍâ@Ïàuèò•'ô´Àeµ'>MéH7ý +›wé}GóôOßÿó Äæ ¸¾ŒP~L‹wsÕ°€»ð5-R(ÐáEâHž-wÜÐ(çã…ú‹òÕ–rÿó Äæ àš”X{ÔL +ló ×àuêE†#Eò œh—8sÞܪ˸±#Á‚oñ>ÜÂÿó"Äå @š0{ÔLÄ)8n¦L ·-h N¨”ìSAG+ü Çøž:Çðÿó Äè +H‚”X{ÒHoSu€£Ø +É3a˜¥m s(õ†kûørí·¥E£,¨âgKTzÿó Äå –˜X{ÎLSID½} óð2Q<'0 +—— +™s™Éå’þ+øQjÆ?çÿó Äç + þ”XzDqñŸuú€ ?S¹b9˜uRÂßÿÆýÜ]‡ +_æÿø×Òÿó"Äå š¥¸ZNLësâußàvøg9nT}°kÄÕnöÑϹ +^ï+; +Rûðÿó Äè +H–X{ÔLÜ‚ÖkV€¿Pã¹u!Ù\„Fañ\{›Ç+BÛÏäàþ$xç(ÿó Äå Ö™¸JpÓŽV> +D–[!ú“á„d‡È‰Ùº(*þƒ» ír¯µÿó Äç +’•{ÎLõêÞ!¤€/ŸÎ´•[Ï'Õ/³Ÿ'”õ°­Ô*/ê/ÓºYÉÿó"Äå PÒ¸bÊpNxíùèX€nlÃk €)¤8›¬5 ±>ûæX~šéR¢ž@M²Kÿó Äç +º”xcÐLmi¢ôê +©Eª"P‚D…Ô+‹’tgÝå0ÈÌÙúH •úR•ÿó Äæ àÖ”XzÄp¨Ê7W å IIä>^<²Â ZVóËü7Qþú –CÊ úálü†ÿó Äå Ö˜xaDpr9ÓnM€€¥À½àÝ^“(cØéI + ËyLoòÑw‰´ߣxÿó"Äç +0Ò|(ÃÊp&„BÀ6µE‚¯b-Ã‘Ê ]¶ ²ëøµ·ÝÁÓÈðÄ_ã³’ûÿó Äæ °š˜øJÎL_*¿åÀJÿ¤HS€ð(v`ògèßóD¯û@¦¯éf;A³òûxZÿó Äæ À–•˜KÔL»U&+0ÃYI2ÀS:œ‰]·Ÿw`þ´¸DÃBÈÕ/Qøÿó Äæ °’€0ÃÖL®fϨЬ +*˜QMÓÔW‘ÊpC ÁTÓfòÅAw“ïL„Eÿó"Äæ +–ŒXcÖLõ~Ÿ½Ô%>†#Ò°q¢2²A,ïuO¬Túù7ªÿÿ0Ø…ªhÿó Äå Ö•zp à¦[ÒqÐFú,ÅP8Dr‡ãÅZª?úÁQ;yÒrÏP …ÿüÿó Äç Жx{ÐLNA™€\Ô¦Ž½j +gá-ȧÓ* +HÕ¦œcÔž5ˆç~hoÿÿó Äæ ¸ÒxJDp› ¥ºÀ YjAû)Tp%]IÍj +mè¾J\Ð +.VuC‡ƒ¿¡ÿó"Äæ è–Œx{ÎLŸä¿Ú˜|× ÍX?ÓÃÖ†JY¹ž¯ÜÏÛŽ—?+ΙnOÿó Äæ ÈÖ„PzÄpùo/Ój€×[´,pJ–FÑÑtã½ + î›Ò}ÿþOÿó Äåðâ”0br{Žô€e4+ºQàv²öR5”ôš¹oa¾—Ìòª„Áµ^¹ÿó Äì +àÒˆx{ÊpOf‰ª*Ý"•J´]G$Év6Èܯ\>+gM4Mòå ú”g_ÿó Äç Ðæ™xÂNpÿ•öj40€øl‹w3`b®4I±²!ŸãBáÊS@Œµ?–ÿó"Äæ ðâŒ8zNpéO†%ÒÃàay—1T¢A ‘W²õ+ÚÚjÿ "<æ]”¨çGÿó Äæ ÐæøzÔp·u%ÀÃàcÆŒÁ¨ +E—™<ûï…S o¨˜àAÞåñÞÿó Äå âøyÎp¯¼Ëë áT[‹RAH`‚i‹e´£÷)Ì&K×P6$=Ëi +¡wå¼ÿó Äç Кˆ{ÔLåeæ4Ñ1a6%áø…˜j¨©ƒl?ãyª\Ç‹?é­ènÿó"Äæ ðâ„{rü¿á¶ô€€®…ŽŸ*ÄǵV,™2iŸS¡b«âŸ7”ÿó Äæ ¸šXzNL-ïêÇàvû·¶šê ÛC£Õ·â}xlÌ®¡“«^có÷BÞìÿó Äæ PšŒX{L²]¾&ÕÀeK¬»®Qúk i¡#IÔèîdÝŽœ3Ľ7ÿó Äç À¾ŒXcÊLA^£ýhÀ@÷f®Pêá±) + +‚r4Žl‚ .öÀÛø"Pÿó"Äç +¾„0{NP†$€X¶N#Bd}@ +Ñ´|QåÐGàb‚ý˜HpþªSþãÊèÿó Äæ É +ˆzÄp—©Z–=°KÏ´°‹%°••ñc/VñY£jè w‘ˆD /“ÿó Äå ¾Œø{LAê®G"Ëáã„b$‚h²~¹buïJ´È¾”çÏy¡XW{Úÿó Äè +8¾ˆX{LÑe^…‚°ï—ñ÷yÆMwšßú½£ÛøÕ‹±hmÚ†•ª «§¢tÿó"Äæ +¾„X{ +LL²¸IeJˆñW÷‹xÞS +Ù¦îj…@! KÕn +û~£¿ò ¤€Dÿó Äå æXyÄp´€Ú3&ÔŸPàÔ“©@Ygë¨Í§œï8'ÿQ¿ú€Ë9=nÿó Äç ¸ºŒxbÊLžfã}Gµœ&ÿ ÿó Äæ Ñ ÂNp’OúÍ=@€ +[¨^24SAt¹qý>^pyÁ*Žö/êÝCOýÿó"Äå 8þ”(Á”p…ãþEÝ@€‡J5£¦aÅâÀÂY4tt +'*ÇbŠ§ÕE?áÿó Äè +HÂNpøðXR!h;ÇpÛ`/ä®WkÌ%y‡k6ïÚIüŸ:ÿó Äæ ÐþŒÁÚpò?‰ÊýY¥‚X„"_“3³¤„x}âƇÂÌÓØ"†ýÐ\ýüÿó Äå¹”0yÊq;Ä 7ðÍ'REß|l8 èM§Ë]²c2^õ}wÔƒòw¬ÃüÊ §ÿó"Äé +˜þˆ ÊÚrÇþ?ÐPMá¾A (˜—4`r]Â(Š5<À9§ÕXÓ9qUŒë#ÿÿó Äæ Øþ8zÎpNùÏ@Õ‘Ç—„—¬Ê­a=¹í£o,ñÓdêŸíÂys“Õjvý¯ÿó Äåàþ¡°yÊqÁGüï  †¥-‹ðò^/ª‘’2µ|ŠËn}„Ç?àؼ ùuÐÿó Äè +HÖ {Äpÿôåþ€€@áß=cÁ6H©]ž +ª# +Í»<,¿×dùAs˜R³Þÿó"Äå ÖÂpkÊzÀÀâÈý½,s%qÞŒE&=¤xIúÇÓt*‹T¾ßÿó Äè ùŒ@ÃÄrã[ý}`„Ü”Ïpßåo‰ _YCï܇˜çâ¢È‹gC×þWÿÿó Äç èÒŒhÃNpA~°PpkV«An#¼äÙ[!Œ¼eg=« +K~A.Î\d»+œôp×úÿó Äæ °Úˆ ÃÊpø÷¬@ÎT¦¦”©ç…S,€SbØËOóàŠæÏ?“ÖºMÔÿó"Äæ +!ˆH{ÎpßâMÿëÀF00ÆÍgŒ0špž›²¡ó¹‹ÇEí•cž‡*A?ðÿó ÄåІ•|–Hôî°€@ˆ¾Ñ +âuZ_n@ÂE¢¡ÞL·ã5WT[´=ÿÍÿó Äè +Xþ‘°{Jpõõ€`X|Î9¼]vŸKñR.Y#äÏqè.y¶/t¤j:€Áÿó ÄåàþªxyÄp?üoX€¼ +0ƆÜe=B BÏì³äØ—þ™õýÞù$<þ$ÿó"Äè +0þpÂÎpßñ~Yo¬€…iLºå;ÍY¢ã˜ô¨ÍÏãÑ£êB:n¤ì;YŽDÿó Äç +þŒhÂÊpÿáÝç½ `M0lÜ»Q¶¡>DÁ•C³¸øZn@:ü¹Â0r‘@¿àÿó Äæ  þ¸yÄpßîô€€Ð.òüÓÃ×)yX†›0F)/Ag«Û .keuX/üÿó Äæ ˆþ•zŽpAÿÐ_退9À¬ï;Š±rs“Á~/ó;m&ŽÞ[ÿÓÝŸ)µ@` +ÿó Äæ hþp„pÎÿá¾þ”€¤ Ü_¶Yè…Cá–":Õ¤rß—œÛíÿõ7üíÿó"Äç +0þ•zÊpQn€€ðºµ–†‹£Úš‚Qî„¥=ô‰Oý%cSå•„#<··¯!Úÿó Äæ ØÒ•°Â„p‘@8è´´E!«J2¬}0 ”z:Àô'n{ +ó†° .lþèøÿó Äå Ò”xz„pßê\©ý@À( Z$†­J†–ØøiÕmYÕÑw©Vcå¼"tåÿó Äç +¸ÂŠp,ÊêfèàÁcÁ$Áî#Œˆ«]Ãàí%+c®°|ê”@;+ÿó"Äæ +Ò¢XzDpÿ?zÔB'8uyQñ\Ù!;X},/ùFaw^~ÿõç~ÿó Äå æ¶XaŠpû} +I¨ žpàÖ‰cfíg FõA/%¢X©oÿ¼?–TÞU@äëÿó Äé Àâ•XzNpô|oo € Í­*”Ë ÂAÝŒÎÞ%ó¼]¢üWªô'ÿ '¢¢ÿó Äé +˜þ•˜yÎpQnª_ÛÄ”;âð:+Á#N¸Õ+÷ž6ùMNKúˆÚÂ=?¨0Cÿó"Äå @–˜cÎLÈ-AÊÖ'k ]3*ˆ!‡–ªª0P±>Ýr—®‚°™ÿÂïÿó Äè +8æ„zÎpå=@ƒÀ…–YÒ³· äV'=gƒo8ëzõµª{¥·­O“BQ¿Í ÿó Äæ ±&–yÎpwü×Ô€ÒÀÅ«ª—ø ÕC–Ú‰òD T¤Z¼iÔ¹J(À +-ýÿó Äæ ¸âpzDpÛòþ €á* ¼WGŒ¦=_9ÃîéP+‰uUs»YvÈ7ÿÿó"Äæ +ºøcÐL&-þ¤@Æ^°¡L*•†hÊ):Úb°Û5Ôª*HX +ÞV¨/—ú‚6ÿó Äå +ªœfLÿŽz€Ð3†¯W§Ôz&§dÄ¢&ë4dt5­(óì·÷Œÿó Ää˜Ö°(bpøŒ—™¦cm¹×Þ-X€Öçn,XLË{ûWÅѶd·DàÁ¾¦ê†ÿó Äè øþ  {Úrßò—¨€05;Að%¨fÌ,{Ö‡ÈkiP«s¥1PÄÚ)‡˜T&ÿó"Äç àþœ {Tpñ¶ŸRÞ a¢¨¥cƒÈ t¡?²ÙDu Ї̂×9EŸêÿó Äç ˜þ¡{Tqoô*7š•Á˜Æ!T +Øšc‡xdˆ ;I|ÏÜ7|Ê8à9f§¨-ÿó Äç þ˜ {Trõù/P FÝŠIe»´3íˆKöÂã© + ô+8£=N1÷ÿÿó Äç 0Ö€ÁÎp ÿ©gõ„Ì45i®çdãY‚ÌÀ#œÄ(ø‡0ƒ&ιÂ(¯øÿó"Äé +0þ zÚry_PàåððÊúAr…Ý™”1Å‚¶Lœn”ª¿žùçéPL¥Åv9 ÿó Äè +`þ™ ÁÎp7ü'öy€ÈôŠîëlʵâZ3^œú•[{)™ +ƒ©ý–¶Ñ Fþåÿó Äåøþ¥°bqÇÿž@¤ P‘…ñ1U³ÂCŽâw*…©½Ê­èþ×®ò¥¨x€oÿó Äè +(þ@ÁŽpð³Žì…øç±7nbQ‘ß&”Ö—§8Šmìy–'{Ö{ZAÿó"Äæ +þ™°À”péÿËî÷ú@ à`^WŽ¦W‰)åR¶ifÚÚÇ`â=ÛOòªÙTŸÿó Äå¨Ö ðyDpð(€@Itpy5FæÆiJ 0i&•F<«Êܤ.Dè_Ë«Ú.ÿó Äé + Ò±{ +pŸ˜_ý€"à;|P·&¡¬1m? ƒl +tÒŽ «—~ÿÿó Äå þ¬È{ZqÿAý`!òˆù ÌaýI÷V nãN•‰àø@bCðF¸ñ.ÝûÏGÿó"Äè +pþ­˜zNqÑ@¿â†òÀ…Ãp3ÏEXÑg`R¡˜|u¼™›•´ÿûÏB\Ìÿó Äæ ÐÒ¬àÁšpÿ ú0;å(φyúG®ÕUãE¢À2Yrmuþžz Ë‚ úÿó ÄåøÖ½˜y„pâ_ý€0€ +®àbôy ¢ ²ë³Èñxžl‡þÜÆg_§¾="Ö@ÿó Äè +Hþ¬¸ÂNq÷ÿ?–€e¾$çNh„¼m]d¹&Ï$V64ñ1{UæUe¢ÿó"Äå þ½¸xÄp‚ÿ†o@€†!¨Èñ ¹9”S*óÄG,V&F—Û.™G»¯Ã?áÿó Äè +XÖ¤0ÂDp6ÿApp> +àõÔA`Ôóßa· ÉKÁò„lÖUüËþø€gèÿó Äå Ö°HzJpÿÀ_ýEƒvbe†©Pt³µ/"ÖÆè¡ru¬X§²ŸŽœWÿó Äç Èþ¨zDsüú05A$!KvŽ¦KC ‚Þ œ7 +€†É¯¬ÌŽóþ?‘¨'ÿó"Äæ ÀÖ¬8zNpüI¿Ð]P X +|ré†ì4´&‚€r¤¦¿¸¨}ùçO¯úƒÿó Äç ¨Ö©`ÂÄpw¿É€€ €Î¦o´$¤y¦‹À}¤gq2^Á?$°9;bB—Åÿó Äç  þ¬ÐÂÊs¼«üç“!Á郎‹ÎÛ̇)Øœ}{M*Òq×Èv+œV‘T·ÏÄ9½£ÿó Äç +þ ÂÄqxŽÿ 󾂀ï›@ ¥o^Jµ=<"D!:Mq[eT¦§ºžuu/Fÿó"Äå Ö¤ ÃDpü˜fô€[×yìð„”áj.Ì.":Q•QEêüB·Eýðíÿó Äè + þ ÃÊsåÔ=`:¶Ø>&@$Ë I +vâñíeš}¡<ƒßêÞõ_ÿ•ÿó Äæ HÒ¤8zDpÿã_Ò 4õGè5ý„Z™¦úòC¾®m­þ™Õs¯Ô¿ÿó Äç +ª¥xà +LÄ?õP[•;¤TQMW²Õ5BtAC1.³å–SŸ-óø?øÿó"Äæ + Ò 0ÃÄpfÿªÿ`À `(¥°€Às\¦áZÂœ +¹/9ŒÊÑ +›þÿó Äå Ö¬°zDp¼§¨,2n”dú—1v¤žš¥›’áCabSêtLõµ_"ö2"|ÿó Äç ØÖ¨zÄp·ðß•õ€1쌭.DbxpÂÆDL7)»i·_•ü9šøÿðÿó Äæ y¤zÊpŸz€€ìL· +¾},+ñVçbu;jSÕþ\ 8®&-¥ºŽ|9ÿó Äç èÖœà +rè£STx;X +hÄñT³qx0€•ÙeùóÌ(ò¥¹Uºÿûÿó"Äæ +!* {DqΩÙÀ1üŠã°Ytš*Ð.uVP¦&ê*G%µ¹\í5žÌµ¬Ó +ÿó ÄåðÖ±¸yÄpþ^NX uõ(šPù‡ˆØ C±kMI¼å[æÔÛï™fõêÿó Äè +H®”ÃÖLÓˆÿ„ú€ OÀ°þ&°"®\ì‚ôp‰±•”ÕÁ!pmÔZŒ_–wÿó Äå Ö­˜y„pQß(|,’l»›¬öªŽe\5¹f¬zòÇH_¤ïäWðoøßüÿó"Äç ¸® ¸{ÎL]ÄuPzWðDìþGŒë0‰û"M££3°CP!}¸:uwþÿó Äè  ÒœzÄrþè€.€>#ín¼HA­k5‹…’ÅÃÛ Ú¹ÄF¯ò{‡3}ÿó Äè +(Ö¥˜{DpðJí@€¸R]ÛT éóQ¿Â\ÍK5@±:Ív÷“êÿó Äæ ÐÖœX{Äpò¿€‚~ïÇž´“oá„LZYñô€½šìu#`)¶ŸÑÚÒæÌ—Ý™˜ÞZÿó Äåð²¨8à +Lb‹¦¹0ÀNâs‘Ú¶³”ŽIc#OÑXgÖvÎì&L-q¿añÿó Äè +ÒœÂÄp¾Cßë¾àngq(.A%ÐYWWœû\ø"ÿ²²ß°ûü!ú”C'ÿó"Äæ +ÖœÃÄpê(?[þ}`ŒvÉ8'Òf€ÒÅŽÓ¯fÐ]ås½€QAF”7“Äÿó Äå Ò¤¸ÃDpczý€»òë.ÕG·ØèJ‰ãÒ.Ë]aI³Ú}qöèñ‰½ÿó Äè ȶ¥˜zJL8‡åÀ÷àuü¨q3d |2¦¢,I !äžc(QùIx?Éý°Kÿó Äç + ú¤Ø{pÔ}Šç´€l¸ùäd<bÑÖBÝ + ¬‚„Hçë(Ýÿó"Äå @¶©˜Ã +L(`‚Ÿ¤5x„!‚¸Ð ¡…‰Ãf©£†×mµÌâ…çP¬”dýÈ3ýÒÿó Äè +XÖœXÂDp®ÎÏXÀÀÛ`9²=A¦‡(83,>²1ˆ#(í&4HKsÑc¡'håÿó Äå ²œX{ÊL6|^ p/Pð´sœŽÕfJ1ëè¬$ÈüF"ìÚÙô3{ÿó Äç вœøÃÊLðïéè.€€ndè¨D´©g/±»³= O형Ö‚å÷8#ÿó"Äæ ÈÖ¤Xy„pªú·QÀó N<®(•ÁÁQ14¤‘)–öàР„dž''çýN ¶ÿó Äæ p²©˜bL¶~ ©¿Õˆ@Ë"±ä%]КÏ$Y«`uX.Þp0ÿQüîmQG4ÿó Äç ¨² (zVNúvé®ü +Ä +‚$§`8é‰LÜyÀ‰ÄQ•ƒzÔ€€¢ÿó Äç  ‚¹¸zPH•MþÀ»!Õ´DI¥fÓÐò32ˆ30ÃO¹ÐWŒ†;ÿó"Äç +`ê¬xzDp²F ŒV°9þè8tÙ2§Û ŠÖœ™aÓŒm +Ï=œ—•ÛÅ”yžÿó Äå êµy„qp}¯äˆ­õˆ‡®Óo Á´²•O¨> +)]tAOŒ@ÿó Äç `¶´PbNNå3Ô€åàe€÷$ÅI¬Æôèd + ¤­¯‰Ñ²‡7ã# íØÓñÿó Äè + Ê´xy„pWÎS÷T)GÎ¥ŠVgi$qC‰;FE´è¶e:žÒ2õÐæÿó"Äæ  š¹YŠLšDuÐïx)N43á[ðÆÅ.fŸ‰2ɪÿðÓß¾g?D,ÿó Äç àÚµ¸xÄp¬N°ïàm¨þøÐ#•‘ /¡-‘¨ý5³lj.ýw}_Ù‰Ò,ÿó Äæ Ðê´xJDp«ÖÏú€€”=Òb4Š@¹F»»>ílÏň`¦"BmÐ ÿó Äå ²¹zJLÔMY0pÄ>AØ⬣:òº–ŒÈÍ—âEë— þ‚º1z(ÿó"Äç +8–¬XzRL†é<í !9Ÿ€4¯žLŠV,Š…ivFµÌé}k΢lñ3Bê°Âÿó Äæ ¸Ê°xzÄp˜¢ªÀ?pW„ +&q°cdÁGÊ1Nj2Ø‚”æ¡G¿ S‚ ÿó Äæ `Ò¬XzDp%z:ß €ÛðiéeÛlñJç.6yîÝ‘pŠI ÊhCÿó Äç +ʨXzDpÉÉôOƒþP$íàuÉ$a´)i‚î‰w¦)º÷2ûb&.E/RS*ÿó"Äå š±¸{ +Lp]üˆöz¢¢œXWÇxø†·Œlú/·ì aÜÿV.œÕÿó Äè +@Ò¨xzpXl)È€ÏàxÇ°Ì#iåÖApLÊ£™‰ja|"H€@ëA>Uüÿó Äæ ‚¤({ØHý,·Wf°©¶átŠh‰Ó¡ºtK^¯¿DS¼¶CxyÙý¿Êÿó Äæ °ª°xy†L:­ôÅgQ¢‹2æ[ ª@ + ) Öƪ³, +å|,bY°kÿó"Äæ + ª¨ø{ÎMòl³¿$ fØ-®pá9m©’íž½œ[ɳ?ÿuÔ"u14ßÿó ÄåèÖµy„p é~·iOaê(.Îô¼±Ñä0ýRSEBß±dc- Uí&Ä?8ïÿó Äè +Ö¤Xy†pÕ¯£X¯x 0Š>\¶þÕ‚fLÙÛ6v£×DëÞuݨ#þÞÿó Äæ தXzNLZZL®Àxgh4»gaà¯L´µ +V&A`TÄ kÞAó ß}[ÿó Äå š¨x{LXL¢5?Hà Tô‰Ø±x+$BQRc‚aò`øê2N–8>ÚB'ÿó"Äç ø–œXÃLv®•u¡ÔnÀ eMÑM£q÷&yè‘©2£ŸÊ—‰ë<ÿó Äç +Ò©zDpœã} ÷àcK°ô’JCˆÊõ‰œéä0>”Msã$÷,½¾ø<¨oÍé¡ÿó Äæ hš¤X{L²¹}ŠéïväHÄÜE#;B+ /q­S +Ò¾÷~ÂÖÿó Äç °Ö¤XzDpk'Á7ôínžP¯fåveÁA9wötÉŽšEÜdgúO÷c{ÿó"Äç +(Ò XzÄp!óPfR€î}X“ož¿PˆíN~y30’àCÐÖ.f¶ÿêùP?ÿó Äæ È‚ 8zRHóŒÝ€*ø”M3³‘VxÀ´p\¸>Ú¸åšÑÅm5Ùùçµÿó Äå †­zPHËzºÏò ínì•Ü±M¨‰…'/ +˜vã=•j{§Ï5øÿó Äç +Ò¤XzNpܺM €¿ÀâÅ’™ˆ-fTɱ +d9¨½”SÛûؽÆô†ûÿó"Äæ È–¤X{LÁ ii0ü§8õ¤Õ+ƒ¼€Sv6!Úª°"cQïÊ]˜EÕ•Êÿó Äæ àÚ¨XÂJp?ÉÕ@€ûÀùlM¡SÑcP€’›–ÓÅlœadœ¾D}þžz—ï7ÿó Äå Ú¬XÂDpÚwwz€À"DÈaš5V0™^5éªÿó Äæ °²œÃÎLòÒ +€ +ÙQ6¡ÊaO0Ž+‘2€þ ˆ’ X YYFS£“úÿó Äæ ˜r¤Ø{HüFé +œ!‚* –cÔÃòU£å‚O¤{Õy ©giÓg‘ÿó Äæ ¸¶ XÃLõ׻ȣ} ¢V(=Ó3šQ]ØQOû:3!ÀšŒ[,È +ÿó"Äæ ಠXÃLÓœP-nµ"0Âeí™Ê +F(€*qR…U˜lÀÄ™•¯ÿó Äæ  ¶¤X{Lú‰ò îx&Àv31%„'ƒãTᦰ:‘›ÃÄQ [ÐsóŠÿó Äæ 8¶¤Xà +L’ð×Hä3ŒTJ™eÀ¡4Å\} ’MÐŽÕ;©ØŸQÙsæÿó Äè + Úœ8ÂÄp’’áõÓ± C Á‘¢Ð1ÐüÒ•(§1¥nàc,o£k +t½*ÝJÿó"Äæ ˆ¶œ8{LœÝ÷pôZöí˜0,m³“aúïð„"€û<­/œ… •ïÁ©<ÿó Äç 趔XÃÄLæd¨.ÖïO”Oè–†ÿ…;ü€@ê€>£_Æ‚­ Ãî£ÐŠîÿó Äæ ˜²œXÂDLP›úãï,¡¥"ñƒ¿×þ4€H ,¸ðÅ;}ÝÂÀ2™.‘ã”åÿó Äæ h²œX{L­·Œÿ©u>4L,ÿ_ùRÀ€°>Wš^¡}±È²9* dŠXÀ +ÿó"Äç €² 0zJNbm×Rn ÝüŸo’ÀÒ€= 9.âV((Yè±¥43uã©ÿó ÄépΘ0ÃØq‰à†ÿVÿQ€??‘-¬$\`(…½ÇxZžö°¶ê?õ‡¼ÈÿýGøÿó ÄÖ hÊÁÂÊpc;þ€€€@ Êñî×LŒ­Ìâ<átLc˜Íú’ÿA×Dð¡ÿó Ä× ɸyJqßëÿQÀ.¨ò›µ +º—eEK!éh”l× ‡¤²êIâ8!…9‚ïÿó"ÄÙ YÍØyÎq7úÿÐ`:èö½–lŽK•àá5èÌIº’Po&†™ÞAWn1œ’xPïÿó ÄÛÀʼðz„põô‡@ج›’Eb0îbñ¡Êa #+¡º¦Gã™NfÂÿó ÄßÑɸyÄq‡«ÿ à¨é‡JT-Í±è¯ 7vl³&ÀÕº6Íùèâþè)B'ÿó ÄâàÊ´(ÃÊpßëÿA€œXò™¢a>¢¯€ë`\Ï,}7LÚ³®½f”_QÎÁÿó"Äå YÆXyÊqD«`›Ûä¨â ¢Ê$v²rƒ¥0¡ÑM[²o¥¾íÕÇU~ ÿó Äç á¸x„q½>@€Å€>åØB©<°œ©Hùû;¬Öä7qmóù!ýD²jI”ÿó Äæ y¸x{Jq®Ø&ôù€2â€èéœðYd|M­žzÏ‹`šÏ:’U_åß ÜÞÿó Äç +!¸˜ŠŠqo¿¨øò¹!Q·Í’ÆS¦ý0½‰S¿Ðw÷öc)}[ÿó Äè +0ò¤x +qýô:èí*Á|Ì#5éa̪¨Ä,~Pòy4v@büÿó Äæ ØʤxÂp ¯$ ˜{•Èl ‘Â' +èØÄàÂ9àק2õ=íî3…_ÿó Äå ö±y„pÞGЛ Q®0$&CÎ(@Hžqd¸nõàG +-›ÿUüü}TøÖÿó"Äç ðΨxzpÿÿr@Ø¿døÅ؈T„t F°å„تý…¿(ë©Šª)ÿó Äç + ö¨xzÄpßàŸÐ/hh‡Â±iPîà XöP|‘Ä# +’ý Ò—MQÈ` + ÿó Äå òµ¸zpþ1ü? í®£ÝZ臾 vŒ7`’¦ò*vtõÞùéª0‘ ÿó Äç øò¤xzp°¶ÿþ€ºèk®†¯Á@–ýQÀ1è tÉ1H#±:2Áÿó Äæ xʤxyÄp·³Ð§}ù¹ÈËRÁ¬…ê]J<ÑT=sAž›ñ¤òi½×ò&ß ¯ÿó"Äç Ðî PzJr…Žÿ +ÿ àæzÃt`*¤M€±¨ @Ö.3A•PñòÿQþ»ÿó Äç ¸ò¤PzÄr|gÈ À +å^@£—)Ý ‘>‡O`*O@5OÍõ £uücÿãIÿó Äç ¨ò¨xbŠpþÊoã€À³€3X3Î7¨=V'ÍØ€Ø]ŒËoÛ˜þŽÅÑ–/Áÿó Äç + ò¨x{ +pÿÁ2:Ïy-Ÿ•ŽOA0;#A¥Bã©€Ž'ç“’®ïý¾õñÿó"ÄåøÊ°xaDp¿ð¦Fý@ýÆÔÂ'šÑ¥ FæõJÀ`‚À^:jräo´Pµ¯*ÿÿó Äé +¡¤Xà +qz80§YLXVx¿#£`5u)£Öq•!{–týWôPàÿó Äå ò¬Xz +p÷äÑ ̨Õ²úkëAx€ZÔ¬*äÉ0Ç!SnlA:gòL—Bÿó Äç +¤8ÂÊq»`þA<€<¨í»f÷¦!UÎDš7É’Ý™ï™,æ Þ;©ÿó"Äå Pòµ¸zp•°!ä<ðÕ²0öÜYBZÆëÁù À’Ð¥®³ÕNN> +9ÝJuÿó Äç +¤XzJqžäÈÜ I#‘hˆÈ'†lzs†3dÙ*Þz¿·üå­ÐBÿó Äå ƘÃq9nUËm#Â"¬4‰ó–™ž…à†5ÕucÒü ‰Î¬ãŸÿó Äç ðʤxÂÄpƒû'ðJ€ÀBÝ÷€1 +¯”Ñ]ðu'k::ë‚~Ê^3z +œŽ¹îCÿó"Äæ èʨxzDpÁ¿¡=€ï€7,w"pÓƒ#M, +€8"1ƒ*…~îÁ¿ÿó Äæ ʤxzDpý¿Ð`¸ÒW2b}ÎÊy7ÇÇbÃ@N“öUòÐfO?‘þWÁ¿úÿó Äæ ÈʨxzDp2éà†`/Òj¢x3ÕFX(Kdj4РžA<1ϲìÕ­_©›³ÿó Äå Ê¨Py„rØÏÁ¿ÑÈü ÀL¹M9IÄö¿4™%bÜó–Åãº7¥Q»Yÿó"Äé +ÉœxzDqa^Gú€ÿƒÝùa|V’ Þ£•-ÉØngw97…‡>ßûz¿ÖËÿó Äå ʹ¸a„p'’$šJË»cÎQ=O}ßòK]PÄ!/ÀùµjcHÔÛÃÂÿó Äç ¡©¸xÄqJ €Ã¦_ÂûEEÓú†ú?ùP„€A­Ðk¾Wwqr°ž-s!ÿó Äç Á¤xy„q®h_®‚{™0 u*‹™eQß÷ÿà¨îÇg©a}ŠSˆLÐ=œVcÿó"Äç +HʘxzDpÀUÐ6¼½òWPÏôð°p÷u%iÚmÎÞßhÑ\~+ÿó Äå Æ Py„pj.Tmÿ.nzùoõ%þ!€-ÀÃbpÅ=#NäÜ2êŽÀn¼a4ÿó Äça¤P{Öq~4ÍëÇßü-€Àê€;y¦›ÅO0ŽŠtjæ³mÕÝt_~¬ÿó ÄÔ !ÅzqÙÝÛý_üÀˆÑ|âlXi‰MNhGä*„éeê)~Õ+ÿó"ÄÖ YÖxxŠqv&Ïù €Æ€7?J¿&çjEÞ!ÓÒꤗ'Ò m¡|ú.ÿñ¹ßÆÿó ÄØ !ÀxÁÊqÿŸüÀŒ¨½= ó,5jdt‘ñQŽaG'bšÖ[Û£ PÌüÿó ÄÚ ÀxÁÎqþ?ühà2îG›xí¹e,:@iwb¨ØzºE¾ +¿¹ñŒ>‚#ÿó ÄÝ‘ÅyÊs Xg§ÉÀ9x-‡Ð#m¤€hmÈ¢—wp-­V†%·¼aÁ¨1Hÿó"Äá YÁ¸yÄqÔ ÿGÿQÀ €®‚ñ¨HZ$Bx㺸få\圂]¶½~žÿó ÄãàÊ´x{Jp7‘ò@8ÇHS Ô9`”¥|‹Ú‚®wVß™.þÈùwØöáßåÿó Äæ ™¹¸ÂÄq ÿ•>øé`&O~I„¬¨jÔ©È•`*¦#’^訕{º2aÿó Äæ ¡´xzŠqŸáOþ4ü 61Èw¥ë¥P{‹QÔ”°ec;>‘L|½ªcÿó"Äæ Èʸ +pÿ‡y@ÜÎ`Š£jYO*$} +炧ŒžD3—mA¯ªE*9ó³> ÿó Äæ Ù½ØaÊqþ1ÿ〄=T©ã5…óMtÑ‹5U#|ö\ÿó Äå°Î¬Pz +r«Ö¨ NgÜ(¥vÝ“¤ +lñ²,±¡ +"l~aƤ?¥¢ÿÿó Äé +`î¤xzJpå?å@>ÿÕ|K +&H9n#up*×"/’IuöRÑìtTwÿÿó"Äæ +Ê xzDpá_ðÊó€Ø|‹)XŠ—w-Vy…`C¬åL{,§l”8½û§ÿó Äå ò±¸y„pÿéÿÀ€ýÀ€†¤Ú3§‡²Š‘|M)£:úOxX¿øÿó Äç +¨xyJqÂ`.×̦p™ƒŽ+é9:qpË€†¬ynÍ?½XW^–Pcÿó ÄåøÆ­¸yÄpù%eÉ„ñð%ŒŠ"….Ë KNê› +:—šÍÿ_üÌòhÎÿó Äè ÑœPyŽs?òKêˆ\”!È„Œõ£±ÅÁûV‡A‹h9¯„kÜêç¶Oÿó"Äç + ¨xyÊpמ !è< B‚q1JhîMoÖÃÚ6XM=ÊÉ_­þê‘õ£Iýÿó Äæ Ù¥y„qª?ô<¨Ý$eƒº‡ó¸Tf–h¢Øþ½Ö~"×øܛރA=ÿó Äå !±yJqGÿA¼¾ß1TâX‘“™õWYˆÄ;Ö¥Ó¿«9ÆÆý#ɬ¾4Ïÿó Äç +Ê xy„pö1T»Ì€ ð<$™ Ÿ+_ÒCˆýº—@²‹Ä‹ºPzvÙÙ"¶ÿÿó"Äæ +Ê©¸y„p­Gôy €´¸võL˘­}ñ[IBì^9»îzÖç^ïê%ÿó Äæ ÀÊœxzDpþƒ¿Ôw`¸èéte‡{;•`n*«.‹â©×+3¾éU½^å¨þÿó Äæ ˆÊœ({Äp$JàxË°=ÐíeK¸® 4·ÅVŠt-ï3åÕþñµëŸVüÕÿó Äæ ¨ò¤x{ÄpÑèÉ€@Êèd¦HÑ©}~Ñ|8 ˜ªwwgÿûÕÛ²<â? Qÿó"Äæ +Τx{ÄpÿÕ¿Ô`€á¼ØÀ*A!gFfÑ;‚«JÁBj—p´7ù˜•ã˜ß‚¨ÿÿó Äå ʤð{pêÛýFò€㤋˜ˆ‡g=QœŠÎTgwPŒ]­¯èÒZèÿó Äç +¥zÊqô|ŒÈX=”"BW8,6Ìøu*¥Þpç+»ïü^o ÓQÿó Äå¸Ê¨xzÄpü— “HJÀ…ó >ϧ"édc¢±X24+©+ë³ýu/Î ¿ÿó"Äé +ÈʘX{ÄpëQÿêßñÀ—‚ôª6Büp=­©ÕN•{zzåŠ3²µô¨ÿó Äå !¨xbDqÿô05a»=eW¥œì¥E)¢¬,¦ð° á̽¨’j6uœÖÓbËÿó Äç +¡zÄpÿZäýnçæ±Êèh;SEs»‚µØUFr_ÿ–ëCÞÿ%ÿó ÄåˆÊ˜0zÄpEg-ô7Èë0¡åQ§t‘yîa- ³Ž ~;Ý0ôǾߟÿó"Äé +¨Ê”8{Äp’ôI ’J@’(bVú®dŠ2¿…­ð²÷1žf|ü¿©‘êÿó Äæ Ù¡zÊqß’£ú=B|ÂŽ"ÄCšµÌî¦å@ÐdFl[‚­+ú›ã“füûÿ ÿó ÄåÈÊœPzÄpïô ` ¯UdÉ~M )q‡Âbq"¡å¶­î¡C×øÏŸ£" fÿó Äè +XÊ”ÃÄpü›ÿ§ý‘à}Ë´C«Y´Îü±˜ÏW)h˜›’J¦Ï¯˜èÓÿó"Äå HʤøzDp>?þìЗà}Ü!Ò¿ôL&«HŸÈjè²ØØq¶oĤ|½¨ÿ™—ÿÿó Äç ˆÊ˜(ÃrDÿ(À  +\±A’ƒO/ +5å“"À$tólÿkþñëV£þ|ÿó Äç +Ê”8ËÄpüwøÀÀA{å +À%š20s¬-Ëî¶ñ¾}+#ÿAЮóÿó Äå ¨Xz +q‰ôyRàcÌ僔m¡j§JÖdò‚— ø8kKZ—Uh3 ÿó"Äè +”8ÃÄqÞƒí£ÈR^k[°B†)ÇR.Ñ;Tmn.”­V·|Pé®u/ö ÿOÿó Äæ hÎœXÂÄpÿ +Wàysâ e¡ÍeRÃÙQae4Néú5ÅŠ>­ûÐýÿó Äç Ù XÂq¿Â‡V 8ðð˃#Vš%—ÅÎp­AØ•4*[9º‹Wå½Už£¿ ÿó Äæ á˜8ÂÊq·¿Oð¡À +žiB4éá7"Ȫ˜¦ã%.û‡:~P¯VM÷ ¿ÿó"Äå z˜X{ÌHõü +@ýÅÇ +œPÊ{?+*µ0²˜Ç$Œð­±7MK|øºµLÝÿó Äè +8ʘXÂÄpèÔÖî œˆnÓ‚5 Fோ\6 +;hêjàï¾Úö¥~mÿÔoÿó Äæ yœX +q«Ág¸À—¥ºõEdrsáÐ:x˜‹›êÒ‘<ÞæªZ1ÿ£ÿÿó Äç ¹œXz +po¦ú@¹(XÖ°UT‚4¾+´‰>$Q¥Ãoë1NêÓ ÿó"Äç +YœxÃJq?úÿh' *Ðʱ^S©Àw2AH$š'¶QöÒ×¥ÿwéȺŽúÿó Äå ¤XŠÄqå‚×꺨âг…²Ù1œ‘²»á"FM[”Ζå³ðƒ–õ7ÐÐÿó Äç + Θ8ÃÄpOþþ À,èîU„’Ž)v/¼3ø +0ùÌ¡Ãt¶v¿nž÷­þ&ÿó ÄåɤPzs ü—‘¸ÿ7lVƒ…‡Ó‘²P2 Œ$„O´^æÒ«ÐÒ·ÔÔÿó"Äè +Q˜PÂÊrüÁèLð5|qš"$„‘½Î1:.aÑsî¶3¶‹M†ü,ÿÿó Äæ ÁœxÂqëÿà(èMJs¨ VŽJF&l³0:n}Æ4í™÷_¿æÖÛèh#ÿó Äæ ÀÎœxzDpƒ"¬ +Vˆ©¥²i©•;²(ºas¥£B‡ÇöêQ¢É·©{Q¿ÿó Äæ ÑœxzDq,¿o‘'\Œ7£¢N}²‰Å eøz ¸HÒ7òJÒ&Súÿó"Äå @Ê xÂpßÔk¬®Ÿl/gX[&K:Û‹Ý• êúoÃëÒ©ýÃ:\9“¨0ÿó Äè +A xzp¸#öù_8æÐ}£UFÇ=üd + êr [#Ý3¤¸ÿ h'òÿó Äæ Yœxz„q~D +hw%*€b0¸K7~!éa@šÍ‡8Ú·*/õê¾ûøPÀÕÿó Äç ¸ò˜xzÄpýzÓ à*è7\#”Q-Ž[”U½æQîÝÏ-ßïÍ+Þ¯¿4ÿó"Äç +ÊPÂÄpû|ˆÀŽ+¸Ç…3høO·¨# b¨°iD÷õdHžAàÿó Äç pf”xÃÊ(ÿ\ÿÈ€€þà#z¨Œ936³.ý(ò!µEõ÷ú½w‡ô²Cœÿó Äè +XʘxzFp“ò 4¬(U€„Žkª¤¯B;™Á¾ˆ.xÉM#R€Ój¹‰¶Ö³~zÿó Äå°Ê¤xyÄp?¯¿üp ¶òs Ô°*QçµpØ—€vv©,¹xÉïþ輚œîÿó Äé +™xÂÄqfÿÈ€ÖàxpŽ2bªú3ÕP‡L¥Ÿ§”¹Õþ¥ïµêj}ºÿó"Äå (ʘxzDpÿã½`@¿Åk&ÁGV‘ßK>ÉÄ4ÆPQ¹Aj&–_•x1¡?–Ÿÿó Äè +HÊ¡¸zDp~~õñý € +àfÔB›tã¶Íè¡4‰nO0ÁÅVå©è/÷‚ÿó ÄåØÊ­zÄp'_üp+—éÁâŒÔ¸¯L2C‘o‚ÕÍvñ&°Xv »þYÛÃüéÿó Äè +!”Ä„qߥ÷-@ɘ⣠&wRv™ãÎzä^ˆòé.¢÷6)yÿ\3ïuÿó"Äæ H‚˜8{ÖHø_<Íöú@Pèöòô4¢9Á¾°årH鮎qcÛ`myEfÿó Äè ™ XzÄpë|˜¼ È“”V¬ +òÊ"GäB<€š¨ítÇ+k~AÿÁÿ5×ÿó Äè +Yœx{Dp¯ýGu¼Ø¤ÿ"U`û«5 74ä€%ø¨¤ƒÙÂÞéŽtŽËÿó Äå !¥z„q|™É +àyWDœ>Õ+"Ùߘ²;ãv)Ÿù³Y1vѦÏ3u¾ÿó"Äç Ø‚”{ÒHMô¤È7øDÔ‘P-üht’ÅLëpšp)H&™1ðÁmŒöÛò¶oÿó Äç +¢0Æ L“W'[¤€f”àNšÍVе$wÈcõí¿ÆÆ‚½¸ÇöŒöÝÿó Äå袠x{ÄL+“®À|¶¥ÑÎAZW³é°ÐZõŸ‹­E‘OS©œ·ãdÿó Äè +I”8zÄp^X•ªäØ€ÁÿðòNq¢— %¹ùX>ÑÏ¡y䞈ï¬müêÑ€Pÿó"Äå @‚”8{ÊHÅZ»¾ÆpàiaÄ‚hÿwÿþœiöðßP 2[a)ƒè¯ˆll¤ÿó Äè ¨¢˜X{ÊL—… ø^¸È$¯RÝÿ.[þ[éˆF”ÆnéОâa*¶¢%Ÿÿó Äè +PÂÃÎL{`þÊïñ(ßãºÿáôêÄfÅ-CCÁ²àÇì8ÀPÿó Äå ¢˜X{ÊLÕ°ptÖo*nÊÿ‘/ÿ$€ÐHG †‡úBؽCp¿¦ç~‹ÿó"Äè + ÂœX{ +LeoÿWê#þ þ¢=@ aOÅÏ©Þr$Gºm$ üPõ߈ßà{ÿó Äå9.©{q>£òÿÅ +â銈3ŪÈÆš#…>Ão̘ƒþ!ÛÎ1ô/Ðgÿó ÄÓ °zÔpÓÂíÿ/êFf4¨óf¡ü¥(kÃJ†¢—E€Üâ›Ñú†ÿ€ÿó ÄÖ þ¼ÐbJpâÀå¢9o’Ü”ÃpSrÝëÆS T$דm_%"¤{Br„7‚-Óÿó"ÄÙ 8þ¸èbqx%íä}@ žâ©\ +бÚË:,ñƒ'Íáõh[¤^·doAÜ`Ÿü$ÿó ÄÜØþÁ˜JDp;þ.Ó~,…zÝ•<2lÁöòÎjZŽQY°©¾Ì@ñß•ç‚Oþÿó ÄßàÖ°¨zDpËx›Ô³hL  o¢`@ÿK6äŸ,´ +J[ +ŽæÅuåKVT$ÿÿó Äâ þ¬zNp„%ýü·¨ [±ÅÀ·éçiâ`ågoT{ßµ¿ŠT¬ŸÊŸÌ ÿÿó"Äå˜Ö¬zp P¿üÔEOd=ˆ;BzFÔåQ*FêÝ +Œ’h>KH’;Ô7dÿ@ÿó Äê +Øþ Ãp¿âÀø‘2ᶤ©gÛ"² +ù7M;§S+rºY7½~ŸVÔ{þÿó Äåøþ¨ zÊq–ÿR@01liE@,cV_¸xù‰iGÊɪEA+¹0nl¡/ÿó Äè +8Ö ÂNpÿP„¿ùƒ 7,ÔœXËGð¥ID¶¹<ÿî”߆ëÃóxÂh‡ÿ„ÿó"Äæ ðþ zÎpú@`Á*òn +RØ2n1²&`¥Ï<ó’Xõ+¥ÿ© íãÿá"ÿó Äæ ¸þ¤¨ÂNp¨q`gDŒì¬ó¨ÈÀµµ £ü/ü²û‰ë˜`Žw Žn¡›¨§úÿó Äæ þ¤zŠq„Çx‡Ö&*uvX—Mž±Àbb¢"Œ•4k¥c®Œ*tø~-Q£A}ÿó Äè +)˜Ãpáûü”P«_ 9®ŠŒ²¥ðËå‚Ôr ŽY"ÊŸÿó"Äæ +þœÃNqåü@ÿg’ 9¤—JÞÊž°‹ï ¤»<˜H?í +^÷æÆcCzÿÐÿó ÄåÖ¤ zJp$žX¦‹šXíôvÖ´Þâ‘”)NÉåhòàH^|Ôqz†õ'üÿó Äé + þ¤¸ÂÊqíïÐ_ÖdˆL0·ŸI%#aF´w¥~Yý3$Ÿ8;¢RnÆÑ]½ÿó Äç øÖœ{ +r¿á~¡7¬ñÄñÁ’±Xv¼®R- ÉÊŸ]*ñíh¹$Œºþÿó"Äæ èÒœÂÊrGþ¥ý`8*4Œ¤¨S;ŒFƒíQ’º¬>Þ"µ^çëžgç~¯‚'Šÿó Äæ Àª {ÎLÿ†úý`<*{Û™T©NÙtO‚ö}¾³+\”FáÂsY’^·ÁgùÏÿó Äæ hÖœÂÊpÃÞŸX$5‘û{ݪXl—®†øk“‘ÊYiœ£²+7þ ãÿó Äç øþœÂÊpÔ/ÿú@x4ÑãÚy˜ü¶¼ä04ÞØwîÔ‰žÄ~M÷ÅêÞ?ügÿó"Äæ ðÖœ{Êpÿ@¯é¡•È –ÄS4$ñvû’aÛSþâr»±Bm\ýLz“þ ÿÿó Äæ ˜þ ÂÄpÞ¸1iŒ +Ò@-Ü/©_–ßò´¡`ÎrT;ÓG>ËRåÿÿó Äæ ˜Ö˜{Äp¿á>° ­#LÊç&¬Î´‘æEdäùà²Þôš¡zJ +èÿÿó Äæ h®œ|–Lðôô€ZÉ›ñQqu™¿<Š¯¿óng>è-¹¿äÿó"Äç +”à +røíé@–Àxetz¡ #­E ¿ŽZ^ +—HGk˜ß@Ϙ¨ÿÃÿó Äæ AœÂDr}žDoÉ•ÕØ™M==S—kÈürx–T·Na4a FПøÿó Äè aœ0zDrÛèõÐVÀ|ËÜBÞűròˆ^”`o~eÔIÔþ?ØÑî¢ÝóÿÃÿó Äé +a”ÃÄpü¿BƒÀàvÂ'Už·´×¼‡P¯qx‹~Aù(‡MmЀÓþÿó Äæ ɘ8ÂDp9ü·©@ÜÀ"?#$Éâ +ç3f‚ð&þÒIIþ>Z\c]b#ÿó"Äå A¨øbDp¸¯ücú=@@*üûÛ×Ǩ¸hÄ 5Æàªÿ¸ª j+?UóÁ“³ÿó Äè °Ò­8zÄpËú€Ø›V®ÄpnՌķKA¯þ*çsü±ÄÛ’i¶«õz·ÿó Äè +8Ö¤xzÄpáÿçñ@@ +¿Ó,YsqL +\&"=Ú÷öPQú3(5§ýGö¯ðÿó Äæ ˜Ö¤XÃp¯÷x€@2n¨‘3sX +P3sS-ô° + +ßöœÂXø\b©E]¤jÿó"Äæ ÐÖ¤XzÊp +èZ×Ð#€@ à´ˆéJ +ÄëÑy_8ÿ™Ù–ÅEòBü£ùÿó Äæ ØÖ¤XŠÊpuË Ð +™Šª¡†¢ŒÃfš~±5ûŠÚ&¿*zÞ|$±¾OJ¿ÿó Äåж­zÄLàÝÒsЗÀa3~É2§+\}NvÄ°‘ºœr¢ùv³CB!çÐo-ÿó Äè +aœ8ÃÄp_ð +ïÀ` ßàKa–;ö%JLë> ¯ûMŸ|h¬¡ ê7½]~ÿó"Äå 0Ò¨øzÄp Øÿ@©ü)6m9»qŠ±áKL¸ýÄ +7æËA™ü·Ê–êe‹©½ÿó Äè +HÖÃÄq‚…Ÿ²Î€°_ü51ÆnA½lžnàe +Cû¸l8Ü\&qÚ”]ÍÒÿó Äå ª¤ø{ÎL§ˆ€0Ѷ€=‹¸r˜@j§Ù»"žÄ×Û8…®\#×>Zü í~ÿó Äç øÒ˜8{Äpæ€P´ôñ7Aî‹â`ù%$Ë*¡ÓzhâXPÕ +£«OÂ~ž–ÔJAÿó"Äæ +ÖœXÃDpÔuÖÆçµ·$üµ@sù1k +w $A˜±ôººç¯—Ê{å ÏwÅÿó ÄåèÒ¨XbÄp?ãž!ëw@ô3tK¾ƒ9`‰¥³‰Ô—pßÖ[@Àê9žcöÐÿó Äè +`Ú xzÎpOé÷t“• Z«VwÄ +ít”ßZSÓa5MÛðp>CLw¡ÖõŒºÿó Äå ÚÁ¸HÊqñ$Cîn+§àN’¬A=€ ‘W„HþÛÙù 1î§ÉËþýºÿó"Äè Ú½¸{Öpô’t€Oõc–y6úkröŸÀ'a@½õVì\8‡[~ŸÔ7ô?^ÿó Äß ¶°ËÚL£ûÓ’oün4/ßrG'~,è{R Œpž‰Žû4Ùð•Æ|oöÀ ÿó Äá趸ÃÎL¬œŸ¿ #÷µH§HȆ[‡çR9/‹†«–¿7>ß›õZ~ÿó Ää ¶°ËÎLþ7»×¨ƒúdzoÚ½yµIõ¿|ã{6M÷ésØú“x¾úÚð¿ÿó"Äæ + ²¬ËÔLÐ.#£ÝÒN¬Ø®óÕ)Å´Ÿ¾º%ó ËÈ'eVd÷Oðßÿó Äå þÀXkpãû7ÝÒGõ]ÿg1ŠÑàš¥Oõ‰@%÷/ÉsOÿ!öYÿó Äç Àú°ÂÄpOä€*ý[škí[7xà[4 ªµ°œîøxy4Ša73úŒÿó Äç ðÚ¬ËÄp¼ì„Mþ€ ø8ÙÊÞ1E¤Ñ_°±ˆ×TÞŸÌH]LçQÿó"Äæ °Ö¬ÃÄpï§rÝËõkú}{ÉØ +iõ‹pRZÊ'å:ÔA#†ü?ù¿¨,ÿó Äç øÚ¨ÃÄp•þ7úeX?Ï?]!ó«èGI³’åB{w$Œ~ +\½ÊÿËþ'ÿó Äæ ¸Ú¤ËDp¯Z¿& œ÷®½g?6FËQàO.PL%™Öl‚r¡xãÏh ü7ÿó Äæ P²¤ÃLøûdjwÐoþôT\x“Ê1È+qKlø‡~&(™Y?ÐîÕ7o|„¯ÿó"Äç + ² ÃÔLž“¦®­úhöšÝmô=ƒr˜£TÑ@ªq N\°r®*wzxÿó Äæ ȶ¤ËÔLûTáРӹž¢’‡ü3ic ‹|ìµÖ)ÒÊP2‰6óùÿó Äå Ú¨ÂÄpå] ?÷|&ÒKJAÈ~¿¢'€…#aö̼Ö{m?ÅÓÿó Äç øú ÃDpOA¶tl?°Œ iÚÑC9ÉrÜìIY]6 `a1£æNõšG„*æ‡e²Äè Jª¿ñ·ÿó Äæ ˜‚¤ÃÒH²š÷ôª®ï!<5LC¢Ú*+ìÁ|Ó*ž3pÊ2’¥=¸·ßÿó Äæ á + ÂDqÓ_é/ú¥L-¬µ“=È2òµ-V¶éÌ8EЙì+"(Âíüÿó Äåø¶¨8ÃÎLJóþ7útmºøAQ€rV¬ +¥äÝØké²®q\=Z=<Jÿ‚ÿó"Äè +  ÂÄpÿ·øíµù`ÔûUœRÃB¬‡åœ©8²|‡žö{åÃÊŸãÿÿó Äç ಜÃÎNðù7¬`¹ˆ¬"x±}ŸÜ'XÕä»y„„ ïºÇõ̳þýzÿó Äæ ˆ²œÃÎL ­ò È@qÏ)•«!2b¦çÌœ²€Ý¢}ekC;â¿ãÿˆÿó Äæ @²œÃL÷ÒõcðK¡#u›'‡z(wªñU9~™“(ø|B0 £sµÛ‹ÿó"Äè +`²”ÃÎL=}n‘í¨€Op?§ Yu+þ2›Œ¡ÔÏäGôc\Cæ©}¸¿ê+ÿó Äæ àþ˜ÃÊpúSûfÀ€@j8žÜ¥à´ÿV†õØ ùÍ%”t-£”=5¨§»ÿó Äåàê ÂDpˆ@€úœ›GàµÈ‰îÅpŠ +¸þNQ¢’ÿOÉïU¦þÿó Äè +Hú˜ÃÄpò* Ù"€ðêê%Â|Ír¢p *>Eb"˜þCß@¿ÿó"Äå¸Öœ¸zÄpþÃÿQY€2~–l9Æ`\„2Ó0ã~H>ù4À÷š8ãZ{/çÿó Äê +°¶ÃÎL¸š®°7Ümc¦pÍ -3Ý +¤1#\ÆÔNÂõˤw‹  ý?ü'ÿó Äæ ÐúœØÂÄpûS² €Å‘>9 ¸ +k–Ñ<Žî¬ße¬3èm¦ççúzÿó Äå²™X{ +L5H^’;æ<‰Ðb‘Cl$X´9L©ñ*w¨ÒµìªëoÈ:Ïvÿó Äé +xÚ˜øÃpVèeˆ°Ü¥Î“S‘iž. +±ý5’ôÕ®Üyë¯Ö¡üJÿó"Äæ + þ¥˜zÄpæƒþ‚} ,Àû˜¿-hiô{4Ší³&¦²H“ÀÒ5;§ùOÿó Äå z¥˜{ÌH3Öù p?æcÖzÔIÄ0ˆb[‰BˆQEQíäþ©¥8A–(º6”mNŸÿó Äç +ú˜ÃÄpçz_À ¸ásœY€}…rÓDZ¬x°–óK<¾òfÍä{?žWþÿó Äå¨~¦‹H ûú +¶€À"pÐ ’”ÁK4´H¥È#VMoçr•ºÞÿó"Äé +²˜¸{ÔLü +` +å `2åöt!-:e:0y¸C1;…õ–ŽU¦¤»»ü1ÿó Äæ ØÚ˜¸ÃÄp¿Íý~À/pnße½©<œµaà$_ öò˜¬2Šïçÿ üÿó Äå ¶œ8ÃÎL+?zÀp÷£ã +AsÌhLî aD†¢qV.ÂÒ„Rvwÿó Äç زŒÎL–ê;ÊoX'ùKîN1Õ +Pâ˜Öô2`6Ö¦Fgìg¸b8|Jüÿó"Äæ + þ”8{Äpïò2þê@À$/þcSlÙ¸n£Õ=ð*1…³Ð]áa‰=?~-íÿó Äå¨n¡˜3Ò(‘úÀÀ¯Àò¹JÝyùš«Râ´¢+6Qã–­<’¯ö$š›¥ÿó Äé + ÚŒ8ÃÄpËŸ1ü˜ÿ³?v©ÚTðZË3®’ï\âĨ1§’àÍ–óïx芢ÿó Äå Ò¡˜zÄpŸN Çÿ‘À)pðÝ´üñb;úVÆ ‰œç„}\Ö•{®£”¬ÿó"Äç +(zŒÃØH Áíò Àó€2Ô©Ú–|®]…Ç$Èð³zµõn ~gàÇÿÿó Äæ жŒ0ÃÔL_ø!À| ÷ϯŒŽí¹ XŒÚÀ¬âçÂKvV ßÛ¹êü,[ÿó Äåж¡˜{ +Lý[ü`ðèöâe =Ø®‡|Fi|{,M,’Âl×w^tÛ§«L4ÿó Äè +(¶©zLL7 û ð +€Ó‡Ôþ…àûÕµnß?aí³X§S7äËûøݼÿó"Äæ +ʨÃÄpÿÿè8Õ³.ø½Ð@"-½)•ƒ+´ö¦ýËÉýS ¯ñ¯ÿó Äæ ØʽØyÄp“ã_ý@ +O8ôîÉLª4$U-™ZvQå1Øêkh&|Á¾ÿó Äå ŸyÄq«ÿ àœPÜqA%elŠ×`Ú5<¹gZÅåË~›{šÏãK½KH'zÿó Äç Ṋq4oíô€Œ°òóQMeénuL!ã€AuhÖåÏÍ%]º? ¤ÿó"Äæ +!°xÃJqÿ¯ýGÜľÂZWÅXVtµˆmÂø±i‡åFö]Š÷£ø÷Àm!oÿó Äåé°8ÂÄqþ«þƒÀ/0,VôTä‹R—<½ Êè}¨[ÇÖ£ÏPîxYÿó Äè +Q¨XÂÊq¿ãü˜ ¸òÖ±· $Ed9°L©ˆ™&ß3å»:ÖéúÛT|ÿó Äå ÀxyÄq6X?úäÀ¨Ê S8Cnêž8 ú£B–¥ãSu&~7VåÈpÿó"Äç +Hʬx{Äpoþ£ù0Ìz +ïÁ9BkP.‘JD![#6jƒËÚ{4ÿåFDÏ—Û¾ÿó Äå ´xyÄqoÿÖ>¨ä½T™ÅRí„ Pã!¨çn~ògì:þ\Sñ›ÿó Äè +¨P{ +sÔù&NøäÅáOØTX:’‘†KÓÊ:‚Ttñ—H›VßX7ÿó Äæ hò°xyÊpÿ/ü€ +Hë­ùV};¤%<š„¦XYºÅÇ’O'®7ÿó"Äç +Pò¤x{ÄpGm›ƒ"äX# -‘~„ûm,(…z*?Òs¨‚Û]Ù îÙÿó Äå ò¬xz„pš¢¿Ðp/0‰\`d«šÙÜB’CË r•ô#eÇño@«ÿó Äç øöœX{ÄpÁ¿‘¨wUJ˜–Ì…ö$æÉ D7O¨3N2#Ñ·–Õ7S>ÿó Äæ ¸Ê¨xzÄpàßüúÀ ßèœÈ,ÄCš7ïVá5Z—‡%(Uu$tÛü¾ÿó"Äæ ɬxyÄq<¿gÒ/à|cXa‡•!cÑ’ƒ¨•–WP·u4–O@¢ÎŠ/;Îÿó Äæ ¸ÊœxÃDp46_Æ8=ñQ’ž•WIÊÔ%ãèVà!õ¿Á÷Ë"œûrÿó Äæ àò x{Dqµ(?‘+PôŸsã‘\o£ëNlÒM&„Wm¨¨2Èñò{—ÉZ7ÿó Äå ʤxz„pF¤â É^ðÊN9m×W¼ +·ü +Œ1‡Ð–˜Ü·CÉEByÙÿó"Äè +î˜xÃDpüùP ŽaYeŽ5‚JG¦ êÜæd…)Ò2Et,´Ž<ÿó ÄåøʤxzŠpp¿‘öz@¾ðäî°P,ÞÑdb‚Y!VŒU§w.Î:í]ÕÚªÿó Äè +(òœx{JqÁHc®¯Ôz`ÐÌl‡ÆFØ.„c¦°g&µþZe#Z¹ndéÿó Äæ €ÊœxÂÄpÿþ§¢‚ ]hBº¼Ú¹€eß';C*¤÷)Èz<]ðOÿó"Äç +`Ê”xÂÄpä} ç[f˜–òGœw}ÔƒéD j@‚ÐCT´Ÿÿ±%ª?åê ÿó Äå ò xyÄpý_&°ÖÀjC!ABî+‘Ä’B‰áôÕ‘fä-úÐy9ÿ–ÿó Äç +‚ŒPÃÚHþãy ì”åÕ¥¬Q¿s-¢tñ Ò(µ–I«îvŠ7oâœÓÿó Äå î¤xyÄp'Öé,ÿm±0Mµ¡“›ÈZxÜ!Y”Q©ÊèMQù¿ˆ‚ðÿó"Äç +XîœxzpLßZêˆ +WbT„,¹,—×X +ªm¡„ro ì×ßú«ý©ºÿÿó Äå˜Ê¨xyDpGÿô€¥R§ƒh†3ÃœOîм$”¶Z‘»9Þÿ¾#xïþÐÿó Äé +`ÆœxÂÄp£ŒoH¸ð¦éñµ"a€ƒ XÆÒ‰Xa&']DãwwÜ©*7ÿx/ÿó Äæ  î X{Dp¿î·õ€ +œ Y@ôk3™¯ƒeoC” h +òͤÊm~Tí~¿Ú þÿó Äæ €ò P{DrïEõ€ à}ÈnéÞx„rúrAó +®…¦›é|âW+ßÒJênßÞÿó"Äç +¤x{Dp Ôî³ràŒÀ|&6ABͼI4Œ„£t¹{Ÿ(ωqLÿKÙÇÛ§ñÿó Äç Èò”PÃÄr ¾CÛNÞkl@ +ç„ÇŒ7:ÎÃo/á’ÿ׳ŸËü\þÿó Äæ ¨ò˜X{Êp§ÖŽàj¼Zá"&¯º°¤eyèW©^ëúiÿE+¦gh‡Oûÿ ÿÿó Äæ Èî˜8{DpãJë6Z€?蕈 ¢:@Y\…tòXt 2àŸµ‹ŸÖ1ºÿù ¾ÿó"Äå Æœ8{DpUg2h…±€—z&äQ‘+´›Ñô”Ñ+‹—1²†oÿÍ9ÿÿh/¯ÿó Äè +ƘXÃÄpŒ‡u€(7VPiÆ +„"ê™ O +aeh÷u©6ô¦îOoÔU?äÿó Äæ àÊ”X{Äp—JÀ  ]: +I +b˜œ»±ÖØ'B ˬø×ÿ.ä¶Ð½Ûÿó ÄåøÆœXzÄpòÁwE|˜FRÒÎ/ TÑ”:PP£Ô!!qõcNÙ¼òÿåÃd-¸·ÿó"Äè +`ö”XÃpÕ¿4ßÖ +Vx» †°Ïå™Vˆ¢1hàj*K±a1™E>ù`ÿó Äæ ØÊ”zÄp›þ+É€àVG<™dØn- ܲÌAÝé=Yº cÄbMÙezÎÿó Äå öœXzDpuŽ¡jWùÈ4(å]š ErýTC\DTÊΰ~kæ'ÿÝöæÜnŸËÿó Äç ò˜x{Dpßñ>·ÅTV׸:hr•lÊSò]<¸2š'ïšû- +£þhÿó"Äç +(Ê8{Äp/·A©Áp[ó‹ã™ÒÒ\«óPálÃiŸ­q~ÿ– þÿó Äæ ¸ÆŒÃÄr´Ö= ,•YÜKîV*‚¨˜Kó]G0¤¢$×EëáýíÿZƒ>”Þÿÿó Äæ ˆò˜X{Dpš ÝOëk«–)J·mhT=ÕRÖ¥2VJî(còÓeSeßúÿó Äæ €†˜X{ÎHÃ5géöå€ú­JAŸ0„Ø|“Ê©Š ìѾ©™´#¼s—Ôÿó"Äç +8öÃÄp§S³¬Õà|6NAA× 8œ³VÁr` x­ú +Ñ(½ƒ‚oôíÿó Äæ  ò˜XÃDp?y ‘NÚ³Ò„¡’²Z*©%‘ +ëV1z÷Ð|‡ÿó Äé +PöŒ8ÂÄpµjeÞ®¿ôĬ,T‰U¤ºV/Gœæåÿr«ãƒÈýjš8“ÿó"Äæ +ˆXÄJL Þ¿SÖиÓåä±U¬€Ì`<Èp$³àqpÃEYþæ"w¾ÿó Äå î”XyÄpI<# ÀžÀcHe@A)J~-Pq— +BtéHjRFê'¡/çÿó Äé +îxÂÄp Þ¾Ÿ¬¨YÊsZ#GŽµªt¤øƱ\Q>tNãl÷¬Möÿó Äå ΔxÁÄp·ÂPoùà +P³- ˆÍÁ‚¼ì=ÕÀM³À7iY.m:8Šôù‰mÿó"Äè +€ÂŒxÄJLð_Öƒ… %˜*â,õ€àeóKg¶€ÌŒýEDˆ=E¾Kÿó Äæ ¸Î”xzÄp©NÿPÕ w;+ÉBæÃ!VDcX µdwÆþ¡¨Ûø¿ÂÐÿó Äæ ˜ÊŒPÂÄqoZÐV£ M gJŒ!@ðBÅrîqÙ¿e€ÎáÍ0ZtîN[°‡µÿó Äæ °Î˜X{DpŽØ ð£°ƪ 4¾± + +D\{ϬçcòÃ_[õ©Ý`ÿó"Äæ àÊŒxÄDpë@Ƚæ@ ~Û†$‹¡pÄI‘¯Öž2<«Â5Î[ñÿ쌧 vÿó Äæ ˆÊˆPÄ„q#ЈÛ€ +n‹›É®~h¨w´í—Ro…—³Ònz †­5;]ÿó Äæ h†„0ÆHÞî àWª¶ ëáªhƇˆ%€ùÚ‹*¿ #zÊ]îŽÿó Äç +ΈXÃDp&01Ò|7¦kpŒš¡+oˆ¾0]ì°91¨–^ņßâ^ècŸ!º.óÿó Äåà‚ŒX{ÎHÔ²‹Í€gàgI¼2ÃxÄG’W霙30çU²ùSâ²ÎÊ)ÔV(‰ÿó"Äè +P~Œ{ÒHp1¥·P÷[M²%»Ù +†æõøfukàÊJ˜óÿ±ÿ>X•ÿó Äæ à‚ˆXÆHC2¥PepÈ¿&gÓx3ÖOŒ*b¬€ôê)•?¡œ¢Sœ78ÿó Äåà†X{ÐH…]$½@üˆU>^`©EÞ^â.Þ]jš†çŠ»KÑäeh@gÿó Äè ø¦XzÊLÿw†?pmöSœ!–jiEã-°ƒ“À=@…m_YøoGcã\Áÿó"Äç È‚ˆÃÐJühÿG’ÀY{÷iµkûú@ë›*ç*àÆœì´Qcmè•l_ÿó Äç ¨~”X{Hþþ5P._æÜ:Δä~3hxDĶŠDRrÔ€oé»t +Y¿3|Fÿó Äç +‚ˆÃÐH?ú7úŒ€>øè^ ýýÂ=%̧!롪@j»ô'?·WQoÿó Äæ Т”x{ +Lôoñ¡€3À à‚ÑÖãe€V +(Š{ŠÖ@ ¶†sÉ—õvz£cÿó"Äå ¢ P{ÊLÿÑ¿Ô>à룕3Ó+“-˜¬‘í›ÁÒkjÀB¼ä×´±·Ï¬5£ÿó Äè +@Ê”(ÃÊpÔúã€@²`P™m‘”E5|jÎ^~ ÙR +¿áŸðs?Vÿó Äæ ¡µØÁÊq¨ÿúh[|qžCÍš5xA׆䱙Ef¨‚qØ÷Q÷©›¨§ûÿó Äæ Ù¤xÃDqÔú{.ƒ¼À 5‰„ç²áaJÊáLôÓ >Óü›ü·~£ÿó"Äå Y¬xŠqÿ«Æhr¢Ã,ù†@³ø7Ìs ¹$J$‹‘EÎyæµøQ-ÿó Äç ±©zŠqèõÉy ï2ˆócó£H¦ɬ‡`¦Ô¸õæÿkÿn´ãûÿó Äç + xÊÊq} ŽWt€fÇÒ]È“¶X( •c”$ `R2ÑsgÌýaúÿó Äå Ê¥zÊpš£úßîÐì´=ª¨ºÿ6y\d)%]ˆ¾lnjl}K±ÓU;’ïýÿó"Äç +I˜xÃDq¿¨þOÐ/·ž£“i‡0Î,nðSV?•v¢¾kÿÿó Äå ¥z„qêwH.ç}Ay[0Ÿ;/à„íísFã&rèòÄZŸ˜r/}Gõÿó Äè +`Ê”xÃDp¿ÝN°Ê†@îˆÄºÐCPJÜÀ¼!5z ˜3whîÿó ÄåÀÊ xzÄpíõÉý`* ÀÕ1° fÈ`‚„@¡ƒ,Ù… ¼ +ÜX>Vãÿó"Äé +¸ÎxÃDpGB¾þ·’XÃK—æAaP9Ž$¡2W67@ëF§Eæ½jGëíAÿó Äæ ¸ÊPÃDpý+<”‹uØEõ(Dxm¸Ö‰UÀjrDa!¨ü½ä±a'E««ÿó Äæ hö xyÊp ÿñàÀö%ÙÌðÖ¶„¥†ˆ5ÛM ¸öÿŸ½ßèÿñkÿó Äç  Î˜x„p~` +.övDòy;’bK à~IŸ=—Å +úŒºÊÌ›tÙ‰øÿó"Äç +ʘx{Dp'ÿAéë*葽öxJ’PÌñ¬^BE\g`Ÿ|4'Ô‚K´cŒÿó Äæ Àž˜x|JL;Sú¤Z¨Ádù˜¡·!(j¾Å‘Ú×Þ²úóXo¬ä+ŽÁÿó Äæ Êœx{Dp·W©ä@ WQV@é2”G(JCSCUVÚê¤À + +¿&Å/%ÿó Äé +úˆPÅqvyuÀ®Í¢YÅ “ÙÈM ¼ƒ VµÂ]L$j¤Eãõÿó"Äå°òœ0zÄr©ÝO!¤SÏÀõ)×ÊC;šÚÉð'0Ƽ{Ø”ªãHÿ©0Mÿó Äê +€öŒxÄÄpþƒ©Ë¶ rØ ÿˆÞ4›Û 1TÂþ“_³ßšƒt+ëûrÿó Äç ð–xÃÊLFåúÀÿ +b‰ÕAQ +]ù™„:ËlŒ<dz©"Á.è”}̯ztûÁÿó Äæ О”x~L +ú&nP9 + ÌÞ„N铸„†Sô'}4¥0ø[7ºÐ:Pÿó"Äå H‚xÃÎH©!«×à†0ë€>K”¥8‰3]ÍÆ͉Lg  +åñAÆph=(ËÈxÿó Äç °–ÃÊLt^˜(û#ч£…ƒ‰ ìw +”§p8ð§ÿ¹hx,§!ÇÅi_©ÿó Äç + ò¢Xz„pNê~>÷à_¦b‰ ॎ„9"Á\UÛ"Õ´ïºÑÞW]»\ÿó Äå š¡{ÊLˆ÷Š1aJèóA‘© +¡™C4 Ÿñ_ò«Ë Áƒä‘ý:Ðÿó"Äç èÎŒPÃDpoߨÌöµ´Þ¨‘RÍîB°ð®–õ&[ Qës$2ß½ì´Üÿó Äç +Ê|(ÌÄq³ä.Ö¯?óš6hë€lÜØ#Ük[åT~×û2^”Êÿó Äæ €‚¡¸{ÊHu&þ€Üph-)2TéÀà¡w'›°*ópÆæÇ«3w&z&Œg’ÿó Äç  †„ÈÆJãsþƒyÜ +d4g½º´$®HWqed£àƱˆî»Ê¨7Ê»ÿIŸÿó"Äç +`Êx|Dpjÿ{Po"0óð1S‚,%Z8~Ç„,)3éo5ôÖƒÏ÷ú­òÿó Äå°Ê˜xzpÏ!¤` +$bØæ @ˆèœ2*,¶ÈKÁè¥Ç6G:ÇèŸc&¿¿ÿó Äé +xΔx|DpéA¿@í9Ì‘ +äš‚ñTÂ^›À+dpZ£ÉÐib‰ë.$¶µÿó Äæ `ÎœxyÄp_ý'ke^-a$¸“­Á¡+œ6ÎÚ +ï<í2^G¯|÷ù;¯ÿó"Äç + Ê„PÄÄpÔjWþƒ +ÔèTû/µY¤Ê›på­$!&¤<ªo©Ð»½Y›ýÿó Äæ ¸ÊˆPÃÄpöz:­ÔTáF@rà‰»`¥½ÙDE¨{ºªõ«X‹’ÿó Äæ hΡ¸{Dpƒz©îÔ ¶µ Z NDØ›l4Drˆ ÆÀÒéA³j"ß²£[ÛÕÓÿó Äç ¨Î€(|ÄrÈÞú=ÃÀ`Mp3Cv{¤‘Îcœ„@&>‹(`¶±\næ ²7ÿó Äç €Ê|Ä„qFÿA ˆ +R +%CF$¤Ã¶\¨m[ß„? +e9Ckkßþç}?½¯sÿó"Äè +HÊx(ÆqÙÒÏüoú<ö·–åÀ§"PdCÅ.ò ˆ•Ïu“½—ŸÑÙ­ñ½MÑÿó Äæ PʈPÃDpr@=6Ôf;ƒäü%e‚Y DPz„ïÆ­ÏD—ãû3c.äœÿó Äç øÎŒx{Dp¹/!Øÿ‚šP jÁ¥5…3ân{’©.™“»IvŽïµ ÿó Äæ ØÊŒxz„pr’®ÏHüAÀ† ð/N“‘NV) z¡Mé0 w°ìÒw¹ßÛŸÿó"Äå ÊtÅq­qûÇL?¸àçgòµ‘SC $E µ€x®ÅTô’]áa"„/ÿó Äè +PÊxPÃÄpŠl +­»YI 3pã÷JIʀݰ8ómÀþ +Ú†‡žú7´—ÿó ÄåΔx{Dp½Ä2€<ð˜®Ø€ˆh_9¨]œOÖØ=¾ú“_~¤SUüf(M«ÿó Äé +`ÊxyÄpwSÒê ̧(­„r~ GÅÞW,zÔég{ [vï|¬~%£Tÿó"Äæ ¨Ê˜P{Drè’·u;¨Ï¿ôPvNœá +sÔ8—gQÎ…½Ýh'£.V’£Vÿó Äç È~P{ +K…á.EI­0î,vìXsL{øŽ%øn²‰‡¼Cãw“Qû (ÁÒÿó Äæ @z˜x{ÄH^EñÀ˜ ±HGÄÁ:I—ä!"¹l +c…ÓgéÐïØ~Aˆñÿó Äè ØzˆxËÊHûÚŠý^ »(/†JTàˆV'ð ÷ÀüTÂÔU'·:þšªOz*ÿó"Äç +¦xÃÄL7ÜQÍÔ +.ÄK”ÓŠ¼¸)@O°I±ê,Là~`–/3&øDþ®ÒÙ4ÿó Äç ðŽ€PÆLvù +@;(æKòÌÇ*“PÛ¨ñY°Ü3îÑŸ¨zýKËΙçXüÿó Äæ Àî˜xyÄpxbüT¿䯄©¤) „q&Ÿ@À‚ÚdüÛÝhïÕÒîX6ÿó Äæ ˜jxÃÎ(ÿM +Z€:¨î²GèaÄÂbËÿö؃c úïW_ßÆnÈõÿó"Äæ àŽ|PÆ +L%_–<¸´ÙÙR§ÜºkZ]r”D(ÓV4;ÿÜÿÎ5çÐïÿó Äæ ¸ÆŒx{Dpoðnê +bÆ ÁW&Lt`rJ¤œ‚G¤XØZÂIwþx³šLG-æÿó Äæ X’|(ËÎN†þ¿¸˜$O?öüÚ‰€ +úKôïÅ0]1É]%;ì¦ó°ƒõËÁ·ÿó Äç ðʈxÃFpú5Gɾ. @ ðÊ…CØŽ…墆1šhLzˆXþ7Ðf¬q Ýÿó"Äæ +î”x{DpîNP7ˆÄ.­r°O`©Eo;bI£ðOX{JC§[äOäÿó Äå ¦ŒxÃÄLy*9¼¸ÛÆÓDŒ¶µBÕ0ƒ;FG¥°÷~âMê×ñMêÿó Äè +Æ„PËÄps:Ô° +èöÖ"¨ècƒqO9¤÷~_à©Ëb¶Cróë"Þ—Áîwzÿó Äç 螈PÆLpnÏÜBQ@°ôÝà˜¿rJ£cÜL®‰®ý+þ êrøÑéÒÿó"Äæ + þ˜xÄDp·u8€8 òp Ñ›1Á¹!mZCÌd{Æ1Ì­ck¿@7¸w»zŠÿó Äå°~œx{ÊHi·ÈNe€„ ét¢è‡übýöŠˆŸµN{É_cŸöÿÿó Äé Àj”x–(ïq- öôçljFZYæ +4²çZPÉrDûO?›?dÛÁmѶîÿó Äé + ¶‘ÃÄL§¯eó 0 ×`?p$D¨6zÅåˆfÓw9IÖéžó_t~ì_ÿó"Äç +XÆŒxÄÄpÁ—] ÿ@ 7YSËG2Lpø$.c†eIÞ`!¢Òb´I£ýD÷¨°½êÉÿó Äåè–”xÃÊLoàØ +1Ž¥£:Kƒëb.澨šªUÒ)†¤'Q&Ù䃣ÿó Äè +P¢ˆxÆ +LþÐ@0 ðÇÔÅÑ €Çq7R2D +Yà2Kƒ]MË~¼â'k4ÿó Äå Æ•{Dp»—öú&º@<ü…àE‘bÑ‘ô`¬ly÷oGêú=ïÛës/ÿó"Äç +ÆxÄp0þl?î@²$vOç/}´M%8b.’KçúŒ¾šý7µ…j +©ül³ÿó Äæ ¨Ê™¸ÃDpüûõlÕ o¸÷<Ÿåä›—¦HôaÂhã7íMëè2:+¥gè˜6Kÿó Äæ 0Ê€(ÄÄsÓù`Íxà¸B˜å9ˤåÍÀ(«¥­›¹!œç émaXÏB:`ÿó Äè èÊx(ÅpÚ•U”€,ÿõ/£ «¬!7,«#¤³»JÎdøñ>Ô Åÿó"Äç +P¢}ÌNLjûvÓY0‡<àÜ]ýWêà0ö×[E‹éÊâ·ÿ-Ô—oƦ>ÿó Äå°Æ™|pI]Ào?öWÅÄ ¦œ¯ DZmLíhŸßl4u5¸î³ÿó Äé +˜öŒxÃDq/X>¿þº”ÏSjEÌe=˜uåžz)±=¥î¤WóIºº:×ÿó ÄåàÊ x{DpãI9pói??åRàB¸vÎJŠÊÁ=ˆ¯L¸Æ¼;ÐA`&ÿó"Äè +HÒ”x{DpÔt?¿ +¬ +íÊq¤°n+ñ¿@ñh¤ðñº¦Hú@º|vÁà§M.2ÿó Äæ à‚”xÃÊHÔôvRßå“#-ñ¹w"0‹ +ÔôNTëG­ŽÛñHÏet)ÿó Äå º™ÃÄLÚ½ŽÐ¤€Í°÷C8¶ißáæØ¥—\Sñ'ÎÎ<Ëè&×êä•ïƒÿó Äç h–˜x{Lcuò Ý RXLBÊ8ÖüÞ‰De{Zj¦ Åc‹ÀT,}äëýÿó"Äè +€ö”xÃDphb]«’ |ü mfVìï‰ÍôM‡¦d¤ÿ”nÑžP°î<"T›Wvÿó Äæ °z”x{ +HW3¼€þüøzT$îÓ'´+£ ê¾ + âÉûãÜe”ÄQõÿó Äæ xjˆx~ (wüI®üÓ4£4âÈ’yŸÑ®@,5SÊÔ©Rœ­qÿó Äç +Ê”x{DpHänDzʓ‚W,,ÂÈ2Â’jgdç9Vøý”ÉJ¯jÿó Äå Æ”xÃDpÖñ&¹K€»h;y!Þ€'âvvT/ùï[ó¼|ôQ +j{žÿó"Äç +@f„X~ (~°+·4]±Œ—²á"ÎRÛxкôuxAÆ‚é^” BúŠˆƒâÿó Äæ h~•{ÊHáâ|…Ií ~Ÿl—Êï`AË•¤ ÈFºçN)…±wW*Î÷“ȃÿó Äç +~‘ÂÄIâF¡g>°hÈÊ®xI×aªÅÌ i´Rß 4HR;È3Þx>yÿó Äå¨f€PÆ(ÈhDTÍÿá +”ØoJŠÊ!¶&ë³z³ú ÷Ö}§ãuŒŸ|áýÿó"Äé +È~|XËÒH¨(óúÿ–Fá Ø? Þ™6ä++EØàSñm"Ñ#1#­ÿó Äå`~Œx{ÊHÇôÞ€0¶ÿ)EE蜠ç;"Àüá?À+ONƒ¶<ÊÌ9‰¿Iÿó Äê +Àjˆx~ +(ÉÛüÏÔÀH[ €ž0·=æxöÍ\îaAyÔÃøD‘Uã¶5!úÿó Äæ à~€XÃÎHœ/Ê÷ïÃϬ°À´*³4©“ÎÝ…Ã +*ŸÎÙÓĶð~ÿó"Äå 0~„x~ +H,Ùy×òï.ïKÁá=ŒÀeH,JJt-]KÍÈAHÕ›k¸¾öÿó Äè +8~Œx{I¼·¦ú@øtÎr[«ÞíÆ­nS¨bŠe@B­ ìÒ þÂÿó Äæ `jˆP{Ä*HhŸÐÜaK`\ä ><äH•,bŒø +ÅC +<ËøÅí ÿó Äç + Š|(ÃÒMÏ…˜_êz€­0R†ÆfÄó¿t²°Z^TìaòõBß΂Kÿó"Äå +躮XÂLLÁ—'Ò¶sΈ“BìņRÃv‹ot,S®>wâ 2–•9ÿó Äáøb©¸Ã(Ôösš€ø-§`4Z•Ì–ÇÕ"v³ŠŽ+ÆŽ÷úŽùd«çÿó Ää š¤X{LÓ&ü‚–Ðtí¸%ì Pð}92xÜØö;šº+!vh[ø“_ùÿó Äæ ¸š¤xà +L¥ù¦àéà +°Z©„©™Å +÷mA`}¨ 'Wí+—l´Y ãQ¤nÿó"Äæ +z˜XÃÐHÊå[ +È€+@/  Öu2‘ s:•I4¹w‰üpšN]‹í¦¤ÿÿó Äåøz¤xÃH"‰ü¦|¾ +KYqàØsz¢O8RÎ ˜Ž:ZcE$UÏí—ÿó Äè +~ xÃÆHçÎÊý]@8À "˜|%ZAj0#”觭PŽÑ? ÖÎÿó Äæ 8¾¤x{ +LpÉÊ@ÀP{‡”°Y´X1¿BŸ]AýWF‡ZXá0’rJ´ÿó"Äè +€Ê”PÃÄpì£üž?ç8«±²!Ù2Ie¤‘,5@ׇg“Oˆ¡<±=ÐÓµÑ>Iÿó Äæ È’”PÃÔL J  ?¸ÅÃ("XÙ‡{D¬þ@I±QðuõËNª ,ï»ÿó Äå ² x{ÔMÅë*¶j\*H_·5…Cx(kæóÞ”pÃÑp‘ tº~å/çEíÿó Äç +š˜XÃÎLeÐ]e½#€t­Œ\ÍÎuºãdr4¼“ÃÚÔ)ë›7ó2«òÿó"Äå Pšœx{Lì7òÀU€‹7 dlkäHÅôEÛØ®—W5¸PÀ®Ž Çzþÿó Äç +²xËÔMb¿þŽ,*8R·@K¯ì.Âñ3z̸ÌúX•Ü8„dJKe³u'ñÿó Äæ p²œx{ÔLïý¨?´ê‹=ÀTÚ PJ.ZÓ©ã]‚Òc²Ë/¦¥þ;þÿó Äç xnœxÃØ(•) +G€`ð*¸KÊÜÿ, ²ѦtÅHzN#^Ð` 0Ècÿó"Äè +ÎXÂDpA§È,–Ä€=ÀÜ€„`ì¢yª0YË% /Iº“d-’ŒL#|;A(ÿó ÄåÀ²œxÃÔMͶÀoá²½sÂÍܱgˆÊÅ©‹W. +rè&qhìxÏAL¤@†ÿó Äé +p²ŒXÃÖMË7¯cô€öxd굃x¸>&Í,ã‚P2–²r‘r…Ðo¯ÿó Äæ @®œxÃÎL®èðØ¥tÆÔÝäΊ•Ò‰›#c„0ê)Û¦kyÀ‚¦õïöãÿó"Äè +@²˜xÃL<;ªªŸÐ  +Ç“ô †3/pŸŠ2äškj™À(bõ<ÐÐAÛÿéÊ7ÿó Äç +®ŒXËÊMMwòà7+XÖ]W½1V”:9k½¢ + +<#“ðþTc¼bºSÕÿó Ä刾 xzDM¿äþ‰@ǶÔlzs©u- 1|7jÀ4|Xœ´¿*©ÿó Äé +ˆ–˜XÃÊLÅî׳Ñ@@ +Ç—ØyL«%ÛIt;˜õ3¥ ‘tûš®*¤}Ëþmÿó"Äå ÂœXzDLñ°»Ê¨AÈP@8RK;ÿó Äê +¨–”XÃÚLO¤n–NMëõ\WUË8p\QF诎Õ~Å~5cD{ÿ‘ “_"Bÿó Äæ À’ˆP{ÔLôíQ¼ƒÀÜ È@GÄDùð‡e©ÂÍ,óyVbaxëù¿‹Â=ÿó"Äæ °–|ÓÚL¸—z= Ü bq‚»Brb,ͺ±:É¬Ë ˆ:3Vq'ç爓æÿó Äç +–ˆP{ÚL›Fâ^øT}˜d@÷^sìW£‘ý竺 žŠèÄ>¬=ÿó Äæ ࢥ¸{ +L¾žò`€ °7~.“TØB[ò"þÎÎQÓd$Î%Uþ»ÿíÃTo®˜ÿó Äå°¢±¸LL7{ô,.¯TAPJgÚ±šS}4ôúlØÊÅ[MÖ¼š9"uÿó"Äé +ØÊXÃÄp»¡íú>’(æ’òÕ[-L Š4µJ4¿)TÎ`¡Šäf¹þõÿó Äå z”P~^Hþ +€ì ‘õ°¼ëíÞnŽÐéùÑÒáÀµF$×…Ïÿ¶ hÿó Äç + ¢ŒPÆNL¬Þ +½ €°5„uDkêrG\PЫi!ñ²œ8ñ¿=;£Õú¬nÿó Äå  xNLêõ€ +>h€%Ôg1uþT,ù¯„Ðxh„—`5m@a4´±¿ýgj×ÿó"Äç °ÆœðÂÆr±5'ïî û´Cá'ÛVY0.`oãd‰DèX “"…;é¨Â]uÿó Äè ø^”x^(»¨÷=Ž|JŽ?“A +5Ò™Ãx¦°gÍWÿ£¿ÉmèšÁ»©ÿó Äç ÐÊ„(ËÄqÔ)n˜ÀÒ€5>"OºTÃTƒ êÎETðiàzìpG“ÛÞþE¶Ýÿó Äæ ØÊŒPÃÄpÈqmä==0j_8“€ˆŠÈ5x]Ÿ2Ê ë…¤¬æØìÙˆ}Ûÿó"ÄåÈÆœðÁÄráÞ€€Ž,Ä¡¯SÈHÊŒséèÁ…Ð#KGfän¢úwì‘}ÿó Äé + Æ|(ÃÄp’ÿÞ@0t¸#¾†uÔ£€H@¸u+&”JݧÿÿÉžý—ÿó Äå°~„ÆZHÁ·ú +Í€ÀÛ!+Êm¿@Ÿ¯ÈÄi„ ÑÙ Á¤ÒõþýJת´Ýÿó Äé +@Æ”xzÄp¡Käö¾;T›GQŽ¤d¤á 3ìòäMúŽ÷ø7«˜ÿó"Äç +XÊ™¸{p½ÈŠ% € °4¦ÀÆjD7PFÞÆ\%!>êM]Û«‘ +;a#œKÃÿó Äå Ê xbÄpW(ÀÓ;jqžø!äÆæJ=`’xn'¹.ŠkÕÕAŽO.RhÌÿó Äç ðÊ•¸zDp +ÝnD€€¸ŒÎ/›Ý qNÛì¡^·ññ˜m1œú‰]ÿó Äæ Èö˜xbDpO81uÍò@€¬  +Ã2bØÃp™@6.H1‚Rë…ºHG§á7=ÿó"Äå ʸzpOYâ~€½n•Xh¡â$†¬…³A‰á˹,!’Z‘……‹ù¶Ø™Úÿó Äè +ÆxzÄp…öؾ°€µà CÃö´7Qp”¢¬ s5 Í{¼uóÖ—œwøÕÿó Äæð²˜ðcÄND}cR6ÀÛ"@R¾“gíÆDg‹eÉa'éßIÿ_~/{·ÿó Äé +hÆ‘¸{Fp\J¹ € +ìHOƒˆ˜„DfŒ7@.XŸºÛòiÏkÏÿó"Äæ +Š…p~ +L +˜Q“’]`À¶€8+dRˆ—aŽÊäØ•¡A`IŒe¿ÖÓ¥@é™rÿó Äå Š‘cL·-5€À²€9Ñuí|HRéI²’xŸz[½âÁbÁÂ7*"ÿó Äç à–|ÆL»¬À›6è—x~}19¸,1 Ä8Ëá“ùþûÞ{ÿó Äæ àΕbFp«×ž¢˜‚° 3n†"Bš®VdÓl­F WO_½7ÑÇ#x…¨ÿó"Äå Ê™¸zDpø¥Òµ€€ +P_@cÃYâò +‡Ã·®B%aŠ—ÍåE¯ +Þ?p˜«·ÿó Äè +Xr–XKH›ôôÖ‚@å‹lõ]|Æ–¿WZ/qí².ÚÑóÄ7£Ô®ó§¢% –YµõØÖä Œ³ÖÿÉv½ýpÏø,ÿó"Äå X¾”0~ +LoôÔô€Eð5©¶-•¹ñ#AQ^3#Ë æ@Æœ˜{î‹ÿõ ÿó Äç ¸~˜8~ZHÛèô»¤ö™%ŠMºTNân­ÛíCάÎêfÈ?,§ÿó Äç ÈΘXÃDpQ»ßKê€Ðu"KöµèÚÁÒâÐeÊ­DÒ:««*çÿY—é»þÿó Äæ О”8~DLƒgä½ €ñÎ8<>XÎ9: %›Ñ&Yæ”p Fªÿê*“¿ƒþÿó"ÄåèÊ™XÃDp”=%útÀ€’€50û·ÔüÍ¢b('[ÏE˜8ûÿ>´—úlßÿó Äé +HöŒËÄrƒ Þ°´ÜzŽLGza’@níÅxÛÐH€Î¨XhÖ}éAgjÿó Äæ °Ê”ØÃDpSºßÖúÀ@àò S‹4ÔëÆ­µâ§ ñ‚Thã–¿Š4Ÿì¡ÿó Äæ À¦~LÆýq½`ð ãZØ_s€œqŠf’§ýƒOH@a˜aDÀ@ÿó"Äæ ØÊ™˜ÂÄp|†¦Ðuò¹°ç'(S€¥Iyç{eyÈb_u +ëÓÑÿyÿó Äæ ÈÊ™˜ÂÄpW™üœí4àŸ(cµ `§Ç%F&EÇhCÉàNÏÓùZ¦~ÿRmÿÿó Äå Ρ¸ÂDpzðNà[¥Fk#až&ˆâº²&Eðm5ÛOÏ:0|häÄà;ýßÆÿó Äç +~ˆ8~H­ßÙ‰Žæ@€¶€+R±?h!JB“h1 + ‚ø¦bkë$7§ê +ÿó"Äå XΔxÂÄpƒe7äºÐÚMJå²Ù$Tj»Fl×aÙ) ¬ç‰æŽuô锜Ëÿó Äç +ŠŒ~ L±^ý¥ào”Ì´¨3Ù—è™Î¶Ëï#ü˜ÿó Äç +†Œ0ÆH.vÍ@€À%;ˆ7hÅ.j`§qW­ÔgD(å¦þs¡;í¯:çÿó Äåð†˜XcHõû2”€Dè¦0ŽØ[e¤£)@…×#çäË•çøRêè +öÎÿó"Äè +a +¸zÄpØþ À øäåt¸: Ê5–I¬Ýü˜µIžQ•òº“*ùyj’ÿó Äæ ؾø{ÊL‡œ”9@äL°)YÉØ*Ãœä<''Èi¦…‘è»4ëƒ,;ÝôÊMÿó Äå †Œ0{ÖHÑV>tN€c0‘âÄ/Td>wPXö®¦<1´›ù Hšº7ÿó Äç ˜Ê”øzÄpL&=ÿàLú•Jg¥ÖÙ@bUGžR +°KÚ9[AN."=w€‚Þªÿó"Äç +HŠˆ¸{ÒLt„ç"€1À®Q°ÆB:eº/^uÛƒ~ñbý£Eçþß©ƒ–ÿó Äå Î˜xJÄpßÅ|Ð 1Ò\JV! ¤d’±Äô@X÷ +MŒÜfÀÔ1&±i¡™/âãÿó Äé +X†‘X{ÎH½üŸäÀ +ð0Úõ)òÈFB w¬ÎÜ”Úð€«5ÿ*x’WñÐ߬§ÿó Äæ ¸Šˆ0{ÌLœæbÀ€P7·}V†˜N0Áˆ¸JÕ¸=®«o£P +vРL×âÿó"Äæ ØzJqcüïý €,†ï.å¥[E¤Û8zV%¹  9+ô&w(ÿó Äæ x¦˜ÃÊLýgº€€£©×'òÐÐY#Uâòè¤Giz‚3==I—ÃáBÿÿó Äç èΙ˜ÃÊpÇy?ùpÀIÀ'*9%"'ÚÉBaë]½œ *¶¸XLÿó Äæ ¸¦Œ£ÔNéèÛ@€E)*Aí#Fø<Ît©ƒëm€‰zå ðVEKM:‚ Ëÿó"Äæ ¦™¸{ÎL|L yî€N¹êäpz’ €Ñ[TçgÙ–™#oœ9ò2üÿó Äç +¦‘¸{ÎLO¶µVÀ˜À€ñŽ,îØNç=EÀeò‘uEþ¨wþ©ýÿó Äå ¦šXzNL?±ÞÔÀ `*òÓk½0 ªî—æÐÿó Äç +ªšXzRL¹>'ò p0ÖtÓ¥R"ÌØجà^¹ƒWÿ.ÿó Äè +`òˆø{Dp¯Öï}Õ€€p6ùö/¥±t< Ù†ˆÎ‚MÚí§-%v>à˜õpçÿó ÄåPj¡¸+Ð(µ¿ý`€ ’ûíI~»ú°N0hИ? +‹¼?ÛÜ€a×°çÿ–6¿úÿó Äê +ئ¢X|Lðfô€€.Ð,Â?Sã ŒÄô³–js]‹U2(Öè±g¬kµ¿ÿó"Äå X¢°fNLÍhcµ€(ÆÔROfÌ‚>L QAR8ˆ©d•`5‘¬;Šµ” ©ÿó Äç  ¦Œ~NLŒQ¿Qý À0- +¾ÈäHµH™4Ä‚îr:ñê,vXáÜž‚ÿó Äç +¦ˆÆŽL\L€ ÁÊ\p € ïo r¤ùC˜Î%äœÚ®BÇKÄÿó Äå ¦ð~DLþqºÀÏð)”ýéÕË‘´%Hs)qÉAí¬‚ê›±nþŽƒ"”Ïÿó Äç +ʉPÓÄpQÿÁMÙúÀ€OLž àw¬”'I$‘å¦=œPÞkFû‚-ÿó"Äå H~ØfHR~ÍT€#  kðâ­ †Pyˆ‹¦(¨¬K&ù6uúz¸&O¨¿ÿó Äç +Ê€ÈÔDp!ªH€ZÏÀ–MÏ¥"$ay™¼²éHiC\Ï/ÝÈêq@¿ƒÿó Äå¸z‰P~Hü§1X€Ûp4ÙvfòVôƒ"#¬ Ä%¿»¦ñ"kGWÕÂÿó Äé +Pªˆø^JLŽfXδõ€×iä‘·#Š¼C¬ˆKNÂH» æù—)p›íOGÜJ^ÿó"Äæ +z„pPœ‚Œ¨\î'¥ï”ò€…ôW\rxãˆ@ý†Ï¹Uÿó Äå ªžX|„LêÚ½„Õw¯­‚C®ÿØ`›öþ0pÐ#а95j…@ÙQ2ÿó Äç pÊ{Dp“²цSœ£ü$9îV›¥ ÿÍÿã€( ân+ "4Bf–ÿó Äè +(òšXŠ„pde>é(lU¿Ê5öGÿÿÊÿø€°0´– \µ"ðºÁB%+Zÿó"Äæ +Æ™¸zpòæ¬ÌtS#¿ÁéÿÿÂø!À¨'”ŒžP’)B³Ü +ï“ûÃÿó Äå + ÞÃÒp便 + +s«Q¿ÿðÿÿ ð¨@#vÊŸüäꆛøªe™‰5ª +ÿÿó Ä× +iB¤cÊq@ÕN¿Šÿø£ÿô¤æ sô„„&ÂX)t=$ù´4>K¨jÿó ÄÔ >½¸AÊqøÕ®1ßÿ›ÿãÀ¬€'C¢ÌºÒf…èD )1“4Ôq?ðcžýÿó"ÄÖ YB©KNp÷¢?ÿ/ÿ¨àа…èÖF„¨{©À@ç¸cqÿI‚°b_üN©ûÿó ÄØ B©°cDqþ¯É€ÐŽ0ò©aæÌ«Éq’ç%—@ë¹¥“%Fò VÂÅ þÕÿó ÄÚ !BªPJŠq'ÿ¯ÿpC²àmi@Õ‡EðKÍžž¼¬Œ¯üÌÝ{пÿó ÄܹB®PbŠqþŸþ +À€4ÃJwn­ÖRg§8?2AÖT[šl›ãyMÿ*n¯ÿó"Äà QBªP2Šq÷ÿóÿü«€„9Õ™ø&À€À Ǻ’:¹¾qØŠ/)Ÿý‘¿´Òÿó Äâ B²XJ„q£ò@€4íysúY‚òýøAÅü’ZÊ—2caüU)¶O¼`gÓWËÿó ÄäÈ¢¡°KÎLÿæÿõ€J ›ÿØèp +@V•Ÿ”Aôì>ŽŠe»-üSý¨ÿó Äç +!B| +qÿþ¿ÿÈ à©ýÀ×Á5)!Ó–âÈ|ôÌ.ü•ue{.43ãô«þ‚ýÙÿó Äç + Bš0|qÈÐÖåÒùŠ°é BD0aH{¥üK~sƒ€¨1<oBj3Öyÿó Äå Ú˜ðKNp.ú€€ÀQ½Î6åU6pÍTVg°OrÝ“ÊHÑþ˜ï?øÿó Äç ùBÈ|Jqêý?ü)€ ‹xˆÃLø§h¨EM°ˆø˜íㆎøÖõ_øÿÓÿó"Äæ ±BcDqúÿø'€ µˆbö» +Ž +EsËi‘¹‰ðΟ‘ÎŽèN¦ +ýE.ÿó Äç +FºXJDq¤îSò  $§ì¦~qH˜(ôh;‰nM ªñ‰àÜÿ/õoÌÿó ÄåÈʶ8yDpßí þ€§£j;mI`„)BXqXïfÞEô{ÇÖíD|ëLC:`ÿó Äè +®˜°ÃÎL_õ%Êþ€àf­îÂÉœg3$P4’ƒ…Ö44clOõ`oüÿó"Äæ +BøzÊqoêü>Àà”XœçÃÐØó”^C#™ÑPk÷èÙ>ÈßQ¢?Ê8-?ÿó Äå B®8yDqÿÿý`ÀKÀÓèzËfÜrÇ ’:°Œùš9$¶ï(ÿ~¡/÷ÿó Äè +Ê•PÃJp}`ÀøžŸª©rq ¨XÑöZ@Äcü‰Fteæ +è üWÿó Äæ ‰F¢aDqÓÍâR  ^©±žçf +ÄÊ¡3Ê +V€²™Û©n¾½íèÀÄÿÿó"Äæ + ʈ{ÎpíùWü&€ðE®–~ÜÇ°é uˆj+ γv•ÌŽ5õ˜ü[õÿó ÄåøÊ™øyÄpßÏ}k€à>NrmB@ƒ- K]#Ê€sNŠOš¥òãàŽ Gðÿó Äè +‘XÂÊp·ý{É0À@!Ìæ­Ïerš¹AÙ嬗t¨z?ì²R³þðC¨ß¨ÿó ÄæØÖ™xz„p«þ¯É€Õ[bUHáver5t»…ÇöT­Ð [¶Éü5^ÿÐÿó"Äé +ÀΉXzÊpZ2ùÀÇ0ûÄ·.Ûr\À&!7b}½X¦F/Ǥ›²ìЧ“ê¬ÿó Äæ ¸Ê‘øÂÄpß ŸÿÐ@€)xÖ”[”Þäy¨2<ƒ$H© —6§LãÔAm¼#ÿó Äæ ÀΖ8{Dpäýž€€€ +~^IçÈÁ»&Zƒ9IK Å—@ã­Fúþ¬üoûÿó Äæ àÊØzÄpÿ§ý€t“S³–q±@í4 øÆul²S=~Õ?º×ýýY?ÿó"Äå HÊ•˜ÂÄp :u?«ÔÀ$Ú!¶:‡IÛnCdgW¿ oÊ!øÃS¿+'({ÿó Äç +Ê•{Äqç:Ÿ¹^ À@5ÚÃw¦¢®Å(.ÄFtNv]àwæ ÌþÞŒŸÐOÿó Äæ ¸Ê¥ÃÄpü‘À)bgV´æïƒlž§ˆÊ«ïôòYÀ½˜þD,Qá”Íù2<ÿó Äæ àÊ¥˜ÃDp¦²²>À)HXZémià +gPõ¼CçÖÍ—Š‹Vå²zHòÿó"Äå AB©˜›DqÕú@€Ã-ν±Ü"é-MÊÁ«Ý]y±àLW_«S ¼ÊàtÒžÿó Äè +8ΞÃÄp+äuÓäÀ€Ï€¬®Yû©°üWÏx˜ÐgÈŠËh6z5ÿê~ÿó Äæ à~˜~^HqOëÀ+Ú¯H$ÿ¨i,ÅýðÍçÃãºäÒqjÔo­½ÿ‚ÿó Äå Ê¡˜zÄpîGM>HÀ²P)"v”¼CÜ,€œ1´fšGD©â®§'­ÏëúUÿÿó Äè +`¢•˜~NL/Èë§É áÈJÆN¼Ÿ2Æ¥ò”ø»¨ÕQyS‘ ñÿó"Äå z˜{ÚH³WèÀ²`7²µ2$&¬ÕÛK´†þE½9ˆù—Çã«þ¿éÿó Äè +PzPÆ^Hû÷ÿA€ÀÎÙ±/@Ü° •æÍ#òE‚ß:jæóõuþþÿó Äå ΪXz„pŸ—¿×À  +G@¹™‹Ž…‚ž ¦…?ªSP6êæW%^±îÔÿó Äè +0ʘÃDp{«³êÀ.U€m‘½Õ|s`K…©’âbòƒïW»”¹nþ Šß‚?ÿó"Äæ +ʸ{Dpú~¿þƒ€€¹ÀðÓ—Íâ\7‡zÍŠ2%a 9dÍКÁŒ­úÿó Äå r¦xcÖHþŸ“ßüp€|ñ‹ü„$A϶„õ×Ý…1vaðþµ} À„ÿó Äè +B¸zÄqâ-ÿþ<\ð«#i +²ÂBÞ®¢§h^f뾧š÷~Ä0ç¤æÿó Äæ ÙB™˜ŠÄq§$xa3[º4|)žÿ®œóULŸ¡1‰dŠZuL²’Ýÿó"Äå @~¢XcÎH'œrª(}}ÿÿ ·ÿ”ÐG`:á«s¬¡‘¤àv0a6¨×Ùÿÿó Äè + BžXyÄq˜æŒÄ?þü$ô€€©§t©!púÆ'ÔWͪÒAȯóZtÿó Äæ áB¢XyÄq ÿê ÿ∤€—±%3B@£X+0752^ʈ-/©Ö +ÿðÿó Äå °r¨ÈK KÏÿŠ»À€€ÂVnš.Рޱ—XÛï¯LZt7uÿ—wçBÿó"Äå ¹¤È{ÎqFÿè7ý>€›EßК +Ö´ˆ¸É6)֎쳌$ßsuHÿÿó ÄÚÁ¬dŽqê +úÀp tÛätŠQŸ ‘æ™’N~ï©!5_Q{f¡P%ÿÿó ÄÞ 浸JÊpêþ~ÐE?à¢í‚†Ò>)f"(»&¥ÑB>Ÿ×Jé-ÿó Ä๭LDqòßýF”ä†D +ò#jmxoÙøÝ7)Nëú¶žž`Nýÿó"Ää A²XJŠp9oË€ÀÔBRl¦ \[“>‰)YHÑÔ¥©ЯIDzT +ÿêIÿó Äç + âªXKÎpÿñà€U£#»HŽÊÁRÿk WzZcÞOI6Í¿ÿ©Œ +ßþ=oÿó Äå âªXcJpþƒðˆ€À茼R% |H n ›ndƒ©èƒwA%w gÿóÿó Äç à桸KNpÿÄo(Ð +0®%0 +€N +Œlë™÷"íï[:.t7êoÿó"Äæ +â¸dZp¡ÿóÀ À>K†+l>¼l ²¹ XÍŽ›’¸Ö¥¿Åcÿ»XéPwýÿó Äæ ª¥¸3ÖLÿ[ùxÐƒÆ +ù‰¦|R}Çj•—K‡+fcì©N¾¨¬ŽÄ`?ÿó Äè ©”àLTsÿÌoÿ%Ô`,ŃK0è8ôa` Å¥ ršC¾nè¦Á©¿úÿó Äè ¡À{Ôs‘ÿù¶€ FÏ Àj8<¡€I”‘L㮑’cÉmÞ¯Ê,ïÿó"Äè øæšXKZpþ…ÿþ8Ò „ À²U ê! ñ,V»¸KQÈ¿¡—e(Tÿó Äè ¡•°LZqgáú@À0ŽY•ŽàU\§eøÇå0˜(óu= VÿÕÍøoÿ,ÿó Äè +1ŒðcÚqßœ•¤ 7«4Öá/Ìh-ú(NXPš3a ò¨¦Þ¡Ã¿üïέÿüÿó Äæ Á‘¨KTqßÿæz@ÀTšÈjüž`ÅŠ[•Ï ‹’â +•·ÇÂÆÝi­(Tÿó"Äæ ¡•¸aÚpíRŸÃ2 À„`;49³âµÄSŲ„‹)Isµ$6þ2ÝÿŠÿó Äç +˜KTpþº€Àp1¦“[×mJÄSysã¡Év=Qu$OÕZæA'ÿòÿó Äå ®šXJÎL–y€Ä`€`5C ÏlÐ!‘f˜$ºI&U—¬ñߢú„Ÿÿó Äç °æ•˜zpþ¥?‚’ÚÀ +ÌÍË*rEHM%gÐN–R§TÈYg®þ÷Õ?ÿó"Äç Ñ„ÊÚpÿwËÀp˜Jª–ˆð)¡:Í …äsÔŸd#…‚‘~§BÅ¿¿ÿó Äç +æŒXÂÎp÷N) ÀŽÙ¬-׫oB#C6²XMÈ3Qܳ6s<é©ú^Kºº{ÿó Äé +€ÀÄsò¼ˆ€Q< ®\œ¡ùž ‹„Ö,†¦üxZÓÞí¡n +¥ Ôôÿó Äè 讄XÆ +L~Y"§Ø°€à%ƒÙÿó"Äæ ª‘¸KÄL þZЀÐPbXnÛ@‚:!ÎvAA¼÷eÒÝÑÊ78¼ƒ¬Bm¨ÿó Äé +Ò¸{Dp˜ +%¯ý ¦Ïòvy®69†#žî?`SÃÏ}½SApöéÖú n÷#•ÿó Ä嘪xÆ +Lûáý”Å`ä}JÔ ¥ñ*>Ü’‰ÈH¢Fz–t©ò:HH:\ÂìÚÿó Äé +™…˜{Np¿äÜ|Ÿú€Cp¦Rø*Ûà5„ÉZuºúIS’u xbt¢=éÿó"Äå Ò‘¸{JpAº¥p:£©pÀÄ•+äaÑñeO»w´7LÚGéC¹¼ê% +–÷ÿó Äè +8ªt(ÆL(”Œ¼¸¥v”˜7JɘdC’  +6€Bº<6«Ó ÑÐhך¡b—ÿó Äæ ت„Ð~ +L¾}®¹@)x¤ ªI'hO€À„áúVVÇvÛ¥CÒµ~î" }‰ÿó Äå ˜ª”~ MjÈ9u€îTöG«ÃÔíô8Æ.а7OÊŠnõ2ßóÓ#ôCÿÿó"Äå Ю ÃÐL«H +è­êf}2…ÁªiŒÔ؉¦ƒB®Ò)zÌ)‹ ¥$TùêTS½ëÿó Äå Z´x{Ò$'%[Ê€•zûF¨ »9Yz&‘`+!7ÕÛh¥K: +Ç-ßÉÿó Äç 肤ÃÌJŸrSFõÉ©©#U¬%ƒ^ —Ú·†¾µ+h[cL¯ÐxÿO2‚ÿó Äæ નXÃLè[·Ò­j:–1qVflP°í,Œ 2ÇkúàÈ6”¾¿à¿$Ûv¶ÿó"Äå H²´xzDLp[jz€­|q~˶ÅË∡t) °ùÎó­Û¢òrÙFú×neÿó Äç +ê°XzDp0-µPíi$yÂ{ƒËÆ0¶fP1—Á<.vh•*Riÿó Äæ ˆ‚¬XÃHÄ“©éär&mºSÌP‚ +-!JÄZ‹ t+ jƒGZ½^Xÿó Äæ Ȫ¤Xà +LÖ5(¶ªíi£·Úd¿^àà†ÆL®C'­s¡vvBê(ÒîØ¢ÿó"Äå 8‚œÃØHRuRœBQhX/q’UŒæ]¶«'rÒ×a#ßsã¥ÅÃú…<êÿó Äè Ðê¬XÁ„p )5JKp ‘©¥tvX˜£ݨDî]@®û }dp£ú‡þÿó Äç øê¨XÂÄp¢Ý-ºª@0ãŒ× n8L +À›¤£Jö±0¿óål(zЮñ$ÿó Äæ À‚¬XzPHò•é ¯{ktÒ>̼ QE²#[,h¶&Õ…âP ºÑ"Î=ùhÿó"Äæ +²¤Xà +L—ë¡ê¡ÀÀd£9媔cÈ.N›ÞBÎR›ƒ»:8P½ãý[½ä:Dÿó Äå¸r¬XÂNHÛÕ u²¯j¸êK,á©>öD°ƒàÆZí×ÆGÕºqÿ¥l ÿó Äé +H‚ X{ÌHúŠ­ËÀ “õ>+aðSÒÔ¤ª.’[8ä¿£'´_Fþ±çÿó Äæ ÐÚ°xy„pa@ül°ð:ú”vY?œ§àk‹šíýæ„¥ße_.Àˆnƒsˆ:7ÿó"Äå 0¶°xÃÊLÞOÚÔ¶°¿tÁ‹þ­Ò9öƇUõ‡]X)ï?FûI·C‚ÇÄÿó Äè +`¶¤XËÎL±Pp1Vg/Æä°XÍo£ÕŸW]/€ê¤Á1êøiQÇ0íýöëoÿó Äåð¶¬8ÃÎLnv°8„žàiˆ'çaËSàõã¡yåQƒÓÏÔÚVæéü+ý$Û¥ÿó Äè +ú¨XÂpú·Ý~ö(¤Å©ÉkÁlt–oŠa­Hï®W~¥¶nÖþGùf ÿó"Äç +(²œ8ËLÝ~¾>õpLeü«cæ¦K&ì'¤½ªZíÁB¥B@y¿4%Îÿó Äæ ಘÃÔL:Ø +·¤ w©Br#RÂI¢±7kJ r¸õWÚ®¯¨€h¦NF˜¸êF2~C9¸?#ïÁå¥ÿó Äé +q +œËrˆ‹þ Ô€¼D]Ì(™8q Žª+BöVRRüãÁÑ»Éÿó"Äæ øú¤XzÄqüÔááûe~Äð3 +’o2M»‚áŠQñ—F˜dò(-bv­–Tÿó Äæ ˆú¨xzDpø`02Ïq-UX9 +#ä½°&üóDÙX9=´nqnGÇMô Çÿó Äæ °Â¤xÃL?Ðâíä  `ÙRe«Û L´̤_ß[iÕ”ãYê;V´è&®ÿó Äæ ~¤x{ HYÞÏ@€m"(&Õ"à„BOaòmaRrÙúyiZîñ¾jÿoÿó"Äæ +ö XzÄpèAZ\-@ 2¤ +Ú_|/‰ÐO;Çæ+AmôÔ¿Ùéûˆ’—¦¾Ê#þWÿó Äå¸ú¬PÄrÿA~€ +€mªDh¯Ýå‘D¾«BðŽ:Ø|ð7äã«Å‘iEa_«õA5ÿó Äé ø²¬0{ÄNýóÞ€,Ø…:îHÀ<¢õÄëÓWB¶×»j»÷ôOæÿó Äè +Q {poøÔVÀuؾŸâ\Š´8:ðEOs7eN®ˆ«4™÷~J]•¼;ÿó"Äå (ª¨X{ÊL |E@ †Q»6®JBʦ¶e"c« ÷¦xŽ´»/‘ùãÿó Äè +)¤XzJp W£¿ÐM vÑ©ß8áv-. +ÁËY±Wž‘º†øfô=jÞÿó Äæ I {sýGРuÀ©{V°¥œÄ†BxËI¢ƒ²DÇÇÒ2ǵ.føþÞÿó Äç + ÒœXÂÄp¿¡ý ¼ÅÑE"Ó."BsuBTÚ¼‰ß‡ÏXB)_©$£xÿó Äå þ zDpvÿQúä€àUtS¾‡K@¢LÀ­ƒQip+!có§’Wæ[Ûí5ÿó"Äç +) XzÄp¿‡¢Ú€–ÀIâ»ëÛ0y›*ºÛ(Ïñ¾'- +8ó\æô':Œçÿó Äæ ¸Òœ8ÂÄp˜íX +Ü +™éê¸xŠð€Ù„ŽøDÏÆO*‚9ž¿¥è݃sÿó Äæ ¹ XzDp‹õ¹À<Lu:v| Z7tÛ¦ëæà)×ba7îËŸÿó Äæ ™œX{DpþP@m´ âÉðž.Xž¸aÀõ,2 +ºÄ÷À÷ÌT„Qúfýÿó"Äæ Ñœ8‚DpVÔÉy¿úŽ/e`‘³à9À3¤ai—U|)öÊ–…o "&Öòÿó Äæ ÐÒ XzDpøÎúpÆÚÀ‡^× -/†dâ':×ôËUO5zE§è¹fF~± Í‘ÿó Äå认XkÎL¼Þ%¤d>Éüç¸Ôe[S¤Ì Øé–]”¢ê§ÍzÓ:W_·Qÿó Äè +Qœ8zDqM5÷TÝ yTÛâ¢+k R:€æaªÍ‰Ä«{ûÆë8ß­x7Pÿó"Äå°–¬({ Në¢Ó‡•€|§aƒÆ$x°/@ðî wëGw_ŽlÅEÓ:®¯?+ÿó Äê ™½bp³|UþH†`|'9˜ÞÒºs|EløáC~Ô&bGµ¿áG÷®ßû¿ÿó Äâ Ö͸IJp‚;« °ƒÿfð¿Âì¾°¡•!šaô¹þÝ%ÍÞÿƒR‰Ô?ó7ôõÿó ÄäðÒ´{ +r.ýõDù} "Óð<£•¢£\Emw+=¢FjA]6Ѻ§ýÿó"Äç øî´zÊr>ž•@|º²Lð¨C“ÅŽÇÞUn6l>"ȽáaF÷³¢z7Žÿó Äç ÐÒ¼XzDpÓ,ÝP5ø#@¬˜ó橈+e¬ìnñYjEc ‚åC=<íÐfÿó Äæ °’¸XzVLíÌfñy +ð•v›H.jˆ’ˆ…‘0¥ÚšO´è1ŸöÔJÿó Äæ €þ¸XzÄp˜ {e`;òtíp%t¤é¥:œ[S嘡{ð~z(g¿_¯ßÛÿó"Äç +Y*´8{pÎÝpØUðoh{/è†~ÌôÏ…lDÆ]`þuJd³[×íñwy:ÿó Äå±>ɸYDqÏS‡÷Ô +ÌS¥PóŽg¸‘A*B•­N.Op´‚ëu‹Fqæ'ßoœÌÿó Äé +hî¬XzÊpJæöT ~vi¸,äTÏ(ÔÓ/QÞƒò³þMWÿõ +ë•ß—ÿ”ùÿó Äæ á*½YÄpowò9 ´?7ôw‰hħâü$D{¹y?·ÃŠ‹k] ‚¦`7Ûþ<ÿó"Äå X–¹zÎLÕ£#¾°¯Àòdi0w‚ãèË ËIHüêêH²aBë£ùñÿuÿó Äç ©*°øzÊp;êÊiîÀ~ÏuÙˆý´ 6 +ˆG.˜ýõªÉ·¸_@B<ÈOçÿó Äç ø–¨{ÞLÔwöTv @߀~ѹŠÚ'¹¶[E¬icûæZD¼Ô=<Ô'Öøÿó Äæ x–¨8zÖL³ì“u ¥ ~¡­ÉÞÁâ»ß@±\”»^+“¼& +L§ny?ÿó"Äç +!*¨X{p•9Gmò€¾úˆçW½ŠJÛWqå ³¨^ Ɖƒé?ô?Aÿó Äæ  Ö¨{Îrš¬þv° ´Ò]tkÇpãX“@ôÇËçŸpúº,VF^VÙRX®ÿó Äæ €²ºXZÎLÛté"ø”ž¬6Þ)€|ˆ3¡Ì¾ ~Î]e‹ËñL„¯TÏËu:ÿó Äç + î°XzÄp—Šž“Êd@ vჵ£¯( Œà‚#JNûæ &DL _èðä¹ÿó"Äå X²´X{Lºôçj9ù§‚2ÉS”æÙ.¬rÒÍr—ê¿Kn±›‘¸õÜ°¿üÿó Äç Øê¬X +p¢ZÉAZ@¿û'kh³`ÁqJq³Ýi/¾^£`îÞØɸJÿÿñÿó Äæ àî¬ÁÄpÛ| ÞŽ…öÒÒ"ˆŒL9k‹a'M[œWæõÉd£³ +ÿÐqÿó Äå ’¬8zÚL\ÆOºTsåfvÃV9ò!ê"¿hWâüI´§³ô"bÚªŒ ÿüÿó"Äè +š©zÖL‚øŒ4Ãþûí¶Uäº9ÁÈiŠom~©dgBƒ/ž1üfÜ;$ÿó Äå –°xzÐLéÊ€¹è°íç:H PT>ZxîÜÍF—V‚…ôRÙ?V,òÿó Äè +Pšœ{ÞLm­Õ€¼q6¡\;2R +‡UCåÊú¸ˆg¿T\,ýßöÿó Äåèê°øzJpöÖ!UH¯`|7ú¥£µ’ÔXóŽKÁ6 üµ'%WgÔ¾‡ÿÿó"Äè +0ê¤{ +pËÐg ýz v $ßÄBQÚI£¤U9rºj<è]@óÓqò{%ÿó Äç + Ú¤xzJpq]þ°>ðÇ”œK¾uq‘ v°ôAÑ^.k¡Û]v~@n¢ßôûõÿó ÄåЖ¨zNLÍŒOñ€”6çr,<+€RP8h¤¾äa¼^TÈ0')$b[Qƒùoÿó Äè Èš¤˜zÎLNOw |7ÈßäÇ+â*'xv†CD¨‹—¯:ºõFi7¿~{ÅÖ)пÿó"Äç +)¤xbÊpñ¯×âíë¼?‰•äkH™§¤j ,–#Ö­”YËßrRÿàËýuôÿó Äæ Ðê¤XzÄp>Œ÷¤$5‡Û3ÝNCKè:;",¢„˧2÷ÆÕMÞZëQ=]|Éÿó Äç °®œX[ÎLjÞ´º€'b«âú ™Oa¾–D,HÁ&,VÙ¶‘7g ÔƒÀé +O"Ûé~ûðHZÜùP ÿó Äå ž¸{LýG~Èciuí¯ ˆh C‚ÿ(¨ØÝe…cÈShÏY•SÈÿó"Äç +ú”X|Jpý”šïÿÁì +˜òÄ~”‹ÊÅ6ÊF±Eò”mUY}X³Dÿó Äæ ˜Î”ðËDpËgÀl/ê¥7;r„×Ê"ôBʨ“ª¬~M”´Pè…ó(&®ßÿó Äæ ¸þœxÃDpú‡nËÊŸFÅ€á‰,x-ˆ6»¤<ûZà¹Fíá)9*€@<ÿó Äæ Øþ˜xÂÄp¡IßèBÀÌÿG±Çlù8eœPa:[:Ë*¯*^ªUÖowJ.ÿúÿó"Äå nŒ(Æ^(4Ÿ}@ÃÀah­4ôwâ1ó&XìÏ@š œ!ôhdy2óZ5Kªíÿó Äè +HúPËDq¿ÿ÷åÀ»(­Ý[±÷($Æì‚êôÊÖ7;ñþò“¦1yFÿó Äå nP~(›»æ€;×áh £¿v©kÜh‹2ž¸¦ÝïñeêP‡-÷5Š:#ÿó Äç +þœxÃDpöõ)`)m²‚ˆaÎj>d{ªžá«6ÿg\¢Ç˜‡diRÿó"Äæ +n”x~(¥lvƒ^Ý÷€ DµNX@?G„zˆ]Úï–Z.¡¶°"ŠrPëjÿó Äå þ x{Dp;v¥PëjMb€»Õ€gdíîMõ9¼=úL€<Yäõÿó Äç +úŒXÄÄpSÏed@0/_€&FVÜ£böO/›«T1º®PÃÁàØ…;þ|ÿó Äå †”xÃÌH„ÿ°2j«úü/:GøªEUToÖ®Ù³Œ‹U Ðû(L:ƹރÿó"Äç ˜n”xf (D=ÁÏ* ¨ ¸RЫ|B ÐW ¨#4xÌÈëìu¬‹zÁãáBÿó Äè +XjŒxÆ (íéœD˜³Óx\vЩì6‡RDÍb¾ +ôäª×º>€oûÊÿó Äå@J¡[Þ$ÿîžL#uèb¶ß©ˆœ2ÆtDµÎygÜoc£›·çMÕÓ¨7ÿó Äë –x~Lêñž·sæ@Tø2ì•¥¢&Ÿæ0«)s¥Ì®‚L‡j'üí©?Vÿó"Äå ú­¸b„qc7ú‹6Àb0v³5î[‹I°å¿Zv6¥ïŸ?–¸Öåý ÿó Äè ø®”(Æ +Nÿ°7Ò@ ™ú]S´ïÖ‚®r‹‡ åòÊÆO?5¯:&ð‚Ÿƒ~?Iÿó Äç AœP{Jr_S¿€ a2pAFVð@ß`y ƒ4TéTéÓÏu?9[¬Éú½ÿó Äé +qŒÄÄp?怔´¡2Gf½Ñ¢,)|)À½Ï n€ÈÎ e²m,2¸/üÿó"Äæ +ÒÃJpj7ø7úJ ÝÀUxñª[5°I“Ä4÷Änp}\ýÑïF^´?èX?øÿó Äå þ”X|„qS7Ö ÀqêiõÞO©tF·ˆšñT$²j3)k.¼òÝnÈw¿÷¯ÿó Äè ù”X{ +pü'Ÿ"Ò€ÛÀyÜ%n/A`.¤(¨5´ƒMG7S­´*ºgãûÿø6ÿó ÄÛࢤKÎLÿàÇ +8{.…kªæjvAnvòôԚƦQúâÖϾ™·ûÕÿó ÄÞ !BÂXz„q?üŸþ +À€8ŽÊᢡ6(\ŽHB _]ÌO=Ý‘knß +c¶ÿó"Äย ~LVÿçÿñ¬D0SÕà1"Qa!í£*Ú0¡к٠+ElãK­ŸSm +vÿ-ÿó ÄåТ¨`cÎL?þßþ5€Œ;šà°‘§*.ß"2È1Þµ$ÏåÐT™`Wf:Wå þÿÿó Äè +IF±¸JÊq§ò@‡—©á~2’‘Û]j1ˆ8<«y›µJM}Ÿ?¿ôúÿúùÿó Äå B±˜JÄqü"àÚàvåÙ&|€‰UIÿðuã‰JœÝN4(ðÓ²·×’ýÿó"Äè +QBœp{DqÿÇ¿ýC¼ñ ¿D‹AÞj?ÂPíªÉ ø{ªw™vÅ4ç¾³Lÿ^õÿó Äæ ¹B©ØKJqÿø¿×úÉ ãÌ  ìi'{È¡.Øë¾ßTcÓŽõþ¡¶ÿ“ÿó Äæ ÑB­¸cJqÿÐ`"½$X‚œl-ØW%YC¦°»?9º!¥f⩲ +νO+ÿó ÄåØ¢œ{ÎL¿îú À4ÖXØ“ª±þG¡lÁÄÖ›Â~K”ýi +åêên`úÿó"Äè +)F˜{Êq|¿íú€AMœµ)I"qkWr ÙT•68yÆ.2p¼ŸAÑ£¾1µÿó Äç +FœX{Nq~Ϩ ƒ}ø n„LÔÅRÒk¸<8ÝTä ú¿@%%Sõj¿ÿÿó Äæ ÐÚ˜P{Äpóÿú¦QHrÔ9~_XÂí,¨»`Øv’¸4]óÑ%‹k¦yâßnÅÿó ÄåáB­˜JÄq‰tÿþ&àxK±Ô攆Ou<öè( ðqyªÐV¿õDø&VþßÑÿó"Äè +8¢Œ`~L¿ÞßÇô¦ª….îq‰´n­¥[ˆûµ–樮:q†Œ»æþ¬öÿó Äç +žˆÆLåÿ¯ò` +. |.I›}$Åó£Â>õÊÈqn 9 +©éP÷wöóÿó Äåð¾ x{ +LŸX[ISvl­ÐÏ:N-Ò‹ +åŸä}y“wÏùFÞƒ«oû]ÿó Äè +B©b +q±lþâ —†U8 ž ªÚ(F·LX§¸Mà ŠŽ¯Ô||SÏÿó"Äç ࢌÃÖL£b:Îâ „ßð6Ü»c•`,‘ZÒ¡{êÉÔ/Ôtuh-\±ÿó Äç ñF XzÄq¤×Jv¸ÛtJÊœ¦‚BƒeV—S&›gýÄ-òŸR÷w"ÿó Äæ ØŠÃÒLöÛ&îé€Ý*«MÊR^l$Ø äb9JˆC2ÄÄÉúþ¥uÿó Äå¨~œX{ÆHZ· t€ü.Ó:bNvÛGûŠÔTÁO7ª•–5›æ{ˆàú¬%¶%Œ†Zÿó"Äé +Y”zDp¾·)ûÿ“ 6ÀVTˆ¤±bµ³*ƒŽ¢Ê4D¦£’࢞$±Žá3÷¢ÿó Äç +®{ +L¤UÔ´ Q +K÷$ÍCG ËæÅÝSH™ÚJìï5ë©b(cÿó Äå ¢œØy„L–Å|\ü(üÖŸBÙRafb5 £vš4H¡ +Qá¡ã>fS¾X‡Fÿó Äç + ¦ŒÃÎL›ï[þ€¨5:ñzzG.Jg*U§ä$ë×kÄ¡0ÅYóþ9œ¾ÿó"Äå Hª„ÂVL¿ä©mWÀa!ˆ¡E$íqé +’2Ë^‚@Ž¿Œ(ÌD]ÿó Äç +ªˆÃÖLžÿõ1¡nƒUn˜Ä×"M›ô3}ÝyT¥ "X ôŽŒЇÿó Äæ ˆ†˜Xy†H«üe•IÌ Ð¨ÏBnWжÇæœÿó"Äåøž”P~JLÒ»íX=6òŽ´É‹VcŠü–Š4Ç(ª³ +g1kN·ÃïVŽd«Áÿó Äé + Êœx{Dp¿õ]^\öfNL'܃VDµJµ'šLv™{ÞôzŒM¥ß'ÿó ÄåðÊ­¸ÁÄp®Ï@ϨºIÀð8ÒgÁ1Ö?©^<æ +Ùy|ÈᎩ&œÿó Äè +8ÊzŠpTŸÝ)ù ¿CÁ\ÆȪ ŽÊè嫇-gv1ìì œ 3:ÿÿó Äæ Ø~P~^H/nG“Sg"€ÿü +mé©+ÃÆARU‰Ä}©‚ˆà!§[FTà/ÿó"Äæ Àj{Ì(#£K¾-vYjPË“ÈÀ8D]–( !@rU•p⥓úöGêõÿó Äç hb™KÌ(Ì:W»"G-6í´!¦^'¦²´²AÏBnýÅ÷Ñ 01?ÏŽOÿó Äè +I +˜xzÄpo”U~€ uÀ•õ,Ó²,v>Œz-æ/3ß='„‹èýä ¥Qÿó Äå nˆP{Ì(F\¨Ôˆ©cá +T*:<à5†bȧ˨"¥0˜Pšn‚ÿó"Äç +8rx{ÆHÌ9ìO'èú9C³AŽúï5zµFa>;ÎÄ‹4ŠÝôŒaÕ_Ѐÿó Äæ `r™{HÀ£â€À³nÞª‘ðêt—Àû'«|øZme)±ko2·ÐHX¯/ÿó Äç øÊ”xyÄpÐ{+ú€TŠú ¨É– Œ@ì:•&ÂÓøÌ<_Ñ‚!GmÅÿó Äæ ࢌx{ÊL7‰½=NÔÀà; XÛ³èÍCƒAÃ`sW{_U„éø¬*w¡Gÿó"Äå (Š{ÆLöó]öz@7ᮯcÀ…ŠÀ{9DŽSµî¹Ú‰ß/ùGþ²Zÿó Äè +@z€PÃÌH1KÐ,À3n•³‘p# Q"Ò8!‘ÙIc¹¼áwø@Y¾0tÿó Äæ  Šˆ°ÃÒL²ÛÎé.à|/±&0}Å&¡@ˆìUep%DålÜQ_þ&~1ÿR¿ãÿó Äæ Š™˜{ÊL'qz(‰  ø¿tjB£C`¼3¯ +>›Ÿþ +»àÄõ?蚶ÿó"Äæ øªŒøÃÎLEõ€ð;Ü­‡ûE´5Üöݛ僢ïxA{cAÚýùÎ.ÿó Äæ ¦•¸zNLÒM?ôÀ#~Ô®FÛ}R§pÏJ4ðÌTF5ðkùýýFº·®‡ÿó Äæ xªŒ{ÎLU|€avu#òI.p¸™1€ÀÔ|œXÞ©Ž°KÞ€ï­ä1ÿó Äç +ª‘˜zÊLWžäjÀPoÀZntr¡ð/ÍQ‰2ðXVWÍšé<±¨#ßõÿó"Äæ + îXzÊp£r7n Qÿö§²G[_$‡¬1à”£›ÐÅo©ñ5kþ¢uZ«oÿó ÄåÈŽš8zDLò À6ð1¦cu—€•N9=…Üyî;ïÛÛãeg€øóåDûPgÿó Äè +@®‘¸{ÊLª»¼ÈQmÕ}npG†ÀÝ féÍž‰X +W5o°ä×ß°Õ< Ê?ÿó Äæ (Ê™˜x„pê#ÙÛõ€s쪑6,HdË(xæüe¼\ +£[@âØE®€„ÿó"Äè +@®xÃDL1ÝŒÀß’>ëbzV\½»£øþÌ:I†íÙ‰}€ۛК’ݱ%ˆjÿó Äç + ΖXbpßo'äÀ€0‡Œ¤T;¥ò;1§)§·z*Ð/þþ)°@oþ8ÿó Äå˜ÊœxyÄp?'å€(æò‚cXˤìõB¼JT¹R@‰ +²%솿üpÿó Äé +(¢•¸{ÌLb?Qýoþ€€ùxSÆ^Ì-QGà +”™ž2±K’>S©"ýªêßÿó"Äç +ÎŒxzÄp¨þOþ€(öþI’K¥í&A—§ÜaIBA‚º'¿(þÕ 1¨ÿó Äæ Àª‰ÃÄLþš“ú€ +€;C*F'ª’@¬…³2°iý/"qŒÈ%,¬|›Ô<Òùÿó Äæ Т„ÆJLl2Ó‹ŒU½¬iø¤n'ÉÙ +$åâ\­dáñÀÊ^±ÇJ²[þÿó Äå ªø~L"7F ÿÔÀR÷ð.Í]{*ò‘ãV!S¶º¦H=N(÷ã¾_шÿó"Äç +`ÎxÊÄpÕ¨?Û¯ô€€Ç"’îÒ/£€«>ö½¨ž¸)ù>n\·Ãç¦ßÿó Äå Êž8„p à¹,†‰ƒ¶7½òuJ@˜LÅúw·jä­g@tg3& …òÕ K´ÿó Äç ÐÊxËDpçyƒìˆ€Ð +v;RËŸô<)„Š¾[©y¼™Ó.ÿF +«ï•LéÅÿó Äæ ÀʈðËDqÙTˆª°Uc«‚’´±'˜8°ÎTg%)»@ôò2qÍ|¿Ç§Ñÿó"Äæ ø΄XËDp¨?ÞȨ:°YÊ#2Mn,MpDM×sÅɳ{¢Å¾ Âì#¿«‚?jÿó Äæ Èʸ +p{èPëÄ’mÚŠL]–1*\ ü£ìÒ*,{Ë9Ò×ý!õPµÿó Äå˜Ê‘ÂÄqÔ½04~¢ËÙÆÊ-ÃUV7ˆ7šØ,Ѓdÿ¿¿ô‡LÉãÿó Äé +¢xÖšLì¹ €®€.™ °ººM$›‚5Ã2ǶëÁšt‰Ó-ªrÿó Äå袌PÆLà»Ä^Ê@ qnŒ–?$vÒK¡2"L/Q›Óˆ‰SuËbb˜ÿó"Äè +(ÎŒxÂÄpçÈ'ˆÀì¿p¼[vÇàæLÕ„}ïK0£ªw0:ô~#È$‚ä|ÿó Äç ¨¦xÃÄLŽ=«ô€€›p3rª³ç¨ ·BÓZ ì}žmn:ñ÷Ñ3çWüÿó Äç 8~€ Æ^JZ¸ÊéK(êÊ[˪E–$¢Éë¤äœÕÄ`ÂÓê+óa¸}`ÿó Äé +Ê”xzÆpís…‚?êÀ×€1f¥L—”e¡€ˆ?A@ÏÖUÁî0j¨×=kZÿó"Äç +Pj‘¸f()ýNà Mvèruóˆ¹OéZAcÀ"¢‹âŒóIѾSµXŽìH#ÿó Äå ŠˆPÃÊL¾7!îÀ ³`/G5T5k)ì ŽMqgú®§'yYûùw"5šŸÿó Äç ÈŠ˜xcÆLÔí€C7ô„íL)ˆB¥äHÞÑ®dËŒÍY¦а›µ;ÿó Äæ ÀÆ™¸zp¨Ã&&á >S@–-Ö4ÄRئÀ¨%i˜»7¡ÚY-få9ÙËÿó"Äæ +ÊŒxÂÆp~»%ÈX€õÀ H¸Oøêdø<…1÷~®&p®Á ®k(WýD‹&ÿó Äæ X†™¸zÊHžE +¬P (g•t/QÆ ($aÙ0ì +éW’'ch¥ù ˜/¨ßÿó Äç +Æx„p7òÖÊ ”O[‘A +*äýÁUyͨòŒá]Û%vI©ÂØòžÿó Äæ `~™¸zÒH]4ý~€ +–éSÃãú¡ƒâƒ ƒ¸I2˜s/xtÐZS–iÿó"Äç + fŒxKÒ(mò·õT®ª4šé³0¾„"̆aöÏ‚–‘á~øõ剰YMîÿó Äæ ¨Š|(ÃÒLëuG¨€°%V7ˆš-ÒxÃ}æýüRs0b÷*sïx¬!ßðTeÿó Äæ pª•{ÄL–‡|W½@«Ø +Þl¯3Œ³…ÙÅ,º B©Èù喇;(Æ©¿ë:ÿó Äç ȪxPÃÔL†—’è€1ºÉã8ûªg +i5BŸ‹‹W‚:ìñüà@Áj0·ÿó"Äæ àŠ|PÆLê;¯¨€3ð7Ø•žSÓ$ùcTd"<À¡Äy2 ƒ7|FÂ.Ö{ÿó Äæ ˆŠ|PËÎL¡Ëµnê€Ë‘&O”©œ¦(˜PëFÆÂ!? +S´©×^Ó„lÿrömÿó Äæ €fŒxKÞ(ŽK£­€Ð<Œj¬@i`"ž«u0švô‰¤EGŽ¤¿ÆŠœ±ÿó Äç +Š€ð~LOål¿¥`l +ˆñD8X#BPÇ ðØKe¨…±8˜õvuQþ[}ÿó"Äå @Š|ÓÒLFë9Øu € °)’A.1°çtJŸ x˜ÒVò(Õ·QÆ8ígzÿó Äè °ªx¨Î +LqWnUËWðÞ7â\Ã%_0LÇ6i=?ŽýGõ‰¤%ÿó Äè +@Ž•¸ÃLôЀð JÞª– +è©‘/ß ´ÄKYÇÏÿ$±/ßoâ=aÿó Äæ ˜Š|°ÓÒL¤<*‹Ö•€€j€%™…bYÜW!b +I9ýP¥¼Oø…Fù¤Û˜zÿó"Äæ ØŠ¸{ÊLnßX, +¸À ã„ZšÙ 縂4ÊØ,-j³ÃspŽWè*Bÿó Äæ Ø®€PƒÄLèígºéÀ_€'KËígEKSË‚ýá4á~¶M|ûèÚ™ðc3qÿó Äå fŒðKÒ*ôÅ€€šOÀ•ò7 ¹¤‡™’¢ç9Pðc‘¸ +®¡çŽ†¤Èq?ÿó Äé ¸ÊxyÊp¤ÂÖôÇ6€ +€2ý éôYoXâÄ’W¹¶l} žhâ>!¾xÿó"Äé +ÈθzÄp3‡8ÀmPX`£\+|‹àN‡¶Qij3 ÖŠѪŽž÷!·Í ÿó Äå讑¸zNLFý{} +¨þ‚î¾ó?Z¥L™Å8Ìn‰1‹¢±©óKýX…ýÿó Äè +@¦|PÃÎLöùÀË7ÙT_y¾ŠÒ$²fË„ƒ•”€nóG?ìú +ÿó Äæ Ι¸bÄpþ­ôlp€¯`7„®š¬®M$V‚¯o V«‰å rGßCtoŒßÿó"Äè + Š’XzÊLÄÿ¯døô€ *d¶r0qöˆKÁ\&µ˜ Æ¥ÈæÇ›î[ä=ÿó Äåð¢ˆð{ÄLô€C»±'&=­»ÄÀµö&d\U? ø£ëë_Ë>WðTÔÿó Äè +XÊ•˜{JpG£z‰€¼?(<àj×ݱ%âM[gäÐ*˜»˜ï<š¦¿ÒÏøtÿó Äå Ê”xËDpÔOõÓè9¿îÍÓMnësƒ/´2ž€¥$:?Ðßô +3þ£¼1ÿó"Äç ᕸ„qeKm²Á ÀÏ`'V躲$j…„Ô¨¨,o_}ãË‹÷Føèýnÿó Äç + ‘¸Ê„púc~°1 ƒlÌ¢VÜ’ ¹8%mÒC„u∕€ª<²z^tÛ3Öyÿó ÄåÈzŽXfHúÎõ€ µø aòëŽìN¿mG/oÞZSª4wÏVúÐý~³ÿó Äè +Ê€0ÓÄr±îuÁó䀀°!2"Î(3ÅLà³ÚŠ ÍÔçe±B©Ñ´7ÿó"Äæ +Ê€ÃÄpÇÜì +´ïZc#x©8̪ƒš™} ][RVÖë«œÿøGžFÿó Äæ  Î”xŠp€ßù%€[@Ÿ*uf2»‹Ôæf`YæD…E.S¦OË¿ýŠäø7ÿó Äæ `¦•¸~Lë+mr¨ƒÏ*½Zºà +•PæTeºL, +ôR~Uù9\¿ÝnÎØ63Îÿó Äç ˆ†€ÆZH·ÊÐ ÿ lÊØ3ÉM‰ +pµ¬¥>¦ +Ÿ—Þ…6)SXŠEó ÿó"Äç +P~Ž8~Hq#ÒI¸ñ¹ûÑE¦È‹hÐ*Dâ̲ŠÈç-3Ñœ^$9ÆP×,sÿó Äå袸~ +Lþí=ŽCtÐäÝcg¯Î»îýˆ?_b7NéËcÁ^\“PµP +wÿó Äè +HztPÆ^HêLÆãý§Ê–‘ •îg–÷|¹B* t”秣„¡¹ ‡'ÎBÄíþŒÿó Äå€ÆŒxÂÄp%þ‰Ô ›<¸‰™n’êr—sP#2/‡ôû¯ÿ‰7ÿQÿó Äê +8ʈxÂÄpÞ’† ÔôÊýçšV£u Ç•ïøwíÿÿŠÿýKx‚ÿó"ÄèùB„PÆ0qbR5sqç•ñˆF©y–·‰±mŠÿÿø‰ÿñ€ºÿó Ä°yB (~qD•k, Áø= ï˜úƃ[÷øPa;'Oÿ‹·ÿAÀ€@"@Êÿó Ä™ F°@JÊq fQˆî)P<ÓŸ +~ß+òÿþGÿÄ€”½ÉJéCÿó Ä›ùF± cNqŠ÷j#Á ¾MøŽ=ø˜6‹ÿToþ6ÿò€À™)ù(#8lÿó"Äž F¤ cNq7ÉÀ¬ì†qëZ†¡¢Ÿ¯çú¯ÿŽÿùGÀ(A­Ót <^G`ÿó Ä¡ÙB­ [Jq}*c¿ˆÊõ}A´õôoÿ)ÿå €ˆ Œ`1€ò +^׶„Gš+ÿó Ĥ B²XKNp:S¢yÿQÿþ¿þ¿þ07Ð0@±‡£%ØFq6vx`æš*wÿó ĦÙ>¥¨cNqäAÑ^ß }¿©¿üŸþƒý % Zq^€Jn +À‚s†*HÃäáhÿó"Ä© B¥èLq§êøU?üÏÿ?ÿã>€°©†¡%Lü(L)#ÐÀ'W)f&Š~¿ƒÿó Ä­ B¥cNqÿô?ÿ—ÿÔ@€œR3(eÈ%&ÂdVhR¬”¹rÈc0ˆW«âïÿÿó į !FºXJŠq;ÿÎÿõ. ~¬{­.!%…Þ,À~Õ®_Õ‘e?OåCŒ?þWÿÿó ı F­°KJqå&„ +¬QùÉrC`Ëô?ÓQIs·*•íøÅÛþoÿ˜ÿüBÿó"Ä´ÉF cNqô€`VôÇcÁYðbFâ‹ÈÚþ—Îy£Å‰¤N_Љ>M_§ò@„ÿó ĸ F©°cDq |:¯žxDÔÓl(Lè£T©10r{èÀßõw¿§òÿúŒ€¤Ýÿó ĺ¹Bœ¨cNsP“Þ`$¸õ¥„3J´¹Éâ‡ðPã·éÿñ€€€ÆOä½ÿó ľù +œp{Np¥o1´BŸ`41C?ÿó ÄÓà®PcÎL‰ÏÊò¿‘€ÀeêÃ3ú·.Aà' ^«”ß|A©œÛýß`D ÿó"ÄÖ Xª”{ÎLýD¡ß«ò \>®v¥*d´XÄú–#ëVòñ‘ëú gñ^®¿ÿó ÄØ誡øcÊLÈ€À+€Ëµ¥‰§l3‹Ù[pctAØ´Ñg\š‘Jš›ø!oãåÿÿó ÄÛت˜¸zÎLðŸÿð*Ð&¥ë4´^‹ºXä , ÃxãS^Q³ÕüæFýÿó ÄÞÊ”{JpiôüíÞÀ€“_ÀÄ=ßÂsBáÏw‹¥AÖ\ñH:×MUþÿó"Äâ Ê”zÊp£z}L=U쎛S%ôrîG8ŒŸuUæ.üö(`¨¡Õ‚†§Ô»ÿó Äæ ØÊ•øzÊp9+¿£É€À ÃërÏãRYƒ”¿uŠËXÈc¡$zæk#­F¿êéýDÿó ÄåˆÊ”{Jrîë¤Ô«>Ù»()Ûf“CZ¾‰uîøß;dÊ 6Kïݼk§øÿó Äé +1B™x{Dq¯ú?úy €—XÉ’¸zCAÌ/Çs<ïóäÚX@?>²:ÖmnMœÿó"Äç +a­¸bÄpIwôz ŠÀ«ø﯉QA42ɲ$½Dú¢*øÍ,7*"z„™ÿó Äå ʾXyÄpÑýr@€9ðñÎe‡±Øx?€Ÿfö9'üã]È;µñFiO¼É)¤ÿó Äç +¢”~LGü‡€Jà?EznûE¤!ÖÙÃe F¨+[˜¬Ž¹Oˆýûÿó Äå Î¥PËDp§é£‚p€ª0?)tj2¡T-ÌŒ +ª%îms%Ž«Y¶²þ‚ÿó"Äè +¡”8ÃÊp¿A½šìò € ýü¥ë;äÀ,8ñZ²ÒǪŽ±»úˆ#Ù~C)ÿó Äå z¦8fHg¤€¬>ä^A¾b¬ÎÈ)G‚ôöxCu@οýy¬Û–GyìüGÿó Äç ðŠ¢X|Lú7ßOüpÀ +Ó`>[¢ç]x›„!¢•@Ÿ>UFU îÞã£|ÿó Äæ Àz™~HºÔpÀµ°5f‚~¯p•“( "iz˜•%ðA¿ÆCª¤Úü£®ÿó"Äæ áB¥¸ÃDq òK<˜ eLžß|Ï9v°ñl +³/•V!ßÒ%:=ÿó Äæ ØÊ¡¸ÃDpþß?ÿƒ`€Hêê!,¹“Bè@«ä >y5PWDôq+Ѩ7ÿó Äå°¢¶ø[DL£+ù €G@ìå5Ì-Ê’8HVãT-€²eAª„û|r“ôoÿó Äé +¡B”ðÃÄqû|ÚÔ`À æÀ3#t{R¥AÒNš,£ R¬¶*ªK_Ç;uÑ¿ÿó"Äå !B­¸yÄqíðvzØWLihôo@s%]œ.É¿O~Ó?È¡ÙjÒy3\CèÊÿó Äè +(¢¸ÃÔL~@À·€¿Qú–]úHÙC˜+͘øa XºMƒVÚ|Gèßÿó Äæ áB¦xyÄqêßÿÀýޥ䢣\B‚ˆ5ŇÔM,~«÷V‚Ó’>îó©ÿó Äå ʲxaDpÝÞ}µ8¿õ©Â|’ùÓo´ršBÁ‘m a䇮qȯÿó Äç +!BžXÁÄqܬÈ +ê +ö[Ù*rÕmÛ%t cÿëÿ4e®æÀ˜l¾‡Lÿó"Äå Q +¥¸yÄp<0x¬¦zR6³õé]ú¾R¸ëúÿ‰ÿöP ÿú`ðÇ`801ÿó Äç 0z”p~H݃N³€èý.´ÕݹÑÙÈY?þ ÿñrR‰€#@áñ†Rš!9ÿó Äé +™BšXÁÄqÏfpÍ·í¹‹d¹õþò‘eÿôü0À +0D‡ÃZà™åžL8 ÿó Äå ÁœÃÄqši)TÔä£s&úÁŸÿ¨7ö¼˜€ @¢Ç6ã§MãÓ³Ê5²ÿó"ÄÝ‘°ÈcÖrK}SãݺÙ_D„Ÿþ¡äh¨À0±Q“¢FgdÀÌêQzÑÿó ÄÊ¡¼cÊqLè7£ GÿèWø(  ±mAƒ"´\Ì;‘K¿Afã»ÿó Äιɸ2Šp?’*¿þþí€L…EÒDJBü˜PK «#­wWýÔqÝNÿó ÄÒøæÊXJÄp‚-ÿä?Y ¥ÝŸX|¬ d %ô*^¥Ÿ)7Q¾¬€_õÒèÿó"ÄÕè湘[Jp>ßþ<€2áë\ØBØì`«F0JƒYªéÕL¬„VO+ÒÊqP0ºkÿó ÄÙ æºXKNpøïÿÈ@# +ÌîÒnYŠŠdw&I¦·9Ù²˜Ÿyƒû@-õÿó ÄÜøæ¶8KNpù¦ü˜ 0ŽV¥G0ð¨sD xâ×ܨ¼EnîÊÑ<á úÿÿó Äß æ®P[Npç›ÿ¨×ÖÀćÆû¤zD»ä@%g’,Õ~Vn?y«£êqPoþÿó"Äâ â¶XIÎp†ÿü˜€XÄ'ÛƒlZM¾ + +¡Ô‡÷Ë»îû¨&ŽÃõ©S{901©tÿó Äåù±°KNqýÿýd¤@1€•&céªlbX. ‚s‘5>TòžWZaàÿýIÿó Äè +€cTqÿ€À 4Ls˃U”B5¨d1LceTEXǯ&%½ƒvÿó Äæ ±¡€{TqûVJúË€¨À™Á¡ú™«ßªÏV×[þ5„-œSB¡Pþwÿó"Äæ ù¡˜IÚpñ$˜„À( ¡Õ5S„P8Þ• Viæh÷5ªtÞ¯èÉîÑâ ÿÿó Äæ 1¡¨cTq—ÿøñôø}ó€þ®×q°5ÃK#“t¤öS)DÊüwÃÿó Äè +aÀfq?*€ €€ÌK7X† +Œƒì '“d$Rg>t|&f:lH_Aÿó ÄåÈæªXJŽpmÆ>Ñå€ ôåO…!¤L{º8nX‘t]ž­bñ‡©Íêÿó"Äè +™øcZq›ü¨òKð5lÞØ E4"Ý€£ùI +ýoô¬D™ôäVôLzúÿó Ä娮¦XJJL³ðè€ÀÝ5«Öw# 6qŦ¼? éŽFAŒá¨ÃÚXõmhÿó Äé +‰š8bÎp%òßÂ@ÀqÛ—¹ô±€4•Ÿ*‰O+®úˆ¢%&ï¨ýñÿó ÄåøªÁz +L† v¬R_•ÙtÍšãÒ ™&@PÙ-k‹1YMÑ—ð€ÿó"Äè +²©˜ÃÔLßäÄ¿( ܵ–¾Š˜ ÇÖ-‰PwE‡xEü]’n¨ÏÁ£¿ËŠÿó Äåèâ¨ÃJpú¿ñpƒW#qNÞ|ã² _†dm¦TÄÜÕUb^1nœM¼ Fÿó Äè 趜ÓÚLÿwAú9@€3ÀÖìÎë“’°gE¡«‘R «±·Á‘©íÚBÿYoÿó Äç +æ¡xÃNpžÝÏ­ Õ%ó4›Äa!(lŠð¨ pˆŒpÒUûüm&îü]ÿó"Äå ¥PÃDqÿ-‘ÿù@ÀpU™Ë;xhí;“)¨%MÒøºj›uÌß7ÿÿó Äè +`âøËJp¿¶š@€yÃ3–s‹@f5áH #û«Pèã¯Ã ãFêQºËÿó Äå ! ¸ÃJq}+9øt½J'må"Iƪ`A©eócÛë‚7'n²Gú(×ÜWòÿó Äç + â” ÄŠp®:Ô¤€íD«ØÊ°ºþ«Äxèç1M˾⫚7Q‚_–-§ÿó"Äå X¶¡xÃTLÛ£¥¼˜ ¶à%^ŽÙ.p dýôŸ@Üï‰Ýùçöz‹¯µõÿó Äç +!ŒÓNqß¿ÆlÀ‚|øÍ2ÜÌä,NÊ·¥NDˆFŠ«Üô7[å 3ÿÿó Äå æ¡XÃDpÞܧz€À‰Á(‰Ì­ý3`c&M z§ÆÝö;”Næ†?Ôÿó Äç ð¶¸ËÚL±{ôz€À†!»Ís<£å ´PÜËHuÔŠëóë’›ÜÉ¡F +¿ÿó"Äæ p²˜ËÔLð§ÿAüú€€y^ï>¯ˆÂèQíקÕ`¢ÿ>ýGõü>ßÆÅ¿ÿó Äè +(┸ÃJp©Ve€ ø{KYÐߎ$ÐW«E!›ŠŸ¯ý}Ýuäwæu8¨¢ÿÂÿó Äæ ‘ºØaÄqíÿ,À‡» ZÞm“ô±L£’`=ëæ&wæ î<ÈÈzYÿó Äæ ÐÖ¬ÈzJp¿šÿè?ôÀp([ãoïvÑË}#-< 3ò£&å:ú ?ücÿÿó"Äå PÖ¶0Jpž€À@<Ê7'Þj÷àzº€t¾š[É5ÖbG¨ÎWÕÔ5¿†ÿó Äç +þ­°zÊpþ#而Õ.)¨Í£ô¾…eJ€PºJ%íSüÄ? lSÖ³ÿÿó Äå ú±øzp·úñZÀ +Œ‹`¼ÔSÝàòà3È-pIŽ‡žeçúßÊÿÿó Äç xþ à{Îqè+¦€0>´bnŸ’*â1´ ÝÃEÀ!ÇŒ š¿‹¢¹‹mšÿ:èÿó"Äè +‰¥°zÎp E!ÊPÀ *±>Ó\Ö Í'¡†*˜ÐnoˆAªÍg§ç“øÿó Äå¡­˜yÊpHwù…ypÈ<žÞ/&oÝp°˜xƒLbÊŒ¯á‘:¤ÿ÷ÿó Äé +¥¸zÄpú m€ÃÂ]§–iwNÂF‚— ] +f —|GÚW«zÉüÿó Äè +Q¡zÎp"óø›µ`€8 ×jÎ>訊ÑŒ s-ŠyQJå_ù.áÿó Äå !²XaÄpýF~y`€ÌÉQ%WÝ€P¦ +B7=ïý(\Äæÿ©ÎC§ðÎýùÿó"Äç +9ÃNpaX~.š8Ð^D• +täHË5@Å'BÐ ïŸQ1a×'ê+Æy•ïÿó Äæ ážyÊp6èÙ@¨„¨Ï«ó ‡¥ëÀpÚDTót T:'”QÃÛöéDÂÿó Äå ®XyÄp/vM_hºÉï­ä€åàuÂv¦7Ü® û²Rs­í…¢Õÿó Äç +Öš0zŠpÙù$Pç©ð¬•€ ˜ +ÁLßmå_”ŠDh°óŸ§ËxXùa´§ÿó"Äå XþªXz„p´±ödjÓDµ`CöÀ{šömÖ34²GšC‚|÷ˆ¬í¦êýFá¾ÿó Äç èÒ¬¸bqV Ý`3“ey¬;Ú«`¶\»¬0'*×3kÃsð=«•ó ÿhjýOÿó Äæ €þ±pÃpѼºPtØ%ŠU—á9\6›‘®ÆðÝÊÀþóMöWþß`ÿó ÄÛ ¶ÈøzJLÝÛSŸQ» + ¨¸tâT¿4XE;“:(•ä=ȾöžGåíO¡ÿó"ÄÝ ¶ÄXzÊL}µgÁŒ “0Ñj0à~íó%ûV¢rîéþúÿó"Äæ +´ÂDq7WÕÛà` "Fdªì¸J ÔiŽè4TË—6ž`Tæ|1LryÕ£wà©ÿó Äæ y¸8Á„q÷_}Qp` @¤1Y|7€º'¡ÔLOÑT±/Üs‘£•¥ÄìÅÿó Äç 1´0zDsª&“mª?7§µb¨Éå F|4­¯C¥I±äÃWZ«ë´oeÿó Äé +a°XzNqéîÚŽ€ ‘¡G pþ¶´@®çÛ¤xE= º÷êߧGþÿó"Äæ +´XÂq.ÿÓ§¿PÐö}šÑj%E‰DÅ`³Ë¨‘¨Ý¬7 &_‡»»|èùÿó Äæ ™´ØzÄqº¿Ž8ï‹“8‹ìUÈ°.Eì0ºð;OÎ!‘¢¶m³¯´=ýÿó Äæ Ù +°8{qã8Àа¨%’RÅ1± F"5äÁQËZA¦±w8†eøgúÀVnÿó Äåø¶´8{ +L­£pNp>‘SNÏ"ù +y$š_ %e&©Á¸úOÍìl´c]oyŸó@Ûÿó"Äè ù°XÃqz?^ž1À°6Ø!Ú6§ÚHø®m-°xë-.rÉ7!™u“8§íÿÿó Äè +a¬8{Êq×ß‚†-3븟Nõ&}_‹äi·r–,9Õ%ñÓ-xcÞg÷©ÿó ÄåùÄXyÄqìpþš€À®¡YC¼äÀÓØ•kB¡ñîh1g!>2)–Ì•u/’iyÿó Äè á´ÂÊq½ñ£øÀÍ@€˜ƒÝ +Ž·½ÃªU‹BeG—R«ZG‚ü³Q¼ƒÿó"Äç ¹´ÂÄqVè7@ô +7V]ØÆÅ‹5ŠBâÏDØUÑbæ²²Õ¸äÂçKÿó Äè +¬ÃÊq½Ô Ýxå°ÉÔy€—:Ž] +„ ©¢Mw‘y¨lžÖ¨…·Òz7*ÿó Äæ A +°ÂÄq·NŽøÐÀ!¦t‚„¾âCkCý†–ãr-m.Lçìýå’žŒ?ÿó Äè +Ú¨ËÄrôðc(¶|·éãš•Ð Z_yÁ³@î96`5ÓøoÞÿó"Äæ +°8ÂÊqž±¿ßƒ`xâ&ø¼êOB”„³´h³­ÍZ‹åý|OòÔnÿó Äå ¼øyÄq“ÿBp·¦6¿¦˜¾Vå`–žcà†Þf¥ßf±È=(DœEñýÿó Äç ˆ–¬Pà +L¢ýlä+ j *ʹ«„‚wÝ~‘‘O©j%W¨¾¶çðO÷€~Bÿó Äç +!°XzÊq—úõº/‚ ”ZMp<$Ò‚ÙºIK27Á +gB(÷éÿó"Äå I¸Xzq'âÔêg3 ]£ü0 ¬“ŠÂ)k<‰Ût9ŸZ\;ËO~ïUnê[ù?ÿó Äç á¨ÂÄqê)¿@`dö1ôû„%Ña×ò2«£uN`g,é~Væ‚ßúÿó Äæ Á¬XzÊq©ŸAýh5VÅXÆ.-çñi%†#³i€¾Ÿ˜å½/5öAâ?‡ÿó Äæ À²¤ÃÊLįSôœ{–,CÜM ŠN«Á…Hý“¢¤¤ƒŠå§¦êkÿÿó"Äæ +´XÂÄpÿÔ¢$r  $T·ÆE9>Dë'Ž3c^™xºl(5E¢NºÇ]Á/ÿó Äå ®¸PZDLÈØAãÇø çñ#Œ¾5ví¬ÌÅ¢æ·>rª(ûû¿"Cÿó Äè é¨{Êrÿÿ0ò€z.£bùªÐÞºù‰ç¡K|Ö+âøëe¿>_áÿó Äç Ù¬XzÊpï “8óÔ•€GùŠ™5 Ò'Õ¤nßéž·ó7±×u'Fðÿó"Äæ ˆÚ¬zÄrkÿ ;p‰¹CƒŒ€~|Ì°3$!ˆ!2fkÅÄtT§-½£©Fö7ÿó Äç +þ¨8{pú µÇ×eê{^·!ª€WØg”‘@)^¦ã1eE°Íèõ£x&ÿó ÄåÈ®°P{ÊNêT–\2¦ÊüNcÝÒ +‘­«ªâ°p“Ê€žµýâ¡Ì÷<z½(Ýÿó Äè +Xþ 0{Äpþˆ4–°â‘®"AÐtl2TŒgn QuzþÕ§ÁÿÐÿó"Äåø®¨8{ÎLø6ÖÀm Ÿq©qx„ØÂéÏ4sh‚©Ä!ªNrþŸJ„§£ þÿó Äé øþ¤0{Är¨=m5n°ªÔþ}žÊBìÇs ¹„œ®ÁÅÒ8°œòØÄ%ê +ÿó Äè +  zÊs²¡îuüô€€ÚýrŽ‚À|ÓTâθ£Òç)·³æj,îy`G¯ÿó Äæ pÖ¤{DpÝŽÖxFA` bݼ¦Ÿ[¥´€IDX ùv9Péÿó Äç + þ ÂÄp: +Qea™ÀºI QQx.§ ¢É0¤&é8¾Î6)”6"£ÐÖrÿó"Äåù¨yÄpókÖyo[W=¡IIëçÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿó Äé +¡¤XzÄpôh’h~™Qß~„î·t½'½@ ¡0hЭƒâÿó"ÄÖü‚¼h, +H>ýôkµg||gVv¼Žr—S Î`y/H:™ƒD@Pÿó ÄžÐÚÝ™Æ(TeN“œrÞ!>РÏoo7þþ~§ûx6 ú#·‡l&E)ÀSMUT[ÿó Ä¡ùBÈzDq“VhûËHï?ƒÇ¿09Ëí«'²ß“@Íýɬ±Æ Øáóxÿó Ĥ ¾ÈXbLZ ~&n…±&Ê%¶/§ €ŒƒÂÅZ÷S—Z¾ZÜŸbºzÔÿó"ĦðšÄ0bÎL\´V.#GFÎÓ÷UYÝÕ ì†Ÿˆ‚õKÔЖÒ^†"2ƒ'ÞD(ÿó Ī BÌXYÄq|Ÿø|W?¾_Ä@~˶"I$P@â»Ë³[mÂâÀõjƒÿó Ä­ šÀ0{L9VÊ/¯NÊ2Ù "¤¬5EûÙIž¶û†Ìº‡V+ê^£¤ÿó Ä°ÈšÖXJL ä÷׆wVí€~V pND*•uçó|D¶xí°,Ùá¾>¬ŸCq¢ÿó"ij H–¼PzVLŽœ”בs¢¬3¦Lt…sÉ*èµe O´tÆy:7§Ù¹üæÿó ĵ ÒÄ8z„pñ€ß@ý>¸ö“6¡= $&uzm<,O-'Õ:ŒÆê€ÿó Ä·à’ÀXzÎL ;¨©Æ`œÀq778ä‘ +î¾<‚g¯è7¼Ÿéâì×—ÃÀÿó ĺø–ÉBÎL¾æö@d#¬Ú¨aÍï–F˜3¬3É?õê=æ2[+ +Áòáÿó"Ľ @êÄXJ +p¼º|"¬Š!yÈ5zeÔ +[ÄÃ;(Þ²SáߥõèÒ ¬ +ɧÚÿó ÄÀ >ÀxjŠq|F þä‰lÖ7kª!g–†Ò‚õ÷•öî£N~ @§Àz9ûÍBäòÿó Ä ÖÒXIDpW÷óáíÔ³œ=WƒÚŸïãVšŒÖzX‚Ć.º5Û›B‹.­(1п¼{Ù¾Ã9úÀ’•&”*Ëã*¶{Äíÿó ÄɸÒÄ0yÄrŒA’ç\9<˜åJû©þ  :å¿ îŠ9AóéÑ}ëÚÿó ÄÍ ¶¸8ƒTL‹5#AxÆóÃÏî’r_è@ßà~Á¶Ô¦‡f:*ݵ¦¼¡î¬oüçÿó ÄÏðîÄXZDp]ôÒ_ëöj¹~Þ-ô€»8g´Õ±¬gæ‹¢ØsÏ©hŠ^|Bÿó"ÄÒ Pš¸8{TLÚÃ=¦þ5ñ +¬õd€€™2ï—âP•h»Ê5ßKÿžEpã;óçÿó ÄÔжÀøjLƒÿ~‚è;^€@î`fÒ!ºÉ€ž0 $X¢‹ẊÚ?@kæ¦O#ôÿó Ä× š°P{ÖLaïH€›èæ•cÐaYÛO^Þ ñ]ÊûHÿ(¯Êˆgê|-ÿó ÄÙ ²¼xzJLßd@ Èß{ š×bÚ¬{,é¶ì'÷äëšÓ#öî wøÌ_å®ÿó"ÄÜ I*ÀXzDpÝD™égÐ +¼å6by#@yãÖÉ“‹æ±#sŒ;¢lï]û¸ä,ÿó ÄÞ Ò¼øaÊpp²Ú@€Xø…h/#F/ä`šÄBŽOç—J/·vÿ—#·3Th?üÿó Äààê¼øbDpcy0€ 0&ôCŠÈÄ‘8;µ“¨­¤ d—üÀxs”hQ*â ÿó Äã¨ê¼XiDp„ÛýE=@0=œ·#C\SaNV0v}ä~ÃCöhg¾b7¡nP%n¾ÿó"Äç +š´øZÖL)ô"þƒ[‡ùA-š¬í·QbQ¬˜© p\ñÓ‡>1Hðÿˆÿó Äæ ¸š¬8{ÒL…ÿäÀƒÙ—¯f djºòŽÐVqüÍXŽ}˜ƒáÎÕ-Ô?øY·ÿó Äæ ÐÚ¼øZ +pE½@À «ÜäÔŸ)¶ŒñNøZ®íHÏÞ24y7Øä5E9Uêßâÿó ÄåàÖ¼ÈzJp¶ÿ‘ù€f¬8ÚÔ«ÍøF“ØV}Lû$xAÚHk²¨47 Ÿÿó"Äè +Xþ¸ðbJpú„_ý؃|£ÆK' šŠØ+E—?'fc¤ÎÒ¨è:o¦Ô]_ãÿó Äæ ¡´zÎp…÷ÄÞ €W/2¾årDa 8áø’H¨ßH݈ßÚ²¢ýU u!ÿó Äæ Pþ¬ ÂÎqáfÿ–ùàÂÕfˆ¹y†ÒpšŽ[:9¥é*³úB?yð_¤x›ÿó Äç XÖ¬ zNr7Ïø ýɹðà +ã‚Ë)ù®ÙC‡u?û\k lób[ºR„îÿó"Äè +!©@ÃpvÝCòÞ €RáfGÇr(4p/|#þâfÓ™*÷f ú +Ô{ ÿÿó Äç ñ©H{ +qê3ú€€Ð…M@q‚Þw·ÞÁÑþÕ­±?”{—}çoLwR_ô +ÿó Äæ  Ö¨ ÂNpñî]ҬǨ/„IÓŒ €k(m ®áÚAóšX1«·ú‹ßÿó Äæ á©HzNp î¶ €\O²‰5Ê)…C +Ÿƒ~†êƒõ>ÿó"Äç +(þ¨¸‚Êp£¦V³Ÿ ý@ Æ`'Æô,¹wÑ•  +™%©®Ž8Böß›Bï6+ÿó Äæ á.µ˜aDqgˆ¾*9¸ÖŽÁåšlr½F)@õ0üâ×!âùâïœlÉ› ºÿó Äå  Ö¬~pÐgõŒ› $T +­›ÌpغMÄ2f5ÿ•®—ÂöþüŸ<7Ÿ\Ì{ÿó ÄÝ þɸBÄponP߈@ +ïx1©bíD +× dÕ“íᵇ/ÿR¾?BDš˜êÿó"Äß þɘcDpÿÌOý´ +'‰Á õÂoDt7¾Òvwöœkyÿ°ùªÇ ä¾ÿó Äâ ®ÆXz +LV°8À0$0…aGÒµ )—*‘0A ÉÌÔP hè·X<ã’ÿó ÄäøΟbŠp?‚¸PÁ‹ÅH´nY"Eáø–0&„™V ˆÕÙõžó~ŠêC³ìÿó Äç Àþ½zÄp½ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÖÀ~WÃC<ð•ÿó"Äç +þ´P{ÎrÊÑÁI/ÿËèé]î{kP¦äôÉÿ¡Ù¯XÜàI|]bMŽ°°µ 7ÿó Äæ É2¸xbÊpK'íHšš( Òõ 6‹oBÿèÞ²@ÍàXºL¸»Ö° >IB 3Ëÿó Äå ÆÀyL6µga);µURn+ÛóÞ´€~èj]¸PÊ8Gêœc^ºûøÿó Ä鼂˜˜ˆ‡G`"+Ѿ#¶ã=ó^´ÄàhаUôºLª£°ržª¶J°¾ÿó"Ä© (þ´YÏ(­»ÐáGíÔ¸ßü|˜$jü£Öhr>D‚Å”ŒÖ§]À‰KvùBÿó Ĭ þ°XcDpú—vÔwíúTáûT@aÐ@Ú6Íi+h.·XÀ_]dÁÿó Ä®ÈΰXcDp{Nýý HÛa¼Æ€¹ðž‡„Ôf;‚Ïdð‰.ú‹ièÝa=ELÿó ı –¬x{ÔLuæeÅ1~²ÜÐ\ÒyºQAµzLÃÕO­uË·xQ +?õ @(ÿó"ij¨þ¬XcDpÙJ´Ñ7˜Æ¥"¹‰>¯PHT´'L”ê 0Äǽ]*ßñ?’ TuÁÿó ĸ®¬ðcTN‹EÞÎC†#g챑k*9Jž’h­ç«ü¢ÿð (| +¶Hž1lÿó ļ ΰø{Dp©¢ÓËȱŒç‹áOÿnCÁp©ö;¶ÿïùŸ®  riWü#å¹ÿó ľˆÊ´XzpŽ¶’‚"&æcÈLÙcÔ™UeÚTßåõ6ÿáœ`{Š,'öÍ8 ÿó"ÄÂàþ´XÃDqKòø>ñªjzæ +°4¼êÕÑþ=Eß æsÕY*‹½ C’Ëê`ÿó ÄÆ Î¨ÃDp<ÊYÁïJrĉƥ5¡J~­FÿàÊŒvªà½nšéT¸UxÁJ)ÿó ÄÉØú¬X{DqÙcÈݤ‘SZü3'æÛþÀže RÀWí–Áx­jLˆ–6:ÿó ÄÌ ¶¨8ÃÎLRk¨Äáå=¸6˶oý•dØBá«»42G7€¦ÉR$ë˜ÿó"ÄÎ 0þ¨XÃDq<Ȩ²óz¥¯æ«mÿ  ­IÀÎâÓféPqM=H"ýp7;9¥(ÿó ÄÑ ¶¤8{ÎLQj[ó¨QÔøp   "Ä´c¯lÖqý®ÙD• çtù[òû”pfGŸŸÿó ÄÓøþ¬X{Dq å´üNå¥rÍ9=¦] eSyB£ŸšE¶ªê4`b Óˆ»2ÿó ÄÖÐþ¨XÃDqª¦îJ  p°ˆ„Æ­Y¡‚†s z6»z»õÌ{qÕ +IW”wo—ÿó"ÄÙ 8þ¨X{Dq¸š› •@¥Tø –ÃOodb²Ð g•)’¹?Öå‘5Ö3'óUµÿó ÄÜ ú¤X{DqÂúˆ³¬áQ¨þãóT33D>4¨W-öW¬sÄó b,‚+ +Ár:ÿó ÄÞ°n¤Xn ( ü3äÀ/ +Â-t€Ì["Ió‘òØë!£'|LBûë؃«(ÿ¢Æÿó Äâ z 8~ HðBý` ÀuÙz‘_ +5 Jç€ tÔ±áaê–¥-S§³0'ºˆ›ÿó"Ää ’ X{ÊLø/Qï&VƒeYS«ru©Å@ö2écNŒÿnF‚Ü­¼ôè /Òfÿó Äç ز x~Lÿ8+ú@x +®Fc‰«ßA$,‚“"š7ÚJuÔK/Ê=nÙ‡wÿó Äæ °Ê˜X{ÄpûAúÎú@•ÁKE}žì¨ÀÏ3ÅCu9ÒB¢@㮢4Ú·ñ½Mú+0ÿó Äæ š¤0f +N¿úƒQì‡ÔÊÜgFœane@šœȹxó¤¢dãOï_7ÿó"Äæ ˜þ¬PzÄrÇ„òŽô€×Àv#^©­VèkÂ8ìI-yaýbÄ#¾³CæÕª“›üÿó Äç ¸Ò¨X{Dp™é “Дö´b©La±è—E¥ +Ò4z¥¥êä‚ê*õj +ÿó Äç Ñ zÊpî'4b…8Úqn ›z(Á!±ª&Ë'!\Œ³i‡J6­7Óÿó Äæ ÐÒ 8|„p5ÿ¨„À0! ðzC*Å)9A8n€Ø8É {-ˆ{P’ȽŽÜMÿó"Äå þ¤0{Jsþ:ŸÊ…ÀÓt& Ãï©M¤Þzƒš›€Ñmʦ¤ 2ÏŒá¢LâŸì£Ûÿó Äè +Ò˜|Äpj¥ü€F‡².tu¡sœþy~rI‹h +ç[’Š¡-9/·ƒ~÷Ûÿó Äæ ¨XyÎpø € +Áîç† ÐÉ7C£w _¬Lþo~ë/5~ÃûIè²ÿó Äç ÐÒ 8|Dp¿õ @ÅãD©¨/*m)Ô=† +…ÎW~¹ö¢6ÿ]„aåÛßÁ>ÿó"Äæ  þœ{Nq…¿¨ðŸð`‹hšÔcõḖB¢€@ ³Ì6k&=5”To[k7jvÿó Äç ÐÊ”|Äp›þQ`\ ¢EäTfŸNËPK›ÀW60Dá^£f¡#,ÚWÕÕ¹§ûWýÿó Äæ ÈþÃÄqð€• dȹ£m ã<à+&p®˜Òe’«¼–YQŽ¿«hÒ}ÿó Äåàú˜|Dsëÿ ßH ]£Gru³­‹#ˆ%˜€˜Ëwu85âM?¯h‘5|÷ÿó Äè +!˜8{ÊqõzðVN­Å=Ü7î—p §“Há+Y±—žHÞ§+3Òi>ÿó"Äæ +úÆqÔÿƒú6ÞC§ccBÙÎhdYcêt,ü9'§‰zx&¥=#Ïÿb€ÿó Äå þœXcDqcÙ÷÷-¦æе9àø|ãdÇÐ^#` 3 +ÅubýbZâÿó Äç ¨ú˜8{DpF%1kgs´k'îEÀ4¾žéþTeúþÑU#~ +Œ©ÿó Äç èþ”|p•RÇ;š‡¯ŠC‘ú~9—ßØÏÿÂþ4À@$D`‚ +åG™Ð +ÿó"Äæ ¸úÃÄq3¡ô˜Âø,t5õ?ëÿÿäÿðl– Á‡8 ¢aD1eh H^ÖB§¦ÿó Äç úœx{Dpú«]sÇÐf²ïÿÿŸÿÁŒ€ÀÁö«˼ÁË‹RÌ`VˆÚTT•p4Mÿó Äç hÚœ({ÌpóÚ +ÿÿÿ–ÿõ, &‚ Õ¤ó…M „±t¥8r\˜*s?Zÿó ÄÜ ùF°ÈKÎqÂÿéÿâ_ÿ ðÅØeÅ.ÆÔÊ:pT“¶Uj4ôðR8Št~¸Àßÿó"ÄÓ YBêxIÊqÿoÿúÄ:äìk„Ú…j³¶×ƒ&RÎÖv³zÍê¯8>ßó-ÿó ÄÕ¹BÅ°ZqÿÊ~@ Jžìy$¶Û$$ÄX öJ¹ôLÝKf¨Ì±WÒï*>ÿó ÄÙùBÅ°JÄqÿÿãÿ +ÙP.C È"£äøl>².ænµ1ÊΖ+צ44䯢Äÿó ÄÜùB½zqE¿üŸþ1€ÁYK)ÀÓámœ=Õhs@Æ+0âîÈ£‰éðf­¿Ûÿÿó"Äß 1F°bÊqßÿÁ8F#!7>SG2O'C“x!Ü¡çKf®ÌûÁm>±ªôh…¿üÿÿó Äâ‘ +°zÊpÿ,ÿ‘'c±2-,—öfqcFg–·T¼G­0¥5)ó÷])ÿÿó Äæ q +¬{NpÔßþ%ù0œ’ÀZU®Õ +ù¢ŽÔ³“f³ š¡ÉEs»JŒWÿó Äç + +ºP{NpîúÿH€€&aöèŠ !…ý6èÃH¾¼áåa¨òGHÊ£¯ñµGýÿó"Äæ +B½¸KJqÿÓÿÐpߪ(φ”;SŽlykO3W½§~견ãïüwÆ‘ýÿó ÄåéBÆXb„qÿü_ÿÇ€…·t&ȦìE`™»y‘Ífþ°7×WÈñƒTT”+}^£ÿó Äè + + {Îp~Wò`7ždO“:¸ðM_Ï*= Ë}ô-æ»âö¡&ô*#zŠÿó Äç +! +  ÃÊp0Ì í_“À1îµ +È®VÃxýÕÃI Ùˆ Ç[å@sPtoÿó"Äå (¢­ˆcÎLã_çÿð`à&äûq.N‰{üÖ}"TKçÿùzü_ÿó Äè +!B©ÃDqô?ä€À2ÊR¾ uÞœO’9M4d +Ô„EÜC–8Zkÿ tAþÿó Äæ ÁB¤P{Äq Ùn[ò@Jä=M„‹šŠå_Óxh¦§\C”U¯ýBm¸!¿‰þÿó Äæ XÚ½y„p¿Ð€¬nœGÍÅlPËu£ŸLm ´±d6ZŒ­ S9;qέQáÿó"Äç +@Ò´xbJpC¿ëêý|<¨£='G5bê(øL·N&„„QÒÉlN}urÊÿó Äæ Ù>µ˜yÄq/úÀM€Ê‚,V8 ‘^H£ØY(^àJÊdI†Ò´wì}àØú¿ÿó Äå ʹ¸a„pèÿˆÈ7›™åSs¤u܇·U&–`кí\@TdfÁ6õ`^[ùÿó Äç +ʱ˜zpoÃ:ë2ŽÇb¯,˨ðÛœ.zDáñJë%[1j-ù»oQÿó"Äå¸Ê¨zÄpøÞÞwê!¼æUi£¨©;#J§$ "ÞX$É¡4Û^NŒßÏþýÿó Äê +ØÊPà +pðÚ‹èwô´emxúòÁ÷úŠ,4è¨fšýË0§¯ÿ·Úƒ?ê¿ÿó Äå ª¤zNLNœ+Xý@¦¢66\ÐMNF|U†çP‰¼xû¤P» +Ð9<ÎÒ…‘ÿó Äç + +©xÂÄpüïö}@€J@7?8QYdŽÓÎêÅåç—‹Éš˜…´Ïó¯,íÿó"Äåت¤{LTøÿíú€ +0 ¨Ð4—!'c¸6Ðo®ök­cE´£ÍÖDËBùqÿó Äé +@Îœ¸ÃpÏ瀼2ÊŒ pÖœ 9 +ú+,Hà¦p3›(ˆÅšä?õxÿ‚ÿó Äç Á + 8zp_û} ¼^¶í¹Ø>ZÞŒÀæOÝÖPÄkĤn+ƒ³ULïÕïú?ÿó Äç +œÂDpú·ËƒOH€ëè©BZkN-Ê7)p¥ŒPä`'a=‘²ß½MÑ¿ÿó"Äå X¦œ{ÎLÕ¾˜6ò` r,ªÒ9QSoÞ7h­j†§†1¨#ûÄÅ ñÿó Äç +ÎœØÂDp’ò^LZ30<ØêÑÿ°D­,úNUëb‰_è}ÿ9‘å|ÿó Äåø~¨PcÒHEÿ%ä€:ÿõ†«å?§FºEç…\;-ˆ´•Y‚&Ã7$—ÿó Äæ ™¶8yÄpþ¿ÐÀsP-"*ßaÁrGáU_ +F<ìíÅJ:§蓉Ç%Å}ÿó Äæ °¢¤X^ +L¹J<€¸¯:HŸÖ¢Úf‚É(í]7‰•À´YEêpš›¶®µ/]ÿÿó Äæ ¢¤P{ÌN_ý¿Á0€ ¶À2ÄÂ5+§FȬÄmôË&t‰ÖÃÎQ¾Þ¾ E9ÿó"Äæ ¡B¬xÂÄq©oÛwP2›`ëÈl¹©Œq‚›ÈÜâ€JwªEê_}ˆF‚Zÿó Äç +ª8zÄp òz¿"ÀxžÑ8g:Ï CÙöì?pãúoÙ=QF¨¸A$c’œÿó Äåøz¤P{ÚH'—ý ‹xd2´1¾_ƒ¤„Gˆ(–Y¢©¸µ¨jHY§Ñ›ÿó Äè 袩¸{ÄLýþßëÔp€´]€³¬!L‡Å»šB?>ê€3›N(…d|GéÕÿó Äç éB¤xzÄqù0$™8K¥kRéE8Õ.®mD@Ó54š +}ÜB–y!þ%É@tLÖ ÿó"Äæ 覩¸{ÆL·ýþ¿þ5€À þP%õÃ;UÔ!hPgEFq¹Ï&ö4é{c©ÌOÿó Äæ ¸Ê¨˜zpN¯É.Py’ièl(áìMÁ$FâaEïbÕút¬{¯­ùÞŽ]ÿó Äæ ˜ÊµØY„pnO§K¾€Àòð2QÑ­YÁ!¬ +EE‚Ù&N(Îìu,£ÿ7ýÿó Äæ áB¬˜aDqþ_ÿA€f—ÏBcú (`®鶉#«“Á¨¹ä:Úbˆ‰np„›FÉÿó"Äå ‚ºXJFH'•ôêü€  `ÚqsÑOËX5êÂ×u¢n_¼¯Œ¢ïÿó Äê +ÑB¨˜zJqôƒý@€ÎÐ<%øP°–ÉJ5ˆhFÆ“·žÛ+ªPá=Ê>2û:ÿó Äå ¢­¸bÄL¸gê€Ë•¬%$–@”TpVÈÒnzŒÈ“#o áq›–ûwÿó Äç + ª˜p{ L8âý™oÒ¼PhÑÐèT’”Q@µ©rÕ¥Wˆ‡Ð_;º=ÿó"Äå QB±¸YDqi³©öký  R¥ÀTF€:½¬Ø‹.‘ª4–„–æN¦ÎÆ6ºÿó Äç èjŒ{Þ(?«ò`˜ dlhmãÈ£ðŸˆ!M¿CŒ*¥YOW5%Ï(FA+ÿó Äæ ÙªxaÄpw?ÕÃÀ€ +Já8™8~<˜àm p娭‡ƒ€\9«E¿á¨8âÿó Äå ¦¥¸{L$¸›Ù£ò@€Šp;^ßÀ²Ú´j*ô4ŽÐ#Ó°ið8Ž'q]ÿó"Äè +xª•°{ÄLÌ·èÀ ‘ð:â +¡i…ˆ†“$´qpþ}Š"âkX¡ÅRû=ÞtÛ«ÿó Äæ ت˜p[ÊLvÍ|ž€À+€=Øux/Û‹P±Œ’ͺkýÌ—¹É;6½A–ÿó Äå R¦XKÒ$[ò€>¯Õ¯(s(ÓGJÉ…•NÆô±q•ÌuFµý>Õ~ßÿó Äç ØnŒPKØ(¡?=—÷Ò …DӶܭáI$–Ø>E¼ãÝ(p—뉃šÿó"Äæ +zø{ÌHsè1ËuÀ ÀïÜítÐøiž…Å=Ë7…(²ëÝÒaô þ+ÿó Äå z¡¸{HጷäÀÀ +ÀÓÁ)]ô76Š1:’œ\ÖÛxÌ=;a°C ïÿó Äè +`ʸzÄp?ÄœïÖÙÀ¨ù¤°úCçÄiÒ¡L5ÿqÿž`Z + nÿó"Äè +xÊ”ÃÎrW¨†\¼ +ˆò燂|ÃâærRÅlg7_f9ˆúç +·äýÙÿó Äæ Àª¢X{L]Ê9@€€;z™Û2l£9•i©Ã,Š¿~¥ç[þþt)œºÿó Äæ ÊxzÊpoâ:Ù–àx+…zç-hd ™_¦-t˺ߘ¡?Ê>¯Æy7èÿó Äæ ¸®¦Xc +Leý«€B  +^Wft»À±Cò&á výÏm+ïµÓÁÿó"Äæ +ª^LÂźƒ™@€`6™dBp´ªÅZœ)*ê]MúÉ}s +˜ôyÿó ÄåðªªXJJL?¤Àq~`? +ÕÅ™Ïæs¸Î˜hÜBKXŽñé¾}l«ß#Ä÷V…ÿó Äè 誔8‹ÎLÑ_¤à.û?ôžHùƒžòR¶{‹7º:=ô;Ô6(AÓt2ÿó Äç +ʸzDpø“ß–ü˜  +´J•Œªõ—ÈY+SL2úMçWN~y¡– ÿó"Äæ Àª˜X{ÊLÈ~³¼ˆEðÆÉ4“.ÍPB}ì XånHˆv~<Òü7£­ð•Ô‚ÿó Äç + ª™{ÊLß ÿù +€›É¨¼8Èáéê0("˜f'& ’ÎdºŠÆCmðÄÿó Äå°ª¥¸cÄLúôy À’ð;Z±þþŒç¢4+# ´4tE¿Yø-¯ú +ðBÿó Äé ðŠ˜{ÆLü‡’ôÀ ^Ô®ßmÁLX–8g#ËPÅAÃq[œ^‘Oý?èÿó"Äè +hª”xÃÐL?ú7ú䀅ڲâ"Âx¬Ie;ZwºÕì&zÞ/?åË{Äiâÿó Äæ ¨¦®XcL/!ä€À‹5ªŽmÌ'Ú+æ;éU:Š)"- \$ +Tì¡ôz¢¿ÿó Äæ  Ê 0{ÊpAèßñ€À|¶+ñ"Dt9ûY +Q šŠ?üÿN:¿ó£ÿó Äæ àÊœ8ËJp}xÞ€cp7Œ­NkÙ·@VA‰¿x,±ĉ<ð![yOµ5¯ýÿÿó"Äå HÊ­¸zÄpѾMò`œ…Úq¯.‹!Âá›-r#³`ÝÌŸþO|ö«…7W¨ÿÿó Äç +¥˜ËDpöÿA€À,Ðn°/^Ï >^#“Ɇr·!š—–‡Û©Ô$n••,ÿó Äå z 8~HWÄÞr®~åR½_±LD¤·¹¢³,jJ€¼Üg¿a߆ö”_ÿó Äç +¡¸ÃDq’Õ € +LåcÔ×óU4®=ç¬] Ɖ !¬â&¯¤S}«Ù}ÿó"Äå !¤XzÄp5Ék³É€ýÜ åNÁ'¡RM1-µ‰amªfê+Veòˆ®&òÿó Äè +œØÃDpZ,ôÀ +‹p5uAjCp°,•‡f9ñ¯p:7Úê,ÒK—ÿó Äæ Q PzÄsòZlî >Q ;¨„À<­Äè@a,ººÂoLÀT£¯®dVÈ'ÿó Äç +ª™˜~LdíÏ»÷|ä8€†)”yA8?Ô ýÚ QŽ„ªÖ'àË¥K¤ízãÿó"ÄåøÊ XÂÄp9¾2]-øú’jO`¨±©WzÜÀ,ßüq©ÿB` ÜHpÜÁ¨ÅãÂèÁÿó Äé +ˆÊ™˜ÃDpÔZU,)úàzY³ýüÍ÷÷oÿÿè8 ÉÐäõ~9eQZ¼2 +óJÿó Äå ª¥{ÄL”¦.-ó~£z~ÿþ#ÿã€'±ê£C +]ŸèÃÞ-Â7ª-Z#•ÿó Äç øš¡¸{ÆLL‰8¡vÒûÿÿÉú—F@ÙD +O¼\ o; DuWÓŠ ÿó Äæ +8Þ ({ r»þ~—ÿÿþ#ÿáþ€ã áÈÀô<:Xb…„@y¢Ó%u¨Zÿó"ÄØ ™B¨{Îqý>‚MÿÁÿøoÿO‘–°È‡½xƒ"ar(Ãp©K÷Ad¶Ê1Êÿó ÄÑ©B¸ bÄsïúÿ$+0 ¸ê}pKl´S§‚€ž hÒÎ<‰U³àœéÓ]_ÿó ÄÕ‰B¼hb„qÿÉÿàÆ >Ñý9‚©c<Þ8r[HáubÈó»êøÀÔoýÿó ÄÙ B°{Nq¿üÿþ4w€C±p?6@l-)\ßB¹C}ÌÏ×è=<ÿBÿûÿó"ÄÜ IF´8ZÊqú†xŠÉˆ›.%Ñq)Øû~!­‘r¢:ëdƃ[¶­5 +_ßÿó ÄÞù>´PaÄqÿßÿážÇ0ö`=˜›Ç›`ûg8IK= ë0@Ïë®' +_˜ÿ1¿ùÿó Äáx¢´hzNL¿ÿ, ùI)ÓdJE¬òBOf@`Eg–˜¶M–î,¯¶L,Z>ÿó Äæ ÁBµbÄq‚¿«òB,˜ìgʈ@Ìó}@úÀF!=b<¬†æ¢ùk{RÎx*Ëÿó"Äæ +F¬ð{Jqêß/ùÈC¾:ã%\,SÈ-™gPô‰Ì“ôq¸Xï¯éÿäÿó ÄåùF½¸JŠqÿñ€€À1…aòj øæR!-nžÉTKö­ŸÆe³XÕʃÞS3!-?ÿó Äè +IF­˜{Jq&©ßõ¶×PÐ%Qøq8ßC¹|±cThüú€-Ýazõþ©ÿÿó ÄåùBŸIÎq{½‘¯, Õòh`ùmï„h#„")=¢i9¼ÅÐ×aè}Ùÿó"Äè +Ú©{JpgÕú@³@L¡¤"ã赧·>¶w-µ^Þ±K$¡wÓ–ü¥gÿó Äç +Ú¡ˆ|pB=?¤‚7ÌêÀÜâx·3Â<]¦•¼ŽõÆ +™/ˆy°¡^|ÿó ÄåÙ>µ˜KJq†ß*ÿ“€xÀ+†Ä†ËÑè„­¾ÆaãuN·¿#¼ÀÖ3ä¦2æþÿó Äè +H¦œð~L]âŸWäÀ€ + |®R7#.[¡uäÔ1õlXìì +—|(mŠ~_ÿó"Äå @¢¨P{ÌLR>߬˜7K¥`È‚©œXIT¥g-ó‹„íMø?âçÿó Äè +â±cDpý’‚œáãÁ˜ðC‚,£¬GŽÅ[[^k˺š™Ü³o]Güþºÿó Äæ °Â¨XcÎLïþ½F*ðŠ_"Rxv¨> qZÖ…eeTÓªy¡ƒ1›Ãñwêÿó Äæ À¢­˜{ÊLê9Ýå_ôF:v'”Ba(  ¡æ + ¾æ¨Ù@Áažæùßñÿó"Äæ +â¤Ø{Äp«ò +tu)︽ÃQŽj@Ü9nEM8ÀÁa.¢Ë®#üwÿó Äåð~©XcÌH(ïoÔ\”B-Æ(ζVÍÞA1X»c†yY`Cv·iå~zÿÿó Äè ÀÂœcÊNo« +n"´ÑJSèÄP‘’½ŽäY¹&ÚŸãɭζàF¾ùFýÿó Äè +B ¸cÄq¿›ÿï¤À|©ÛMC,Þ#“cég¦¤U~‚Æg…uA0ÿó"Äç +H¢˜{ÒLOÅýÞWò`?V±¦0+‹ÀîH¥"hÄìùŠ]D»°‘¨b!ÿó Äå  c +L¡¤€}®–ë³´r +*QM`³D¢Ï¿Œ£ûÚÇ€¹c‹}þÿó Äç ¸¾œ8{ÊLPuý €J!¨Äb݈q +¾惜°ó¥žÖ0q½6,u0Tÿó Äç ø¢œ8{ÌLþ[ü—”ý6ê§\;a†+ÉóÆŠg¶•Aÿv%3›×Ï  +Ÿ£ÿÿó"Äæ ñ +œ8{ÄpŠyvý@€(ê“ù.i(|õsstÕN7O%8£‘«•™¨L&¿Ðÿó Äæ ØÂœX{ÊL—Ëû"(' …¤ ///ÉfÞ°æúŒVz Ô÷h ¸²¿Ñÿžÿó Äå྘({LSÁ/È€žÅy®ØÄ0¿0íg@ 71A.zÔ¤|ž÷º1ißÿó Äè +0â¨Xzp©¿ä}Ÿ¤/:A/‘……p¬Š>ÖêbC5dÃÒýó§’g©z§ÿR_äÿó"Äæ +â ¸{p¿Ñ¿ýKú:ú‘&´u°|X1Êe´ˆ„ÿÛò·õOn¥ +þ¿ãÿó Äå æ¤zJpºÁ‡|>7ðܹґˆ 2ØuPÅ5BgªeÙ%)ÂLŸÍýýF•ÿó Äç øÂœ¸{ÔL¿ø×1’îLKÁf_Ò‡)FˆCüÔWYØ·MßÉÊÿÃú‡ÿó Äæ ˆâœbNr¨—·ò@*ðÊÞ}Êð ¥òl±šZŒ ÿº­ñ¬ùò„UTþ‚ÿó"Äæ ð☨zNp¿÷ÿõ4> (q-V‹c‚‰«ÂXT#&S±t^• åo©ÿó Äæ ¹FœbNqÇñWý,>Ô†Ñbc™8,rG–-3”QÅ ,Dz煮ߎÿó Äæ ¸âœzJpyO~@¨!š’T•£Gœ²Aè(Kû‹hh«J)åoÄÿó Äæ AB yÊqzÖߨ,1dâ+%:¸’Š3¶®Ž 7 +$–û}¦i[ÈÎz£~Oóÿó"Äè +Xâ{ +p‡+ÿðNB!^¬ÄÝ 4 +#!‰B3ÐRl"¹mØ¥æÑ° +/ùÿó Äæ yBœzJqÊÿÐp€!8wàL9‹EhʲҋԎ~Õ ³÷VÁQýÿó Äç Øâ”zDpôÿô€]ì4jZ¢@&²Nmµ P?"† <æ˜G÷@êN_ÿó Äæ °Â”zNL@MÿÔp5­¯ªìÚ:¦ã„SÝ“Øœ 3&dsôíYãÖ¦ú«¿äÿó"Äæ °¾”8zJLþËþgò`a‰UÊVs¹¸¯QŒ/H­¥SD”˜Q‰Djnwãþÿó Äç ¹B”zDs[×ù Ì U2wåBÎUhÍbébb‘úž¤ÙzªúÔG)þ„ÿmÿó Äç +!B¥˜zqÁ‘ÿ$,ÔáÂwL…#–Ñë8Ÿ³àFÿ·OR_sæ»ü(?þÿó Äå ¤øbDLýýCÿ  g)&ª ÑFѱJ3¡” £`OÇf089¤@yº™ÿó Äç áB¡˜`ÄqĞȀ¸•Ζ¡0vÝX +m1‚'õcK®¥dêÿ9ÿÿó"Äæ +ÂDp±Ð3¾@ +›2I}‚L•8èèlxf¡0;zµFúÓTv'Õ?Íÿó Äå ”0{L·Ü/ä@€Ià)× +ΕåØw1*k1q2HD«ÔiAv?½ŸIÛ÷ÿoÿó Äç ù +”8zDpùÿ °ˆúˆ@_HtF7”Hmi #.!¨ÁÚúžT7á`X2©ÿó Äæ ± +˜bJpZÞ#ô»éEžpkIb¸ŒOJaPšH—äét@Ùe¤çÏb…¿'ÿó"Äæ Èr˜X{ Hμ¯äÀ€¯Xêå[aÚ …i:Z$u®9W3Ðÿó Äæ ‘ +œøaÄpxϯå‰5 +ž¬Îl¡~õBo‹Ñrú<¶eA%sûè»Iן´Ÿ©ÿó Äæ ¡B˜ØzDqÜÐ/—a™žÁÊ< c©,—¸-ô„Z’Êd‡je¬Ý³®#9œç¹ÿó"Äæ +rŒÃHÏNs˜ƒL¤^vjˆ¹xP+¬¹A¤€ï-J¸ÙjAÂË¿lÞôÏú·ÿó Äæ ˜xbNLÅç~ À´ª +•q‚p@…:íélˆ$}¶½Ö·™ëûV«òþ§ûÿó Äæ À¾”ø{LÅ}@7™ :¸3‰ÊG ‰ìÚߎ¹¦§ÝPÚåÚ<¿SS•¿þOÿó Äæ ÈÂŒ8{ÎLµŸÿéƒðð¦ZY€¼ "*/¬%¬~ѬºI»øèd!¥ÚW)±dþÿó"Ä娢˜({NMÚÊ~À”Š.$‹°s¹@ƲyP´¼7/Ô9•Êb²Æ~ßA§ÿó Äê +@‚”ÆHyH!Þ¥idÍK°„Â]?1Ú€Š½@~`eUTBÎ݇›·qÿó Äè +`Ö˜¸{Äpß+»8h³!2,ú”\ª–PR£ ŒSüŸÁoÿó Äè +0¢™˜{ÎLí)ß«þü +õô›åÇ q/“ìb!ÃA·Ù´úbѦ'ùÁ¯¥Ù})ÿó"Äæ È¢”8ÃÎL툵.XØÞ1hfA2H2äJL˜z°ªE'WCW£­ÈP$ +öÂf¾;ÿó Äæ ÐÂP{ÎLšÿà + †Ø³@ÀS4ëV Öe¾ùågËi-¹ ¨qKÿó Äå ⡘zÄpz/ô`À6Ä¢:Ì%áΠRD„å:„é'õ}h‹?ÞeJßÿó Äç p¢˜X{ÄLèŸzý@ ˆ ¥Ó-ÑF‰&B8& ê d‘Y+ÏÌŽ‰òS\ÿó"Äè +q>|Dqåÿä¼€€ÀÃ[·ŒTáÀ@ X–0àaiuW+ðò)nÀljôOÿó Äæ ¨~”8ÃÒHê[Ë€»[Õ4(fi‡B¢.G¡™Ð)›f½0I ;žÊ°‰÷úÿó Äæ À¾ˆÃÐLÿÄÿXFj|)•ï õÑ7cŠ)¶QkoÝëËöŒ{ýI=ê 8'/ÿó Äæ  æ P{qòŸÍLÛõ(…ÙVAÂ@ï´ÿ•ð0ÀZ'QS›\ÜÄì¼"‘°v,•ÚëǧƒìMäùúŠÀ@ÔoÅÿó Äç ¨æ”{p? ÿñ6‰UéL¨ô( +äP?\U“JN#¼2a_ÞÞ"?ÿó"Äç +0â{ÔrûQ-€06Ö_TîœÊ+Ž}¤ˆÉaÔìÝUaÂÜþÍ8|1ÿÿó Äæ Ð┨Ãp†}ñ¾0+"™úià³€¿,wçr݉´x‹¦Œxz´³,}çí°«#ýÿó ÄåHž˜ cLü—”øJ¬½²W ‘ ™æ©|LpYä²UXk‹¼sßèÿó Äê +±ŒÃÚqýEŸñÀ;úNÍ.¡'xÁ&´÷‚grÕ E:pÛý?ãÿ†gÿó"Äæ Á +”zÊsßd—î +d Ó´ªD¬]Š‹ä\zÃüê5òdNC}ÏßÐoò‡ÿó Äç Ñ +{qûË—‰ ÍÄ «¤8Þ‡®è¨øàSM½|!ÑÃ@Ö4jümõÿÿó Äæ Àâ{ +pŒ;ÛÖÀ–Ð+ŠÑR‚ €pmxlù<_¾ ;„½‚¤0ÿó Äæ €æ{ÎpðDnÊ,àˆ]¾z¤°ô– îX‚E$ +CöW6fÌ0iîwÿó"Äç +Y +ŒÂÊp£r.k_ˆç¹(~ú{°ÿÄßÿÇú™Qá[ƒI >TêpЗIϱa©ÿó Äå© +˜yÄp¾èׯPÓ?ÿrÿù?þ? I`=DMãʨ=Õ YÒ’)ªuÿó Äé +iFŒzÄqqðò>¿‚þoÿüÿQÀóï~>•©3žhØÈÙáD›œö‹™M,ÿó Äæ x¾ŒÃLabt1>2z¿ù_É€ +L&Ϥ!T ³é*€|K#—Õ‚”ÿÿµÿó"Äç +8Ú­¸J qêêvßÓÿâ_þ4 ˜}#JˆP³f§ +K3¬®¡BÈÿõ}>ÿó ÄÚ +yF°3Êq€ÿýüŠÎÔ¹Œ;Ï›.nÒâ¤À…—=”µ&qt +Wç|©Åêfÿó Ä×ÙF´bDqÿ”ü °{s +È +®0­:¦CB…‡ktW3aÈ¿™§3µ/¯ÿó ÄÚ B¸hcDqÿÏÿê0 ˆÀ:dÂ`¢6P2ã@¸"¬·L½{%W ¯PÆù¾ÿó ÄÜ ¢´@{ÎLßþßÿà,Aèšl)PóEŽkAh ˆ¬|M™u—î?PwUéØ3õúÿó"ÄÞ 1>¸paŠqÿù¿þ8D€L³Ñ9F¾¾ŒÜžâ¯­¦^r¥Ç7özµèô'Íÿÿó ÄáÉB¼pyÄqåÿô<4rØpŽÆVªà°—»KϺɂc: +1[uåUÿíÎÿó Ää袸hzNL|·ä–ÄMÑ* õ•FLJùZf¶3]xI(¿üç5áEúÿó Äç éB°pzÄq·¡üoä‰FÕ±–Y¢:ëm‚î¬W¯ÚºÎd °DY:%9Géÿó"Äæ éF¹¸JÊqÓùϨ~TÅÐŒçQpTÙYÇþ¥ÛÌ}ü½Æóa@Ûz?Ìÿÿó Äæ qB¬0{Jq÷ÿòŽà ZT✓†±euCRjœŒ-?Bñ3GíNq'Õÿó Äç ¹B°Xc +q¨7ò¿‘‰€y­É¥x÷vÛx"’x ¡¦–*UE;˜²miç{ôÿó Äç ¢¤({ÒLÿÿOÿAÀd.UDÝÚ‘a¨6À¶oÒ#\ªA_^,«'ÿó"Äç +Q +¤P{Êpÿéý )m·Æ|v§ +¡—Oj|Ž$£+ù“FåL³}ðë-]¿òˆÿó Äåðž¨P{ÎLýN“¬¼•—’y+ü³ +ÇxI¼ÇÒú•VC_Óª>Œ‹æ_ÿó Äè ùBµJÎqÿ +ý<€«\†÷jsÞ\Eœ™Ãàê[š!E@( J¸úäÿó Äç +¢ X{Lÿoef@Úà~Òñ8­;€i‰âNn0@à/—IÊU2䨩5F·üÿó"Äæ +B¬X{qÍÿäþž¢@@@*©@÷p~ììU„^”M…Ea·?{`‘¶3¦o:‚Þÿó ÄåØš¬PzPLËþ€B" +à1fåK± Ñc¹d¡8«[ê:yÝ)ùõGKÑ¿ûÿó Äè +Ú¬xzÄpÿüKÝèV÷Ê_fªè‘RÓƒØè¡2PÒ/ꩽ1íº§}ÿó Äç +B±zÄqßží¨ÈìÖñDl§à i©ã!†Ø&S©Jù0¾4{KžAÿ´?ÿó"Äå P~±zDHç*®_õ€¦}Hn>V=£ôò|wL±ò¹¬lBŸ~/û_éÿó Äç +B¨X{Dqýúô ­ xLîIô[€°E»ÌÁØçˆëüe¬,Ê$zåvã®!ÿó Äå z²XzFHü¿é¢ü+3‚4ªêª€ ª!º¹~þ~ ûÿÿó Äç + +­¸zDp§‰Y¿&—à_'‚=;ÅŽ%Ž^xorƒ¾¤\b4æ±ßÌû´†'WáÙÿó Äç ÙB¤XzDqÔ_éa… Ìg³Äi&‰ !\“)T«½jG-¢‚¦­½m¯þÿÿó Äæ Xâ¨XyÊpò~¯ÒÖ uÑ7Í®Fõ"è.ŬG¶çtÈÍ^]õÊ,Ïü/ÿWÿó Äç + B XzÄqéñs¾¢`\Àe¬z‡ $ÐhÌr̯`R~û¨&t—án.n­Á¿ÿó"Äå Xâ¤XzÄpüùWúI)ÿj,— žÝ9‡l_zXK7Ëðû­½º—·ì!ÿó Äç øâ xzNpQÏ’¢`e$r…‰ÀOr6ÏÁž¦7ÏY~@›®»ãÜö)n =ÿó Äæ Àâ¤Pzp°Xï_è0¾^Ù\<ß"Ïò’Ö6!° +5ñݤÝÊm³tn~Ÿÿó Äæ ¸²œ0{ÐLßò?ÿAÀk m­ ! (—ŽÖQÅiËw¯¨êš¬Ú«ôñ‰þÁÿó"Äæ Ù + XzÊpc¼·ä?á—:"çq€> ï…\…Þ¢ÊE¨ÞWÚnÝ‚>ÿó Äæ Èâ Xzp¸1¾ß¨¢ÀU°’$šÙ?> +#PñÀ$eV'·1Òcï™w÷æý”ÿó Äå â¬xbpoS¼TFôàc`hžÎ’½‰ƒa Kr1=ÕÝÕÔÄ·¿9?J†ÿó Äè +@â˜XzÊpÕ¿ö*Àaèn“JÌ ¥»©Æ¡aøˆ.çdù–ë?¿ßÒÿó Äæ ÙB¥˜z +q¡Ÿõþ£ÀµÀi¨ý¬ªeÙ¢­*M7)æfvWñn¯Áÿÿó"Äå Pâ XzÊpê7§ë)X > 09¤—fà+m@z¦ŽØªÛânå‰Ç+PyL-~¾4ÿÿó Äç ðæ”0zDp£Öï*HœÀa½8‰6Ó¬&Ýä5ßÂps‡ïÙ| %f§Žur/¿ê=ÿó Äæ ¸âœXzpò£ÿ$¹ÿÐÕ/íž•æ +Ù¦„÷M”¥u~4ÿlàVS¢þÿó Äæ B XaÊqè7–=ô75 +³Êx.P=«³[6§­|[8‹ËªeEÙW¨Nìÿó"Äç +QB˜Xz +q‹4wàyO#u– ˜j3³És ã•ž‚!uõd%pj³}òžÿó Äå â Xy„pÿ '²£@G¦FJæ ¥¼l#˜Ð¯nD˜É˜m³?)Õ!ÿó Äè +0²”8{ÊLë~­   +PC«5á‰8¤uÊ…B««V3kÃur(žÿÓWÿòÿó Äæ ¸º˜X{ÆLfa@÷à{âµ Æg ¶mÎÊèKºÎî!íä5îmA“²†ÿó"Äæ Èâ¤xzp²Œ¹Ý§¤Àd} ¼†êËǽɘÈÂâÑ7¦K†ÕFóس¨~Žÿó ÄæÈ– (ÃÎNïÒíÀn) ó¡0`?˜º4a”oo¾)ã.{àÿcŽLö°›Ê¤ÿó Äé +™¤XzÄpáSõ䀶àcQÿnìÝjêÌKÞF­¸zUt3Ð=ê[­nqÿó Äå ²¨xzÎL_%Éæ@;vúÉ”mõ² ÃÏxîE­g:Ãß 6kÁÌúí¨0ÿó"Äç ˜¶œPÃÌN%‹>ÏSþ€;@ÁF +äó"øŸÝêÌë#y¼%% +Ðì}Þ&ÿó Äè +PÒ XzÄp€qê]!³6쬡èsL%µl. VlÿÊy ‰ƒRò©=[þÿó Äå¸v XÃÌHQú$}`/àcfØ–7%0ö5ñ˜‚UE ½L 7ÏP·ý+ñÏ‘ÿó Äé +z˜X{ÒHÜ1Gö¤i¿æéä^–^Q9>us/Aàãf2)cÎóÚÛvøWñÿó"Äå P~ XÃÊHÒ:·ý +Õí +Řº9í[fÕ@qÓÿ )–umb¾¿„…"ÿó Äç + ²œxÃÄLâ=+wE ð †Ò¡þ­­4kÃÚ/¾°ÌaúHßqê7Ø ÿó ÄåØ~ x{ÊI3ˆÀü*ˆ©RèÌ.lÇc:#*wå)°¼ÌôuH s3´Ìa@ÿó Äè +²Œ0ÎLQ¿ÄÓéX(+ËÝV%”f»„é4@½{Ñ…\Îkë⬭Rܲÿó"Äæ ðÒœX{Dpÿ¨ß—$Ø_ÈÊKTð  èh¥JÉ€µÝÊ[í¿S +‡¸†kYÑ÷ÿó Äæ XÒ xÃJpÿç<ª,´‡2™’ðŒŸR¥ÄRÀyüÙW}¨^ÌËí[ Gÿó Äç +ºœx{ÊLöú€À’`4Þ¤‹uÙ(œªÕ&€¥Ôjh—ßU¿vÞ¢›ôÿó ÄåÐz˜PÃÐHrßõ%òàÙhh€Ï`+¤BÒˆ¬`fjÅûT´Õe}£¯èÿó"Äè +@â¤PzJpå¾ ÿ +ȧ Ãz̃öv鄸}$˜2½H—9º¯[vÈûžJ×ôqÿó Äç øâ 8zÄpŸôú€ Ô U +Òͽ¸RÙŸBVÐõ`TqiuL^››ïöÿó Äæ Ðâ¨xzÄpÿA¾5U¼;,Ñ.é}0䧈ÙÊÕ%õ‰2ž<5h“ksÿ†õ~ÿó ÄåÐâ­yÊp ¿Ü߀µ …‘ŠŸ’B'T§B  ÿ;ŽzŽ]·Þ¾ƒ“ÿó"Äè +™¥¸zÎpû…}ˆØØûÑp†~;`i +ºsC?‹ÍOK½ÿ(·üHÿó Äå æ¨xaÎp¸AÞ!€&#ºb4)K[D©ý×P|yOëVE~⮯ùoúÿó Äè +QœPzÊpÿûü Üà|%FAd3DÕâ ¬Œš{ã8C¬Ö_ªííÎ2ÿó Äå æœPzÄppOëg– U`6WŒíhBcM9â=’Åó"!qÛ‹ÿáÚmx6ÿó"Äç +HæŒ(ÃÄpý_Ä +ìàyTC”³kR^öCÊbDz¸Â£FÇwü¨Íþÿqÿó Äå æ¥z +p¾§Õ”€+¶:€G-/8n4;WE€˜ zïþF1ϧ•Î¤ÿó Äç ÀÞ˜xzÊpN‚ßò`@òA&¸Š\`à6ƒ­“IžËW°4IŒÎ£1Ù•Þîÿó Äç èâ”øÂÄp-ûÿ&@ úfÚ½Ý Lj±@r+%±’:Þ˜€w?äIÆZ`è¿Ôÿó"Äæ øâ˜XzÄp9þùþž"@„"ÜÛÚX‹ñZÅ©@9]–ó¡@~‚c×LO)zÿó Äæ ˜æœxzÄp=a€à>…¨4¶x;Z­‡íÀê”åôó™oæI`†)/*o2oê¬ÿó Äæ €âœXzÊpÃÉþ @ÒeÐÒ:S‹;=š$œ¾%Â_-ÿî!eiOœ[úeÿó Äç + â¤øbpu-éú@Á+}Ù$•»…ó¿×ŸH(D©}Œð§žÇä «”jå[nÿó"Äå 8¾¤{LÊÚÙÏXÈ´}×沎©š7»€¢r²FÇ™&Ʀ˜rôiß.¿êÐÿó Äè +a¹˜zJqF\~€áG“åTà=ÅŒ¬cx“x†±¸qñpÞá“UœLÜö%Õ5ÿó Äåྼø{JLÊk\Å@ÄL l£´ã|aÓ¬`+¨t¹–Žq-ôI\`§Œÿãÿó Äè à¨ÆL~SéÄú_ð”žGAç«É +ØÊa‘D.Î;™cÍ@åUSy›ÿÿó"Äç о¬8~L@ª\ø˜ìûe’D\$³k6ãOÈE‰gIf¥šáCÂuå‘­üÿZÿó Äç ¨’°XÆLš‰fÅý ˜FüíRW8h]«Üm Ëà|&JT·šÿøçmÿó Äç àî°XÂDplõÐ?ÔÊIql­Ä—À²ã懃PX“w¬6H¿¬MÞ¼ ÿøÛÙÿó Äæ о´x{ÎLSØs¼ˆ$Âpuk(Ú¨‹ó8øt®22ÑŽ9î'«?O?ðMéÿó Äå ¾¬P‹ÊLò[EðGù0ù ~W.OPq$»²|€´W(:‰+ÖÂ¥ác«½~ÿó"Äè +p¾ Æ +L7dþ€dÚ¼}!ÂÓ,È”8ÆëFa9£B%ö˜Üá6¡ÿó Äæ Øî¤ÂÄpiEôÁ½à}ÇDÌcV•ùV>#[Ùuü‡'RùLŸðwƒÿó ÄåȨ0{ÎN˜‡N#„?Ñ‘œ¢A'c *Px=ÆŒã]æÇó¡dÒó¡9Eÿó Äè +(îœÊJr~Sæþ +˜¸Â`ˆiøsŸ·ˆh³òÖl7B*ÈL& +âNÿó"Äæ + ÂDp¯/‹bO¤€>º?:j."²L‰QÔf=—¾µ·Wÿ]„©Íe»ÿó Äå ¾¨X|JLÕ¯ (Op¨ée'D›ŽÁ20P +ÉŽœî¹U®"þöÿó Äç Èî 8ÁÄp7 õÐB¶@~Õ{ìÏPG.¡'¬*“£­9jÕ8håÐy×þÿó Äæ €¾¨XÃÄL%ÄÙL€¤òÊtâ …²7ä°™|Ä·ôºüî)"}´ÅE*ÿó"Äç + –”ÎNÊâ—#éAþ~–P¢ETIÉ‹C²ädŒ—jÔb¢'â7óßLËÿó Äæ °Ž 8Æ +Lè“øÀ2xcAT)€Ê=…½V@#û‘¼”Û +Öa‚)2kuzÿó Äæ 8Ž˜ÆNè“ù € +ÜF×FN‘¬hÑ¥@ŽŸ ¬y~þ`Ç;?‰ÂõX¤ÿó Äè +8yÊpÁ\£ €ØäX—Ì/D b?6t*ÓN&¼jãR.ÿ*ÿó"Äæ è¾ XÄJL¸³¤>D@»cåŒd˜*…±BH~—F{¡Brÿ|pŸ_š·ÿó Äæ €Ž˜~Lôù0ù -¸³Xd#Še3°84‡÷X „ŽBðãsÉÕÿó Äç é XÂqVWå¬â@öN€ÂáÀá(ÀÓ‚0VåPÏÜ©LáL©0PéZ5Þ[~ÿó Äæ  ŽœX{ÊL‹õ`fçs*Þ‡Š¼ +„ +Mod‰ Ê“…K:G¿ñ'=~Xÿó"Äæ ÈŽ˜8ÃÎLsμBÿ€$|êw=E(X¨âä 3 ! ì*K)ùEð¿÷¯üÿó Äæ pŽ x{ÄL[ý M ~“ê‹5ÉRž…ÅHÁ¤ø)— ˜‚×O¹ß Fý«ÿó Äç  ÖœXzpÿgÿ@d¢j0]囉@DÄ̵Cdß7þK&êvÓÿó Äç + –”0ÃÒLûÁ¿ˆ~€èc‹ÆQîa‘$Õ|SŽ²–Aó°ŒþgM¦¶êeáÕÇ}ÿó"Äå Ž¨XcÊLÌí ¿OÄ`Vèà© ³ªÀ(PËKG3JQ¿Pc%ÌTg±×éÿó Äé +ˆÆ¤XzDp_«é˜2ÖaV2Ô^E‰œfuú]˜\8È{‹©¥yþ€Pý†½1*ßÿó ÄåØî¬øyÄp¡oä>$8àexSYÐÒÚF;àÑQ×i[ÿó Äæ ؾœp~Lú>(ŸU‘*aÇ[2Âã«.KˆnG|ÎJ“Ðôïø+Q›ä«ÿó Äå ¦¤x{JLÿŸÿ†÷C˜ë)JîP¸«°’ +2\èð+¦4åÕœÊKÿ™ÿó Äè +@Ž~JL½þx7ôýÜÀvq<àŒ.tìš öz’õuÓ™ÉÅ \ÁëÊ-üÿó"Äæ  ¾˜p{ÄL§È<½ÐG"ÂS¦ÔIÂöx’HŽIŸßÙä:§r½ÚS“´¼ +oÿó Äç +î”0ÂÄpå_áÐÕ®Fc"Áľ6p•¥)1Vî¸×&‚óóÇ÷ür©ÿó ÄåàfœP{Ò( á?Í€®À~:—,ÀÏ!©FãÀÇ +OÙý¦³À¤ +!J¿•×—ÿó Äè +˜xÂÄq[ùMZÝ ~)âô5QJÝyÈ™¡{Ô!nOdŽºÙ?ðkåùÿó"Äç +XÆŒ0ÂÄp*ÿÐE½dàkcÍ^aŒÀöÍËJˆË¹˜µvNßø¢2_c×ÿð›Õ­ÿó Ä刎 XcÄLoéúõœ+M ²Tñ†^–Žl-ÈÞÔu{1ݸðܨÿó Äé + ¾œx{ÄLùE¿«é˜NwIÀX¥’Øab6sBq–G;¨¿&û£!H­ éçÿó Äç +’ x{ÌL•F]oèú@Ê¥à}wŠW€ÊU +r‰°*A‡ðÁ¶­áCQ1¢Þ'«(ÿó"Äå PŽ X{ÎL·ôý€¯àzY—@¥Q°7ô¨0_<Ãb·ÿ,s5C|n½kÿó Äç Øî˜XÊÄp;+HÜÁ8Kè)ƒZriI÷’Rz³YoãÿD„›Pÿÿó Äæ ˆ– X{ÌL&ß8OÌaø“ñº;ehu㉡ + ¶Ž~gžìgCþ)W°Ï”ùÿó Äæ ÀŽÎLu¿þªúB¸aGÂñXW©ñ#ð`TZ1rb#ٯȀ"E Ï:ÿó"Äæ +–8ÆL¼¢öÿ¬ô( í-¤G¦Ô`$3lÀ)È /uÕv5þ¨BÁ<þ +ÿó Äå Ž¤XÃÊLÞ]oå>€ ÿàÿ_kÀô¯†;YĤ¤‡,#LâÃÈ)õêÔ³Ìlÿó Äç ¨ŽœX{ÊLï   çUY”¢`BÇúziU ôj¦\OAè¸Ï•ý~x6ODÿó Äç +’Œ0ÎL¿ÿ¤¨!ÿÈBYÁþtÖ2–B3ˆy½Ï*ãx‹ªÎñ•}Kÿó"Äå Ž0ÆL{*S©Áí`@ŸîØûmjŠЪ-êÑ +¿:ç•åáîÑc^O3ÿó Äè +0ŽŒÆL·C½ö€x¢q<-¢Ä[U¤õF[8À[¦Z¦—‰þq[_ëÿó Äæ àŽŒÆL8ý.ò †î9uí0|‰vÛ¹7§Ãi—1L¡V‘·ƒú¾ýZÿó ÄåàV x{Ì$6¿ÏÝ@)týÀˆÀlù:AĪ°òÓ-ª&#‚a1 +Ǥ¹Eÿó Äè +1˜xÁDpÖ©>+ò`@/ÿÝ2ØÖHÏÇeªvxOqàÍ]ð†úD³Œÿó"Äæ +Žœx{ÊLÿjå nêæ†Þ’ÁÙÀvæGÉæ~UpjÝ>5µ']Ë(ºŒñ#ÿó Äå Ž¤x{ÊLûŽéwˆ@÷à}!,¶\$IUÊB`僇(±Z#²nOçctþ­7ìßÿó Äç ØÖœXzpø·ï  ¾óSñÇ©NaB(œ(¢}ÒàØ$êS¨ö‡§ÿóéêÒÿó Äæ ¨Ò xÃDp·Õ‘õø¯ +üäðk>áÀJd#pˆàÏ•­Kå +÷hQ¼cõ¿ÿó"Äæ +–˜xÄ +L[éù ÷à~Ÿ¹ÈóI¼PªîìY]-Ñ%äš³JõžðOéþÒ[Úÿó ÄåÀŽ¨x{ÄL¿#bu€$ä Lä@…‘œQ5Zœq`/ø'†e^U¼xåÿó Äé +ŽXÃÊL>æëú@óÓ jª>0%tÙkN{¢ì8Žþб×q’¡3ø˜ÿó Äå  \ No newline at end of file
trunk/orp/orp_soc/sw.old/mad-xess/songs/Moonlight-16.mp3 Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/config.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/config.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/config.h (revision 782) @@ -0,0 +1,100 @@ +/* config.h. Generated automatically by configure. */ +/* config.h.in. Generated automatically from configure.in by autoheader. */ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: config.h,v 1.1 2002-03-28 20:38:50 lampret Exp $ + */ + +# ifndef CONFIG_H +# define CONFIG_H + +/***************************************************************************** + * Definitions selected automatically by `configure' * + *****************************************************************************/ + +/* Define to empty if the keyword does not work. */ +/* #undef const */ + +/* Define if you don't have vprintf but do have _doprnt. */ +/* #undef HAVE_DOPRNT */ + +/* Define if you have a working `mmap' system call. */ +/* #undef HAVE_MMAP */ + +/* Define if you have the vprintf function. */ +/* #undef HAVE_VPRINTF */ + +/* Define as __inline if that's what the C compiler calls it. */ +/* #undef inline */ + +/* Define if you need to in order for stat and other things to work. */ +/* #undef _POSIX_SOURCE */ + +/* Define if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to be the name of your default audio output module. */ +#define AUDIO_DEFAULT audio_null + +/* Define if you have mmap() and you want to use it. */ +#define USE_MMAP 1 + +/* Define to enable diagnostic debugging support. */ +/* #undef DEBUG */ + +/* Define to disable debugging assertions. */ +/* #undef NDEBUG */ + +/* Define to enable experimental code. */ +/* #undef EXPERIMENTAL */ + +#define EMBED 1 + +/* Define to enable pcm output trogh or1ksim simulator */ +/*#define OR1K_SIM 1*/ + +/* Define if you have the getpagesize function. */ +/* #undef HAVE_GETPAGESIZE */ + +/* Define if you have the madvise function. */ +/* #undef HAVE_MADVISE */ + +/* Define if you have the strcasecmp function. */ +#define HAVE_STRCASECMP 1 + +/* Define if you have the strncasecmp function. */ +#define HAVE_STRNCASECMP 1 + +/* Define if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define if you have the efence library (-lefence). */ +/* #undef HAVE_LIBEFENCE */ + +/* Name of package */ +#define PACKAGE "mad" + +/* Version number of package */ +#define VERSION "0.13.0b" + +/***************************************************************************** + * End of automatically configured definitions * + *****************************************************************************/ + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/config.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/README =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/README (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/README (revision 782) @@ -0,0 +1,24 @@ +This is MP3 decoder for OpenRISC configured for the xess board. + +Make the mp3 player with: + + ./makes2 songs/Beethoven-fuer_elise-16.mp3 songs/Moonlight-16.mp3 + +This should build mp3 decoder for or32 and also put these two +songs in the memory image. + +You get three outputs: + +- minimad : this is executable in COFF binary format that you can use +on the simulator (type "sim minimad", uncomment the OR1K_SIM define +in config.h to get PCM output in a file audiosim.pcm, which you can hear +using command "play -t raw -r 22050 -s w -f s -c 2 audiosim.pcm") + +- minimad.s2 : this is srecord siutable to be merged with bitstream (*.exo) +that is burned into flash memory in xess board +(type "../utils/merge2srec xfpga_top.exo minimad.s2" to get out.exo and then +load this to xess board) + +- minimad.mem : this file is used to initialize flash model for the RTL +simulation (sim/ncsim/run/run_sim is expecting this file so you have to +build this decoder before you run the simulation).
trunk/orp/orp_soc/sw.old/mad-xess/README Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/fsyst.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/fsyst.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/fsyst.h (revision 782) @@ -0,0 +1,56 @@ + + +/* Where does filesystem start */ +extern unsigned char *root_file; +#define ROOT_FILE ((struct file_struct *)root_file)//0x20000) + +enum enum_file_type { + /* Must be first file. */ + FT_ROOT, + /* Track number. */ + FT_TRACK_NO, + /* Track name. */ + FT_TRACK_NAME, + /* Track data. */ + FT_TRACK_DATA, + /* Last record. */ + FT_END +}; + +struct file_struct { + /* Length of file, including header. */ + unsigned int length; + + /* File type. */ + enum enum_file_type type; + + /* Actual file data. */ + unsigned int data[1]; +}; + +#define HEADER_SIZE (sizeof (struct file_struct) - sizeof (unsigned int)) + +/* Returns file, that holds track number. */ +extern struct file_struct *find_track_no (int no, struct file_struct *root); + +/* Returns track name from file struct, pointing at FT_TRACK_NO. */ +extern char *track_name (struct file_struct *fs); + +/* Returns track data from file struct, pointing at FT_TRACK_NO. */ +extern struct file_struct *track_data (struct file_struct *fs); + +/* Finds last record. */ +extern struct file_struct * end_file (struct file_struct *root); + +/* Adds file to the end of file list. Returns new file address, if + sucessful, otherwise NULL. */ +extern struct file_struct *add_file (struct file_struct *root, + struct file_struct *file); +/* Initializes filesystem at root. */ +extern void init_fsyst (struct file_struct *root); + +#ifdef EMBED +#define swap(x) (x) +#else +extern unsigned int swap (unsigned int x); +#endif
trunk/orp/orp_soc/sw.old/mad-xess/fsyst.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/minimad.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/minimad.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/minimad.c (revision 782) @@ -0,0 +1,416 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: minimad.c,v 1.1 2002-03-28 20:38:50 lampret Exp $ + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifndef EMBED +#include +#include +#include +#include +#include +#include +#endif +#include "audio.h" +#include "mad.h" +#include "fsyst.h" + +volatile int button; +//#define OR1K_SIM + +#define AUDIO_DBG 0 + +#if AUDIO_DBG +extern unsigned short wave_dump[(0x40000/2)]; +extern int wave_seg_index[0x10000]; +extern int wave_seg_nb; +extern int wave_index; +#endif + +#define SRAM_BASE 0x80000000 +#define SUCCESS_CODE 0x11223344 +#define REG32(x) (*(volatile unsigned long *)(x)) +#ifdef OR1K_SIM +#define BUTTON_STATE (0) +#else +#define BUTTON_STATE (!((*((volatile unsigned long *)0x40000000)) & 0x80000000)) +#endif + +void report1(unsigned long value) +{ + unsigned long spr = 0x1234; + asm("l.mtspr\t\t%0,%1,0x0" : : "r" (spr), "r" (value)); + return; +} +/* +int test_button(void) +{ + if(BUTTON_STATE) { + button = 1; + return 0; + } + else { + if(button == 1) { + while(1) { + int l = 0; + int i,j,k; + for(i = 0; i < 3; i++) { + for(j = 0; j < 100000; j++) + k = BUTTON_STATE; + l += k; + } + if(l == 0) { + button = 0; + return 1; + } + } + } + else { + button = 0; + return 0; + } + } + return 0; +} +*/ +int test_button(void) +{ + if(BUTTON_STATE) + while(1) { + int l = 0; + int i,j,k; + for(i = 0; i < 3; i++) { + for(j = 0; j < 100000; j++) + k = BUTTON_STATE; + l += k; + } + if(l == 0) { + button = 0; + return 1; + } + } + return 0; +} + +# ifdef EMBED +int main(); + +void c_reset() +{ + register unsigned long i asm("r5"); + register int longgggjump asm("r3"); + register unsigned long main_ofs asm("r4"); +// memcpy((void *)0x80000000, (void *)0, 0x1000); +/* for (i=0x100; i < 0x13000; i+=4) + *(unsigned long *)(0x80000000+i) = *(unsigned long *)(0x0+i); + main_ofs = (unsigned long)main; + asm("l.movhi r3,0x8000"); + asm("l.add r3,r3,%0" : : "r" (main_ofs)); + asm("l.jr r3"); + asm("l.nop"); +*/ + main(0,0); +} +# endif + +/* Root file location. */ +unsigned char *root_file; + +static int nchan = 0, speed = 0; +# ifndef EMBED +FILE *fo; +int output_s(unsigned char const *ptr, unsigned int len); +# endif + +static void +output(struct mad_pcm *pcm) +{ + unsigned int nchannels; +# ifndef EMBED + union audio_control control; +# endif + mad_fixed_t *ch1, *ch2; + + nchannels = pcm->channels; + + if (nchannels != nchan || speed != pcm->samplerate) + { +# ifndef EMBED + control.command = AUDIO_COMMAND_CONFIG; + + control.config.channels = nchannels; + control.config.speed = pcm->samplerate; + printf ("%i ", pcm->samplerate); + if (audio_oss(&control) == -1) + return; +# endif + nchan = nchannels; + speed = pcm->samplerate; + } + ch1 = &pcm->samples[0][0]; + ch2 = &pcm->samples[1][0]; + + if (nchan == 1) + ch2 = ch1; + + { + unsigned char data[MAX_NSAMPLES * 4 * 2]; + unsigned int len; + + len = audio_pcm_s16le(data, pcm->length, ch1, ch2); +# ifndef EMBED + output_s(data, len); +# endif + } + return; +} +#ifdef EMBED +void report(unsigned long value) +{ + unsigned long spr = 0x1234; + asm("l.mtspr\t\t%0,%1,0x0" : : "r" (spr), "r" (value)); + return; +} +#endif + +struct mad_pcm pcm; +/* Generates beep of 32 samples with sampling frequency + freq, vould = 0..31. */ +static void genbeep (int freq, int volume) +{ + int o = MAD_F_ONE/256 * volume, i; + pcm.length = 32; + pcm.samplerate = freq; + pcm.channels = 1; + for (i = 0; i < 8; i++) + { + pcm.samples[0][i] = i * o; +// report(i); + } + for (i = 0; i < 8; i++) + pcm.samples[0][i+8] = (8 - i) * o; + output (&pcm); + for (i = 0; i < 16; i++) + pcm.samples[0][16+i] = -pcm.samples[0][i]; + output (&pcm); +} + +static void short_beep () +{ + int i; + for (i = 0; i < 5; i++) + genbeep(44100, 8); +} + +/* private message buffer */ + +struct buffer { + unsigned char *start; + unsigned long length; +}; + +/* 2. called when more input is needed; refill stream buffer */ + +static +enum mad_flow input(void *data, + struct mad_stream *stream) +{ + struct buffer *buffer = data; + + if (!buffer->length) + return MAD_FLOW_STOP; + + mad_stream_buffer(stream, buffer->start, buffer->length); + + buffer->length = 0; + + return MAD_FLOW_CONTINUE; +} + +/* 4. called to handle a decoding error */ + +static +enum mad_flow error(void *data, + struct mad_stream *stream, + struct mad_frame *frame) +{ +#ifndef EMBED + struct buffer *buffer = data; + fprintf(stderr, "decoding error 0x%04x at byte offset %u\n", + stream->error, stream->this_frame - buffer->start); +#endif + + return MAD_FLOW_STOP; +} + +/* 5. put it all together */ + +static +int decode(unsigned char *start, unsigned long length) +{ + struct buffer buffer; + struct mad_decoder decoder; + int result = 0; + + buffer.start = start; + buffer.length = length; + + /* configure input, and error functions */ + + mad_decoder_init(&decoder, &buffer, + input, error); + + /* start the decoder */ + + result = mad_decoder_run(&decoder, MAD_DECODER_MODE_SYNC); + + mad_decoder_finish(&decoder); + + return result; +} + +#ifndef EMBED +static void *init_flash (char *filename) +{ + struct stat f_stat; + void *flash; + FILE *f = fopen (filename, "rb"); + if (!f) + return NULL; + stat (filename, &f_stat); + flash = malloc (f_stat.st_size); + if (!flash) + return NULL; + if (fread (flash, 1, f_stat.st_size, f) != f_stat.st_size) + return NULL; + fclose (f); + return flash; +} +#else +extern unsigned char flash_data[]; +#endif + + +void __main() {} + +int main(int argc, char *argv[]) +{ + int i; + int result; + + +#ifndef EMBED + union audio_control control; + if (argc != 2) + { + printf ("Usage: minimad image_file.mfs\n"); + return 1; + } + if (!(root_file = (char *) init_flash (argv[1]))) + { + fprintf (stderr, "Error loading image file '%s'\n", argv[1]); + return 2; + } + + control.command = AUDIO_COMMAND_INIT; + control.init.path = NULL; + if (audio_oss(&control) == -1) { + printf("audio %s\n", audio_error); + return 3; + } + fo = fopen ("audio.pcm", "wb+"); +#else + /* In EMBEDDED applications we have flash data linked. */ + root_file = &flash_data[0]; +#ifdef OR1K_SIM + asm volatile ("l.mtspr r0,r0,0x0FFFD"); +#endif +#endif + button = 0; + + + for (i = 1;; i++) { + struct file_struct *fs, *datat; + fs = find_track_no (i, ROOT_FILE); +// if (!fs) break; + if(!fs) { + i = 1; + fs = find_track_no (i, ROOT_FILE); + } + datat = track_data (fs); + short_beep(); + +# ifndef EMBED + { + unsigned u, v; + u = swap(datat->length); + v = swap(datat->data[0]); + printf ("Track %u: %s\n", i, track_name (fs)); + printf ("%08x:%08x:%08x\n", datat->data[0], v, u); + } +# endif + result = decode((unsigned char *)&datat->data[0], swap(datat->length) - sizeof(struct file_struct) + sizeof (unsigned int)); + if(result != 1) { + while(!test_button()); + } + } + + short_beep(); +#ifndef EMBED + control.command = AUDIO_COMMAND_FINISH; + if (audio_oss(&control) == -1) { + printf("audio %s\n", audio_error); + return 3; + } + free (root_file); + printf ("Done.\n"); + fclose (fo); +#else +#ifdef OR1K_SIM + asm volatile("l.mtspr r0,r0,0x0FFFF"); +#endif +#endif + +#if AUDIO_DBG +report1(wave_index); +report1(wave_seg_nb); + +report1(wave_seg_index[10]); +report1(wave_dump[wave_seg_index[10]]); + +report1(wave_seg_index[11]); +report1(wave_dump[wave_seg_index[11]]); + +report1(wave_seg_index[12]); +report1(wave_dump[wave_seg_index[12]]); +#endif + +while(1) { + REG32(SRAM_BASE + 0x00) = (SUCCESS_CODE >> 0) & 0x000000ff; + REG32(SRAM_BASE + 0x40) = (SUCCESS_CODE >> 8) & 0x000000ff; + REG32(SRAM_BASE + 0x80) = (SUCCESS_CODE >> 16) & 0x000000ff; + REG32(SRAM_BASE + 0xc0) = (SUCCESS_CODE >> 24) & 0x000000ff; + } + return 0; +} +
trunk/orp/orp_soc/sw.old/mad-xess/minimad.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/acconfig.h =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/acconfig.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/acconfig.h (revision 782) @@ -0,0 +1,73 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: acconfig.h,v 1.1 2002-03-28 20:38:50 lampret Exp $ + */ + +# ifndef CONFIG_H +# define CONFIG_H + +/***************************************************************************** + * Definitions selected automatically by `configure' * + *****************************************************************************/ +@TOP@ + +/* Define to the name of the distribution. */ +#undef PACKAGE + +/* Define to the version of the distribution. */ +#undef VERSION + +/* Define to be the name of your default audio output module. */ +#define AUDIO_DEFAULT 0 + +/* Define if you have mmap() and you want to use it. */ +#undef USE_MMAP + +/* Define to 1 if NLS is requested. */ +#undef ENABLE_NLS + +/* Define as 1 if you have catgets and don't want to use GNU gettext. */ +#undef HAVE_CATGETS + +/* Define as 1 if you have gettext and don't want to use GNU gettext. */ +#undef HAVE_GETTEXT + +/* Define if your locale.h file contains LC_MESSAGES. */ +#undef HAVE_LC_MESSAGES + +/* Define as 1 if you have the stpcpy function. */ +#undef HAVE_STPCPY + +/* Define to enable diagnostic debugging support. */ +#undef DEBUG + +/* Define to disable debugging assertions. */ +#undef NDEBUG + +/* Define to enable experimental code. */ +#undef EXPERIMENTAL + +#undef EMBED + +@BOTTOM@ +/***************************************************************************** + * End of automatically configured definitions * + *****************************************************************************/ + +# endif
trunk/orp/orp_soc/sw.old/mad-xess/acconfig.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/audio_oss.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/audio_oss.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/audio_oss.c (revision 782) @@ -0,0 +1,163 @@ +/* + * mad - MPEG audio decoder + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: audio_oss.c,v 1.1 2002-03-28 20:38:50 lampret Exp $ + */ + +# ifdef HAVE_CONFIG_H +# include "config.h" +# endif + +#ifndef EMBED +# include +# include +# include +# include +# include + +# include "mad.h" +# include "audio.h" + +# if !defined(AFMT_S32_NE) +# if defined(WORDS_BIGENDIAN) +# define AFMT_S32_NE AFMT_S32_BE +# else +# define AFMT_S32_NE AFMT_S32_LE +# endif +# endif + +# if !defined(AFMT_S16_NE) +# if defined(WORDS_BIGENDIAN) +# define AFMT_S16_NE AFMT_S16_BE +# else +# define AFMT_S16_NE AFMT_S16_LE +# endif +# endif + +# if !defined(SNDCTL_DSP_CHANNELS) && defined(SOUND_PCM_WRITE_CHANNELS) +# define SNDCTL_DSP_CHANNELS SOUND_PCM_WRITE_CHANNELS +# endif + +# define AUDIO_DEVICE "/dev/dsp" + +static int sfd; +static unsigned int (*audio_pcm)(unsigned char *, unsigned int, + mad_fixed_t const *, mad_fixed_t const *); +inline static +int init(struct audio_init *init) +{ + if (init->path == 0) + init->path = AUDIO_DEVICE; + + sfd = open(init->path, O_WRONLY); + if (sfd == -1) { + audio_error = ":"; + return -1; + } + + return 0; +} + +inline static +int config(struct audio_config *config) +{ + int format; + + if (ioctl(sfd, SNDCTL_DSP_SYNC, 0) == -1) { + audio_error = ":ioctl(SNDCTL_DSP_SYNC)"; + return -1; + } + + format = AFMT_S16_NE; + + if (ioctl(sfd, SNDCTL_DSP_SETFMT, &format) == -1) { + audio_error = ":ioctl(SNDCTL_DSP_SETFMT)"; + return -1; + } + + audio_pcm = audio_pcm_s16le; + + if (ioctl(sfd, SNDCTL_DSP_CHANNELS, &config->channels) == -1) { + audio_error = ":ioctl(SNDCTL_DSP_CHANNELS)"; + return -1; + } + + if (ioctl(sfd, SNDCTL_DSP_SPEED, &config->speed) == -1) { + audio_error = ":ioctl(SNDCTL_DSP_SPEED)"; + return -1; + } + + return 0; +} + +inline +int output_s(unsigned char const *ptr, unsigned int len) +{ + while (len) { + int wrote; + + wrote = write(sfd, ptr, len); + if (wrote == -1) { + if (errno == EINTR) { + printf("."); + continue; + } + else { + audio_error = ":write"; + return -1; + } + } + + ptr += wrote; + len -= wrote; + } + + return 0; +} + +inline static +int finish(struct audio_finish *finish) +{ + int result = 0; + + if (close(sfd) == -1 && result == 0) { + audio_error = ":close"; + result = -1; + } + + return result; +} + +inline int audio_oss(union audio_control *control) +{ + audio_error = 0; + + switch (control->command) { + case AUDIO_COMMAND_INIT: + return init(&control->init); + + case AUDIO_COMMAND_CONFIG: + return config(&control->config); + + case AUDIO_COMMAND_FINISH: + return finish(&control->finish); + } + + return 0; +} +#endif
trunk/orp/orp_soc/sw.old/mad-xess/audio_oss.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/memcpy.c =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/memcpy.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/memcpy.c (revision 782) @@ -0,0 +1,116 @@ +/* +FUNCTION + <>---copy memory regions + +ANSI_SYNOPSIS + #include + void* memcpy(void *<[out]>, const void *<[in]>, size_t <[n]>); + +TRAD_SYNOPSIS + void *memcpy(<[out]>, <[in]>, <[n]> + void *<[out]>; + void *<[in]>; + size_t <[n]>; + +DESCRIPTION + This function copies <[n]> bytes from the memory region + pointed to by <[in]> to the memory region pointed to by + <[out]>. + + If the regions overlap, the behavior is undefined. + +RETURNS + <> returns a pointer to the first byte of the <[out]> + region. + +PORTABILITY +<> is ANSI C. + +<> requires no supporting OS subroutines. + +QUICKREF + memcpy ansi pure + */ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#ifdef EMBED +#include <_ansi.h> +#include +#include + +/* Nonzero if either X or Y is not aligned on a "long" boundary. */ +#define UNALIGNED(X, Y) \ + (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1))) + +/* How many bytes are copied each iteration of the 4X unrolled loop. */ +#define BIGBLOCKSIZE (sizeof (long) << 2) + +/* How many bytes are copied each iteration of the word copy loop. */ +#define LITTLEBLOCKSIZE (sizeof (long)) + +/* Threshhold for punting to the byte copier. */ +#define TOO_SMALL(LEN) ((LEN) < BIGBLOCKSIZE) + +_PTR +_DEFUN (memcpy, (dst0, src0, len0), + _PTR dst0 _AND + _CONST _PTR src0 _AND + size_t len0) +{ +#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__) + char *dst = (char *) dst0; + char *src = (char *) src0; + + _PTR save = dst0; + + while (len0--) + { + *dst++ = *src++; + } + + return save; +#else + char *dst = dst0; + _CONST char *src = src0; + long *aligned_dst; + _CONST long *aligned_src; + int len = len0; + + /* If the size is small, or either SRC or DST is unaligned, + then punt into the byte copy loop. This should be rare. */ + if (!TOO_SMALL(len) && !UNALIGNED (src, dst)) + { + aligned_dst = (long*)dst; + aligned_src = (long*)src; + + /* Copy 4X long words at a time if possible. */ + while (len >= BIGBLOCKSIZE) + { + *aligned_dst++ = *aligned_src++; + *aligned_dst++ = *aligned_src++; + *aligned_dst++ = *aligned_src++; + *aligned_dst++ = *aligned_src++; + len -= BIGBLOCKSIZE; + } + + /* Copy one long word at a time if possible. */ + while (len >= LITTLEBLOCKSIZE) + { + *aligned_dst++ = *aligned_src++; + len -= LITTLEBLOCKSIZE; + } + + /* Pick up any residual with a byte copier. */ + dst = (char*)aligned_dst; + src = (char*)aligned_src; + } + + while (len--) + *dst++ = *src++; + + return dst0; +#endif /* not PREFER_SIZE_OVER_SPEED */ +} +#endif
trunk/orp/orp_soc/sw.old/mad-xess/memcpy.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mad-xess/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/mad-xess/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/mad-xess/Makefile (revision 782) @@ -0,0 +1,71 @@ +CC = or32-rtems-gcc +AS = or32-rtems-as +AR = or32-rtems-ar +RUNLIB = or32-rtems-ranlib + +SUBDIRS = libmad + +MAD_OBJ = reset.o \ + minimad.o \ + fsyst.o \ + audio_oss.o \ + audio.o \ + memcpy.o \ + memmove.o \ + flash.o + + +CC_OPTS = -DHAVE_CONFIG_H -fno-delayed-branch -Wall -nostdlib \ + -I. -I./libmad/ + +#LD_OPTS = -T xess.ld -L/home/simons/or1k/lib/gcc-lib/or32-rtems/2.95.2/ +LD_OPTS = -T xess.ld + +all: + @set fnord $(MAKEFLAGS); amf=$$2; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + $(MAKE) $(AM_MAKEFLAGS) "minimad" || exit 1; \ + +minimad: $(MAD_OBJ) libmad/libmad.a + $(CC) $(LD_OPTS) -o minimad $(MAD_OBJ) libmad/libmad.a + +reset.o: reset.S + $(CC) $(CC_OPTS) -c -o reset.o reset.S + +minimad.o: minimad.c config.h audio.h libmad/mad.h fsyst.h + $(CC) $(CC_OPTS) -c -o minimad.o minimad.c + +fsyst.o: fsyst.c config.h fsyst.h + $(CC) $(CC_OPTS) -c -o fsyst.o fsyst.c + +audio_oss.o: audio_oss.c config.h + $(CC) $(CC_OPTS) -c -o audio_oss.o audio_oss.c + +audio.o: audio.c config.h audio.h libmad/mad.h + $(CC) $(CC_OPTS) -c -o audio.o audio.c + +memcpy.o: memcpy.c config.h _ansi.h + $(CC) $(CC_OPTS) -c -o memcpy.o memcpy.c + +memmove.o: memmove.c config.h + $(CC) $(CC_OPTS) -c -o memmove.o memmove.c + +flash.o: flash.c config.h + $(CC) $(CC_OPTS) -c -o flash.o flash.c + + +clean: + @set fnord $(MAKEFLAGS); amf=$$2; \ + target=`echo $@ | sed s/-recursive//`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done; \ + rm -rf $(MAD_OBJ) minimad *~ *.bak +
trunk/orp/orp_soc/sw.old/mad-xess/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/basic/basic.S =================================================================== --- trunk/orp/orp_soc/sw.old/basic/basic.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/basic/basic.S (revision 782) @@ -0,0 +1,475 @@ +/* Basic instruction set test */ +#include "../support/spr_defs.h" + +.global _main +.global _buserr_except +.global _dpf_except +.global _ipf_except +.global _lpint_except +.global _align_except +.global _illegal_except +.global _hpint_except +.global _dtlbmiss_except +.global _itlbmiss_except +.global _range_except +.global _syscall_except +.global _res1_except +.global _trap_except +.global _res2_except + +_buserr_except: +_dpf_except: +_ipf_except: +_lpint_except: +_align_except: +_illegal_except: +_hpint_except: +_dtlbmiss_except: +_itlbmiss_except: +_range_except: +_syscall_except: +_res1_except: +_trap_except: +_res2_except: + +_main: + l.nop + l.j _regs + l.nop + + .section .text +_regs: + l.addi r1,r0,0x1 + l.addi r2,r1,0x2 + l.addi r3,r2,0x4 + l.addi r4,r3,0x8 + l.addi r5,r4,0x10 + l.addi r6,r5,0x20 + l.addi r7,r6,0x40 + l.addi r8,r7,0x80 + l.addi r9,r8,0x100 + l.addi r10,r9,0x200 + l.addi r11,r10,0x400 + l.addi r12,r11,0x800 + l.addi r13,r12,0x1000 + l.addi r14,r13,0x2000 + l.addi r15,r14,0x4000 + l.addi r16,r15,0x8000 + + l.sub r31,r0,r1 + l.sub r30,r31,r2 + l.sub r29,r30,r3 + l.sub r28,r29,r4 + l.sub r27,r28,r5 + l.sub r26,r27,r6 + l.sub r25,r26,r7 + l.sub r24,r25,r8 + l.sub r23,r24,r9 + l.sub r22,r23,r10 + l.sub r21,r22,r11 + l.sub r20,r21,r12 + l.sub r19,r20,r13 + l.sub r18,r19,r14 + l.sub r17,r18,r15 + l.sub r16,r17,r16 + l.movhi r31,0x8000 + l.ori r31,r31,0x0040 + + l.mtspr r0,r16,0x1234 /* Should be 0xffff0012 */ + + l.sw 0(r31),r16 + +_mem: l.movhi r3,0x1234 + l.ori r3,r3,0x5678 + + l.sw 4(r31),r3 + + l.lbz r4,4(r31) + l.add r8,r8,r4 + l.sb 11(r31),r4 + l.lbz r4,5(r31) + l.add r8,r8,r4 + l.sb 10(r31),r4 + l.lbz r4,6(r31) + l.add r8,r8,r4 + l.sb 9(r31),r4 + l.lbz r4,7(r31) + l.add r8,r8,r4 + l.sb 8(r31),r4 + + l.lbs r4,8(r31) + l.add r8,r8,r4 + l.sb 7(r31),r4 + l.lbs r4,9(r31) + l.add r8,r8,r4 + l.sb 6(r31),r4 + l.lbs r4,10(r31) + l.add r8,r8,r4 + l.sb 5(r31),r4 + l.lbs r4,11(r31) + l.add r8,r8,r4 + l.sb 4(r31),r4 + + l.lhz r4,4(r31) + l.add r8,r8,r4 + l.sh 10(r31),r4 + l.lhz r4,6(r31) + l.add r8,r8,r4 + l.sh 8(r31),r4 + + l.lhs r4,8(r31) + l.add r8,r8,r4 + l.sh 6(r31),r4 + l.lhs r4,10(r31) + l.add r8,r8,r4 + l.sh 4(r31),r4 + + l.lwz r4,4(r31) + l.add r8,r8,r4 + + l.mtspr r0,r8,0x1234 /* Should be 0x12352af7 */ + + l.lwz r9,0(r31) + l.add r8,r9,r8 + l.sw 0(r31),r8 + +_arith: + l.addi r3,r0,1 + l.addi r4,r0,2 + l.addi r5,r0,-1 + l.addi r6,r0,-1 + l.addi r8,r0,0 + + l.sub r7,r5,r3 + l.sub r8,r3,r5 + l.add r8,r8,r7 + +# l.div r7,r7,r4 + l.add r9,r3,r4 + l.mul r7,r9,r7 +# l.divu r7,r7,r4 + l.add r8,r8,r7 + + l.mtspr r0,r8,0x1234 /* Should be 0x7ffffffe */ + + l.lwz r9,0(r31) + l.add r8,r9,r8 + l.sw 0(r31),r8 + +_log: + l.addi r3,r0,1 + l.addi r4,r0,2 + l.addi r5,r0,-1 + l.addi r6,r0,-1 + l.addi r8,r0,0 + + l.andi r8,r8,1 + l.and r8,r8,r3 + + l.xori r8,r5,0xa5a5 + l.xor r8,r8,r5 + + l.ori r8,r8,2 + l.or r8,r8,r4 + + l.mtspr r0,r8,0x1234 /* Should be 0xffffa5a7 */ + + l.lwz r9,0(r31) + l.add r8,r9,r8 + l.sw 0(r31),r8 + +_shift: + l.addi r3,r0,1 + l.addi r4,r0,2 + l.addi r5,r0,-1 + l.addi r6,r0,-1 + l.addi r8,r0,0 + + l.slli r8,r5,6 + l.sll r8,r8,r4 + + l.srli r8,r8,6 + l.srl r8,r8,r4 + + l.srai r8,r8,2 + l.sra r8,r8,r4 + + l.mtspr r0,r8,0x1234 /* Should be 0x000fffff */ + + l.lwz r9,0(r31) + l.add r8,r9,r8 + l.sw 0(r31),r8 + +_flag: + l.addi r3,r0,1 + l.addi r4,r0,-2 + l.addi r8,r0,0 + + l.sfeq r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfeq r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfeqi r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfeqi r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfne r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfne r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfnei r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfnei r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgtu r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgtu r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgtui r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgtui r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgeu r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgeu r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgeui r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgeui r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfltu r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfltu r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfltui r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfltui r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfleu r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfleu r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfleui r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfleui r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgts r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgts r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgtsi r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgtsi r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfges r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfges r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgesi r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfgesi r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sflts r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sflts r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfltsi r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfltsi r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfles r3,r3 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sfles r3,r4 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sflesi r3,1 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.sflesi r3,-2 + l.mfspr r5,r0,17 + l.andi r4,r5,0x200 + l.add r8,r8,r4 + + l.mtspr r0,r8,0x1234 /* Should be 0x00002800 */ + + l.lwz r9,0(r31) + l.add r8,r9,r8 + l.sw 0(r31),r8 + +_jump: + l.addi r8,r0,0 + + l.j _T1 + l.addi r8,r8,1 + +_T2: l.or r10,r0,r9 + l.jalr r10 + l.addi r8,r8,1 + +_T1: l.jal _T2 + l.addi r8,r8,1 + + l.sfeqi r0,0 + l.bf _T3 + l.addi r8,r8,1 + +_T3: l.sfeqi r0,1 + l.bf _T4 + l.addi r8,r8,1 + + l.addi r8,r8,1 + +_T4: l.sfeqi r0,0 + l.bnf _T5 + l.addi r8,r8,1 + + l.addi r8,r8,1 + +_T5: l.sfeqi r0,1 + l.bnf _T6 + l.addi r8,r8,1 + + l.addi r8,r8,1 + +_T6: l.movhi r3,hi(_T7) + l.ori r3,r0,lo(_T7) + l.mtspr r0,r3,32 + l.mfspr r5,r0,17 + l.mtspr r0,r5,64 + l.rfe + l.addi r8,r8,1 + + l.addi r8,r8,1 + +_T7: l.mtspr r0,r8,0x1234 /* Should be 0x00000000a */ + + l.lwz r9,0(r31) + l.add r8,r9,r8 + l.sw 0(r31),r8 + + l.lwz r9,0(r31) + l.movhi r3,0xcc69 + l.ori r3,r3,0xe5fb + l.add r3,r8,r3 /* Should be 0xdeaddead */ + l.jal _report + + l.nop + l.jal _exit + l.nop + l.nop +
trunk/orp/orp_soc/sw.old/basic/basic.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/basic/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/basic/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/basic/Makefile (revision 782) @@ -0,0 +1,38 @@ +common = ../support/except.o ../support/support.o +cases = basic-nocache basic-ic basic-dc basic-icdc + +all: $(cases) + +basic-nocache: $(common) basic.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic-ic: $(common) basic.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic-dc: $(common) basic.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic-icdc: $(common) basic.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic.o: basic.S + or32-rtems-gcc -O0 $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/basic/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/screen.c =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/screen.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/screen.c (revision 782) @@ -0,0 +1,87 @@ +#include +#include "screen.h" + +unsigned long fg_color = COLOR_WHITE; +unsigned long bg_color = COLOR_BLACK; +int cx = 0; +int cy = 0; + +extern unsigned char font[256][12]; +static char screen[CHARSY][CHARSX]; + +void put_char_xy (int x, int y, char c) { + int i, j; + screen[y][x] = c; + x *= CHAR_WIDTH; + y *= CHAR_HEIGHT; + for (i = 0; i < CHAR_HEIGHT; i++) { + int t = font[(unsigned char)c][i]; + for (j = 0; j < CHAR_WIDTH; j++) { + if (t & 1) + PUT_PIXEL(x + j, y + i, fg_color); + else + PUT_PIXEL(x + j, y + i, bg_color); + t >>= 1; + } + } +} + +static void scroll() { + int x,y; + for (y = 1; y < CHARSY; y++) + for (x = 0; x < CHARSX; x++) + put_char_xy (x, y-1, screen[y][x]); + for (x = 0; x < CHARSX; x++) + put_char_xy (x, CHARSY-1, ' '); + cy--; +} + +void put_char(char c) { + int t; + switch (c) { + case '\n': + cy++; + cx = 0; + if (cy >= CHARSY) + scroll(); + break; + case '\r': + cx = 0; + break; + case '\t': + for (t = 0; t < 8 - cx & 7; t++) + put_char(' '); + break; + default: + cx++; + if(cx >= CHARSX) put_char('\n'); + put_char_xy(cx, cy, c); + break; + } +} + +void screen_clear () { + int x, y; + for (y = 0; y < CHARSY; y++) + for (x = 0; x < CHARSX; x++) + put_char_xy (x, y, ' '); + cx = cy = 0; +} + +void put_string(char *s) { + while (*s) { + put_char (*s); + s++; + } +} + +void screen_init () { + SET_PALLETE(COLOR_BLACK, 0, 0, 0); + SET_PALLETE(COLOR_WHITE, 255, 255, 255); + + /* Set screen offset */ + *((unsigned long *)SCREEN_BUFFER_REG) = SCREEN_BUFFER; + + /* Turn screen on */ + *((unsigned long *)SCREEN_REG) = 0x00000001; +}
trunk/orp/orp_soc/sw.old/console-xess/screen.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/xess.ld =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/xess.ld (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/xess.ld (revision 782) @@ -0,0 +1,31 @@ +MEMORY + { + reset : ORIGIN = 0x00000100, LENGTH = 0x00001f00 + ram : ORIGIN = 0x80000000, LENGTH = 0x00200000 + } + +SECTIONS +{ + .reset : + AT ( 0x00000100 ) + { + *(.reset) + _src_beg = .; + } > reset + .text : + AT ( ADDR (.reset) + SIZEOF (.reset) ) + { + _dst_beg = .; + *(.text) + } > ram + .data : + AT ( ADDR (.reset) + SIZEOF (.reset) + SIZEOF (.text)) + { + *(.data) + _dst_end = .; + } > ram + .bss : + { + *(.bss) + } > reset +}
trunk/orp/orp_soc/sw.old/console-xess/xess.ld Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/tfont.raw =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/tfont.raw (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/tfont.raw (revision 782) @@ -0,0 +1 @@ + \ No newline at end of file
trunk/orp/orp_soc/sw.old/console-xess/tfont.raw Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/console-xess.c =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/console-xess.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/console-xess.c (revision 782) @@ -0,0 +1,32 @@ +#include + +int global = 5; + +int func (unsigned long a, char b) { + global = 2; + a = 3 + a; + b = 4 + b; + return a + b; +} + +int main () { + int local = 7; + int i; + char tmp[50]; + + screen_init (); + screen_clear (); + for (i = 0; i < 10; i++) + put_char (i + '0'); + put_char ('\n'); + put_char ('\n'); + + put_string ("Hello, World!"); + + i = 0; + while (1) { + put_string ("This is OpenRISC running on Xess XSV board ..."); + put_char ('0' + i & 7); + put_char ('\n'); + } +}
trunk/orp/orp_soc/sw.old/console-xess/console-xess.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/screen.h =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/screen.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/screen.h (revision 782) @@ -0,0 +1,32 @@ +#ifndef SCREEN_H +#define SCREEN_H + +#define RESX 640 +#define RESY 480 +#define CHAR_WIDTH 8 +#define CHAR_HEIGHT 12 +#define COLOR_BLACK 0x00 +#define COLOR_WHITE 0xFF + +#define CHARSX (RESX/CHAR_WIDTH) +#define CHARSY (RESY/CHAR_HEIGHT) + +#define SCREEN_BUFFER (0x80100000) +#define SCREEN_REG (0xc0000000) +#define SCREEN_PALLETE (0x80000400) +#define SCREEN_BUFFER_REG (0xc0000004) +#define PUT_PIXEL(x, y, color) (*(((unsigned char *)SCREEN_BUFFER) + (y) * RESY + (x)) = (color)) +#define SET_PALLETE(i, r, g, b) (*(((unsigned long *)SCREEN_PALLETE) + (i) * 4) = ((r) << 4) | ((g) << 8) | ((b) << 12)) + +void put_char_xy (int x, int y, char c); +void put_char (char c); +void put_string (char *s); +void screen_clear (); +void screen_init (); + +extern unsigned long fg_color; +extern unsigned long bg_color; +extern int cx; +extern int cy; + +#endif
trunk/orp/orp_soc/sw.old/console-xess/screen.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/cprintf.c =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/cprintf.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/cprintf.c (revision 782) @@ -0,0 +1,858 @@ +/* +FUNCTION +<>, <>, <>---format argument list + +INDEX + vprintf +INDEX + vfprintf +INDEX + vsprintf +INDEX + vsnprintf + +ANSI_SYNOPSIS + #include + #include + int vprintf(const char *<[fmt]>, va_list <[list]>); + int vfprintf(FILE *<[fp]>, const char *<[fmt]>, va_list <[list]>); + int vsprintf(char *<[str]>, const char *<[fmt]>, va_list <[list]>); + int vsnprintf(char *<[str]>, size_t <[size]>, const char *<[fmt]>, va_list <[list]>); + + int _vprintf_r(void *<[reent]>, const char *<[fmt]>, + va_list <[list]>); + int _vfprintf_r(void *<[reent]>, FILE *<[fp]>, const char *<[fmt]>, + va_list <[list]>); + int _vsprintf_r(void *<[reent]>, char *<[str]>, const char *<[fmt]>, + va_list <[list]>); + int _vsnprintf_r(void *<[reent]>, char *<[str]>, size_t <[size]>, const char *<[fmt]>, + va_list <[list]>); + +TRAD_SYNOPSIS + #include + #include + int vprintf( <[fmt]>, <[list]>) + char *<[fmt]>; + va_list <[list]>; + + int vfprintf(<[fp]>, <[fmt]>, <[list]>) + FILE *<[fp]>; + char *<[fmt]>; + va_list <[list]>; + + int vsprintf(<[str]>, <[fmt]>, <[list]>) + char *<[str]>; + char *<[fmt]>; + va_list <[list]>; + + int vsnprintf(<[str]>, <[size]>, <[fmt]>, <[list]>) + char *<[str]>; + size_t <[size]>; + char *<[fmt]>; + va_list <[list]>; + + int _vprintf_r(<[reent]>, <[fmt]>, <[list]>) + char *<[reent]>; + char *<[fmt]>; + va_list <[list]>; + + int _vfprintf_r(<[reent]>, <[fp]>, <[fmt]>, <[list]>) + char *<[reent]>; + FILE *<[fp]>; + char *<[fmt]>; + va_list <[list]>; + + int _vsprintf_r(<[reent]>, <[str]>, <[fmt]>, <[list]>) + char *<[reent]>; + char *<[str]>; + char *<[fmt]>; + va_list <[list]>; + + int _vsnprintf_r(<[reent]>, <[str]>, <[size]>, <[fmt]>, <[list]>) + char *<[reent]>; + char *<[str]>; + size_t <[size]>; + char *<[fmt]>; + va_list <[list]>; + +DESCRIPTION +<>, <>, <> and <> are (respectively) +variants of <>, <>, <> and <>. They differ +only in allowing their caller to pass the variable argument list as a +<> object (initialized by <>) rather than directly +accepting a variable number of arguments. + +RETURNS +The return values are consistent with the corresponding functions: +<> returns the number of bytes in the output string, +save that the concluding <> is not counted. +<> and <> return the number of characters transmitted. +If an error occurs, <> and <> return <>. No +error returns occur for <>. + +PORTABILITY +ANSI C requires all three functions. + +Supporting OS subroutines required: <>, <>, <>, +<>, <>, <>, <>. +*/ + +/*- + * Copyright (c) 1990 The Regents of the University of California. + * All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Chris Torek. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#define INTEGER_ONLY +#define _HAVE_STDC_ +#define u_long unsigned long +#define u_short unsigned short +#define u_int unsigned int +#define _uquad_t u_long +#define _POINTER_INT int +#define _CONST const +#define NULL 0 + +#if defined(LIBC_SCCS) && !defined(lint) +/*static char *sccsid = "from: @(#)vfprintf.c 5.50 (Berkeley) 12/16/92";*/ +static char *rcsid = "$Id: cprintf.c,v 1.1 2002-03-28 20:38:48 lampret Exp $"; +#endif /* LIBC_SCCS and not lint */ + +/* + * Actual printf innards. + * + * This code is large and complicated... + */ + +#ifdef INTEGER_ONLY +#define VFPRINTF vfiprintf +#define _VFPRINTF_R _vfiprintf_r +#else +#define VFPRINTF vfprintf +#define _VFPRINTF_R _vfprintf_r +#define FLOATING_POINT +#endif + +#define _NO_LONGLONG +#if defined WANT_PRINTF_LONG_LONG && defined __GNUC__ +# undef _NO_LONGLONG +#endif + +#include + +#ifdef FLOATING_POINT +#include +#include +#include "floatio.h" + +#define BUF (MAXEXP+MAXFRACT+1) /* + decimal point */ +#define DEFPREC 6 + +static char *cvt _PARAMS((struct _reent *, double, int, int, char *, int *, int, int *)); +static int exponent _PARAMS((char *, int, int)); + +#else /* no FLOATING_POINT */ + +#define BUF 40 + +#endif /* FLOATING_POINT */ + +/* + * Macros for converting digits to letters and vice versa + */ +#define to_digit(c) ((c) - '0') +#define is_digit(c) ((unsigned)to_digit(c) <= 9) +#define to_char(n) ((n) + '0') + +/* + * Flags used during conversion. + */ +#define ALT 0x001 /* alternate form */ +#define HEXPREFIX 0x002 /* add 0x or 0X prefix */ +#define LADJUST 0x004 /* left adjustment */ +#define LONGDBL 0x008 /* long double; unimplemented */ +#define LONGINT 0x010 /* long integer */ +#define QUADINT 0x020 /* quad integer */ +#define SHORTINT 0x040 /* short integer */ +#define ZEROPAD 0x080 /* zero (as opposed to blank) pad */ +#define FPT 0x100 /* Floating point number */ + + /* + * Choose PADSIZE to trade efficiency vs. size. If larger printf + * fields occur frequently, increase PADSIZE and make the initialisers + * below longer. + */ +#define PADSIZE 16 /* pad chunk size */ + static _CONST char blanks[PADSIZE] = + {' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '}; + static _CONST char zeroes[PADSIZE] = + {'0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0'}; + +inline void pc (_CONST char c) { +#ifdef OR1K + put_char (c); +#else + printf ("%c", c); +#endif +} + /* + * BEWARE, these `goto error' on error, and PAD uses `n'. + */ +inline void PRINT(_CONST char *ptr, int len) { + int i; + for (i = 0; i < len; i++) + pc(*(ptr++)); +} + +inline void PAD(int howmany, _CONST char *with) { + int n; + if ((n = howmany) > 0) { + while (n > PADSIZE) { + PRINT(with, PADSIZE); + n -= PADSIZE; + } + PRINT(with, n); + } +} + +int cprintf(const char *fmt0, ...) +{ + register char *fmt; /* format string */ + register int ch; /* character from fmt */ + int n, m; /* handy integers (short term usage) */ + register char *cp; /* handy char pointer (short term usage) */ + register struct __siov *iovp;/* for PRINT macro */ + register int flags; /* flags as above */ + int ret; /* return value accumulator */ + int width; /* width from format (%8d), or 0 */ + int prec; /* precision from format (%.3d), or -1 */ + char sign; /* sign prefix (' ', '+', '-', or \0) */ + char wc; + va_list ap; + +#ifdef FLOATING_POINT + char *decimal_point = localeconv()->decimal_point; + char softsign; /* temporary negative sign for floats */ + /* + * Although it is natural to declare this double here, the + * declaration causes gcc to save FP registers even when not + * printing an FP number. This results in surprising use + * of FP registers to print integers or strings on at least the + * PowerPC. A more proper solution would be to move FP printing + * to another file, but this does seem to work. + */ +#if 0 + double _double; /* double precision arguments %[eEfgG] */ +#else + /* double precision arguments %[eEfgG] */ + union { int i; double d; } _double_ = {0}; +#define _double (_double_.d) +#endif + int expt; /* integer value of exponent */ + int expsize; /* character count for expstr */ + int ndig; /* actual number of digits returned by cvt */ + char expstr[7]; /* buffer for exponent string */ +#endif + +#ifndef _NO_LONGLONG +#define quad_t long long +#define u_quad_t unsigned long long +#endif + +#ifndef _NO_LONGLONG + u_quad_t _uquad; /* integer arguments %[diouxX] */ +#else + u_long _uquad; +#endif + enum { OCT, DEC, HEX } base;/* base for [diouxX] conversion */ + int dprec; /* a copy of prec if [diouxX], 0 otherwise */ + int realsz; /* field size expanded by dprec */ + int size; /* size of converted field or string */ + char *xdigs; /* digits for [xX] conversion */ +#define NIOV 8 + +char buf[BUF]; /* space for %c, %[diouxX], %[eEfgG] */ +char ox[2]; /* space for 0x hex-prefix */ +int state = 0; /* mbtowc calls from library must not change state */ + +#define FLUSH() + + /* + * To extend shorts properly, we need both signed and unsigned + * argument extraction methods. + */ +#ifndef _NO_LONGLONG +#define SARG() \ + (flags&QUADINT ? va_arg(ap, quad_t) : \ + flags&LONGINT ? va_arg(ap, long) : \ + flags&SHORTINT ? (long)(short)va_arg(ap, int) : \ + (long)va_arg(ap, int)) +#define UARG() \ + (flags&QUADINT ? va_arg(ap, u_quad_t) : \ + flags&LONGINT ? va_arg(ap, u_long) : \ + flags&SHORTINT ? (u_long)(u_short)va_arg(ap, int) : \ + (u_long)va_arg(ap, u_int)) +#else +#define SARG() \ + (flags&LONGINT ? va_arg(ap, long) : \ + flags&SHORTINT ? (long)(short)va_arg(ap, int) : \ + (long)va_arg(ap, int)) +#define UARG() \ + (flags&LONGINT ? va_arg(ap, u_long) : \ + flags&SHORTINT ? (u_long)(u_short)va_arg(ap, int) : \ + (u_long)va_arg(ap, u_int)) +#endif + + va_start (ap, fmt0); + fmt = (char *)fmt0; + ret = 0; + + /* + * Scan the format for conversions (`%' character). + */ + for (;;) { + + while (*fmt != 0 && *fmt != '%') { + pc (*fmt); + fmt++; + ret++; + } + if (!*fmt) + goto done; + + fmt++; /* Skip % */ + flags = 0; + dprec = 0; + width = 0; + prec = -1; + sign = '\0'; + +rflag: ch = *fmt++; +reswitch: switch (ch) { + case ' ': + /* + * ``If the space and + flags both appear, the space + * flag will be ignored.'' + * -- ANSI X3J11 + */ + if (!sign) + sign = ' '; + goto rflag; + case '#': + flags |= ALT; + goto rflag; + case '*': + /* + * ``A negative field width argument is taken as a + * - flag followed by a positive field width.'' + * -- ANSI X3J11 + * They don't exclude field widths read from args. + */ + if ((width = va_arg(ap, int)) >= 0) + goto rflag; + width = -width; + /* FALLTHROUGH */ + case '-': + flags |= LADJUST; + goto rflag; + case '+': + sign = '+'; + goto rflag; + case '.': + if ((ch = *fmt++) == '*') { + n = va_arg(ap, int); + prec = n < 0 ? -1 : n; + goto rflag; + } + n = 0; + while (is_digit(ch)) { + n = 10 * n + to_digit(ch); + ch = *fmt++; + } + prec = n < 0 ? -1 : n; + goto reswitch; + case '0': + /* + * ``Note that 0 is taken as a flag, not as the + * beginning of a field width.'' + * -- ANSI X3J11 + */ + flags |= ZEROPAD; + goto rflag; + case '1': case '2': case '3': case '4': + case '5': case '6': case '7': case '8': case '9': + n = 0; + do { + n = 10 * n + to_digit(ch); + ch = *fmt++; + } while (is_digit(ch)); + width = n; + goto reswitch; +#ifdef FLOATING_POINT + case 'L': + flags |= LONGDBL; + goto rflag; +#endif + case 'h': + flags |= SHORTINT; + goto rflag; + case 'l': + if (*fmt == 'l') { + fmt++; + flags |= QUADINT; + } else { + flags |= LONGINT; + } + goto rflag; + case 'q': + flags |= QUADINT; + goto rflag; + case 'c': + *(cp = buf) = va_arg(ap, int); + size = 1; + sign = '\0'; + break; + case 'D': + flags |= LONGINT; + /*FALLTHROUGH*/ + case 'd': + case 'i': + _uquad = SARG(); +#ifndef _NO_LONGLONG + if ((quad_t)_uquad < 0) +#else + if ((long) _uquad < 0) +#endif + { + + _uquad = -_uquad; + sign = '-'; + } + base = DEC; + goto number; +#ifdef FLOATING_POINT + case 'e': + case 'E': + case 'f': + case 'g': + case 'G': + if (prec == -1) { + prec = DEFPREC; + } else if ((ch == 'g' || ch == 'G') && prec == 0) { + prec = 1; + } + + if (flags & LONGDBL) { + _double = (double) va_arg(ap, long double); + } else { + _double = va_arg(ap, double); + } + + /* do this before tricky precision changes */ + if (isinf(_double)) { + if (_double < 0) + sign = '-'; + cp = "Inf"; + size = 3; + break; + } + if (isnan(_double)) { + cp = "NaN"; + size = 3; + break; + } + + flags |= FPT; + cp = cvt(data, _double, prec, flags, &softsign, + &expt, ch, &ndig); + if (ch == 'g' || ch == 'G') { + if (expt <= -4 || expt > prec) + ch = (ch == 'g') ? 'e' : 'E'; + else + ch = 'g'; + } + if (ch <= 'e') { /* 'e' or 'E' fmt */ + --expt; + expsize = exponent(expstr, expt, ch); + size = expsize + ndig; + if (ndig > 1 || flags & ALT) + ++size; + } else if (ch == 'f') { /* f fmt */ + if (expt > 0) { + size = expt; + if (prec || flags & ALT) + size += prec + 1; + } else /* "0.X" */ + size = prec + 2; + } else if (expt >= ndig) { /* fixed g fmt */ + size = expt; + if (flags & ALT) + ++size; + } else + size = ndig + (expt > 0 ? + 1 : 2 - expt); + + if (softsign) + sign = '-'; + break; +#endif /* FLOATING_POINT */ + case 'n': +#ifndef _NO_LONGLONG + if (flags & QUADINT) + *va_arg(ap, quad_t *) = ret; + else +#endif + if (flags & LONGINT) + *va_arg(ap, long *) = ret; + else if (flags & SHORTINT) + *va_arg(ap, short *) = ret; + else + *va_arg(ap, int *) = ret; + continue; /* no output */ + case 'O': + flags |= LONGINT; + /*FALLTHROUGH*/ + case 'o': + _uquad = UARG(); + base = OCT; + goto nosign; + case 'p': + /* + * ``The argument shall be a pointer to void. The + * value of the pointer is converted to a sequence + * of printable characters, in an implementation- + * defined manner.'' + * -- ANSI X3J11 + */ + /* NOSTRICT */ + _uquad = (u_long)(unsigned _POINTER_INT)va_arg(ap, void *); + base = HEX; + xdigs = "0123456789abcdef"; + flags |= HEXPREFIX; + ch = 'x'; + goto nosign; + case 's': + if ((cp = va_arg(ap, char *)) == NULL) + cp = "(null)"; + if (prec >= 0) { + /* + * can't use strlen; can only look for the + * NUL in the first `prec' characters, and + * strlen() will go further. + */ + char *p = (char *)memchr(cp, 0, prec); + + if (p != NULL) { + size = p - cp; + if (size > prec) + size = prec; + } else + size = prec; + } else + size = strlen(cp); + sign = '\0'; + break; + case 'U': + flags |= LONGINT; + /*FALLTHROUGH*/ + case 'u': + _uquad = UARG(); + base = DEC; + goto nosign; + case 'X': + xdigs = "0123456789ABCDEF"; + goto hex; + case 'x': + xdigs = "0123456789abcdef"; +hex: _uquad = UARG(); + base = HEX; + /* leading 0x/X only if non-zero */ + if (flags & ALT && _uquad != 0) + flags |= HEXPREFIX; + + /* unsigned conversions */ +nosign: sign = '\0'; + /* + * ``... diouXx conversions ... if a precision is + * specified, the 0 flag will be ignored.'' + * -- ANSI X3J11 + */ +number: if ((dprec = prec) >= 0) + flags &= ~ZEROPAD; + + /* + * ``The result of converting a zero value with an + * explicit precision of zero is no characters.'' + * -- ANSI X3J11 + */ + cp = buf + BUF; + if (_uquad != 0 || prec != 0) { + /* + * Unsigned mod is hard, and unsigned mod + * by a constant is easier than that by + * a variable; hence this switch. + */ + switch (base) { + case OCT: + do { + *--cp = to_char(_uquad & 7); + _uquad >>= 3; + } while (_uquad); + /* handle octal leading 0 */ + if (flags & ALT && *cp != '0') + *--cp = '0'; + break; + + case DEC: + /* many numbers are 1 digit */ + while (_uquad >= 10) { + *--cp = to_char(_uquad % 10); + _uquad /= 10; + } + *--cp = to_char(_uquad); + break; + + case HEX: + do { + *--cp = xdigs[_uquad & 15]; + _uquad >>= 4; + } while (_uquad); + break; + + default: + cp = "bug in vfprintf: bad base"; + size = strlen(cp); + goto skipsize; + } + } + size = buf + BUF - cp; + skipsize: + break; + default: /* "%?" prints ?, unless ? is NUL */ + if (ch == '\0') + goto done; + /* pretend it was %c with argument ch */ + cp = buf; + *cp = ch; + size = 1; + sign = '\0'; + break; + } + + /* + * All reasonable formats wind up here. At this point, `cp' + * points to a string which (if not flags&LADJUST) should be + * padded out to `width' places. If flags&ZEROPAD, it should + * first be prefixed by any sign or other prefix; otherwise, + * it should be blank padded before the prefix is emitted. + * After any left-hand padding and prefixing, emit zeroes + * required by a decimal [diouxX] precision, then print the + * string proper, then emit zeroes required by any leftover + * floating precision; finally, if LADJUST, pad with blanks. + * + * Compute actual size, so we know how much to pad. + * size excludes decimal prec; realsz includes it. + */ + realsz = dprec > size ? dprec : size; + if (sign) + realsz++; + else if (flags & HEXPREFIX) + realsz+= 2; + + /* right-adjusting blank padding */ + if ((flags & (LADJUST|ZEROPAD)) == 0) + PAD(width - realsz, blanks); + + /* prefix */ + if (sign) { + PRINT(&sign, 1); + } else if (flags & HEXPREFIX) { + ox[0] = '0'; + ox[1] = ch; + PRINT(ox, 2); + } + + /* right-adjusting zero padding */ + if ((flags & (LADJUST|ZEROPAD)) == ZEROPAD) + PAD(width - realsz, zeroes); + + /* leading zeroes from decimal precision */ + PAD(dprec - size, zeroes); + + /* the string or number proper */ +#ifdef FLOATING_POINT + if ((flags & FPT) == 0) { + PRINT(cp, size); + } else { /* glue together f_p fragments */ + if (ch >= 'f') { /* 'f' or 'g' */ + if (_double == 0) { + /* kludge for __dtoa irregularity */ + PRINT("0", 1); + if (expt < ndig || (flags & ALT) != 0) { + PRINT(decimal_point, 1); + PAD(ndig - 1, zeroes); + } + } else if (expt <= 0) { + PRINT("0", 1); + PRINT(decimal_point, 1); + PAD(-expt, zeroes); + PRINT(cp, ndig); + } else if (expt >= ndig) { + PRINT(cp, ndig); + PAD(expt - ndig, zeroes); + if (flags & ALT) + PRINT(".", 1); + } else { + PRINT(cp, expt); + cp += expt; + PRINT(".", 1); + PRINT(cp, ndig-expt); + } + } else { /* 'e' or 'E' */ + if (ndig > 1 || flags & ALT) { + ox[0] = *cp++; + ox[1] = '.'; + PRINT(ox, 2); + if (_double || flags & ALT == 0) { + PRINT(cp, ndig-1); + } else /* 0.[0..] */ + /* __dtoa irregularity */ + PAD(ndig - 1, zeroes); + } else /* XeYYY */ + PRINT(cp, 1); + PRINT(expstr, expsize); + } + } +#else + PRINT(cp, size); +#endif + /* left-adjusting padding (always blank) */ + if (flags & LADJUST) + PAD(width - realsz, blanks); + + /* finally, adjust ret */ + ret += width > realsz ? width : realsz; + + FLUSH(); /* copy out the I/O vectors */ + } +done: + va_end (ap); + FLUSH(); +error: + return (ret); + /* NOTREACHED */ +} + +#ifdef FLOATING_POINT + +extern char *_dtoa_r _PARAMS((struct _reent *, double, int, + int, int *, int *, char **)); + +static char * +cvt(data, value, ndigits, flags, sign, decpt, ch, length) + struct _reent *data; + double value; + int ndigits, flags, *decpt, ch, *length; + char *sign; +{ + int mode, dsgn; + char *digits, *bp, *rve; + union double_union tmp; + + if (ch == 'f') { + mode = 3; /* ndigits after the decimal point */ + } else { + /* To obtain ndigits after the decimal point for the 'e' + * and 'E' formats, round to ndigits + 1 significant + * figures. + */ + if (ch == 'e' || ch == 'E') { + ndigits++; + } + mode = 2; /* ndigits significant digits */ + } + + tmp.d = value; + if (word0(tmp) & Sign_bit) { /* this will check for < 0 and -0.0 */ + value = -value; + *sign = '-'; + } else + *sign = '\000'; + digits = _dtoa_r(data, value, mode, ndigits, decpt, &dsgn, &rve); + if ((ch != 'g' && ch != 'G') || flags & ALT) { /* Print trailing zeros */ + bp = digits + ndigits; + if (ch == 'f') { + if (*digits == '0' && value) + *decpt = -ndigits + 1; + bp += *decpt; + } + if (value == 0) /* kludge for __dtoa irregularity */ + rve = bp; + while (rve < bp) + *rve++ = '0'; + } + *length = rve - digits; + return (digits); +} + +static int +exponent(p0, exp, fmtch) + char *p0; + int exp, fmtch; +{ + register char *p, *t; + char expbuf[MAXEXP]; + + p = p0; + *p++ = fmtch; + if (exp < 0) { + exp = -exp; + *p++ = '-'; + } + else + *p++ = '+'; + t = expbuf + MAXEXP; + if (exp > 9) { + do { + *--t = to_char(exp % 10); + } while ((exp /= 10) > 9); + *--t = to_char(exp); + for (; t < expbuf + MAXEXP; *p++ = *t++); + } + else { + *p++ = '0'; + *p++ = to_char(exp); + } + return (p - p0); +} +#endif /* FLOATING_POINT */
trunk/orp/orp_soc/sw.old/console-xess/cprintf.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/bin2srec =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/bin2srec (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/bin2srec (revision 782) @@ -0,0 +1,24 @@ +ELF`„4¨*4 (44€4€ÀÀôô€ô€€€ÍÍÐЖЖø((—(—   /lib/ld-linux.so.2GNU  + M̃¥0܃:€ìƒ"5üƒ¬"n „à„2!,„‘"Y<„™_”†SL„é __gmon_start__libc.so.6printf__cxa_finalizefeof__deregister_frame_infofgetcerrorfopen_IO_stdin_used__libc_start_main__register_frame_infoGLIBC_2.1GLIBC_2.1.3GLIBC_2.0ii +–si  ii +¬$— ——— ————— — +U‰åSPè[Ã^‹ƒ0…ÀtÿÐvèOèz‹]üÉÃÿ5ø–ÿ%ü–ÿ%—héàÿÿÿÿ%—héÐÿÿÿÿ%—héÀÿÿÿÿ% —hé°ÿÿÿÿ%—h é ÿÿÿÿ%—h(éÿÿÿÿ%—h0é€ÿÿÿÿ%—h8épÿÿÿÿ% —h@é`ÿÿÿ1í^‰áƒäøPTRhp†hŒƒQVh@…è‹ÿÿÿôU‹Ü–‰åƒì…ÒuI‹Ø–‹…Àtt&B£Ø–ÿ‹Ø–‹ +…Éuê¸üƒ…Àtƒì hà–è ÿÿÿƒÄ¸£Ü–‰ì]ÃvU‰åƒì‰ì]öU‰å¸ìƒƒì…ÀtƒìhÈ—hà–èËþÿÿƒÄ‰ì]ô&U‰åƒì‰ì]öU‰åWVSƒì ƒ}¿ƒì h˜†èëþÿÿƒÄƒìh°†‹E ÿpèÅþÿÿƒÄ‰Eðé‰öQWh²†h·†ÆEïÿèƒþÿÿƒÄ¾vƒì ÿuðèþÿÿ‰ÃX1Àƒûÿ”ÀHZ!ÃSh¿†èSþÿÿƒÄ(]ïNyÒ‰ø(Eï‰øÁè(Eï‰øÁè(Eï€mïƒì¶EïPhņèþÿÿƒÇƒÄƒì ÿuðèÎýÿÿƒÄ…À„kÿÿÿeô[^1À_]ÃU¡ä–‰åSƒìƒøÿ»ä–tv¼'ƒëÿЋƒøÿuôX[]ÃU‰åƒì‰ì]öU‰åSRè[Ãzvèþÿÿ‹]üÉÃno input file specifiedrS214%s%.6lx%.2lx%.2lx +ð–ÿÿÿÿÿÿÿÿ(—Òƒâƒòƒ„„"„2„B„R„ Œƒ +p†(,‚l +– ô–HDƒ<ƒþÿÿoü‚ÿÿÿoðÿÿoâ‚—@d„„d„„,<;€e€€®€æ€#€t€Å€ð€€I€r€Œ€§€È€€$€I€s€œ‚¢¶‚gVÝ‚‰s‚‚¢¢2‚Øk€Ç¢€ –€!­€"€#Ø€%ð€&€1€25€3L€4e€5}€6–€8®€9Ç€;ç€=ý€>€?)€@?€AV€Bn€C„€D›€E±€FÉ€Gà€Hù€I€Nt€QŒ€R¬€SÀTÞ€Uú€V€X*€[D€^\€bt€x¾€{Ô€~ €‡! €ˆ< €‹W €Œt € €¬ €“Ä €–Ý €™ø €š +€- +€ G +‚ùŒ{ +‚ˆ£ +€¢Ö +€ €#Z €4` €<­ €Cå €F +€S” +€ZÒ +€^ï +€Ä€lä€t8€yY€á€†€Œ¢¢2‚ +7€L€8¢`‚s‚b…€F¢¢€J€#‚¢‚-Á`Âs‚¢³€’€É€Gó€J"€KS€T†€ZÁ€^ú€a2€bj€€Â€¸€/€­¢¢S€5Æ€7Þ€8ö€9€:¢* "d„„init.c/usr/src/bs/BUILD/glibc-2.1.92/csu/gcc2_compiled.int:t(0,1)=r(0,1);-2147483648;2147483647;char:t(0,2)=r(0,2);0;127;long int:t(0,3)=r(0,3);-2147483648;2147483647;unsigned int:t(0,4)=r(0,4);0000000000000;0037777777777;long unsigned int:t(0,5)=r(0,5);0000000000000;0037777777777;long long int:t(0,6)=@s64;r(0,6);01000000000000000000000;0777777777777777777777;long long unsigned int:t(0,7)=@s64;r(0,7);0000000000000;01777777777777777777777;short int:t(0,8)=@s16;r(0,8);-32768;32767;short unsigned int:t(0,9)=@s16;r(0,9);0;65535;signed char:t(0,10)=@s8;r(0,10);-128;127;unsigned char:t(0,11)=@s8;r(0,11);0;255;float:t(0,12)=r(0,1);4;0;double:t(0,13)=r(0,1);8;0;long double:t(0,14)=r(0,1);12;0;complex int:t(0,15)=s8real:(0,1),0,32;imag:(0,1),32,32;;complex float:t(0,16)=r(0,16);8;0;complex double:t(0,17)=r(0,17);16;0;complex long double:t(0,18)=r(0,18);24;0;__builtin_va_list:t(0,19)=*(0,20)=(0,20)../include/libc-symbols.h../sysdeps/unix/sysv/linux/_G_config.h../sysdeps/unix/sysv/linux/bits/types.h../include/features.h../include/sys/cdefs.h/usr/lib/gcc-lib/i386-redhat-linux/2.96/include/stddef.hsize_t:t(6,1)=(0,4)__u_char:t(3,1)=(0,11)__u_short:t(3,2)=(0,9)__u_int:t(3,3)=(0,4)__u_long:t(3,4)=(0,5)__u_quad_t:t(3,5)=(0,7)__quad_t:t(3,6)=(0,6)__int8_t:t(3,7)=(0,10)__uint8_t:t(3,8)=(0,11)__int16_t:t(3,9)=(0,8)__uint16_t:t(3,10)=(0,9)__int32_t:t(3,11)=(0,1)__uint32_t:t(3,12)=(0,4)__int64_t:t(3,13)=(0,6)__uint64_t:t(3,14)=(0,7)__qaddr_t:t(3,15)=(3,16)=*(3,6)__dev_t:t(3,17)=(3,5)__uid_t:t(3,18)=(3,3)__gid_t:t(3,19)=(3,3)__ino_t:t(3,20)=(3,4)__mode_t:t(3,21)=(3,3)__nlink_t:t(3,22)=(3,3)__off_t:t(3,23)=(0,3)__loff_t:t(3,24)=(3,6)__pid_t:t(3,25)=(0,1)__ssize_t:t(3,26)=(0,1)__rlim_t:t(3,27)=(3,4)__rlim64_t:t(3,28)=(3,5)__id_t:t(3,29)=(3,3)__fsid_t:t(3,30)=(3,31)=s8__val:(3,32)=ar(3,33)=r(3,33);0000000000000;0037777777777;;0;1;(0,1),0,64;;__daddr_t:t(3,34)=(0,1)__caddr_t:t(3,35)=(3,36)=*(0,2)__time_t:t(3,37)=(0,3)__useconds_t:t(3,38)=(0,4)__suseconds_t:t(3,39)=(0,3)__swblk_t:t(3,40)=(0,3)__clock_t:t(3,41)=(0,3)__clockid_t:t(3,42)=(0,1)__timer_t:t(3,43)=(0,1)__fd_mask:t(3,44)=(0,5)__fd_set:t(3,45)=(3,46)=s128fds_bits:(3,47)=ar(3,33);0;31;(3,44),0,1024;;__key_t:t(3,48)=(0,1)__ipc_pid_t:t(3,49)=(0,9)__blksize_t:t(3,50)=(0,3)__blkcnt_t:t(3,51)=(0,3)__blkcnt64_t:t(3,52)=(3,6)__fsblkcnt_t:t(3,53)=(3,4)__fsblkcnt64_t:t(3,54)=(3,5)__fsfilcnt_t:t(3,55)=(3,4)__fsfilcnt64_t:t(3,56)=(3,5)__ino64_t:t(3,57)=(3,5)__off64_t:t(3,58)=(3,24)__t_scalar_t:t(3,59)=(0,3)__t_uscalar_t:t(3,60)=(0,5)__intptr_t:t(3,61)=(0,1)__socklen_t:t(3,62)=(0,4)../linuxthreads/sysdeps/pthread/bits/pthreadtypes.h../sysdeps/unix/sysv/linux/bits/sched.h__sched_param:T(8,1)=s4sched_priority:(0,1),0,32;;_pthread_fastlock:T(7,1)=s8__status:(0,3),0,32;__spinlock:(0,1),32,32;;_pthread_descr:t(7,2)=(7,3)=*(7,4)=xs_pthread_descr_struct:pthread_attr_t:t(7,5)=(7,6)=s36__detachstate:(0,1),0,32;__schedpolicy:(0,1),32,32;__schedparam:(8,1),64,32;__inheritsched:(0,1),96,32;__scope:(0,1),128,32;__guardsize:(6,1),160,32;__stackaddr_set:(0,1),192,32;__stackaddr:(0,19),224,32;__stacksize:(6,1),256,32;;pthread_cond_t:t(7,7)=(7,8)=s12__c_lock:(7,1),0,64;__c_waiting:(7,2),64,32;;pthread_condattr_t:t(7,9)=(7,10)=s4__dummy:(0,1),0,32;;pthread_key_t:t(7,11)=(0,4)pthread_mutex_t:t(7,12)=(7,13)=s24__m_reserved:(0,1),0,32;__m_count:(0,1),32,32;__m_owner:(7,2),64,32;__m_kind:(0,1),96,32;__m_lock:(7,1),128,64;;pthread_mutexattr_t:t(7,14)=(7,15)=s4__mutexkind:(0,1),0,32;;pthread_once_t:t(7,16)=(0,1)_pthread_rwlock_t:T(7,17)=s32__rw_lock:(7,1),0,64;__rw_readers:(0,1),64,32;__rw_writer:(7,2),96,32;__rw_read_waiting:(7,2),128,32;__rw_write_waiting:(7,2),160,32;__rw_kind:(0,1),192,32;__rw_pshared:(0,1),224,32;;pthread_rwlock_t:t(7,18)=(7,17)pthread_rwlockattr_t:t(7,19)=(7,20)=s8__lockkind:(0,1),0,32;__pshared:(0,1),32,32;;pthread_spinlock_t:t(7,21)=(0,1)pthread_barrier_t:t(7,22)=(7,23)=s20__ba_lock:(7,1),0,64;__ba_required:(0,1),64,32;__ba_present:(0,1),96,32;__ba_waiting:(7,2),128,32;;pthread_barrierattr_t:t(7,24)=(7,25)=s4__pshared:(0,1),0,32;;pthread_t:t(7,26)=(0,5)wchar_t:t(9,1)=(0,3)wint_t:t(9,2)=(0,4)../include/wchar.h../wcsmbs/wchar.h__mbstate_t:t(11,1)=(11,2)=s8__count:(0,1),0,32;__value:(11,3)=u4__wch:(9,2),0,32;__wchb:(11,4)=ar(3,33);0;3;(0,2),0,32;;,32,32;;_G_fpos_t:t(2,1)=(2,2)=s12__pos:(3,23),0,32;__state:(11,1),32,64;;_G_fpos64_t:t(2,3)=(2,4)=s16__pos:(3,58),0,64;__state:(11,1),64,64;;../include/gconv.h../iconv/gconv.h :T(13,1)=e__GCONV_OK:0,__GCONV_NOCONV:1,__GCONV_NODB:2,__GCONV_NOMEM:3,__GCONV_EMPTY_INPUT:4,__GCONV_FULL_OUTPUT:5,__GCONV_ILLEGAL_INPUT:6,__GCONV_INCOMPLETE_INPUT:7,__GCONV_ILLEGAL_DESCRIPTOR:8,__GCONV_INTERNAL_ERROR:9,; :T(13,2)=e__GCONV_IS_LAST:1,__GCONV_IGNORE_ERRORS:2,;__gconv_fct:t(13,3)=(13,4)=*(13,5)=f(0,1)__gconv_init_fct:t(13,6)=(13,7)=*(13,8)=f(0,1)__gconv_end_fct:t(13,9)=(13,10)=*(13,11)=f(0,20)__gconv_trans_fct:t(13,12)=(13,13)=*(13,14)=f(0,1)__gconv_trans_context_fct:t(13,15)=(13,16)=*(13,17)=f(0,1)__gconv_trans_query_fct:t(13,18)=(13,19)=*(13,20)=f(0,1)__gconv_trans_init_fct:t(13,21)=(13,22)=*(13,23)=f(0,1)__gconv_trans_end_fct:t(13,24)=(13,25)=*(13,26)=f(0,20)__gconv_trans_data:T(13,27)=s20__trans_fct:(13,12),0,32;__trans_context_fct:(13,15),32,32;__trans_end_fct:(13,24),64,32;__data:(0,19),96,32;__next:(13,28)=*(13,27),128,32;;__gconv_step:T(13,29)=s56__shlib_handle:(13,30)=*(13,31)=xs__gconv_loaded_object:,0,32;__modname:(13,32)=*(0,2),32,32;__counter:(0,1),64,32;__from_name:(13,32),96,32;__to_name:(13,32),128,32;__fct:(13,3),160,32;__init_fct:(13,6),192,32;__end_fct:(13,9),224,32;__min_needed_from:(0,1),256,32;__max_needed_from:(0,1),288,32;__min_needed_to:(0,1),320,32;__max_needed_to:(0,1),352,32;__stateful:(0,1),384,32;__data:(0,19),416,32;;__gconv_step_data:T(13,33)=s36__outbuf:(13,34)=*(0,11),0,32;__outbufend:(13,34),32,32;__flags:(0,1),64,32;__invocation_counter:(0,1),96,32;__internal_use:(0,1),128,32;__statep:(13,35)=*(11,1),160,32;__state:(11,1),192,64;__trans:(13,28),256,32;;__gconv_info:T(13,36)=s8__nsteps:(6,1),0,32;__steps:(13,37)=*(13,29),32,32;__data:(13,38)=ar(3,33);0;-1;(13,33),64,0;;__gconv_t:t(13,39)=(13,40)=*(13,36)_G_iconv_t:t(2,5)=(2,6)=u44__cd:(13,36),0,64;__combined:(2,7)=s44__cd:(13,36),0,64;__data:(13,33),64,288;;,0,352;;_G_int16_t:t(2,8)=(0,8)_G_int32_t:t(2,9)=(0,1)_G_uint16_t:t(2,10)=(0,9)_G_uint32_t:t(2,11)=(0,4)_IO_stdin_used:G(0,1)GCC: (GNU) 2.96 20000731 (experimental)GCC: (GNU) 2.96 20000731 (experimental)GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.1 2.96-81)GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.1 2.96-81)GCC: (GNU) 2.96 20000731 (Red Hat Linux 7.1 2.96-81)GCC: (GNU) 2.96 20000731 (experimental)01.0101.0101.0101.0101.0101.01.symtab.strtab.shstrtab.interp.note.ABI-tag.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.got.rel.plt.init.plt.text.fini.rodata.data.eh_frame.ctors.dtors.got.dynamic.sbss.bss.stab.stabstr.comment.noteô€ô# 1((D7 llÀ?,‚,¶Gÿÿÿoâ‚âTþÿÿoü‚ü@c <ƒ<l DƒDH uŒƒŒ/{¼ƒ¼ €`„`†p†pŒ†=”ЖКà–à¤ä–ä«ì–ì²ô–ô4·(—( ÀÈ—ÈÆÈ—ÈËÈ  Ñè@Ú((ãE)x½)éX/ : x4oô€(l,‚â‚ü‚<ƒDƒ Œƒ +¼ƒ `„ p† +†Жà–ä–ì–ô–(—È—È—ñÿ „„ ñÿ"ñÿ „ -Ø–1ì–?Ü–K„ aà–tð„ È—ˆ… ”0… Ÿà–­ä–"ñÿ 0† »0† Ñè–”`† Ÿà–Þð–ëà–ñÿ p† ùñÿ @… ̃¥܃:%(—.ìƒ"OVÔ–cŒƒ +iüƒ¬"Œ`„ “È—ñÿŸ@…ã ¤ „àÁЖ Ì„2Þp† +ä,„‘"È—ñÿô–à—ñÿ"<„™3”†BЖOL„é` initfini.cgcc2_compiled.init.ccrtstuff.cp.0__DTOR_LIST__completed.1__do_global_dtors_aux__EH_FRAME_BEGIN__fini_dummyobject.2frame_dummyinit_dummyforce_to_data__CTOR_LIST____do_global_ctors_aux__CTOR_END____DTOR_END____FRAME_END__bin2srec.cfgetc@@GLIBC_2.0feof@@GLIBC_2.0_DYNAMIC__register_frame_info@@GLIBC_2.0_fp_hw__dso_handle_init__deregister_frame_info@@GLIBC_2.0_start__bss_startmain__libc_start_main@@GLIBC_2.0data_startprintf@@GLIBC_2.0_fini__cxa_finalize@@GLIBC_2.1.3_edata_GLOBAL_OFFSET_TABLE__endfopen@@GLIBC_2.1_IO_stdin_used__data_starterror@@GLIBC_2.0__gmon_start__ \ No newline at end of file
trunk/orp/orp_soc/sw.old/console-xess/bin2srec Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/font.c =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/font.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/font.c (revision 782) @@ -0,0 +1,257 @@ +unsigned char font[256][12] = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 0, 00h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 1, 01h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 2, 02h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 3, 03h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 4, 04h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 5, 05h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 6, 06h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 7, 07h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 8, 08h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 9, 09h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 10, 0ah */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 11, 0bh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 12, 0ch */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 13, 0dh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 14, 0eh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 15, 0fh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 16, 10h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 17, 11h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 18, 12h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 19, 13h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 20, 14h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 21, 15h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 22, 16h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 23, 17h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 24, 18h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 25, 19h */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 26, 1ah */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 27, 1bh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 28, 1ch */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 29, 1dh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 30, 1eh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 31, 1fh */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 32, 20h, ' ' */ + {0x00, 0x0c, 0x1e, 0x1e, 0x1e, 0x0c, 0x0c, 0x00, 0x0c, 0x0c, 0x00, 0x00}, /* 33, 21h, '!' */ + {0x00, 0x66, 0x66, 0x66, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 34, 22h, '"' */ + {0x00, 0x36, 0x36, 0x7f, 0x36, 0x36, 0x36, 0x7f, 0x36, 0x36, 0x00, 0x00}, /* 35, 23h, '#' */ + {0x0c, 0x0c, 0x3e, 0x03, 0x03, 0x1e, 0x30, 0x30, 0x1f, 0x0c, 0x0c, 0x00}, /* 36, 24h, '$' */ + {0x00, 0x00, 0x00, 0x23, 0x33, 0x18, 0x0c, 0x06, 0x33, 0x31, 0x00, 0x00}, /* 37, 25h, '%' */ + {0x00, 0x0e, 0x1b, 0x1b, 0x0e, 0x5f, 0x7b, 0x33, 0x3b, 0x6e, 0x00, 0x00}, /* 38, 26h, '&' */ + {0x00, 0x0c, 0x0c, 0x0c, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 39, 27h, ''' */ + {0x00, 0x30, 0x18, 0x0c, 0x06, 0x06, 0x06, 0x0c, 0x18, 0x30, 0x00, 0x00}, /* 40, 28h, '(' */ + {0x00, 0x06, 0x0c, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x06, 0x00, 0x00}, /* 41, 29h, ')' */ + {0x00, 0x00, 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, 0x00, 0x00}, /* 42, 2ah, '*' */ + {0x00, 0x00, 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00}, /* 43, 2bh, '+' */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x06, 0x00}, /* 44, 2ch, ',' */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 45, 2dh, '-' */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00}, /* 46, 2eh, '.' */ + {0x00, 0x00, 0x40, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00}, /* 47, 2fh, '/' */ + {0x00, 0x3e, 0x63, 0x73, 0x7b, 0x6b, 0x6f, 0x67, 0x63, 0x3e, 0x00, 0x00}, /* 48, 30h, '0' */ + {0x00, 0x08, 0x0c, 0x0f, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x3f, 0x00, 0x00}, /* 49, 31h, '1' */ + {0x00, 0x1e, 0x33, 0x33, 0x30, 0x18, 0x0c, 0x06, 0x33, 0x3f, 0x00, 0x00}, /* 50, 32h, '2' */ + {0x00, 0x1e, 0x33, 0x30, 0x30, 0x1c, 0x30, 0x30, 0x33, 0x1e, 0x00, 0x00}, /* 51, 33h, '3' */ + {0x00, 0x30, 0x38, 0x3c, 0x36, 0x33, 0x7f, 0x30, 0x30, 0x78, 0x00, 0x00}, /* 52, 34h, '4' */ + {0x00, 0x3f, 0x03, 0x03, 0x03, 0x1f, 0x30, 0x30, 0x33, 0x1e, 0x00, 0x00}, /* 53, 35h, '5' */ + {0x00, 0x1c, 0x06, 0x03, 0x03, 0x1f, 0x33, 0x33, 0x33, 0x1e, 0x00, 0x00}, /* 54, 36h, '6' */ + {0x00, 0x7f, 0x63, 0x63, 0x60, 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x00, 0x00}, /* 55, 37h, '7' */ + {0x00, 0x1e, 0x33, 0x33, 0x37, 0x1e, 0x3b, 0x33, 0x33, 0x1e, 0x00, 0x00}, /* 56, 38h, '8' */ + {0x00, 0x1e, 0x33, 0x33, 0x33, 0x3e, 0x18, 0x18, 0x0c, 0x0e, 0x00, 0x00}, /* 57, 39h, '9' */ + {0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x00}, /* 58, 3ah, ':' */ + {0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x1c, 0x1c, 0x18, 0x0c, 0x00}, /* 59, 3bh, ';' */ + {0x00, 0x30, 0x18, 0x0c, 0x06, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x00, 0x00}, /* 60, 3ch, '<' */ + {0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 61, 3dh, '=' */ + {0x00, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x00, 0x00}, /* 62, 3eh, '>' */ + {0x00, 0x1e, 0x33, 0x30, 0x18, 0x0c, 0x0c, 0x00, 0x0c, 0x0c, 0x00, 0x00}, /* 63, 3fh, '?' */ + {0x00, 0x3e, 0x63, 0x63, 0x7b, 0x7b, 0x7b, 0x03, 0x03, 0x3e, 0x00, 0x00}, /* 64, 40h, '@' */ + {0x00, 0x0c, 0x1e, 0x33, 0x33, 0x33, 0x3f, 0x33, 0x33, 0x33, 0x00, 0x00}, /* 65, 41h, 'A' */ + {0x00, 0x3f, 0x66, 0x66, 0x66, 0x3e, 0x66, 0x66, 0x66, 0x3f, 0x00, 0x00}, /* 66, 42h, 'B' */ + {0x00, 0x3c, 0x66, 0x63, 0x03, 0x03, 0x03, 0x63, 0x66, 0x3c, 0x00, 0x00}, /* 67, 43h, 'C' */ + {0x00, 0x1f, 0x36, 0x66, 0x66, 0x66, 0x66, 0x66, 0x36, 0x1f, 0x00, 0x00}, /* 68, 44h, 'D' */ + {0x00, 0x7f, 0x46, 0x06, 0x26, 0x3e, 0x26, 0x06, 0x46, 0x7f, 0x00, 0x00}, /* 69, 45h, 'E' */ + {0x00, 0x7f, 0x66, 0x46, 0x26, 0x3e, 0x26, 0x06, 0x06, 0x0f, 0x00, 0x00}, /* 70, 46h, 'F' */ + {0x00, 0x3c, 0x66, 0x63, 0x03, 0x03, 0x73, 0x63, 0x66, 0x7c, 0x00, 0x00}, /* 71, 47h, 'G' */ + {0x00, 0x33, 0x33, 0x33, 0x33, 0x3f, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00}, /* 72, 48h, 'H' */ + {0x00, 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, 0x00}, /* 73, 49h, 'I' */ + {0x00, 0x78, 0x30, 0x30, 0x30, 0x30, 0x33, 0x33, 0x33, 0x1e, 0x00, 0x00}, /* 74, 4ah, 'J' */ + {0x00, 0x67, 0x66, 0x36, 0x36, 0x1e, 0x36, 0x36, 0x66, 0x67, 0x00, 0x00}, /* 75, 4bh, 'K' */ + {0x00, 0x0f, 0x06, 0x06, 0x06, 0x06, 0x46, 0x66, 0x66, 0x7f, 0x00, 0x00}, /* 76, 4ch, 'L' */ + {0x00, 0x63, 0x77, 0x7f, 0x7f, 0x6b, 0x63, 0x63, 0x63, 0x63, 0x00, 0x00}, /* 77, 4dh, 'M' */ + {0x00, 0x63, 0x63, 0x67, 0x6f, 0x7f, 0x7b, 0x73, 0x63, 0x63, 0x00, 0x00}, /* 78, 4eh, 'N' */ + {0x00, 0x1c, 0x36, 0x63, 0x63, 0x63, 0x63, 0x63, 0x36, 0x1c, 0x00, 0x00}, /* 79, 4fh, 'O' */ + {0x00, 0x3f, 0x66, 0x66, 0x66, 0x3e, 0x06, 0x06, 0x06, 0x0f, 0x00, 0x00}, /* 80, 50h, 'P' */ + {0x00, 0x1c, 0x36, 0x63, 0x63, 0x63, 0x73, 0x7b, 0x3e, 0x30, 0x78, 0x00}, /* 81, 51h, 'Q' */ + {0x00, 0x3f, 0x66, 0x66, 0x66, 0x3e, 0x36, 0x66, 0x66, 0x67, 0x00, 0x00}, /* 82, 52h, 'R' */ + {0x00, 0x1e, 0x33, 0x33, 0x03, 0x0e, 0x18, 0x33, 0x33, 0x1e, 0x00, 0x00}, /* 83, 53h, 'S' */ + {0x00, 0x3f, 0x2d, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, 0x00}, /* 84, 54h, 'T' */ + {0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x1e, 0x00, 0x00}, /* 85, 55h, 'U' */ + {0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x1e, 0x0c, 0x00, 0x00}, /* 86, 56h, 'V' */ + {0x00, 0x63, 0x63, 0x63, 0x63, 0x6b, 0x6b, 0x36, 0x36, 0x36, 0x00, 0x00}, /* 87, 57h, 'W' */ + {0x00, 0x33, 0x33, 0x33, 0x1e, 0x0c, 0x1e, 0x33, 0x33, 0x33, 0x00, 0x00}, /* 88, 58h, 'X' */ + {0x00, 0x33, 0x33, 0x33, 0x33, 0x1e, 0x0c, 0x0c, 0x0c, 0x1e, 0x00, 0x00}, /* 89, 59h, 'Y' */ + {0x00, 0x7f, 0x73, 0x19, 0x18, 0x0c, 0x06, 0x46, 0x63, 0x7f, 0x00, 0x00}, /* 90, 5ah, 'Z' */ + {0x00, 0x3c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x3c, 0x00, 0x00}, /* 91, 5bh, '[' */ + {0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x40, 0x00, 0x00}, /* 92, 5ch, '\' */ + {0x00, 0x3c, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3c, 0x00, 0x00}, /* 93, 5dh, ']' */ + {0x08, 0x1c, 0x36, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 94, 5eh, '^' */ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00}, /* 95, 5fh, '_' */ + {0x0c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 96, 60h, '`' */ + {0x00, 0x00, 0x00, 0x00, 0x1e, 0x30, 0x3e, 0x33, 0x33, 0x6e, 0x00, 0x00}, /* 97, 61h, 'a' */ + {0x00, 0x07, 0x06, 0x06, 0x3e, 0x66, 0x66, 0x66, 0x66, 0x3b, 0x00, 0x00}, /* 98, 62h, 'b' */ + {0x00, 0x00, 0x00, 0x00, 0x1e, 0x33, 0x03, 0x03, 0x33, 0x1e, 0x00, 0x00}, /* 99, 63h, 'c' */ + {0x00, 0x38, 0x30, 0x30, 0x3e, 0x33, 0x33, 0x33, 0x33, 0x6e, 0x00, 0x00}, /* 100, 64h, 'd' */ + {0x00, 0x00, 0x00, 0x00, 0x1e, 0x33, 0x3f, 0x03, 0x33, 0x1e, 0x00, 0x00}, /* 101, 65h, 'e' */ + {0x00, 0x1c, 0x36, 0x06, 0x06, 0x1f, 0x06, 0x06, 0x06, 0x0f, 0x00, 0x00}, /* 102, 66h, 'f' */ + {0x00, 0x00, 0x00, 0x00, 0x6e, 0x33, 0x33, 0x33, 0x3e, 0x30, 0x33, 0x1e}, /* 103, 67h, 'g' */ + {0x00, 0x07, 0x06, 0x06, 0x36, 0x6e, 0x66, 0x66, 0x66, 0x67, 0x00, 0x00}, /* 104, 68h, 'h' */ + {0x00, 0x18, 0x18, 0x00, 0x1e, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x00, 0x00}, /* 105, 69h, 'i' */ + {0x00, 0x30, 0x30, 0x00, 0x3c, 0x30, 0x30, 0x30, 0x30, 0x33, 0x33, 0x1e}, /* 106, 6ah, 'j' */ + {0x00, 0x07, 0x06, 0x06, 0x66, 0x36, 0x1e, 0x36, 0x66, 0x67, 0x00, 0x00}, /* 107, 6bh, 'k' */ + {0x00, 0x1e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x7e, 0x00, 0x00}, /* 108, 6ch, 'l' */ + {0x00, 0x00, 0x00, 0x00, 0x3f, 0x6b, 0x6b, 0x6b, 0x6b, 0x63, 0x00, 0x00}, /* 109, 6dh, 'm' */ + {0x00, 0x00, 0x00, 0x00, 0x1f, 0x33, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00}, /* 110, 6eh, 'n' */ + {0x00, 0x00, 0x00, 0x00, 0x1e, 0x33, 0x33, 0x33, 0x33, 0x1e, 0x00, 0x00}, /* 111, 6fh, 'o' */ + {0x00, 0x00, 0x00, 0x00, 0x3b, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x06, 0x0f}, /* 112, 70h, 'p' */ + {0x00, 0x00, 0x00, 0x00, 0x6e, 0x33, 0x33, 0x33, 0x33, 0x3e, 0x30, 0x78}, /* 113, 71h, 'q' */ + {0x00, 0x00, 0x00, 0x00, 0x37, 0x76, 0x6e, 0x06, 0x06, 0x0f, 0x00, 0x00}, /* 114, 72h, 'r' */ + {0x00, 0x00, 0x00, 0x00, 0x1e, 0x33, 0x06, 0x18, 0x33, 0x1e, 0x00, 0x00}, /* 115, 73h, 's' */ + {0x00, 0x00, 0x04, 0x06, 0x3f, 0x06, 0x06, 0x06, 0x36, 0x1c, 0x00, 0x00}, /* 116, 74h, 't' */ + {0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x6e, 0x00, 0x00}, /* 117, 75h, 'u' */ + {0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x1e, 0x0c, 0x00, 0x00}, /* 118, 76h, 'v' */ + {0x00, 0x00, 0x00, 0x00, 0x63, 0x63, 0x6b, 0x6b, 0x36, 0x36, 0x00, 0x00}, /* 119, 77h, 'w' */ + {0x00, 0x00, 0x00, 0x00, 0x63, 0x36, 0x1c, 0x1c, 0x36, 0x63, 0x00, 0x00}, /* 120, 78h, 'x' */ + {0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x30, 0x18, 0x0f}, /* 121, 79h, 'y' */ + {0x00, 0x00, 0x00, 0x00, 0x3f, 0x31, 0x18, 0x06, 0x23, 0x3f, 0x00, 0x00}, /* 122, 7ah, 'z' */ + {0x00, 0x38, 0x0c, 0x0c, 0x06, 0x03, 0x06, 0x0c, 0x0c, 0x38, 0x00, 0x00}, /* 123, 7bh, '{' */ + {0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00}, /* 124, 7ch, '|' */ + {0x00, 0x07, 0x0c, 0x0c, 0x18, 0x30, 0x18, 0x0c, 0x0c, 0x07, 0x00, 0x00}, /* 125, 7dh, '}' */ + {0x00, 0xce, 0x5b, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, /* 126, 7eh, '~' */ + {0x00, 0x00, 0x00, 0x08, 0x1c, 0x36, 0x63, 0x63, 0x7f, 0x00, 0x00, 0x00}, /* 127, 7fh, '' */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 128, 80h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 129, 81h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 130, 82h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 131, 83h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 132, 84h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 133, 85h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 134, 86h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 135, 87h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 136, 88h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 137, 89h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 138, 8ah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 139, 8bh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 140, 8ch */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 141, 8dh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 142, 8eh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 143, 8fh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 144, 90h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 145, 91h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 146, 92h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 147, 93h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 148, 94h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 149, 95h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 150, 96h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 151, 97h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 152, 98h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 153, 99h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 154, 9ah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 155, 9bh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 156, 9ch */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 157, 9dh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 158, 9eh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 159, 9fh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 160, a0h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 161, a1h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 162, a2h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 163, a3h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 164, a4h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 165, a5h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 166, a6h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 167, a7h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 168, a8h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 169, a9h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 170, aah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 171, abh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 172, ach */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 173, adh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 174, aeh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 175, afh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 176, b0h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 177, b1h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 178, b2h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 179, b3h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 180, b4h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 181, b5h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 182, b6h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 183, b7h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 184, b8h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 185, b9h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 186, bah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 187, bbh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 188, bch */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 189, bdh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 190, beh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 191, bfh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 192, c0h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 193, c1h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 194, c2h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 195, c3h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 196, c4h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 197, c5h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 198, c6h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 199, c7h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 200, c8h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 201, c9h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 202, cah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 203, cbh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 204, cch */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 205, cdh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 206, ceh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 207, cfh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 208, d0h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 209, d1h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 210, d2h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 211, d3h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 212, d4h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 213, d5h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 214, d6h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 215, d7h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 216, d8h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 217, d9h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 218, dah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 219, dbh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 220, dch */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 221, ddh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 222, deh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 223, dfh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 224, e0h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 225, e1h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 226, e2h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 227, e3h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 228, e4h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 229, e5h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 230, e6h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 231, e7h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 232, e8h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 233, e9h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 234, eah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 235, ebh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 236, ech */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 237, edh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 238, eeh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 239, efh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 240, f0h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 241, f1h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 242, f2h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 243, f3h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 244, f4h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 245, f5h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 246, f6h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 247, f7h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 248, f8h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 249, f9h */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 250, fah */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 251, fbh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 252, fch */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 253, fdh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 254, feh */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};/* 255, ffh */
trunk/orp/orp_soc/sw.old/console-xess/font.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/except.S =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/except.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/except.S (revision 782) @@ -0,0 +1,161 @@ + .section .reset + .extern _reset_support + .extern _src_beg + .extern _dst_beg + .extern _dst_end + .extern _c_reset + +_reset: + l.nop + l.nop + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Copy form flash to sram */ + + l.movhi r3,hi(_src_beg) + l.ori r3,r3,lo(_src_beg) + l.movhi r4,hi(_dst_beg) + l.ori r4,r4,lo(_dst_beg) + l.movhi r5,hi(_dst_end) + l.ori r5,r5,lo(_dst_end) + l.sub r5,r5,r4 + l.sfeqi r5,0 + l.bf 2f + l.nop +1: l.lwz r6,0(r3) + l.sw 0(r4),r6 + l.addi r3,r3,4 + l.addi r4,r4,4 + l.addi r5,r5,-4 + l.sfgtsi r5,0 + l.bf 1b + l.nop + +2: + + /* Verify sram data */ +/* l.movhi r3,hi(_src_beg) + l.ori r3,r3,lo(_src_beg) + l.addi r3,r3,4 + l.movhi r4,hi(_dst_beg) + l.ori r4,r4,lo(_dst_beg) + l.addi r4,r4,4 + l.movhi r5,hi(_dst_end) + l.ori r5,r5,lo(_dst_end) + l.sub r5,r5,r4 + l.sfeqi r5,0 + l.bf 2f + l.nop +1: l.lwz r6,0(r3) + l.lwz r7,0(r4) + l.sfeq r6,r7 + l.bnf img_err + l.nop + l.addi r3,r3,4 + l.addi r4,r4,4 + l.addi r5,r5,-4 + l.sfgtsi r5,0 + l.bf 1b + l.nop +2: +*/ + l.movhi r1,hi(0x80020000) + l.addi r1,r1,lo(0x80020000) + l.addi r1,r1,-4 + + l.movhi r2,hi(_reset_support) + l.ori r2,r2,lo(_reset_support) + l.jr r2 + l.addi r2,r0,0 + +img_err: + l.movhi r15,hi(0x80000000) + l.addi r15,r15,lo(0x80000000) + + l.addi r8,r6,0 + l.addi r9,r7,0 + l.addi r10,r3,0 + l.addi r11,r4,0 + + l.sw 0(r15),r8 + + l.srli r8,r8,8 + l.sw 0(r15),r8 + + l.srli r8,r8,8 + l.sw 0(r15),r8 + + l.srli r8,r8,8 + l.sw 0(r15),r8 + + l.sw 0(r15),r10 + + l.srli r10,r10,8 + l.sw 0(r15),r10 + + l.srli r10,r10,8 + l.sw 0(r15),r10 + + l.srli r10,r10,8 + l.sw 0(r15),r10 + + + l.sw 0(r15),r9 + + l.srli r9,r9,8 + l.sw 0(r15),r9 + + l.srli r9,r9,8 + l.sw 0(r15),r9 + + l.srli r9,r9,8 + l.sw 0(r15),r9 + + l.sw 0(r15),r11 + + l.srli r11,r11,8 + l.sw 0(r15),r11 + + l.srli r11,r11,8 + l.sw 0(r15),r11 + + l.srli r11,r11,8 + l.sw 0(r15),r11 + + l.addi r8,r0,0xee + l.sw 0(r15),r8 + + l.j img_err + l.nop
trunk/orp/orp_soc/sw.old/console-xess/except.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/spr_defs.h (revision 782) @@ -0,0 +1,393 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/console-xess/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/Makefile (revision 782) @@ -0,0 +1,30 @@ +CCFLAGS = -O2 -g -nostdlib + +all: console-xess + +console-xess: screen.o font.o except.o support.o console-xess.o + or32-rtems-ld -g -Txess.ld except.o support.o screen.o font.o console-xess.o -o console-xess.or32 + or32-rtems-objcopy -O binary console-xess.or32 console-xess.bin + ./bin2srec console-xess.bin > console-xess.srec + +console-xess.o: console-xess.c + or32-rtems-gcc $(CCFLAGS) console-xess.c -c -DOR1K + +font.o: font.c + or32-rtems-gcc $(CCFLAGS) font.c -c -DOR1K + +screen.o: screen.c screen.h + or32-rtems-gcc $(CCFLAGS) screen.c -c -DOR1K + +except.o: except.S + or32-rtems-as except.S -o except.o + + +support.o: support.c spr_defs.h + or32-rtems-gcc $(CCFLAGS) support.c -c -DOR1K + +cprintf.o: cprintf.c + or32-rtems-gcc $(CCFLAGS) cprintf.c -c -DOR1K + +clean: + rm -f *.o console-xess console-xess.or32 *.bin *.srec
trunk/orp/orp_soc/sw.old/console-xess/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/console-xess/support.c =================================================================== --- trunk/orp/orp_soc/sw.old/console-xess/support.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/console-xess/support.c (revision 782) @@ -0,0 +1,55 @@ +/* Support */ + +#include + +#if OR1K + +void __dummy() {} /* to fix RTL simulator bug */ +void reset_support() +{ + main(); + exit(0); +} + +void printf(const char *fmt, ...) +{ + va_list args; + va_start(args, fmt); + asm("l.addi\tr3,%0,0": :"r" (fmt)); + asm("l.addi\tr4,%0,0": :"r" (args)); + asm("l.sys 202"); +} + +void exit(int x) +{ + asm("l.sys 203"); +} + +void report(unsigned long value) +{ + unsigned long spr = 0x1234; + asm("l.mtspr\t\t%0,%1,0x0" : : "r" (spr), "r" (value)); + return; +} + +void __main() +{ +} + +void bcopy(const void *srcvoid, void * dstvoid, int length) +{ + char *dst = dstvoid; + const char *src = srcvoid; + + while (length--) + *dst++ = *src++; +} + +#else +void report(unsigned long value) +{ + unsigned long spr = 0x1234; + printf("l.mtspr %x,%x\n", spr, value); + return; +} +#endif
trunk/orp/orp_soc/sw.old/console-xess/support.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/cbasic/cbasic.c =================================================================== --- trunk/orp/orp_soc/sw.old/cbasic/cbasic.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/cbasic/cbasic.c (revision 782) @@ -0,0 +1,248 @@ +/* Test basic c functionality. */ + +#define DEBUG 0 +#define DBGFINE 0 + +#include "../support/support.h" + +void buserr_except(){} +void dpf_except(){} +void ipf_except(){} +void lpint_except(){} +void align_except(){} +void illegal_except(){} +void hpint_except(){} +void dtlbmiss_except(){} +void itlbmiss_except(){} +void range_except(){} +void syscall_except(){} +void res1_except(){} +void trap_except(){} +void res2_except(){} + +signed long test_cond(int i) +{ + switch(i) { + case 1: + i += 1; + break; + case -1: + i -= 10; + break; + default: + return i; + } + + if (i == 2) /* normaly i == 2 */ + i += 1; + else + i -= 10; + + if (i > 2) /* normaly i == 3 */ + i += 1; + else + i -=10; + + if (i >= 4) /* normaly i == 4 */ + i += 1; + else + i -= 10; + + if (i <= 5) /* normaly i == 5 */ + i += 1; + else + i -= 10; + + if (i < 7) /* normaly i == 6 */ + i += 1; + else + i -= 10; + + if (i != 666) /* normaly i == 7 */ + i += 1; + else + i -= 10; + + return i; /* with initial i == 1 return 8 */ +} + +signed long test_loops(int i) +{ + int j = 0; + + for(; i < 10; i++) + j += 2; + + do { + i -= 3; + } while (j--); + + return i; +} + +signed long test_arith(int i) +{ + int mul = 0, div = 0; + int j; + + for(j = i; j < 40; j++) { + + mul += j*j*i; +#if 0 + report(mul); +#endif + div += mul + (j+5); +#if 0 + report(div); +#endif + } + + report (mul+div); + return (mul + div); +} + +signed long test_bitop(int i) +{ + int shl = 0, shr = 0, bit = 0; + int j; + + for(j = i; j < 35; j++) { + shl += 1 << j; +#if 0 + printf("%u. shl:%.8lx", j, shl); + report(shl); +#endif + shr += 0x80000000 >> j; +#if 0 + printf(" shr:%.8lx", shr); + report(shr); +#endif + bit += (~j ^ 0x11223344) & 0x33557788 + j | 0x11223344; +#if 0 + printf(" bit:%.8lx\n", bit); + report(bit); +#endif + } + + return (shl + shr + bit); +} + +signed long test_types(int i) +{ + unsigned char uc; + signed char sc; + unsigned short us; + signed short ss; + unsigned long ul; + signed long sl; + + int j; + + i ^= 0x10203040; + + for(j = 0; j < 10; j++) { + uc = i; + sc = i; + us = i; + ss = i; + ul = i; + sl = i; +#if 0 + printf("%u. i:%.8lx ", j, i); + printf("uc:%.8lx sc:%.8lx ", uc, sc); + report(uc); + report(sc); + printf("us:%.8lx ss:%.8lx ", us, ss); + report(us); + report(ss); + printf("ul:%.8lx sl:%.8lx\n", ul, sl); + report(ul); + report(sl); +#endif + i = uc + sc + us + ss + ul + sl; + } + + return i; +} + +signed long test_array(int i) +{ + char a1[] = "This test string MUST NOT be modified..."; + char a2[100]; + + report(a1[5]); + memcpy(a2, a1, 40); + report(a1[5]); + report(a2[5]); + report(i); + /* register reload test */ + i += a2[0] + a2[1] + a2[2] + a2[3] + a2[4] + a2[5] + a2[6] + a2[7] + + a2[8] + a2[9] + a2[10] + a2[11] + a2[12] + a2[13] + a2[14] + a2[15] + + a2[16] + a2[17] + a2[18] + a2[19] + a2[20] + a2[21] + a2[22] + a2[23] + + a2[24] + a2[25] + a2[26] + a2[27] + a2[28] + a2[29] + a2[30] + a2[31] + + a2[32] + a2[33] + a2[34] + a2[35] + a2[36] + a2[37] + a2[38] + a2[39]; + report(i); + + return i; +} + +int main() +{ + signed long result1 = 0; + signed long result2 = 0; + signed long result3 = 0; + +#if DEBUG + printf("Start...\n"); +#endif + result1 = test_cond(1); + result2 = test_cond(-1); + result3 -= result1 + result2; + report(result2); +#if DEBUG + printf("After test_cond: 0x%.8lx 0x%.8lx\n", result1, result2); +#endif + + result1 = test_loops(1); + result2 = test_loops(-1); + result3 -= result1 + result2; + report(result2); +#if DEBUG + printf("After test_loops: 0x%.8lx 0x%.8lx\n", result1, result2); +#endif + + result1 = test_arith(1); + result2 = test_arith(-1); + result3 -= result1 + result2; + report(result2); +#if DEBUG + printf("After test_arith: 0x%.8lx 0x%.8lx\n", result1, result2); +#endif + + result1 = test_bitop(1); + result2 = test_bitop(-1); + result3 -= result1 + result2; + report(result2); +#if DEBUG + printf("After test_bitop: 0x%.8lx 0x%.8lx\n", result1, result2); +#endif + + result1 = test_types(1); + result2 = test_types(-1); + result3 -= result1 + result2; + report(result2); +#if DEBUG + printf("After test_types: 0x%.8lx 0x%.8lx\n", result1, result2); +#endif + result1 = test_array(1); + result2 = test_array(-1); + result3 -= result1 + result2; + report(result2); +#if DEBUG + printf("After test_array: 0x%.8lx 0x%.8lx\n", result1, result2); +#endif + + printf("RESULT: %.8lx\n", result3-0x6cdd479d); + report(result3-0x6cdd401e); + exit(result3-0x6cdd401e); +}
trunk/orp/orp_soc/sw.old/cbasic/cbasic.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/cbasic/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/cbasic/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/cbasic/Makefile (revision 782) @@ -0,0 +1,70 @@ + +cases = cbasic-nocache-O0 cbasic-nocache-O2 cbasic-ic-O0 cbasic-ic-O2 cbasic-dc-O0 cbasic-dc-O2 cbasic-icdc-O0 cbasic-icdc-O2 +common = ../support/except.o ../support/support.o + +all: $(cases) + +cbasic-nocache-O0: $(common) cbasic-O0.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-nocache-O2: $(common) cbasic-O2.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-ic-O0: $(common) cbasic-O0.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-ic-O2: $(common) cbasic-O2.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-dc-O0: $(common) cbasic-O0.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-dc-O2: $(common) cbasic-O2.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-icdc-O0: $(common) cbasic-O0.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-icdc-O2: $(common) cbasic-O2.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +cbasic-O0.o: cbasic.c + or32-rtems-gcc -O0 $? -c -o $@ + +cbasic-O2.o: cbasic.c + or32-rtems-gcc -O2 $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/cbasic/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/sim.cfg =================================================================== --- trunk/orp/orp_soc/sw.old/sim.cfg (nonexistent) +++ trunk/orp/orp_soc/sw.old/sim.cfg (revision 782) @@ -0,0 +1,569 @@ +/* sim.cfg -- Simulator configuration script file + Copyright (C) 2001, Marko Mlinar, markom@opencores.org + +This file includes a lot of help about configurations and default one + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + + +/* INTRODUCTION + + The or1ksim have various parameters, which can be set in configuration + files. Multiple configurations may be used and switched between at + or1ksim startup. + By default, or1ksim loads condfiguration file from './sim.cfg' and if not + found it checks '~/.or1k/sim.cfg'. If even this file is not found or + all parameters are not defined, default configuration is used. + Users should not rely on default configuration, but rather redefine all + critical settings, since default configuration may differ in newer + versions of the or1ksim. + If multiple configurations are used, user can switch between them by + supplying -f option when starting simulator. + + This file may contain (standard C) only comments - no // support. + + Like normal configuration file, this file is divided in sections, + where each section is described in detail also. + + Some section also have subsections. One example of such subsection is + block: + + device + instance specific parameters... + enddevice + + which creates a device instance. +*/ + + +/* MEMORY SECTION + + This section specifies how is initial memory generated and which blocks + it consist of. + + type = random/unknown/pattern + specifies the initial memory values. 'random' parameter generate + random memory using seed 'random_seed' parameter. 'pattern' parameter + fills memory with 'pattern' parameter and 'unknown' does not specify + how memory should be generated - the fastest option. + + random_seed = + random seed for randomizer, used if type = random + + pattern = + pattern to fill memory, used if type = pattern + + nmemories = + number of memory instances connected + + instance specific: + baseaddr = + memory start address + + size = + memory size + + name = "" + memory block name + + ce = + chip enable index of the memory instance + + delayr = + cycles, required for read access, -1 if instance does not support reading + + delayw = + cycles, required for write access, -1 if instance does not support writing + + 16550 = 0/1 + 0, if this device is uart 16450 and 1, if it is 16550 + + log = "" + filename, where to log memory accesses to, no log, if log command is not specified +*/ + +section memory + /*random_seed = 12345 + type = random*/ + pattern = 0x00 + type = unknown /* Fastest */ + + nmemories = 3 + device 0 + name = "Flash" + ce = 0 + baseaddr = 0x00000000 + size = 0x00200000 + delayr = 10 + delayw = -1 + enddevice + + device 1 + name = "RAM1" + ce = 1 + baseaddr = 0x40000000 + size = 0x00200000 + delayr = 2 + delayw = 4 + enddevice + + device 2 + name = "RAM2" + ce = 2 + baseaddr = 0x80000000 + size = 0x00200000 + delayr = 2 + delayw = 4 + enddevice + +end + + +/* IMMU SECTION + + This section configures Instruction Memory Menangement Unit + + enabled = 0/1 + whether IMMU is enabled + (NOTE: UPR bit is set) + + nsets = + number of ITLB sets; must be power of two + + nways = + number of ITLB ways + + pagesize = + instruction page size; must be power of two + + entrysize = + instruction entry size in bytes + + ustates = + number of ITLB usage states (2, 3, 4 etc., max is 4) +*/ + +section immu + enabled = 0 + nsets = 32 + nways = 1 + pagesize = 8192 +end + + +/* DMMU SECTION + + This section configures Data Memory Menangement Unit + + enabled = 0/1 + whether DMMU is enabled + (NOTE: UPR bit is set) + + nsets = + number of DTLB sets; must be power of two + + nways = + number of DTLB ways + + pagesize = + data page size; must be power of two + + entrysize = + data entry size in bytes + + ustates = + number of DTLB usage states (2, 3, 4 etc., max is 4) +*/ + +section dmmu + enabled = 0 + nsets = 32 + nways = 1 + pagesize = 8192 +end + + +/* IC SECTION + + This section configures Instruction Cache + + enabled = 0/1 + whether IC is enabled + (NOTE: UPR bit is set) + + nsets = + number of IC sets; must be power of two + + nways = + number of IC ways + + blocksize = + IC block size in bytes; must be power of two + + ustates = + number of IC usage states (2, 3, 4 etc., max is 4) +*/ + +section ic + enabled = 0 + nsets = 512 + nways = 1 + blocksize = 16 +end + + +/* DC SECTION + + This section configures Data Cache + + enabled = 0/1 + whether DC is enabled + (NOTE: UPR bit is set) + + nsets = + number of DC sets; must be power of two + + nways = + number of DC ways + + blocksize = + DC block size in bytes; must be power of two + + ustates = + number of DC usage states (2, 3, 4 etc., max is 4) +*/ + +section dc + enabled = 0 + nsets = 512 + nways = 1 + blocksize = 16 +end + +/* SIM SECTION + + This section specifies how should sim behave. + + verbose = 0/1 + whether to print out extra messages + + debug = 0-9 + = 0 disabled debug messages + 1-9 level of sim debug information, greater the number more verbose is + the output + + profile = 0/1 + whether to generate profiling file 'sim.profile' + + prof_fn = "" + filename, where to generate profiling info, used + only if 'profile' is set + + history = 0/1 + whether instruction execution flow is tracked for + display by simulator hist command. Useful for + back-trace debugging. + + iprompt = 0/1 + whether we strart in interactive prompt + + exe_log = 0/1 + whether execution log should be generated + + exe_log_fn = "" + where to put execution log in, used only if 'exe_log' + is set + + clkcycle = [ps|ns|us|ms] + specifies time measurement for one cycle +*/ + +section sim + /* verbose = 1 */ + debug = 0 + profile = 0 + prof_fn = "sim.profile" + + history = 1 + /* iprompt = 0 */ + exe_log = 1 + exe_log_fn = "executed.log" + clkcycle = 4ns +end + + +/* SECTION VAPI + + This section configures Verification API, used for Advanced + Core Verification. + + enabled = 0/1 + whether to start VAPI server + + server_port = + TCP/IP port to start VAPI server on + + log_enabled = 0/1 + whether logging of VAPI requests is enabled + + vapi_fn = + specifies filename where to log into, if log_enabled is selected +*/ + +section VAPI + enabled = 0 + server_port = 9998 + log_enabled = 0 + vapi_log_fn = "vapi.log" +end + + +/* CPU SECTION + + This section specifies various CPU parameters. + + ver = + rev = + specifies version and revision of the CPU used + + upr = + changes the upr register + + superscalar = 0/1 + whether CPU is scalar or superscalar + (modify cpu/or32/execute.c to tune superscalar model) + + hazards = 0/1 + whether data hazards are tracked in superscalar CPU + and displayed by the simulator r command + + dependstats = 0/1 + whether inter-instruction dependencies are calculated + and displayed by simulator stats command. + + slp = 0/1 + calculation of subroutine level parallelism. Displayed + by simulator stats command. + + btic = 0/1 + enable branch target instruction cache model + + bpb = 0/1 + enable branch prediction buffer model + + parameters for CPU analysis +*/ + +section cpu + ver = 0x1200 + rev = 0x0001 + /* upr = */ + superscalar = 0 + hazards = 0 + dependstats = 0 + slp = 0 + btic = 0 + bpb = 0 +end + + +/* DEBUG SECTION + + This sections specifies how debug unit should behave. + + enabled = 0/1 + whether debug unit is enabled + + gdb_enabled = 0/1 + whether to start gdb server at 'server_port' port + + server_port = + TCP/IP port to start gdb server on, used only if gdb_enabled + is set + +section debug + enabled = 0 + gdb_enabled = 0 + server_port = 9999 +end + + +/* MC SECTION + + This section configures the memory controller + + enabled = 0/1 + whether memory controller is enabled + + baseaddr = + address of first MC register + + POC = + Power On Configuration register +*/ + +section mc + enabled = 0 + baseaddr = 0xa0000000 + POC = 0x00000008 /* Power on configuration register */ +end + + +/* UART SECTION + + This section configures UARTs + + enabled = 0/1 + whether uarts are enabled + + nuarts = + make specified number of instances, configure each + instance within device - enddevice construct. + + instance specific: + baseaddr = + address of first UART register for this device + + rx_file = "" + filename, where to read data from + + tx_file = "" + filename, where to write data to + + irq = + irq number for this device + + 16550 = 0/1 + 0, if this device is uart 16450 and 1, if it is 16550 + + jitter = + in msecs... time to block, -1 to disable it + + vapi_id = + VAPI id of this instance +*/ + +section uart + enabled = 0 + nuarts = 1 + + device 0 + baseaddr = 0x80000000 + irq = 2 + rxfile = "/tmp/uart0.rx" + txfile = "/tmp/uart0.tx" + jitter = -1 /* async behaviour */ + enddevice +end + + +/* DMA SECTION + + This section configures DMAs + + enabled = 0/1 + whether DMAs are enabled + + ndmas = + make specified number of instances, configure each + instance within device - enddevice construct. + + instance specific: + baseaddr = + address of first DMA register for this device + + irq = + irq number for this device + + vapi_id = + VAPI id of this instance +*/ + +section dma + enabled = 0 + ndmas = 1 + + device 0 + baseaddr = 0x90000000 + irq = 4 + enddevice +end + + +/* ETHERNET SECTION + + This section configures ethernets + + enabled = 0/1 + whether ethernets are enabled + + nethernets = + make specified number of instances, configure each + instance within device - enddevice construct. + + instance specific: + baseaddr = + address of first ethernet register for this device + + dma = + which controller is this ethernet "connected" to + + rx_channel = + DMA channel used for RX + + tx_channel = + DMA channel used for TX + + rx_file = "" + filename, where to read data from + + tx_file = "" + filename, where to write data to + + vapi_id = + VAPI id of this instance +*/ + +section ethernet + enabled = 0 + nethernets = 1 + + device 0 + baseaddr = 0x88000000 + dma = 0 + tx_channel = 0 + rx_channel = 1 + rxfile = "/tmp/eth0.rx" + txfile = "/tmp/eth0.tx" + enddevice +end + +/* TICK TIMER SECTION + + This section configures tick timer + + enabled = 0/1 + whether tick timer is enabled + + irq = + irq number +*/ + +section tick + enabled = 0 + irq = 3 +end
trunk/orp/orp_soc/sw.old/sim.cfg Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/trap2/trap.S =================================================================== --- trunk/orp/orp_soc/sw.old/trap2/trap.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/trap2/trap.S (revision 782) @@ -0,0 +1,95 @@ +#include "spr_defs.h" + + .extern main + .extern _src_beg + .extern _dst_beg + .extern _dst_end + .extern _c_reset + +.org 0x100 + +_reset: + l.nop + l.nop + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 + +.org 0xd00 +_break: + l.nop + l.nop + l.rfe + l.nop + l.nop + +.org 0xe00 +_trap: + l.nop + l.nop + l.rfe + l.nop + l.nop + +.org 0x2000 + +_main: + l.nop + l.addi r5,r0,SPR_SR_SUPV|SPR_SR_EXR + l.mtspr r0,r5,SPR_SR + l.addi r5,r0,SPR_DSR_TE + l.mtspr r0,r5,SPR_DSR + l.nop + l.addi r11,r0,1 + l.addi r11,r0,2 + l.addi r11,r0,3 + l.trap 1 + l.addi r11,r0,4 + l.addi r11,r0,5 + l.j _forw + l.addi r11,r0,6 + l.addi r11,r0,7 + l.addi r11,r0,8 + l.addi r11,r0,9 +_forw: + l.addi r11,r0,10 + l.nop + l.nop + l.sys 203 + l.nop +
trunk/orp/orp_soc/sw.old/trap2/trap.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/trap2/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/trap2/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/trap2/spr_defs.h (revision 782) @@ -0,0 +1,401 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ +#define SPR_DSR_TE 0x00002000 /* Trap exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/trap2/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/trap2/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/trap2/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/trap2/Makefile (revision 782) @@ -0,0 +1,16 @@ +CCFLAGS = -O2 -g -nostdlib + +all: trap.or32 + +trap.or32: trap.o + or32-rtems-gcc -nostdlib trap.o -o trap.or32 + or32-rtems-objcopy -O binary trap.or32 trap.bin + ../utils/bin2srec trap.bin > trap.srec + ../utils/bin2hex trap.bin > trap.hex + cp trap.hex ../../sim/src/flash.in + +trap.o: trap.S + or32-rtems-gcc $(CCFLAGS) trap.S -c -DOR1K + +clean: + rm -f *.o trap.or32 *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/trap2/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/int_test/int_test.cfg =================================================================== --- trunk/orp/orp_soc/sw.old/int_test/int_test.cfg (nonexistent) +++ trunk/orp/orp_soc/sw.old/int_test/int_test.cfg (revision 782) @@ -0,0 +1,40 @@ +section memory + pattern = 0x00 + type = unknown /* Fastest */ + + nmemories = 2 + device 0 + name = "RAM" + ce = 0 + baseaddr = 0x40000000 + size = 0x00200000 + delayr = 1 + delayw = 2 + enddevice + + device 1 + name = "FLASH" + ce = 1 + baseaddr = 0x00000000 + size = 0x00200000 + delayr = 10 + delayw = -1 + enddevice +end + +section sim + /* verbose = 1 */ + debug = 0 + profile = 0 + prof_fn = "sim.profile" + + history = 1 + exe_log = 0 + exe_log_fn = "executed.log" + clkcycle = 4ns +end + +section tick + enabled = 1 + irq = 0 +end
trunk/orp/orp_soc/sw.old/int_test/int_test.cfg Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/int_test/int_test.S =================================================================== --- trunk/orp/orp_soc/sw.old/int_test/int_test.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/int_test/int_test.S (revision 782) @@ -0,0 +1,319 @@ +/* Within the test we'll use following global variables: + + r16 interrupt counter + r17 current tick timer comparison counter + r18 sanity counter + r19 loop counter + r20 temp value of SR reg + r21 temp value of TTMR reg. + r23 RAM_START + + r25-r31 used by int handler + + The test do the following: + We set up the tick timer to trigger once and then we trigger interrupts incrementally + on every cycle in the specified test program; on interrupt handler we check if data computed + so far exactly matches precalculated values. If interrupt has returned incorreclty, we can + detect this using assertion routine at the end. +*/ + +#include "../support/spr_defs.h" +#define RAM_START 0x80080000 + +.org 0x100 + l.nop + l.j _main + l.nop + +.org 0x500 +# +# Interrupt handler +# + + l.addi r31,r3,0 +# get interrupted program pc + l.mfspr r25,r0,SPR_EPCR_BASE + +# calculate instruction address + l.movhi r26,hi(_ie_start) + l.ori r26,r26,lo(_ie_start) + l.addi r3,r25,0 #print insn index + l.nop 2 + l.sub r25,r25,r26 + l.addi r3,r25,0 #print insn index + l.nop 2 + + l.addi r3,r31,0 # restore r3 + l.sfeqi r25, 0x00 + l.bf _i00 + l.sfeqi r25, 0x04 + l.bf _i04 + l.sfeqi r25, 0x08 + l.bf _i08 + l.sfeqi r25, 0x0c + l.bf _i0c + l.sfeqi r25, 0x10 + l.bf _i10 + l.sfeqi r25, 0x14 + l.bf _i14 + l.sfeqi r25, 0x18 + l.bf _i18 + l.sfeqi r25, 0x1c + l.bf _i1c + l.sfeqi r25, 0x20 + l.bf _i20 + l.sfeqi r25, 0x24 + l.bf _i24 + l.sfeqi r25, 0x28 + l.bf _i28 + l.sfeqi r25, 0x2c + l.bf _i2c + l.sfeqi r25, 0x30 + l.bf _i30 + l.sfeqi r25, 0x34 + l.bf _i34 + l.sfeqi r25, 0x38 + l.bf _i38 + l.nop + +# value not defined +_die: + l.nop 2 #print r3 + + l.addi r3,r0,0xeeee + l.nop 2 + l.addi r3,r0,1 + l.nop 1 +1: + l.j 1b + l.nop + +.section .text +_main: + l.nop + l.nop + +# +# set tick counter to initial 3 cycles +# + l.addi r16,r0,0 + l.addi r17,r0,1 + l.addi r18,r0,0 + l.addi r19,r0,0 + l.addi r22,r0,0 + + l.movhi r23,hi(RAM_START) + l.ori r23,r23,lo(RAM_START) + +# +# unmask all ints +# + l.movhi r5,0xffff + l.ori r5,r5,0xffff + l.mtspr r0,r5,SPR_PICMR # set PICMR + +# Set r20 to hold enable exceptions and interrupts + l.mfspr r20,r0,SPR_SR + l.ori r20,r20,SPR_SR_SUPV|SPR_SR_EXR|SPR_SR_EIR|SPR_SR_F + +# Set r21 to hold value of TTMR + l.movhi r5,hi(SPR_TTMR_SR | SPR_TTMR_IE) + l.add r21,r5,r17 + +# +# MAIN LOOP +# +_main_loop: +# reinitialize memory and registers + l.addi r3,r0,0xaaaa + l.addi r9,r0,0xbbbb + l.sw 0(r23),r3 + l.sw 4(r23),r9 + l.sw 8(r23),r3 + +# Reinitializes tick timer + l.addi r17,r17,1 + l.mtspr r0,r0,SPR_TTCR # set TTCR + l.mtspr r0,r21,SPR_TTMR # set TTMR + l.mtspr r0,r0,SPR_TTCR # set TTCR + l.addi r21,r21,1 + +# Enable exceptions and interrupts + l.mtspr r0,r20,SPR_SR # set SR + +##### TEST CODE ##### +_ie_start: + l.movhi r3,0x1234 #00 + l.sw 0(r23),r3 #04 + l.movhi r3,hi(RAM_START) #08 + l.lwz r3,0(r3) #0c + l.movhi r3,hi(RAM_START) #10 + l.addi r3,r3,4 #14 + l.j 1f #18 + l.lwz r3,0(r3) #1c + l.addi r3,r3,1 #20 +1: + l.sfeqi r3,0xdead #24 + l.jal 2f #28 + l.addi r3,r0,0x5678 #2c + +_return_addr: +2: + l.bf _die #30 + l.sw 8(r23),r3 #34 +_ie_end: + l.nop #38 +##### END OF TEST CODE ##### + +# do some testing + + l.j _main_loop + l.nop + +_i00: + l.sfeqi r3,0xaaaa + l.bnf _die + l.nop + l.j _resume + l.nop +_i04: + l.movhi r26,0x1234 + l.sfeq r3,r26 + l.bnf _die + l.nop + l.lwz r26,0(r23) + l.sfeqi r26,0xaaaa + l.bnf _die + l.nop + l.j _resume + l.nop +_i08: + l.movhi r26,0x1234 + l.sfeq r3,r26 + l.bnf _die + l.nop + l.lwz r27,0(r23) + l.sfeq r27,r26 + l.bnf _die + l.nop + l.j _resume + l.nop +_i0c: + l.sfeq r3,r23 + l.bnf _die + l.nop + l.j _resume + l.nop +_i10: + l.movhi r26,0x1234 + l.sfeq r26,r3 + l.bnf _die + l.nop + l.j _resume + l.nop +_i14: + l.sfeq r3,r23 + l.bnf _die + l.nop + l.j _resume + l.nop +_i18: + l.addi r26,r23,4 + l.sfeq r3,r26 + l.bnf _die + l.nop + l.j _resume + l.nop +_i1c: + l.j _die + l.nop +_i20: + l.j _die + l.nop +_i24: + l.mfspr r26,r0,SPR_ESR_BASE + l.addi r30,r3,0 + l.addi r3,r26,0 + l.nop 2 + l.addi r3,r30,0 + l.andi r26,r26,SPR_SR_F + l.sfeq r26,r0 + l.bf _die + l.nop + l.sfeqi r3,0xbbbb + l.bnf _die + l.nop + l.j _resume + l.nop +_i28: + l.mfspr r26,r0,SPR_ESR_BASE + l.addi r30,r3,0 + l.addi r3,r26,0 + l.nop 2 + l.addi r3,r30,0 + l.andi r26,r26,SPR_SR_F + l.sfeq r26,r0 + l.bnf _die + l.nop + l.sfeqi r22,1 + l.bf _resume + l.addi r22,r0,1 + l.sfeqi r9,0xbbbb + l.bnf _die + l.nop + l.j _resume + l.nop +_i2c: + l.movhi r26,hi(_return_addr) + l.ori r26,r26,lo(_return_addr) + l.sfeq r9,r26 + l.bnf _die + l.nop + l.sfeqi r3,0xbbbb + l.bnf _die + l.nop + l.j _resume + l.nop +_i30: + l.sfeqi r3,0x5678 + l.bnf _die + l.nop + l.j _resume + l.nop +_i34: + l.sfeqi r3,0x5678 + l.bnf _die + l.nop + l.lwz r26,8(r23) + l.sfeqi r26,0xaaaa + l.bnf _die + l.nop + l.j _resume + l.nop +_i38: + l.lwz r26,8(r23) + l.sfeqi r26,0x5678 + l.bnf _die + l.nop +# +# mark finished ok +# + l.movhi r3,hi(0xdeaddead) + l.ori r3,r3,lo(0xdeaddead) + l.nop 2 + l.addi r3,r0,0 + l.nop 1 +_ok: + l.j _ok + l.nop + +_resume: + l.mfspr r27,r0,SPR_ESR_BASE + l.addi r26,r0,SPR_SR_EIR|SPR_SR_EXR + l.addi r28,r0,-1 + l.xor r26,r26,r28 + l.and r26,r26,r27 + l.mtspr r0,r26,SPR_ESR_BASE + + l.rfe + l.addi r3,r3,5 # should not be executed
trunk/orp/orp_soc/sw.old/int_test/int_test.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/int_test/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/int_test/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/int_test/Makefile (revision 782) @@ -0,0 +1,39 @@ +#common = ../support/except.o ../support/support.o +common = +cases = int_test-nocache + +all: $(cases) + +int_test-nocache: $(common) int_test.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic-ic: $(common) basic.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic-dc: $(common) basic.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +basic-icdc: $(common) basic.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +int_test.o: int_test.S + or32-rtems-gcc -O0 $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/int_test/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mul/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/mul/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/mul/Makefile (revision 782) @@ -0,0 +1,70 @@ + +cases = mul-nocache-O0 mul-nocache-O2 mul-ic-O0 mul-ic-O2 mul-dc-O0 mul-dc-O2 mul-icdc-O2 mul-icdc-O0 +common = ../support/except.o ../support/support.o + +all: $(cases) + +mul-nocache-O0: $(common) mul-O0.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-nocache-O2: $(common) mul-O2.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-ic-O0: $(common) mul-O0.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-ic-O2: $(common) mul-O2.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-dc-O0: $(common) mul-O0.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-dc-O2: $(common) mul-O2.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-icdc-O0: $(common) mul-O0.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-icdc-O2: $(common) mul-O2.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +mul-O0.o: mul.c + or32-rtems-gcc -O0 $? -c -o $@ + +mul-O2.o: mul.c + or32-rtems-gcc -O2 $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/mul/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mul/mul.c =================================================================== --- trunk/orp/orp_soc/sw.old/mul/mul.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/mul/mul.c (revision 782) @@ -0,0 +1,130 @@ +/* Test l.mul, l.mac and l.macrc instructions */ + +#include "../support/support.h" + +void buserr_except(){} +void dpf_except(){} +void ipf_except(){} +void lpint_except(){} +void align_except(){} +void illegal_except(){} +void hpint_except(){} +void dtlbmiss_except(){} +void itlbmiss_except(){} +void range_except(){} +void syscall_except(){} +void res1_except(){} +void trap_except(){} +void res2_except(){} + +#define T1 0x5d9da965 +#define T2 0xd644c789 +#define T3 0xa703904d + +#ifndef OR1K + +#include +#define LONGEST long long + +LONGEST acc = 0; +#define MAC(x,y) {\ + /*printf ("[%08x,%08x]\t", (unsigned long)(x), (unsigned long)(y));*/\ + acc += (LONGEST)(x) * (LONGEST)(y);\ + /*printf ("(%08x,%08x)\n", (unsigned long)(acc >> 32), (unsigned long)(acc & 0xffffffff));*/\ +} +#define MACRC (macrc()) +static inline long macrc() { + long result = acc >> 28; + //printf ("<%08x>\n", (unsigned long)result); + acc = 0; + return result; +} +#else /* OR1K */ + +#define MAC(x,y) asm volatile ("l.mac\t%0,%1" : : "r" (x), "r" (y)) +#define MACRC macrc() +static inline long macrc() { + long x; + asm volatile ("l.macrc\t%0" : "=r" (x)); + return x; +} + +#endif /* SIM */ + +long test_mul (long a, long b) { + long t; + int i; + for (i = 0; i < 10; i++) { + t = a * b; + t += 153; + a = t - a * 17; + b = t + b * 13333; + + /*printf ("(%08x,%08x)", a, b);*/ + } + return a; +} + +long test_mac (long a, long b) { + long t = 1234567; + int i; + for (i = 0; i < 10; i++) { + MAC (a, b); + if (i & 3) { + a = t - a; + b = t + a; + } else { + a = MACRC; + } + MAC (a, 3); + MAC (a, 5); + MAC (a, 7); + //printf ("(%08x,%08x)", a, b); + } + return a; +} + +long test_mul_mac (long a, long b) { + long t = 1; + int i; + for (i = 0; i < 10; i++) { + a = a * 119; + MAC (a, b); + MAC (b, 423490431); + MAC (b, 113); + MAC (a, 997); + b = 87 * a * t; + if (i & 3) { + t = a * b; + a = t - a; + b = t + a; + } else { + a = MACRC; + } + // printf ("(%08x,%08x)", a, b); + } + return a; +} + +int main () { + unsigned t1 = test_mul (888888887, 0x87654321); + unsigned t2 = test_mac (888888887, 0x87654321); + unsigned t3 = test_mul_mac (888888887, 0x87654321); + printf ("%08x, expected %08x\n", t1, T1); + printf ("%08x, expected %08x\n", t2, T2); + printf ("%08x, expected %08x\n", t3, T3); + report (t1); + report (t2); + report (t3); + report (t1 ^ t2 ^ t3 ^ T1 ^ T2 ^ T3 ^ 0xdeaddead); + if (t1 != T1 || t2 != T2 || t3 != T3) { + printf ("Test failed!\n"); + if (t1 != T1) exit (1); + if (t2 != T2) exit (2); + if (t3 != T3) exit (3); + } else { + printf ("Test succesful.\n"); + exit (t1 ^ t2 ^ t3 ^ T1 ^ T2 ^ T3 ^ 0xdeaddead); + } +} +
trunk/orp/orp_soc/sw.old/mul/mul.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mmu/dmmu.S =================================================================== --- trunk/orp/orp_soc/sw.old/mmu/dmmu.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/mmu/dmmu.S (revision 782) @@ -0,0 +1,121 @@ +/* Basic instruction set test */ +#include "../support/spr_defs.h" + +.global _main +.global _buserr_except +.global _dpf_except +.global _ipf_except +.global _lpint_except +.global _align_except +.global _illegal_except +.global _hpint_except +.global _dtlbmiss_except +.global _itlbmiss_except +.global _range_except +.global _syscall_except +.global _res1_except +.global _trap_except +.global _res2_except + +_buserr_except: +_ipf_except: +_lpint_except: +_align_except: +_illegal_except: +_hpint_except: +_itlbmiss_except: +_range_except: +_syscall_except: +_res1_except: +_trap_except: +_res2_except: + l.nop + l.ori r3,r0,0xeeee + l.jal _report + l.nop + l.jal _exit + l.nop + +_dpf_except: + l.addi r14,r0,64 + l.movhi r5,hi(0x80000000|SPR_DTLBMR_V) + l.ori r5,r5,lo(0x80000000|SPR_DTLBMR_V) + l.mtspr r0,r5,SPR_DTLBMR_BASE(0) + l.movhi r5,hi(0x80100000|SPR_DTLBTR_SWE|SPR_DTLBTR_SRE) + l.ori r5,r5,lo(0x80100000|SPR_DTLBTR_SWE|SPR_DTLBTR_SRE) + l.mtspr r0,r5,SPR_DTLBTR_BASE(0) + l.rfe + l.nop + +_dtlbmiss_except: + // Valid entry, but no load/store access + l.addi r13,r0,128 + l.movhi r5,hi(0x80000000|SPR_DTLBMR_V) + l.ori r5,r5,lo(0x80000000|SPR_DTLBMR_V) + l.mtspr r0,r5,SPR_DTLBMR_BASE(0) + l.ori r5,r0,0 + l.mtspr r0,r5,SPR_DTLBTR_BASE(0) + l.rfe + l.nop + +// +// r4, r5 - used by exception handlers +// r7, r8 - used by main for setting TLB +// r10 - data pointer to magic words +// r11 - accumulator of magic words +// r12 - for loading/storing magic words +// r13, r14 - used ONLY by exception handlers for magic words + +_main: + l.nop + l.addi r11,r0,1 + l.addi r12,r0,1024 + l.movhi r10,hi(0x80100000) + l.ori r10,r10,lo(0x80100000) + l.sw 0(r10),r12 + l.addi r12,r0,1 + l.movhi r10,hi(0x80000000) + l.ori r10,r10,lo(0x80000000) + l.sw 0(r10),r12 + + // Invalidate entry + l.movhi r7,hi(0x80010000) + l.mtspr r0,r7,SPR_DTLBMR_BASE(0) + l.ori r7,r0,0 + l.mtspr r0,r7,SPR_DTLBTR_BASE(0) + + // Enable DMMU + l.ori r8,r0,SPR_SR_DME + l.mfspr r7,r0,SPR_SR + l.or r7,r7,r8 + l.mtspr r0,r7,SPR_SR + + // Invoke DTLB miss and DPF exceptions + l.sw 32(r10),r7 + + // Magic word read + l.add r12,r0,r0 + l.lwz r12,0(r10) + l.add r11,r11,r12 + l.add r11,r11,r13 + l.add r11,r11,r14 + + // Set cache inhibit (CI) bit + l.movhi r5,hi(0x80100000|SPR_DTLBTR_SWE|SPR_DTLBTR_SRE) + l.ori r5,r5,lo(0x80100000|SPR_DTLBTR_SWE|SPR_DTLBTR_SRE) + l.mtspr r0,r5,SPR_DTLBTR_BASE(0) + + // Read from external memory (must be checked manually) + l.lwz r12,32(r10) + + // Exit + l.nop + l.movhi r12,hi(0xdeadda6c) + l.ori r12,r12,lo(0xdeadda6c) + l.xor r3,r11,r12 + l.jal _report + l.nop + l.jal _exit + l.nop + l.nop +
trunk/orp/orp_soc/sw.old/mmu/dmmu.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mmu/immu.S =================================================================== --- trunk/orp/orp_soc/sw.old/mmu/immu.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/mmu/immu.S (revision 782) @@ -0,0 +1,129 @@ +/* Basic instruction set test */ +#include "../support/spr_defs.h" + +.global _main +.global _buserr_except +.global _dpf_except +.global _ipf_except +.global _lpint_except +.global _align_except +.global _illegal_except +.global _hpint_except +.global _dtlbmiss_except +.global _itlbmiss_except +.global _range_except +.global _syscall_except +.global _res1_except +.global _trap_except +.global _res2_except + +_buserr_except: +_dpf_except: +_lpint_except: +_align_except: +_illegal_except: +_hpint_except: +_dtlbmiss_except: +_range_except: +_syscall_except: +_res1_except: +_trap_except: +_res2_except: + l.nop + l.ori r3,r0,0xeeee + l.jal _report + l.nop + l.jal _exit + l.nop + +_ipf_except: + // Valid entry 1, 1:1, full access + l.addi r14,r0,64 + l.movhi r5,hi(0x00002000|SPR_ITLBMR_V) + l.ori r5,r5,lo(0x00002000|SPR_ITLBMR_V) + l.mtspr r0,r5,SPR_ITLBMR_BASE(0)+1 + l.movhi r5,hi(0x00002000|SPR_ITLBTR_SXE|SPR_ITLBTR_UXE) + l.ori r5,r5,lo(0x00002000|SPR_ITLBTR_SXE|SPR_ITLBTR_UXE) + l.mtspr r0,r5,SPR_ITLBTR_BASE(0)+1 + l.rfe + l.nop + +_itlbmiss_except: + // Valid entry 1, but no execute access + l.addi r13,r0,128 + l.movhi r5,hi(0x00002000|SPR_ITLBMR_V) + l.ori r5,r5,lo(0x00002000|SPR_ITLBMR_V) + l.mtspr r0,r5,SPR_ITLBMR_BASE(0)+1 + l.ori r5,r0,0 + l.mtspr r0,r5,SPR_ITLBTR_BASE(0)+1 + l.rfe + l.nop + +// +// r4, r5 - used by exception handlers +// r7, r8 - used by main for setting TLB +// r11 - accumulator of magic words +// r13, r14 - used ONLY by exception handlers for magic words + +_main: + l.nop + l.addi r11,r0,1 + + // Valid entry 0, 1:1, full access + l.movhi r5,hi(0x00000000|SPR_ITLBMR_V) + l.ori r5,r5,lo(0x00000000|SPR_ITLBMR_V) + l.mtspr r0,r5,SPR_ITLBMR_BASE(0) + l.movhi r5,hi(0x00000000|SPR_ITLBTR_UXE|SPR_ITLBTR_SXE) + l.ori r5,r5,lo(0x00000000|SPR_ITLBTR_UXE|SPR_ITLBTR_SXE) + l.mtspr r0,r5,SPR_ITLBTR_BASE(0) + + // Invalidate entry 1 + l.movhi r7,hi(0x00002000) + l.mtspr r0,r7,SPR_ITLBMR_BASE(0)+1 + l.ori r7,r0,0 + l.mtspr r0,r7,SPR_ITLBTR_BASE(0)+1 + + // Enable IMMU + l.ori r8,r0,SPR_SR_IME + l.mfspr r7,r0,SPR_SR + l.or r7,r7,r8 + l.mtspr r0,r7,SPR_SR + l.nop + l.nop + l.addi r11,r11,16 + + // Invoke ITLB miss and IPF exceptions + l.jal _immu_test + l.addi r11,r11,4 + + // Some more magic words + l.addi r11,r11,8 + l.add r11,r11,r13 + l.add r11,r11,r14 + + // Disable IMMU + l.ori r8,r0,SPR_SR_IME + l.mfspr r7,r0,SPR_SR + l.xor r7,r7,r8 + l.mtspr r0,r7,SPR_SR + l.nop + + // Exit + l.nop + l.movhi r12,hi(0xdeadde72) + l.ori r12,r12,lo(0xdeadde72) + l.xor r3,r11,r12 + l.jal _report + l.nop + l.jal _exit + l.nop + l.nop + + +.org 0x2000 + +_immu_test: + l.addi r11,r11,2 + l.jr r9 + l.nop +
trunk/orp/orp_soc/sw.old/mmu/immu.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/mmu/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/mmu/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/mmu/Makefile (revision 782) @@ -0,0 +1,69 @@ +common = ../support/except.o ../support/support.o +cases = dmmu-nocache dmmu-dc dmmu-ic dmmu-icdc immu-nocache immu-dc immu-ic immu-icdc + +all: $(cases) + +dmmu-nocache: $(common) dmmu.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +dmmu-dc: $(common) dmmu.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +dmmu-ic: $(common) dmmu.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +dmmu-icdc: $(common) dmmu.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +immu-nocache: $(common) immu.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +immu-dc: $(common) immu.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +immu-ic: $(common) immu.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +immu-icdc: $(common) immu.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +dmmu.o: dmmu.S + or32-rtems-gcc -O0 $? -c -o $@ + +immu.o: immu.S + or32-rtems-gcc -O0 $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/mmu/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/bin2hex.c =================================================================== --- trunk/orp/orp_soc/sw.old/utils/bin2hex.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/bin2hex.c (revision 782) @@ -0,0 +1,32 @@ +#include + +/* Number of bytes before line is broken + For example if target flash is 8 bits wide, + define BREAK as 1. If it is 16 bits wide, + define it as 2 etc. +*/ +#define BREAK 1 + +int main(int argc, char **argv) +{ + + FILE *fd; + int c; + int i = 0; + + if(argc < 2) { + printf("no input file specified\n"); + exit(1); + } + + fd = fopen( argv[1], "r" ); + + while ((c = fgetc(fd)) != EOF) { + printf("%.2lx", c); + if (++i == BREAK) { + printf("\n"); + i = 0; + } + } + return 0; +}
trunk/orp/orp_soc/sw.old/utils/bin2hex.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/loader.c =================================================================== --- trunk/orp/orp_soc/sw.old/utils/loader.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/loader.c (revision 782) @@ -0,0 +1,123 @@ +/* Small utility that makes flash image. */ + +#include +#include +#include +#include +#include +#include +#include "../mad-xess/fsyst.h" + +unsigned int swap (unsigned int x) { + return (x & 0xFF) << 24 + | (x & 0xFF00) << 8 + | (x & 0xFF0000) >> 8 + | (x & 0xFF000000) >> 24; +} + +/* Copies data from fi to fo. Returns nonzero + if error. */ +int copy_into (FILE *fo, FILE *fi) +{ + char buf[8192]; + int bread; + do + { + bread = fread (&buf, 1, sizeof(buf), fi); + if (bread != fwrite (&buf, 1, bread, fo)) + return 1; + } while (bread == sizeof(buf)); + return 0; +} + +/* Writes file to fo and returns error. */ +int write_file (FILE *fo, struct file_struct *file) +{ + unsigned int u; + int ok = 0; + u = swap(file->length); + printf("%08x:%08x\n", file->length, u); + if (fwrite(&u, sizeof(unsigned long), 1, fo)) + ok = 1; + u = swap(file->type); + if (fwrite(&u, sizeof(unsigned long), 1, fo) && ok) + return 0; + fprintf (stderr, "Cannot write to file.\n"); + return 1; +} + +int main(int argc, char *argv[]) +{ + int i; + FILE *fo; + struct file_struct file; + + if (argc <= 1) + { + printf ("Usage: loader image_file.mfs [file.mp3 [...]]\n"); + return 1; + } + + if ((fo = fopen (argv[1], "wb+")) == NULL) + { + fprintf (stderr, "Cannot open output file '%s'\n", argv[1]); + return 2; + } + + file.type = FT_ROOT; + file.length = HEADER_SIZE; + if (write_file (fo, &file)) + return 3; + + for (i = 2; i < argc; i++) + { + FILE *fi = fopen (argv[i], "rb"); + struct stat fi_stat; + int align; + if (!fi) + { + fprintf (stderr, "Cannot open input file '%s'\n", argv[i]); + return 1; + } + stat (argv[i], &fi_stat); + printf ("Track %i: %s (size %i)\n", i - 1, argv[i], (int)fi_stat.st_size); + + file.type = FT_TRACK_NO; + file.length = HEADER_SIZE + sizeof (unsigned int); + file.data[0] = swap(i - 1); + if (write_file (fo, &file)) + return 3; + if (!fwrite (&file.data[0], sizeof (unsigned int), 1, fo)) + { + fprintf (stderr, "Cannot write to file.\n"); + return 3; + } + + file.type = FT_TRACK_NAME; + align = (4 - ((strlen (argv[i]) + 1) & 3)) & 3; + file.length = HEADER_SIZE + strlen (argv[i]) + 1 + align; + if (write_file (fo, &file)) + return 3; + if (!fwrite (argv[i], strlen (argv[i]) + 1 + align, 1, fo)) + { + fprintf (stderr, "Cannot write to file.\n"); + return 3; + } + + file.type = FT_TRACK_DATA; + align = (4 - (fi_stat.st_size & 3)) & 3; + file.length = HEADER_SIZE + fi_stat.st_size + align; + if (write_file (fo, &file)) + return 3; + copy_into(fo, fi); + fwrite (&align, 1, align, fo); + fclose (fi); + } + file.type = FT_END; + file.length = 0; + if (write_file (fo, &file)) + return 3; + printf ("Done.\n"); + fclose (fo); + return 0; +}
trunk/orp/orp_soc/sw.old/utils/loader.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/bin2srec.c =================================================================== --- trunk/orp/orp_soc/sw.old/utils/bin2srec.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/bin2srec.c (revision 782) @@ -0,0 +1,43 @@ +#include + +#define SMARK "S214" +#define SADDR 0x000000 +#define INIT_ADDR 0x100000 +#define SCHKSUM 0xff + +int main(int argc, char **argv) +{ + + FILE *fd; + int c, i, j; + unsigned long addr = INIT_ADDR; + unsigned char chksum; + + if(argc < 2) + error("no input file specified"); + + fd = fopen( argv[1], "r" ); + + while (!feof(fd)) { + j = 0; + chksum = SCHKSUM; + printf("%s%.6lx", SMARK, addr); + while (j < 16) { + c = fgetc(fd); + if (c == EOF) { + c = 0; + } + printf("%.2lx", c); + chksum -= c; + j++; + } + + chksum -= addr & 0xff; + chksum -= (addr >> 8) & 0xff; + chksum -= (addr >> 16) & 0xff; + chksum -= 0x14; + printf("%.2lx\r\n", chksum); + addr += 16; + } + return 0; +}
trunk/orp/orp_soc/sw.old/utils/bin2srec.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/bin2flimg.c =================================================================== --- trunk/orp/orp_soc/sw.old/utils/bin2flimg.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/bin2flimg.c (revision 782) @@ -0,0 +1,38 @@ +#include + +int main(int argc, char **argv) +{ + + FILE *fd; + int c, i, j, width; + unsigned long word; + + if(argc < 3) { + printf("no input file specified"); + exit(1); + } + + width = atoi(argv[1]); + + fd = fopen( argv[2], "r" ); + + while (!feof(fd)) { + j = 0; + word = 0; + while (j < width) { + c = fgetc(fd); + if (c == EOF) { + c = 0; + } + word = (word << 8) + c; + j++; + } + if(width == 1) + printf("%.2lx\n", word); + else if(width == 2) + printf("%.4lx\n", word); + else + printf("%.8lx\n", word); + } + return 0; +}
trunk/orp/orp_soc/sw.old/utils/bin2flimg.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/utils/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/Makefile (revision 782) @@ -0,0 +1,21 @@ +all: dummy + +bin2c: bin2c.c + gcc -O2 -o bin2c bin2c.c + +bin2srec: bin2srec.c + gcc -O2 -o bin2srec bin2srec.c + +loader: loader.c + gcc -O2 -o loader loader.c + +bin2flimg: bin2flimg.c + gcc -O2 -o bin2flimg bin2flimg.c + +bin2hex: bin2hex.c + gcc -O2 -o bin2hex bin2hex.c + +dummy: bin2c bin2srec loader bin2flimg bin2hex + +clean: + rm -rf bin2c bin2srec loader bin2flimg bin2hex *~ *.bak
trunk/orp/orp_soc/sw.old/utils/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/bin2c.c =================================================================== --- trunk/orp/orp_soc/sw.old/utils/bin2c.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/bin2c.c (revision 782) @@ -0,0 +1,24 @@ +#include + +int main(void) +{ + + int c, i = 0; + + printf("#ifdef HAVE_CONFIG_H\n"); + printf("# include \"config.h\"\n"); + printf("#endif\n\n"); + printf("#ifdef EMBED\n"); + + printf("unsigned char flash_data[] = {\n"); + + while((c = getchar()) != EOF) { + printf("0x%.2x, ", c); + if(!(i % 32)) + printf("\n"); + i++; + } + + printf(" };\n"); + printf("#endif\n"); +}
trunk/orp/orp_soc/sw.old/utils/bin2c.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/utils/merge2srec =================================================================== --- trunk/orp/orp_soc/sw.old/utils/merge2srec (nonexistent) +++ trunk/orp/orp_soc/sw.old/utils/merge2srec (revision 782) @@ -0,0 +1,10 @@ +#!/bin/sh + +LINE_NB=`wc -l < $1` +MIN=`expr $LINE_NB - 1` + +head -$MIN $1 > out.exo + +cat $2 >> out.exo +tail -1 $1 >> out.exo +
trunk/orp/orp_soc/sw.old/utils/merge2srec Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/cache/support/support.h =================================================================== --- trunk/orp/orp_soc/sw.old/cache/support/support.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/cache/support/support.h (revision 782) @@ -0,0 +1,45 @@ +/* Support file for or32 tests. This file should is included + in each test. It calls main() function and add support for + basic functions */ + +#ifndef SUPPORT_H +#define SUPPORT_H + +#include +#include <_ansi.h> +#include +#include + +#if OR1K +void printf(const char *fmt, ...); + +/* For writing into SPR. */ +void mtspr(unsigned long spr, unsigned long value); + +/* For reading SPR. */ +unsigned long mfspr(unsigned long spr); + +#else /* OR1K */ + +#include + +#endif /* OR1K */ + +/* Function to be called at entry point - not defined here. */ +int main (); + +/* Prints out a value */ +void report(unsigned long value); + +/* return value by making a syscall */ +extern void exit (int i) __attribute__ ((__noreturn__)); + +/* memcpy clone */ +extern void *memcpy (void *__restrict __dest, + __const void *__restrict __src, size_t __n); + +/* Timer functions */ +extern void start_timer(int); +extern unsigned int read_timer(int); + +#endif
trunk/orp/orp_soc/sw.old/cache/support/support.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/cache/support/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/cache/support/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/cache/support/spr_defs.h (revision 782) @@ -0,0 +1,400 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/cache/support/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/cache/support/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/cache/support/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/cache/support/Makefile (revision 782) @@ -0,0 +1,6 @@ + +support.o: support.c + or32-rtems-gcc -O2 -c -o support.o support.c + +clean: + rm -rf *.o
trunk/orp/orp_soc/sw.old/cache/support/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/cache/support/support.c =================================================================== --- trunk/orp/orp_soc/sw.old/cache/support/support.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/cache/support/support.c (revision 782) @@ -0,0 +1,113 @@ +/* Support */ + +#include +#include "support.h" + +#if OR1K + +/* Start function, called by reset exception handler. */ +void reset () +{ + int i = main(); + exit (i); +} + +/* return value by making a syscall */ +void exit (int i) +{ + asm("l.add r3,r0,%0": : "r" (i)); + asm("l.sys 203"); +} + +/* activate printf support in simulator */ +void printf(const char *fmt, ...) +{ + va_list args; + va_start(args, fmt); + asm("l.addi\tr3,%0,0": :"r" (fmt)); + asm("l.addi\tr4,%0,0": :"r" (args)); + asm("l.sys 202"); +} + +/* print long */ +void report(unsigned long value) +{ + unsigned long spr = 0x1234; + asm("l.mtspr\t\t%0,%1,0x0" : : "r" (spr), "r" (value)); + return; +} + +/* just to satisfy linker */ +void __main() +{ +} + +/* start_TIMER */ +void start_timer(int x) +{ +} + +/* read_TIMER */ +/* Returns a value since started in uS */ +unsigned int read_timer(int x) +{ + unsigned long count = 0; + + /* Read the Time Stamp Counter */ +/* asm("simrdtsc %0" :"=r" (count)); */ + asm("l.sys 201"); + return count; +} + +/* For writing into SPR. */ +void mtspr(unsigned long spr, unsigned long value) +{ + asm("l.mtspr\t\t%0,%1,0": : "r" (spr), "r" (value)); +} + +/* For reading SPR. */ +unsigned long mfspr(unsigned long spr) +{ + unsigned long value; + asm("l.mfspr\t\t%0,%1,0" : "=r" (value) : "r" (spr)); + return value; +} + +#else +void report(unsigned long value) +{ + unsigned long spr = 0x1234; + printf("l.mtspr %x,%x\n", spr, value); + return; +} + +/* start_TIMER */ +void start_timer(int tmrnum) +{ + return; +} + +/* read_TIMER */ +/* Returns a value since started in uS */ +unsigned int read_timer(int tmrnum) +{ + struct timeval tv; + struct timezone tz; + + gettimeofday(&tv, &tz); + + return(tv.tv_sec*1000000+tv.tv_usec); +} + +#endif + +void *memcpy (void *__restrict dstvoid, + __const void *__restrict srcvoid, size_t length) +{ + char *dst = dstvoid; + const char *src = srcvoid; + + while (length--) + *dst++ = *src++; + return dst; +}
trunk/orp/orp_soc/sw.old/cache/support/support.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/trap/trap.S =================================================================== --- trunk/orp/orp_soc/sw.old/trap/trap.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/trap/trap.S (revision 782) @@ -0,0 +1,93 @@ +#include "spr_defs.h" + + .extern main + .extern _src_beg + .extern _dst_beg + .extern _dst_end + .extern _c_reset + +.org 0x100 + +_reset: + l.nop + l.nop + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 + +.org 0xd00 +_break: + l.nop + l.nop + l.rfe + l.nop + l.nop + +.org 0xe00 +_trap: + l.nop + l.nop + l.rfe + l.nop + l.nop + +.org 0x2000 + +_main: + l.nop + l.addi r5,r0,SPR_SR_SUPV|SPR_SR_EXR + l.mtspr r0,r5,SPR_SR + l.nop + l.addi r11,r0,1 + l.addi r11,r0,3 + l.addi r11,r0,5 + l.trap 1 + l.addi r11,r0,10 + l.addi r11,r0,15 + l.j _forw + l.addi r11,r0,20 + l.addi r11,r0,25 +_forw: + l.addi r11,r0,30 + l.trap 1 + l.addi r11,r0,35 + l.nop + l.nop + l.sys 203 + l.nop +
trunk/orp/orp_soc/sw.old/trap/trap.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/trap/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/trap/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/trap/spr_defs.h (revision 782) @@ -0,0 +1,400 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/trap/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/trap/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/trap/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/trap/Makefile (revision 782) @@ -0,0 +1,16 @@ +CCFLAGS = -O2 -g -nostdlib + +all: trap.or32 + +trap.or32: trap.o + or32-rtems-gcc -nostdlib trap.o -o trap.or32 + or32-rtems-objcopy -O binary trap.or32 trap.bin + ../utils/bin2srec trap.bin > trap.srec + ../utils/bin2hex trap.bin > trap.hex + cp trap.hex ../../sim/src/flash.in + +trap.o: trap.S + or32-rtems-gcc $(CCFLAGS) trap.S -c -DOR1K + +clean: + rm -f *.o trap.or32 *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/trap/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/syscall/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/syscall/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/syscall/spr_defs.h (revision 782) @@ -0,0 +1,400 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/syscall/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/syscall/syscall.S =================================================================== --- trunk/orp/orp_soc/sw.old/syscall/syscall.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/syscall/syscall.S (revision 782) @@ -0,0 +1,62 @@ +#include "../support/spr_defs.h" + +.global _main +.global _buserr_except +.global _dpf_except +.global _ipf_except +.global _lpint_except +.global _align_except +.global _illegal_except +.global _hpint_except +.global _dtlbmiss_except +.global _itlbmiss_except +.global _range_except +.global _syscall_except +.global _res1_except +.global _trap_except +.global _res2_except + +_buserr_except: +_dpf_except: +_ipf_except: +_lpint_except: +_align_except: +_illegal_except: +_hpint_except: +_dtlbmiss_except: +_itlbmiss_except: +_range_except: +_syscall_except: +_res1_except: +_trap_except: +_res2_except: + l.addi r11,r11,20 + l.addi r11,r11,21 + l.rfe + l.addi r11,r11,22 + l.addi r11,r11,23 + l.nop + +.org 0x2000 + +_main: + l.nop + l.addi r11,r0,1 +_loop: + l.addi r11,r11,1 + l.addi r11,r11,2 + l.sys 13 + l.addi r11,r11,3 + l.addi r11,r11,4 + l.addi r11,r11,5 + l.nop + l.nop + l.nop + l.movhi r9,hi(0xdeadde74) + l.ori r9,r9,lo(0xdeadde74) + l.add r3,r11,r9 + l.jal _report + l.nop + l.jal _exit + l.nop +
trunk/orp/orp_soc/sw.old/syscall/syscall.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/syscall/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/syscall/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/syscall/Makefile (revision 782) @@ -0,0 +1,38 @@ +common = ../support/except.o ../support/support.o +cases = syscall-nocache syscall-ic syscall-dc syscall-icdc + +all: $(cases) + +syscall-nocache: $(common) syscall.o ../support/reset-nocache.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +syscall-ic: $(common) syscall.o ../support/reset-ic.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +syscall-dc: $(common) syscall.o ../support/reset-dc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +syscall-icdc: $(common) syscall.o ../support/reset-icdc.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +syscall.o: syscall.S + or32-rtems-gcc -O0 $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/syscall/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/reset-nocache.S =================================================================== --- trunk/orp/orp_soc/sw.old/support/reset-nocache.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/reset-nocache.S (revision 782) @@ -0,0 +1,53 @@ +#include "spr_defs.h" + + .extern _main + .global _reset_except + +_reset_except: + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.movhi r9,0x5678 + l.addi r9,r9,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.movhi r26,0x1234 + l.addi r26,r26,0x5678 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Set stack pointer */ + l.movhi r1,hi(0x801fff00) + l.addi r1,r1,lo(0x801fff00) + l.addi r1,r1,-4 + + /* Jump to main */ + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 +
trunk/orp/orp_soc/sw.old/support/reset-nocache.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/support.h =================================================================== --- trunk/orp/orp_soc/sw.old/support/support.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/support.h (revision 782) @@ -0,0 +1,65 @@ +/* Support file for or32 tests. This file should is included + in each test. It calls main() function and add support for + basic functions */ + +#ifndef SUPPORT_H +#define SUPPORT_H + +#include +#include +#include + +#if OR1K +#include <_ansi.h> + +/* Register access macros */ +#define REG8(add) *((volatile unsigned char *)(add)) +#define REG16(add) *((volatile unsigned short *)(add)) +#define REG32(add) *((volatile unsigned long *)(add)) + +void printf(const char *fmt, ...); + +/* For writing into SPR. */ +void mtspr(unsigned long spr, unsigned long value); + +/* For reading SPR. */ +unsigned long mfspr(unsigned long spr); + +#else /* OR1K */ + +#include + +#endif /* OR1K */ + +/* Function to be called at entry point - not defined here. */ +int main (); + +/* Prints out a value */ +void report(unsigned long value); + +/* return value by making a syscall */ +extern void exit (int i) __attribute__ ((__noreturn__)); + +/* memcpy clone */ +extern void *memcpy (void *__restrict __dest, + __const void *__restrict __src, size_t __n); + +/* Timer functions */ +extern void start_timer(int); +extern unsigned int read_timer(int); + +extern unsigned long excpt_buserr; +extern unsigned long excpt_dpfault; +extern unsigned long excpt_ipfault; +extern unsigned long excpt_lpint; +extern unsigned long excpt_align; +extern unsigned long excpt_illinsn; +extern unsigned long excpt_hpint; +extern unsigned long excpt_dtlbmiss; +extern unsigned long excpt_itlbmiss; +extern unsigned long excpt_range; +extern unsigned long excpt_syscall; +extern unsigned long excpt_break; +extern unsigned long excpt_trap; + +#endif
trunk/orp/orp_soc/sw.old/support/support.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/reset-icdc.S =================================================================== --- trunk/orp/orp_soc/sw.old/support/reset-icdc.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/reset-icdc.S (revision 782) @@ -0,0 +1,70 @@ +#include "spr_defs.h" + + .extern _main + .global _reset_except + +_reset_except: + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Flush IC & DC */ + l.addi r10,r0,0 + l.addi r11,r0,8192 +loop: + l.mtspr r0,r10,SPR_ICBIR + l.mtspr r0,r10,SPR_DCBIR + l.sfne r10,r11 + l.bf loop + l.addi r10,r10,16 + + /* Enable IC & DC */ + l.addi r10,r0,(SPR_SR_ICE|SPR_SR_DCE|SPR_SR_SUPV) + l.mtspr r0,r10,SPR_SR + l.nop + l.nop + l.nop + l.nop + l.nop + + /* Set stack pointer */ + l.movhi r1,hi(0x801fff00) + l.addi r1,r1,lo(0x801fff00) + l.addi r1,r1,-4 + + /* Jump to main */ + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 +
trunk/orp/orp_soc/sw.old/support/reset-icdc.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/reset.S =================================================================== --- trunk/orp/orp_soc/sw.old/support/reset.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/reset.S (revision 782) @@ -0,0 +1,50 @@ + + .extern _main + .global _reset_except + +_reset_except: + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x0 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Set stack pointer */ + l.movhi r1,hi(0x801fff00) + l.addi r1,r1,lo(0x801fff00) + l.addi r1,r1,-4 + + /* Jump to main */ + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 +
trunk/orp/orp_soc/sw.old/support/reset.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/reset-dc.S =================================================================== --- trunk/orp/orp_soc/sw.old/support/reset-dc.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/reset-dc.S (revision 782) @@ -0,0 +1,69 @@ +#include "spr_defs.h" + + .extern _main + .global _reset_except + +_reset_except: + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Flush DC */ + l.addi r10,r0,0 + l.addi r11,r0,8192 +loop: + l.mtspr r0,r10,SPR_DCBIR + l.sfne r10,r11 + l.bf loop + l.addi r10,r10,16 + + /* Enable DC */ + l.addi r10,r0,(SPR_SR_DCE|SPR_SR_SUPV) + l.mtspr r0,r10,SPR_SR + l.nop + l.nop + l.nop + l.nop + l.nop + + /* Set stack pointer */ + l.movhi r1,hi(0x801fff00) + l.addi r1,r1,lo(0x801fff00) + l.addi r1,r1,-4 + + /* Jump to main */ + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 +
trunk/orp/orp_soc/sw.old/support/reset-dc.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/except.S =================================================================== --- trunk/orp/orp_soc/sw.old/support/except.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/except.S (revision 782) @@ -0,0 +1,109 @@ +#include "spr_defs.h" + +.section .text + +.org 0x100 + +_reset: + l.nop + l.j _reset_except + l.nop + +.org 0x200 + +_except_200: + l.nop + l.j _buserr_except + l.nop + +.org 0x300 + +_except_300: + l.nop + l.j _dpf_except + l.nop + +.org 0x400 + +_except_400: + l.nop + l.j _ipf_except + l.nop + +.org 0x500 + +_except_500: + l.nop + l.j _lpint_except + l.nop + +.org 0x600 + +_except_600: + l.nop + l.j _align_except + l.nop + +.org 0x700 + +_except_700: + l.nop + l.j _illegal_except + l.nop + +.org 0x800 + +_except_800: + l.nop + l.j _hpint_except + l.nop + +.org 0x900 + +_except_900: + l.nop + l.j _dtlbmiss_except + l.nop + +.org 0xa00 + +_except_a00: + l.nop + l.j _itlbmiss_except + l.nop + +.org 0xb00 + +_except_b00: + l.nop + l.j _range_except + l.nop + +.org 0xc00 + +_except_c00: + l.nop + l.j _syscall_except + l.nop + +.org 0xd00 + +_except_d00: + l.nop + l.j _res1_except + l.nop + +.org 0xe00 + +_except_e00: + l.nop + l.j _trap_except + l.nop + +.org 0xf00 + +_except_f00: + l.nop + l.j _res2_except + l.nop +
trunk/orp/orp_soc/sw.old/support/except.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/support/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/spr_defs.h (revision 782) @@ -0,0 +1,417 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_NPC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_PPC (SPRGROUP_SYS + 18) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_SXE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UXE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* Bit results with SPR_DCR_CC mask */ +#define SPR_DCR_CC_MASKED 0x00000000 +#define SPR_DCR_CC_EQUAL 0x00000001 +#define SPR_DCR_CC_LESS 0x00000002 +#define SPR_DCR_CC_LESSE 0x00000003 +#define SPR_DCR_CC_GREAT 0x00000004 +#define SPR_DCR_CC_GREATE 0x00000005 +#define SPR_DCR_CC_NEQUAL 0x00000006 + +/* Bit results with SPR_DCR_CT mask */ +#define SPR_DCR_CT_DISABLED 0x00000000 +#define SPR_DCR_CT_IFEA 0x00000020 +#define SPR_DCR_CT_LEA 0x00000040 +#define SPR_DCR_CT_SEA 0x00000060 +#define SPR_DCR_CT_LD 0x00000080 +#define SPR_DCR_CT_SD 0x000000a0 +#define SPR_DCR_CT_LSEA 0x000000c0 + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_SSE 0x00001000 /* Single Step Exception */ +#define SPR_DSR_TE 0x00002000 /* Trap exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_TE 0x00001000 /* Trap exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x0000000f /* Slow down factor */ +#define SPR_PMR_DME 0x00000010 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000020 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000040 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000080 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/support/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/xess-flash.ld =================================================================== --- trunk/orp/orp_soc/sw.old/support/xess-flash.ld (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/xess-flash.ld (revision 782) @@ -0,0 +1,29 @@ +MEMORY + { + ram : ORIGIN = 0x00000000, LENGTH = 0x00200000 + } + +SECTIONS +{ + .reset : + { + *(.reset) + _src_beg = .; + } > ram + .text : + AT ( ADDR (.reset) + SIZEOF (.reset) ) + { + _dst_beg = .; + *(.text) + } > ram + .data : + AT ( ADDR (.reset) + SIZEOF (.reset) + SIZEOF (.text)) + { + *(.data) + _dst_end = .; + } > ram + .bss : + { + *(.bss) + } > ram +}
trunk/orp/orp_soc/sw.old/support/xess-flash.ld Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/reset-ic.S =================================================================== --- trunk/orp/orp_soc/sw.old/support/reset-ic.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/reset-ic.S (revision 782) @@ -0,0 +1,69 @@ +#include "spr_defs.h" + + .extern _main + .global _reset_except + +_reset_except: + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Flush IC */ + l.addi r10,r0,0 + l.addi r11,r0,8192 +loop: + l.mtspr r0,r10,SPR_ICBIR + l.sfne r10,r11 + l.bf loop + l.addi r10,r10,16 + + /* Enable IC */ + l.addi r10,r0,(SPR_SR_ICE|SPR_SR_SUPV) + l.mtspr r0,r10,SPR_SR + l.nop + l.nop + l.nop + l.nop + l.nop + + /* Set stack pointer */ + l.movhi r1,hi(0x801fff00) + l.addi r1,r1,lo(0x801fff00) + l.addi r1,r1,-4 + + /* Jump to main */ + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 +
trunk/orp/orp_soc/sw.old/support/reset-ic.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/support/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/Makefile (revision 782) @@ -0,0 +1,22 @@ +all: support.o reset-nocache.o reset-ic.o reset-dc.o reset-icdc.o except.o + +support.o: support.c + or32-rtems-gcc -O2 -c -o $@ $? + +reset-nocache.o: reset-nocache.S + or32-rtems-gcc -O2 -c -o $@ $? + +reset-ic.o: reset-ic.S + or32-rtems-gcc -O2 -c -o $@ $? + +reset-dc.o: reset-dc.S + or32-rtems-gcc -O2 -c -o $@ $? + +reset-icdc.o: reset-icdc.S + or32-rtems-gcc -O2 -c -o $@ $? + +except.o: except.S + or32-rtems-gcc -O2 -c -o $@ $? + +clean: + rm -rf *.o
trunk/orp/orp_soc/sw.old/support/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/support.c =================================================================== --- trunk/orp/orp_soc/sw.old/support/support.c (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/support.c (revision 782) @@ -0,0 +1,110 @@ +/* Support */ + +#include +#include "support.h" + +#if OR1K + +/* Start function, called by reset exception handler. */ +void reset () +{ + int i = main(); + exit (i); +} + +/* return value by making a syscall */ +void exit (int i) +{ + asm("l.add r3,r0,%0": : "r" (i)); + asm("l.nop 1"); +} + +/* activate printf support in simulator */ +void printf(const char *fmt, ...) +{ + va_list args; + va_start(args, fmt); + asm("l.addi\tr3,%0,0": :"r" (fmt)); + asm("l.addi\tr4,%0,0": :"r" (args)); + asm("l.nop 3"); +} + +/* print long */ +void report(unsigned long value) +{ + asm("l.nop 2"); + return; +} + +/* just to satisfy linker */ +void __main() +{ +} + +/* start_TIMER */ +void start_timer(int x) +{ +} + +/* read_TIMER */ +/* Returns a value since started in uS */ +unsigned int read_timer(int x) +{ + unsigned long count = 0; + + /* Read the Time Stamp Counter */ +/* asm("simrdtsc %0" :"=r" (count)); + asm("l.nop X"); */ + return count; +} + +/* For writing into SPR. */ +void mtspr(unsigned long spr, unsigned long value) +{ + asm("l.mtspr\t\t%0,%1,0": : "r" (spr), "r" (value)); +} + +/* For reading SPR. */ +unsigned long mfspr(unsigned long spr) +{ + unsigned long value; + asm("l.mfspr\t\t%0,%1,0" : "=r" (value) : "r" (spr)); + return value; +} + +#else +void report(unsigned long value) +{ + return; +} + +/* start_TIMER */ +void start_timer(int tmrnum) +{ + return; +} + +/* read_TIMER */ +/* Returns a value since started in uS */ +unsigned int read_timer(int tmrnum) +{ + struct timeval tv; + struct timezone tz; + + gettimeofday(&tv, &tz); + + return(tv.tv_sec*1000000+tv.tv_usec); +} + +#endif + +void *memcpy (void *__restrict dstvoid, + __const void *__restrict srcvoid, size_t length) +{ + char *dst = dstvoid; + const char *src = srcvoid; + + while (length--) + *dst++ = *src++; + return dst; +}
trunk/orp/orp_soc/sw.old/support/support.c Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/support/reset.BAK =================================================================== --- trunk/orp/orp_soc/sw.old/support/reset.BAK (nonexistent) +++ trunk/orp/orp_soc/sw.old/support/reset.BAK (revision 782) @@ -0,0 +1,53 @@ +#include "spr_defs.h" + + .extern _main + .global _reset_except + +_reset_except: + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.movhi r9,0x5678 + l.addi r9,r9,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.movhi r26,0x1234 + l.addi r26,r26,0x5678 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + /* Set stack pointer */ + l.movhi r1,hi(0x801fff00) + l.addi r1,r1,lo(0x801fff00) + l.addi r1,r1,-4 + + /* Jump to main */ + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 +
trunk/orp/orp_soc/sw.old/support/reset.BAK Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/run_sim =================================================================== --- trunk/orp/orp_soc/sw.old/run_sim (nonexistent) +++ trunk/orp/orp_soc/sw.old/run_sim (revision 782) @@ -0,0 +1,4 @@ +#!/bin/sh +PROG=mad-xess +echo 'dhb 0x0 0x20000 > ../sim/src/flash.in' | or32-rtems-sim -i -fast $PROG/$PROG.or32 +echo 'run 4000000 hush' | or32-rtems-sim -i -fast $PROG/$PROG.or32
trunk/orp/orp_soc/sw.old/run_sim Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/ints1.S =================================================================== --- trunk/orp/orp_soc/sw.old/ints/ints1.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/ints1.S (revision 782) @@ -0,0 +1,42 @@ +#include "../support/spr_defs.h" + .global _test + +# +# clear sanity counters +# +_test: + l.addi r10,r0,0 + l.addi r11,r0,0 + l.addi r12,r0,0 + l.addi r13,r0,0 + l.addi r14,r0,0 + l.addi r15,r0,0 + l.addi r7,r0,300 +_loop: + l.addi r10,r10,1 +# l.nop + l.addi r11,r11,1 + l.addi r12,r12,1 + l.sfeq r13,r7 + l.bnf _loop + l.addi r13,r13,1 + l.addi r14,r14,1 + + l.ori r8,r0,SPR_SR_EIR|SPR_SR_EXR + l.mfspr r7,r0,SPR_SR + l.xor r7,r7,r8 + l.mtspr r0,r7,SPR_SR + + l.nop + l.movhi r15,hi(0xdeadd9f8) + l.ori r15,r15,lo(0xdeadd9f8) + l.add r15,r15,r10 + l.add r15,r15,r11 + l.add r15,r15,r12 + l.add r15,r15,r13 + l.add r3,r15,r14 + l.jal _report + l.nop + l.jal _exit + l.nop +
trunk/orp/orp_soc/sw.old/ints/ints1.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/ints2.S =================================================================== --- trunk/orp/orp_soc/sw.old/ints/ints2.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/ints2.S (revision 782) @@ -0,0 +1,42 @@ +#include "../support/spr_defs.h" + .global _test + +# +# clear sanity counters +# +_test: + l.addi r10,r0,0 + l.addi r11,r0,0 + l.addi r12,r0,0 + l.addi r13,r0,0 + l.addi r14,r0,0 + l.addi r7,r0,602 +_loop: + l.sfne r11,r7 + l.sw -0x100(r1),r11 + l.lwz r12,-0x100(r1) + l.bnf _stop + l.sfeq r11,r12 + l.bf _loop + l.addi r11,r11,1 + l.addi r15,r15,1 + l.nop +_stop: + l.nop + l.ori r8,r0,SPR_SR_EIR|SPR_SR_EXR + l.mfspr r7,r0,SPR_SR + l.xor r7,r7,r8 + l.mtspr r0,r7,SPR_SR + + l.movhi r15,hi(0xdeadd9f9) + l.ori r15,r15,lo(0xdeadd9f9) + l.add r15,r15,r10 + l.add r15,r15,r11 + l.add r15,r15,r12 + l.add r15,r15,r13 + l.add r3,r15,r14 + l.jal _report + l.nop + l.jal _exit + l.nop +
trunk/orp/orp_soc/sw.old/ints/ints2.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/handlers.S =================================================================== --- trunk/orp/orp_soc/sw.old/ints/handlers.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/handlers.S (revision 782) @@ -0,0 +1,117 @@ + +#include "../support/spr_defs.h" + + .extern _test + .extern _test + .global _main + + +.global _main +.global _buserr_except +.global _dpf_except +.global _ipf_except +.global _lpint_except +.global _align_except +.global _illegal_except +.global _hpint_except +.global _dtlbmiss_except +.global _itlbmiss_except +.global _range_except +.global _syscall_except +.global _res1_except +.global _trap_except +.global _res2_except + +_buserr_except: +_dpf_except: +_ipf_except: +_align_except: +_illegal_except: +_dtlbmiss_except: +_itlbmiss_except: +_range_except: +_syscall_except: +_res1_except: +_trap_except: +_res2_except: + +.org 0x0500 +_lpint_except: + l.nop + l.nop + +# clear TTMR[IP] + l.addi r4,r0,SPR_TTMR + l.movhi r5,hi(SPR_TTMR_RT | SPR_TTMR_IE) + l.addi r5,r5,233 + l.mtspr r4,r5,0 # set TTMR + +# clear entire PICSR + l.movhi r4,hi(SPR_PICSR) + l.addi r4,r0,lo(SPR_PICSR) + l.addi r5,r0,0x0000 + l.mtspr r4,r5,0 # set PICSR + + l.nop + l.rfe + l.nop + l.nop + +.org 0x0800 +_hpint_except: + l.nop + l.nop + +# clear TTMR[IP] + l.addi r4,r0,SPR_TTMR + l.movhi r5,hi(SPR_TTMR_RT | SPR_TTMR_IE) + l.addi r5,r5,233 + l.mtspr r4,r5,0 # set TTMR + +# clear entire PICSR + l.movhi r4,hi(SPR_PICSR) + l.addi r4,r0,lo(SPR_PICSR) + l.addi r5,r0,0x0000 + l.mtspr r4,r5,0 # set PICSR + + l.nop + l.rfe + l.nop + l.nop + + +.org 0x2000 + +_main: + l.nop + l.nop + +# +# set tick to generate an interrupt every, let say 329 cycles +# + l.addi r4,r0,SPR_TTMR + l.movhi r5,hi(SPR_TTMR_RT | SPR_TTMR_IE) + l.addi r5,r5,329 + l.mtspr r4,r5,0 # set TTMR + +# +# unmask all ints +# + l.movhi r4,hi(SPR_PICMR) + l.addi r4,r0,lo(SPR_PICMR) + l.movhi r5,0xffff + l.addi r5,r5,0xffff + l.mtspr r4,r5,0 # set PICMR + +# +# Enable exceptions and interrupts +# + l.mfspr r5,r0,SPR_SR + l.ori r5,r5,SPR_SR_SUPV|SPR_SR_EXR|SPR_SR_EIR + l.mtspr r0,r5,SPR_SR # set SR + +# +# jump to main routine +# + l.j _test + l.nop
trunk/orp/orp_soc/sw.old/ints/handlers.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/excepts.txt =================================================================== --- trunk/orp/orp_soc/sw.old/ints/excepts.txt (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/excepts.txt (revision 782) @@ -0,0 +1,31 @@ +Original in the or1k arch manual: +EXCEPTION EPCR NORMAL RESTART EPCR ESR[DSX]=1 RESTART ESR[DSX]=1 EEAR +Reset X X X X - +Bus Error PC EPCR PC-4 EPCR YES +Data Page Fault PC EPCR PC-4 EPCR YES +IPFault PC EPCR PC-4 EPCR YES +Low Priority EI PC EPCR+4 N/A N/A - +Alignment PC EPCR+4 PC-4 EPCR YES +Illegal Insn PC EPCR+4 PC-4 EPCR - +High Prio EI PC EPCR+4 N/A N/A - +D-TLB Miss PC EPCR PC-4 EPCR YES +I-TLB Miss PC EPCR PC-4 EPCR YES +Range PC EPCR+4 PC-4 EPCR - +System Call PC EPCR+4 N/A N/A - +Breakpoint PC EPCR+4 PC-4 EPCR - + +New (how or1ksim and or1200 work/whould work): +EXCEPTION EPCR NORMAL RESTART EPCR ESR[DSX]=1 RESTART ESR[DSX]=1 EEAR +Reset X X X X - +Bus Error PC EPCR PC-4 EPCR YES +Data Page Fault PC EPCR PC-4 EPCR YES +IPFault PC EPCR PC-4 EPCR YES +Low Priority EI PC+4 EPCR N/A N/A - +Alignment PC+4 EPCR PC-4 EPCR YES +Illegal Insn PC+4 EPCR PC-4 EPCR - +High Prio EI PC+4 EPCR N/A N/A - +D-TLB Miss PC EPCR PC-4 EPCR YES +I-TLB Miss PC EPCR PC-4 EPCR YES +Range PC EPCR PC-4 EPCR - +System Call PC+4 EPCR N/A N/A - +Trap PC+4 EPCR-4 PC-4 EPCR -
trunk/orp/orp_soc/sw.old/ints/excepts.txt Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/ints/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/spr_defs.h (revision 782) @@ -0,0 +1,400 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/ints/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/ints/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/Makefile (revision 782) @@ -0,0 +1,82 @@ +common = ../support/except.o ../support/support.o +cases = ints1-nocache ints1-ic ints2-nocache ints2-ic ints1-dc ints2-dc ints1-icdc ints2-icdc ints3-nocache + +all: $(cases) + +ints1-nocache: $(common) ../support/reset-nocache.o handlers.o ints1.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints1-ic: $(common) ../support/reset-ic.o handlers.o ints1.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints2-nocache: $(common) ../support/reset-nocache.o handlers.o ints2.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints2-ic: $(common) ../support/reset-ic.o handlers.o ints2.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints1-dc: $(common) ../support/reset-dc.o handlers.o ints1.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints2-dc: $(common) ../support/reset-dc.o handlers.o ints2.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints1-icdc: $(common) ../support/reset-icdc.o handlers.o ints1.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints2-icdc: $(common) ../support/reset-icdc.o handlers.o ints2.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints3-nocache: $(common) ../support/reset-nocache.o handlers.o ints3.o + or32-rtems-ld -T ../support/xess-flash.ld $? -o $@.or32 + or32-rtems-objcopy -O binary $@.or32 $@.bin + ../utils/bin2srec $@.bin > $@.srec + ../utils/bin2hex $@.bin > $@.hex + cp $@.hex ../../sim/src/$@.mem + +ints1.o: ints1.S + or32-rtems-gcc $? -c -o $@ + +ints2.o: ints2.S + or32-rtems-gcc $? -c -o $@ + +ints3.o: ints3.S + or32-rtems-gcc $? -c -o $@ + +handlers.o: handlers.S + or32-rtems-gcc $? -c -o $@ + +clean: + rm -f *.o *.or32 *.log *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/ints/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/ints/ints.S =================================================================== --- trunk/orp/orp_soc/sw.old/ints/ints.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/ints/ints.S (revision 782) @@ -0,0 +1,148 @@ +#include "spr_defs.h" + + .extern main + .extern _src_beg + .extern _dst_beg + .extern _dst_end + .extern _c_reset + +.org 0x100 + +_reset: + l.nop + l.nop + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 + +.org 0x0500 +_lpint: + l.nop + l.nop + +# clear TTMR[IP] + l.addi r4,r0,SPR_TTMR + l.movhi r5,hi(SPR_TTMR_RT | SPR_TTMR_IE) + l.addi r5,r5,733 + l.mtspr r4,r5,0 # set TTMR + +# clear entire PICSR + l.movhi r4,hi(SPR_PICSR) + l.addi r4,r0,lo(SPR_PICSR) + l.addi r5,r0,0x0000 + l.mtspr r4,r5,0 # set PICSR + + l.nop + l.rfe + l.nop + l.nop + +.org 0x0800 +_hpint: + l.nop + l.nop + +# clear TTMR[IP] + l.addi r4,r0,SPR_TTMR + l.movhi r5,hi(SPR_TTMR_RT | SPR_TTMR_IE) + l.addi r5,r5,733 + l.mtspr r4,r5,0 # set TTMR + +# clear entire PICSR + l.movhi r4,hi(SPR_PICSR) + l.addi r4,r0,lo(SPR_PICSR) + l.addi r5,r0,0x0000 + l.mtspr r4,r5,0 # set PICSR + + l.nop + l.rfe + l.nop + l.nop + + +.org 0x2000 + +_main: + l.nop + l.nop + +# +# set tick to generate an interrupt every, let say 729 cycles +# + l.addi r4,r0,SPR_TTMR + l.movhi r5,hi(SPR_TTMR_RT | SPR_TTMR_IE) + l.addi r5,r5,729 + l.mtspr r4,r5,0 # set TTMR + +# +# unmask all ints +# + l.movhi r4,hi(SPR_PICMR) + l.addi r4,r0,lo(SPR_PICMR) + l.movhi r5,0xffff + l.addi r5,r5,0xffff + l.mtspr r4,r5,0 # set PICMR + +# +# Enable exceptions and interrupts +# + l.addi r5,r0,SPR_SR_SUPV|SPR_SR_EXR|SPR_SR_EIR + l.mtspr r0,r5,SPR_SR # set SR + +# +# clear sanity counters +# + l.addi r11,r0,0 + l.addi r12,r0,0 + l.addi r13,r0,0 + l.addi r14,r0,0 + l.addi r15,r0,0 +_loop: + l.addi r11,r11,1 + l.nop + l.addi r12,r12,1 + l.addi r13,r13,1 + l.j _loop + l.addi r14,r14,1 + l.addi r15,r15,1 + l.nop + l.nop + l.sys 203 + l.nop + +
trunk/orp/orp_soc/sw.old/ints/ints.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/setpc/setpc.S =================================================================== --- trunk/orp/orp_soc/sw.old/setpc/setpc.S (nonexistent) +++ trunk/orp/orp_soc/sw.old/setpc/setpc.S (revision 782) @@ -0,0 +1,88 @@ +#include "spr_defs.h" + + .extern main + .extern _src_beg + .extern _dst_beg + .extern _dst_end + +.org 0x100 + +_reset: + l.nop + l.nop + l.movhi r0, 0x0 + l.slli r0,r0,16 + l.addi r1,r0,0x0 + l.addi r2,r0,0x0 + l.addi r3,r0,0x0 + l.addi r4,r0,0x0 + l.addi r5,r0,0x0 + l.addi r6,r0,0x0 + l.addi r7,r0,0x0 + l.addi r8,r0,0x0 + l.addi r9,r0,0x1234 + l.addi r10,r0,0x0 + l.addi r11,r0,0x0 + l.addi r12,r0,0x0 + l.addi r13,r0,0x0 + l.addi r14,r0,0x0 + l.addi r15,r0,0x0 + l.addi r16,r0,0x0 + l.addi r17,r0,0x0 + l.addi r18,r0,0x0 + l.addi r19,r0,0x0 + l.addi r20,r0,0x0 + l.addi r21,r0,0x0 + l.addi r22,r0,0x0 + l.addi r23,r0,0x0 + l.addi r24,r0,0x0 + l.addi r25,r0,0x0 + l.addi r26,r0,0x0 + l.addi r27,r0,0x0 + l.addi r28,r0,0x0 + l.addi r29,r0,0x0 + l.addi r30,r0,0x0 + l.addi r31,r0,0x0 + + l.movhi r2,hi(_main) + l.ori r2,r2,lo(_main) + l.jr r2 + l.addi r2,r0,0 + +.org 0x2000 + +_main: + l.nop + l.nop + +_loop: + l.addi r11,r11,1 + l.addi r11,r11,2 + l.addi r11,r11,3 + l.addi r4,r0,SPR_PC + l.movhi r5,hi(_setpc) + l.addi r5,r5,lo(_setpc) + l.mtspr r4,r5,0 # set PC + l.addi r11,r11,4 + l.j _stop + l.addi r11,r11,5 + l.nop + +.org 0x3000 + +_setpc: + l.addi r12,r12,1 + l.addi r12,r12,2 + +_stop: + l.addi r12,r12,3 + l.nop + l.movhi r15,hi(0xdeaddea1) + l.ori r15,r15,lo(0xdeaddea1) + l.add r15,r15,r11 + l.add r15,r15,r12 + l.mtspr r0,r15,0x1234 + l.nop + l.sys 203 + l.nop +
trunk/orp/orp_soc/sw.old/setpc/setpc.S Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/setpc/spr_defs.h =================================================================== --- trunk/orp/orp_soc/sw.old/setpc/spr_defs.h (nonexistent) +++ trunk/orp/orp_soc/sw.old/setpc/spr_defs.h (revision 782) @@ -0,0 +1,400 @@ +/* spr_defs.h -- Defines OR1K architecture specific special-purpose registers + Copyright (C) 1999 Damjan Lampret, lampret@opencores.org + +This file is part of OpenRISC 1000 Architectural Simulator. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* This file is also used by microkernel test bench. Among +others it is also used in assembly file(s). */ + +/* Definition of special-purpose registers (SPRs) */ + +#define MAX_GRPS (32) +#define MAX_SPRS_PER_GRP_BITS (11) +#define MAX_SPRS_PER_GRP (1 << MAX_SPRS_PER_GRP_BITS) +#define MAX_SPRS (0x10000) + +/* Base addresses for the groups */ +#define SPRGROUP_SYS (0<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DMMU (1<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IMMU (2<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_DC (3<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_IC (4<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_MAC (5<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_D (6<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PC (7<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PM (8<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_PIC (9<< MAX_SPRS_PER_GRP_BITS) +#define SPRGROUP_TT (10<< MAX_SPRS_PER_GRP_BITS) + +/* System control and status group */ +#define SPR_VR (SPRGROUP_SYS + 0) +#define SPR_UPR (SPRGROUP_SYS + 1) +#define SPR_CPUCFGR (SPRGROUP_SYS + 2) +#define SPR_DMMUCFGR (SPRGROUP_SYS + 3) +#define SPR_IMMUCFGR (SPRGROUP_SYS + 4) +#define SPR_DCCFGR (SPRGROUP_SYS + 5) +#define SPR_ICCFGR (SPRGROUP_SYS + 6) +#define SPR_DCFGR (SPRGROUP_SYS + 7) +#define SPR_PCCFGR (SPRGROUP_SYS + 8) +#define SPR_PC (SPRGROUP_SYS + 16) /* CZ 21/06/01 */ +#define SPR_SR (SPRGROUP_SYS + 17) /* CZ 21/06/01 */ +#define SPR_EPCR_BASE (SPRGROUP_SYS + 32) /* CZ 21/06/01 */ +#define SPR_EPCR_LAST (SPRGROUP_SYS + 47) /* CZ 21/06/01 */ +#define SPR_EEAR_BASE (SPRGROUP_SYS + 48) +#define SPR_EEAR_LAST (SPRGROUP_SYS + 63) +#define SPR_ESR_BASE (SPRGROUP_SYS + 64) +#define SPR_ESR_LAST (SPRGROUP_SYS + 79) + +/* Data MMU group */ +#define SPR_DMMUCR (SPRGROUP_DMMU + 0) +#define SPR_DTLBMR_BASE(WAY) (SPRGROUP_DMMU + 0x200 + (WAY) * 0x200) +#define SPR_DTLBMR_LAST(WAY) (SPRGROUP_DMMU + 0x2ff + (WAY) * 0x200) +#define SPR_DTLBTR_BASE(WAY) (SPRGROUP_DMMU + 0x300 + (WAY) * 0x200) +#define SPR_DTLBTR_LAST(WAY) (SPRGROUP_DMMU + 0x3ff + (WAY) * 0x200) + +/* Instruction MMU group */ +#define SPR_IMMUCR (SPRGROUP_IMMU + 0) +#define SPR_ITLBMR_BASE(WAY) (SPRGROUP_IMMU + 0x200 + (WAY) * 0x200) +#define SPR_ITLBMR_LAST(WAY) (SPRGROUP_IMMU + 0x2ff + (WAY) * 0x200) +#define SPR_ITLBTR_BASE(WAY) (SPRGROUP_IMMU + 0x300 + (WAY) * 0x200) +#define SPR_ITLBTR_LAST(WAY) (SPRGROUP_IMMU + 0x3ff + (WAY) * 0x200) + +/* Data cache group */ +#define SPR_DCCR (SPRGROUP_DC + 0) +#define SPR_DCBPR (SPRGROUP_DC + 1) +#define SPR_DCBFR (SPRGROUP_DC + 2) +#define SPR_DCBIR (SPRGROUP_DC + 3) +#define SPR_DCBWR (SPRGROUP_DC + 4) +#define SPR_DCBLR (SPRGROUP_DC + 5) +#define SPR_DCR_BASE(WAY) (SPRGROUP_DC + 0x200 + (WAY) * 0x200) +#define SPR_DCR_LAST(WAY) (SPRGROUP_DC + 0x3ff + (WAY) * 0x200) + +/* Instruction cache group */ +#define SPR_ICCR (SPRGROUP_IC + 0) +#define SPR_ICBPR (SPRGROUP_IC + 1) +#define SPR_ICBIR (SPRGROUP_IC + 2) +#define SPR_ICBLR (SPRGROUP_IC + 3) +#define SPR_ICR_BASE(WAY) (SPRGROUP_IC + 0x200 + (WAY) * 0x200) +#define SPR_ICR_LAST(WAY) (SPRGROUP_IC + 0x3ff + (WAY) * 0x200) + +/* MAC group */ +#define SPR_MACLO (SPRGROUP_MAC + 1) +#define SPR_MACHI (SPRGROUP_MAC + 2) + +/* Debug group */ +#define SPR_DVR(N) (SPRGROUP_D + (N)) +#define SPR_DCR(N) (SPRGROUP_D + 8 + (N)) +#define SPR_DMR1 (SPRGROUP_D + 16) +#define SPR_DMR2 (SPRGROUP_D + 17) +#define SPR_DWCR0 (SPRGROUP_D + 18) +#define SPR_DWCR1 (SPRGROUP_D + 19) +#define SPR_DSR (SPRGROUP_D + 20) +#define SPR_DRR (SPRGROUP_D + 21) +#define SPR_DIR (SPRGROUP_D + 22) + +/* Performance counters group */ +#define SPR_PCCR(N) (SPRGROUP_PC + (N)) +#define SPR_PCMR(N) (SPRGROUP_PC + 8 + (N)) + +/* Power management group */ +#define SPR_PMR (SPRGROUP_PM + 0) + +/* PIC group */ +#define SPR_PICMR (SPRGROUP_PIC + 0) +#define SPR_PICPR (SPRGROUP_PIC + 1) +#define SPR_PICSR (SPRGROUP_PIC + 2) + +/* Tick Timer group */ +#define SPR_TTMR (SPRGROUP_TT + 0) +#define SPR_TTCR (SPRGROUP_TT + 1) + +/* + * Bit definitions for the Version Register + * + */ +#define SPR_VR_VER 0xffff0000 /* Processor version */ +#define SPR_VR_REV 0x0000003f /* Processor revision */ + +/* + * Bit definitions for the Unit Present Register + * + */ +#define SPR_UPR_UP 0x00000001 /* UPR present */ +#define SPR_UPR_DCP 0x00000002 /* Data cache present */ +#define SPR_UPR_ICP 0x00000004 /* Instruction cache present */ +#define SPR_UPR_DMP 0x00000008 /* Data MMU present */ +#define SPR_UPR_IMP 0x00000010 /* Instruction MMU present */ +#define SPR_UPR_OB32P 0x00000020 /* ORBIS32 present */ +#define SPR_UPR_OB64P 0x00000040 /* ORBIS64 present */ +#define SPR_UPR_OF32P 0x00000080 /* ORFPX32 present */ +#define SPR_UPR_OF64P 0x00000100 /* ORFPX64 present */ +#define SPR_UPR_OV32P 0x00000200 /* ORVDX32 present */ +#define SPR_UPR_OV64P 0x00000400 /* ORVDX64 present */ +#define SPR_UPR_DUP 0x00000800 /* Debug unit present */ +#define SPR_UPR_PCUP 0x00001000 /* Performance counters unit present */ +#define SPR_UPR_PMP 0x00002000 /* Power management present */ +#define SPR_UPR_PICP 0x00004000 /* PIC present */ +#define SPR_UPR_TTP 0x00008000 /* Tick timer present */ +#define SPR_UPR_SRP 0x00010000 /* Shadow registers present */ +#define SPR_UPR_RES 0x00fe0000 /* ORVDX32 present */ +#define SPR_UPR_CUST 0xff000000 /* Custom units */ + +/* + * Bit definitions for the Supervision Register + * + */ +#define SPR_SR_CID 0xf0000000 /* Context ID */ +#define SPR_SR_PXR 0x00008000 /* Partial exception recognition */ +#define SPR_SR_EP 0x00004000 /* Exception Prefix */ +#define SPR_SR_DSX 0x00002000 /* Delay Slot Exception */ +#define SPR_SR_OVE 0x00001000 /* Overflow flag Exception */ +#define SPR_SR_OV 0x00000800 /* Overflow flag */ +#define SPR_SR_CY 0x00000400 /* Carry flag */ +#define SPR_SR_F 0x00000200 /* Condition Flag */ +#define SPR_SR_CE 0x00000100 /* CID Enable */ +#define SPR_SR_LEE 0x00000080 /* Little Endian Enable */ +#define SPR_SR_IME 0x00000040 /* Instruction MMU Enable */ +#define SPR_SR_DME 0x00000020 /* Data MMU Enable */ +#define SPR_SR_ICE 0x00000010 /* Instruction Cache Enable */ +#define SPR_SR_DCE 0x00000008 /* Data Cache Enable */ +#define SPR_SR_EIR 0x00000004 /* External Interrupt Recognition */ +#define SPR_SR_EXR 0x00000002 /* Exception Recognition */ +#define SPR_SR_SUPV 0x00000001 /* Supervisor mode */ + +/* + * Bit definitions for the Data MMU Control Register + * + */ +#define SPR_DMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_DMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_DMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_DMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Instruction MMU Control Register + * + */ +#define SPR_IMMUCR_P2S 0x0000003e /* Level 2 Page Size */ +#define SPR_IMMUCR_P1S 0x000007c0 /* Level 1 Page Size */ +#define SPR_IMMUCR_VADDR_WIDTH 0x0000f800 /* Virtual ADDR Width */ +#define SPR_IMMUCR_PADDR_WIDTH 0x000f0000 /* Physical ADDR Width */ + +/* + * Bit definitions for the Data TLB Match Register + * + */ +#define SPR_DTLBMR_V 0x00000001 /* Valid */ +#define SPR_DTLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_DTLBMR_CID 0x0000003c /* Context ID */ +#define SPR_DTLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_DTLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Data TLB Translate Register + * + */ +#define SPR_DTLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_DTLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_DTLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_DTLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_DTLBTR_A 0x00000010 /* Accessed */ +#define SPR_DTLBTR_D 0x00000020 /* Dirty */ +#define SPR_DTLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_DTLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_DTLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_DTLBTR_SWE 0x00000200 /* Supervisor Write Enable */ +#define SPR_DTLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for the Instruction TLB Match Register + * + */ +#define SPR_ITLBMR_V 0x00000001 /* Valid */ +#define SPR_ITLBMR_PL1 0x00000002 /* Page Level 1 (if 0 then PL2) */ +#define SPR_ITLBMR_CID 0x0000003c /* Context ID */ +#define SPR_ITLBMR_LRU 0x000000c0 /* Least Recently Used */ +#define SPR_ITLBMR_VPN 0xfffff000 /* Virtual Page Number */ + +/* + * Bit definitions for the Instruction TLB Translate Register + * + */ +#define SPR_ITLBTR_CC 0x00000001 /* Cache Coherency */ +#define SPR_ITLBTR_CI 0x00000002 /* Cache Inhibit */ +#define SPR_ITLBTR_WBC 0x00000004 /* Write-Back Cache */ +#define SPR_ITLBTR_WOM 0x00000008 /* Weakly-Ordered Memory */ +#define SPR_ITLBTR_A 0x00000010 /* Accessed */ +#define SPR_ITLBTR_D 0x00000020 /* Dirty */ +#define SPR_ITLBTR_URE 0x00000040 /* User Read Enable */ +#define SPR_ITLBTR_UWE 0x00000080 /* User Write Enable */ +#define SPR_ITLBTR_SRE 0x00000100 /* Supervisor Read Enable */ +#define SPR_ITLBTR_SWE 0x00000200 /* Supervisor Write Enable (not used actually) */ +#define SPR_ITLBTR_PPN 0xfffff000 /* Physical Page Number */ + +/* + * Bit definitions for Data Cache Control register + * + */ +#define SPR_DCCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Insn Cache Control register + * + */ +#define SPR_ICCR_EW 0x000000ff /* Enable ways */ + +/* + * Bit definitions for Debug Control registers + * + */ +#define SPR_DCR_DP 0x00000001 /* DVR/DCR present */ +#define SPR_DCR_CC 0x0000000e /* Compare condition */ +#define SPR_DCR_SC 0x00000010 /* Signed compare */ +#define SPR_DCR_CT 0x000000e0 /* Compare to */ + +/* + * Bit definitions for Debug Mode 1 register + * + */ +#define SPR_DMR1_CW0 0x00000003 /* Chain watchpoint 0 */ +#define SPR_DMR1_CW1 0x0000000c /* Chain watchpoint 1 */ +#define SPR_DMR1_CW2 0x00000030 /* Chain watchpoint 2 */ +#define SPR_DMR1_CW3 0x000000c0 /* Chain watchpoint 3 */ +#define SPR_DMR1_CW4 0x00000300 /* Chain watchpoint 4 */ +#define SPR_DMR1_CW5 0x00000c00 /* Chain watchpoint 5 */ +#define SPR_DMR1_CW6 0x00003000 /* Chain watchpoint 6 */ +#define SPR_DMR1_CW7 0x0000c000 /* Chain watchpoint 7 */ +#define SPR_DMR1_CW8 0x00030000 /* Chain watchpoint 8 */ +#define SPR_DMR1_CW9 0x000c0000 /* Chain watchpoint 9 */ +#define SPR_DMR1_CW10 0x00300000 /* Chain watchpoint 10 */ +#define SPR_DMR1_ST 0x00400000 /* Single-step trace*/ +#define SPR_DMR1_BT 0x00800000 /* Branch trace */ +#define SPR_DMR1_DXFW 0x01000000 /* Disable external force watchpoint */ + +/* + * Bit definitions for Debug Mode 2 register + * + */ +#define SPR_DMR2_WCE0 0x00000001 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_WCE1 0x00000002 /* Watchpoint counter 0 enable */ +#define SPR_DMR2_AWTC 0x00001ffc /* Assign watchpoints to counters */ +#define SPR_DMR2_WGB 0x00ffe000 /* Watchpoints generating breakpoint */ + +/* + * Bit definitions for Debug watchpoint counter registers + * + */ +#define SPR_DWCR_COUNT 0x0000ffff /* Count */ +#define SPR_DWCR_MATCH 0xffff0000 /* Match */ + +/* + * Bit definitions for Debug stop register + * + */ +#define SPR_DSR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DSR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DSR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DSR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DSR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DSR_AE 0x00000020 /* Alignment exception */ +#define SPR_DSR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DSR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DSR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DSR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DSR_RE 0x00000400 /* Range exception */ +#define SPR_DSR_SCE 0x00000800 /* System call exception */ +#define SPR_DSR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Debug reason register + * + */ +#define SPR_DRR_RSTE 0x00000001 /* Reset exception */ +#define SPR_DRR_BUSEE 0x00000002 /* Bus error exception */ +#define SPR_DRR_DPFE 0x00000004 /* Data Page Fault exception */ +#define SPR_DRR_IPFE 0x00000008 /* Insn Page Fault exception */ +#define SPR_DRR_LPINTE 0x00000010 /* Low priority interrupt exception */ +#define SPR_DRR_AE 0x00000020 /* Alignment exception */ +#define SPR_DRR_IIE 0x00000040 /* Illegal Instruction exception */ +#define SPR_DRR_HPINTE 0x00000080 /* High priority interrupt exception */ +#define SPR_DRR_DME 0x00000100 /* DTLB miss exception */ +#define SPR_DRR_IME 0x00000200 /* ITLB miss exception */ +#define SPR_DRR_RE 0x00000400 /* Range exception */ +#define SPR_DRR_SCE 0x00000800 /* System call exception */ +#define SPR_DRR_BE 0x00001000 /* Breakpoint exception */ + +/* + * Bit definitions for Performance counters mode registers + * + */ +#define SPR_PCMR_CP 0x00000001 /* Counter present */ +#define SPR_PCMR_UMRA 0x00000002 /* User mode read access */ +#define SPR_PCMR_CISM 0x00000004 /* Count in supervisor mode */ +#define SPR_PCMR_CIUM 0x00000008 /* Count in user mode */ +#define SPR_PCMR_LA 0x00000010 /* Load access event */ +#define SPR_PCMR_SA 0x00000020 /* Store access event */ +#define SPR_PCMR_IF 0x00000040 /* Instruction fetch event*/ +#define SPR_PCMR_DCM 0x00000080 /* Data cache miss event */ +#define SPR_PCMR_ICM 0x00000100 /* Insn cache miss event */ +#define SPR_PCMR_IFS 0x00000200 /* Insn fetch stall event */ +#define SPR_PCMR_LSUS 0x00000400 /* LSU stall event */ +#define SPR_PCMR_BS 0x00000800 /* Branch stall event */ +#define SPR_PCMR_DTLBM 0x00001000 /* DTLB miss event */ +#define SPR_PCMR_ITLBM 0x00002000 /* ITLB miss event */ +#define SPR_PCMR_DDS 0x00004000 /* Data dependency stall event */ +#define SPR_PCMR_WPE 0x03ff8000 /* Watchpoint events */ + +/* + * Bit definitions for the Power management register + * + */ +#define SPR_PMR_SDF 0x00000001 /* Slow down factor */ +#define SPR_PMR_DME 0x00000002 /* Doze mode enable */ +#define SPR_PMR_SME 0x00000004 /* Sleep mode enable */ +#define SPR_PMR_DCGE 0x00000008 /* Dynamic clock gating enable */ +#define SPR_PMR_SUME 0x00000010 /* Suspend mode enable */ + +/* + * Bit definitions for PICMR + * + */ +#define SPR_PICMR_IUM 0xfffffffc /* Interrupt unmask */ + +/* + * Bit definitions for PICPR + * + */ +#define SPR_PICPR_IPRIO 0xfffffffc /* Interrupt priority */ + +/* + * Bit definitions for PICSR + * + */ +#define SPR_PICSR_IS 0xffffffff /* Interrupt status */ + +/* + * Bit definitions for Tick Timer Control Register + * + */ +#define SPR_TTCR_PERIOD 0x0fffffff /* Time Period */ +#define SPR_TTMR_PERIOD SPR_TTCR_PERIOD +#define SPR_TTMR_IP 0x10000000 /* Interrupt Pending */ +#define SPR_TTMR_IE 0x20000000 /* Interrupt Enable */ +#define SPR_TTMR_RT 0x40000000 /* Restart tick */ +#define SPR_TTMR_SR 0x80000000 /* Single run */ +#define SPR_TTMR_CR 0xc0000000 /* Continuous run */ +#define SPR_TTMR_M 0xc0000000 /* Tick mode */
trunk/orp/orp_soc/sw.old/setpc/spr_defs.h Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: trunk/orp/orp_soc/sw.old/setpc/Makefile =================================================================== --- trunk/orp/orp_soc/sw.old/setpc/Makefile (nonexistent) +++ trunk/orp/orp_soc/sw.old/setpc/Makefile (revision 782) @@ -0,0 +1,16 @@ +CCFLAGS = -O2 -g -nostdlib + +all: setpc.or32 + +setpc.or32: setpc.o + or32-rtems-gcc -nostdlib setpc.o -o setpc.or32 + or32-rtems-objcopy -O binary setpc.or32 setpc.bin + ../utils/bin2srec setpc.bin > setpc.srec + ../utils/bin2hex setpc.bin > setpc.hex + cp setpc.hex ../../sim/src/setpc.mem + +setpc.o: setpc.S + or32-rtems-gcc $(CCFLAGS) setpc.S -c -DOR1K + +clean: + rm -f *.o setpc.or32 *.bin *.srec *.hex
trunk/orp/orp_soc/sw.old/setpc/Makefile Property changes : Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.