summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordcommander <dcommander@3789f03b-4d11-0410-bbf8-ca57d06f2519>2010-11-23 05:49:54 +0000
committerdcommander <dcommander@3789f03b-4d11-0410-bbf8-ca57d06f2519>2010-11-23 05:49:54 +0000
commitc0b0d27a4200e7be2f880aa38e48a785775a5f28 (patch)
treea2df80779541d7c9d674954ccb96b3e2b5ba857a
parent4f072976b4547d7bc1cd08b2d5897f006e2788a9 (diff)
Support arithmetic encoding and decoding
git-svn-id: https://libjpeg-turbo.svn.sourceforge.net/svnroot/libjpeg-turbo@299 3789f03b-4d11-0410-bbf8-ca57d06f2519
-rw-r--r--trunk/CMakeLists.txt31
-rw-r--r--trunk/ChangeLog.txt2
-rw-r--r--trunk/Makefile.am65
-rw-r--r--trunk/README14
-rw-r--r--trunk/change.log3
-rw-r--r--trunk/cjpeg.18
-rw-r--r--trunk/djpeg.12
-rw-r--r--trunk/filelist.txt4
-rw-r--r--trunk/jaricom.c153
-rw-r--r--trunk/jcarith.c925
-rw-r--r--trunk/jcinit.c4
-rw-r--r--trunk/jctrans.c4
-rw-r--r--trunk/jdarith.c761
-rw-r--r--trunk/jdmaster.c4
-rw-r--r--trunk/jdtrans.c4
-rw-r--r--trunk/jerror.h2
-rw-r--r--trunk/jmorecfg.h6
-rw-r--r--trunk/jpegint.h9
-rw-r--r--trunk/jpegtran.15
-rw-r--r--trunk/libjpeg.txt6
-rw-r--r--trunk/structure.txt3
-rw-r--r--trunk/testimgari.jpgbin0 -> 5126 bytes
-rw-r--r--trunk/testimgari.ppm4
-rw-r--r--trunk/usage.txt6
24 files changed, 1949 insertions, 76 deletions
diff --git a/trunk/CMakeLists.txt b/trunk/CMakeLists.txt
index 0a07001..560ca85 100644
--- a/trunk/CMakeLists.txt
+++ b/trunk/CMakeLists.txt
@@ -90,13 +90,14 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR})
# Targets
#
-set(JPEG_SOURCES jcapimin.c jcapistd.c jccoefct.c jccolor.c jcdctmgr.c jchuff.c
- jcinit.c jcmainct.c jcmarker.c jcmaster.c jcomapi.c jcparam.c jcphuff.c
- jcprepct.c jcsample.c jctrans.c jdapimin.c jdapistd.c jdatadst.c jdatasrc.c
- jdcoefct.c jdcolor.c jddctmgr.c jdhuff.c jdinput.c jdmainct.c jdmarker.c
- jdmaster.c jdmerge.c jdphuff.c jdpostct.c jdsample.c jdtrans.c jerror.c
- jfdctflt.c jfdctfst.c jfdctint.c jidctflt.c jidctfst.c jidctint.c jidctred.c
- jquant1.c jquant2.c jutils.c jmemmgr.c jmemnobs.c)
+set(JPEG_SOURCES jaricom.c jcapimin.c jcapistd.c jcarith.c jccoefct.c jccolor.c
+ jcdctmgr.c jchuff.c jcinit.c jcmainct.c jcmarker.c jcmaster.c jcomapi.c
+ jcparam.c jcphuff.c jcprepct.c jcsample.c jctrans.c jdapimin.c jdapistd.c
+ jdarith.c jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c jddctmgr.c jdhuff.c
+ jdinput.c jdmainct.c jdmarker.c jdmaster.c jdmerge.c jdphuff.c jdpostct.c
+ jdsample.c jdtrans.c jerror.c jfdctflt.c jfdctfst.c jfdctint.c jidctflt.c
+ jidctfst.c jidctint.c jidctred.c jquant1.c jquant2.c jutils.c jmemmgr.c
+ jmemnobs.c)
if(WITH_SIMD)
add_definitions(-DWITH_SIMD)
@@ -201,6 +202,14 @@ add_test(cjpeg-prog sharedlib/cjpeg -dct int -progressive -outfile testoutp.jpg
add_test(cjpeg-prog-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgp.jpg testoutp.jpg)
add_test(jpegtran-prog sharedlib/jpegtran -outfile testoutt.jpg testoutp.jpg)
add_test(jpegtran-prog-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgint.jpg testoutt.jpg)
+add_test(cjpeg-ari sharedlib/cjpeg -dct int -arithmetic -outfile testoutari.jpg ${CMAKE_SOURCE_DIR}/testorig.ppm)
+add_test(cjpeg-ari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgari.jpg testoutari.jpg)
+add_test(djpeg-ari sharedlib/djpeg -dct int -fast -ppm -outfile testoutari.ppm ${CMAKE_SOURCE_DIR}/testimgari.jpg)
+add_test(djpeg-ari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgari.ppm testoutari.ppm)
+add_test(jpegtran-toari sharedlib/jpegtran -arithmetic -outfile testouta.jpg testoutint.jpg)
+add_test(jpegtran-toari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgari.jpg testouta.jpg)
+add_test(jpegtran-fromari sharedlib/jpegtran -outfile testouta.jpg testoutari.jpg)
+add_test(jpegtran-fromari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgint.jpg testouta.jpg)
add_test(jpegtran-crop sharedlib/jpegtran -crop 120x90+20+50 -transpose -perfect -outfile testoutcrop.jpg ${CMAKE_SOURCE_DIR}/testorig.jpg)
add_test(jpegtran-crop-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgcrop.jpg testoutcrop.jpg)
@@ -231,6 +240,14 @@ add_test(cjpeg-static-prog cjpeg-static -dct int -progressive -outfile testoutp.
add_test(cjpeg-static-prog-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgp.jpg testoutp.jpg)
add_test(jpegtran-static-prog jpegtran-static -outfile testoutt.jpg testoutp.jpg)
add_test(jpegtran-static-prog-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgint.jpg testoutt.jpg)
+add_test(cjpeg-static-ari cjpeg-static -dct int -arithmetic -outfile testoutari.jpg ${CMAKE_SOURCE_DIR}/testorig.ppm)
+add_test(cjpeg-static-ari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgari.jpg testoutari.jpg)
+add_test(djpeg-static-ari djpeg-static -dct int -fast -ppm -outfile testoutari.ppm ${CMAKE_SOURCE_DIR}/testimgari.jpg)
+add_test(djpeg-static-ari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgari.ppm testoutari.ppm)
+add_test(jpegtran-static-toari jpegtran-static -arithmetic -outfile testouta.jpg testoutint.jpg)
+add_test(jpegtran-static-toari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgari.jpg testouta.jpg)
+add_test(jpegtran-static-fromari jpegtran-static -outfile testouta.jpg testoutari.jpg)
+add_test(jpegtran-static-fromari-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgint.jpg testouta.jpg)
add_test(jpegtran-static-crop jpegtran-static -crop 120x90+20+50 -transpose -perfect -outfile testoutcrop.jpg ${CMAKE_SOURCE_DIR}/testorig.jpg)
add_test(jpegtran-static-crop-cmp ${CMAKE_COMMAND} -E compare_files ${CMAKE_SOURCE_DIR}/testimgcrop.jpg testoutcrop.jpg)
diff --git a/trunk/ChangeLog.txt b/trunk/ChangeLog.txt
index 43dd82b..068fafd 100644
--- a/trunk/ChangeLog.txt
+++ b/trunk/ChangeLog.txt
@@ -18,6 +18,8 @@ packages.
[6] All symbols in the libjpeg-turbo dynamic library are now versioned, even
when the library is built with libjpeg v6b emulation.
+[7] Added arithmetic encoding and decoding support.
+
Significant changes since 1.0.0
===============================
diff --git a/trunk/Makefile.am b/trunk/Makefile.am
index bf0c1df..2450930 100644
--- a/trunk/Makefile.am
+++ b/trunk/Makefile.am
@@ -7,14 +7,15 @@ nodist_include_HEADERS = jconfig.h
HDRS = jchuff.h jdct.h jdhuff.h jerror.h jinclude.h jmemsys.h jmorecfg.h \
jpegint.h jpeglib.h jversion.h jsimd.h jsimddct.h jpegcomp.h
-libjpeg_la_SOURCES = $(HDRS) jcapimin.c jcapistd.c jccoefct.c jccolor.c \
- jcdctmgr.c jchuff.c jcinit.c jcmainct.c jcmarker.c jcmaster.c \
- jcomapi.c jcparam.c jcphuff.c jcprepct.c jcsample.c jctrans.c \
- jdapimin.c jdapistd.c jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c \
- jddctmgr.c jdhuff.c jdinput.c jdmainct.c jdmarker.c jdmaster.c \
- jdmerge.c jdphuff.c jdpostct.c jdsample.c jdtrans.c jerror.c \
- jfdctflt.c jfdctfst.c jfdctint.c jidctflt.c jidctfst.c jidctint.c \
- jidctred.c jquant1.c jquant2.c jutils.c jmemmgr.c jmemnobs.c
+libjpeg_la_SOURCES = $(HDRS) jaricom.c jcapimin.c jcapistd.c jcarith.c \
+ jccoefct.c jccolor.c jcdctmgr.c jchuff.c jcinit.c jcmainct.c \
+ jcmarker.c jcmaster.c jcomapi.c jcparam.c jcphuff.c jcprepct.c \
+ jcsample.c jctrans.c jdapimin.c jdapistd.c jdarith.c \
+ jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c jddctmgr.c jdhuff.c \
+ jdinput.c jdmainct.c jdmarker.c jdmaster.c jdmerge.c jdphuff.c \
+ jdpostct.c jdsample.c jdtrans.c jerror.c jfdctflt.c jfdctfst.c \
+ jfdctint.c jidctflt.c jidctfst.c jidctint.c jidctred.c \
+ jquant1.c jquant2.c jutils.c jmemmgr.c jmemnobs.c
libturbojpeg_la_SOURCES = $(libjpeg_la_SOURCES) turbojpegl.c turbojpeg.h \
turbojpeg-mapfile
@@ -103,49 +104,38 @@ dist-hook:
rm -rf `find $(distdir) -name .svn`
-if WITH_SIMD
-
test: testclean all
./jpegut
./cjpeg -dct int -outfile testoutint.jpg $(srcdir)/testorig.ppm
- ./cjpeg -dct fast -opt -outfile testoutfst.jpg $(srcdir)/testorig.ppm
- ./cjpeg -dct float -outfile testoutflt.jpg $(srcdir)/testorig.ppm
cmp $(srcdir)/testimgint.jpg testoutint.jpg
+ ./cjpeg -dct fast -opt -outfile testoutfst.jpg $(srcdir)/testorig.ppm
cmp $(srcdir)/testimgfst.jpg testoutfst.jpg
+ ./cjpeg -dct float -outfile testoutflt.jpg $(srcdir)/testorig.ppm
+if WITH_SIMD
cmp $(srcdir)/testimgflt.jpg testoutflt.jpg
- ./djpeg -dct int -fast -ppm -outfile testoutint.ppm $(srcdir)/testorig.jpg
- ./djpeg -dct fast -ppm -outfile testoutfst.ppm $(srcdir)/testorig.jpg
- ./djpeg -dct float -ppm -outfile testoutflt.ppm $(srcdir)/testorig.jpg
- cmp $(srcdir)/testimgint.ppm testoutint.ppm
- cmp $(srcdir)/testimgfst.ppm testoutfst.ppm
- cmp $(srcdir)/testimgflt.ppm testoutflt.ppm
- ./djpeg -dct int -bmp -colors 256 -outfile testout.bmp $(srcdir)/testorig.jpg
- cmp $(srcdir)/testimg.bmp testout.bmp
- ./cjpeg -dct int -progressive -outfile testoutp.jpg $(srcdir)/testorig.ppm
- cmp $(srcdir)/testimgp.jpg testoutp.jpg
- ./jpegtran -outfile testoutt.jpg testoutp.jpg
- cmp $(srcdir)/testimgint.jpg testoutt.jpg
- ./jpegtran -crop 120x90+20+50 -transpose -perfect -outfile testoutcrop.jpg $(srcdir)/testorig.jpg
- cmp $(srcdir)/testimgcrop.jpg testoutcrop.jpg
-
else
-
-test: testclean all
- ./jpegut
- ./cjpeg -dct int -outfile testoutint.jpg $(srcdir)/testorig.ppm
- ./cjpeg -dct fast -opt -outfile testoutfst.jpg $(srcdir)/testorig.ppm
- ./cjpeg -dct float -outfile testoutflt.jpg $(srcdir)/testorig.ppm
- cmp $(srcdir)/testimgint.jpg testoutint.jpg
- cmp $(srcdir)/testimgfst.jpg testoutfst.jpg
cmp $(srcdir)/testimgflt-nosimd.jpg testoutflt.jpg
+endif
./djpeg -dct int -fast -ppm -outfile testoutint.ppm $(srcdir)/testorig.jpg
- ./djpeg -dct fast -ppm -outfile testoutfst.ppm $(srcdir)/testorig.jpg
- ./djpeg -dct float -ppm -outfile testoutflt.ppm $(srcdir)/testorig.jpg
cmp $(srcdir)/testimgint.ppm testoutint.ppm
+ ./djpeg -dct fast -ppm -outfile testoutfst.ppm $(srcdir)/testorig.jpg
cmp $(srcdir)/testimgfst.ppm testoutfst.ppm
+ ./djpeg -dct float -ppm -outfile testoutflt.ppm $(srcdir)/testorig.jpg
+if WITH_SIMD
+ cmp $(srcdir)/testimgflt.ppm testoutflt.ppm
+else
cmp $(srcdir)/testorig.ppm testoutflt.ppm
+endif
./djpeg -dct int -bmp -colors 256 -outfile testout.bmp $(srcdir)/testorig.jpg
cmp $(srcdir)/testimg.bmp testout.bmp
+ ./cjpeg -dct int -arithmetic -outfile testoutari.jpg $(srcdir)/testorig.ppm
+ cmp $(srcdir)/testimgari.jpg testoutari.jpg
+ ./djpeg -dct int -fast -ppm -outfile testoutari.ppm $(srcdir)/testimgari.jpg
+ cmp $(srcdir)/testimgari.ppm testoutari.ppm
+ ./jpegtran -arithmetic -outfile testouta.jpg testoutint.jpg
+ cmp $(srcdir)/testimgari.jpg testouta.jpg
+ ./jpegtran -outfile testouta.jpg testoutari.jpg
+ cmp $(srcdir)/testimgint.jpg testouta.jpg
./cjpeg -dct int -progressive -outfile testoutp.jpg $(srcdir)/testorig.ppm
cmp $(srcdir)/testimgp.jpg testoutp.jpg
./jpegtran -outfile testoutt.jpg testoutp.jpg
@@ -153,7 +143,6 @@ test: testclean all
./jpegtran -crop 120x90+20+50 -transpose -perfect -outfile testoutcrop.jpg $(srcdir)/testorig.jpg
cmp $(srcdir)/testimgcrop.jpg testoutcrop.jpg
-endif
testclean:
rm -f testout*
diff --git a/trunk/README b/trunk/README
index ce6e947..2ead09e 100644
--- a/trunk/README
+++ b/trunk/README
@@ -78,9 +78,8 @@ compressor.)
This software implements JPEG baseline, extended-sequential, and progressive
compression processes. Provision is made for supporting all variants of these
processes, although some uncommon parameter settings aren't implemented yet.
-For legal reasons, we are not distributing code for the arithmetic-coding
-variants of JPEG; see LEGAL ISSUES. We have made no provision for supporting
-the hierarchical or lossless processes defined in the standard.
+We have made no provision for supporting the hierarchical or lossless
+processes defined in the standard.
We provide a set of library routines for reading and writing JPEG image files,
plus two sample applications "cjpeg" and "djpeg", which use the library to
@@ -175,15 +174,6 @@ The same holds for its supporting scripts (config.guess, config.sub,
ltmain.sh). Another support script, install-sh, is copyright by X Consortium
but is also freely distributable.
-It appears that the arithmetic coding option of the JPEG spec is covered by
-patents owned by IBM, AT&T, and Mitsubishi. Hence arithmetic coding cannot
-legally be used without obtaining one or more licenses. For this reason,
-support for arithmetic coding has been removed from the free JPEG software.
-(Since arithmetic coding provides only a marginal gain over the unpatented
-Huffman mode, it is unlikely that very many implementations will support it.)
-So far as we are aware, there are no patent restrictions on the remaining
-code.
-
The IJG distribution formerly included code to read and write GIF files.
To avoid entanglement with the Unisys LZW patent, GIF reading support has
been removed altogether, and the GIF writer has been simplified to produce
diff --git a/trunk/change.log b/trunk/change.log
index c6e9399..704d8b2 100644
--- a/trunk/change.log
+++ b/trunk/change.log
@@ -36,6 +36,9 @@ settings for luminance and chrominance (or in general, for every provided
quantization table slot).
New API function jpeg_default_qtables() and q_scale_factor array in library.
+Support arithmetic entropy encoding and decoding.
+Added files jaricom.c, jcarith.c, jdarith.c.
+
jpegtran has a new "lossless" cropping feature.
Implement -perfect option in jpegtran, new API function
diff --git a/trunk/cjpeg.1 b/trunk/cjpeg.1
index 63a4e39..e4d95ee 100644
--- a/trunk/cjpeg.1
+++ b/trunk/cjpeg.1
@@ -214,6 +214,12 @@ visibly blur the image, however.
.PP
Switches for wizards:
.TP
+.B \-arithmetic
+Use arithmetic coding.
+.B Caution:
+arithmetic coded JPEG is not yet widely implemented, so many decoders will be
+unable to view an arithmetic coded JPEG file at all.
+.TP
.B \-baseline
Force baseline-compatible quantization tables to be generated. This clamps
quantization values to 8 bits even at low quality settings. (This switch is
@@ -303,8 +309,6 @@ Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44.
.SH AUTHOR
Independent JPEG Group
.SH BUGS
-Arithmetic coding is not supported for legal reasons.
-.PP
Support for GIF input files was removed in cjpeg v6b due to concerns over
the Unisys LZW patent. Although this patent expired in 2006, cjpeg still
lacks GIF support, for these historical reasons. (Conversion of GIF files to
diff --git a/trunk/djpeg.1 b/trunk/djpeg.1
index 8d98c66..e5e46f2 100644
--- a/trunk/djpeg.1
+++ b/trunk/djpeg.1
@@ -243,8 +243,6 @@ Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44.
.SH AUTHOR
Independent JPEG Group
.SH BUGS
-Arithmetic coding is not supported for legal reasons.
-.PP
To avoid the Unisys LZW patent,
.B djpeg
produces uncompressed GIF files. These are larger than they should be, but
diff --git a/trunk/filelist.txt b/trunk/filelist.txt
index a26ffcd..2f905a6 100644
--- a/trunk/filelist.txt
+++ b/trunk/filelist.txt
@@ -74,6 +74,7 @@ jfdctfst.c Forward DCT using faster, less accurate integer method.
jfdctflt.c Forward DCT using floating-point arithmetic.
jchuff.c Huffman entropy coding for sequential JPEG.
jcphuff.c Huffman entropy coding for progressive JPEG.
+jcarith.c Arithmetic entropy coding.
jcmarker.c JPEG marker writing.
jdatadst.c Data destination managers for memory and stdio output.
@@ -87,6 +88,7 @@ jdpostct.c Postprocessor buffer controller.
jdmarker.c JPEG marker reading.
jdhuff.c Huffman entropy decoding for sequential JPEG.
jdphuff.c Huffman entropy decoding for progressive JPEG.
+jdarith.c Arithmetic entropy decoding.
jddctmgr.c IDCT manager (IDCT implementation selection & control).
jidctint.c Inverse DCT using slow-but-accurate integer method.
jidctfst.c Inverse DCT using faster, less accurate integer method.
@@ -102,6 +104,8 @@ jdatasrc.c Data source managers for memory and stdio input.
Support files for both compression and decompression:
+jaricom.c Tables for common use in arithmetic entropy encoding and
+ decoding routines.
jerror.c Standard error handling routines (application replaceable).
jmemmgr.c System-independent (more or less) memory management code.
jutils.c Miscellaneous utility routines.
diff --git a/trunk/jaricom.c b/trunk/jaricom.c
new file mode 100644
index 0000000..f43e2ea
--- /dev/null
+++ b/trunk/jaricom.c
@@ -0,0 +1,153 @@
+/*
+ * jaricom.c
+ *
+ * Developed 1997-2009 by Guido Vollbeding.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains probability estimation tables for common use in
+ * arithmetic entropy encoding and decoding routines.
+ *
+ * This data represents Table D.2 in the JPEG spec (ISO/IEC IS 10918-1
+ * and CCITT Recommendation ITU-T T.81) and Table 24 in the JBIG spec
+ * (ISO/IEC IS 11544 and CCITT Recommendation ITU-T T.82).
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+/* The following #define specifies the packing of the four components
+ * into the compact INT32 representation.
+ * Note that this formula must match the actual arithmetic encoder
+ * and decoder implementation. The implementation has to be changed
+ * if this formula is changed.
+ * The current organization is leaned on Markus Kuhn's JBIG
+ * implementation (jbig_tab.c).
+ */
+
+#define V(i,a,b,c,d) (((INT32)a << 16) | ((INT32)c << 8) | ((INT32)d << 7) | b)
+
+const INT32 jpeg_aritab[113+1] = {
+/*
+ * Index, Qe_Value, Next_Index_LPS, Next_Index_MPS, Switch_MPS
+ */
+ V( 0, 0x5a1d, 1, 1, 1 ),
+ V( 1, 0x2586, 14, 2, 0 ),
+ V( 2, 0x1114, 16, 3, 0 ),
+ V( 3, 0x080b, 18, 4, 0 ),
+ V( 4, 0x03d8, 20, 5, 0 ),
+ V( 5, 0x01da, 23, 6, 0 ),
+ V( 6, 0x00e5, 25, 7, 0 ),
+ V( 7, 0x006f, 28, 8, 0 ),
+ V( 8, 0x0036, 30, 9, 0 ),
+ V( 9, 0x001a, 33, 10, 0 ),
+ V( 10, 0x000d, 35, 11, 0 ),
+ V( 11, 0x0006, 9, 12, 0 ),
+ V( 12, 0x0003, 10, 13, 0 ),
+ V( 13, 0x0001, 12, 13, 0 ),
+ V( 14, 0x5a7f, 15, 15, 1 ),
+ V( 15, 0x3f25, 36, 16, 0 ),
+ V( 16, 0x2cf2, 38, 17, 0 ),
+ V( 17, 0x207c, 39, 18, 0 ),
+ V( 18, 0x17b9, 40, 19, 0 ),
+ V( 19, 0x1182, 42, 20, 0 ),
+ V( 20, 0x0cef, 43, 21, 0 ),
+ V( 21, 0x09a1, 45, 22, 0 ),
+ V( 22, 0x072f, 46, 23, 0 ),
+ V( 23, 0x055c, 48, 24, 0 ),
+ V( 24, 0x0406, 49, 25, 0 ),
+ V( 25, 0x0303, 51, 26, 0 ),
+ V( 26, 0x0240, 52, 27, 0 ),
+ V( 27, 0x01b1, 54, 28, 0 ),
+ V( 28, 0x0144, 56, 29, 0 ),
+ V( 29, 0x00f5, 57, 30, 0 ),
+ V( 30, 0x00b7, 59, 31, 0 ),
+ V( 31, 0x008a, 60, 32, 0 ),
+ V( 32, 0x0068, 62, 33, 0 ),
+ V( 33, 0x004e, 63, 34, 0 ),
+ V( 34, 0x003b, 32, 35, 0 ),
+ V( 35, 0x002c, 33, 9, 0 ),
+ V( 36, 0x5ae1, 37, 37, 1 ),
+ V( 37, 0x484c, 64, 38, 0 ),
+ V( 38, 0x3a0d, 65, 39, 0 ),
+ V( 39, 0x2ef1, 67, 40, 0 ),
+ V( 40, 0x261f, 68, 41, 0 ),
+ V( 41, 0x1f33, 69, 42, 0 ),
+ V( 42, 0x19a8, 70, 43, 0 ),
+ V( 43, 0x1518, 72, 44, 0 ),
+ V( 44, 0x1177, 73, 45, 0 ),
+ V( 45, 0x0e74, 74, 46, 0 ),
+ V( 46, 0x0bfb, 75, 47, 0 ),
+ V( 47, 0x09f8, 77, 48, 0 ),
+ V( 48, 0x0861, 78, 49, 0 ),
+ V( 49, 0x0706, 79, 50, 0 ),
+ V( 50, 0x05cd, 48, 51, 0 ),
+ V( 51, 0x04de, 50, 52, 0 ),
+ V( 52, 0x040f, 50, 53, 0 ),
+ V( 53, 0x0363, 51, 54, 0 ),
+ V( 54, 0x02d4, 52, 55, 0 ),
+ V( 55, 0x025c, 53, 56, 0 ),
+ V( 56, 0x01f8, 54, 57, 0 ),
+ V( 57, 0x01a4, 55, 58, 0 ),
+ V( 58, 0x0160, 56, 59, 0 ),
+ V( 59, 0x0125, 57, 60, 0 ),
+ V( 60, 0x00f6, 58, 61, 0 ),
+ V( 61, 0x00cb, 59, 62, 0 ),
+ V( 62, 0x00ab, 61, 63, 0 ),
+ V( 63, 0x008f, 61, 32, 0 ),
+ V( 64, 0x5b12, 65, 65, 1 ),
+ V( 65, 0x4d04, 80, 66, 0 ),
+ V( 66, 0x412c, 81, 67, 0 ),
+ V( 67, 0x37d8, 82, 68, 0 ),
+ V( 68, 0x2fe8, 83, 69, 0 ),
+ V( 69, 0x293c, 84, 70, 0 ),
+ V( 70, 0x2379, 86, 71, 0 ),
+ V( 71, 0x1edf, 87, 72, 0 ),
+ V( 72, 0x1aa9, 87, 73, 0 ),
+ V( 73, 0x174e, 72, 74, 0 ),
+ V( 74, 0x1424, 72, 75, 0 ),
+ V( 75, 0x119c, 74, 76, 0 ),
+ V( 76, 0x0f6b, 74, 77, 0 ),
+ V( 77, 0x0d51, 75, 78, 0 ),
+ V( 78, 0x0bb6, 77, 79, 0 ),
+ V( 79, 0x0a40, 77, 48, 0 ),
+ V( 80, 0x5832, 80, 81, 1 ),
+ V( 81, 0x4d1c, 88, 82, 0 ),
+ V( 82, 0x438e, 89, 83, 0 ),
+ V( 83, 0x3bdd, 90, 84, 0 ),
+ V( 84, 0x34ee, 91, 85, 0 ),
+ V( 85, 0x2eae, 92, 86, 0 ),
+ V( 86, 0x299a, 93, 87, 0 ),
+ V( 87, 0x2516, 86, 71, 0 ),
+ V( 88, 0x5570, 88, 89, 1 ),
+ V( 89, 0x4ca9, 95, 90, 0 ),
+ V( 90, 0x44d9, 96, 91, 0 ),
+ V( 91, 0x3e22, 97, 92, 0 ),
+ V( 92, 0x3824, 99, 93, 0 ),
+ V( 93, 0x32b4, 99, 94, 0 ),
+ V( 94, 0x2e17, 93, 86, 0 ),
+ V( 95, 0x56a8, 95, 96, 1 ),
+ V( 96, 0x4f46, 101, 97, 0 ),
+ V( 97, 0x47e5, 102, 98, 0 ),
+ V( 98, 0x41cf, 103, 99, 0 ),
+ V( 99, 0x3c3d, 104, 100, 0 ),
+ V( 100, 0x375e, 99, 93, 0 ),
+ V( 101, 0x5231, 105, 102, 0 ),
+ V( 102, 0x4c0f, 106, 103, 0 ),
+ V( 103, 0x4639, 107, 104, 0 ),
+ V( 104, 0x415e, 103, 99, 0 ),
+ V( 105, 0x5627, 105, 106, 1 ),
+ V( 106, 0x50e7, 108, 107, 0 ),
+ V( 107, 0x4b85, 109, 103, 0 ),
+ V( 108, 0x5597, 110, 109, 0 ),
+ V( 109, 0x504f, 111, 107, 0 ),
+ V( 110, 0x5a10, 110, 111, 1 ),
+ V( 111, 0x5522, 112, 109, 0 ),
+ V( 112, 0x59eb, 112, 111, 1 ),
+/*
+ * This last entry is used for fixed probability estimate of 0.5
+ * as recommended in Section 10.3 Table 5 of ITU-T Rec. T.851.
+ */
+ V( 113, 0x5a1d, 113, 113, 0 )
+};
diff --git a/trunk/jcarith.c b/trunk/jcarith.c
new file mode 100644
index 0000000..a9ca1c3
--- /dev/null
+++ b/trunk/jcarith.c
@@ -0,0 +1,925 @@
+/*
+ * jcarith.c
+ *
+ * Developed 1997-2009 by Guido Vollbeding.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains portable arithmetic entropy encoding routines for JPEG
+ * (implementing the ISO/IEC IS 10918-1 and CCITT Recommendation ITU-T T.81).
+ *
+ * Both sequential and progressive modes are supported in this single module.
+ *
+ * Suspension is not currently supported in this module.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Expanded entropy encoder object for arithmetic encoding. */
+
+typedef struct {
+ struct jpeg_entropy_encoder pub; /* public fields */
+
+ INT32 c; /* C register, base of coding interval, layout as in sec. D.1.3 */
+ INT32 a; /* A register, normalized size of coding interval */
+ INT32 sc; /* counter for stacked 0xFF values which might overflow */
+ INT32 zc; /* counter for pending 0x00 output values which might *
+ * be discarded at the end ("Pacman" termination) */
+ int ct; /* bit shift counter, determines when next byte will be written */
+ int buffer; /* buffer for most recent output byte != 0xFF */
+
+ int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */
+ int dc_context[MAX_COMPS_IN_SCAN]; /* context index for DC conditioning */
+
+ unsigned int restarts_to_go; /* MCUs left in this restart interval */
+ int next_restart_num; /* next restart number to write (0-7) */
+
+ /* Pointers to statistics areas (these workspaces have image lifespan) */
+ unsigned char * dc_stats[NUM_ARITH_TBLS];
+ unsigned char * ac_stats[NUM_ARITH_TBLS];
+
+ /* Statistics bin for coding with fixed probability 0.5 */
+ unsigned char fixed_bin[4];
+} arith_entropy_encoder;
+
+typedef arith_entropy_encoder * arith_entropy_ptr;
+
+/* The following two definitions specify the allocation chunk size
+ * for the statistics area.
+ * According to sections F.1.4.4.1.3 and F.1.4.4.2, we need at least
+ * 49 statistics bins for DC, and 245 statistics bins for AC coding.
+ *
+ * We use a compact representation with 1 byte per statistics bin,
+ * thus the numbers directly represent byte sizes.
+ * This 1 byte per statistics bin contains the meaning of the MPS
+ * (more probable symbol) in the highest bit (mask 0x80), and the
+ * index into the probability estimation state machine table
+ * in the lower bits (mask 0x7F).
+ */
+
+#define DC_STAT_BINS 64
+#define AC_STAT_BINS 256
+
+/* NOTE: Uncomment the following #define if you want to use the
+ * given formula for calculating the AC conditioning parameter Kx
+ * for spectral selection progressive coding in section G.1.3.2
+ * of the spec (Kx = Kmin + SRL (8 + Se - Kmin) 4).
+ * Although the spec and P&M authors claim that this "has proven
+ * to give good results for 8 bit precision samples", I'm not
+ * convinced yet that this is really beneficial.
+ * Early tests gave only very marginal compression enhancements
+ * (a few - around 5 or so - bytes even for very large files),
+ * which would turn out rather negative if we'd suppress the
+ * DAC (Define Arithmetic Conditioning) marker segments for
+ * the default parameters in the future.
+ * Note that currently the marker writing module emits 12-byte
+ * DAC segments for a full-component scan in a color image.
+ * This is not worth worrying about IMHO. However, since the
+ * spec defines the default values to be used if the tables
+ * are omitted (unlike Huffman tables, which are required
+ * anyway), one might optimize this behaviour in the future,
+ * and then it would be disadvantageous to use custom tables if
+ * they don't provide sufficient gain to exceed the DAC size.
+ *
+ * On the other hand, I'd consider it as a reasonable result
+ * that the conditioning has no significant influence on the
+ * compression performance. This means that the basic
+ * statistical model is already rather stable.
+ *
+ * Thus, at the moment, we use the default conditioning values
+ * anyway, and do not use the custom formula.
+ *
+#define CALCULATE_SPECTRAL_CONDITIONING
+ */
+
+/* IRIGHT_SHIFT is like RIGHT_SHIFT, but works on int rather than INT32.
+ * We assume that int right shift is unsigned if INT32 right shift is,
+ * which should be safe.
+ */
+
+#ifdef RIGHT_SHIFT_IS_UNSIGNED
+#define ISHIFT_TEMPS int ishift_temp;
+#define IRIGHT_SHIFT(x,shft) \
+ ((ishift_temp = (x)) < 0 ? \
+ (ishift_temp >> (shft)) | ((~0) << (16-(shft))) : \
+ (ishift_temp >> (shft)))
+#else
+#define ISHIFT_TEMPS
+#define IRIGHT_SHIFT(x,shft) ((x) >> (shft))
+#endif
+
+
+LOCAL(void)
+emit_byte (int val, j_compress_ptr cinfo)
+/* Write next output byte; we do not support suspension in this module. */
+{
+ struct jpeg_destination_mgr * dest = cinfo->dest;
+
+ *dest->next_output_byte++ = (JOCTET) val;
+ if (--dest->free_in_buffer == 0)
+ if (! (*dest->empty_output_buffer) (cinfo))
+ ERREXIT(cinfo, JERR_CANT_SUSPEND);
+}
+
+
+/*
+ * Finish up at the end of an arithmetic-compressed scan.
+ */
+
+METHODDEF(void)
+finish_pass (j_compress_ptr cinfo)
+{
+ arith_entropy_ptr e = (arith_entropy_ptr) cinfo->entropy;
+ INT32 temp;
+
+ /* Section D.1.8: Termination of encoding */
+
+ /* Find the e->c in the coding interval with the largest
+ * number of trailing zero bits */
+ if ((temp = (e->a - 1 + e->c) & 0xFFFF0000L) < e->c)
+ e->c = temp + 0x8000L;
+ else
+ e->c = temp;
+ /* Send remaining bytes to output */
+ e->c <<= e->ct;
+ if (e->c & 0xF8000000L) {
+ /* One final overflow has to be handled */
+ if (e->buffer >= 0) {
+ if (e->zc)
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ emit_byte(e->buffer + 1, cinfo);
+ if (e->buffer + 1 == 0xFF)
+ emit_byte(0x00, cinfo);
+ }
+ e->zc += e->sc; /* carry-over converts stacked 0xFF bytes to 0x00 */
+ e->sc = 0;
+ } else {
+ if (e->buffer == 0)
+ ++e->zc;
+ else if (e->buffer >= 0) {
+ if (e->zc)
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ emit_byte(e->buffer, cinfo);
+ }
+ if (e->sc) {
+ if (e->zc)
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ do {
+ emit_byte(0xFF, cinfo);
+ emit_byte(0x00, cinfo);
+ } while (--e->sc);
+ }
+ }
+ /* Output final bytes only if they are not 0x00 */
+ if (e->c & 0x7FFF800L) {
+ if (e->zc) /* output final pending zero bytes */
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ emit_byte((e->c >> 19) & 0xFF, cinfo);
+ if (((e->c >> 19) & 0xFF) == 0xFF)
+ emit_byte(0x00, cinfo);
+ if (e->c & 0x7F800L) {
+ emit_byte((e->c >> 11) & 0xFF, cinfo);
+ if (((e->c >> 11) & 0xFF) == 0xFF)
+ emit_byte(0x00, cinfo);
+ }
+ }
+}
+
+
+/*
+ * The core arithmetic encoding routine (common in JPEG and JBIG).
+ * This needs to go as fast as possible.
+ * Machine-dependent optimization facilities
+ * are not utilized in this portable implementation.
+ * However, this code should be fairly efficient and
+ * may be a good base for further optimizations anyway.
+ *
+ * Parameter 'val' to be encoded may be 0 or 1 (binary decision).
+ *
+ * Note: I've added full "Pacman" termination support to the
+ * byte output routines, which is equivalent to the optional
+ * Discard_final_zeros procedure (Figure D.15) in the spec.
+ * Thus, we always produce the shortest possible output
+ * stream compliant to the spec (no trailing zero bytes,
+ * except for FF stuffing).
+ *
+ * I've also introduced a new scheme for accessing
+ * the probability estimation state machine table,
+ * derived from Markus Kuhn's JBIG implementation.
+ */
+
+LOCAL(void)
+arith_encode (j_compress_ptr cinfo, unsigned char *st, int val)
+{
+ register arith_entropy_ptr e = (arith_entropy_ptr) cinfo->entropy;
+ register unsigned char nl, nm;
+ register INT32 qe, temp;
+ register int sv;
+
+ /* Fetch values from our compact representation of Table D.2:
+ * Qe values and probability estimation state machine
+ */
+ sv = *st;
+ qe = jpeg_aritab[sv & 0x7F]; /* => Qe_Value */
+ nl = qe & 0xFF; qe >>= 8; /* Next_Index_LPS + Switch_MPS */
+ nm = qe & 0xFF; qe >>= 8; /* Next_Index_MPS */
+
+ /* Encode & estimation procedures per sections D.1.4 & D.1.5 */
+ e->a -= qe;
+ if (val != (sv >> 7)) {
+ /* Encode the less probable symbol */
+ if (e->a >= qe) {
+ /* If the interval size (qe) for the less probable symbol (LPS)
+ * is larger than the interval size for the MPS, then exchange
+ * the two symbols for coding efficiency, otherwise code the LPS
+ * as usual: */
+ e->c += e->a;
+ e->a = qe;
+ }
+ *st = (sv & 0x80) ^ nl; /* Estimate_after_LPS */
+ } else {
+ /* Encode the more probable symbol */
+ if (e->a >= 0x8000L)
+ return; /* A >= 0x8000 -> ready, no renormalization required */
+ if (e->a < qe) {
+ /* If the interval size (qe) for the less probable symbol (LPS)
+ * is larger than the interval size for the MPS, then exchange
+ * the two symbols for coding efficiency: */
+ e->c += e->a;
+ e->a = qe;
+ }
+ *st = (sv & 0x80) ^ nm; /* Estimate_after_MPS */
+ }
+
+ /* Renormalization & data output per section D.1.6 */
+ do {
+ e->a <<= 1;
+ e->c <<= 1;
+ if (--e->ct == 0) {
+ /* Another byte is ready for output */
+ temp = e->c >> 19;
+ if (temp > 0xFF) {
+ /* Handle overflow over all stacked 0xFF bytes */
+ if (e->buffer >= 0) {
+ if (e->zc)
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ emit_byte(e->buffer + 1, cinfo);
+ if (e->buffer + 1 == 0xFF)
+ emit_byte(0x00, cinfo);
+ }
+ e->zc += e->sc; /* carry-over converts stacked 0xFF bytes to 0x00 */
+ e->sc = 0;
+ /* Note: The 3 spacer bits in the C register guarantee
+ * that the new buffer byte can't be 0xFF here
+ * (see page 160 in the P&M JPEG book). */
+ e->buffer = temp & 0xFF; /* new output byte, might overflow later */
+ } else if (temp == 0xFF) {
+ ++e->sc; /* stack 0xFF byte (which might overflow later) */
+ } else {
+ /* Output all stacked 0xFF bytes, they will not overflow any more */
+ if (e->buffer == 0)
+ ++e->zc;
+ else if (e->buffer >= 0) {
+ if (e->zc)
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ emit_byte(e->buffer, cinfo);
+ }
+ if (e->sc) {
+ if (e->zc)
+ do emit_byte(0x00, cinfo);
+ while (--e->zc);
+ do {
+ emit_byte(0xFF, cinfo);
+ emit_byte(0x00, cinfo);
+ } while (--e->sc);
+ }
+ e->buffer = temp & 0xFF; /* new output byte (can still overflow) */
+ }
+ e->c &= 0x7FFFFL;
+ e->ct += 8;
+ }
+ } while (e->a < 0x8000L);
+}
+
+
+/*
+ * Emit a restart marker & resynchronize predictions.
+ */
+
+LOCAL(void)
+emit_restart (j_compress_ptr cinfo, int restart_num)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ int ci;
+ jpeg_component_info * compptr;
+
+ finish_pass(cinfo);
+
+ emit_byte(0xFF, cinfo);
+ emit_byte(JPEG_RST0 + restart_num, cinfo);
+
+ /* Re-initialize statistics areas */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ /* DC needs no table for refinement scan */
+ if (cinfo->progressive_mode == 0 || (cinfo->Ss == 0 && cinfo->Ah == 0)) {
+ MEMZERO(entropy->dc_stats[compptr->dc_tbl_no], DC_STAT_BINS);
+ /* Reset DC predictions to 0 */
+ entropy->last_dc_val[ci] = 0;
+ entropy->dc_context[ci] = 0;
+ }
+ /* AC needs no table when not present */
+ if (cinfo->progressive_mode == 0 || cinfo->Se) {
+ MEMZERO(entropy->ac_stats[compptr->ac_tbl_no], AC_STAT_BINS);
+ }
+ }
+
+ /* Reset arithmetic encoding variables */
+ entropy->c = 0;
+ entropy->a = 0x10000L;
+ entropy->sc = 0;
+ entropy->zc = 0;
+ entropy->ct = 11;
+ entropy->buffer = -1; /* empty */
+}
+
+
+/*
+ * MCU encoding for DC initial scan (either spectral selection,
+ * or first pass of successive approximation).
+ */
+
+METHODDEF(boolean)
+encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ JBLOCKROW block;
+ unsigned char *st;
+ int blkn, ci, tbl;
+ int v, v2, m;
+ ISHIFT_TEMPS
+
+ /* Emit restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0) {
+ emit_restart(cinfo, entropy->next_restart_num);
+ entropy->restarts_to_go = cinfo->restart_interval;
+ entropy->next_restart_num++;
+ entropy->next_restart_num &= 7;
+ }
+ entropy->restarts_to_go--;
+ }
+
+ /* Encode the MCU data blocks */
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ block = MCU_data[blkn];
+ ci = cinfo->MCU_membership[blkn];
+ tbl = cinfo->cur_comp_info[ci]->dc_tbl_no;
+
+ /* Compute the DC value after the required point transform by Al.
+ * This is simply an arithmetic right shift.
+ */
+ m = IRIGHT_SHIFT((int) ((*block)[0]), cinfo->Al);
+
+ /* Sections F.1.4.1 & F.1.4.4.1: Encoding of DC coefficients */
+
+ /* Table F.4: Point to statistics bin S0 for DC coefficient coding */
+ st = entropy->dc_stats[tbl] + entropy->dc_context[ci];
+
+ /* Figure F.4: Encode_DC_DIFF */
+ if ((v = m - entropy->last_dc_val[ci]) == 0) {
+ arith_encode(cinfo, st, 0);
+ entropy->dc_context[ci] = 0; /* zero diff category */
+ } else {
+ entropy->last_dc_val[ci] = m;
+ arith_encode(cinfo, st, 1);
+ /* Figure F.6: Encoding nonzero value v */
+ /* Figure F.7: Encoding the sign of v */
+ if (v > 0) {
+ arith_encode(cinfo, st + 1, 0); /* Table F.4: SS = S0 + 1 */
+ st += 2; /* Table F.4: SP = S0 + 2 */
+ entropy->dc_context[ci] = 4; /* small positive diff category */
+ } else {
+ v = -v;
+ arith_encode(cinfo, st + 1, 1); /* Table F.4: SS = S0 + 1 */
+ st += 3; /* Table F.4: SN = S0 + 3 */
+ entropy->dc_context[ci] = 8; /* small negative diff category */
+ }
+ /* Figure F.8: Encoding the magnitude category of v */
+ m = 0;
+ if (v -= 1) {
+ arith_encode(cinfo, st, 1);
+ m = 1;
+ v2 = v;
+ st = entropy->dc_stats[tbl] + 20; /* Table F.4: X1 = 20 */
+ while (v2 >>= 1) {
+ arith_encode(cinfo, st, 1);
+ m <<= 1;
+ st += 1;
+ }
+ }
+ arith_encode(cinfo, st, 0);
+ /* Section F.1.4.4.1.2: Establish dc_context conditioning category */
+ if (m < (int) ((1L << cinfo->arith_dc_L[tbl]) >> 1))
+ entropy->dc_context[ci] = 0; /* zero diff category */
+ else if (m > (int) ((1L << cinfo->arith_dc_U[tbl]) >> 1))
+ entropy->dc_context[ci] += 8; /* large diff category */
+ /* Figure F.9: Encoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ arith_encode(cinfo, st, (m & v) ? 1 : 0);
+ }
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * MCU encoding for AC initial scan (either spectral selection,
+ * or first pass of successive approximation).
+ */
+
+METHODDEF(boolean)
+encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ JBLOCKROW block;
+ unsigned char *st;
+ int tbl, k, ke;
+ int v, v2, m;
+
+ /* Emit restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0) {
+ emit_restart(cinfo, entropy->next_restart_num);
+ entropy->restarts_to_go = cinfo->restart_interval;
+ entropy->next_restart_num++;
+ entropy->next_restart_num &= 7;
+ }
+ entropy->restarts_to_go--;
+ }
+
+ /* Encode the MCU data block */
+ block = MCU_data[0];
+ tbl = cinfo->cur_comp_info[0]->ac_tbl_no;
+
+ /* Sections F.1.4.2 & F.1.4.4.2: Encoding of AC coefficients */
+
+ /* Establish EOB (end-of-block) index */
+ for (ke = cinfo->Se; ke > 0; ke--)
+ /* We must apply the point transform by Al. For AC coefficients this
+ * is an integer division with rounding towards 0. To do this portably
+ * in C, we shift after obtaining the absolute value.
+ */
+ if ((v = (*block)[jpeg_natural_order[ke]]) >= 0) {
+ if (v >>= cinfo->Al) break;
+ } else {
+ v = -v;
+ if (v >>= cinfo->Al) break;
+ }
+
+ /* Figure F.5: Encode_AC_Coefficients */
+ for (k = cinfo->Ss; k <= ke; k++) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ arith_encode(cinfo, st, 0); /* EOB decision */
+ for (;;) {
+ if ((v = (*block)[jpeg_natural_order[k]]) >= 0) {
+ if (v >>= cinfo->Al) {
+ arith_encode(cinfo, st + 1, 1);
+ arith_encode(cinfo, entropy->fixed_bin, 0);
+ break;
+ }
+ } else {
+ v = -v;
+ if (v >>= cinfo->Al) {
+ arith_encode(cinfo, st + 1, 1);
+ arith_encode(cinfo, entropy->fixed_bin, 1);
+ break;
+ }
+ }
+ arith_encode(cinfo, st + 1, 0); st += 3; k++;
+ }
+ st += 2;
+ /* Figure F.8: Encoding the magnitude category of v */
+ m = 0;
+ if (v -= 1) {
+ arith_encode(cinfo, st, 1);
+ m = 1;
+ v2 = v;
+ if (v2 >>= 1) {
+ arith_encode(cinfo, st, 1);
+ m <<= 1;
+ st = entropy->ac_stats[tbl] +
+ (k <= cinfo->arith_ac_K[tbl] ? 189 : 217);
+ while (v2 >>= 1) {
+ arith_encode(cinfo, st, 1);
+ m <<= 1;
+ st += 1;
+ }
+ }
+ }
+ arith_encode(cinfo, st, 0);
+ /* Figure F.9: Encoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ arith_encode(cinfo, st, (m & v) ? 1 : 0);
+ }
+ /* Encode EOB decision only if k <= cinfo->Se */
+ if (k <= cinfo->Se) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ arith_encode(cinfo, st, 1);
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * MCU encoding for DC successive approximation refinement scan.
+ */
+
+METHODDEF(boolean)
+encode_mcu_DC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ unsigned char *st;
+ int Al, blkn;
+
+ /* Emit restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0) {
+ emit_restart(cinfo, entropy->next_restart_num);
+ entropy->restarts_to_go = cinfo->restart_interval;
+ entropy->next_restart_num++;
+ entropy->next_restart_num &= 7;
+ }
+ entropy->restarts_to_go--;
+ }
+
+ st = entropy->fixed_bin; /* use fixed probability estimation */
+ Al = cinfo->Al;
+
+ /* Encode the MCU data blocks */
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ /* We simply emit the Al'th bit of the DC coefficient value. */
+ arith_encode(cinfo, st, (MCU_data[blkn][0][0] >> Al) & 1);
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * MCU encoding for AC successive approximation refinement scan.
+ */
+
+METHODDEF(boolean)
+encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ JBLOCKROW block;
+ unsigned char *st;
+ int tbl, k, ke, kex;
+ int v;
+
+ /* Emit restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0) {
+ emit_restart(cinfo, entropy->next_restart_num);
+ entropy->restarts_to_go = cinfo->restart_interval;
+ entropy->next_restart_num++;
+ entropy->next_restart_num &= 7;
+ }
+ entropy->restarts_to_go--;
+ }
+
+ /* Encode the MCU data block */
+ block = MCU_data[0];
+ tbl = cinfo->cur_comp_info[0]->ac_tbl_no;
+
+ /* Section G.1.3.3: Encoding of AC coefficients */
+
+ /* Establish EOB (end-of-block) index */
+ for (ke = cinfo->Se; ke > 0; ke--)
+ /* We must apply the point transform by Al. For AC coefficients this
+ * is an integer division with rounding towards 0. To do this portably
+ * in C, we shift after obtaining the absolute value.
+ */
+ if ((v = (*block)[jpeg_natural_order[ke]]) >= 0) {
+ if (v >>= cinfo->Al) break;
+ } else {
+ v = -v;
+ if (v >>= cinfo->Al) break;
+ }
+
+ /* Establish EOBx (previous stage end-of-block) index */
+ for (kex = ke; kex > 0; kex--)
+ if ((v = (*block)[jpeg_natural_order[kex]]) >= 0) {
+ if (v >>= cinfo->Ah) break;
+ } else {
+ v = -v;
+ if (v >>= cinfo->Ah) break;
+ }
+
+ /* Figure G.10: Encode_AC_Coefficients_SA */
+ for (k = cinfo->Ss; k <= ke; k++) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ if (k > kex)
+ arith_encode(cinfo, st, 0); /* EOB decision */
+ for (;;) {
+ if ((v = (*block)[jpeg_natural_order[k]]) >= 0) {
+ if (v >>= cinfo->Al) {
+ if (v >> 1) /* previously nonzero coef */
+ arith_encode(cinfo, st + 2, (v & 1));
+ else { /* newly nonzero coef */
+ arith_encode(cinfo, st + 1, 1);
+ arith_encode(cinfo, entropy->fixed_bin, 0);
+ }
+ break;
+ }
+ } else {
+ v = -v;
+ if (v >>= cinfo->Al) {
+ if (v >> 1) /* previously nonzero coef */
+ arith_encode(cinfo, st + 2, (v & 1));
+ else { /* newly nonzero coef */
+ arith_encode(cinfo, st + 1, 1);
+ arith_encode(cinfo, entropy->fixed_bin, 1);
+ }
+ break;
+ }
+ }
+ arith_encode(cinfo, st + 1, 0); st += 3; k++;
+ }
+ }
+ /* Encode EOB decision only if k <= cinfo->Se */
+ if (k <= cinfo->Se) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ arith_encode(cinfo, st, 1);
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * Encode and output one MCU's worth of arithmetic-compressed coefficients.
+ */
+
+METHODDEF(boolean)
+encode_mcu (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ jpeg_component_info * compptr;
+ JBLOCKROW block;
+ unsigned char *st;
+ int blkn, ci, tbl, k, ke;
+ int v, v2, m;
+
+ /* Emit restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0) {
+ emit_restart(cinfo, entropy->next_restart_num);
+ entropy->restarts_to_go = cinfo->restart_interval;
+ entropy->next_restart_num++;
+ entropy->next_restart_num &= 7;
+ }
+ entropy->restarts_to_go--;
+ }
+
+ /* Encode the MCU data blocks */
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ block = MCU_data[blkn];
+ ci = cinfo->MCU_membership[blkn];
+ compptr = cinfo->cur_comp_info[ci];
+
+ /* Sections F.1.4.1 & F.1.4.4.1: Encoding of DC coefficients */
+
+ tbl = compptr->dc_tbl_no;
+
+ /* Table F.4: Point to statistics bin S0 for DC coefficient coding */
+ st = entropy->dc_stats[tbl] + entropy->dc_context[ci];
+
+ /* Figure F.4: Encode_DC_DIFF */
+ if ((v = (*block)[0] - entropy->last_dc_val[ci]) == 0) {
+ arith_encode(cinfo, st, 0);
+ entropy->dc_context[ci] = 0; /* zero diff category */
+ } else {
+ entropy->last_dc_val[ci] = (*block)[0];
+ arith_encode(cinfo, st, 1);
+ /* Figure F.6: Encoding nonzero value v */
+ /* Figure F.7: Encoding the sign of v */
+ if (v > 0) {
+ arith_encode(cinfo, st + 1, 0); /* Table F.4: SS = S0 + 1 */
+ st += 2; /* Table F.4: SP = S0 + 2 */
+ entropy->dc_context[ci] = 4; /* small positive diff category */
+ } else {
+ v = -v;
+ arith_encode(cinfo, st + 1, 1); /* Table F.4: SS = S0 + 1 */
+ st += 3; /* Table F.4: SN = S0 + 3 */
+ entropy->dc_context[ci] = 8; /* small negative diff category */
+ }
+ /* Figure F.8: Encoding the magnitude category of v */
+ m = 0;
+ if (v -= 1) {
+ arith_encode(cinfo, st, 1);
+ m = 1;
+ v2 = v;
+ st = entropy->dc_stats[tbl] + 20; /* Table F.4: X1 = 20 */
+ while (v2 >>= 1) {
+ arith_encode(cinfo, st, 1);
+ m <<= 1;
+ st += 1;
+ }
+ }
+ arith_encode(cinfo, st, 0);
+ /* Section F.1.4.4.1.2: Establish dc_context conditioning category */
+ if (m < (int) ((1L << cinfo->arith_dc_L[tbl]) >> 1))
+ entropy->dc_context[ci] = 0; /* zero diff category */
+ else if (m > (int) ((1L << cinfo->arith_dc_U[tbl]) >> 1))
+ entropy->dc_context[ci] += 8; /* large diff category */
+ /* Figure F.9: Encoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ arith_encode(cinfo, st, (m & v) ? 1 : 0);
+ }
+
+ /* Sections F.1.4.2 & F.1.4.4.2: Encoding of AC coefficients */
+
+ tbl = compptr->ac_tbl_no;
+
+ /* Establish EOB (end-of-block) index */
+ for (ke = DCTSIZE2 - 1; ke > 0; ke--)
+ if ((*block)[jpeg_natural_order[ke]]) break;
+
+ /* Figure F.5: Encode_AC_Coefficients */
+ for (k = 1; k <= ke; k++) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ arith_encode(cinfo, st, 0); /* EOB decision */
+ while ((v = (*block)[jpeg_natural_order[k]]) == 0) {
+ arith_encode(cinfo, st + 1, 0); st += 3; k++;
+ }
+ arith_encode(cinfo, st + 1, 1);
+ /* Figure F.6: Encoding nonzero value v */
+ /* Figure F.7: Encoding the sign of v */
+ if (v > 0) {
+ arith_encode(cinfo, entropy->fixed_bin, 0);
+ } else {
+ v = -v;
+ arith_encode(cinfo, entropy->fixed_bin, 1);
+ }
+ st += 2;
+ /* Figure F.8: Encoding the magnitude category of v */
+ m = 0;
+ if (v -= 1) {
+ arith_encode(cinfo, st, 1);
+ m = 1;
+ v2 = v;
+ if (v2 >>= 1) {
+ arith_encode(cinfo, st, 1);
+ m <<= 1;
+ st = entropy->ac_stats[tbl] +
+ (k <= cinfo->arith_ac_K[tbl] ? 189 : 217);
+ while (v2 >>= 1) {
+ arith_encode(cinfo, st, 1);
+ m <<= 1;
+ st += 1;
+ }
+ }
+ }
+ arith_encode(cinfo, st, 0);
+ /* Figure F.9: Encoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ arith_encode(cinfo, st, (m & v) ? 1 : 0);
+ }
+ /* Encode EOB decision only if k <= DCTSIZE2 - 1 */
+ if (k <= DCTSIZE2 - 1) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ arith_encode(cinfo, st, 1);
+ }
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * Initialize for an arithmetic-compressed scan.
+ */
+
+METHODDEF(void)
+start_pass (j_compress_ptr cinfo, boolean gather_statistics)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ int ci, tbl;
+ jpeg_component_info * compptr;
+
+ if (gather_statistics)
+ /* Make sure to avoid that in the master control logic!
+ * We are fully adaptive here and need no extra
+ * statistics gathering pass!
+ */
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+
+ /* We assume jcmaster.c already validated the progressive scan parameters. */
+
+ /* Select execution routines */
+ if (cinfo->progressive_mode) {
+ if (cinfo->Ah == 0) {
+ if (cinfo->Ss == 0)
+ entropy->pub.encode_mcu = encode_mcu_DC_first;
+ else
+ entropy->pub.encode_mcu = encode_mcu_AC_first;
+ } else {
+ if (cinfo->Ss == 0)
+ entropy->pub.encode_mcu = encode_mcu_DC_refine;
+ else
+ entropy->pub.encode_mcu = encode_mcu_AC_refine;
+ }
+ } else
+ entropy->pub.encode_mcu = encode_mcu;
+
+ /* Allocate & initialize requested statistics areas */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ /* DC needs no table for refinement scan */
+ if (cinfo->progressive_mode == 0 || (cinfo->Ss == 0 && cinfo->Ah == 0)) {
+ tbl = compptr->dc_tbl_no;
+ if (tbl < 0 || tbl >= NUM_ARITH_TBLS)
+ ERREXIT1(cinfo, JERR_NO_ARITH_TABLE, tbl);
+ if (entropy->dc_stats[tbl] == NULL)
+ entropy->dc_stats[tbl] = (unsigned char *) (*cinfo->mem->alloc_small)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE, DC_STAT_BINS);
+ MEMZERO(entropy->dc_stats[tbl], DC_STAT_BINS);
+ /* Initialize DC predictions to 0 */
+ entropy->last_dc_val[ci] = 0;
+ entropy->dc_context[ci] = 0;
+ }
+ /* AC needs no table when not present */
+ if (cinfo->progressive_mode == 0 || cinfo->Se) {
+ tbl = compptr->ac_tbl_no;
+ if (tbl < 0 || tbl >= NUM_ARITH_TBLS)
+ ERREXIT1(cinfo, JERR_NO_ARITH_TABLE, tbl);
+ if (entropy->ac_stats[tbl] == NULL)
+ entropy->ac_stats[tbl] = (unsigned char *) (*cinfo->mem->alloc_small)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE, AC_STAT_BINS);
+ MEMZERO(entropy->ac_stats[tbl], AC_STAT_BINS);
+#ifdef CALCULATE_SPECTRAL_CONDITIONING
+ if (cinfo->progressive_mode)
+ /* Section G.1.3.2: Set appropriate arithmetic conditioning value Kx */
+ cinfo->arith_ac_K[tbl] = cinfo->Ss + ((8 + cinfo->Se - cinfo->Ss) >> 4);
+#endif
+ }
+ }
+
+ /* Initialize arithmetic encoding variables */
+ entropy->c = 0;
+ entropy->a = 0x10000L;
+ entropy->sc = 0;
+ entropy->zc = 0;
+ entropy->ct = 11;
+ entropy->buffer = -1; /* empty */
+
+ /* Initialize restart stuff */
+ entropy->restarts_to_go = cinfo->restart_interval;
+ entropy->next_restart_num = 0;
+}
+
+
+/*
+ * Module initialization routine for arithmetic entropy encoding.
+ */
+
+GLOBAL(void)
+jinit_arith_encoder (j_compress_ptr cinfo)
+{
+ arith_entropy_ptr entropy;
+ int i;
+
+ entropy = (arith_entropy_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(arith_entropy_encoder));
+ cinfo->entropy = (struct jpeg_entropy_encoder *) entropy;
+ entropy->pub.start_pass = start_pass;
+ entropy->pub.finish_pass = finish_pass;
+
+ /* Mark tables unallocated */
+ for (i = 0; i < NUM_ARITH_TBLS; i++) {
+ entropy->dc_stats[i] = NULL;
+ entropy->ac_stats[i] = NULL;
+ }
+
+ /* Initialize index for fixed probability estimation */
+ entropy->fixed_bin[0] = 113;
+}
diff --git a/trunk/jcinit.c b/trunk/jcinit.c
index 5efffe3..de0ade2 100644
--- a/trunk/jcinit.c
+++ b/trunk/jcinit.c
@@ -42,7 +42,11 @@ jinit_compress_master (j_compress_ptr cinfo)
jinit_forward_dct(cinfo);
/* Entropy encoding: either Huffman or arithmetic coding. */
if (cinfo->arith_code) {
+#ifdef C_ARITH_CODING_SUPPORTED
+ jinit_arith_encoder(cinfo);
+#else
ERREXIT(cinfo, JERR_ARITH_NOTIMPL);
+#endif
} else {
if (cinfo->progressive_mode) {
#ifdef C_PROGRESSIVE_SUPPORTED
diff --git a/trunk/jctrans.c b/trunk/jctrans.c
index c7956b5..916e872 100644
--- a/trunk/jctrans.c
+++ b/trunk/jctrans.c
@@ -174,7 +174,11 @@ transencode_master_selection (j_compress_ptr cinfo,
/* Entropy encoding: either Huffman or arithmetic coding. */
if (cinfo->arith_code) {
+#ifdef C_ARITH_CODING_SUPPORTED
+ jinit_arith_encoder(cinfo);
+#else
ERREXIT(cinfo, JERR_ARITH_NOTIMPL);
+#endif
} else {
if (cinfo->progressive_mode) {
#ifdef C_PROGRESSIVE_SUPPORTED
diff --git a/trunk/jdarith.c b/trunk/jdarith.c
new file mode 100644
index 0000000..d556733
--- /dev/null
+++ b/trunk/jdarith.c
@@ -0,0 +1,761 @@
+/*
+ * jdarith.c
+ *
+ * Developed 1997-2009 by Guido Vollbeding.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains portable arithmetic entropy decoding routines for JPEG
+ * (implementing the ISO/IEC IS 10918-1 and CCITT Recommendation ITU-T T.81).
+ *
+ * Both sequential and progressive modes are supported in this single module.
+ *
+ * Suspension is not currently supported in this module.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Expanded entropy decoder object for arithmetic decoding. */
+
+typedef struct {
+ struct jpeg_entropy_decoder pub; /* public fields */
+
+ INT32 c; /* C register, base of coding interval + input bit buffer */
+ INT32 a; /* A register, normalized size of coding interval */
+ int ct; /* bit shift counter, # of bits left in bit buffer part of C */
+ /* init: ct = -16 */
+ /* run: ct = 0..7 */
+ /* error: ct = -1 */
+ int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */
+ int dc_context[MAX_COMPS_IN_SCAN]; /* context index for DC conditioning */
+
+ unsigned int restarts_to_go; /* MCUs left in this restart interval */
+
+ /* Pointers to statistics areas (these workspaces have image lifespan) */
+ unsigned char * dc_stats[NUM_ARITH_TBLS];
+ unsigned char * ac_stats[NUM_ARITH_TBLS];
+
+ /* Statistics bin for coding with fixed probability 0.5 */
+ unsigned char fixed_bin[4];
+} arith_entropy_decoder;
+
+typedef arith_entropy_decoder * arith_entropy_ptr;
+
+/* The following two definitions specify the allocation chunk size
+ * for the statistics area.
+ * According to sections F.1.4.4.1.3 and F.1.4.4.2, we need at least
+ * 49 statistics bins for DC, and 245 statistics bins for AC coding.
+ *
+ * We use a compact representation with 1 byte per statistics bin,
+ * thus the numbers directly represent byte sizes.
+ * This 1 byte per statistics bin contains the meaning of the MPS
+ * (more probable symbol) in the highest bit (mask 0x80), and the
+ * index into the probability estimation state machine table
+ * in the lower bits (mask 0x7F).
+ */
+
+#define DC_STAT_BINS 64
+#define AC_STAT_BINS 256
+
+
+LOCAL(int)
+get_byte (j_decompress_ptr cinfo)
+/* Read next input byte; we do not support suspension in this module. */
+{
+ struct jpeg_source_mgr * src = cinfo->src;
+
+ if (src->bytes_in_buffer == 0)
+ if (! (*src->fill_input_buffer) (cinfo))
+ ERREXIT(cinfo, JERR_CANT_SUSPEND);
+ src->bytes_in_buffer--;
+ return GETJOCTET(*src->next_input_byte++);
+}
+
+
+/*
+ * The core arithmetic decoding routine (common in JPEG and JBIG).
+ * This needs to go as fast as possible.
+ * Machine-dependent optimization facilities
+ * are not utilized in this portable implementation.
+ * However, this code should be fairly efficient and
+ * may be a good base for further optimizations anyway.
+ *
+ * Return value is 0 or 1 (binary decision).
+ *
+ * Note: I've changed the handling of the code base & bit
+ * buffer register C compared to other implementations
+ * based on the standards layout & procedures.
+ * While it also contains both the actual base of the
+ * coding interval (16 bits) and the next-bits buffer,
+ * the cut-point between these two parts is floating
+ * (instead of fixed) with the bit shift counter CT.
+ * Thus, we also need only one (variable instead of
+ * fixed size) shift for the LPS/MPS decision, and
+ * we can get away with any renormalization update
+ * of C (except for new data insertion, of course).
+ *
+ * I've also introduced a new scheme for accessing
+ * the probability estimation state machine table,
+ * derived from Markus Kuhn's JBIG implementation.
+ */
+
+LOCAL(int)
+arith_decode (j_decompress_ptr cinfo, unsigned char *st)
+{
+ register arith_entropy_ptr e = (arith_entropy_ptr) cinfo->entropy;
+ register unsigned char nl, nm;
+ register INT32 qe, temp;
+ register int sv, data;
+
+ /* Renormalization & data input per section D.2.6 */
+ while (e->a < 0x8000L) {
+ if (--e->ct < 0) {
+ /* Need to fetch next data byte */
+ if (cinfo->unread_marker)
+ data = 0; /* stuff zero data */
+ else {
+ data = get_byte(cinfo); /* read next input byte */
+ if (data == 0xFF) { /* zero stuff or marker code */
+ do data = get_byte(cinfo);
+ while (data == 0xFF); /* swallow extra 0xFF bytes */
+ if (data == 0)
+ data = 0xFF; /* discard stuffed zero byte */
+ else {
+ /* Note: Different from the Huffman decoder, hitting
+ * a marker while processing the compressed data
+ * segment is legal in arithmetic coding.
+ * The convention is to supply zero data
+ * then until decoding is complete.
+ */
+ cinfo->unread_marker = data;
+ data = 0;
+ }
+ }
+ }
+ e->c = (e->c << 8) | data; /* insert data into C register */
+ if ((e->ct += 8) < 0) /* update bit shift counter */
+ /* Need more initial bytes */
+ if (++e->ct == 0)
+ /* Got 2 initial bytes -> re-init A and exit loop */
+ e->a = 0x8000L; /* => e->a = 0x10000L after loop exit */
+ }
+ e->a <<= 1;
+ }
+
+ /* Fetch values from our compact representation of Table D.2:
+ * Qe values and probability estimation state machine
+ */
+ sv = *st;
+ qe = jpeg_aritab[sv & 0x7F]; /* => Qe_Value */
+ nl = qe & 0xFF; qe >>= 8; /* Next_Index_LPS + Switch_MPS */
+ nm = qe & 0xFF; qe >>= 8; /* Next_Index_MPS */
+
+ /* Decode & estimation procedures per sections D.2.4 & D.2.5 */
+ temp = e->a - qe;
+ e->a = temp;
+ temp <<= e->ct;
+ if (e->c >= temp) {
+ e->c -= temp;
+ /* Conditional LPS (less probable symbol) exchange */
+ if (e->a < qe) {
+ e->a = qe;
+ *st = (sv & 0x80) ^ nm; /* Estimate_after_MPS */
+ } else {
+ e->a = qe;
+ *st = (sv & 0x80) ^ nl; /* Estimate_after_LPS */
+ sv ^= 0x80; /* Exchange LPS/MPS */
+ }
+ } else if (e->a < 0x8000L) {
+ /* Conditional MPS (more probable symbol) exchange */
+ if (e->a < qe) {
+ *st = (sv & 0x80) ^ nl; /* Estimate_after_LPS */
+ sv ^= 0x80; /* Exchange LPS/MPS */
+ } else {
+ *st = (sv & 0x80) ^ nm; /* Estimate_after_MPS */
+ }
+ }
+
+ return sv >> 7;
+}
+
+
+/*
+ * Check for a restart marker & resynchronize decoder.
+ */
+
+LOCAL(void)
+process_restart (j_decompress_ptr cinfo)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ int ci;
+ jpeg_component_info * compptr;
+
+ /* Advance past the RSTn marker */
+ if (! (*cinfo->marker->read_restart_marker) (cinfo))
+ ERREXIT(cinfo, JERR_CANT_SUSPEND);
+
+ /* Re-initialize statistics areas */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ if (! cinfo->progressive_mode || (cinfo->Ss == 0 && cinfo->Ah == 0)) {
+ MEMZERO(entropy->dc_stats[compptr->dc_tbl_no], DC_STAT_BINS);
+ /* Reset DC predictions to 0 */
+ entropy->last_dc_val[ci] = 0;
+ entropy->dc_context[ci] = 0;
+ }
+ if (! cinfo->progressive_mode || cinfo->Ss) {
+ MEMZERO(entropy->ac_stats[compptr->ac_tbl_no], AC_STAT_BINS);
+ }
+ }
+
+ /* Reset arithmetic decoding variables */
+ entropy->c = 0;
+ entropy->a = 0;
+ entropy->ct = -16; /* force reading 2 initial bytes to fill C */
+
+ /* Reset restart counter */
+ entropy->restarts_to_go = cinfo->restart_interval;
+}
+
+
+/*
+ * Arithmetic MCU decoding.
+ * Each of these routines decodes and returns one MCU's worth of
+ * arithmetic-compressed coefficients.
+ * The coefficients are reordered from zigzag order into natural array order,
+ * but are not dequantized.
+ *
+ * The i'th block of the MCU is stored into the block pointed to by
+ * MCU_data[i]. WE ASSUME THIS AREA IS INITIALLY ZEROED BY THE CALLER.
+ */
+
+/*
+ * MCU decoding for DC initial scan (either spectral selection,
+ * or first pass of successive approximation).
+ */
+
+METHODDEF(boolean)
+decode_mcu_DC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ JBLOCKROW block;
+ unsigned char *st;
+ int blkn, ci, tbl, sign;
+ int v, m;
+
+ /* Process restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ process_restart(cinfo);
+ entropy->restarts_to_go--;
+ }
+
+ if (entropy->ct == -1) return TRUE; /* if error do nothing */
+
+ /* Outer loop handles each block in the MCU */
+
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ block = MCU_data[blkn];
+ ci = cinfo->MCU_membership[blkn];
+ tbl = cinfo->cur_comp_info[ci]->dc_tbl_no;
+
+ /* Sections F.2.4.1 & F.1.4.4.1: Decoding of DC coefficients */
+
+ /* Table F.4: Point to statistics bin S0 for DC coefficient coding */
+ st = entropy->dc_stats[tbl] + entropy->dc_context[ci];
+
+ /* Figure F.19: Decode_DC_DIFF */
+ if (arith_decode(cinfo, st) == 0)
+ entropy->dc_context[ci] = 0;
+ else {
+ /* Figure F.21: Decoding nonzero value v */
+ /* Figure F.22: Decoding the sign of v */
+ sign = arith_decode(cinfo, st + 1);
+ st += 2; st += sign;
+ /* Figure F.23: Decoding the magnitude category of v */
+ if ((m = arith_decode(cinfo, st)) != 0) {
+ st = entropy->dc_stats[tbl] + 20; /* Table F.4: X1 = 20 */
+ while (arith_decode(cinfo, st)) {
+ if ((m <<= 1) == 0x8000) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* magnitude overflow */
+ return TRUE;
+ }
+ st += 1;
+ }
+ }
+ /* Section F.1.4.4.1.2: Establish dc_context conditioning category */
+ if (m < (int) ((1L << cinfo->arith_dc_L[tbl]) >> 1))
+ entropy->dc_context[ci] = 0; /* zero diff category */
+ else if (m > (int) ((1L << cinfo->arith_dc_U[tbl]) >> 1))
+ entropy->dc_context[ci] = 12 + (sign * 4); /* large diff category */
+ else
+ entropy->dc_context[ci] = 4 + (sign * 4); /* small diff category */
+ v = m;
+ /* Figure F.24: Decoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ if (arith_decode(cinfo, st)) v |= m;
+ v += 1; if (sign) v = -v;
+ entropy->last_dc_val[ci] += v;
+ }
+
+ /* Scale and output the DC coefficient (assumes jpeg_natural_order[0]=0) */
+ (*block)[0] = (JCOEF) (entropy->last_dc_val[ci] << cinfo->Al);
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * MCU decoding for AC initial scan (either spectral selection,
+ * or first pass of successive approximation).
+ */
+
+METHODDEF(boolean)
+decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ JBLOCKROW block;
+ unsigned char *st;
+ int tbl, sign, k;
+ int v, m;
+
+ /* Process restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ process_restart(cinfo);
+ entropy->restarts_to_go--;
+ }
+
+ if (entropy->ct == -1) return TRUE; /* if error do nothing */
+
+ /* There is always only one block per MCU */
+ block = MCU_data[0];
+ tbl = cinfo->cur_comp_info[0]->ac_tbl_no;
+
+ /* Sections F.2.4.2 & F.1.4.4.2: Decoding of AC coefficients */
+
+ /* Figure F.20: Decode_AC_coefficients */
+ for (k = cinfo->Ss; k <= cinfo->Se; k++) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ if (arith_decode(cinfo, st)) break; /* EOB flag */
+ while (arith_decode(cinfo, st + 1) == 0) {
+ st += 3; k++;
+ if (k > cinfo->Se) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* spectral overflow */
+ return TRUE;
+ }
+ }
+ /* Figure F.21: Decoding nonzero value v */
+ /* Figure F.22: Decoding the sign of v */
+ sign = arith_decode(cinfo, entropy->fixed_bin);
+ st += 2;
+ /* Figure F.23: Decoding the magnitude category of v */
+ if ((m = arith_decode(cinfo, st)) != 0) {
+ if (arith_decode(cinfo, st)) {
+ m <<= 1;
+ st = entropy->ac_stats[tbl] +
+ (k <= cinfo->arith_ac_K[tbl] ? 189 : 217);
+ while (arith_decode(cinfo, st)) {
+ if ((m <<= 1) == 0x8000) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* magnitude overflow */
+ return TRUE;
+ }
+ st += 1;
+ }
+ }
+ }
+ v = m;
+ /* Figure F.24: Decoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ if (arith_decode(cinfo, st)) v |= m;
+ v += 1; if (sign) v = -v;
+ /* Scale and output coefficient in natural (dezigzagged) order */
+ (*block)[jpeg_natural_order[k]] = (JCOEF) (v << cinfo->Al);
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * MCU decoding for DC successive approximation refinement scan.
+ */
+
+METHODDEF(boolean)
+decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ unsigned char *st;
+ int p1, blkn;
+
+ /* Process restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ process_restart(cinfo);
+ entropy->restarts_to_go--;
+ }
+
+ st = entropy->fixed_bin; /* use fixed probability estimation */
+ p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
+
+ /* Outer loop handles each block in the MCU */
+
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ /* Encoded data is simply the next bit of the two's-complement DC value */
+ if (arith_decode(cinfo, st))
+ MCU_data[blkn][0][0] |= p1;
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * MCU decoding for AC successive approximation refinement scan.
+ */
+
+METHODDEF(boolean)
+decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ JBLOCKROW block;
+ JCOEFPTR thiscoef;
+ unsigned char *st;
+ int tbl, k, kex;
+ int p1, m1;
+
+ /* Process restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ process_restart(cinfo);
+ entropy->restarts_to_go--;
+ }
+
+ if (entropy->ct == -1) return TRUE; /* if error do nothing */
+
+ /* There is always only one block per MCU */
+ block = MCU_data[0];
+ tbl = cinfo->cur_comp_info[0]->ac_tbl_no;
+
+ p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
+ m1 = (-1) << cinfo->Al; /* -1 in the bit position being coded */
+
+ /* Establish EOBx (previous stage end-of-block) index */
+ for (kex = cinfo->Se; kex > 0; kex--)
+ if ((*block)[jpeg_natural_order[kex]]) break;
+
+ for (k = cinfo->Ss; k <= cinfo->Se; k++) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ if (k > kex)
+ if (arith_decode(cinfo, st)) break; /* EOB flag */
+ for (;;) {
+ thiscoef = *block + jpeg_natural_order[k];
+ if (*thiscoef) { /* previously nonzero coef */
+ if (arith_decode(cinfo, st + 2)) {
+ if (*thiscoef < 0)
+ *thiscoef += m1;
+ else
+ *thiscoef += p1;
+ }
+ break;
+ }
+ if (arith_decode(cinfo, st + 1)) { /* newly nonzero coef */
+ if (arith_decode(cinfo, entropy->fixed_bin))
+ *thiscoef = m1;
+ else
+ *thiscoef = p1;
+ break;
+ }
+ st += 3; k++;
+ if (k > cinfo->Se) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* spectral overflow */
+ return TRUE;
+ }
+ }
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * Decode one MCU's worth of arithmetic-compressed coefficients.
+ */
+
+METHODDEF(boolean)
+decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ jpeg_component_info * compptr;
+ JBLOCKROW block;
+ unsigned char *st;
+ int blkn, ci, tbl, sign, k;
+ int v, m;
+
+ /* Process restart marker if needed */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ process_restart(cinfo);
+ entropy->restarts_to_go--;
+ }
+
+ if (entropy->ct == -1) return TRUE; /* if error do nothing */
+
+ /* Outer loop handles each block in the MCU */
+
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ block = MCU_data[blkn];
+ ci = cinfo->MCU_membership[blkn];
+ compptr = cinfo->cur_comp_info[ci];
+
+ /* Sections F.2.4.1 & F.1.4.4.1: Decoding of DC coefficients */
+
+ tbl = compptr->dc_tbl_no;
+
+ /* Table F.4: Point to statistics bin S0 for DC coefficient coding */
+ st = entropy->dc_stats[tbl] + entropy->dc_context[ci];
+
+ /* Figure F.19: Decode_DC_DIFF */
+ if (arith_decode(cinfo, st) == 0)
+ entropy->dc_context[ci] = 0;
+ else {
+ /* Figure F.21: Decoding nonzero value v */
+ /* Figure F.22: Decoding the sign of v */
+ sign = arith_decode(cinfo, st + 1);
+ st += 2; st += sign;
+ /* Figure F.23: Decoding the magnitude category of v */
+ if ((m = arith_decode(cinfo, st)) != 0) {
+ st = entropy->dc_stats[tbl] + 20; /* Table F.4: X1 = 20 */
+ while (arith_decode(cinfo, st)) {
+ if ((m <<= 1) == 0x8000) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* magnitude overflow */
+ return TRUE;
+ }
+ st += 1;
+ }
+ }
+ /* Section F.1.4.4.1.2: Establish dc_context conditioning category */
+ if (m < (int) ((1L << cinfo->arith_dc_L[tbl]) >> 1))
+ entropy->dc_context[ci] = 0; /* zero diff category */
+ else if (m > (int) ((1L << cinfo->arith_dc_U[tbl]) >> 1))
+ entropy->dc_context[ci] = 12 + (sign * 4); /* large diff category */
+ else
+ entropy->dc_context[ci] = 4 + (sign * 4); /* small diff category */
+ v = m;
+ /* Figure F.24: Decoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ if (arith_decode(cinfo, st)) v |= m;
+ v += 1; if (sign) v = -v;
+ entropy->last_dc_val[ci] += v;
+ }
+
+ (*block)[0] = (JCOEF) entropy->last_dc_val[ci];
+
+ /* Sections F.2.4.2 & F.1.4.4.2: Decoding of AC coefficients */
+
+ tbl = compptr->ac_tbl_no;
+
+ /* Figure F.20: Decode_AC_coefficients */
+ for (k = 1; k <= DCTSIZE2 - 1; k++) {
+ st = entropy->ac_stats[tbl] + 3 * (k - 1);
+ if (arith_decode(cinfo, st)) break; /* EOB flag */
+ while (arith_decode(cinfo, st + 1) == 0) {
+ st += 3; k++;
+ if (k > DCTSIZE2 - 1) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* spectral overflow */
+ return TRUE;
+ }
+ }
+ /* Figure F.21: Decoding nonzero value v */
+ /* Figure F.22: Decoding the sign of v */
+ sign = arith_decode(cinfo, entropy->fixed_bin);
+ st += 2;
+ /* Figure F.23: Decoding the magnitude category of v */
+ if ((m = arith_decode(cinfo, st)) != 0) {
+ if (arith_decode(cinfo, st)) {
+ m <<= 1;
+ st = entropy->ac_stats[tbl] +
+ (k <= cinfo->arith_ac_K[tbl] ? 189 : 217);
+ while (arith_decode(cinfo, st)) {
+ if ((m <<= 1) == 0x8000) {
+ WARNMS(cinfo, JWRN_ARITH_BAD_CODE);
+ entropy->ct = -1; /* magnitude overflow */
+ return TRUE;
+ }
+ st += 1;
+ }
+ }
+ }
+ v = m;
+ /* Figure F.24: Decoding the magnitude bit pattern of v */
+ st += 14;
+ while (m >>= 1)
+ if (arith_decode(cinfo, st)) v |= m;
+ v += 1; if (sign) v = -v;
+ (*block)[jpeg_natural_order[k]] = (JCOEF) v;
+ }
+ }
+
+ return TRUE;
+}
+
+
+/*
+ * Initialize for an arithmetic-compressed scan.
+ */
+
+METHODDEF(void)
+start_pass (j_decompress_ptr cinfo)
+{
+ arith_entropy_ptr entropy = (arith_entropy_ptr) cinfo->entropy;
+ int ci, tbl;
+ jpeg_component_info * compptr;
+
+ if (cinfo->progressive_mode) {
+ /* Validate progressive scan parameters */
+ if (cinfo->Ss == 0) {
+ if (cinfo->Se != 0)
+ goto bad;
+ } else {
+ /* need not check Ss/Se < 0 since they came from unsigned bytes */
+ if (cinfo->Se < cinfo->Ss || cinfo->Se > DCTSIZE2 - 1)
+ goto bad;
+ /* AC scans may have only one component */
+ if (cinfo->comps_in_scan != 1)
+ goto bad;
+ }
+ if (cinfo->Ah != 0) {
+ /* Successive approximation refinement scan: must have Al = Ah-1. */
+ if (cinfo->Ah-1 != cinfo->Al)
+ goto bad;
+ }
+ if (cinfo->Al > 13) { /* need not check for < 0 */
+ bad:
+ ERREXIT4(cinfo, JERR_BAD_PROGRESSION,
+ cinfo->Ss, cinfo->Se, cinfo->Ah, cinfo->Al);
+ }
+ /* Update progression status, and verify that scan order is legal.
+ * Note that inter-scan inconsistencies are treated as warnings
+ * not fatal errors ... not clear if this is right way to behave.
+ */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ int coefi, cindex = cinfo->cur_comp_info[ci]->component_index;
+ int *coef_bit_ptr = & cinfo->coef_bits[cindex][0];
+ if (cinfo->Ss && coef_bit_ptr[0] < 0) /* AC without prior DC scan */
+ WARNMS2(cinfo, JWRN_BOGUS_PROGRESSION, cindex, 0);
+ for (coefi = cinfo->Ss; coefi <= cinfo->Se; coefi++) {
+ int expected = (coef_bit_ptr[coefi] < 0) ? 0 : coef_bit_ptr[coefi];
+ if (cinfo->Ah != expected)
+ WARNMS2(cinfo, JWRN_BOGUS_PROGRESSION, cindex, coefi);
+ coef_bit_ptr[coefi] = cinfo->Al;
+ }
+ }
+ /* Select MCU decoding routine */
+ if (cinfo->Ah == 0) {
+ if (cinfo->Ss == 0)
+ entropy->pub.decode_mcu = decode_mcu_DC_first;
+ else
+ entropy->pub.decode_mcu = decode_mcu_AC_first;
+ } else {
+ if (cinfo->Ss == 0)
+ entropy->pub.decode_mcu = decode_mcu_DC_refine;
+ else
+ entropy->pub.decode_mcu = decode_mcu_AC_refine;
+ }
+ } else {
+ /* Check that the scan parameters Ss, Se, Ah/Al are OK for sequential JPEG.
+ * This ought to be an error condition, but we make it a warning.
+ */
+ if (cinfo->Ss != 0 || cinfo->Ah != 0 || cinfo->Al != 0 ||
+ (cinfo->Se < DCTSIZE2 && cinfo->Se != DCTSIZE2 - 1))
+ WARNMS(cinfo, JWRN_NOT_SEQUENTIAL);
+ /* Select MCU decoding routine */
+ entropy->pub.decode_mcu = decode_mcu;
+ }
+
+ /* Allocate & initialize requested statistics areas */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ if (! cinfo->progressive_mode || (cinfo->Ss == 0 && cinfo->Ah == 0)) {
+ tbl = compptr->dc_tbl_no;
+ if (tbl < 0 || tbl >= NUM_ARITH_TBLS)
+ ERREXIT1(cinfo, JERR_NO_ARITH_TABLE, tbl);
+ if (entropy->dc_stats[tbl] == NULL)
+ entropy->dc_stats[tbl] = (unsigned char *) (*cinfo->mem->alloc_small)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE, DC_STAT_BINS);
+ MEMZERO(entropy->dc_stats[tbl], DC_STAT_BINS);
+ /* Initialize DC predictions to 0 */
+ entropy->last_dc_val[ci] = 0;
+ entropy->dc_context[ci] = 0;
+ }
+ if (! cinfo->progressive_mode || cinfo->Ss) {
+ tbl = compptr->ac_tbl_no;
+ if (tbl < 0 || tbl >= NUM_ARITH_TBLS)
+ ERREXIT1(cinfo, JERR_NO_ARITH_TABLE, tbl);
+ if (entropy->ac_stats[tbl] == NULL)
+ entropy->ac_stats[tbl] = (unsigned char *) (*cinfo->mem->alloc_small)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE, AC_STAT_BINS);
+ MEMZERO(entropy->ac_stats[tbl], AC_STAT_BINS);
+ }
+ }
+
+ /* Initialize arithmetic decoding variables */
+ entropy->c = 0;
+ entropy->a = 0;
+ entropy->ct = -16; /* force reading 2 initial bytes to fill C */
+
+ /* Initialize restart counter */
+ entropy->restarts_to_go = cinfo->restart_interval;
+}
+
+
+/*
+ * Module initialization routine for arithmetic entropy decoding.
+ */
+
+GLOBAL(void)
+jinit_arith_decoder (j_decompress_ptr cinfo)
+{
+ arith_entropy_ptr entropy;
+ int i;
+
+ entropy = (arith_entropy_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(arith_entropy_decoder));
+ cinfo->entropy = (struct jpeg_entropy_decoder *) entropy;
+ entropy->pub.start_pass = start_pass;
+
+ /* Mark tables unallocated */
+ for (i = 0; i < NUM_ARITH_TBLS; i++) {
+ entropy->dc_stats[i] = NULL;
+ entropy->ac_stats[i] = NULL;
+ }
+
+ /* Initialize index for fixed probability estimation */
+ entropy->fixed_bin[0] = 113;
+
+ if (cinfo->progressive_mode) {
+ /* Create progression status table */
+ int *coef_bit_ptr, ci;
+ cinfo->coef_bits = (int (*)[DCTSIZE2])
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ cinfo->num_components*DCTSIZE2*SIZEOF(int));
+ coef_bit_ptr = & cinfo->coef_bits[0][0];
+ for (ci = 0; ci < cinfo->num_components; ci++)
+ for (i = 0; i < DCTSIZE2; i++)
+ *coef_bit_ptr++ = -1;
+ }
+}
diff --git a/trunk/jdmaster.c b/trunk/jdmaster.c
index 38b7dd0..14520da 100644
--- a/trunk/jdmaster.c
+++ b/trunk/jdmaster.c
@@ -405,7 +405,11 @@ master_selection (j_decompress_ptr cinfo)
jinit_inverse_dct(cinfo);
/* Entropy decoding: either Huffman or arithmetic coding. */
if (cinfo->arith_code) {
+#ifdef D_ARITH_CODING_SUPPORTED
+ jinit_arith_decoder(cinfo);
+#else
ERREXIT(cinfo, JERR_ARITH_NOTIMPL);
+#endif
} else {
if (cinfo->progressive_mode) {
#ifdef D_PROGRESSIVE_SUPPORTED
diff --git a/trunk/jdtrans.c b/trunk/jdtrans.c
index 6c0ab71..9d9c1b1 100644
--- a/trunk/jdtrans.c
+++ b/trunk/jdtrans.c
@@ -101,7 +101,11 @@ transdecode_master_selection (j_decompress_ptr cinfo)
/* Entropy decoding: either Huffman or arithmetic coding. */
if (cinfo->arith_code) {
+#ifdef D_ARITH_CODING_SUPPORTED
+ jinit_arith_decoder(cinfo);
+#else
ERREXIT(cinfo, JERR_ARITH_NOTIMPL);
+#endif
} else {
if (cinfo->progressive_mode) {
#ifdef D_PROGRESSIVE_SUPPORTED
diff --git a/trunk/jerror.h b/trunk/jerror.h
index edbe903..0eb0341 100644
--- a/trunk/jerror.h
+++ b/trunk/jerror.h
@@ -95,6 +95,7 @@ JMESSAGE(JERR_MISSING_DATA, "Scan script does not transmit all data")
JMESSAGE(JERR_MODE_CHANGE, "Invalid color quantization mode change")
JMESSAGE(JERR_NOTIMPL, "Not implemented yet")
JMESSAGE(JERR_NOT_COMPILED, "Requested feature was omitted at compile time")
+JMESSAGE(JERR_NO_ARITH_TABLE, "Arithmetic table 0x%02x was not defined")
JMESSAGE(JERR_NO_BACKING_STORE, "Backing store not supported")
JMESSAGE(JERR_NO_HUFF_TABLE, "Huffman table 0x%02x was not defined")
JMESSAGE(JERR_NO_IMAGE, "JPEG datastream contains no image")
@@ -172,6 +173,7 @@ JMESSAGE(JTRC_UNKNOWN_IDS,
JMESSAGE(JTRC_XMS_CLOSE, "Freed XMS handle %u")
JMESSAGE(JTRC_XMS_OPEN, "Obtained XMS handle %u")
JMESSAGE(JWRN_ADOBE_XFORM, "Unknown Adobe color transform code %d")
+JMESSAGE(JWRN_ARITH_BAD_CODE, "Corrupt JPEG data: bad arithmetic code")
JMESSAGE(JWRN_BOGUS_PROGRESSION,
"Inconsistent progression sequence for component %d coefficient %d")
JMESSAGE(JWRN_EXTRANEOUS_DATA,
diff --git a/trunk/jmorecfg.h b/trunk/jmorecfg.h
index 0e7fb72..9ab2a90 100644
--- a/trunk/jmorecfg.h
+++ b/trunk/jmorecfg.h
@@ -257,8 +257,6 @@ typedef int boolean;
* (You may HAVE to do that if your compiler doesn't like null source files.)
*/
-/* Arithmetic coding is unsupported for legal reasons. Complaints to IBM. */
-
/* Capability options common to encoder and decoder: */
#define DCT_ISLOW_SUPPORTED /* slow but accurate integer algorithm */
@@ -267,7 +265,7 @@ typedef int boolean;
/* Encoder capability options: */
-#undef C_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
+#define C_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
#define C_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
#define C_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
#define ENTROPY_OPT_SUPPORTED /* Optimization of entropy coding parms? */
@@ -283,7 +281,7 @@ typedef int boolean;
/* Decoder capability options: */
-#undef D_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
+#define D_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
#define D_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
#define D_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
#define SAVE_MARKERS_SUPPORTED /* jpeg_save_markers() needed? */
diff --git a/trunk/jpegint.h b/trunk/jpegint.h
index 7a31f51..3ba7be0 100644
--- a/trunk/jpegint.h
+++ b/trunk/jpegint.h
@@ -2,6 +2,7 @@
* jpegint.h
*
* Copyright (C) 1991-1997, Thomas G. Lane.
+ * Modified 1997-2009 by Guido Vollbeding.
* This file is part of the Independent JPEG Group's software.
* For conditions of distribution and use, see the accompanying README file.
*
@@ -304,6 +305,7 @@ struct jpeg_color_quantizer {
#define jinit_forward_dct jIFDCT
#define jinit_huff_encoder jIHEncoder
#define jinit_phuff_encoder jIPHEncoder
+#define jinit_arith_encoder jIAEncoder
#define jinit_marker_writer jIMWriter
#define jinit_master_decompress jIDMaster
#define jinit_d_main_controller jIDMainC
@@ -313,6 +315,7 @@ struct jpeg_color_quantizer {
#define jinit_marker_reader jIMReader
#define jinit_huff_decoder jIHDecoder
#define jinit_phuff_decoder jIPHDecoder
+#define jinit_arith_decoder jIADecoder
#define jinit_inverse_dct jIIDCT
#define jinit_upsampler jIUpsampler
#define jinit_color_deconverter jIDColor
@@ -327,6 +330,7 @@ struct jpeg_color_quantizer {
#define jzero_far jZeroFar
#define jpeg_zigzag_order jZIGTable
#define jpeg_natural_order jZAGTable
+#define jpeg_aritab jAriTab
#endif /* NEED_SHORT_EXTERNAL_NAMES */
@@ -345,6 +349,7 @@ EXTERN(void) jinit_downsampler JPP((j_compress_ptr cinfo));
EXTERN(void) jinit_forward_dct JPP((j_compress_ptr cinfo));
EXTERN(void) jinit_huff_encoder JPP((j_compress_ptr cinfo));
EXTERN(void) jinit_phuff_encoder JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_arith_encoder JPP((j_compress_ptr cinfo));
EXTERN(void) jinit_marker_writer JPP((j_compress_ptr cinfo));
/* Decompression module initialization routines */
EXTERN(void) jinit_master_decompress JPP((j_decompress_ptr cinfo));
@@ -358,6 +363,7 @@ EXTERN(void) jinit_input_controller JPP((j_decompress_ptr cinfo));
EXTERN(void) jinit_marker_reader JPP((j_decompress_ptr cinfo));
EXTERN(void) jinit_huff_decoder JPP((j_decompress_ptr cinfo));
EXTERN(void) jinit_phuff_decoder JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_arith_decoder JPP((j_decompress_ptr cinfo));
EXTERN(void) jinit_inverse_dct JPP((j_decompress_ptr cinfo));
EXTERN(void) jinit_upsampler JPP((j_decompress_ptr cinfo));
EXTERN(void) jinit_color_deconverter JPP((j_decompress_ptr cinfo));
@@ -382,6 +388,9 @@ extern const int jpeg_zigzag_order[]; /* natural coef order to zigzag order */
#endif
extern const int jpeg_natural_order[]; /* zigzag coef order to natural order */
+/* Arithmetic coding probability estimation tables in jaricom.c */
+extern const INT32 jpeg_aritab[];
+
/* Suppress undefined-structure complaints if necessary. */
#ifdef INCOMPLETE_TYPES_BROKEN
diff --git a/trunk/jpegtran.1 b/trunk/jpegtran.1
index 66d2f9f..f10cdbb 100644
--- a/trunk/jpegtran.1
+++ b/trunk/jpegtran.1
@@ -60,6 +60,9 @@ Create progressive JPEG file.
Emit a JPEG restart marker every N MCU rows, or every N MCU blocks if "B" is
attached to the number.
.TP
+.B \-arithmetic
+Use arithmetic coding.
+.TP
.BI \-scans " file"
Use the scan script given in the specified text file.
.PP
@@ -249,8 +252,6 @@ Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44.
.SH AUTHOR
Independent JPEG Group
.SH BUGS
-Arithmetic coding is not supported for legal reasons.
-.PP
The transform options can't transform odd-size images perfectly. Use
.B \-trim
or
diff --git a/trunk/libjpeg.txt b/trunk/libjpeg.txt
index f8ec519..191b35e 100644
--- a/trunk/libjpeg.txt
+++ b/trunk/libjpeg.txt
@@ -93,7 +93,6 @@ JPEG processes are supported. (Our subset includes all features now in common
use.) Unsupported ISO options include:
* Hierarchical storage
* Lossless JPEG
- * Arithmetic entropy coding (unsupported for legal reasons)
* DNL marker
* Nonintegral subsampling ratios
We support both 8- and 12-bit data precision, but this is a compile-time
@@ -1023,11 +1022,6 @@ JDIMENSION jpeg_width Actual dimensions of output image.
JDIMENSION jpeg_height
-There are some additional cinfo fields which are not documented here
-because you currently can't change them; for example, you can't set
-arith_code TRUE because arithmetic coding is unsupported.
-
-
Per-component parameters are stored in the struct cinfo.comp_info[i] for
component number i. Note that components here refer to components of the
JPEG color space, *not* the source image color space. A suitably large
diff --git a/trunk/structure.txt b/trunk/structure.txt
index 09e1cd2..779233a 100644
--- a/trunk/structure.txt
+++ b/trunk/structure.txt
@@ -60,9 +60,6 @@ we treat 8-bit vs. 12-bit data precision as a compile-time switch, not a
run-time option, because most machines can store 8-bit pixels much more
compactly than 12-bit.
-For legal reasons, JPEG arithmetic coding is not currently supported, but
-extending the library to include it would be straightforward.
-
By itself, the library handles only interchange JPEG datastreams --- in
particular the widely used JFIF file format. The library can be used by
surrounding code to process interchange or abbreviated JPEG datastreams that
diff --git a/trunk/testimgari.jpg b/trunk/testimgari.jpg
new file mode 100644
index 0000000..8966487
--- /dev/null
+++ b/trunk/testimgari.jpg
Binary files differ
diff --git a/trunk/testimgari.ppm b/trunk/testimgari.ppm
new file mode 100644
index 0000000..d7b38f2
--- /dev/null
+++ b/trunk/testimgari.ppm
@@ -0,0 +1,4 @@
+P6
+227 149
+255
+0/+0/+0/+10,21-32.52-63.83/83/83-83-:3-:3-:3+:3+72.72.61-61-61-61-72.72.50,50,50,50,50,50,50,50,4/+3.*3.*3.*2-)2-)2-)2-)1,(1,(1,(1,(1,(1,(1,(1,(.+$.+$/,%0-&1.'2/(2/(30)52+63,63,74-85.96/96/:70@:,A;-C=/F@2GA3IC5JC3JC3LE3LE3LC2LC2LD1ME2PE3PE3Q>/S@1c?/iE5C4†H9œE4žG6´F7µG8¿E8ÁG:ÇG<ÈH=ÊG?ËH@êCKëDLëDKëDKíCFìBEò>Añ=@÷:>ö9=ò9>ò9>ä@?â>=Ó?;Ð<8µ@,´?+´?+´?+²?,²?,°@,°@,«@,ª?+¤A,£@+œB*›A)—A(–@'‘@-?,‘>,‘>,=+=+>)>)“>*“>*“>*“>*”=)•>*–?+–?+“@8’?7™=0›?2«@.°E3¼C0½D1·?/¸@0¥H9£F7K=s?1N;*E2!95495484373262/51.40-3/,63.52-52-52-41,41,41,30++0*+0*-/*-/*./*./*1-*1-*2-*1,)3)(2('5)):..D66J<<l@?wKJMK‘QOžVY«cf¤p†¥q‡Š©‰~¨|‡½|‡½uy©]a‘YJsRClPKbMH_KHYSPaddl{{ƒ’Ž˜™¢¨œ¡§›¡Ž’z{iefTXWEQP>TPaTPaTPa/.*/.*0/+10,21-21-52-52-72.72.72,72,92,92,92*92*72.61-61-50,50,61-61-72.61-61-61-61-61-61-61-61-3.*3.*3.*3.*2-)2-)2-)1,(2-)2-)2-)2-)2-)2-)2-)2-)/,%/,%0-&1.'2/(2/(30)30)52+63,63,74-85.96/96/96/@:,A;-C=/E?1F@2HB4IB2IB2JC1JC1KB1JA0KC0LD1OD2OD2Q>/S@1b>.gC3~@1ƒE6˜A0šC2­?0®@1¹?2»A4ÂB7ÄD9ÈE=ÈE=ç@HèAIéBIêCJíCFíCFô@Có?Bø;?÷:>ó:?ó:?ä@?â>=Ó?;Ð<8´?+´?+´?+³>*²?,²?,¯?+¯?+ª?+ª?+¤A,£@+œB*š@(—A(–@'?,?,‘>,‘>,=+=+>)=(“>*“>*’=)’=)”=)•>*•>*–?+“@8’?7™=0œ@3¬A/°E3½D1½D1¹A1¹A1¦I:¢E6}I;q=/N;*E2!:65:6595484373051.51.40-63.52-52-52-41,41,41,30+,1+,1+.0+.0+/0+/0+2.+2.+3.+2-*4*)3)(5))9--C55H::h<;rFE‰IGMKšRU§_b l‚£o…ˆ}§‰~¨{†¼y„ºpt¤Y]VGpQBkLG^MH_MJ[PM^ZZbmmuƒˆ„“˜”˜ž’™Ÿ“˜œ‹‘€}~lijX]\JUTBUQbUQbUQb..,..,0/+0/+10,21-41,52-52-52-61+61+61+61+81)81)61-61-50,4/+4/+50,61-61-61-61-61-61-61-61-61-61-3.*3.*3.*2-)2-)2-)1,(1,(3.*3.*3.*3.*3.*3.*3.*3.*1.'1.'1.'2/(30)30)41*41*52+52+63,74-74-85.96/96/?9-@:.B<0D>2E?1F@2G?2H@3HA1HA1H?.H?.I@/JA0MA1MA1JA0LC2YB0\E3pC0tG4‰B0ŠC1—<*™>,¦<,ª@0²B4µE7¹H:ºI;Ü@CÝADáCDãEFëCCìDD÷@B÷@Bù:?ø9>ó<>ò;=âC?ß@<ËB8È?5±A-±A-°@,°@,°@,¯?+®?,®?,©@+¨?*¡A+ @*™A)˜@(•A)•A)?,?,?,>+>+>+<*<*>)>)>)>)>)‘?*”?+•@,“A5’@4›>/žA2±@0µD4ÁB3ÁB3¾D7¾D7¥K@ F;vJ=j>1I=-B6&=85<74;63:5294183062/51.63.52-32-32-21,21,21,10+,1+,1+,1+,1+.0+.0+0/+0/+3/,3/,5-+3+)4*)7-,=32A76\:0eC9{G:M@PM˜[X“hy˜m~‚y¤…|§x‚½s}¸il£SVQCtM?pLAaPEeOJaMH_LKYZYgquv„ˆ‰…Œ„‰ˆŠ‚ƒ‰{wykfhZZ[KSTDYS]YS]YS]--+--+/.*0/+0/+10,41,41,41,41,50*50*50*50*70(70(50,4/+4/+3.*3.*4/+4/+50,50,50,50,50,50,50,50,50,3.*3.*2-)2-)2-)1,(1,(1,(4/+4/+4/+4/+4/+4/+4/+4/+2/(2/(30)30)41*41*52+52+52+52+63,63,74-85.85.96/=7+>8,@:.B<0C=/D>0E=0E=0E>.E>.F=,F=,G>-H?.K?/L@0LC2MD3YB0[D2nA.qD1…>,†?-’7%“8& 6&¥;+®>0³C5¸G9ºI;Û?BÜ@CàBCáCDêBBëCCõ>@õ>@ù:?ø9>ó<>ó<>âC?Þ?;ÊA7Å<2°@,°@,¯?+¯?+¯?+®>*­>+­>+¨?*§>)¡A+Ÿ?)˜@(—?'”@(”@(?,?,>+>+>+Ž=*<*<*>)=(=(=(=(>)“>*”?+“A5“A5œ?0ŸB3²A1¶E5ÂC4ÂC4ÀF9ÀF9§MB F;uI<h</H<,B6&>96=85<74;63:5294173062/63.52-32-32-21,21,21,10+,1+,1+,1+,1+.0+.0+0/+0/+40-40-6.,4,*4*)6,+:0/=32W5+_=3t@3yE8„GDPMŠ_p‘fw|sž€w¢t~¹mw²beœPSŠQCtM?pLAaODdMH_ID[EDRLKY[_`imnszrw~vyqtzlln`_aSWXHSTD[U_[U_[U_,,*,,*--+..,0/+0/+10,10,30+30+30+30+4/)4/)4/)4/)4/,3.+3.+2-*2-*3.+3.+4/,4/,4/,4/,4/,4/,4/,4/,4/,2-*2-*2-*2-*1,)1,)0+(0+(4/,4/,4/,4/,4/,4/,4/,4/,30)30)30)41*41*41*52+52+41*52+52+63,74-85.85.85.<5+=6,>8,@:.A;/A;/C;.C;.C;.C;.D;,D;,E<-G>/J>0K?1FI6FI6PH5QI6aE0cG2tA,uB-‚;'ƒ<(;'•@,ŸB0¥H6­L;°O>ÎDAÏEBÖE@×FAäB?äB?ò<;ò<;ú9<ú9<ð><ï=;ÙF>ÕB:½D3¹@/­@+­@+­@,¬?+¬?+¬?+©>,©>,¤?+¤?+Ÿ@,ž?+—A*•?(’@*‘?)>+>+>+>+Ž=*Ž=*<)<)Ž=*Ž=*<+<+Ž=,Ž=,>-Ž?.”C2“B1¢>/¦B3º@3½C6Å@7Å@7¹D;ºE<OE–H>jJ?]=2<=/78*@85?74?74=52:5194074/74/43.32-23-23-03,03,03,/2+,3,,3,,3,,3,-2,-2,/1,/1,12-23.40-2.+1-*1-*50-72/M7)R<.b>.gC3oD;wLCz[j†gvwqŸ|v¤qz½js¶ab¥ST—QEƒK?}PAjPAjKAcI?aEBWGDYILUMPY]ca`fdah`_f^Y_STZNSYKSYK_WT_WT_WT++),,*,,*--+/.*0/+0/+0/+2/*2/*2/*2/*3.(3.(3.(3.(3.+2-*1,)1,)1,)1,)2-*3.+2-*2-*2-*2-*2-*2-*2-*2-*2-*2-*2-*1,)1,)0+(0+(0+(3.+3.+3.+3.+3.+3.+3.+3.+30)30)41*41*41*41*41*41*41*41*52+63,63,74-85.85.;4*;4*=7+>8,?9-?9-@8+@8+B:-B:-C:+C:+D;,F=.I=/J>0FI6FI6OG4PH5_C.aE0r?*r?*:&‚;'Ž9%’=)@.¢E3«J9®M<ÍC@ÎDAÔC>ÕD?ãA>ãA>ñ;:ñ;:ù8;ù8;ï=;î<:×D<Ò?7ºA0µ<+¬?*¬?*¬?+¬?+«>*«>*¨=+¨=+£>*£>*ž?+>*–@)•?(‘?)>(>+>+>+Ž=*Ž=*<)<)<)<)<)Œ;*Œ;*<+Ž=,>->-”C2”C2£?0§C4»A4¾D7ÆA8Å@7·B9¹D;žPF—I?jJ?\<1;<.78*@85?74>63=52:5194074/74/43.32-23-23-03,03,03,/2+,3,,3,,3,,3,-2,-2,/1,/1,01,12-51.3/,1-*1-*3.+50-J4&L6([7'`<,h=4pE<wXgˆix{u£€z¨t}Àlu¸gh«[\ŸWK‰MAPAjM>gH>`H>`FCXFCX?BK<?HBHFFLJIPHJQIJPDKQEOUGSYK`XU`XU`XU*,+*,+,,*,,*--+..,0/+0/+/.*/.*1.)1.)1.)1.)2-)2-)1-*0,)0,)/+(/+(0,)0,)1-*/+(/+(/+(/+(/+(/+(/+(/+(1-*1-*0,)0,)/+(/+(/+(/+(1-*1-*1-*1-*1-*1-*1-*1-*30+30+30+30+30+30+30+30+41,41,41,52-63.74/74/85092*:3+;4,=6.=6,>7->5,>5,A9.A9.B8,C9-D:.F<0J>2K?3DE5EF6LE3MF4XC2YD3f?.f?.v=,v=,‚9(…<+“=,˜B1ŸF4¢I7»F<¼G=ÆH<ÈJ>ÙD=ÚE>ì?;ì?;ò::ñ99ç>9ç>9ÍG;ÇA5­D.§>(¦A-¦A-¦?,¦?,¦?,¥>+¤?-¤?- ?,Ÿ>+›@-™>+”?+“>*>)>)>->-Œ=,Œ=,Š=+Š=+Š=+Š=+Š=-‰<,ˆ<,ˆ<,ˆ<.‰=/Š>0‹?1’D0’D0¥?1©C5½A9ÀD<ÃB<ÂA;±JCµNG˜^S’XMgWJXH;;F87B4?80>7/>71<5/94.83-63,63,34.23-14-14-.3,.3,-4,,3+,3,,3,,3,,3,,3,,3,-2,-2,.0+02-23.12-/0+./*0/+10,<1+=2,G5'M;-V=6aHAo^p…t†ƒ€µ†ƒ¸|‚ÎtzÆno¿cd´XRšHBŠL?jI<gD=_E>`DBXDBX<CM8?I9CB=GFCNFEPHFRFGSGLVKPZOaZJaZJaZJ)+**,+++),,*--+..,/.*0/+.-).-)0-(0-(0-(0-(1,(1,(0,)0,)/+(/+(/+(/+(0,)0,).*'.*'.*'.*'.*'.*'.*'.*'1-*0,)0,)0,)/+(/+(/+(.*'0,)0,)0,)0,)0,)0,)0,)0,)30+30+30+2/*2/*2/*2/*2/*30+41,41,52-63.74/74/85092*:3+;4,<5-<5+=6,=4+=4+A9.A9.B8,C9-D:.F<0J>2K?3BC3CD4JC1KD2VA0WB1d=,d=,t;*t;*€7&‚9(9(”>-›B0žE3¸C9¹D:ÃE9ÇI=ÙD=ÛF?îA=îA=ñ99ð88ç>9æ=8ÌF:Æ@4«B,¥<&¥@,¥@,¦?,¦?,¥>+¥>+¤?-£>, ?,Ÿ>+š?,™>+”?+“>*>)Ž=(>-Œ=,Œ=,Œ=,Š=+Š=+Š=+‰<*‰<,‰<,ˆ<,‡;+ˆ<.‰=/Š>0Š>0’D0“E1¥?1ªD6¾B:ÀD<ÃB<ÂA;·PI½VO¡g\›aVqaTbREDOA@K=>7/>7/=60<5/94.83-63,52+34.23-14-14-.3,.3,-4,,3+-4--4--4--4--4--4-.3-.3--/*/1,23.12-/0+./*/.*0/+8-'8-'C1#I7)T;4aHAsbt‹zŒŒ‰¾Ž‹À‚ˆÔyËtuÅijº[UHBŠI<gH;fD=_D=_B@VCAW>EO>EOGQPLVUR]UT_WS_SR^RT^SV`U`YI`YI`YI+-,+-,+-,+-,+-,+-,,,*,,*/.*.-).-).-)/,'/,'/,'/,',+),+),+)-,*-,*-,*-,*-,*-,*-,*-,*-,*-,*-,*-,*-,*,+),+)-,*-,*.-+.-+/.,/.,/.,/.,/.,/.,.-+.-+.-+.-+/+(0,)1-*2.+3/,3/,2.+2.+2.+2.+2.+3/,3/,51.62/73070*81+92,;4.<5-<5-=4-=4->5,>5,?5,@6-A7-C9/G:1H;2G?4G?4K?3L@4T>3T>3]9-]9-m9,n:-}7+€:.Œ:,>0—>0˜?1¦B3¨D5²D5·I:ÉG:ÌJ=ÝD>ßF@æA=çB>ßF@ÜC=ÀH8¹A1 D-žB+ A- A-Ÿ@,ž?+Ÿ>+Ÿ>+ž?-ž?-š=,™<+•>+”=*>+Ž=*Œ>*Œ>*Š=+‰<*‰<*‰<*‡;+‡;+…<+…<+†=.†=.…=/…=/„>2†@4‡A5ˆB6E2‘F3¦D7­K>¼E?ºC=¶G@»LE©_T°f[”wg‘tdsugik]P`SCSFOK@IE:A?3;9-85,74+44*33)34,34,14-03,-2,,1+,1+,1+-2,-2,-2,-2,-2,-2,-2,-2,02-02-02-02-12-12-12-12-2+3708=52>63D=7XQKrn}Š†•‘”–ÇŽ•ÝƒŠÒvzÃim¶_c¢W[šNKjFCb=?V=?V<DQAIVHVWSab`qim~vt†zouiyleuh^l]SaRa[Ca[Cb\D,.-,.-,.-,.-,.-,.---+--+.-).-).-)-,(/,'/,'.+&.+&,+),+),+),+),+),+),+),+),+),+),+),+),+),+),+),+),+),+)-,*-,*-,*.-+.-+.-+/.,.-+.-+.-+.-+.-+.-+.-+/+(0,)1-*2.+2.+2.+2.+2.+2.+1-*1-*2.+2.+40-51.62/70*81+:3-;4.<5-<5-=4-=4->5,>5,?5,@6-A7-C9/F90G:1F>3G?4K?3K?3S=2S=2\8,\8,k7*l8+{5)~8,‹9+Ž<.–=/—>0¤@1¥A2¯A2²D5ÄB5ÈF9ÚA;ÜC=å@<æA=ßF@ÛB<¿G7¸@0 D-žB+ A-Ÿ@,ž?+>*ž=*ž=*ž?-ž?-™<+™<+”=*”=*>+Ž=*Œ>*‹=)‰<*‰<*‰<*ˆ;)‡;+‡;+„;*„;*…<-…<-„<.…=/„>2…?3‡A5ˆB6“H5“H5§E8­K>½F@¼E?¹JC¾OH¯eZ¶la›~n˜{kz|nprdWgZJZMOK@KG<EC7@>2=:196-44*11'23+12*03,/2+,1+,1+,1+,1+,1+,1+,1+,1+,1+,1+,1+,1+/1,/1,/1,/1,01,01,01,01,3,46/7;30=52G@:]VPvrŒˆ—‘”–ÇŽ•Ý„‹Ó{ÈswÀmq°hl«a^}[XwSUlTVmU]j\dqftur€u†~ˆƒ•‰|Ž‚v†yp€sfteXfW^X@_YAa[C*./*./*./*./,.-,.-,.-,.-,,*,,*-,(-,(,+',+',+'+*&+*(+*(+*(+*(+*(+*(+*(+*(,+),+),+),+),+),+),+),+),+),+),+)-,*-,*-,*-,*.-+.-+.-+.-+.-+.-+.-+.-+.-+/+(0,)1-*1-*2.+2.+1-*1-*0,)0,)0,)0,)1-*3/,40-51.80-91.:2/;30<41<41=4/=4/=4-=4->3-?4.@6-B8/E80F91H;5H;5J;4K<5O:5O:5V72V72c60d71t5,w8/†8,Š<0“;/•=1šA3šA3ŸB3¡D5®B5²F9ÃE9ÅG;ÑG=ÓI?ÏJAÌG>µJ:®C3›D0˜A-šB.™A-™A-˜@,™>,™>,š?-š?-–=-•<,‘>,=+Œ=,Œ=,‰>+‰>+ˆ=*ˆ=*‡<)‡<)…<+„;*ƒ;,ƒ;,;/;/=2=2‚?6„A8ƒC9„D:“K<’J;¡G>¦LC±KF±KF¨XO®^Užyf¦n’|y{ŒypncqbVdUMQ@JN=GI;CE7>@39;.35*/1&01)/0(/0*./)./*./*./*/0+/0+/0+/0+/0+/0+/0+/0+/0+01,01,01,01,01,01,01,01,4+<4+<320875DH:\`Ru{{‰”±‘˜µ•Ã†Ž¼}‹²|Š±|§{Œ¦|‹v…Šn€€l~~jym„|u€›Œˆ¤Ž©“§‘†žˆ€–xŽyj{hXiVYU8[W:^Z=*./*./*./*./,.-,.-,.-,.-,,*,,*-,(,+',+',+'+*&+*&+*(+*(+*(+*(*)'*)'*)'*)',+),+),+),+),+),+),+),+),+),+),+),+),+),+),+),+)-,*-,*-,*.-+.-+.-+.-+.-+/+(/+(0,)1-*1-*0,)0,)/+(/+(/+(/+(/+(0,)1-*3/,3/,80-91.:2/;30<41<41<3.<3.=4-<3,=2,>3-?5,@6-C6.D7/F93F93H92I:3N94M83T50T50a4.c60r3*v7.…7+‰;/“;/”<0™@2™@2›>/@1©=0­A4¾@4ÁC7ÎD:ÏE;ÌG>ÉD;³H8¬A1™B.—@,™A-˜@,—?+–>*˜=+˜=+™>,™>,•<,•<,=+<*Œ=,‹<+ˆ=*ˆ=*‡<)‡<)†;(†;(„;*ƒ:)‚:+‚:+€:.€:.€<1=2‚?6„A8„D:…E;“K<’J; F=¥KB°JE´NI¬\Sµe\¦n­ˆu˜š„•—„•‚yŠwlzk`n_UYHPTCKM?EG9@B5;=057,13(/0(./'-.(,-',-(-.)./*/0+./*./*./*./*./*./*./*./*/0+/0+/0+/0+/0+/0+/0+/0+5,=3*;0/-764GK=aeWyŠ‹’¯Ž•²Š’À…»¶ˆ–½ º“¤¾—¦«’¡¦Œžž‰››‚™‘–Žœˆ£””°š–²œ”¬–‹£…›†|’}j{hUfSVR5YU8\X;+/0+/0+/0+/0+/0+/0-/.-/.--+,,*,,*,,*,+',+',+',+'+++*********))))))((((((************************************************++++++,,,,,,---------.../+*/+*0,+0,+0,+/+*/+*.*)/+*/+*/+*/+*0,+1-,2.-3/.91/91/:20;31;30;30<20;1/<3.<3.=2.=2.=2,?4.B5/C60A83A83B94C:5E:6D95I81I81V80W91g7-k;1|:.€>2‹=0?2–?6–?6“@2”A3™B1œE4©E5«G7¶F:¸H<ºJ>¸H<«F:¥@4—A2•?0”B-“A,”?+“>*”=,”=,”=,•>-’<-’<-Ž=,Ž=,Š=-‰<,…<+…<+†;(†;(„;*ƒ:)‚:+‚:+:+:+~<0~<0}=3?5€A8ƒD;ƒG?„H@K@ŽJ?šGAŸLF¤QKªWQl]¦uf““w™™}‰¨ˆ‡¦†„x”{u€ojudZfPS_IJVBBN:=F58A07;-48*01)/0(.-(,+&.*'/+(1++2,,0,)0,)0,)0,)0,)0,)0,)0,)/.*/.*/.*/.*/.*/.*/.*/.*7,:4)7..$66,BO1]jLv„j†”zŒ—‘›•Œš‰—š‡ž–’©¡™»¢ Â©—¸£–·¢–º –º ´•ˆ­Žˆ­‹²‘µ‘‘µ‘¬†£„ƒœz“vg{bPdKRS4TU6VW8+/0+/0+/0+/0+/0+/0-/.-/...,--+--+--+-,(-,(-,(-,(,,,,,,+++******)))((((((*********************************))))))))))))(((******+++,,,,,,---.......*)/+*/+*/+*/+*.*)-)(-)(/+*/+*/+*/+*0,+1-,3/.3/.:20:20;31;31;30;30;1/;1/;2-;2-<1-<1-<1+=2,@3-A4.?61?61@72A83C84C84G6/G6/S5-T6.d4*h8.z8,~<0‰;.‹=0•>5”=4’?1“@2—@/™B1¥A1¦B2°@4²B6´D8³C7¨C7£>2–@1•?0“A,’@+“>*’=)“<+“<+“<+”=,‘;,‘;,Ž=,<+‰<,ˆ;+…<+„;*…:'…:'ƒ:)ƒ:)9*9*~9*~9*~<0=1~>4€@6‚C:…F=…IA‡KCŽJ?ŒH=šGA¡NH¨UO¯\V£rc®}n——{‹ªŠ‡¦†‚ž…{—~z…tp{jcoY\hRQ]IGS?BK:<E4;?19=/23+01)/.),+&-)&.*'1++2,,/+(/+(/+(/+(/+(/+(/+(/+(.-).-).-).-).-).-).-).-)5*83(6..$55+@M/ZgIsg„’xŽ™“’— ›žŒ£›š±©¢Ä«ªÌ³¥Æ±¦Ç²¦Ê°£Ç­™¾Ÿ²“‰®Œ²±Ž²Žª‹ƒ ˜{vrcw^MaHPQ2QR3RS4+/2+/2+/0+/0+/0+/0-/.-/..0/.0/..,..,..,--+.-).-)------,,,+++******))))))******************************)))))))))((((((((()))******+++,,,---.......*).*)/+*/+*.*)-)(,(',('0,+0,+0,+0,+1-,2.-3/.40/:12:12;31;31;31;31;1/;1/;1/;1/;0,;0,;0,<1-?2,@3-96/:70983:94:94:94=82<71G4-H5.Y5)]9-o7(t<-<+>-;4;4?3Ž@4ŽB2C3”C0”C0ž>.¡A1¨B6©C7¢B6ž>2•?2”>1‘@+?*=+<*‘;*‘;*‘;,’<-<,<,‹<-Š;,‡;+‡;+„;*„;*ƒ:'ƒ:'‚9(‚9(9*€8)}9,}9,}=1~>2~?6€A8E=…IA†KEˆMGŒIAŒIA—IE¡SO¤]W­f`€n¨‹yŠ¢€§…€°Š|¬† ƒyš}ˆvxmfx^`rXXgPN]FHT@AM9>D6:@257,35*2/*/,'0(&1)'3)*4*+2*(2*(2*(2*(0+(0+(0+(0+(0,)0,)0,)0,)0,)0,)0,)0,)6)25(1.046!;MTf6n‚Q€”cŒ›z‘ ¢† „‹«|—·ˆžËˆ¥Ò¥Ó¬¤Ò«£Ò¨Ì¢¾°‚­~ƒ±‚…¯ˆ²„ˆ«ƒ} xz”qpŠg_sWJ^BLO2KN1JM0,03,03,01,01,01,01.0/.0//10/10//-//-//-..,/.*/.*......---,,,+++******)))))))))))))))))))))))))))******))))))((((((''''''))))))***+++,,,---.......*).*)/+*/+*.*)-)(,('+'&0,+0,+0,+0,+1-,3/.40/510:12;23;31;31;31;31;1/:0.;1/:0.;0,;0,;0,;0,>1+?2,96/96/872983983983<71<71C0)E2+U1%Z6*l4%q9*|9(~;*Ž92Ž92Œ>2?3A1A1‘@-?,›;+ž>.¥?3¦@4 @4ž>2•?2”>1?*?*=+<*:)‘;*‘;,‘;,<,Ž;+‹<-Š;,‡;+†:*„;*ƒ:)‚9&‚9&‚9(‚9(€8)€8)}9,|8+~>2~>2@7B9‚F>†JBˆMGŠOIŒIAŒIA™KG¤VR¨a[±jd¢…s­~¥ƒ¨†±‹|¬† ƒz›~ƒŠx{‚pj|bew]_nWVeNO[GFR>AG9;A379.46+30+/,'0(&0(&3)*4*+1)'1)'1)'1)'/*'/*'/*'/*'/+(/+(/+(/+(/+(/+(/+(/+(5(15(1/135 8JPb2kN~’aˆ—vœ{ŒŸƒ‹ž‚‡§x“³„˜Å‚žËˆ™Ç ™Ç ˜Ç“˜ˆ·‰~­¯€ˆ¶‡‚¬~…¯†©zuvmk…bZnRFZ>JM0IL/FI,-0'.1(.1(.1(01)01)01)01)33+33+63,52+52+41*30)2/(7/,6.+6.+5-*2-*1,)0,+/+*.,-.,---/--/+,0*+/()-()-/(//(//(//(/.)-.)-.*+.*+,+)-,*,-(,-(-.(-.(-.(-.(+-,+-,------/.,/.,2.+2.+1,&2-'5.&6/'8/&90';1(;1(;4*<5+<5+<5+=4-<3,<3,;2+;2-;2-;0,;0,;0.;0.<1/<1/F-&F-&;5);5)/:,/:,55-55-D*)C)(Q%&T()W.(^5/]@2aD6vB,xD.…@0‡B2”>1“=0“9.’8-<,‘>.ŽC0E2D/ŽC.?+Œ>*›82š71=1Ž<0‚A/@.|B.{A-ƒB0ƒB0‡>/†=.‡;-†:,„;,ƒ:+s;.zB5r?.m:)qA-qA-t<+yA0};-?1ˆD9ŒH=‡K@ˆLAPB‚QC’JK˜PQ…i[qcq‰ixpuŸ{{¥‡¦‡ˆ§ˆŽ§Š¦‰¦‡{ hžzdšvbdZ‡\X|VSwQZnRSgKQUDHL;D=5?80:..5))3'+3'+2%,2%,******,(),()0%+1&,2%,3&-4'04'03'13'1/*1/*1,+1,+1.*+0,-.-(/.);>+VYFnyW~‰gŠp‹žq‰¤oŒ§r‡¨qˆ©rŽ´{˜¾…¡¿‹Ÿ½‰—¹†‘³€‰®{…ªwƒ©z„ª{ƒ¦|‚¥{€~v“tqˆnf}c[jWL[HJR=AI4;C..1(.1(.1(/2)01)12*12*12*44,44,63,63,63,52+41*30)7/,6.+6.+5-*2-*2-*0,+0,+.,-.,---/--/+,0*+/)*.()-.'..'..'..'.-(,-(,-)*-)*-,*-,*,-(-.)-.(-.(./)./),.-,.----.../.,/.,1-*1-*2-'3.(6/'70(90':1(<2)<2)<5+<5+=6,=6,>5.=4-<3,;2+;2-;2-;0,;0,;0.;0.<1/<1/F-&G.';5);5)/:,/:,55-44,D*)D*)Q%&T()V-'[2,Z=/]@2s?)uA+ƒ>.†A1“=0“=0”:/“9.:*:*Š?,‹@-ŒA,B-A-A-š71š71=1Ž<0‚A/@.|B.{A-‚A/‚A/†=.…<-†:,†:,ƒ:+ƒ:+r:-v>1o<+m:)p@,o?+q9(s;*~<.‚@2‰E:ŒH=‡K@‡K@PB‚QCHI˜PQ‡k]tfum|”tx¢~~¨„ˆ§ˆ‰¨‰¨‹Ž§Šƒ¨‰}¢ƒj |fœxe’g^‹`\€ZX|V_sWZnRY]LPTCKD<E>6?338,,5)-4(,3&-2%,******,(),()1&,1&,3&-4'.4'04'03'13'1/*1/*1,+1,+12./2./-,',+&8;(TWDmxVŠh„—j…˜k„Ÿj‡¢mƒ¤mƒ¤m‡­t¶}š¸„˜¶‚‘³€Œ®{…ªwƒ¨u‚¨y‚¨y‚¥{¤zœ}u’sp‡mf}c[jWL[HFN9=E07?*/2)/2)03*03*12*23+23+23+55-55-74-85.74-63,63,52+81+70*50,4/+3.*2-)1-*0,)/.,/.,......--/,,.)*,)*,/)-/)-/)-/)-.*+.*+.*).*).-).-).-)/.*./)./)/0*/0*//////..,..,/.*/.*1.)1.)4/)4/)70(81);2)<3*>4*>4*>7->7-?6-?6-?6->5,=4-<3,;2-;2-;0,:/+:/-;0.<1/<1/B1)C2*Q*+Q*+X%.W$-N',M&+@.*?-)=0'>1(P.%T2)k.-m0/h:+j<-w;0z>3‰<6‰<6‹;4Š:3†=4†=4‚@2‚@2…A4†B5ŠB6‹C7‹?/‹?/ˆ?.‡>-‡>-†=,ˆ;+ˆ;+Œ:,‹9+ˆ;+‡:*<)<)x>(x>(|>1z</s;,t<-u@0u@0v<.u;-?3‚B6‰E<ŒH?ŠJ@ŠJ@‡MBˆNC—GHŸOP“g\œpe„‡lŠr~{ƒ¢€…©…†ª†¨Š¨Š’¢‡Œœˆ”|„xc˜j^“eZŠ`Xˆ^Z„^UYQrUJkNB[E;T>5F6,=-)5+&2(%/'$.&9"(9"(6#'6#'4%*5&+2),3*-,,.,,.(..(..%/0%/0"00"004.04.0.+&,)$58'QTCkvX}ˆj}’i~“j~šj‚žn~ m}Ÿl¦q†­xŠ¯y‰®x…¬w‚©t§s~¦r~¥v¦w¤{~£z}›yt’pp‡ke|`XjRJ\DFI8=@/7:)14+14+14+25,34,34,45-45-66.66.96/96/96/96/85.74-92,92,61-61-50,4/+2.+2.+0/-10.000/////1--/+,.*+-0*.0*.0*.0*./+,/+,/+*/+*/.*/.*/.*0/+/0*01+01+01+00000000.00.0/+0/+2/*2/*61+72,:3+;4,=4+>5,@6,@6,@9/@9/A8/A8/@7.?6->5.=4-<3.;2-;0,;0,;0.;0.<1/=20D3+D3+R+,R+,Y&/X%.O(-N',A/+A/+>1(>1(O-$R0'g*)i,+g9*i;,v:/z>3ˆ;5‰<6Š:3Š:3ˆ?6ˆ?6„B4„B4†B5†B5‰A5‰A5‹?/Š>.ˆ?.‡>-†=,†=,ˆ;+ˆ;+Š8*Š8*†9)†9)~;(~;(w='w='~@3v8+s;,u=.q<,s>.z@2z@2A5„D8ŠF=‹G>‰I?ŠJ@ˆNCŠPE›KL¡QR’f[˜la~f„‡ly˜vž|‚¦‚„¨„Ž§‰Ž§‰’¢‡‚‰•}…‘yf›ma–h`f_ebŒf_‰c]~aWx[NgQF_I?P@4E5/;1)5+&0($.&9"(8!'6#'6#'3$)4%*1(+2),**,**,&,,&,,#-.#-. .. ../)+1+-.+&.+&7:)QTChsUw‚dyŽezfz–f€œl|žkzœiy k~¥p¦p¤n}¤o|£n|¤p}¥q}¤u}¤u{ w{ wz˜vrnn…ie|`XjRJ\DDG6<?.69(25,25,36-36-56.56.56.56.77/880;81;81;81;81:70:70<5/;4.94083/72.61-51.51.51.51.32032021/10.0/-/.,3*+3*+1++1++1++1++0,)0,)2.+2.+10+10+10+21,12*12*22022023.12-21,21,50*50*;4,;4,=4+>5,@6,A7-B8.C9/C;0C;0C;0C;0B90@7.?6->5,=4-<3,<3.;2-;2-<3.<3.=4/?61?61P-1P-1\&3[%2Q*/P).<5-<5-29)3:*D4'E5(Y.'Z/(b:2e=5r;6v?:ƒ;<ƒ;<…;:„:9;8€<9}A9C;‚C<B;…@9„?8~D.~D.„A.ƒ@-‰<,ˆ;+Œ9+‹8*Š7)Š7)…9)„8(z=(z=(t@(s?'„6,|.$€8,†>2t4(t4(zB5|D7{E9}G;€J>K?„K@†MBŠPESHqhKulOoV„t[‡y_gŽŽr••y‡Ÿ{Š¢~ƒ©‚…«„ƒ©‚~¤}~œz{™w†nƒŠkˆiˆiz‰jx‡hr‚gn~ccoW[gOVWEJK9G=1?5)=,$:)!9%&9%&4&%4&%.)%.)%*,'*,'&,(&,()+()+(+)*+)*.(*.(*,$!2*'51&95*?D0TYEbqRm|]qŠbqŠbp‘bv—hu›js™hqœgu kw¢lu jsŸju¡lx¤sz¦uz¤vy£uxtxtw–toŽll…gc|^UlOG^AFB6>:.84(47.47.47.58/67/67/780780991991<92=:3=:3=:3=:3<92?82>71<73;62:5194084173084184165365354243121/21/5,-5,-3--3--3--3--2.+2.+3/,3/,21,21,21,32-23+23+33133134/45054/65094.94.=6.=6.?6-@7.C9/D:0E;1E;1E=2E=2E=2D<1C:1B90@7.?6-?6/>5.=4/=4/=4/=4/>50?61?61@72R/3R/3^(5^(5T-2T-2?80>7/5<,5<,F6)G7*Y.'Z/([3+]5-k4/p94~67787676|85}96y=5{?7~?8@9„?8„?8~D.~D.ƒ@-‚?,‰<,ˆ;+‹8*‹8*Š7)Š7)…9)…9)z=(z=(t@(t@(ƒ5+ƒ5+˜PD¢ZNƒC7y9-€H;I<|F:}G;I=€J>„K@‡NCŒRGVKtkNxoR‚rY†v]‰{a‘ƒit˜˜|…y‡Ÿ{‚¨„ªƒƒ©‚¥~{|šx‡Žo†nƒŒmƒŒmŽo~ny‰nv†knzbgs[cdRWXFSI=I?3E4,?.&>*+=)*7)(6('/*&/*&*,'*,'(.*(.*+-*+-*-+,-+,0*,0*,0(%:2/B>3IE:NS?]bNcrSixYk„\jƒ[iŠ[oao•dn”cl—bošetŸirgpœgržiw£ry¥ty£uv rušqušqt“qmŒjk„fb{]UlOG^AFB6=9-73'58/58/58/690780891891891::2;;3>;4>;4?<5?<5?<5>;4?:4?:4>93>93=82<71<73;62:72;83;83:72:7285074/63.7/,7/,7/,7/,50,50,50,50,41,41,52+52+33+44,44,44,43/540650761:70;81=90=90?8.?8.A9.B:/D:.F<0H<.I=/G=3G=3G=3G=3E;1D:0A8/@7.@70@70?6/?6/>71>71?82?82=82>93>;4?<5@=6@=6C<2C<2F8/F8/H8+H8+F9(G:)D<'E=(a-"d0%q0*w60…73ˆ:6‹<8‹<8‹B;‰@9>5~;2‚90ƒ:1Š;4Œ=6„@5ƒ?4†=4…<3„;2ƒ:1€<1€<1{=0{=0{=0{=0;0;0ƒ90ƒ90˜-'¥:4Íjeß|w©[QB8ƒOA€L>mN:nO;iS<jT=qU@uYD\I…`MbyKg~P’rY–v]Áb^ÄeaÕdhÙhlÊ{tÍ~w®’|°”~›Ÿ~—›z‹›wˆ˜tŽpŽo‰oŠ‘p€–r~”pt”or’mlŠff„`cxYXmNW]CKQ7GB.@;'A2+@1*:1(8/&00&//%.0%-/$2/(2/(:+(:+(D%*D%*K"*K"*@8%LD1VQ;]XB]dEgnOgySi{UhƒVfTe‡UlŽ\m”_m”_n–aq™držko›hm™hpœkvŸsx¡uxžwtšst–st–ss’pl‹ii„ca|[TnKF`=MD;E<3?6-6906906906908918919:29:2::2;;3>;4?<5@=6@=6@=6?<5A<6A<6@;5?:4>93>93=84=84<94<94<94<94;83:7296185091.91.91.91.72.72.72.72.52-52-52+52+44,44,44,55-540540761872<92=:3?;2@<3@9/@9/B:/C;0E;/F<0I=/J>0H>4H>4H>4G=3F<2D:0A8/@7.B92A81@70@70?82?82@93A:4=82>93>;4@=6A>7B?8E>4E>4G90G90I9,J:-H;*H;*F>)F>)i5*l8-{:4ƒB<’D@—IEšKG›LH›RK•LEˆE<€=4€7.8/‰:3Œ=6„@5ƒ?4†=4…<3„;2ƒ:1€<1;0{=0{=0{=0|>1€<1€<1„:1„:1”)#«@:ã€{ú—’»mc–H>M?zF8lM9mN:iS<jT=qU@vZE‚]J‡bOe|Nk‚T–v]™y`Áb^¾_[ÉX\ÊY]Ë|uÍ~w¯“}²–€œ ™|yŠšvq‘rŒ“r”s‚˜t—sx˜sv–qrlm‹gk€aavW`fLSY?NI5FA-E6/D5.>5,;2)33)22(02'/1&52+52+=.+=.+G(-G(-N%-N%-ME2YQ>c^HhcMfmNmtUj|Vk}Wj…XhƒVe‡UlŽ\n•`p—bq™dtœgqjnšgl˜go›južrw tvœuq—pr”qs•rr‘okŠhi„ca|[TnKGa>TKBKB9E<38;27:17:17:19:2:;3;<4<=5<<4<<4?<5@=6A>7B?8B?8C@9E@:E@:D?9D?9C>8C>8B=7B=7@<3@<3B;3A:2A:2A:2A:2A:2A81@70@70@70>7/>7/=6.=6.<71;60:7096/85.74-74-63,66.66.85.96/;7.=90@9/A:0B:/C;0F<0H>2K?1L@2L@0L@0MA5L@4K?3J>2G=3F<2E;1D:0B90A8/?8.?8.<8/=90=90>:1;4,LE=P?8J92Z;6T50U,&b93a0)d3,e1&a-"e,!l3(s9.u;0G8ŽF7šG9ŸL>£E;›=3=1¢B6¥M?§OA«UD­WF©M>›?09*¡=.˜58˜5845Œ01…73‰;7zA6u<1nD4kA1r<0r<0Œ22Œ22Ÿ%0#.ÏDAìa^ÄDAÔTQÝ|u´SL~I9‰TDcW=g[AbeFcfGhaDhaD}cJ‡mT¤YF·lYêbfßW[ú.Iò&Aÿ!Fÿ%Jÿ:Vÿ<XðUcýbpðuxñvyëz|î}ÏwuÐxvÉ|vÊ}w½w½w´„v³ƒu§yl¦xk¦ohŸha›ZVNJ‹??…99€7>t+2m/2k-0S&#O"M.)Q2-J3-H1+E1*F2+F.*C+'H/+O62VK+aV6da>gdAhpIu}Vr„ZoWi…UlˆXnŽ\r’`t—au˜bwšdx›eq–ms˜ot–qr”ot“sy˜x{˜|y–zy“xsrl†iiƒfg‚a`{ZSnKHc@RL@RL@QK?7:17:17:17:19:2;<4<=5=>6>>6>>6@=6A>7A>7B?8B?8C@9E@:E@:E@:D?9D?9C>8C>8C>8C?6B>5D=5D=5C<4B;3B;3B;3B92A81A81A81@91@91@91@91<71;60:7096/85.85.74-74-66.66.96/96/;7.=90A:0B;1C;0C;0F<0H>2K?1L@2L@0L@0L@4L@4K?3J>2G=3F<2E;1D:0B90B90@9/?8.=90>:1>:1?;2B;3B;3C2+F5.[<7`A<kB<tKEyHA|KD€LAK@†MBTI‘WLVKE6ŒD5–C5™F8?5–8.™9-=1œD6˜@2—A0›E4¢F7£G8­I:³O@¯LO¬ILžBC•9:Š<8‹=9{B7v=2i?/tJ:‚L@zD8…++ˆ..³9DÉOZØMJÛPMÁA>À@=Åd]¸WPzE5‡RBocIfZ@[^?fiJslOpiL~dK„jQ³hU¹n[ßW[ÓKOö*Eõ)Dÿ$Iÿ%Jù1Mù1MàESçLZÕZ]ÔY\Í\^Ð_aÅmkÆnlÀsmÂuo¸|r¹}s²‚t²‚t´†y³…xµ~w²{t´so±pl´hh³gg²ip¤[b“UXOR|OLyLI]>9? L5/H1+F2+J6/N62O73T;7ZA=[P0dY9eb?ifCltMz‚[xŠ`t†\nŠZnŠZm[o]r•_t—at—at—ao”ks˜ow™tv˜s{šz€Ÿ‚Ÿƒ€€šx’wpŠmj„gg‚a_zYSnKIdAVPDVPDUOC6906907:18;2:;3<=5>?7?@8@@8@@8B?8B?8C@9C@9C@9C@9EB;DA:DA:DA:EA8D@7D@7D@7HA7HA7H?6G>5F>3E=2D<1D<1C;0C;0C;0C;0C:1C:1B;1B;1<8/<8/<8/;7.96/85.85.74-96-96-96-:7.<8-=9.A;/B<0C;.D</I=-J>.L?.M@/M@/M@/M?2M?2L>3K=2I=1G;/E;1D:0C;0C;0?;0?;0?;0?;0?<3?<3YC8M7,{*0?EÄ?PÑL]ÙWa×U_›B:D<•L;˜O>¸KFÀSNßEOÛAKŸD1B/¤>/¤>/©9+¥5'¥7(©;,¬E2¢;(›7 9"©<(­@,¶A0¹D3«.4´7=¿BHÄGM½LN·FH–A:ˆ3,{9+x6(~0&3)©.3¸=Bá@RëJ\äG@Ò5.Î:6Ä0,ÂOHÑ^WŒO=”WEugJl^AeeCqqO†mOhJ—cM£oYþT]ùOXú@Nò8Fü3Fÿ6Iÿ4Jû0Fû6J÷2Fò2Gô4Iø2Iõ/Fü-Iÿ1Mÿ7Xÿ8Yÿ;\ÿ=^ÿDcÿFeüIgýJhøIh÷Hg÷EiöDhüClÿFoÿIsÿKuÿb‚ÿZzíWråOjÓXlÙ^r¬R['0Z'$_,)Q>0Q>0:?+6;'4F.AS;YO,aW4d`=ieBouS…c}Œkw†ewiu‹grŠfrŠfvŒfxŽhzhzh€’x†˜~‹‡Ÿ‰“¡™§–š¨›—¥˜’ ‘‰—ˆyŒxpƒofa^wYSnKKfCUVFUVFUVF58/58/6907:1:;3<=5>?7@A9AA9AA9C@9C@9DA:DA:DA:DA:EB;EB;EB;EB;FB9FB9FB9FB9JC9IB8I@7H?6G?4E=2D<1D<1C;0C;0C;0C;0D;2D;2C<2C<2=90=90<8/<8/:7096/85.85.96-96-96-:7.<8->:/A;/B<0D</E=0I=-K?/M@/M@/M@/M@/M?2L>1K=2J<1H<0G;/D:0D:0D<1C;0@<1@<1@<1A=2@=4A>5P:/I3(Š9?­\bÙTeÝXiÚXbÊHR’91“:2ŠA0ŽE4±D?»NIÙ?IÔ:D¤I6¢G4¨B3¨B3®>0¯?1°B3³E6¯H5¨A.¢>'¡=&¨;'¨;'«6%ª5$µ8>·:@¶9?µ8>³BD½LN±\U²]V‰G9|:,~0&Œ>4ÂGLÐUZâASÕ4FÙ<5Ì/(Í95Ê62»HAÌYRš]K“VDj\?tfIttRuuShJƒjL¥q[¶‚l÷MVñGPö<Jõ;Iÿ;Nÿ>Qÿ8Nü1Gÿ?Sþ9Mö6Kõ5Jø2I÷1Hÿ1Mÿ6Rþ2Sÿ3Tû5Vü6Wö;Z÷<[ò?]ó@^óDcòCbò@dò@dø?hûBkÿEoÿGqùTtøSsñ[vìVq×\pàeyÈnwµ[dl96d1.K8*L9+=B.<A-4F.7I1TJ'^T1ea>okHx~\ˆŽlƒ’q|‹jxŽjzly‘mwkwgxŽh”m„™r’¤Š˜ªŸ±›¢´ž¨¶¥¬º©¬º­¨¶©ž¬“¡’€“q„pd}_\uWRmJLgDVWGVWGVWG47.58/58/7:19:2<=5>?7?@8AA9AA9C@9DA:DA:DA:DA:EB;FC<FC<FC:FC:GC:GC:IB8IB8KC8KC8JB5H@3H>2G=1F=.E<-D;,D;,D:.D:.C;.D</D<1D<1@9/@9/=90<8/<8/;7.:5/:5/97+97+;7,;7,>8,@:.C;.D</F=.G>/J?-K@.M@/M@/M@-M@-N>1N>1K=0J</H<0G;/D:.C9-B<0B<0@<0@<0?=1@>2??3@@4i0)p70¼DM×_hóFYê=P×6<Á &£5&¢4%Ž="?$¯>.ºI9Ú<;Õ76§C3§C3­?2¬>1´>4¹C9»G:¼H;ª?-©>,§<*¥:(¬7&°;*º:-»;.ÊG=ÊG=Õ;9Ð64Þ47ç=@èHHëKKÊA9ÐG?ÓPFÖSIàHEÙA>æ39ã06Ö6(Ù9+Í3)Ò8.º:1½=4®_PžO@uP6…`FŒgL…`E SA±dRÞgaämgô?Fï:AÞ>@à@BÖKFØMHÖOK×PLêPRãIKï;Gî:F÷2D÷2Dÿ4Hÿ:Nú<Vù;Uù;Uú<Vû<[ý>]ü@aýAbþDkþDkúDmúDmøEoøEoöEqöEqÿDjÿ>dÿGjÿJmòIfóJgæ]qç^r»Zc™8A]("Z%SB2\K;IM6?C,UH5dWDrkY€ygŠŒ~˜šŒ‘›‡‘†Ž„ˆ•‹Žš‹—‰…Š†™›¥§œ³³§ºº®¿¿·ÁÁ¹ÅÁÀÇÃÂÃÁľ¼¿±³°¤¦£‹—‹y…yh|c^rYRmLNiHRZBRZBS[C47.47.47.58/891:;3;<4<=5??7@@8B?8C@9DA:EB;FC<FC<FC<GD=GD;GD;HD;IE<KD:KD:KC8KC8JB5IA4I?3H>2G>/G>/F=.F=.F<0E;/D</C;.C;0C;0A:0@9/>:1=90<8/<8/;60;60:8,:8,;7,<8-?9-A;/C;.D</G>/H?0K@.LA/M@/M@/M@-M@-N>1N>1K=0J</G;/F:.C9-C9-B<0A;/?;/?;/?=1@>2@@4@@4p70†MFÌT]ÒZcé<Oá4GÓ28Æ%+£5&£5&Ž="Ž="©8(±@0Ñ32Î0/Ÿ;+ <,¦8+¦8+°:0·A7ºF9¹E8ª?-ª?-¦;)¡6$ª5$³>-ÄD7ÈH;»8.ÆC9ÞDBàFDê@Cç=@Ú::Ò22É@8ÕLDÛXN×TJ×?<Í52â/5é6<Ó3%Ü<.Ç-#Ñ7-¶6-´4+»l]ºk\\B‚]C}X=}X=©\J¿r`ÞgaÓ\V÷BIñ<CÞ>@Ü<>ÎC>ÑFAØQMáZVêPRãIKï;Gí9E÷2Dõ0Bü1Eÿ6Jø:Tø:Tø:Tù;Uû<[þ?^ÿCdÿEfø>eù?f÷Aj÷AjõBló@jï>jî=iÿFlý9_û?bÿJm÷NköMjä[oâYmÙxÁ`i†QKp;5M<,K:*DH1MQ:]P=reR„}k”{›¥§™§œ“’’Ÿ•›¨ž¤°¦£¯¥¡§£©Ÿ´¶«ÁøÉɽÎÎÂÒÒÊÑÑÉÓÏÎÓÏÎÎÌÏÈÆɼ¾»¯±®” ”‹kf`t[UpORmLV^FV^FV^F47.47.47.47.67/7809:2:;3==5>>6A>7B?8DA:EB;FC<GD=GD=GD=GD;HE<IE<JF=LE;LE;LD7LD7MC7LB6NB4MA3MA1L@0JA0I@/I@1G>/E=0D</C;.C;.A:0A:0@91@91=90<8/<71;60:8,:8,;7+<8,?9-A;/C<,D=-H?.H?.K@.LA/M@-M@-O@-N?,N>1M=0L</K;.H:-G9,C9-C9-@:.@:.>:.?;/?=1@>2??3@@4‚('¥KJÂRQ²BA¹11º22¸4(·3'¢6¥9˜?•<“?–B šA!–=œ5,ž7.¤5,£4+­81¶A:µC9²@6®B6­A5§;.£7*¯9/¹C9ÄC=Á@:À@#ÃC&Þ4%Ø.õû#$ÿ'+ÿ)-î)#ï*$ß3%à4&ß5&ß5&æ1&æ1&Ò7!Ò7!Í4&Ï6(¿90Â<3ÀbVØzn£fS’UB‘J8 YGÙ\Xßb^ùISï?IøEIñ>BÙA<Ö>9ÄA7Ã@6ÕD?ßNIùDMô?Hÿ3Gÿ3Gþ3Fü1Dó7Eø<Jõ;Pô:Oö8Rö8Rû8Xþ;[ÿ<cÿ>eÿ?lÿ@mÿCqÿCqûEvúDuõEvôDuõKfïE`óId÷Mh÷MhÿUpý_x÷Yrñj{ñj{Ónv»V^†B?s/,n=6NGte`‹|wŸ•“¬¢ ®®°µµ·°µ»©®´°·Áµ¼Æ¾ÀÌ¿ÁÍÄÁÌÈÅÐÖÌ×ÞÔßãØÔçÜØèÜÞæÚÜæÖàæÖàßÓÝÙÍ×ÉÄʼ·½ § Š‘Šr„nfxb[tVXqS[jMZiLZiL47.36-36-36-56.67/780891;;3<<4@=6A>7C@9EB;GD=GD=GD=GD=HE<HE<JF=JF=MF<MF<ME8ME8ND8ND8PD6OC5OC3OC3MD3LC2KB3I@1G?2E=0D</D</B;1A:0A:2@91=90<8/<71<71:8,:8,;7+<8,?9-A;/C<,D=-H?.I@/LA/LA/M@-M@-O@-N?,N>1M=0L</K;.H:-G9,C9-B8,@:.@:.>:.>:.><0?=1??3@@465¹_^ÉYX©98±))µ--±-!³/#¨<"­A'£J( G%šF$™E#šA!–=Ÿ8/¢;2§8/¦7.¯:3¸C<¶D:±?5¨<0¨<0§;.©=0ºD:ÃMCÄC=¸71¹9ÁA$â8)á7(ý%&ý%&ÿ"&ÿ $ó.(ô/)ã7)ã7)á7(ß5&å0%å0%Ù>(Í2Ø?1Ï6(À:1Ä>5¤F:Ìnb­p]–YF›TBµn\åhdÖYUí=GòBLî;?é6:Ô<7Ô<7À=3¹6,Â1,Ç61ô?Hð;Dÿ1Eÿ4Hÿ6Iÿ4Gö:Hú>LüBWûAVú<Vù;Uü9Yý:Zÿ:aÿ;bÿ?lÿ?lþ@nþ@n÷Ar÷AróCtóCtñGbúPkÿUpóIdé?ZûQlÿg€ÿd}êctébsÕpxØs{ºvsªfc\U†UN|§˜“»±¯Äº¸ÂÂÄÇÇÉÃÈοÄÊÅÌÖÆÍ×ËÍÙÏÑÝÚ×âàÝèêàëìâíïäàòçãóçéïãåïßéîÞèèÜæã×áÏÊн武–vˆri{e_xZ\uWbqTapSapS00.11/3315536727838938939:2:;3<>3>@5@B5BD7CE8DF9GI;FH:GH6GH6HJ5IK6LK6ML7MK<IG8ED@GFBJIQKJREDT@?OOF7LC4JA2KB3LD7KC6F>3B:/D=5B;3@93?82>95=84;63:52C84C84@85@85;:8<;9<<<<<<?@;?@;D@5EA6LA/K@.O?(O?(@B4?A3I:5G83N38N38J7;J7;>A:6920=+8E3>A&69I9XH.ÒaQºI9£8&¢7% ;'8$:#£@)ž:#¡=&¬=)­>*³:)°7&²3"²3"Ÿ8'Ÿ8'Ÿ:(¢=+¦A-©D0ªC0¨A.¨=)©>*°;)³>,ÀB3ÄF7Á=0¶2%Ì5*Í6+Ê;+Ì=-Ð<.Ñ=/á6.á6.ñ.,ñ.,ô.+õ/,å8*ä7)Ó>(Ó>(Ü:%Õ3Ì4Ï7"Ä8'À4#Ä@3ÕQDÓHAÙNGñSR÷YXýHMð;@ù4=ÿ:CàDEÞBCÏD?É>9´>2±;/¨?,©@-ÀO?ÄSCÖI@ÒE<é<>ðCEÿ<Fü8BùFLøEKúDPüFRüATø=Pü>XÿD^ÿGkÿBfö=fó:cò>k÷CpùIxüL{ÿNzÿLxðUuíRrÜRiÜRiøWvÿf…ÿXþ?hýQwþRx¿^oÐo€c_tp«Á¥—ÎĺßÕËÚÜÛÛÝÜàÚèâÜêíÕïîÖðöÖîúÚòôâî÷åñðîïñïð÷ôïöóîôðíòîëîèèéããåßáâÜÞÕÑÒÍÉʺº¸¤¤¢‹‰{€yr|qpzo~…sy€nv}k//-00.11/3315616727827829:2:;3;=2=?4?A4AC6BD7CE8FH:FH:GH6HI7HJ5JL7LK6ML7KI:KI:KJFQPLWV^YX`UTdQP`RI:MD5H?0G>/G?2H@3F>3C;0C<4A:2?82>71=84>95<74;63=2.>3/=52>63:97<;9<<<===?@;?@;D@5EA6LA/K@.O?(O?(=?1=?1H94H94N38L16F37E26<?89<55B08E3=@%=@%VF,gW=¼K;«:*2  5# ;'8$œ9"¢?(Ÿ;$£?(®?+¯@,µ<+³:)¶7&¶7&¢;*¡:) ;)¢=+¥@,§B.¨A.§@-ª?+¦;'±<*¼G5ÅG8¾@1»7*»7*Í6+Í6+Ê;+Ì=-Ð<.Ñ=/á6.á6.ñ.,ñ.,ô.+ô.+ã6(ã6(Ñ<&Ñ<&Ý;&Ø6!Ñ9$Ô<'Ç;*À4#¿;.ËG:ÐE>ÕJCëMLðRQùDIð;@û6?ÿ=FàDEÞBCÎC>Ç<7³=1¯9-¦=*§>+µD4¿N>ÙLCÖI@é<>ì?Aÿ<Fÿ=G÷DJöCIúDPüFRýBUù>Qû=WÿB\ÿFjÿCgù@iø?h÷CpûGtûKzüL{ÿKwÿGsëPpîSsê`wícz÷VuðOnÿBkÿAjðDjì@fÂarÅduiMI–zv±•‡Í±£ÞÔÊìâØçéèçéèëåóéãñùáûúâüÿâúÿåýÿíùÿðüúøùüúûüùôûøóúöó÷óðõïïñëëîèêìæèãßàÚÖ×ÇÇŲ²°› ™Ž“Œ†…†…Ž•ƒ‰~†{--+..,/0+12-23.4505606718919:2:<1<>3>@3@B5BD7BD7IG8IG8JI7JI7LI6MJ7NK:NK:KHANKDSRX_^dgh}lm‚il‹fiˆ`XmXPeNGWG@PD>JD>JB=C?:@@<=>:;;83:72=90>:1>:.=9-74+85,:7.<90=;/><0></></E?1E?1J>.K?/O?/N>.P=,P=,5?&6@';<,<=-@91>7/:51940@72C:5U31R0.m!%v*.¡/9°>H¨:) 2!2 £8&¢<&ž8"œ8!¡=&¥;%¨>(²?,´A.¼=,»<+¿:+¿:+¯>.¬;+ª9)ª9)«:*­<,­<*­<*´<+¯7&»=.ÉK<ÌG8»6'½1$Ç;.Ô4(Õ5)Ô8+Õ9,Ù9+Ú:,æ3,æ3,ô.+ô.+ò/)ñ.(á6%ß4#Ï:"Î9!à7$Ý4!Ú9'Þ=+Ò<.Ë5'Å8.Í@6Æ;4Ê?8ØD@àLHèJGäFCçB@éDBÖF>ÔD<ÉC8Ã=2³;-¯7)©:)ª;*®6(¾F8×LE×LEã?@ä@AöAHýHOòAGòAG÷CLüHQþEUù@Pú>WþB[ÿEfÿDeýDmþEnþIvÿKxþM{ýLzÿ?rÿAtýIpÿKrûZyÿ`úVqéE`øOlÿVsÐEZÑF[Í…Ãw{[H:‘~p¶ŠÛ¯¤òÚÐÿéß÷ññûõõöóþðíøûêýüëþÿêþÿíÿÿóüÿöÿüüúýýûÿýøÿü÷ÿúöýøôüóôúñòúïóùîòïæçæÝÞÓÏÌÀ¼¹¬¯¦¢¥œ£—£—¢ª›œ¤•™¡’--+--+./*/0+01,23.34.45/7808919;0;=2=?2?A4@B5AC6HF7IG8JI7KJ8MJ7NK8OL;OL;KHASPI]\bnmsyz‚—‚¡}€Ÿ}uŠsk€f_o[TdSMYMGSFAGB=CC?@?;<;83961;7.<8/<8,<8,:7.;8/<90>;2><0><0=;.=;.E?1E?1J>.K?/O?/N>.P=,P=,7A(7A(<=-<=-@91?80=84=84@72C:5S1/P.,q%)37§5?­;E¦8'¤6%¥:(©>,¥?)Ÿ9#9"¡=&¤:$¨>(²?,´A.½>-½>-Â=.Ã>/´C3°?/¬;+«:*«:*¬;+¬;)¬;)³;*µ=,ÀB3ÆH9Ä?0¹4%¿3&È</Õ5)Ö6*Ô8+Ö:-Ú:,Ú:,æ3,æ3,ô.+ô.+ñ.(ð-'ß4#Ý2!Ì7Ë6Ú1Ù0×6$Ü;)Ô>0Ð:,Ë>4ÑD:Á6/Á6/Í95ØD@èJGçIFå@>Ý86Ð@8Ï?7Å?4À:/²:,°8*«<+­>-«3%¹A3ÑF?ÔIBâ>?ä@AøCJÿKRï>Dï>DöBKüHQÿGWüCSû?XýAZþBcÿCdþEnÿIrÿMzÿN{þM{üKyÿ<oÿGzÿRyýIpïNmøWvûWrñMhòIfóJgË@Uè]r،UB4eRD¤xmФ™îÖÌÿèÞùóóÿûûþûÿõòýýìÿýìÿÿìÿÿíÿÿóüÿôýûûùûûùÿýøÿü÷ÿúöýøôþõöýôõýòöýòöõìíëâãÙÕÒÈÄÁ¸»²²µ¬¯µ©°¶ªµ½®®¶§ª²£10+0/*0/*0/*0/*21,33+44,77/88099/;;1==3??5@@4AA5JD4KE5NG5PI7QJ8RK9QK?QK?NJKXTUcdxwxŒƒ†¯Œ¸‹’Æ‹’ÆŒ‹Çƒ‚¾yv­nk¢ed[Z†QPpJIiHGYCBT=<A87<76165086*75)2713828:/9;0>;*?<+B<$B<$I?&I?&J?+K@,JA2I@1I?5I?5S<6Q:4H92E6/<92;813=43=47=36<2J1*N5.~45CD¬:B¨6>§<*¨=+©@+«B-¨?*¤;&¥;%¨>(ª7$­:'¸;)º=+Ã9,Ä:-Ê:/Ì<1Ä@4À<0¼8,º6*º6*»7+»7*º6)½5)È@4ÏA5Æ8,Ã/%Æ2(Í6+Í6+á0(â1)á3(â4)è3*è3*ï0(ï0(õ.)õ.)ð/&ï.%Þ4#Ü2!Ì7Ê5×0Ö/Õ2!Ù6%Ö8,×9-Ó?5ØD:ÔE=Î?7Å<2ÊA7ÑMAÕQEËI<¿=0Á=.Á=.¼=,º;*´9)´9)¶<-¸>/¸8-¼<1É>9ÎC>ØBCÜFGéJNðQUì?Cì?CòCJùJQýKYùGUøBXùCYøA_úCaûFiÿLoÿNwÿOxÿMwýJtÿErÿO|ÿRyüHoõJjþSsûWoòNfäK]áHZÛ\eÿ“œÿµ¶ø˜™HBs,&«h`Õ’ŠóÆÁÿÝØÿðîÿù÷ÿýÿøöûú÷ÿú÷ÿþ÷ÿþ÷ÿþúûÿûüüýøýþùÿûõÿúôÿùöÿøõÿö÷ÿõöÿóõþòôüòñòèçäÜÙ×ÏÌÍÊÁÊǾÉ˽Ê̾ÅÏǼƾ¶À¸54/43.21,10+10+10+33+44,66.66.88.::0<<2>>4??3@@4IC3KE5OH6QJ8SL:SL:RL@QK?OKL[WXij~~“‹Ž·–™Â—žÒ˜ŸÓ™˜Ô“’ÎŽ‹Â‡„»€«wv¢mlŒfe…]\nUTfLKPCBG>=8:94:8,97+27127157,68-<9(?<+D>&E?'I?&I?&J?+K@,JA2I@1I?5I?5Q:4O82G81D5.96/85./90/906<217-F-&S:3ˆ>?‘GH©7?¢08§<*¨=+¨?*©@+¨?*¨?*ª@*¬B,ª7$­:'¸;)º=+Ã9,Ä:-Ê:/Ì<1ÅA5Â>2¿;/½9-¾:.¾:.½9,¼8+Á9-ÍE9ÏA5À2&Á-#Í9/Ó<1Ì5*â1)ã2*â4)ã5*è3*è3*ï0(ï0(õ.)õ.)ð/&ï.%Þ4#Ü2!Ì7Ë6Û4"Ú3!Ö3"Ö3"Ó5)Õ7+Ñ=3Ó?5èYQáRJÒI?ËB8ÊF:ÍI=ÇE8¿=0½9*½9*º;*¸9(´9)¶;+¹?0¼B3ÁA6¾>3Æ;6ÌA<ÙCDÝGHçHLëLPí@Dì?CñBIùJQþLZüJXûE[üF\÷@^ùB`úEhÿJmÿMvÿOxÿNxþKuÿKxÿKxÿLsÿLsÿVvÿ\|ùUmèD\ñXjêQcèirÿ’›ñ‘’憇°icšSM®kcЅ꽸ÿÚÕÿðîÿöôýûÿûùþüùÿüùÿÿøÿÿøÿþúûþúûûü÷ûü÷ÿûõÿûõÿûøÿú÷ÿøùÿõöýñóüðò÷íìðæååÝÚÞÖÓÙÖÍÜÙÐÜÞÐÞàÒÙãÛÎØÐÄÎÆ::288055-33+22*22*33)33)55+66,77-99/;;1==3>>4??5KB1MD3RG5UJ8VJ:WK;TJATJAPJT]Wakk£”Ë™ ×œ¦íŸ©ðž£ôšŸð—›å“—ᑕՌІ‰¾€ƒ¸xz¡np—ccVVrNM_HGYECPB@M<>M:<K;:@98><90=:1C>*D?+CA*CA*AB0BC1?E;>D:;DA;DAA;IC=KCANECP@GM@GM>HG=GFEH?;>5L9*]J;‚O>‚O>‰A2…=.§<(¨=)©>*©>*¬?*®A,±>+°=*³6$¶9'Á7*Â8+Ê6*Ë7+Ò8.Ô:0Ï:3Í81Ì70Ì70Ï81Ï81Î7.Ì5,Ô<1Õ=2Ô7.Í0'Ñ3(Ù;0Û:0Õ4*è0&è0&ì0'í1(ó.(ó.(ö,(õ+'÷.'÷.'í3'ì2&Ü7$Ú5"Ï9!Î8 Ò:%Ñ9$Ï6$Î5#Ñ5(Ó7*Ñ7-Ñ7-ãNGêUNäZPÛQGÉI>ÃC8»C5·?1µ=$µ=$¶<%µ;$¸9&¹:'À</Ä@3ÉC:Å?6É@:ÐGAÓIGÒHFÓIG×MKèDEæBCêDHóMQúPYùOXøL\øL\õD^õD^÷EeûIiÿNrÿQuÿPwÿOvëZwéXuðWsô[wÿ^vþ\tôSeëJ\õZhñVdåOZó]háKWèR^ëP^êO]·hdÍ~zã©¥ÿÍÉÿêçÿîëû÷öÿüûöÿþõþý÷ýýöüüøú÷øú÷ùøóùøóÿúôÿûõÿûøÿûøÿööþòòûííøêêïáàêÜÛâÙÒâÙÒåßÓíçÛïîÜòñßéôðÛæâÏÚÖ==5;;388044,22*22*33)33)44*55+66,88.::0<<2>>4??5KB1MD3RG5UJ8WK;WK;TJATJAPJT]WallŽƒƒ¥–ͤۢ¬ó¦°÷ª¯ÿ¥ªû¢¦ðŸ£íŸ£ãœ à˜›Ð”—Ì‘“º‡‰°zz–jj†`_qWVhSQ^PN[KM\GIXDCI?>D>;2=:1A<(B=)CA*CA*AB0BC1?E;>D:;DA;DAGAOLFTSQ^\Zg\ci]dj[edZdc[^UORI_L=o\MZI„Q@‰A2ŠB3«@,«@,«@,«@,¯B-°C.°=*¬9&µ8&·:(Â8+Ã9,Ë7+Ì8,Ó9/Õ;1Î92Í81Í81Î92Ò;4Ò;4Ð90Î7.ÛC8Ñ9.Ï2)Ô7.Û=2Û=2Ú9/Ø7-è0&é1'í1(í1(ó.(ó.(ö,(õ+'÷.'÷.'í3'ì2&Ý8%Û6#Ð:"Ï9!Ï7"Ï7"Ï6$Î5#Ò6)Ô8+Ñ7-Î4*É4-âMFðf\ëaWÐPEÁA6µ=/²:,¶>%¶>%·=&¶<%¸9&¹:'À</Ã?2ÉC:ÈB9ÎE?ÕLFÕKIÏECÎDBÒHFéEFçCDêDHòLPûQZúPYúN^úN^÷F`öE_÷EeûIiÿNrÿQuÿRyÿRyéXuí\yù`|úa}ùWoðNfòQcûZlú_mÿftéS^ðZeëUaò\hìQ_êO]±b^ÀqmÔš–þÄÀÿäáÿéæøôóÿýüùÿÿùÿÿúÿÿùÿÿûýúúüùûúõûúõü÷ñþùóÿùöÿùöÿôôúîîöèèòääêÜÛçÙØâÙÒæÝÖîèÜøòæüûéÿÿíòýùãîêÔßÛ@>2@>2><0<:.:8,86*74+63*52)52)52)74+96-=:1@=4B?6I@/LC2RG5TI7VI8WJ9YLD[NFPHSXP[ddˆ}}¡‰“Ñ– Þšªø¡±ÿ¨´þ¨´þª´ü©³û©²÷¦¯ô§¬î¥ªìŸ¡Þ—™ÖŒÅ~·sp¥gd™\ZŒUS…YPYPVOqMFhC?N=9H<<:??=<?4?B7?G<>F;9B?:C@=FKAJO=XuMh…aq‹euzr‰wŽh{ƒ\o™S]™S]ªPO«QP­I:¢>/ž8"Ÿ9#©<(ª=)­>*¯@,´?-´?-¹<*¸;)½5'¾6(Ç5(É7*Ò5,Õ8/Ú7.Û8/Ø61Ú83Ú83Ù72Ù6/Ø5.Û81Ý:3çC:à<3Ù6-â?6ý[Pÿmbÿ]RãA6è0&ê2(ó0*ò/)ö)&ô'$ø(&ú*(ô/)ô/)è3(å0%Õ2#Ó0!Ñ6$Ô9'Å=%Æ>&Ê<&Ë='Ð:)Ð:)Ñ7+Ñ7+Ú@6Ð6,ÜGA÷b\äWPÍ@9Æ?9¹2,µ;#¶<$º<%º<%½:(¾;)Ã;-Å=/Æ=3ÌC9ÕPIÝXQÐQJ¿@9½@:ÈKEáGEàFDåKKëQQîRVëOSìLVîNX÷RcõPaôLeóKdúMkÿRpÿStÿQrïZwíXuõXsù\wÿ\tÿZrýXiüWhÿeqùYeý`kü_jëIVêHUüTeùQb´oh­haÉ‹ì²®õÓÑÿçåøðíýõòóþú÷ÿþõÿÿòÿü÷ýùùÿûþú÷ùõòýúóþûôÿ÷ôüôñþôòþôòõçæçÙØäÖÓßÑÎá×ÍðæÜûôâþ÷åþüçÿÿìõþûçðíÚãàB@4A?3?=1><0<:.:8,85,74+52)52)52)74+96-<90?<3A>5H?.KB1QF4SH6UH7VI8XKCYLDRJUXP[bb†zzž†Î“Û˜¨öŸ¯ý©µÿª¶ÿ­·ÿ®¸ÿ®·ü­¶û¯´ö®³õ¨ªç¡£à—˜Ð‹ŒÄ~³ur§ig™b`’`W†`W†]VxVOqNJYFBQBB@AA?;>3@C8AI>?G<9B?<EBFOTQZ_Sn‹a|™t„žu…Ÿ‰˜Œ„››t‡h{£]g¤^h°VU¨NM¨D5£?0¤>(¦@*¥8$¦9%¨9%©:&®9'®9'´7%´7%»3%¾6(É7*Î</Ù<3Ú=4ß<3Þ;2ß=8Þ<7Ý;6ß=8äA:çD=æC<äA:ä@7åA8â?6Û8/Ó1&×5*êH=þ\Qö>4í5+ì)#ì)#ù,)ý0-ü,*ø(&ö1+÷2,ì7,é4)Ù6'Õ2#Ð5#Ñ6$Ä<$Å=%É;%É;%Î8'Í7&Î4(Î4(Ó9/Ï5+Ò=7åPJãVOÚMFÉB<¶/)·=%·=%»=&º<%½:(½:(Á9+Â:,Æ=3ËB8ÓNGÜWPÑRKÂC<¾A;ÆICâHFáGEåKKìRRîRVëOSìLVíMWùTeùTeúRkúRkþQoÿSqÿRsÿRsæQnìWtú]xþa|ÿ\tüVnùTeøSdøXdôT`ú]hú]hñO\öTaÿWhòJ[«f_žYR¸~zߥ¡ëÉÇÿÞÜóëèýõòòýùöÿýôÿþòÿü÷ýùùÿûÿûøû÷ôüùòüùòþöóüôñÿõóþôò÷éèêÜÛå×ÔÞÐÍßÕËïåÛüõãÿøæþüçÿÿìõþûçðíÛäáEA5D@4C?3A=1?;/=9-;7,;7,73(73(73*84+:6-<8/?:4@;5E?1HB4NE4PG6SF5UH7WI>YK@UKSYOW_^~vu•ŠÅ™Ô”¤ïœ¬÷ª´ù«µú®¸ý°ºÿ²»ÿ²»ÿ³ºÿ²¹ÿ®²û¨¬õ ¢ì–˜âŒØ€ÌwtÁol¹j_£g\ bZ“]UŽSSwKKoCDV=>P86;?=BO?@O?@W:>`CGwRY‡bi§i˜±s¢¾w¡¼uŸÉm’ÇkÓZyÈOnÒ@UØF[ÚEKÍ8>º6)º6)±?%¯=#®;(®;(²:)³;*¸;)º=+À;,Á<-Å6(È9+Ô:0Ù?5á>5á>5â;3à91Û81Ø5.Ø3-Þ93èA9ìE=éB:ã<4â;2Û4+×5(Ù7*Ò2$Ë+Ò6'åI:õK<íC4î3,ê/(ø**ú,,û*-ù(+ë+(í-*ã5.â4-Ù5+Ö2(Ô2'Ô2'Ê9&Ê9&Ì9'Î;)Ñ:)Ñ:)Ô8+Ô8+Ð4(Ø<0Ó:4Ô;5æNMïWVÙEEÄ00À;(À;(¿:'¿:'Á9)À8(À8*¿7)Ä>2Æ@4ÎL?×UHÏSGÃG;¾D7ÂH;ØKB×JAÛNGáTMãUSßQOßNQàORðXdó[gú[mú[müVnøRjúPküRmÿBhÿKqÿWvÿWvÿWnüSjúWhþ[l÷[höZgñdlïbjÜegãlnÕrmÃ`[eYxPD–nfÀ˜Û¹·óÑÏðààÿòòôúöøþúóÿýòÿüøþüúÿþÿûýý÷ùùúòøùñú÷ðú÷ðÿ÷ôÿ÷ô÷îéíäßæÜÓÜÒÉÜÕÅìåÕü÷áÿûåÿýäÿÿæõüõéðéÞåÞHD8GC7FB6D@4B>2@<0?;0>:/:6+95*84+95,:6-<8/>93?:4D>0GA3LC2NE4RE4SF5UG<WI>VLTXNV[Zzpo|…ÀŒ•Ð‘¡ì™©ô¦°õ¨²÷«µú­·ü°¹þ°¹þ±¸ÿ±¸ÿ®²ûª®÷¤¦ðŸé–•áŒ‹×‚Ì|yÆwl°pe©g_˜aY’XX|PPtFGY>?Q:8=?=BO?@TDEdGKqTXˆcj•pw®pŸ³u¤¼uŸ¶o™¿cˆ¸\ÃJi¸?^Å3HÓAVÛFLÐ;A¿;.Ã?2¶D*­;!ª7$ª7$­5$®6%µ8&¸;)À;,Â=.ÐA3ÑB4Ù?5Ú@6ß<3Ü90Ü5-Ú3+Ò/(Ð-&Ó.(Ø3-à91â;3ß80Û4,Ü5,Ñ*!Ì*Ø6)áA3Ý=/Ð4%É-íC4óI:ÿE>ø=6÷))ñ##ö%(ý,/î.+î.+á3,ß1*Ö2(Ô0&Ò0%Ò0%Ì;(Í<)Ð=+Ò?-×@/ØA0Û?2Û?2Ñ5)èL@ãJDÎ5/ßGFòZYÞJJÕAAÂ=*Á<)À;(¿:'Â:*Á9)À8*¿7)Á;/Â<0ÈF9ÐNAËOCÃG;½C6½C6ÓF=ÒE<ÖIBÝPIÞPNÛMKÚILÜKNíUaó[gþ_qÿ`rýWoôNfõKfùOjÿIoÿNtÿRqÿNmûRiÿXoÿbsÿgxÿfsýanñdlðckÞgiÝfhËhcÃ`[ˆ`TlD8ƒ[S®†~̪¨èÆÄêÚÚÿððòøôöüøòÿüñÿûøþüûÿÿÿüþÿùûúûóùúòûøñüùòÿú÷ÿú÷ýôïöíèëáØßÕÌÜÕÅíæÖýøâÿýçÿýäÿþåóúóèïèàçàKH7JG6IF7GD5EB3C@1B>2A=1<8-<8-;7.:6-;60<71>93?:4A?2DB5JE2LG4PE1QF2VF6WG7XLLXLLXVlnl‚z‚³‹“ÄŸà˜§è§­÷¨®øª°ú¬²ü®´þ®´þ¯³ý¯³ýª®ø¨¬ö£§ñŸ£í™ç‘•ß‰×ƒ‡Ñ€Æxw½imª`d¡[a‘TZŠTQpLIh^CV^CVz<G‚DO©EMµQYÎRZÒV^ðHióKlêPhåKcÙHWÑ@OÌ6?Ä.7Ø7<äCHåGDÚ<9È@2ÎF8½K3³A)·<,·<,»<+½>-Ä?0ÇB3ÑC5ÓE7ÚC8ÙB7Û=2Ù;0Ú6-Ø4+Ù2)Ù2)Ó2(Õ4*Ù6-Û8/Ü8.Û7-Ü5,Ü5,Ò0#Ø6)Õ8)Ï2#Ê3 Ñ:'Ñ>*Ï<(Ô=,ßH7÷I@öH?ü46ó+-ô),ø-0ñ86î53Þ50Ú1,Õ0,Õ0,Ú.,Û/-è50è50å9/æ:0â<.â<.Û>/Û>/Ï7*ïWJöaZÐ;4Ï;9äPNÛFHäOQÏ<2Ë8.Ç7,Æ6+Ä:-Å;.À<-¾:+º;*»<+¿B0ÅH6ÆI7ÂE3½@.¼?-ÇG:ÆF9ÊJ?ÑQFÓRLÐOIÑMKÓOMæ[`ë`eüfrÿiuü]oïPbòLbøRhÿQrÿPqôUkñRhêakôkuøluógpüdqõ]jè`jïgqÐxvÁig—m]˜n^rmYRM9kWL‘}r½žœßÀ¾ëÕ×ÿëí÷öôûúøöÿþõþýûüþþÿÿÿûÿÿ÷ÿùÿõ÷ýóùüóûþõÿÿøÿþ÷ÿùñþ÷ïñéÞäÜÑàÛÈïê×üúáÿþåþÿàþÿàõùëìðâæêÜNK:NK:LI:JG8HE6FC4EA5D@4@<1?;0=90<8/<71=82>93?:4B@3DB5JE2LG4PE1PE1UE5WG7WKKVJJVTjkiy²Š’Þߖ¥æ¦¬ö§­÷©¯ù«±û¬²ü«±û­±û¬°ú¨¬ö¦ªô£§ñ¡¥ïž¢ìšžè•™ã‘•ß’‘׉ˆÎ{¼sw´nt¤ioŸkh‡da€z_rv[nŽP[“U`·S[¾ZbÎRZËOWå=^æ>_ÝC[ÜBZÓBQÎ=LÌ6?È2;çFKèGLßA>Õ74Å=/ËC5¼J2¶D,ÀE5ÀE5ÄE4ÅF5ËF7ÍH9ÕG9ÖH:Õ>3Ó<1Õ7,Ó5*Ö2)×3*Û4+Ü5,Ù8.Ü;1ß<3ß<3Ü8.Ù5+Û4+Ü5,Ñ/"Ü:-Ú=.Î1"Å.Î7$Ð=)Ì9%Ï8'Ñ:)å7.î@7ÿ=?ÿ<>þ36ö+.æ-+ã*(Ô+&Ô+&Õ0,Ú51ä86æ:8ì94ì94ç;1å9/Þ8*Ü6(Ó6'Ò5&Í5(çOBÿkdÛF?È42ÖB@Ó>@êUWÖC9Ð=3È8-Æ6+Ä:-Æ</Á=.À<-¹:)»<+½@.¿B0¿B0½@.»>,º=+ÃC6ÃC6ÈH=ÏODÒQKÐOIÑMKÓOMé^cíbgýgsÿnzÿcuôUgöPfüVlÿRsÿPqõVl÷Xnôkuüs}ôhqâV_ö^kö^kêblönx㋉Õ}{¡wgŸuermYRM9fRG„pe²“‘ݾ¼ëÕ×ýçé÷öôûúøöÿþõþýûüþþÿÿÿúÿÿ÷ÿûÿ÷øþôùüóýÿ÷ÿÿøÿþ÷ÿüôÿüôúòçíåÚéäÑôïÜþüãÿýäýþßÿÿáöúìðôæìðâQN=PM<NK:MJ9KH9IF7GC7FB6C?4B>3@<3>:1>93>93?:4@;5?A6BD9IF5JG6PE/PE/UF3WH5UJDSHBTQbkhyz«‹’¼ž×•¤Ý¥¦ù¦§ú¨©üª«þ¬­ý¬­ý«®ûª­ú§«ô¥©ò¡¨ì §ë ¨éŸ§èœ¥æš£ä•žß™Ú‰•Ñ„̽}‰¹…£{Ÿ–i€’e|·Q_¸R`âENãFOø9@õ6=áA1áA1ÑK2ÑK2¿Q0»M,»H+¹F)áVCØM:Ü92Ø5.Û64Ý86Ø64Ó1/»<+»<+¾:+¾:+Ã7*Â6)Å3&Ä2%Î4(Î4(Ó2(Ó2(×3)Ø4*Ú6,Û7-Ü>3Û=2Û;/Ú:.Ú8-Ø6+×5(Õ3&Ô4&Ó3%Í4"Ï6$Î=(Ð?*Æ:!¾2Å:'Ã8%Ö/&ß8/ü:;ÿ?@ÿ8=ø16æ/1â+-Ô/-Õ0.Ü44á99é9<ê:=þ-2þ-2õ/.ô.-ä2(á/%Ó3#Ñ1!Å4#Ï>-økaâUKÆ84ÏA=Ê;=áRTæIDÞA<Ð92Ë4-Å8.Ç:0À>.¾<,·<*º?-»A,¹?*º;(º;(½<'¾=(¹?0¹?0¾D7ÆL?ÊPEÉODÊMGÌOIæabçbc÷gpÿpyÿhxö[köUgü[mñ`qñ`qÙknÜnqÝ‚}拆éwwÓaaûcrÿkzöatùdwï•—÷Ÿ¹™Š¨ˆy^pVBT:ZTFpj\§‹ŠÛ¿¾ðÖÙûáäýô÷ÿøûúþÿøüÿüûÿÿþÿÿùÿÿõÿøÿ÷ôþóöüòûÿ÷ÿÿøüýõÿüóÿÿöÿûïôðäðîÙøöáþþâýýáüýÝÿÿáýþî÷øèõöæRO>QN=PM<NK:LI:JG8HD8HD8EA6C?4A=4@<3?:4?:4@;5@;5@B7BD9IF5JG6PE/QF0UF3WH5SHBRGASPajgxz«Œ“½ž×•¤ÝŸ ó¡¢õ¤¥ø¦§ú¨©ù©ªú©¬ù¨«ø¦ªó¤¨ñ §ë §ë¡©ê¢ªë¡ªë ©ê— á–Ÿà” Ü’žÚ‘͙ɖ´’Œ°—j•h»Uc¸R`Ý@IÝ@Iõ6=õ6=ãC3áA1ÐJ1ÐJ1½O.¹K*¸E(¸E(àUBÔI6Ý:3â?8éDBæA?Û97Õ31ÅF5ÅF5ÇC4ÅA2É=0Å9,Å3&Ã1$Ê0$Ë1%Ò1'Õ4*Ø4*Ù5+Ù5+Ù5+áC8Û=2×7+×7+Û9.Ü:/Ø6)Ó1$Ø8*Ð0"Ê1Ð7%Ë:%Å4Æ:!ÐD+Ã8%Æ;(Û4+Ü5,ð./ô23ý6;ÿ;@ÿKMýFHêECæA?å==â::â25Þ.1ù(-ù(-ó-,ó-,å3)ä2(×7'Ö6&Ã2!¿.ñdZê]SÎ@<ÓEAÉ:<ÝNPîQLãFAÓ<5Ì5.Ä7-Æ9/¾<,½;+¸=+¼A/¼B-¸>)·8%·8%½<'¿>)²8)²8)¸>1ÁG:ÅK@ÄJ?ÅHBÈKEä_`ä_`óclþnwÿgwö[köUgü[móbsôctÚloÝorß„í’ö„„ärrÿkzÿw†õ`sçReé‘ÿ¯±Ï¯ ±‘‚ZlRAS9WQCicU¡…„Û¿¾ñ×ÚøÞáþõøÿùüúþÿøüÿüûÿþýÿÿøÿÿôþøÿ÷òüñõûñùÿõýþöúûóþûòÿÿöÿÿóùõéöôßüúåÿÿãüüàüýÝÿÿáÿÿñüýíúûëXO@WN?VM>UL=TK<RI:QH9QH9LC4LC4JA2I@1H?0G>/G>/H?0CC9DD:IF5KH7QI2RJ3SK4SK4UNFTMEVUgji{y}­ŠŽ¾˜Û–Ÿâª ÷©Ÿö¥ þ¥ þŸ¤ÿ¡¦ÿŸ«ÿ ¬ÿž­òœ«ðŸ©ç ªè©©ï««ñ¯¨ø®§÷ž©û™¤ö•¡Û“ŸÙ®¡½®¡½Ê~ŠµiuÕBLÕBLï7Cï7Cæ;Cæ;CÓDFÓDFâ;Cá:BÙEEÌ88ÊC?ÊC?¾/+ÚKGìFJéCGî;Aì9?ä;>ã:=Ö>;Ô<9ÌA:È=6ÈC:ÑLCÉK=»=/³8)¶;,º8*»9+Å5,Å5,Ð.)Ò0+Ü0.ß31èA1à9)Ý0 ß2"è7'ë:*à7$Ù0Î4Í3Ç5Ç5É3$Ê4%Ñ3(Ò4)Í/&Ï1(Í7)Î8*Ê9&Ê9&Ò7#Ó8$à2'ã5*ï31î20í,1ë*/é,3ë.5ö.1ó+.ë.*ì/+å7,ä6+Õ8%Ñ4!À/Ã2æYHè[JÊ<2ÝOEÄ3.ÙHCÝQP×KJÑC?Ê<8Ç7.Æ6-È9)Ê;+Ç<)Å:'¾:%½9$¹<(º=)µ>*´=)±9+´<.¸>/¹?0½?0½?0Â@2ÃA3ïk_ôpdèc\óng÷qnèb_ðjiútsÿjzÿeuéhlådhìddòjjølkølküxvÿñ]kùesÏjrÿ¤¬¡³›}w]sLF\5MQ6lpU¥•ˆÈ¸«êÕÒÿîëÿôôÿôôù÷øûùúúþÿüÿÿûÿÿúþÿçÿîáþèãúæéÿì÷ÿòøÿóýþðüýïÿüìÿûëÿúèÿøæýøâýøâûùàüúáúýöýÿùþÿúXO@XO@WN?VM>TK<SJ;RI:RI:NE6MD5LC4JA2I@1I@1I@1I@1DD:EE;JG6LI8RJ3SK4SK4SK4UNFUNFVUgji{x|¬‡‹»Œ•Ø’›Þ¤šñ¤šñ ›ù¡œú¢ÿŸ¤ÿžªþ ¬ÿž­òœ«ðž¨æ§å¤¤ê¤¤ê§ ð¦Ÿïœ§ùš¥÷—£Ý” Úª¹¤—³¿sª^jÕBLÕBLï7Cï7Cæ;Cæ;CÓDFÓDFá:BÞ7?×CCÎ::ÊC?Ç@<Á2.áRNèBFæ@Dì9?é6<à7:ß69Ò:7Ñ96ÐE>Ç<5Â=4ÌG>ËM?ÁC5¶;,´9*¹7)º8*Å5,Æ6-Ó1,Õ3.à42ä86å>.á:*á4$á4$å4$å4$Ý4!Ú1Ò8 Ñ7É7 Ê8!Ï9*Ï9*Ò4)Ð2'Ò4+Ó5,Ï9+Í7)Ç6#Æ5"Í2Ï4 Ý/$Þ0%é-+é-+ë*/ë*/é,3ê-4ð(+ò*-ì/+ì/+á3(à2'Ô7$Ô7$Ñ@+º)ÒE4Í@/ÕG=çYOÔC>ÔC>âVUÞRQÙKGÑC?Í=4É90Ç8(Ç8(Ç<)Å:'¿;&¿;&»>*¼?+·@,¶?+±9+³;-·=.¸>/»=.¼>/Â@2ÄB4ìh\ònbæaZðkdõolça^ðjiûutÿm}ÿk{îmqãbfä\\ëccúnmÿvuúvtÿ{yìXfó_mÍhpÿŸ§š¬”t†n]sLKa:SW<quZ¬œÔÄ·ôßÜÿòïÿøøÿööúøùûùúùýþúþÿùýþøüýéÿðâÿéãúæèÿëõÿðöÿñýþðþÿñÿüìÿüìÿúèýöäøóÝ÷òÜ÷õÜúøßöùòùüõûþ÷YPAYPAXO@WN?VM>UL=TK<TK<PG8OF7NE6MD5LC4LC4LC4LC4GE9HF:MH5OJ7RJ3SK4VK5VK5VMDVMDYVglizx{¦…ˆ³ˆ‘ÌŽ—Ò™˜Ú™˜Úš™åœ›çšŸð¢óž§ò ©ôŸªè¨æš¥Ý˜£Û›¡ßš Þ››á™™ß™™×ššØ´Â±Š¿ÓyŸÉo•ÔSgÄCW×BF×BFÜ@AÜ@Aß>Cß>Câ<Fâ<FÞ=B×6;ÑA@Ï?>ÇC>À<7Ã83åZUâ?Bâ?Bç:>ä7;Ø88Õ55Ê;3Ë<4ÒH>Å;1»7*ÅA4ÊL=ÅG8»>,µ8&¹5&»7(È6)Ê8+×4-Ú70æ95é<8Õ5)Ö6*Û4+Ü5,Ý5*Ý5*×<*Ø=+Á6!¿4µ7!¶8"»9+»9+º4)·1&è<8ç;7Ü>2×9-É;'Æ8$Æ8 Ç9!Ð7%Î5#Ô0$Ô0$×0*Ø1+Õ2-Ô1,Ö/'Ú3+Ù9-Ø8,Î7$Ì5"Ë:%Ï>)ÑC/À2çSEÏ;-Ü?:ßB=ëHIõRSêVTçSQãPIÜIBÖC9Ï<2È9)Å6&Á8&À7%º9&º9&¶=*·>+²?-°=+¬;-®=/±=.±=.µ=-·?/½B3ÀE6Ú\Pæh\âa[îmgôpnåa_êehñloæO^ò[jëmpèjmíbeñfiÿooÿuuúrtùqséN^ñVfÏdnÿ”ž—¡‰nx`VoEMf<Y`?szY®£‘ÞÓÁþíåÿ÷ïÿý÷ÿûõùþ÷ùþ÷øÿúøÿú÷ÿùõÿ÷âÿçÚýßÚ÷ÛÝúÞêùâíüåöûçúÿëýúçþûèÿøæøñßñê×îçÔòëØ÷ðÝûøñýúóÿýöZQBYPAYPAXO@WN?VM>VM>UL=SJ;RI:QH9PG8OF7OF7PG8PG8IG;JH<NI6PK8SK4TL5VK5VK5ULCVMDYVgkhyux£„¯„È‹”Ï“’Ô”“Õ•”à—–â•šë˜î˜¡ìš£îš¥ã—¢à”Ÿ×‘œÔ“™×‘—Õ’’ØÕ„„††Ä£|±¢{°Ãiº`†ÌK_ÃBVØCGØCGÝABÝABà?Dà?Dã=Gã=Gà?DØ7<Ï?>ÓCBÅA<º61Ç<7æ[Vâ?Bâ?Bé<@æ9=Ù99×77Ì=5Î?7ÎD:Â8.¸4'¿;.ÄF7ÃE6»>,¶9'»7(¾:+Ë9,Í;.Ú70Ý:3ç:6ê=9Ô4(Õ5)Ú3*Ü5,Þ6+Þ6+×<*×<*Å:%Å:%¼>(¼>(½;-¾<.Â<1Ä>3îB>ì@<ßA5Ù;/Ê<(Ç9%Ç9!É;#Ó:(Ï6$Ò."Ò."×0*Ø1+Ó0+Ñ.)×0(Ø1)Õ5)Ô4(Ì5"Ì5"Ë:%Î=(Ê<(Ì>*ñ]OÜH:Ð3.Î1,ã@AùVWÿvtÿrpÿleó`YäQGÔA7Ä5%½.Â9'À7%º9&º9&µ<)¶=*±>,¯<*¬;-­<.°<-¯;,³;+¶>.¼A2ÀE6ËMAÞ`Tâa[ñpj÷sqä`^â]`ã^aÜETìUdêloêloògj÷loÿqqÿssùqsñikäIYêO_Îcm÷Œ–‘›ƒis[RkAPi?_fEv}\²§•æÛÉÿóëÿ÷ïÿùóÿùóùþ÷ûÿùùÿû÷ÿùòüôîøð×úÜÎñÓÍêÎÎëÏÛêÓßî×ëðÜñöâöóàùöãûôâóìÚéâÏåÞËêãÐðéÖøõîú÷ðüùò\P@[O?[O?ZN>YM=YM=XL<XL<VJ:VJ:UI9TH8TH8TH8UI9UI9KG;LH<QJ8RK9WL6WL6WL6WL6TLAUMBYV_ifost“~žƒ‡¶‹¾‹’¾Œ“¿Ž“Ë•Í‘–Ú“˜Ü”™Ý•šÞ—Ù“™Õ”ȉąŒÃˆ¿}ƒÁz€¾Šq‘‹r’¾]†¾]†ïCké=eñ5Mð4LàECàECÑMAÑMAÞFEÞFEô9Jô9JÞEGÖ=?ÉB>ÏHD»A6¯5*ÇB;ÜWPÝCAÝCAâ?@à=>Õ@:Õ@:ÉG:ÊH;Æ</À6)»6%½8'¿>+¿>+½<'¼;&Ã:(Å<*Ñ;,Ò<-Þ7.ß8/æ81è:3é77æ44ç//è00ë20ê1/Þ1+Ù,&Í0)Ð3,É91Æ6.Ä00Æ22Ñ8;Ù@Cõ47ó25â7/Ý2*È7$Æ5"À:!Â<#È=&Å:#È5#Ê7%Ñ9+Ó;-Ñ;-Ï9+ÈA.Ä=*¿:'¾9&À<'Â>)Å='Ä<&Ï>-Ë:)Ú<1àB7Ù-+å97ã/2æ25Ó61Ø;6ÞD<åKCéQFëSHåVFäUEÈ@0Å=-»>,¹<*³@.³@.¯@/®?.¨=-©>.«=,ª<+«<+®?.µA2¹E6ÅLAÛbWàc]ípjóqsâ`bå_få_fúhuÿmzìpráegìadùnqÿuyÿvzýlsñ`gêDXíG[Ö^j÷‹™™ww_XvDZxFhwN|‹b´°•æâÇÿúçÿüéûþíûþíõÿñöÿòðÿïêýéáòßÛìÙÂëÁ»äº»Þ¶½à¸Æà½ÊäÁØçÊßîÑëïØïóÜ÷òßñìÙéàÑäÛÌéÝÑîâÖñçÞñçÞòèß[O?[O?ZN>ZN>YM=YM=YM=XL<XL<WK;VJ:VJ:VJ:VJ:WK;WK;MI=NJ>RK9TM;XM7XM7XM7XM7TLAUMBVS\c`ijkŠst“y}¬‚†µƒŠ¶„‹·†‹Ã‰ŽÆ‰ŽÒ‹Ô‹ÔŒ‘ÕŽ”Љ˂‰½{‚¶u|³ov­io­ek©ƒjŠ‚i‰µT}·Vê>få9aò6Nô8PáFDáFDÒNBÒNBßGFßGFõ:Kõ:KÞEGÙ@BÉB>ÏHD·=2®4)ÌG@ÑLEÚ@>Ø><Ý:;Ý:;ÖA;×B<ËI<ÊH;À6)Á7*¾9(½8'º9&º9&¼;&¾=(Ä;)Æ=+Ò<-Ó=.Ý6-Ý6-ã5.å70å33ã11æ..é11ð75ñ86æ93á4.Ï2+Ò5.Ë;3È80Æ22È44Ó:=ÛBEð/2ð/2à5-Ý2*É8%È7$Â<#Ä>%Ã8!Ä9"Ë8&Ï<*Ö>0ÙA3ÙC5ØB4ÏH5ÉB/À;(¾9&À<'Â>)Ä<&Â:$Ì;*Ê9(Í/$ãE:Ü0.ì@>ã/2Ü(+Ð3.Ò50Ò80Ó91Ñ9.Í5*Â3#¿0 ÌD4È@0º=+¶9'­:(­:(ª;*©:)¨=-©>.«=,«=,«<+¬=,²>/µA2ËRGßf[àc]èkeïmoåceïipônuÿmzÿp}îrtähjògjÿuxÿvzÿosúipí\cìFZêDXÓ[gïwƒ…††nlŠXm‹Yz‰`Š™p¸´™àÜÁùòßþ÷äÿÿñþÿðóÿïïþëæùåÛîÚÑâÏÉÚÇ®×­ªÓ©¬Ï§°Ó«ºÔ±½×´ÊÙ¼ÑàÃáåÎæêÓñìÙðëØìãÔæÝÎçÛÏèÜÐåÛÒäÚÑâØÏZN>ZN>YM=YM=YM=XL<XL<XL<XL<WK;WK;VJ:VJ:WK;XL<XL<QI<RJ=TK:VM<XM7YN8YM7YM7WMAVL@VPR_Y[c`sjgzqpzy˜x zƒ¢}„²€‡µ…†Æ‡ˆÈ‰ˆÌ‰ˆÌˆ‡Ã„ƒ¿|±yv«to¥oj kcžh`›’[`Y^ÁFXÈM_û9S÷5Oÿ2?ÿ6CíA=íA=ÙK?ÙK?áEFáEFô;Kô;KÕFBÕFBÃD;ÇH?°</­9,ÎPDÄF:Ñ<8Ì73Í2.Ð51Í@7ÑD;ÂI8¾E4À9&Á:'À;(¾9&¼:$¼:$¾:%¿;&Æ8$É;'Õ:(Ö;)ß5(ß5(å3)æ4*ñ&*ó(,ü)/ÿ-3ÿ.6ÿ/7ÿ17ÿ17ý4:ý4:ù4=ù4=ÿ2Cÿ3Dÿ/Gÿ/G÷(0ø)1ê20è0.Õ7,Ô6+Î;+Ï<,Ë3%Ï7)Ü8.à<2ä<3å=4ç<4è=5ÒM<ÍH7ÉA1Ã;+Â9'Â9'Æ9(Æ9(É1$Ñ9,â=7èC=ß//Ý--ë46ë46Ö5+×6,Ö8-Ø:/Ô</Ò:-Ë<.É:,ÒM>ÌG8½?1¶8*¬6(¬6(©8*©8*«;-¬<.­>-­>-«<+ª;*¬=,­>-ÀKAØcYÝc^ælgîpsçilôqyúwòdpûmyðuxêorûntÿyÿq|ÿdoüblðV`öF]ï?V×Uaîlxª ‡ž”{z›dx™b‚•g r­±ŽÈÌ©ÝàÃçêÍçö×âñÒÓîÍËæÅÁß»¸Ö²³Íª­Ç¤˜Ä–šşʕ©Ê›«Ì¶Ï¥¼Õ«ÎÙ¹Ôß¿äãÎèçÒíáÕèÜÐåÔÍâÑÊÝÎÇÙÊÃÕÆ¿YM=YM=YM=XL<XL<XL<XL<XL<XL<WK;WK;WK;WK;WK;XL<YM=RJ=SK>UL;VM<YN8YN8ZN8YM7YOCWMATNPZTV[Xk`]pgf…poŽpy˜r{šv}«z¯€Áƒ„Ä…„È…„È~º|{·yv«ur§sn¤pk¡og¢ldŸ‡PU†OTº?QÅJ\ü:Tù7Qÿ4Aÿ6CíA=íA=ÙK?ÙK?áEFáEFô;Kô;KÑB>ÔEAÁB9ÅF=®:-¯;.ÒTH¿A5Ë62Ä/+Ä)%È-)É<3ÎA8¾E4¹@/Â;(Ã<)À;(¿:'¾<&À>(À<'½9$Ä6"Æ8$Ó8&Õ:(ß5(ß5(å3)æ4*û04ÿ59ÿ6<ÿ4:ÿ+3ÿ&.û(.ý*0÷.4ó*0í(1ð+4û.?û.?ø":ð2ò#+ô%-ç/-æ.,Ó5*Ñ3(Ê7'Ë8(Ï7)Õ=/ã?5ä@6å=4â:1ã80ã80ÓN=ÑL;ÏG7Ç?/À7%¾5#Ä7&É<+Í5(Ð8+çB<Ý82à00Ïî79é24Ó2(Ó2(Ñ3(Ñ3(Í5(Í5(Æ7)Å6(ßZK×RCÇI;½?1³=/²<.¯>0°?1«;-¬<.®?.­>-«<+ª;*ª;*ª;*°;1ÏZPÛa\êpkôvyëmpôqyõrzÿv‚ÿ|ˆø}€énqôgmÿsyÿq|ÿitø^hîT^÷G^î>UÔR^égs®¤‹©Ÿ† iz›d‚•gŠo¢¦ƒ´¸•ÈË®ÕØ»È׸Áб¯Ê©¥ÀŸœº–—µ‘–°”®‹‰µ€‰µ€º…–ÁŒ Á’¡Â“«Äš±Ê Á̬ÈÓ³ÚÙÄáàËêÞÒäØÌßÎÇÙÈÁÑ»̽¶Æ·°ZM<ZM<ZM<ZM<ZM<ZM<ZM<ZM<WJ9XK:XK:XK:YL;YL;YL;ZM<XL>YM?ZM<ZM<[O9[O9[O9\P:YM=YM=VMHXOJXQX\U\`Zfb\hcg‚jn‰opœrsŸxv·€~¿ˆ‚ȉƒÉ‰}»Š~¼Žw­‡p¦m£“p¦’gŸ…Z’¡C; B:¹?:ÁGBÝ?>Ý?>ó=<üFEö=;õ<:í==î>>èBFéCGäCIãBHÈC<Ä?8·A5´>2­>-­>-ÁC7ÍOCÊ5/Ñ<6Î1,Î1,ÑD:Ê=3°7&¸?.¼5!À9%Ã<(Á:&À9%À9%Å:%Æ;&Î9%Ï:&×5&Ô2#Ú-Þ1#ì6+ô>3ô90ó8/ø1*õ.'ü(%û'$ý%&ý%&ü%*ø!&ü ,ÿ'3ÿ%;ÿ!7ÿ4ÿ1ù)6ð -ã$+ç(/Ü./×)*Õ,)Ü30è21ê43õ34õ34÷/1ô,.ò*,ð(*Ø;2Ô7.Ô70îQJ¼"Ä*"áD=Ê-&Ì-'Ü=7çD=ß<5Ö/)Ö/)á6/æ;4Ø@2Ô<.Ì6(É3%É7*Í;.È</Å9,êbVáYMÇC7º6*¼9/º7-²2'´4)³/#³/#±1$²2%°6'²8)±<+³>-°:.¹C7Ö\Wêpkðswôw{úx‚óq{ÿz„þuîwyîwyÿs{ÿs{ÿhwÿdsÿ^míL[øB[÷AZÐJUã]h©›€¥—|} fx›a~”c‚˜g”Ÿuœ§}©ƒ›§¦~‰¢z}¡sxœnvœkxžm¡o‚¤r¯q…³u‹¹{½”½ƒ–¿…œ¿‰ÀŠ¦»’ª¿–¾Â©Ë϶ÝÓÇÝÓÇÛÈÄÒ¿»Ç¹¸¾°¯·©¨YL;YL;YL;YL;YL;YL;YL;YL;WJ9XK:XK:XK:YL;YL;YL;ZM<XL>YM?ZM<ZM<[O9[O9[O9\P:[O?[O?WNIXOJWPWZSZ\Vb^XdZ^yae€gh”kl˜rp±}{¼…ņ€Æ¿Š~¼Œu«†o¥”q§™v¬–k£†[“?7™;3¯50¹?:Ù;:Ü>=ð:9õ?>õ<:ô;9í==î>>èBFèBFá@Fß>DÂ=6¿:3²<0°:.©:)«<+¿A5ÊL@ÚE?ØC=Ô72Ò50ÐC9ÎA7µ<+®5$¾7#Á:&Ä=)Ã<(Ã<(Ã<(Æ;&Æ;&Î9%Ì7#Ô2#Ö4%â5'ç:,ï9.ï9.ê/&ê/&ò+$ò+$ü(%þ*'ÿ*+ÿ,-þ',ú#(ý!-ÿ&2ÿ#9ÿ3ÿ0ÿ.ð -û+8ò3:è)0×)*Ü./Û2/×.+ð:9ï98ö45ô23÷/1÷/1ù13û35Ò5,Ù<3Õ81âE>àF>Ë1)Ï2+À#Ó4.Þ?9çD=à=6Ù2,Ø1+à5.â70Ò:,Ï7)Ë5'Ê4&Ê8+Í;.È</Æ:-ëcWàXLÅA5¸4(¾;1¿<2¸8-»;0º6*º6*·7*¶6)±7(±7(­8'­8'²<0¹C7ÓYTçmhíptõx|ý{…÷uÿz„ÿv€ðy{ðy{ÿs{ÿrzÿfuÿ`oþ]líL[øB[øB[ÔNYâ\g¡“x›rt—]q”Zw\{‘`‰”j˜nŠ–p†’ln‡_m†^fŠ\g‹]j_p–exšh|žl€®p„²t‰·y»}’»“¼‚˜»…š½‡²‰Ÿ´‹°´›»¿¦ÎĸÒȼÔÁ½Î»·Ãµ´¹«ª±£¢YL;YL;YL;YL;YL;YL;YL;YL;WJ9XK:XK:XK:YL;YL;YL;ZM<[K<\L=\L<\L<]N;]N;[O9\P:_RA^Q@\PB[OAYNHZOI\QO]RP\RjcYqe^‡jcŒol¥|y²†}¼‡~½›„º—€¶£rŸ oœ»n˜ÁtžÂc°Q}Æ86À20µ6-»<3ÁF7ÅJ;ÙB9ÛD;õ;>õ;>û7Aü8BëBGè?DÏECËA?»=1¸:.¬;+«:*¨9(©:)¾>1ÉI<ÜA<Õ:5Ú64Ý97ÙE;áMCÊK:³4#À9&À9&Â;(Å>+É>+È=*Ë:)Ê9(Ò6'Î2#Ö.!Ý5(î<2ò@6ñ91ê2*Ö9&Ö9&Þ4#Ý3"ç/%ç/%ë.(ì/)ì/-è+)í(1ð+4ù&9ô!4ú3ù2í*8ò/=î6@ï7Aë:Dí<Fë6?ã.7ó/;ó/;ö-7ö-7ô-2õ.3ñ10ñ10Ö1-á<8Ú53à;9ÿkjåA@Ñ/-Ð.,Ù:6Þ?;ßB;Ù<5Ò8,Ð6*Ð7)Ï6(À9%¿8$¿7'Á9)Á<-Â=.Ä;1Ä;1ê`VÞTJÊ:2À0(Í81Ò=6Ò91Ô;3Ý:3Ý:3Ø;2Ö90Ê;-Æ7)»7(¹5&·;/¼@4ÏTMãhaëoqöz|ÿ€‡ú{‚ÿy‚ýw€ñz~ò{ÿs}ÿpzÿbsÿ\müYjíJ[÷?WùAY×QZÝW`’…e‰|\e†Od…NmƒRq‡V{ˆ\{ˆ\t…[pW^{Ma~P^†ReYl•]sœdz g}£jƒ­n†°qˆµt‹¸w‹¹xŒºyº{‘»|±|Ž¯zš¨…¢°¹´¡Á¼©Ê¹²È·°±¬°¦¡¥œ—›YL;YL;YL;YL;YL;YL;YL;YL;WJ9XK:XK:XK:YL;YL;YL;ZM<[K<\L=\L<\L<]N;]N;[O9\P:^Q@]P?[OAZN@XMGYNHZOMZOMZPh^Tl`Y‚e^‡li¢yv¯ƒz¹ƒz¹šƒ¹†¼°¬­|©Åx¢Åx¢Åf’³T€×IGÔFDÇH?ÆG>ÅJ;ÅJ;ÙB9ÚC:õ;>ö<?ý9Cþ:DìCHè?DÍCAÈ><½?3¸:.¬;+«:*©:)ª;*½=0ÆF9Ö;6Ð50ß;9åA?ÛG=èTJØYH»<+Á:'¾7$¾7$Ã<)É>+È=*Ë:)Ë:)Ï3$Î2#Ù1$á9,ñ?5ñ?5í5-å-%×:'Ö9&ß5$Þ4#ç/%æ.$é,&é,&è+)æ)'ë&/ð+4ù&9ö#6ÿ9ÿ <ü9Gé&4å-7ÿLVÿ^hÿOYó>Gò=Fì(4î*6õ,6ø/9ö/4ò+0è('ã#"Õ0,Ú51Õ0.æA?ÿqpøTSÞ<:èFDÛ<8Ú;7Ö92Ô70Ñ7+Ð6*Í4&É0"¼5!¼5!¾6&Á9)À;,¿:+Â9/Ä;1ãYOØNDÈ80Â2*Ò=6ØC<Ö=5×>6â?8ã@9ßB9Ý@7ÑB4Í>0Á=.¾:+¶:.¸<0ÊOHßd]ëoqø|~ÿƒŠü}„üvûu~ò{ó|€ÿs}ÿoyÿ`qþ[l÷TeëHYô<T÷?WØR[ÖPYrRviIVw@XyBcyHiNs€Tu‚Vq‚Xo€Vj‡Yn‹]m•atœh{¤l¨pƒ©p„ªq„®o†°qˆµt‰¶uˆ¶uˆ¶u·xŽ¸y‘²}Œ­x“¡~—¥‚®©–ºµ¢Ç¶¯È·°°«¯¢¡–‘•ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8YJ7ZK8ZK8ZK8[L9[L9[L9\M:]J;^K<]L:]L:]N;]N;]N9^O:\O<[N;[N;[N;^N>_O?_O@`PAdLZgO]bTngYsjdwqx¤~w£š|ž¦ˆªÌ‡œÊ…šçr…álèTjÙE[û?MþBPéMPâFIËH@ÈE=ÑC?ÔFBí@FîAGö>Hø@JæGKáBFÅF@¿@:ºB4µ=/«<+ª;*©:'©:'¾8-Æ@5æB@à<:î@?í?>Ü:5éGBåYLÖJ=ÆA0½8'º2"¿7'È;*È;*Í7)Î8*Ð0$Ô4(â5.è;4ð93í60ë.*ç*&ß0-à1.è00ê22ò16ô38ó4;ô5<ç-8ç-8æ0?é3Bï.Ií,Gø,Oÿ3Vî@Jã5?ëALÿ^iÿjwÿXeõDTóBRë5Dê4Cæ7>æ7>Ø=8Ô94Â9)½4$Ç4*Â/%Ì91î[Só^ZîYUØC?ÞIEÙD@Ñ<8Ë7-Ë7-Ì:+Ì:+È7$Å4!®<$­;#°;'´?+µ;,²8)»8.Â?5ÜMEÖG?Ñ4/Î1,ä;4è?8ç60ç60ó-.ô./í4/í4/á90ß7.Î:,Ì8*¼6*¼6*ÈIBÞ_Xênlù}{ÿ†ˆûùs|út}ð|ñ}€ÿrþmzÿ`sþ[nôQdìI\ó=T÷AXØW\ÎMRlgAe`:Vr?ZvCfzIkNtVw„YwŠ]yŒ_t–dw™gv¡i{¦n«n€¬o„ªm„ªmˆ¬oŠ®qŠ²s‹³t†µo‡¶p†¸sˆºuŽ¶zˆ°tŽ£x’§|ª¬”¹»£ÍÁµÑŹ¶ºÅ§«¶™¨ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8YJ7ZK8ZK8ZK8[L9[L9[L9\M:]J;^K<]L:]L:]N;]N;]N9^O:ZM:[N;[N;\O<_O?`P@`PA`PAcKYdLZ^PjbTnf`Œsm™zsŸyrž‘s•£…§Î‰žÌ‡œæq„Ýh{äPf×CYó7Eû?MêNQâFIÉF>ÆC;ÑC?ÔFBì?Eí@Fõ=Gö>HäEIß@DÃD>¾?9¸@2²:,¨9(¨9(¨9&©:'½7,Ã=2ëGEåA?ê<;ä65Ö4/á?:é]Pôh[×RAÆA0½5%¿7'Ç:)Æ9(Ì6(Ï9+Ñ1%×7+æ92è;4ê3-æ/)é,(ë.*è96è96ï77ð88ö5:õ49ó4;ò3:í3>î4?í7Fî8Gò1Lð/Jþ2Uÿ;^å7AüNXÿ_jÿ]hÿUbúP]õDTê9Iõ?Ní7Fß07Ú+2Ì1,Í2-Â9)Á8(É6,Ã0&ÜIAüiaßJFäOKÏ:6Ð;7àKGÕ@<Ë7-Ë7-Í;,Í;,Ë:'É8%°>&­;#¯:&²=)²8)®4%»8.ÈE;ÕF>ÔE=Ó61Ò50å<5æ=6å4.å4.ñ+,ò,-ë2-ì3.â:1á90Ò>0Ñ=/½7+º4(ÂC<×XQåigø|zÿ†ˆü€‚ùs|ûu~ñ}€ñ}€ÿp}ûjwÿ^qýZmòObïL_õ?VøBYÛZ_ÊINc^8b]7YuB`|In‚Qs‡Vz‡\~‹`’eƒ–i{k}Ÿmz¥m|§o~ªm«nƒ©lƒ©l‡«n‰­pˆ°qˆ°q„³m„³m„¶q†¸s‹³w†®rŽ£x•ª±³›ÂĬØÌÀÝÑÅ¿Ãέ±¼¡¬ZK8ZK8ZK8ZK8ZK8ZK8ZK8ZK8YJ7ZK8ZK8ZK8[L9[L9[L9\M:]J9^K:^K:^K:^M;^M;]N9^O:^O:^O:_P9`Q:aQ:aQ:aQ:`P9iKMjLNaO_eScfc€tqŽ{w’yu”u„¤…”Õƒ‡Õƒ‡ûlnôegÿMQò?Cÿ(Cÿ1Lú?Põ:KÚ?EÙ>DÔBEÓADÞBFÞBFá@FâAG×EFÓABÂA<¾=8´>0®8*¦9%¨;'¬;)®=+Ä:/Ê@5ä::â88æ/1ä-/Ý52ß74ãOCÿk_îiZ×RCÆ</Ã9,É:,Ç8*Í5*Ò:/Ö3*Ú7.ç83æ72é0-ç.+í0.ñ42ÿ-Fÿ,Eÿ)Dÿ'Bÿ#?ÿ;û;ù9ô'Eõ(Fò/Qó0Rò+Vò+Vÿ2cÿ>oçJSþajÿitôXcëJZíL\éDUØ3DäBOÙ7D¿10·)(£6"§:&™F&šG'¸?,µ<)Ù[MÜ^PÊG=ÈE;¾71Ã<6àUNÑF?È:.Æ8,È;)Ç:(Ç9#É;%§A(£=$¥<'§>)©8(¦5%¼<3ÎNEÖE@×FAÜ73Ø3/í62ì51î-&ò1*ÿ(,ÿ(,û--û--ì5-ì5-Ý=1Ý=1Ç;.¿3&½=2ÏODßb^öyuÿ‡‡ÿƒƒþxÿy‚ó‚ð|þm|÷fuýZoùVkîK^îK^ñ>Tó@VÖX[ÁCFZX/_]4ZuBdLv‡Z}Ža„e†‘g†™lŠp„¦t„¦t}¨p|§o}©j}©j‚©jƒªkˆ§l‰¨m†­n†­n±j€²kµk„¸n‡´sƒ°o§x•¯€²¸œÂȬÕξÙÒ¶ÂÒ£¯¿‘­YJ7YJ7YJ7YJ7YJ7YJ7YJ7YJ7YJ7ZK8ZK8ZK8[L9[L9[L9\M:]J9^K:^K:^K:^M;^M;]N9^O:`Q<`Q<aR;aR;aQ:`P9_O8_O8jLNkMObP`gUeifƒxu’{–~z•˜yˆ¤…”Ò€„Ó…ýnpûlnÿTXøEIÿ,Gÿ2Mú?Pö;LßDJàEK×EHÑ?BÜ@DÛ?CÞ=Cß>DÔBCÑ?@Á@;½<7´>0®8*§:&ª=)±@.´C1Ê@5ÐF;Ý33à66ã,.æ/1ã;8Ö.+Ê6*éUIÿzkã^OÍC6Ç=0Ê;-Ç8*Í5*Ó;0Ú7.Û8/ä50ã4/é0-ê1.ò53õ86ÿ";ÿ";ÿ!<ÿ!<ÿ:ÿ8ù9ø8é:ë<é&Hì)Kì%Pï(Sÿ1bÿ@qÿený`iôXcîR]ñP`íL\ã>OÕ0AÝ;HÓ1>½/.¸*)¤7#§:&–C#•B"¯6#²9&ÓUG¹;-Â?5¹6,¹2,ÊC=ãXQÓHAÇ9-Ä6*Ä7%Â5#Ã5Ç9#§A(¡;"£:%¥<'§6&¦5%À@7ÕULÙHCÚIDß:6Ø3/ê3/é2.î-&õ4-ÿ(,ÿ'+ø**÷))ç0(æ/'×7+×7+Ì@3¿3&¹9.ÈH=Ù\Xóvrÿˆˆÿ††ÿ{„ÿ|…õ„ð|ükzôcrùVköShèEXëH[î;Qï<RÒTWº<?SQ(\Z1To<a|Ix‰\ƒ”g‹–lŒ—m‹žq¢uŠ¬zˆªx~©q{¦nz¦gz¦g¦g¦g…¤i‡¦kƒªk„«l|®g~°i€´j‚¶l‰¶u…²q©z—±‚±·›¿Å©ÏȸÑʺ²¾ÎŸ«»Œ˜¨[J6[J6[J6[J6[J6[J6[J6[J6\K7\K7\K7\K7\K7\K7\K7\K7[I;\J<ZM=ZM=XM;YN<ZR=\T?^S?^S?^Q@_RAcQCbPBbOA`M?nJLmIKbP^kYghl‰w{˜}†­‚‹²ƒ§—‹¯À†œÀ†œæx{åwzúj_õeZëOZáEPà>IäBMíCNé?Jé;Dé;Dä;@â9>Ú<;Ù;:Ï?6Ì<3Ã;/¿7+ :$ªD.¬;)©8&Ã?3ÊF:Ò;4Î70Ú70Ú70Û7+Ú6*Û:&Ü;'Ù;"Õ7ß82öOIòZOÛC8Å8'Ë>-ÓB1Î=,Õ0*íHBå,1ï6;÷5@ð.9ÿARí(9û%'ÿ*,ÿ*,ö "ù%$þ*)ü*)ñî"%ú.1ê",î&0î.=ã#2ÿXlç*>ÿ]hþ\gÿW`ýS\÷NQïFIÜA<Ó83ÄB2ÄB2°C.¥8#—4™6!9)ž:*¨71ª93ÄDA¼<9À00Å55Ç31ÖB@ÛLFÙJDÑD:Æ9/Å2(Ç4*Ì4)Ë3(¸<0³7+²,!­'¸* Å7-ÔA7ÙF<æODÜE:Û7.Ö2)é-+î20ÿ.1ÿ.1ò12ñ01ó/0ó/0ð0+ð0+ã7+â6*Ñ?0Â0!º@1·=.Ò_XæslÿŽ÷…„û†Œú…‹ÿr„ÿfxÿ[tÿZsùWnñOfôEbê;Xë>Zé<XÆfj˜8<IL/UX;Uw:e‡Jt˜[zžax d|¤h~§k¨l~§k~§k|¦g{¥f|£d|£d~¢b£cz¥m|§o~ªk«l~®d~®d€±b‚³d†´k‡µl‰±uŠ²v•´Š¡À–«Ä¤¬Å¥¡¯°‹™šy‡ˆ\K7\K7\K7\K7\K7\K7\K7\K7]L8]L8]L8]L8]L8]L8]L8]L8\J<]K=\O?\O?ZO=ZO=ZR=[S>^S?]R>]P?\O>`N@aOAcPBcPBnJLnJLdR`n\jlpz~›ˆ¯„´¡•¹›³µ{‘³yâtwê|ÿpe÷g\ø\gìP[èFQëITõKVñGRí?Hê<Eã:?á8=Ù;:Ø:9Ï?6Ì<3Ã;/À8,¤>(¦@*©8&¬;)Ã?3Â>2Ì5.Ô=6Ö3,Ö3,Ø4(Ø4(Ø7#Ú9%Ú<#Ù;"Ü5/èA;æNCáI>Í@/Å8'Ê9(Ï>-Þ93ñLFè/4ð7<ø6Añ/:ÿ>Oë&7ø"$ù#%ý')ÿ)+þ*)û'&ú('ü*)ð$'ñ%(í%/ÿ9CÙ(ñ1@û>RÝ 4ÿhsÿ`kÿW`þT]÷NQêADØ=8×<7»9)ÃA1·J5«>)•2Ž+)Ž*,&­<6ÒROÉIFÄ44Å55Ð<:êVTÖGAÕF@ÎA7Å8.Å2(È5+Ï7,Ï7,¼@4¹=1¼6+¼6+Ä6,É;1ÔA7ÚG=áJ?ÙB7Ú6-×3*ê.,î20þ-0þ-0ò12ñ01ó/0ó/0ð0+ð0+ã7+â6*Ò@1Â0!¸>/¶<-Ñ^Wévoÿ÷…„ù„Šøƒ‰ÿoþewÿZsÿYrùWnòPgòC`ì=ZîA]ïB^·W[“37HK.UX;Vx;e‡Jr–Yw›^vžby¡e|¥i}¦j|¥i{¤hz¤ey£d{¢c{¢c}¡a}¡ax£kz¥m|¨i}©j|¬b|¬b~¯`€±b‚°g„²i‡¯s…­qŠ©Ž­ƒ¨ˆ‹¤„uƒ„`noP^_\K7\K7\K7\K7\K7\K7\K7\K7]L8]L8]L8]L8]L8]L8]L8]L8]L8_N:`Q>`Q>[P>ZO=YPAZQBZRGZRGZOKZOK]OO_QQcSVeUXeTZgV\c]wmgov­{‚¹‚ˆÒ†ŒÖšŽÖ˜ŒÔ¯€®¯€®Õ~ŽÜ…•í~uæwnþcgñVZìHOëGNöHQõGPòAIî=Eä7;ã6:Ø:7Ø:7Ê@5È>3½@.º=+ª?-¨=+ª9)µD4ÅI=¹=1º1'Ä;1Ë7-Ì8.Ó7*Ô8+Ø7%Ø7%Û9$Ý;&Ý4/Ü3.ÞB6êNBÛH8Ç4$É2!×@/å=4òJAê01ð67ù5?ö2<ÿBNô0<ë)*æ$%æ$$ô22ñ//ë))è('ó32ç+,õ9:â-2Þ).å5?ÿR\ê>JÿZfø_bïVYîMRîMRëEGß9;Ô95Ø=9À6,Å;1½A5·;/®5,ª1(¥*%Ÿ$š%¦1*ÈD@À<8½++Å33×A@ô^]Ð@8ÒB:ÐB8Ê<2Í9/Ò>4Ü?6Ý@7á=<Þ:9ä:;è>?è<<ä88æ>;ïGDâA9Ü;3Ù5,×3*æ0,ê40õ20ô1/ó12ò01õ/0õ/0ñ0+ñ0+ä6+ã5*ÓA2Ä2#´:+µ;,Í\Tëzrÿ’‘ù‡†ý€ˆú}…ÿn~øeuÿZrþXpÿOkúIeô?^ñ<[ãKbèPg’HE~41JM0Y\?[z?h‡Lp”Wt˜[s›_wŸcy¢fz£gy£dx¢cw¡bw¡bxŸ`y a{Ÿa{Ÿay¢fz£gz§d{¨ey©]zª^|­\~¯^„²g‡µj‹±t†¬o…¥v€ qx’onˆeRa\@OJ2A<]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8]L8\K7^M9_P=`Q>[P>ZO=XO@YPAXPE[SH_TPbWSgYYi[[l\_n^ap_esbhpj„ysw~µˆ¿…‹Õ‰Ù’†Î˜ŒÔ¶‡µ°¯ÊsƒÎw‡ë|sðxÿmqþcgøT[ñMTõGPòDMð?Gí<Dã6:â59×96Ø:7ËA6É?4¾A/»>,§<*ª?-¯>.¹H8ÍQEÅI=½4*¹0&Ë7-Í9/Ö:-Ù=0Û:(Ø7%Ù7"Ü:%Ý4/Ú1,Ü@4êNBàM=Ï<,Ï8'ÛD3ß7.êB9é/0í34õ1;ù5?ÿJVÿFRÿ=>ó12ä""ï--í++ó11ê*)î.-ô89Õç27à+0ç7AòBLÿVböJVÕ<?Ù@Cá@EÞ=Bß9;Ý79Õ:6Ó84Å;1Â8.·;/¾B6ÉPGÑXOÌQLÀE@®92°;4ÏKGÔPLãQQìZZèRQïYXÆ6.Í=5ÐB8Î@6Ò>4ÖB8ßB9ßB9ä@?à<;æ<=ëABê>>ä88ç?<õMJÛ:2Ø7/Ø4+Ø4+ç1-ê40ô1/ó0.ó12ò01õ/0õ/0ñ0+ñ0+ä6+ã5*ÔB3Æ4%°6'³9*ÇVNî}uÿ’‘úˆ‡ü‡ø{ƒþk{öcsýWoùSkûJföEañ<[ó>]åMdéQh52z0-OR5_bE_~CiˆMp”Ws—Zq™]vžbx¡ex¡ev av auŸ`uŸ`wž_xŸ`{Ÿa{Ÿax¡ez£gz§dz§dx¨\y©]z«Z|­\„²g‡µjŒ²uˆ®q…¥v}nsjg^Q`[BQL7FA]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]N9]L0^M1_O6_O6ZN>YM=VOGWPHUPT\W[f_omfvog~og~pfqg‚im†mqŠov¤u|ªx€É‡Ð…‰äˆŒç˜ŒÞ˜ŒÞ¢„¶”v¨ lx¤p|ºxh¿}möoi÷pjþhg÷a`úQTñHKï<@é6:æ68å57Ù:6Ù:6ËA4Ê@3»B/¸?,­7+µ?3¯;.°</ÄRGÐ^SÄNB³=1º:-º:-É:,ÐA3Ý=/×7)Ý3&à6)à1,ã4/á?4åC8áE6ÞB3ß?/à@0ß.&é80ï/.ï/.ï,0÷48ÿLTÿV^ÿ\^ýPRÜ/1Þ13Ú..óGGä88Û//×/.ç?>×45Ö34ÿehÛ?BÆ-0È/2¾('Ñ;:áACØ8:Ú14à7:Û89Ï,-É32Ð:9ÒFEÞRQî_c÷hløbmðZeÁB;ÅF?ç\YõjgÿonÿkjäJH×=;Ç4,Ð=5ÕE:ÓC8Õ>3Ô=2Ú91×6.û/;ö*6÷)6ø*7ó*4ò)3ó9:ÿHIÞ3,Ý2+Ø4*Ù5+â4+ä6-î3.î3.ö/2õ.1ø-0ø-0ô.+ô.+æ5+å4*Ô@2Ê6(¯4%³8)¿NFí|tÿ‘û‰ˆÿzŠÿsƒ÷jzðcsøTlñMeÿ<`ý9]ñ:Y÷@_ÊXbÆT^_8)c<-VY>ehMbIl‰Sq’Yt•\s™^xžcy¡cx btž^tž^u^u^wž_xŸ`{Ÿa| bx¢bz¤dz¨`z¨`y¨Zy¨Z{ªY|«Z«^ƒ¯b‡®m„«j‡¥sƒ¡oz•lp‹bdueZk[QbR^O:^O:^O:^O:^O:^O:^O:^O:]N9]N9]N9]N9]N9]N9]N9]N9^M1_N2_O6^N5ZN>ZN>YRJ[TL^Y]gbftm}{t„}uŒ{sŠzp‹yoŠpttx‘u|ªy€®yÊ}…΃‡â‡‹æ˜ŒÞ•‰Û ‚´ž€²³‹®z†¨fV•SCÌE?ÕNHèRQìVU÷NQòILð=Aç48è8:ç79Û<8Û<8ÍC6ËA4¼C0¹@-°:.·A5ª6)¢.!¼J?Øf[ÙcWÊTH»;.µ5(Â3%Ë<.Û;-×7)Þ4'á7*Þ/*å61ß=2Ü:/Û?0áE6ãC3Ú:*á0(ç6.ò21î.-ì)-ó04ÿAIÿOWÿ]_ÿY[ã68ä79×++öJJä88Û//Û32Î&%Ê'(ùVWÚ>AÖ:=Ñ8;¹ #Á+*Õ?>ãCE×79Õ,/Ú14Ô12Ë()Ë54áKJðdcöjiôeiñbfö`k÷alÏPIÏPIç\YãXUæNMàHGÍ31Í31ÕB:ÞKCáQFÛK@ØA6Ó<1Ö5-Ó2*ú.:ù-9ø*7õ'4ò)3ø/9ù?@ÿHIÝ2+Ý2+Ù5+Ù5+â4+ä6-î3.ï4/ö/2õ.1ø-0ø-0ô.+ô.+æ5+å4*Ó?1Í9+®3$²7(¶E=êyqÿŽüŠ‰ÿw‡üoôgwîaqöRjíIaü8\û7[ò;ZùBaÆT^²@J^7(d=.X[@ehMbIkˆRq’Yt•\u›`xžcx bu_rœ\rœ\s›\s›\uœ]wž_zž`{Ÿax¢bz¤dy§_y§_x§Yx§Yy¨W{ªY}©\­`…¬k„«j‰§uˆ¦tƒžu{–mu†vnogxh^O<^O<^O<^O<^O<^O<^O<^O<]N;]N;]N;]N;]N;]N;]N;]N;`O1aP2_P;^O:XOFZQH[V]_Zahf|qo…yyŸ~~¤}{¬yw¨wt©wt©ox³s|·w½z‚À€„Á„ˆÅŽÀ•“Å“µ –¸®£¸§­É°œÀ§“§‹fŠnIŸD/¡F1±C4¶H9ÖIBàSLîHHçAAê<=é;<ã;:ã;:Ø?7Ö=5É=0Æ:-º:1¾>5®5,©0'·K>ÎbUÐiZÎgXÁP@²A1¹3'À:.Ö8-Ô6+à2+ä6/à2+ã5.Þ8,Þ8,à>/åC4å>.Û4$é3(è2'ô20ñ/-î.-ò21ð67ù?@îOS÷X\åFJñRVÕ49èGLÚ:<ãCEÕ78Ì./Ì24âHJÏ9:Î89¶$%Ð>?à88ä<<ë=?æ8:à-3Ü)/ß28è;AêNRú^bÿmsÿjp÷_kòZf÷YhøZiòe^è[TìTQ×?<Ï0-Ó41Ò3/áB>âKBèQHèTJßKAÛ>5×:1Û60Û60ú*7ÿ0=ÿ/<ü*7û-7ÿ8BÿDEýABÞ3,Þ3,Ü5,Ü5,á3*ã5,î3,ð5.÷/2ö.1ù-0ù-0õ.+õ.+ç5+æ4*Ó=/Ò<.±3%´6(±<5étmý‰‰ý‰‰ÿpƒþgzïbrì_oøPjïGaÿ5\ÿ6]ìB_òHe¥[Z76ME.ME.WW=aaG`zJiƒSrŽ[w“`wš`{ždwŸ`rš[o™Wo™Wp™WqšXr›Yt[wž_xŸ`w \y¢^y¤\y¤\v¥Uu¤Tw¦Ux§V}©\­`†ªj„¨h†¤p…£o€šmx’ep„hkcey]_P=_P=_P=_P=_P=_P=_P=_P=^O<^O<^O<^O<^O<^O<^O<^O<cR4bQ3`Q<^O:YPG]TK_Zac^esq‡{y€€¦ƒƒ©}®zx©yv«zw¬t}¸x¼|„‡Ņ‰ÆŠŽË—•ÇœšÌ­£Å³©ËÁ°¶Æµ»Õ¼¨×¾ªÕ¹”˯ŠÁfQ´YD°B3«=.ÎA:âUNøRRòLLì>?ê<=å=<ä<;Ù@8Ö=5Ê>1Æ:-»;2¾>5´;2·>5½QDÅYLÅ^OÍfWÔcS¿N>¾8,À:.Õ7,Ó5*ß1*ä6/ä6/á3,Ý7+ã=1åC4äB3á:*Û4$ê4)ä.#ñ/-ò0.ó32õ54è./ê01áBFõVZôUYÿosåDIéHMß?Aü\^ÿopÜ>?ÿ}ÿnpèRSÔ>?Ä23Ð>?óKKç??ê<>ðBDì9?â/5îAGÿ]cÿptÿlpúekô_eö^júbnü^möXgí`YÞQJáIFÐ85Ð1.Õ63Ð1-Ø95ÜE<áJAßKAÕA7Ò5,Ò5,Ü71ß:4ñ!.ý-:ÿ0=û)6ü.8ÿ:Dü@Aï34ß4-à5.Ý6-Ü5,á3*â4+î3,ñ6/÷/2ö.1ù-0ù-0õ.+õ.+ç5+æ4*Ò<.Ó=/±3%³5'¬70æqjû‡‡þŠŠÿk~ùbuì_oê]møPjïGaÿ6]ÿ8_îDaôJg¢XWr('PH1KC,TT:[[A]wGgQpŒYv’_wš`zcu^p˜Yl–Tl–Tn—Uo˜Vp™Wr›Yuœ]v^vŸ[w \w¢Zw¢Zt£Ss¢Ru¤Sv¥Tx¤W|¨[€¤d}¡a}›gy—crŒ_h‚U_sW\pTVjNYL;[N=^Q@^Q@]P?\O>]P?^Q@_RA\O>ZM<[N=^Q@`SB_RA^Q@cT?_P;\PD^RFWQUZTXb`vrp†tw x{¤}€·‚¹{¿uy¹or·lo´tuÑxyÕ‚ƒÄŠ‹Ì›˜³¦£¾·±£¿¹«ÎÇ›ÔÍ¡ÚÑšÚÑšÜÑ™ÜÑ™ØÍ—ÑÆͪŒ©†hœ`H¼€hÔtf®N@ÖQLìgbéIIà@@â89ã9:ã99Þ44Ú51Ü73É83Ä3.ÅB:½:2»K?ÇWKµO@ËeVÏdTÅZJÆF9½=0Î4*Ò8.â5/á4.Þ1-Þ1-Þ7.ã<3à<0Ú6*Þ4%â8)æ.$ç/%ì/)î1+ë4.ë4.ã6/ã6/Ñ8:äKMóX\êOS×8=Õ6;øW_ÿ~†ÿyÿksÿdkÿgnÿfiõ\_ðZ\ö`bÿRWÿCHû8@ú7?ö2>ï+7ç1=ñ;G÷V^ÿ`hÿipýfmúclûdmþalú]híRMßD?Ù53Ö20Ù0-×.+×2.Ý84ÞD:ÜB8×?4Ô<1Ù80Ù80â62ã73î7;î7;ð69ñ7:ñ78ï56æ40ã1-Û4+Ü5,Ý7+Ý7+æ1(ç2)ò1,ô3.÷03ö/2ù.1ù.1ö/,ö/,ê5,é4+ÛC6Ð8+»9,±/"·<7ÒWRÿ–˜ù}ÿh€ÿc{õ]rëShõFcôEbÿ=bû9^ãUkÛMcqI=R*7@%@I.MK4^\EWlAbwLo‰Yx’bw–]u”[p—Vp—Vl•Ql•Qm–Ro˜TqšXr›Yt›\uœ]rœTsUt Uu¡Vv¢Uu¡Tt SsŸRz¤Zy£Yy]s—WmŠTbIWqBQk<<U-<U-<U-YL;[N=]P?^Q@]P?]P?]P?_RA`SB^Q@\O>]P?`SBaTC`SB^Q@fWBaR=\PDaUI`Z^f`dmkxvŒvy¢z}¦}€·z}´quµlp°lo´nq¶uvÒ{|؉ŠË•–ש¦Á·´ÏÊĶÒ̾ÜÕ©àÙ­æݦåÜ¥åÚ¢ãØ ÜÑ›ÔÉ“Ú·™¾›}³w_Ç‹s×wiµUGßZUöqlöVVéIIæ<=ç=>é??å;;Ý84Û62Ï>9È72ÅB:¹6.°@4¼L@°J;Ã]NÚo_ÎcSÇG:¶6)È.$Ð6,à3-Û.(á40å84ä=4â;2Û7+Ù5)ß5&à6'í5+ì4*í0*ì/)ç0*ç0*à3,à3,Ñ8:×>@äIMòW[û\aû\aý\dÿ`hïOWëKSíPWû^eÿjmÿgjò\^éSUð16ì-2ð-5ò/7ì(4ä ,ß)5ì6BôS[ü[cüelýfmýfoüenù\gðS^áFAÙ>9Ù53Ú64ß63Û2/Ø3/Ú51Ú@6Ø>4Õ=2Ó;0Ù80Û:2ä84æ:6í6:ì59ï58ï58ð67î45å3/á/+Û4+Ü5,Ý7+Ý7+æ1(ç2)ñ0+ô3.÷03ö/2ù.1ù.1ö/,ö/,ê5,é4+ÙA4Õ=0½;.µ3&³83Ö[Vÿ‘òvxÿbzý]uñYnìTiöGdòC`ý;`þ<aßQgÎ@VjB6T, 4=":C(HF/SQ:Rg<^sHj„TtŽ^u”[s’Ym”Sm”Si’Nj“Ok”Pm–Rn—Up™Wr™Zsš[sUsUsŸTsŸTsŸRržQpœOo›Nm—Mj”JhŒL_ƒCXu?Li3D^/>X)=V.=V.>W/XK:[N=]P?^Q@]P?]P?^Q@`SB`SB_RA_RA`SBaTCaTC_RA]P?`US[PNXQX`Y`gczqm„sužy{¤uz²x}µt|½ltµbi±`g¯gm·pvÀ{Ù‡ƒá™•Ð©¥à¿ºÁÍÈÏÝØ®åà¶ëäžïè¢ñé¡îæžéà§ãÚ¡×Ï¡ÌÄ–²°— ž…˜ƒnœ‡r¥p`XHº]VÏrkövsädaäJJÞDDê@Aé?@è8:ä46Ý>:Ø95ÒB:Æ6.¶8,»=1­<,·F6ÚiYÜk[ÜZLÅC5È1&Í6+Ú6-Ö2)Û64çB@éH@Þ=5Ô4(Ó3'Ü1'Û0&è3*ç2)å0)ä/(ß4,â7/Ý?4ßA6Â.*È40ÙCBìVUø]aö[_óS]ðPZæFPèHRîNXû[eÿmsÿmsóX^Û@Fð,0ò.2ù1;û3=ñ+8í'4ð8DÿJVñJRöOWõY]û_cÿdhÿae÷PWèAHß82Þ71ä73é<8í;9é75à5.ß4-Ù;0Ø:/Ö:.Õ9-Û7.Þ:1è94ê;6ß<7Þ;6á96â:7æ:6ä84Ý6.Ù2*Ø6+Ù7,Þ8*Ý7)ç0(è1)õ.)÷0+ó23ò12ö01ö01õ/,õ/,ê5,é4+Ù=1ßC7Å;1¾4*´0.ã_]ÿ‚‡òmrÿax÷YpüOmúMkþBeö:]é@_ïFe¾]d¡@GXE4P=,7@%7@%HC-KF0N^9ZjEg}OrˆZrWqŽVkMkMg‘Ih’Ji’Lj“Ml•Qn—So—Xo—XtœVtœVrœTq›SnšOl˜Mj•Mi”LeŒI`‡D\~BRt8Lh5D`-AX*>U'B\,C]-E_/WJ9YL;\O>]P?]P?]P?_RA`SB_RA_RA`SBaTCaTC`SB^Q@]P?YNL\QO_X_jcjqm„xt‹xz£{}¦v{³ty±jr³bj«\c«`g¯lr¼v|Æ‹‡å”ݵ±ìÊÅÌÕÐ×ãÞ´èã¹îç¡ðé£ðè ëã›åÜ£ÜÓšÌÄ–¾¶ˆ¥£Šš˜š…p–l¢m]™dT¿b[Ïrkÿ…‚ôtqòXXåKKìBCê@Aì<>é9;Û<8Ú;7ØH@ÒB:»=1¸:.©8(¤3#»J:ÕdTëi[×UGÎ7,Ê3(Ø4+Ø4+Ø31òMKü[SíLDÙ9-Õ5)Þ3)Ý2(á,#á,#à+$á,%Û0(Þ3+Ø:/Ú<1Á-)Å1-Ï98ÙCBßDHßDHåEOëKUòR\öV`øXbû[eÿhnÿlròW]Ö;Aò.2ò.2ô,6ò*4ë%2í'4ö>JÿR^èAIç@HäHLïSWû\`ùZ^îGNÞ7>Þ71à93é<8îA=ò@>î<:å:3â70Ø:/Ø:/Ö:.Ö:.Ü8/Þ:1ç83é:5ß<7Þ;6á96â:7æ:6ä84Ý6.Ù2*Ù7,Ú8-Þ8*Ý7)ç0(è1)õ.)÷0+ó23ò12ö01ö01õ/,õ/,ê5,é4+Ø<0ãG;Å;1¾4*±-+êfdÿzðkpÿbyõWnùLjùLjü@cò6Yç>]òIh¼[b™8?[H7^K:AJ/=F+LG1GB,GW2Sc>`vHl‚Tn‹SoŒTiŽKhJfHfHgJi’Lk”Pl•Qm•Vn–WtœVs›UpšRm—Oi•Jf’GcŽFbE_†CZ>Vx<Oq5Mi6Kg4Ne7Ne7Lf6Mg7Oi9SG7VJ:YM=[O?[O?\P@]QA_SC^RB^RB_SC_SC^RB^RB^RB^RBRK[^Wgjftp‰utœxwŸuz±v{²qyºiq²_g¯Zbª^f¯iqºu}Å|„Ì•–ÖžŸß®¯Ý»¼êËÊÚÒÑáÜÙÐßÜÓåßÇæàÈäÜÅÞÖ¿ÚξÐÄ´À³ª±¤›–™‹Ž…‹„z„}s‘tl’um§ne­tkä‰„à…€ðupåjeîXWæPOêFEåA@ä92å:3áC:âD;Ë=3É;1ÃA4²0#­/ ÇI:ÜWHÓN?Ì=-É:*Ð7)Í4&Ó54ôVUÿkgø]YâE<Ù<3Þ:0Þ:0á3*à2)Þ1*Ü/(Ï1&Í/$¿1#¾0"Â:*¼4$½3(Ç=2ÕDA×FCÙBGØAFàFPìR\òXbñWa÷`gþgnïZ^×BFë97é75ì46ì46î3:õ:AþIRÿU^â7=Þ39ß58ê@CýILýILú9<î-0ç60ë:4ò;7ó<8ò;7ð95ç83ä50Þ;2Ý:1Ù;0Ø:/ß6/à70è51é62ã;8â:7æ95ç:6é:5ç83ß7.Û3*Ù7*Ú8+Ü9*Û8)æ1&æ1&ñ.(ó0*î53í42ó11ó11ó0,ó0,ê5,é4+Û:0ãB8È80À0(½12öjkÿpy÷gpø^vîTlÿ?eÿ>dÿ9`ü4[ÖNbßWk“aZvD=WQ;_YCQO:KI4QI6JB/CQ0M[:ZlBgyOk†OmˆQiŒHh‹GeEfFg‘Ih’Jj“Ol•Qm•Vm•VršTp˜Rm•Oj’LeŽHb‹E`‰E_ˆDZBV}>St=No8Pj:Qk;WnBYpDSp:Sp:Tq;PD4SG7WK;YM=YM=ZN>]QA^RB^RB_SC`TD_SC^RB^RBaUEcWG]Vfleuxt~z“zy¡yx sx¯sx¯iq²bj«[c«\d¬go¸u}Æ€ˆÐ…Õš›Û¢£ã±²à¼½ëÉÈØÎÍÝÖÓÊÙÖÍÝ׿ÜÖ¾ØйÒʳÏóƺª¶© §š‘ˆ‹‚wzq{tjtmc†iaŒog—^UšaXÈmhÔyt÷|wø}xÿnmúdcöRQìHGïD=é>7Ü>5àB9Ë=3ÑC9ÙWJÀ>1´6'¹;,Â=.Ä?0ÐA1ÔE5×>0Ð7)Ð21êLKú_[òWSáD;×:1Ü8.Ý9/æ8/æ8/å81ä70Ø:/Õ7,Ç9+Å7)°(¹1!É?4ÒH=ÔC@Ì;8Ì5:Ð9>Ó9CãISðV`óYcõ^eö_féTXÖAEí;9ï=;÷?AþFHÿKRÿOVÿT]ÿU^Þ39Ù.4Ú03ã9<ò>Aò>Aõ47ñ03è71ë:4ð95ì51é2.ê3/ã4/â3.à=4ß<3Û=2Ú<1á81á81è51è51ã;8â:7ç:6ç:6é:5ç83ß7.Û3*Ú8+Û9,Ý:+Û8)æ1&æ1&ñ.(ó0*î53í42ó11ó11ó0,ó0,ê5,é4+Ý<2Ü;1Ê:2À0(ÎBCûopújsóclìRjèNfþ:`ü8^ÿ8_ÿ;bÚRfÛSgMFr@9VP:]WAUS>NL7OG4KC0?M,GU4Rd:_qGe€Ij…NgŠFgŠFdŽDdŽDeGg‘Ii’Nj“Ok“Tl”Uo—Qm•Oj’LgIb‹E`‰C^‡C^‡C[‚CX@Vw@Rs<Uo?Vp@\sG^uIVs=Vs=Wt>NB2QE5TH8WK;XL<YM=[O?]QAaUEaUEbVF`TD_SCaUEfZJj^NifƒtqŽyyŸyyŸuwªuwªot´jo¯_g¯^f®_g°em¶pxÀ}…͈‘Ö–Ûš£Ä ©Êª²Ö²ºÞº¾ã¼ÀåÂÂèÃÃéÅ¿ãýáÁ¸×»²Ñº­Ç´§Á¦˜¯—‰ Š…‹touwnonefygc‚pl„_WŒg_›[Q«kaÖtkâ€wý|vûztýieñ]YÿPJ÷F@å>6êC;Ö<2ÞD:ê\PÇ9-Ã;-¾6(¾6&Æ>.ÐC1ÐC1ÓB/ÔC0Ð79Ö=?ÚEAØC?Õ<6Ñ82Ø5.Û81å:2å:2â;3á:2×@5×@5ËF5ÌG6«/¸<"ÌK6ÎM8Ä>5·1(¿02É:<ÕDKßNUêW_î[cï^eëZaÝNRÏ@DÐ3*Ô7.à;7æA=ñCEóEGòAGî=Cä39á06é05ï6;þ37ú/3ÿ*/ÿ-2ë4.ï82ò72ë0+ç+)ê.,ä3-ã2,á=3á=3Þ=3Þ=3ä92ä92ë52ë52í57ì46ï34ð45ï64í42â4-Þ0)Û7+Ü8,Ý:+Ü9*ã3&ã3&ì0%î2'ì63ë52ð31ð31ò1,ò1,ê5,é4+à=4Õ2)Ð;5Ç2,çUXÿps÷alïYdâJaäLcÿ6`ÿ1[ÿ4aÿ;hÉVc¼IVV?/]F6SN8TO9\O>UH7LA/MB0;H*AN0J\4WiA^yBfJeˆDf‰EbŠAc‹BcEeGfKh‘Mi‘Rj’Sl“Pj‘NgŽKd‹HaŠH_ˆF^†G^†G_…J\‚G^|H\zF]wH^xIbwLdyNXu?Xu?Yv@L@0OC3SG7UI9WK;XL<[O?]QAcWGcWGcWGaUE`TDcWGi]MocSuryv“vvœss™qs¦su¨jo¯af¦Ya©]e­em¶lt½u}Ňϋ”Ù“œá›¤Å ©Ê¦®Ò«³×°´Ù°´Ù³³Ù´´Úµ¯Ó³­Ñ°§Æª¡À«ž¸¦™³™‹¢‹}”}x~e`fkbcbYZlZVvd`zUMŠe]ŒLB˜XNÀ^UÐneöuoÿ€zÿwsÿmiÿZTÿOIìE=óLDÜB8ßE;æXL¹+»3%½5'Æ>.ÎF6Ë>,À3!È7$ØG4ÝDFÒ9;È3/Ë62Ó:4Õ<6Ý:3à=6æ;3ã80Ý6.Ù2*Í6+Í6+Â=,Ã>-ÑU;ÄH.½<'½<'Â<3Á;2Ã46Â35ÝLSÞMTâOWçT\éX_çV]ÜMQÓDHÏ2)Ò5,Ú51Ú51à24á35â17á06ç6<æ5;ð7<ô;@þ37ø-1ÿ).ÿ/4ê3-ð93ó83ì1,è,*ë/-æ5/å4.à<2à<2ß>4ß>4æ;4æ;4í74í74ë35ë35î23ï34í42ë20à2+Ý/(Ü8,Ü8,Ý:+Ü9*ã3&ã3&ì0%î2'ì63ë52ð31ð31ò1,ò1,ê5,é4+á>5Ð-$Ô?9Ê5/ödgÿqtò\gçQ\àH_æNeÿ9cÿ1[ÿ4aÿ;hÁN[ª7DH1!]F6RM7NI3\O>VI8I>,NC18E'=J,EW/Rd<Zu>c~Gc†BeˆD`ˆ?a‰@a‹CcEdIfKgPgPj‘NhLeŒIcŠG`‰G_ˆF_‡H_‡H\‚G[F_}I^|H`zKa{Lf{Pg|Q[xB[xB\yC?C5BF8IF=KH?RH?TJA\L<_O?`R8`R8\T?^VA^ZWfb_jiwqp~uo›zt {w©zv¨op©gh¡`a¤]^¡_a®eg´qoÃ{yÍ…ØŽŠá—‘뜖ð ŸÙ ŸÙ¤ Û¥¡Ü¥¡Ü¥¡Ü¤ŸÙ¤ŸÙ¤œÕ¢šÓ ™ÍŸ˜Ì•Æ–Ž¿‹ƒ²‚z©mqtdhkc_\a]ZoXRnWQ„RG‰WLœND¨ZP¸WN¼[RÔmdã|sî†}ø‡ðxwòzyça`ØRQØDBîZXÌ8.Æ2(Ä7&Ã6%À7$À7$Å8&É<*Ð=-Ò?/Ó7(×;,×@/Ó<+Í6%Ì5$Ù9+áA3à:.ß9-Ú8+Ø6)Ë:'Ë:'ÁA(ÃC*Ã:2Ç>6ÌC;ÏF>ÌC;Ä;3¹3*³-$Ã=4ÍG>×QHÝWNá[RßYPÕOFÊD;Í<!Ï>#Þ7'Þ7'ï+-í)+ø$3ù%4ÿ(?ÿ(?ÿ(@ÿ(@ÿ$Aÿ$Aÿ"Aÿ"Aÿ7ÿ :ÿ&;ÿ%:ï+5ï+5ã77ç;;Û94Û94Ü;3Ý<4å:3ä92è62è62ì23ì23é62é62ã80á6.Ù7*×5(Ú;(Ú;(Û:&Û:&ß9#ß9#â7#â7#ì3.í4/ï4+ð5,í5)í5)ä9(ã8'Ú<0Õ7+Ò:7Ö>;ÿkyÿbpúRkñIbúKlé:[ü7bÿ=hçFgìKlšVWe!"83 ?:'HE2PM:LK6DC.0I+3L.EHHK JR-U]8ZjEdtOcNePa†Cb‡DaŠ<cŒ>eDgFl‘Nm’Oi’FgDeFc‹DeŠGd‰Fc…HaƒFdƒJbHbEbEd€Fd€FcDa}BX}8[€;^ƒ>;?1>B4FC:HE<OE<QG>ZJ:]M=_Q7_Q7\T?_WB_[Xgc`lkyqp~sm™uo›tp¢plžfg `aš\] \] ce²ik¸trÆ}{Ï…ØŒˆß“痑똗љ˜Òœ˜Ó™Ô™Ôœ˜Óœ—Ñ›–ЕΛ“Ìš“Ç™’ƘÁ‘‰º†~­~v¥lpscgjb^[`\YnWQmVPƒQF‡UJ¡SI¬^TºYP¼[RÎg^Ùrißwnè€wý…„ÿ‡†útsìfeæRPíYWÇ3)Â.$Ä7&Ä7&À7$À7$Å8&Ç:(Î;+Ð=-Ô8)Ô8)Ò;*Ñ:)Ñ:)Ð9(×7)×7)à:.ß9-Û9,Ù7*Ì;(Ê9&½=$¼<#¾5-Á80Å<4È?7É@8Ç>6Â<3À:1»5,Ä>5ÏI@ÕOFØRIÕOFÉC:¾8/Ê9Í<!Þ7'ß8(ñ-/ð,.ü(7ý)8ÿ*Aÿ*Aÿ(@ÿ'?ÿ"?ÿ!>ÿ=ÿ<ÿ5ÿ7ÿ$9ÿ%:ò.8ò.8å99ç;;Û94Û94Ü;3Ý<4å:3ä92è62è62ì23ì23é62é62ã80á6.Ù7*×5(Ù:'Ù:'Ú9%Ú9%Þ8"Þ8"á6"á6"ê1,ë2-í2)î3*ì4(ë3'â7&â7&Û=1Ò4(Î63íURÿesû]kðHaöNgôEfðAbø3^ý8cïNoâAb‚>?g#$<7$<7$=:'C@-CB-@?*/H*3L.@CMP%Zb=goJfvQhxScNeP`…Ba†C`‰;b‹=eDgFkMl‘Nj“Gh‘EeFdŒEf‹HeŠGd†Ib„GdƒJc‚IbEbEd€FeGcDb~C\<_„?b‡B4:,7=/??7BB:JA:MD=TH:WK=[P<[P<ZSC^WG`^ahfilmpq…qn™nk–ig˜ca’[\•Z[”Y\Ÿ\_¢gkµmq»wxÈ~φ„׊ˆÛŽŠÞŒà‘‘Í‘‘Í“‘Г‘Ð’Ò‘ŽÑ‘ŒÏ‘ŒÏ’ŒÌ‘‹Ë’‹Á’‹Á’‹·Œ…±‚|¢ztšcky[ce\Wd[V_^L^]KxTD{WG®SN»`[ÓWWÓWWÝc`ãif×rhÞyoú‹„ûŒ…ÿ„~û~x÷leìaZÂ6)¿3&Á:'À9&½;%¼:$Á8%Ã:'É:)Ê;*×9-Ó5)Í5'Ð8*Ñ>.Ñ>.Î6(Ç/!Ù9-Ø8,Õ7+Õ7+Î;+Ì9)À9%¾7#¾4)¿5*Á7,Ä:/Ç=2É?4ËA6ÌB7Å;0Ê@5ÎD9ÐF;ÑG<ÑG<Ê@5Á7,Ð5!Ó8$â4+ä6-ô-2ô-2ü)8ý*9û(;ú':ù%;ø$:ù!8ø 7û4ú3ÿ4ÿ5ù%4ý)8ñ4;ó6=å;;ä::Û94Û94Ý:3Þ;4å:3ä92é62é62í34í34é54é54ã81á6/Ø6)×5(Ù9)Ù9)Ù:%Ù:%Û9$Û9$Þ7$Þ7$Ý5(Þ6)à6'á7(Þ9&Þ9&Ù:'Ø9&×?2Ê2%Ò8:ÿlnÿ[møQcî<\þLlý6]ÿ>eé;^ì>aÑ`t®=QQ+*R,+59*26'47"9<'@?#?>"<@?C">HWa/pT}Œat‰^i~S`~JaK_„?`…@`‰;cŒ>eDgFkOkOk“Ji‘HhGgŒFgŒIf‹HfˆKd†Ie„Ic‚Gc€Fc€Fd‚FeƒGd€CcB`ˆBbŠDeG06(39+;;3>>6G>7KB;RF8UI;XM9YN:XQA^WGa_bigjlmop„ol—jg’`^XV‡STWX‘[^¡ad§ko¹qu¿z{Ë‚Ò‡…؉‡ÚŒˆÜ‰ÝŽŽÊŽŽÊŽŒËŽŒËŠÍ‹ˆËŒ‡ÊŒ‡ÊŒ†Æ‹…ņ¼Ž‡½Ž‡³ˆ­yŸwq—aiwYad[Vd[V_^L]\JvRByUEªOJ¸]XÔXXÖZZàfcåkhØsißzpë|uë|uÿ‚|ÿ‡ÿ€yõjcÉ=0Ä8+Â;(Á:'½;%½;%Á8%Â9&Ç8'È9(Ø:.Ô6*Í5'Ï7)Ð=-Ð=-Í5'Ç/!Ô4(Ô4(Ò4(Ó5)Í:*Í:*Ä=)Ã<(Ã9.Ã9.Ã9.Ã9.Ä:/Æ<1Ç=2È>3ÐF;ÐF;ÌB7Ç=2È>3ÌB7ËA6È>3Ð5!Ó8$ã5,å7.ô-2ô-2û(7ü)8ù&9ù&9ù%;ù%;ü$;ý%<ÿ#:ÿ#:ÿ6ÿ6ú&5þ*9ó6=ô7>ä::à66Û94Û94Ý:3Þ;4å:3ä92é62é62î45î45ê65ê65ã81á6/Ø6)×5(Ø8(Ø8(Ø9$Ø9$Ú8#Ú8#Ý6#Ý6#Ü4'Ü4'ß5&à6'Ý8%Ý8%Ù:'Ø9&Ó;.Ì4'äJLÿrtýVhïHZð>^øFfü5\ÿ9`ïAdôFiÂQe–%9F Q+*/3$15&8;&>A,A@$>=!=A CG&S]+r|Jžs˜§|‚—llV^|H_}I^ƒ>a†Ab‹=fAhGj’IlPlPl”Kj’IhGgŒFgŒIgŒIg‰LfˆKe„IdƒHdGdGf„Hf„Hf‚Ed€CdŒFfŽHj’L,4'/7*692:=6A>9DA<KD:NG=QK=QK=ROFYVM__iggqij†klˆih”baUWŠOQ„MQUY˜^b«ei²mrÃrwÈ|Ђ…Ö†‡×‡ˆØ‰ˆÔŠ‰ÕŠ‹ËŠ‹Ë‰‰ÏˆˆÎ‡„Ó‡„Ó‡‚Ô‡‚ÔŒ„ÍŠ‚ËŒ„½…¾‡«‡¥}zur‡ŽU^ˆOXfYPgZQSeKPbHhXAk[D E@±VQÛNVÞQYæ^bëcgÝmiåuqáuiÝqe÷|tþƒ{ÿ‡|òlaÈ@0À8(¿='¿='½=$½=$Â9&Â9&É8'É8'Û7-Ú6,Ð8*Ð8*Ç<)Ç<)Æ;(Å:'Ì9)Í:*Ñ8*Ð7)Í7(Í7(É<*Ë>,È<-È<-É;-É;-Ç9+Æ8*Æ7)Å6(Ï@2ÐA3Ï=0Ê8+Ë7+Ï;/Í9-É5)Ô-%Ø1)è00ë33ö-7ö-7ú+;ú+;ù/?ù/?ö0=÷1>ü0<ý1=ÿ/<ÿ/<û+9ù)7ò-7õ0:í9<ì8;Þ97Ù42Û94Û94Þ93ß:4æ95å84é54é54ñ35ò46í76ì65ã81á6/Ø6+×5*Ô8)Ô8)Ô9'Ô9'×8%×8%Ø7#Ø7#Ñ:%Ñ:%Ï=$Ð>%Ð@(Ð@(Í?+Í?+Î70Ô=6ÿ[eÿ`jÿLjò;Yÿ@jù6`ÿ5_þ-WØVnÛYq|KQX'-9/.<21-0)36/7A)9C+9=:>RIbY.t‰N¤i¦¾Š¦¾ŠŠ¦uo‹Z_€G^F]…>`ˆAeŽ@i’Dl”Km•Lo“Sn’Ro•Ll’IhGgŒFgŒIhJi‹NhŠMd†Jc…IdƒGdƒGf†Gg‡Hg…EeƒCfŽGi‘Jl”M*2%-5(4707:3=:5@=8G@6JC9NH:NH:NKBVSJ]]geeoef‚ef‚a`Œ[Z†PR…MO‚PT“[_žei²lp¹sxÉw|Í‚Óƒ†×…†Ö…†Öˆ‡Ó‰ˆÔ†‡Ç…†Æ„„ʃƒÉƒ€Ïƒ€Ï…€Ò…€Ò…΋ƒÌŒ„½Œ„½‹…©„~¢yv‹qnƒ‹R[…LUfYPh[RTfLRdJiYBk[D E@²WRÜOWÞQYä\`éaeÛkgãsoç{oßsgö{sîskþxmã]RÃ;+½5%¿='¿='¾>%¿?&Ä;(Ä;(Ê9(Ê9(Ø4*Ú6,Ó;-Ð8*Å:'Ä9&Æ;(É>+Ï<,Ó@0ÚA3Ö=/Î8)Ê4%Æ9'Ê=+Æ:+Ç;,É;-É;-È:,Ç9+Æ7)Å6(Æ7)Ë<.Ñ?2Ñ?2Ó?3Ò>2Ë7+Ã/#Ò+#Ö/'è00ì44ù0:ù0:ý.>þ/?ú0@ú0@ö0=õ/<ù-9ù-9ü*7ü*7ÿ/=þ.<ö1;ö1;ê69é58Û64Ù42Û94Û94Þ93ß:4æ95å84é54é54ò46ó57î87í76ä92á6/Ø6+×5*Ó7(Ó7(Ó8&Ó8&Ö7$Ö7$×6"×6"Ï8#Ð9$Î<#Ï=$Ï?'Ï?'Í?+Í?+Î70ãLEÿfpøR\ÿHfñ:XÿBlõ2\ÿ6`ý,VÖTlÍKcf5;S"(C98<2125.5814>&1;#37?Ci`5ˆT›°uª¿„µÍ™®Æ’’®}w“bd…L`H]…>a‰BgBl•Go—Np˜Oq•Uo“So•Lk‘HgŒFf‹Ef‹HhJi‹Ni‹Ne‡Kc…IdƒGe„Hg‡HhˆIh†Fg…EhIj’Km•N%0"(3%/4-16/664997?<7B?:HE<HE<HIDQRMY[h`bo_c€]a~\]WXˆRSŒTUŽZ\¦fh²nsÇsxÌy~Ù|Ü€„Ý…Þ‚„ׂ„׃…Òƒ…Òƒ‡Ç‚†ÆƒÍ€‚̃ÓƒÓ…Õ†€Ö…ЋƒÎ‹„·‰‚µ‡ƒš{’usxljoUR|PMeYIh\LZgKXeIe^Bg`DPA¡bSÌXXÌXXâZ^æ^bç`dðimózoërgúulÝXOçYMÑC7Ä5$È9(Ã;%Ã;%Ä<&Å='Í:(Í:(Ô6*Ô6*Ò/&Õ2)Î:,Î:,Â=*À;(¿<(À=)Ç;*ÑE4àJ<ÝG9Ò<.Ê4&È6'Í;,Æ9'Æ9'È9(È9(Ê9(Ê9(Ë8(Ë8(Î6(Ò:,×>0Ø?1Ü@3Ü@3×9-Ï1%ß--ä22ð39ó6<ú2?ù1>ö0?ö0?í/9í/9ê17é06ë.2ë.2ï+/ï+/ó6<ô7=ï8<í6:ã77á55Ú72Ú72Ü94Ü94à85á96ç77æ66é56é56ó49ó49ï77î66ä84á51Õ7,Ó5*Ï9*Ï9*Í:(Í:(Ï9(Ï9(Ð9&Ð9&Æ:!Ç;"Ä>#Æ@%ÃA)ÄB*Ê>/Ê>/×79÷WYÿ[qþH^ÿ<bþ:`ÿ7eý4bì?[ðC_¤[bˆ?F<;6:94A;?;59E24D137;$6:#3GJ^-}…I ¨l©Ç‡­Ë‹®Í”¤ÃŠ°{x™dfŠM]D\„=`ˆAgBm–Hp˜Op˜On•Tm”Sn”KjGf‹Ed‰CeŠGgŒIhŒNhŒNe‡Jd†Ic†Fd‡Gf‰EgŠFfŠDe‰Cg’Jj•Mm˜P#. &1#,1*.3,331553;83>;6FC:FC:FGBOPKWYf^`m\`}Z^{]^ŽZ[‹WX‘\]–df°qs½x}Ñ|Õ„ß†áƒ‡à‚†ßƒÖÔ€‚σЄˆÈƒ‡Ç‚„΃̈́€Ô†‚Öˆ‚؉ƒÙŒ„ÏŠ‚͉‚µ‡€³„€—{wŽpnsgejSP{OLeYIi]M[hLYfJg`DhaE‰J;›\MÅQQÆRRÜTXàX\â[_ëdhîujépeõpgÊE<ÐB6Á3'Ä5$ÒC2Ã;%Ã;%Å='Æ>(Î;)Î;)Õ7+Õ7+Ï,#Ñ.%Ë7)Î:,Ä?,Â=*½:&º7#¿3"ÏC2äN@äN@×A3Í7)Ê8)Ï=.È;)Ç:(Ç8'Å6%È7&É8'Ë8(Í:*Ò:,Ó;-Ò9+Ï6(Ô8+Ù=0Û=1×9-é77í;;÷:@÷:@û3@÷/<ò,;ð*9ì.8í/9ê17ë28ï26ð37ö26ö26ò5;ô7=ð9=í6:á55ß33Û83Þ;6Ü94Ü94à85á96ç77æ66é56é56ó49ô5:ï77î66ä84á51Õ7,Ó5*Î8)Î8)Ì9'Ì9'Î8'Î8'Ï8%Ï8%Ä8Å9 Â<!Ä>#Â@(Â@(È<-È<-Ü<>ÿ`bÿPfÿKaú6\ÿ>d÷.\ÿ9gè;WûNj™PWm$+=<7CB=>8<=7;E24D139=&?C,DX'_sB‘™]²º~­Ë‹ªÈˆ¤ÃŠ›º‹¬wx™de‰LY}@Z‚;_‡@fAl•Gp˜Op˜On•Tl“Rm“JjGf‹Ed‰CeŠGgŒIhŒNhŒNe‡Jd†Ic†Fd‡GgŠFh‹Gg‹EfŠDi”Lk–Nn™Q(0!'/ (-&).'.0-1306729:5<>3?A6CF?ILEOR[UXaY[r\^uYX„[Z†]^—dežkmºvxÅ~܃„ቋ酅傂ØՂσ‚Ѐ„À„ÃɃƒÉ…‚φƒÐŠ„Ί„Ή½ˆ€¼ˆ£„}Ÿz‚vowkg^c_Ve`Ld_Ke_Ie_If^Gg_Hj^Dk_EoO6zZA¦]N±hYÖVSÔTQôOVþY`øiaçXPÚA9Ï6.Ö5+Ú9/Ù<-×:+Ï8%Ð9&Ï:&Ï:&×7)×7)Þ3+ß4,Ê0$Ì2&È;*Ê=,ÃB-Á@+¾=(»:%Ã7&½1 êVHßK=Á/ Ï=.Ë>-Å8'È;)È;)Ç8'Æ7&È5%È5%Ë3%Ì4&Ò6)×;.Ý=1Ü<0Ú6,Ú6,ä=4ëD;ù@Eñ8=ñ2:ó4<õ3>ð.9è.9ì2=æ9=ã6:ß76à87è;7ê=9ð95î73ë=<ê<;ç;9å97à85ß74Ü73Ü73Ý84Þ95ä88æ::é9;é9;ì8;ì8;ô5:ô5:î87î87ä=7á:4Ò:/Ï7,Æ9(Æ9(Ã:(Ä;)Ã<)Ã<)Ä;)Ä;)¿9 Ä>%º<#³5¹;%ÅG1Î>6Ã3+ÿZgÿVcÿGdü;Xò2Wñ1Vñ8aø?hÌgm«FLX=2M2'8D8:F:H46A-/T+/U,0?; IE*Qs7zœ`”¼s È©ÈŒ¼€—µ“±{žnfƒSVw>Xy@];b†@hŽAm“Fl”Kk“Ji’Pi’PhGeŠDa†Aa†Ad‰Ff‹HfŠJdˆHg‹Kg‹KgŒIeŠGc‹DdŒEhGk“Jm›PnœQpžS(0!(0!(-&).'-/,02/450783;=2=?4AD=GJCLOXSV_VXoY[rZY…]\ˆab›jk¤rtÁ}Ì…†ãŠ‹èŠŒð‰‹ïˆˆè„„䀀Ö}}Ó€̀΂†Åƒ‡Æ††ÌˆˆÎ‰†Ó‰†Ó‹…ÏŠ„Έ€¼†~º„}Ÿ~w™{t|rkshd[b^Ud_Kd_Kd^Hd^Hf^Gf^Gj^Dk_E{[B{[BœSD¥\MÑQNÕURöQXýX_çXPÝNF×>6Ñ80Ø7-Ú9/Ø;,Ö9*Ï8%Ð9&Ï:&Ï:&×7)×7)Þ3+ß4,Ë1%Ì2&Æ9(É<+ÂA,Á@+¾=(»:%Ã7&È<+äPBÜH:Ç5&Ë9*Ç:)Â5$Ê=+É<*Ê;*É:)Ì9)Ë8(Î6(Î6(Ò6)Ô8+Ø8,Õ5)Ô0&Ö2(Þ7.ã<3úAFñ8=î/7î/7ñ/:ð.9ê0;í3>ã6:Þ15Ú21á98ñD@÷JFûD@õ>:ç98æ87ä86ã75à85à85Þ95Þ95Ý84Þ95å99æ::é9;é9;ì8;ì8;ó49ò38í76í76â;5à93Ñ9.Í5*Æ9(Æ9(Ã:(Ã:(Â;(Â;(Ã:(Ã:(¿9 Ä>%¸:!³5¹;%¼>(É91ÑA9ÿZgÿQ^ÿ?\ø7Tõ5Z÷7\õ<eö=f¦AG™4:X=2Q6+4@44@4L8:Q=?U,0[26RN3ieJp’V¯sšÂyžÆ}™¸|™¸|˜¶€ŒªtqŽ^WtDQr9Z{B\€:b†@hŽAl’Ek“Jj’Ih‘Oh‘Of‹EcˆBa†Ab‡BeŠGgŒIg‹KfŠJhŒLiMhJgŒIdŒEfŽGi‘Hm•Lm›PnœQpžS-1",0!,/&,/&-/,/1.25,36-8<-:>/?C4EI:KMJQSPUUaWWc\Zr`^vedŒpo—yy¹„„Ä‹‹áæŽìŽëŠŠä„„Þ~Í~{Ê~€Ã…‡Â†ˆÃŠŠÆ‹‹ÇŠÃ‹ˆÁ‹„·Šƒ¶Š€£…{žv†zoujfod`j^PfZLUeJUeJc^Hc^HqWFrXGsZDt[Ez`EtZ?ŠP8•[CÏSIÖZPÿJOÿLQâ?:ß<7ß6/Þ5.â6,â6,Ý7)Û5'Ò7#Ó8$Ñ8&Ñ8&Ù5)Ù5)à2+á3,Ã7(Ã7(½:(À=+¿@-¿@-À;*¾9(Å3&ÛI<ÚF:Ô@4Ë=/Ä6(¿<*»8&Å:'Å:'Ç:(Ç:(Ê9(É8'Ì4&Ì4&Ö8,Ô6*×3)Ö2(Û3*Þ6-å:2ç<4ñ:>ì59é06ë28ì4<ì4<ä9?ç<BÕ:8ÝB@éPKóZUüZUôRMîC<ã81ß82ß82ß82ß82à93á:4ã:7ä;8ã77ä88æ89ç9:é9<é9<ë8<ë8<ï58î47æ66ç77Ý;6Ú83Ê:/Æ6+¾:+¾:+¸=+¸=+¶=*¶=*¶=*¶=*·:&½@,±:&®7#¶;,®3$Æ22æRRÿWiûJ\ñ;Tî8QäD\éIaÕPcÐK^fE6a@1ID.FA+8='49#D4%J:+G-U;,aa=„„`Š®q—»~ŽÄyŽÄy”°}›·„™³†€šm\uMHa9Nh8\vF_~;dƒ@g@k‘Di“Ih’HcKcKdˆBc‡Ac†Bd‡CgŒIiŽKjŽNjŽNhLiMgJfIeEg‘Gk–Gn™Jr£Tr£Ts¤U04%04%/2)/2)/1.02/14+25,8<-:>/>B3CG8HJGMOLQQ]SS_WUm[Yqa`ˆml”vv¶‚‚‰‰ßŽŽä’‘ï파慅߂Î~{Ê~}Á~ƒ¾„†ÁˆˆÄ‰‰Å‹ˆÁ‡„½…~±‚{®„z~t—xm}peumb^i^Zh\NeYKUeJUeJc^Hc^HrXGsYHt[Eu\FrX=oU:‹Q9š`HÔXNÕYOöAFò=BÖ3.Ø50Þ5.ß6/á5+á5+Ü6(Ü6(Ò7#Ó8$Ñ8&Ñ8&Ù5)Ù5)à2+á3,Ä8)Â6'»8&¼9'½>+¾?,Á<+¿:)Æ4'çUHÑ=1Ì8,ÏA3À2$¿<*¿<*Ã8%Ä9&Æ9'Ç:(Ê9(É8'Ì4&Ì4&Ó5)Ñ3'Õ1'Ù5+â:1ç?6ê?7é>6ê37ë48î5;î5;ê2:è08á6<å:@ñVTýb`ÿmhÿhcõSNãA<á6/ß4-Þ71Ý60Þ71Þ71ß82à93ã:7ä;8ã77ä88æ89ç9:é9<é9<ê7;ê7;ï58î47ç77ç77Ý;6Û94Ê:/Æ6+¼8)¼8)¶;)¶;)´;(´;(´;(´;(µ8$º=)¯8$®7#´9*¨-Æ22÷ccÿQcøGYñ;Tð:SçG_êJbÒM`ËFYlK<cB3ID.HC-@E/:?)B2#@0!G-Y?0kkGk±t´w…»pˆ¾s¹†¹†Ž¨{iƒVHa9>W/Jd4WqA^}:c‚?fŒ?jCh’HfFbJaŽIb†@c‡Ad‡Cf‰EhJkMm‘Qm‘QiMiMh‘KgJg‘Gi“Im˜Ip›Lu¦Wv§Xv§X78&67%57,57,56056057*68+;?(<@)?C*DH/HJ<LN@POKRQMVVLZZP``hjjrttš€€¦‡…Æ‹Ì”‘Þ“ÝÕ‰ˆÎ…¼€|·€|®€|®µ·†„µˆ†·‰…¨…¤ƒ{’wŽu}yowtgam`Zl\MjZKkZHjYG^`J^`Je]Je]JoZIq\KzYH{ZI†R=†R=¦M;±XFØNCÔJ?å82á4.Ú1*Ý4-ã5.ã5.á3(à2'Ú7&Ü9(Ï9!Ð:"Í;$Í;$Ô9'Ô9'Û5)Ü6*¹?*µ;&²8#³9$½<)À?,É:,Æ7)Ñ7-õ[QÖ>3Ë3(ÊB2º2"°<%¶B+Á9)Â:*Ä;+Ä;+É:,É:,Î7,Î7,Ð2)Ð2)Õ0*Û60ç;7ê>:è;7ä73ç85ë<9î<<é77à35ã68ãEDëMLÿ{uÿrlïb[ÙLEÐ71Í4.Ü73å@<Þ:1Ý90ß80Þ7/â62â62ä65å76æ68æ68ç7:è8;è8;è8;è7=ç6<î79í68æ:8æ:8Ù?7Ö<4Æ>2Â:.´;*´;*­=)­=)ª=(ª=(©<'©<'§<(©>*¡:)¡:)©9.£3(Í>BúkoôM^ðIZåHYåHYÆY^ÄW\Ÿ_UšZPUU=NN6QE-OC+JC&F?"8G;JC[)Tl:sƒRˆ˜g¢n“¥qŽ²u–º}¢´Ž“¥u†fRcC?N1BQ4Oa7Xj@_{>d€CgŒ?kCf’Ee‘D`G_ŽFb…Ad‡Cf‰Eh‹GiŽKkMk’Qm”Si’Nj“Oj”Li“Kh”Ej–Gn›JqžMt§Xt§Xs¦W<=+<=+;=2;=2;<6;<6;=0;=0>B+@D-BF-FJ1IK=MOAPOKRQMWWMZZP]]effnmm“yyŸÀ†„ÅŽ‹ØŽ‹ØŒ‹Ñ‡†Ìƒº|x³zv¨yu§xx®zz°}®€~¯} }yœ|t‹xp‡tjroemm`Zi\VjZKk[Ll[Il[I_aK_aKf^Kg_Lq\Ks^M|[J}\K”`K[F§N<¨O=É?4Å;0Û.(Ý0*Þ5.ß6/ã5.á3,à2'ß1&Ú7&Û8'Ï9!Ð:"Í;$Í;$Ô9'Ô9'Û5)Ü6*º@+´:%¯5 °6!»:'À?,É:,Ç8*Ø>4õ[QâJ?Ð8-ÉA1»3#©5²>'¿7'¿7'À7'À7'Å6(Ç8*Í6+Î7,Ú<3Ù;2Þ93á<6é=9é=9å84á40è96ê;8ì::é77ê=?úMOÿdcÿnmøicãTNÉ<5¾1*Ì3-Õ<6á<8à;7à<3ß;2à91ß80â62â62ä65ä65ç79ç79è8;è8;è8;è8;ç6<ç6<î79í68æ:8æ:8Ù?7×=5Æ>2Â:.²9(²9(¬<(«;'¨;&¨;&§:%§:%¦;'£8$ 9( 9(¤4)±A6àQUögkñJ[ðIZèK\åHYÂUZ¾QVœ\R™YOKK3LL4RF.J>&<5;4>M"Sb7pˆVz’`‡—f‰™h‰›g¡mŒ°s´wƒ•omYO`@;L,8G*AP3N`6Wi?`|?eDgŒ?kCf’Ee‘D`G_ŽFd‡Cf‰EjIkŽJjLkMj‘Pl“Rk”Pl•Ql–Nk•Mj–Gm™JqžMt¡Py¬]y¬]x«\CB0CB0BB6BB6BB:BB:AD3@C2CG,DH-GJ+JM.MO7OQ9SQDUSF[]8[]8\]MbcShgwsr‚zy¥€«„ƒ½…„¾‡„»„¸~|¤wuspqnomŸqo¡tršus›vsˆsp…rlnoikmcYj`Vl\LjZJn\Ho]Iq\Iq\IqYMqYMj^Nj^NlaOmbP\L‚]M­YO¤PF¼;5º93Ë3(Ë3(Ó3#×7'à8/ß7.á5+à4*ß5&ß5&Õ9#Ô8"É<!Ê="Æ>$Æ>$Í<'Í<'Ô8)Õ9*µE/­='©4 ©4 º6'À<-Ï8/Í6-Ú72ðMHïUMÚ@8ÇC4À<-¡4¬?(À;,¿:+¿7)¿7)Ä6*Ç9-Ñ:1Ó<3âC=áB<ä?;ã>:è<:è<:è88æ66å:3å:3ä84è<8ñLJÿ\Zûfb÷b^Æ?9¾71º4+À:1ÔA:ÚG@Þ<9Ö41à<3ß;2â92á81ä73å84è66é77ê69ê69ê7;ê7;è7=è7=æ7<æ7<ë78ê67â96ã:7Ö?8Ó<5Â>1¾:-­:'­:'¦;'¦;'¢<&¡;%Ÿ;$Ÿ;$š?,’7$–=+”;)™2)ºSJïhnæ_eìP^éM[ÕOXÑKT¤^R¢\P}nO|mNFN6CK3U<&N5D6QC Iw6f”Ss·lu¹n„£gu”X‡Š]‘”g‹”i€‰^WdHGT8;E-8B*:D,?I1JX4XfBd|BiGhŒBlFg“Fe‘D^‘F]Ef‰EiŒHmLmLkMjLiMj‘No˜Rp™So›PnšOmœLožNs£Ow§S{®_z­^y¬]FE3FE3EE9FF:FF>FF>EH7DG6EI.FJ/IL-LO0NP8QS;USFVTGZ\7Z\7XYI\]Mbaqlk{sržyx¤{z´}|¶~µ|³ywŸqo—mj‰if…ec•fd–igjhkh}hezicef`bg]Se[QiYIk[Ko]Iq_Ks^Kr]JrZNrZNj^Nk_OmbPncQ‚]Mƒ^N¦RHœH>µ4.·60Î6+Ð8-×7'Ù9)Þ6-Ý5,ß3)à4*à6'à6'Õ9#Ò6 É<!Ê="Æ>$Æ>$Í<'Í<'Ô8)Õ9*µE/­='¨3¨3º6'À<-Ï8/Í6-Ò/*ã@;õ[SáG?ÊF7ÉE6£6¯B+ÊE6ÉD5È@2Ç?1Í?3ÑC7ÛD;ÞG>ß@:Þ?9ß:6Ý84á53â64ç77é99è=6å:3â62ç;7ïJHñLJÓ>:»&"´-'¼5/Å?6ÉC:Ò?8Ò?8ß=:â@=ß;2ß;2á81â92å84æ95ê88ë99ê69ë7:ê7;ê7;è7=è7=æ7<å6;é56è45á85á85Õ>7Ò;4À</½9,­:'¬9&¦;'¥:&¡;% :$ž:#ž:#š?,Ž3 —>,“:(–/&Æ_Vüu{ßX^ðTbèLZÏIRÊDM ZN£]Q€qR€qRMU=@H0L3O6 \N+{mJx¦e“Á€}Ávy½r}œ`f…Iy|O„‡Zt}RZc88E)0=!4>&<F.<F.9C+CQ-Vd@e}Cj‚HiCm‘Gg“Fe‘D_’G^‘Fh‹GkŽJo’No’NkMiŽKgŽKiMr›Ur›UržSqRpŸOr¡Qw§SzªVt§Xs¦Wq¤URK;RK;RK;RK;RK;RK;RK;RK;UN>UN>VO?WP@YRBZSC[TD\UEb[IaZH`XMbZOf\Zlb`rgmvkqznx|pzs}€t~|qyujrmbhh]cbbZaaY__U]]S^ZO^ZO`ZLa[Me]Je]Jg\Fg\Fi]Ei]Ek]Cl^DedOjiTyUEsO?™OD£YN­UG¯WI¦N8ŸG1¥<'¦=(Ä6,É;1â/2á.1Û7-Û7-Ü8.Ü8.Ú8-Ù7,×7+Ö6*Õ7+Õ7+Ô8+Ô8+Ò9+Ò9+Ò9+Ò9+¶=,¶=,®9'¦1¨3!±<*¿=-½;+È5+É6,Ó;0ÛC8ÜJ=ØF9Å<*¹0ÝOEØJ@ÒE;ÒE;×G>ÙI@àA;Ý>8â43æ87ì:8ë97â94à72Ù<3Û>5ÐJ?ÊD9¿=0·5(°5%³8(»=.¿A2À;,Ä?0Ö=5Ù@8æ:6æ:6î66ï77å6;å6;ä79ä79â96â96â92â92Þ5.ß6/à70â92å95å95å97å97é;=ç9;Ý;9Ý;9ÐC<ÎA:»C5·?1¢=+¡<*š>)˜<'”<(’:&‘9%‘9%‡F2@,‰,$0(ÀJJännámpÊVY­RO¬QN™YO˜XN’\P”^R™_Tš`ULa 9N 2IMdv’H–²h »t »t˜°rƒ›]k~QZm@WcKQ]EHNB<B6;<,@A1<@2:>0:B3:B3>O/RcCZv<f‚Hm‘Gn’Hi’Fi’Fh’Jg‘IiRk‘Tl“Pl“Pj”Jj”Jj—Fl™HnžHnžHo¡Jq£Ls¥Pu§RvªXx¬Zw£hm™^f’WVO?VO?VO?VO?VO?VO?VO?VO?WP@WP@XQAYRB[TD\UE]VF]VFc\Jb[IaYNbZOdZXh^\lagodjpdnrfpthrthrqfnlaif[aaV\[[SYYQWWMUUKWSHXTI[UG\VHbZGc[HeZDf[Ei]Ej^Fl^Dm_EbaLjiT}YIyUEžTI¤ZO«SE­UG¤L6 H2§>)§>)Ä6,È:0â/2á.1Û7-Û7-Û7-Û7-Ú8-Ù7,×7+Ö6*Õ7+Õ7+Ô8+Ô8+Ò9+Ò9+Ò9+Ò9+·>-¶=,­8&¦1§2 ¯:(¾<,½;+É6,Ç4*Ì4)Ò:/ÙG:àNAÛR@ÙP>×I?ÑC9Ë>4Ë>4Ï?6ÑA8Ù:4Ö71æ87ç98ê86é75â94â94Ü?6ÞA8ÇA6Ã=2º8+µ3&¯4$²7'º<-¾@1Å@1ÇB3×>6Ø?7å95å95î66ï77æ7<æ7<å8:å8:ã:7ã:7ã:3ã:3á81â92ã:3ã:3æ:6å95å97ä86æ8:æ8:Þ<:Þ<:ÏB;Ê=6¶>0±9+¡<* ;)™=(˜<'“;'’:&‘9%8${:&|;'2*š=5ÄNNÙccÑ]`¾JM©NKªOL™YOšZP”^R•_S˜^S˜^SRg&Rg&\s-yJ–²h£¿u—²k†¡ZiC_w9Sf9H[.CO7=I18>239-:;+@A1<@2:>0:B39A2>O/QbB[w=gƒIn’Ho“Ij“Gj“Gi“Kh’Jk‘Tl’Um”Ql“Pj”Jj”Jj—Fl™HmGmGn Iq£Lu§Rw©TvªXvªXi•Z`ŒQX„I[TD[TD[TD[TD[TD[TD[TD[TDZSCZSC[TD\UE]VF_XH_XH`YId^Fc]Ec\Ic\Id\Oe]Pf]Vg^Wh_Zi`[ja\ja\h_Xd[T`WN^ULXVJVTHSQDQOBQN?RO@TQ@VSB\WD]XE_XEaZGd^Hf`Jh`IiaJc`MjgT[O[OªWQ«XR¸GA¶E?½>5»<3»9+º8*½8)À;,Æ=-Ç>.Ù7*Ù7*Ú8+Ú8+Ù9+Ø8*Õ8)Ô7(Ô8)Ô8)Ô8)Ô8)Ò9)Ò9)Ò9)Ò9)¸@0¶>.©:&¡2ž4¥;%³>*µ@,Ã>/¿:+Ä2%Æ4'Î</ØF9ÛN=ÝP?Ü75Ù42Ô2/Õ30Û96ß=:æ<<å;;î7;ì59ë35ê24ã75å97Ý>8Ü=7º:-·7*±6'®3$­5$°8'µ<+¸?.ÈD5ÉE6×@5×@5á:4à93ê65ì87ê69ê69é77é77æ93æ93å:2å:2â;2â;2á<6á<6ß<7Þ;6Ý98Ý98Ø:9Û=<ÔC>ÒA<ÂB7º:/¨:+¤6'œ=)›<(”=)“<(;&:%8$8$u8#t7"ˆ9,˜I<¶SN»XS±RN©JF›QHSJ’]O•`R“bT“bT•_U”^TfwC{ŒX“¥q¤¶‚ª¾‰ž²}y^Xn=?Q)@R*AP3=L/:C24=,58/58/:;+@A1;?19=/9A29A2=N.QbB\x>i…Kp”Jq•Kl•Il•Il–Nj”Lm”Qn•Ro—Pm•Nk•Ij”Hk˜GmšImImIpŸNt£Rx©Xx©Xt¤Xp T_ˆNU~DNw=`YI`YI`YI`YI`YI`YI`YI`YI^WG^WG_XH`YIaZJb[Kb[Kc\Ld^Fd^Fe^Ke^Ke]Pe]Pd[Td[Tg^Yg^Yf]Xf]Xe\Ud[TcZQbYP[YMXVJTREPNAOL=OL=QN=RO>WR?XS@[TA^WDa[Ec]Gg_Hh`IdaNheR}YM‚^R±^X°]W·F@±@:½>5½>5¿=/½;-½8)¾9*Ä;+Ç>.Ø6)Ù7*Ù7*Ú8+Ø8*Ø8*Õ8)Õ8)Ô8)Ô8)Ô8)Ô8)Ò9)Ò9)Ò9)Ò9)¹A1¶>.©:&¢33¢8"°;'´?+À;,¿:+Æ4'Ç5(É7*Ì:-Ë>-Ë>-Û64Ù42Õ30×52Ü:7à>;ç==ç==í6:ê37é13é13ã75ã75Ö71Ó4.´4'³3&°5&¯4%®6%¯7&²9(³:)Ä@1ÆB3Ö?4ØA6â;5á:4ê65ë76ê69ê69é77é77æ93æ93å:2å:2à90à90ß:4ß:4Þ;6Ý:5Ü87Û76Ø:9Û=<ÓB=Î=8»;0³3(£5&¢4%š;'š;'“<(‘:&:%8#Œ7#‹6"|?*s6!ƒ4'•F9¯LG®KF©JF¬MI›QHœRI‘\N“^P’aS“bT–`V–`V|Y˜©u¬¾Š¦¸„£nr†QLb1,B,>1C8G*9H+9B16?.9<3:=49:*?@0:>08<.9A28@1<M-PaA^z@j†Lq•Ks—Mn—Ko˜Ln˜Pm—Op—Tp—Tp˜Qn–Ok•Ik•Il™Hn›JnžJoŸKs¢Qx§Vz«Zv§VlœPd”H[„JR{AKt:b[Kb[Kb[Kb[Kb[Kb[Kb[Kb[KaZJb[Kb[Kc\Lc\Ld]Me^Ne^Nd^De_Ef`HgaIhbLgaKf_Lf_LibOhaNgaKgaKf`Hf`HgaGgaGa^M^[JXUDSP?OL;NK:LK9ML:ON:PO;PR=SU@VXCXZE[]H\^Ie_Qe_QqSH|^S±f`³hbÇIJÁCDÖ89Ö89Õ62Ò3/¾;)½:(­E(°H+Ô7&Õ8'Ö9(Ö9(Ö9(Ö9(Ô9'Ô9'Ò9'Ò9'Ò9'Ò9'Ñ:'Ñ:'Ñ:'Ñ:'»A2·=.§<(¡6"•7–8 >%§E,±<(²=)Â8+Ä:-Ì8,Í9-Ò;0Ô=2ñ4;ï29æ37å26ß56ß56à35à35æ69å58ä68å79Þ<:Ú86É4.Ã.(­:(­:(«:(«:(©:&©:&¬9&¬9&·:(¼?-Í?3ÑC7ß>6ß>6æ:6æ:6î64î64í74í74ê93ê93æ;3æ;3Ý:1Þ;2Ú=6Û>7×?:Ö>9Ô>=Ó=<ÇD<ÇD<¿E:¸>3¦:-¡5(˜9'š;)’=)‘<(‹='Š<&‡:&…8$…7#…7#}C/o5!x3#ŽI9¡SGOC˜PDŸWK‘YJ‘YJ‹[MŒ\N]R‘_T™`WšaX‚Žf˜¤|›©…€Žj\kNDS62?+$1,8*.:,4<17?4<?6;>5;;199/89)>?/:>07;-8@17?0<M-O`@^z@k‡Mr–Lt˜Np™Mp™Mo™Qn˜PpšPq›QpšNn˜Lm˜Im˜Io›LqNq Pt£Sx§Y{ª\y§^pžUb‘IX‡?^‡MU~DNw=d]Md]Md]Md]Md]Md]Md]Md]Md]Md]Md]Me^Ne^Nf_Of_Of_Of`FgaGhbJhbJicMicMhaNhaNhaNhaNgaKf`Jf`HgaIhbHhbHc`O`]L[XGVSBQN=MJ9IH6HG5KJ6LK7KM8MO:PR=RT?SU@TVA]WI]WIjLAwYN¬a[±f`ÎPQÑSTÝ?@Ú<=Ø95Õ62Á>,¿<*­E(¬D'Ó6%Ô7&Õ8'Ö9(Ö9(Ö9(Ô9'Ô9'Ò9'Ò9'Ò9'Ò9'Ñ:'Ñ:'Ñ:'Ñ:'º@1¶<-§<(£8$–8”6œ:!¥C*µ@,µ@,Ã9,À6)Æ2&É5)Ò;0ØA6ï29ð3:ê7;ë8<å;<ä:;æ9;å8:ã36ä47æ8:ç9;Þ<:×53Æ1+¿*$®;)®;)¬;)¬;)«<(©:&«8%ª7$±4"¶9'È:.Ì>2Ü;3Ý<4æ:6ç;7î64î64í74í74ê93ê93æ;3æ;3á>5á>5Ý@9Ý@9Ø@;×?:Ô>=Ó=<Ã@8À=5¶<1°6+¡5(Ÿ3&˜9'š;);';'Š<&ˆ:$…8$„7#„6"ƒ5!v<(n4 }8(”O?¦XLŸQE—OCœTH“[L’ZK‹[M‹[M[P^S˜_VšaXq}Ux„\n|XSa=8G*.= /<(0=)1=/1=/5=28@5>A8>A8;;177-78(=>.9=/7;-7?06>/;L,N_?^z@k‡Mr–Lt˜Np™MqšNpšRo™Qq›Qq›Qq›Oo™Mn™JošKržOu¡Rw¦Vx§Wz©[w¦XqŸVf”K[ŠBU„<_ˆNW€FPy?e^Ne^Ne^Ne^Ne^Ne^Ne^Ne^Ne^Ne^Nf_Of_Of_Og`Pg`Pg`PibOibOhaNhaNhaNhaNhaNhaNgaKgaKgaIf`HfaDgbEgbEgbEf`Jd^H`[E\WAUS>PN9KJ6IH4EH5FI6EI8GK:FM=GN>FO>GP?RNCUQFXO@_VGZI…^M²QJÂaZàHGÛCBá77Þ44Ì=/Ê;-°B'­?$Ð7%Ð7%Ð9&Ñ:'Ò;(Ò;(Ñ:'Ñ:'Ñ:'Ñ:'Ñ:'Ñ:'Ð;'Ð;'Ð;'Ð;'º>2¶:.¨=)¦;'’; 6‘:šC'¯B-±D/¿;,¼8)Å.%Æ/&Ò5.Ù<5ê2:í5=ç>Aé@CÞDBÜB@ÔC@ÓB?Æ52É85É>9Ê?:¿@9¹:3«9.¨6+£>*£>*£@+£@+£@)¢?(£='¢<&ª7$¬9&º8*½;-Ë8.Ï<2Ú=6ÞA:ê93ê93è:3è:3æ;1æ;1à>3à>3ÝC9ÜB8ÓE;ÑC9ÉB<Æ?9À?:¿>9§?2¤</›:*™8(’9'’9'‹=)Š<(†=*†=*ƒ<(‚;'~:'}9&~7%}6$v3"x5$…B2—TD›YK“QCRD”YK[M[M[N\O”[R•\S˜[V™\W`hAX`9IR3=F'4@,2>*4>55?64=86?:=B;AF?EG9BD6?>*;:&78(=>.8<.6:,6>/6>/:K+N_?^z@j†Lr–Lt˜Np™MqšNq›SpšRpLpLpLn›Jn›JpLt Sx¤W~ª_~ª_x¦^oUd‘N\‰F[ˆE\‰Fb‰RY€IRyBg`Pg`Pg`Pg`Pg`Pg`Pg`Pg`Pf_Of_Of_Of_Og`Pg`Pg`Pg`PkdQjcPibOg`Mf_Lf_Lf_Lf_LgaKgaKgaIgaIgbEgbEgbEfaDgaKf`Jc^H`[EZXCUS>ON:LK7DG4DG4CG6DH7BI9BI9BK:BK:MI>SODWN?VM>mF5mF5£B;¼[TäLKÝEDâ88ß55Î?1Ì=/°B'ª<!Ï6$Ð7%Ð9&Ñ:'Ò;(Ò;(Ñ:'Ñ:'Ñ:'Ñ:'Ñ:'Ñ:'Ð;'Ð;'Ð;'Ð;'¹=1¶:.©>*§<(“<!Œ59™B&¤7"«>)Á=.Â>/Í6-Î7.Ø;4ÞA:ò:Bô<DëBEé@CØ><Ð64Ã2/¿.+¾-*Â1.Â72Â72¶70²3,¨6+¨6+¡<(¢=)¢?*¢?*¢?(¢?(¤>(¤>(¬9&­:'·5'·5'Å2(Ë8.Ù<5ßB;ë:4ë:4é;4é;4ç<2ç<2á?4á?4ÜB8ÛA7ÑC9Î@6Ä=7À93¹83·61 8+œ4'•4$–5%’9'’9'‰;'†8$†=*…<)ƒ<(:&~:'|8%}6$|5#v3"}:)‹H8•RB’PBŒJ<RDš_QYKŽZL‘]P’^Q–]T•\S–YT•XSV^7EM&5>8A";G3:F23=4-7./835>9@E>EJCGI;AC5>=);:&67'<=-8<.6:,6>/6>/:K+M^>]y?j†Lq•Kt˜Np™MqšNq›SpšRpLpLoœKn›Jn›JqžMv¢Uz¦Y‚®c«`v¤\h–NZ‡DVƒ@\‰FcMcŠSY€IRyBhaQhaQhaQhaQhaQhaQhaQhaQg`Pg`Pg`Pg`Pg`Pg`Pg`Pg`Ph_Zh_Zh_Xh_Xh_Vh_Vh`Sh`ShaOhaOhaOhaOhaNhaNhaNhaNg_Hf^Ge_Id^Ha\H\WCRQ=ML8GJ7DG4>E5=D4=F5>G6<G7;F6HJ<IK=?G0DL5XS6RM0J5ªs^Ýg]Ò\RåFCáB?â?:Ý:5Î:0Í9/Ç4$È5%Ê7'Ê7'Ë8(Ì9)Î;+Ð=-Ï<,Ï<,Ï<,Ï<,Ñ;,Ñ;,Ñ;,Ñ;,·2)º5,®=-©8(—8"“4•7™;"°@,®>*¼4(½5)Í4,Õ<4âC=çHBäDFæFHÔFBÈ:6°:.°:.¦<.¡7)¡=. <-œ<.š:,=-=-ˆ?,ˆ?,•>+•>+•@+–A,—@,˜A-œA,œA, ;) ;)¨7'©8(µ7+¹;/Á=1Ã?3Ú=4Û>5ÝA5ßC7ÜD7ÚB5ÔB5ÓA4ÓI<ÐF9ÁC7º<0ª8.¦4* 3,Ÿ2+=-<,‹<+‰:)†;(†;(=*=*|;'{:&x9'x9'x9'x9'u6%t5$z, ?3—OA•M?ŒM>‘RC‘VHRD™ZQ™ZQ’SL’SL™ZU–WR“VQža\QZ-HQ$AK&AK&<I/5B(1<+3>-1<,EP@X_MU\JLP7CG.@A"<=9:*=>.9=/9=/8@14<-8I)PaA`|Bk‡Mq•Kr–Ln—Kp™MpšRpšRnžHoŸIoŸKoŸKpŸOs¢Rz¦[~ª_‚­fw¢[i“Q_‰G\†F`ŠJdŽNg‘QcŠUZLSzEhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQi`[i`[i`Yi`Yi`Wi`WiaTiaTibPibPibPibPibOibOibOibOh`Ig_Hf`Je_Ic^J^YETS?ON:HK8EH5?F6>E5=F5>G6<G7;F6CE7AC5>F/DL5NI,ID'„M8¯xcÔ^TØbXñROæGDâ?:â?:ÕA7Í9/Í:*Î;+Ï<,Ï<,Î;+Í:*Í:*Í:*Î;+Î;+Î;+Í:*Ï9*Ï9*Ï9*Ï9*Å@7Å@7¶E5®=-˜9#’3’4”6¥5!ª:&Ã;/ÌD8ÞE=ãJBéJDéJDà@BáACÏA=Ä62¯9-°:.§=/¤:,¢>/ <-œ<.š:,=-<,‡>+‡>+‘:'’;(‘<'’=(”=)•>*™>)™>)£>,¢=+©8(¨7'²4(µ7+»7+½9-Ó6-Õ8/Ø<0Û?3ÙA4ÚB5ÕC6ÔB5Ê@3Ç=0»=1µ7+¨6,¥3) 3, 3,<,Ž;+Š;*‰:)†;(…:'=*=*|;'{:&y:(x9'x9'w8&u6%t5$€2&‘C7—OA“K=ŠK<PATFRD‘RI–WN”UN–WP›\W•VQRM—ZUT]0Zc6^hC[e@GT:6C)4?.<G6LWGWbR^eST[IIM4AE,?@!;<89)<=-8<.9=/8@14<-9J*PaA`|BlˆNr–Ls—Mo˜Lp™MpšRpšRp JoŸInžJnžJq Pu¤T|¨]~ª_{¦_ošSa‹I\†D_‰IcMdŽNbŒLb‰TY€KRyDhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQi_^i_^i_]i_]i`Yi`YiaViaViaTiaTiaTiaTiaTiaTiaViaVjbMiaLh`Kh`Ke`La\HYVCTQ>KL:HI7CF5AD3?F6?F6>E5=D4=F17@+AF/FK4G>!MD'‰YB¨xa¶UEËjZñc_äVRéEFêFGëADà69Ç9+Ç9+È:,È:,È9+Ç8*Æ7)Å6(Ê8+Ê8+Ê8+Ê8+Ë7+Ë7+Ë7+Ë7+Á2.Â3/¶6-±1(¡0 Ÿ.£/ ¦2#Á=1ÇC7ÙD=àKDéLGçJEåFBáB>ÒD@ÐB>ºD:±;1œ?.žA0”G3“F2F3D1‰E2†B/€C0~A.xD.wC-†:*†:*…<+…<+ˆ=*‰>+Š=+‹>,“@.’?-—;,—;,9*Ÿ;,¥;.¦</µ;0¶<1º>2¼@4ÀB4ÀB4¾C4¾C4°<-®:+¥;-¢8*—9-–8,’:.’:.‡>-†=,„=+‚;)€;+:*}<*~=+z;*z;*x:+w9*s8(r7'p7&p7&‰;1”F<’NAI<‡I<ŒNA’RH‘QG“LF™RL˜SNšUP—^W“ZS‡\S“h_v„S}‹Z|Œ_iyLIY25E;J)L[:crUapS[fHLW9CJ+>E&=@!:=78(;<,7;-9=/9A25=.9J*O`@`|BlˆNs—Mt˜Np™Mp™MpšRpšRq£Ln IlKnŸMt£Uy¨Zz¨`z¨`o™WdŽL[„B[„BcŒJh‘OdK^‡Eb‡SY~JRwChaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQhaQi_^i_^i_]i_]i`Yi`YiaViaViaTiaTiaTiaTiaTiaTiaViaVkcNjbMjbMjbMgbNd_K]ZGYVCNO=KL:FI8CF5?F6?F6=D4<C3>G29B-DI2DI2H?"^U8•eN–fO¡@0ºYIî`\î`\óOPíIJíCFç=@È:,Æ8*Å7)Å7)Ç8*É:,Ê;-Ê;-Ð>1Ð>1Ñ?2Ñ?2Ò>2Ò>2Ó?3Ó?3ÐA=ÑB>ÇG>ÅE<ºI9¼K;ÃO@ÇSD×SG×SGáLEàKDãFAáD?àA=Þ?;ÓEAÎ@<·A7¯9/œ?.@/”G3”G3ŽE2D1ˆD1…A.~A.}@-vB,vB,„8(„8(ƒ:)ƒ:)†;(†;(‡:(ˆ;)Œ9'Œ9'’6'“7(›7(9*£9,¥;.°6+±7,³7+´8,¶8*µ7)²7(±6'©5&¨4% 6(ž4&”6*”6*‘9-‘9-…<+„;*‚;):(~9)~9)|;)|;)z;*z;*x:+v8)r7'q6&p7&q8'A7•G=K>‹G:†H;OB”TJ•UK–OI›TN—RM—RM•\U•\U‘f]¢wn‹™h…“br‚UYi<BR+>N'O^=crQdsVZiLNY;AL.>E&=D%=@!;>78(:;+6:,8<.:B36>/9J*N_?_{Ak‡Mr–Lt˜Np™MqšNq›SpšRp¢KmŸHmžLr£Qy¨Z{ª\w¥]r Xa‹I\†D[„B^‡EeŽLh‘OdK_ˆFa†RX}IQvBhaQhaQhaQhaQhaQhaQhaQhaQibRibRibRibRibRibRibRibRja\ja\jaXjaXjbUjbUjcQjcQjcPjcPjcQjcQjbUjbUjbWjbWldQkcPkbQkbQjcQhaOb]J_ZGURARO>LK9IH6EF4CD2AB2?@0<K.:I,SC,P@)r7)”YK¶YQš=5¢1)²A9×XRìmgõeeåUUåHOéLSÕK@ÐF;Ê@5È>3Í@6ÑD:ÔF<ÕG=ÚJAÚJAÚJAÛKBÝJBÞKCÞKCÞKCìRRëQQãTPàQMÚQKÚQKßRKáTMäIEãHDçCBåA@ãA>äB?àE@áFA×IGÏA?¶?7°91œ@1œ@1F3G4‹C4ŠB3ˆ@2†>0=0€</{=0{=0};-};-~<.~<.~<.=/=-=-:+:+ƒ:+„;,ˆ:-‰;.Ž<.=/”<0”<0˜</˜</œ;+œ;+ž:*9)š9(™8'’9)‘8(Š;*‰:)…<-…<-<-€;,:+}8)|9){8(z8*z8*x9*y:+v;-t9+p6(o5'p8+r:-‹I;ŒJ<…L;ƒJ9‚M=‰TD”UL–WN—PL›TP•TP•TPŠdYˆbWylY†yfgvMZi@HY-AR&GZ-Wj=bxJg}OXjBK]5=L-7F':D,;E-;?08<-78(9:*59+8<.;C47?08I)L]=\x>i…Kq•Kt˜Np™MqšNq›SpšRmžLmžLp¡Pv§V|ªay§^pZg”QYƒC[…E`‰GcŒJgŽKgŽKeGdŒF`…RW|IPuBhaQhaQhaQhaQhaQhaQhaQhaQibRibRibRibRibRibRibRibRja\ja\jaXjaXjbUjbUjcQjcQjcPjcPjcQjcQjbUjbUjbWjbWldQkcPkbQkbQkdRibPe`Mc^KZWFVSBPO=LK9GH6EF4BC3@A1:I,;J-QA*SC,F8›`R®QI2*®=5²A9ÒSMðqkÿssôddòU\öY`àVKÙODÑG<ÍC8ÑD:ÔG=ÖH>ÖH>ÙI@ÙI@ÚJAÚJAÝJBÞKCÞKCßLDáGGàFFÙJF×HDÓJDÒICÕHAÕHAÝB>ÞC?æBAçCBåC@äB?ÝB=Û@;ØJHÎ@>µ>6±:2žB3›?0ŒC0D1‰A2ˆ@1†>0…=/€</€</|>1|>1~<.~<.~<.~<.=/=/=-=-<-<-ƒ:+ƒ:+…7*…7*‡5'‡5'7+8,”8+•9,›:*œ;+ <, <,™8'™8'’9)‘8(‰:)ˆ9(ƒ:+ƒ:+:+~9*}8)|7(z7'z7'y7)y7)u6'w8)u:,s8*o5'n4&q9,u=0K=‹I;„K:„K:…P@‹VF”UL•VM”MIšSO–UQšYUŒf[[PdWDgZGBQ(?N%>O#K\0^qDk~QcyKVl>M_7@R*6E&5D%<F.<F.:>/6:+89):;+59+8<.;C47?06G'HY9Ws9eGn’Hr–Lp™Mr›OrœTq›SlKnŸMs¤Sx©Xz¨_s¡Xg”Q]ŠGX‚B\†FcŒJfMfJeŒIeGfŽH_„QV{HOtAhaQhaQhaQhaQhaQhaQhaQhaQibRibRibRibRibRibRibRibRjcSjcSjcPjcPjdLjdLjdJjdJjdJjdJjdLjdLjcQjcQjbUjbUlcTkbSjaRkbSlcTkbShaQf_OaZH]VDVQ>QL9NI6KF3HC0FA.9H):I*c9)rH8³GG´HH¿2:½08ÉACÅ=?ÆLIÝc`íspêpmæadà[^ÚQIÔKCÎE=ÌC;ÏD=ÐE>ÐC<Í@9ÑB<ÒC=ÓB=ÔC>×C?ØD@ØD@ÙEAß>Cà?DÝCCßEEáIHáIHæFFåEEê@Cê@Cî@Bî@BåA@â>=Ø?9Õ<6ÛEFÏ9:¸93·82¥@4 ;/‘>0‘>0;/Œ:.Œ70‹6/Š71Š71‡83ˆ94{<3{<3{=2{=2y=2y=2y>0y>0{=0{=0|=.{<-|:,{9+z8(y7'};/~<0‚:,ƒ;-Š;,Œ=.’<+“=,9(9(Š;*Š;*‚>+=*~=+}<*€8*7)~6(}5'z4(z4(y5*y5*s3'u5)t8-r6+m5(m5(q<.vA3‡R@ƒN<|O<R?„VF†XHŽTIŽTI“NI—RMVO“ZSjYoZIFP5AK0?N/JY:VhB_qKd{MbyKUm=E]-AV-5J!/?"3C&;F89D67;:598:;+;<,59+8<.;C46>/5F&EV6So5a}CkEq•Ko˜Lr›OrœTq›Sl No£Qr¥Xt§Zq Xi˜P_ŒKY†E]‡G_‰Ib‹IdKfŽHeGdŒCc‹B^ƒPUzGNs@haQhaQhaQhaQhaQhaQhaQhaQjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdQkdQkeMkeMkeKkeKkeKkeKkeMkeMkdRkdRkcVkcVlcTkbSjaRkbSlcTlcTibRg`Pd]K_XFXS@SN;OJ7LG4ID1FA.:I*:I*f<,WGÀTTª>>¶)1ÒEMÆ>@Á9;¶<9ÁGDÖ\YàfcÝX[ËFIÒIAÎE=ËB:ÍD<ÑF?ÒG@ÐC<Ë>7ÑB<ÒC=ÓB=ÔC>×C?ØD@ÙEAÙEAß>Cß>CÝCCßEEßGFÞFEà@@Þ>>ê@Cé?Bê<>é;=â>=ã?>ÞE?ßF@×ABÌ67µ60¶71¥@4Ÿ:.=/=/‹9-‹9-‹6/‹6/Š71Š71ˆ94ˆ94{<3{<3{=2{=2y=2x<1x=/x=/w9,w9,y:+z;,|:,|:,|:*|:*};/|:.€8*7)„5&…6'‹5$‹5$7&7&ˆ9(‰:)=*=*~=+}<*7)~6(}5'|4&y3'y3'x4)x4)q1%t4(s7,r6+m5(n6)r=/xC5‰TB…P>~Q>TA†XH†XHŒRGŠPE—RM—RMŠQJTMzeTlWFCM2>H-HW8ZiJgySewQXoAQh:Ld4H`08M$-B*:1A$:E79D68<;7;:;<,;<,59+8<.;C46>/3D$CT4Pl2_{AjŽDp”Jo˜Lr›OrœTrœTn¢Pq¥Ss¦Yp£VkšRb‘I[ˆGW„CbŒL_‰I_ˆFaŠHfŽHgIc‹B^†=^ƒPTyFMr?h_Pi`Qi`Qi`QjaRjaRjaRkbSjaRjaRjaRjaRjaRjaRjaRjaRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdTn]Mq`PqdTqdTlcTi`QgaShbTebQebQa_JYWBVR9TP7OI/HB(NE(I@#dH2ˆlV²zm¬tg³[W­UQ´DCµEDÃCDÆFGÎFFÑIIÔJHÕKIËEDËEDÐFCÑGDÓF?ÐC<ËE9ÌF:ÄE6ÅF7ÊE<ËF=ÖBBÖBBà<Eà<EÞBCÞBCßDBßDBàECàECáFBáFBáC@áC@áB>àA=ã?=ã?=ä?=ä?=ÌF=Å?6±;1¬6,™=0˜</†A2„?0|A3|A3}?4|>3„:1„:1Š71Š71…<-„;,ƒ;,ƒ;,‚:+‚:+€;,€;,:+:+~:-~:-~:-~:-};/};/|8-|8-|8-|8-|:.|:.|:.|:.y9-y9-y9-y9-w9,w9,w9,v8+u9.t8-t8-s7,r6+q5*p6*p6*j2%o7*m5(k3&m8*j5'n9+~I;€TI€TI‡PI‡PI‘MJ’NK”OJ•PKTLRJ~_KbNdcEVU7GY3M_9gT_yLWpFQj@Qf?Mb;HW8BQ28B)4>%38$5:&=>.@A1A?2?=00;-0;-39+5;-9=,;?.=B+>C,S_9coIn‡PuŽWp•Ps˜SqPržQv^~¥f~¥fq˜YcŠK^…F^…F]„E_†GaˆId‹LeŒMeŒMb‰J_†G]„E_OTvDKm;h_Pi`Qi`Qi`QjaRjaRjaRkbSjaRjaRjaRjaRjaRjaRjaRjaRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdTraQraQobRqdTpgXpgXlfXicUgdSkhWmkVjhShdKc_F[U;RL2SJ-H?"X<&lP:‹SF†NA–>:™A=ÀPOÀPOÊJKÊJKÎFFÎFFÐFDÐFDÖPOËEDÅ;8Æ<9ÐC<ÓF?ÉC7Ä>2ÅF7ÆG8ÊE<ÌG>×CCØDDâ>Gâ>GÞBCÞBCßDBßDBàECàECàEAáFBáC@áC@áB>àA=â><â><ä?=ä?=ÍG>ÈB9¶@6¯9/™=0–:-„?0‚=.|A3|A3}?4|>3„:1„:1Š71Š71„;,„;,ƒ;,ƒ;,‚:+‚:+€;,:+:+:+~:-~:-~:-~:-};/};/|8-|8-|8-|8-{9-{9-|:.|:.z:.z:.y9-y9-x:-w9,w9,w9,t8-t8-s7,s7,r6+q5*p6*o5)j2%o7*m5(k3&l7)j5'n9+~I;€TI€TI‡PIˆQJ’NK“OL•PK–QL‰NFŠOG|]I€aMmlNkjLasMfxR[uHUoBMf<Ib8J_8H]6FU6BQ2;E,6@'5:&6;'<=-?@0@>1></1<.1<.4:,5;-9=,;?.<A*=B+P\6`lFjƒLr‹Tn“Nr—RržQržQwž_{¢cxŸ`k’S`‡H]„E]„E\ƒD_†GaˆIcŠKd‹Ld‹Lb‰J_†G]„E]MQsAHj8g`PhaQhaQhaQibRibRibRjcSibRibRibRibRibRibRibRibRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdTrbSo_Pj^Pl`RmeXogZieYeaUecVom`zwh~{lzgzubojVe`LMW<?I.=?'CE-NC/H=)V:,_C5d<0f>2qA5xH<„NBWK–^QšbU´aY¬YQ±JE¯HCÅCAÉGEÓB?Ï>;Ó@9ÔA:ÓC;ÕE=ØD@ÙEAÜDCÜDCÜDCÜDCÝEDÝEDÛFBÜGCÜGCÜGCÛF@ÚE?ÛD=ÚC<ÚC<ÚC<ÜC=ÜC=ÓF=ÑD;¿C9·;1;.—5(„;,„;,~@1~@1~?0}>/ƒ;/ƒ;/ˆ8/ˆ8/ƒ;,ƒ;,ƒ;,‚:+‚:+‚:+:+:+~:-~:-~:-~:-};/};/};/};/{8/{8/{8/{8/{8/{8/y9/y9/y;0y;0y;0x:/v:/v:/u9.u9.t8.s7-r8-q7,p6+p6+n5*n5*j1&o6+j4(i3'l6*i3'm7+}G;‡QG‡QG‹PHŒQI‘RK’SLUM‘VN…YN‡[PxaOv_MkkQqqWhwXfuVPdAJ^;DX5BV3DU5FW7ES9DR8?I1:D,6>)5=(9=,:>-;=/9;-3=42<36<26<29=.:>/<A*<A*LX4[gCe~Gn‡Pl‘Lr—RsŸPt Qz¡bwž_n•Vb‰J\ƒD[‚C\ƒDZB_†G`‡Hb‰JcŠKcŠKaˆI^…F]„EX}JMr?Di6g`PhaQhaQhaQibRibRibRjcSibRibRibRibRibRibRibRibRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdTscTqaRl`Rk_QiaTkcVieYieYigZwuhˆ…v~•}’zˆƒo~ye[eJKU:DF.DF.LA-G<(T8*[?1Z2&Z2&_/#`0$g1%j4(p8+s;.˜E=¢OG¸QL¶OJÃA?ÃA?ÔC@ØGDÓ@9ÔA:ÔD<ÕE=ÙEAÙEAÝEDÝEDÜDCÜDCÝEDÝEDÛFBÛFBÛFBÛFBÛF@ÚE?ÛD=ÚC<ÚC<ÚC<ÛB<ÛB<ÒE<ÒE<ÃG=¼@6 >1˜6)…<-…<-~@1~@1~?0}>/ƒ;/ƒ;/ˆ8/ˆ8/ƒ;,ƒ;,‚:+‚:+‚:+9*:+:+~:-~:-~:-~:-};/};/};/};/{8/{8/{8/{8/{8/z7.x8.x8.y;0y;0y;0x:/v:/u9.u9.u9.s7-s7-q7,p6+p6+o5*m4)m4)j1&o6+j4(h2&k5)h2&k5){E9†PF‡QGŒQIRJ’SL“TM‘VN‘VN‰]RŠ^Sv_MnWE``FggMYhIN]>CW4>R/:N+9M*>O/AR2ES9FT:BL4>H0:B-7?*9=,9=,9;-79+3=43=46<26<29=.:>/;@);@)HT0Wc?azCk„Ml‘Lt™Tu¡Rv¢Sz¡bq˜Yd‹L[‚CY€A[‚C\ƒDZB^…F_†GaˆIaˆIaˆI_†G]„E\ƒDW|ILq>Ch5g`PhaQhaQhaQibRibRibRjcSibRibRibRibRibRibRibRibRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdTrfXsgYph]ldYfbYie\qngzwp~}xŒ‡Ÿœ•§¤ª¦›¨¤™¢œš”ˆx{hcfSMR>EJ6>J6;G3:G3=J6BQ<?N9;H66C16>/4<-7;-7;-M7)`J<ŠQJVO±GI´JLÏBHÏBHØ?AØ?AÚB?ÛC@ÚE?ÚE?ÚE?ÚE?ÛEDÛEDÚDCÚDCÚDCÚDCÙEAÙEA×G?ÖF>ÕF>ÔE=ÒE;ÒE;ÓF<ÓF<Ö?8ØA:ÊF:ÅA5ª@3¢8+Ž=,<+‚?.‚?.~?.}>-<,<,†:,†:,‚:+‚:+‚:+‚:+:+:+~9*~9*~:-~:-};/};/};/};/};/};/z:0y9/y9/y9/w9.w9.v8-v8-v:/v:/v:/u9.t:.t:.s9-s9-q7,q7,p6+p6+n5*m4)l3(l3(g1%l6*h4'f2%i5(f2%i5(yE8LDMEPI‘RK‹WLŒXMƒ[Oƒ[Os\Lt]Mc\I\UBUZDY^HLXB?K5:F28D05A-5A-8D0<H4@L8CO;@L8=I59E17C/5A-3?+2>*0<(3<72;65:35:38;09<1:?);@*FR.T`<^vBj‚Nn“NwœWw£Tw£Txžak‘T]ƒFW}@YB\‚E\‚E[D^„G^„G_…H_…H_…H^„G]ƒF\‚EVzJKo?Bf6g`PhaQhaQhaQibRibRibRjcSibRibRibRibRibRibRibRibRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdTmaSpdVnf[kcXhd[qmdƒ€y’ˆ¤£ž²±¬ÃÀ¹ÈžÈĹÄÀµ¿¹­¸²¦œŸŒ„qafRMR>?K7:F27D08E17F16E07D27D2;C4=E6BF8CG9F0"O9+r92~E>²HJÁWYØKQÎAGÛBDÜCEÜDAÝEBÛF@ÛF@ÚE?ÙD>ÛEDÛEDÚDCÚDCÚDCÙCBØD@ØD@×G?ÖF>ÔE=ÓD<ÒE;ÒE;ÒE;ÓF<Õ>7×@9ÊF:ÇC7®D7§=0?.<+‚?.‚?.~?.}>-<,<,†:,†:,‚:+‚:+‚:+9*:+~9*~9*~9*~:-~:-};/};/};/};/};/};/z:0y9/y9/x8.w9.v8-u7,u7,u9.u9.t8-t8-s9-r8,r8,r8,p6+p6+p6+o5*m4)l3(l3(k2'g1%l6*h4'f2%h4'e1$h4'xD7LD‘NFQJ‘RK‹WL‹WLYM€XLs\LpYI_XEYR?OT>LQ;>J44@*1=)/;'.:&.:&0<(3?+7C/9E1=I5<H4<H4:F28D05A-2>*0<(0940943814927:/8;09>(:?)BN*Q]9\t@j‚No”OxXw£Tv¢Sp–Yc‰LW}@V|?YB[D[D[D]ƒF]ƒF^„G^„G]ƒF\‚E\‚E[DUyIJn>Ae5f`PgaQgaQgaQhbRhbRhbRicShbRhbRhbRhbRhbRhbRhbRhbRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdThbVicWhd[kg^qpk…„›¯¯­ÀÂÁÐÒÑààÞååãæâßáÝÚÛÖÒÔÏËÔ¸­½¡–˜…v}j[_ZFPK7>F/<D-=J6<I5=E6;C4<=5:;3;74:63;>3<?4O61U<7‰GH¤bcÄad¾[^ÉSSÉSSÓOKÒNJÝIEÛGCáD?àC>ÛEFÛEFÜCEÜCEÛCBÛCBÛCBÚBAÚEAÙD@ÕE=ÔD<ÒE<ÒE<ÐF<ÐF<Û>7Û>7ÐC9ÎA7·F8°?1•>-8'…>,…>,€?->,€=*€=*ƒ<*ƒ<*€;,€;,:+:+~9*~9*}9,}9,};/};/};/};/{;1{;1{;1{;1w;1w;1v:0u9/t8.s7-r8-q7,q8-q8-q8-p7,n8,n8,m7+m7+o6-o6-l6,k5+j4*j4*h4)h4)f2'k7,f4)c1&e3(b0%e3(uC8”KE•LFŽRJSKYM€XLp]No\MdaP[XGNRAJN=AJ99B12:+08)25.25.06,/5+.6)/7*2:-4</9D4:E5<I7<I79H35D/1@+/>)-63-6316027158/7:19=,:>->I)MX8Zr@iOo”QxZu¡VržSiŒT]€HUx@WzB[~F[~F[~F]€H_‚J_‚J_‚J^I^I]€H]€H]€HSwKGk?>b6f`PgaQgaQgaQhbRhbRhbRicShbRhbRhbRhbRhbRhbRhbRhbRjcSjcSjcSjcSjcSjcSjcSjcSkdTkdTkdTkdTkdTkdTkdTkdToi]mg[lh_tpg„ƒ~ Ÿš¼¼ºÎÎÌÍÏÎÞàßññïøøöúöóöòïðëçéäàêÎÃÜÀµ¿¬¢€{vb`[GGO8AI2=J6=J6?G8>F7@A9>?7?;8>:79<1=@5L3.H/*r01’PQÃ`cÍjmÌVVÌVVÖRNÕQMßKGÝIEãFAâE@ÛEFÛEFÜCEÜCEÛCBÛCBÚBAÚBAÙD@ÙD@ÕE=ÔD<ÑD;ÒE<ÐF<ÐF<ÞA:Ü?8ÐC9ÏB8¹H:±@2”=,Œ5$…>,…>,€?->,€=*€=*ƒ<*ƒ<*€;,:+:+:+~9*~9*}9,|8+};/};/};/};/{;1{;1{;1{;1w;1w;1v:0u9/t8.s7-q7,q7,p7,p7,p7,o6+m7+m7+l6*l6*o6-n5,l6,k5+j4*i3)h4)g3(f2'k7,e3(c1&e3(a/$e3(tB7”KE•LFŽRJSKYMWKo\MmZKWTCKH7?C2?C29B109(/7(5=.47047039/17-/7*/7*08+19,6A19D4<I7>K9:I46E02A,0?*+41,52/4.16047.7:19=,:>-;F&KV6Xp>h€No”QwœYsŸTnšOb…MX{CRu=VyAZ}EY|DY|D[~F^I^I^I^I]€H]€H]€H\GPtHEi=<`4icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSibRjcSjcSjcSkdTkdTkdTleUleUleUleUleUkdTkdTkdTkdTee]ee]stn‘’Œ­¯¬ÃÅÂ×ÛÜéíîñõöôøùûýüþÿÿÿÿýýüúúöó÷óðûàÍóØÅÜʲƴœ§ ƒŠƒfbcDGH)EH-CF+ID1ID1I:3D5.H32M87?><@?=D97D97bFC‰mj¾•Ú±«Ê…·}r¼bY·]TÖRPÔPNåEGäDFØHHÛKK×EEÏ==×>@áHJáGGØ>>Ù??Ú@@ÙA>ÙA>ÕA=Ô@<ÑA9Ð@8àA;Ý>8ÏA7Í?5¹C7³=1™=.’6'‡>-‡>->-€=,~=)~=)<)<):+~9*}9,}9,|8+|8+{9-z8,{9-{9-y9/y9/y9/z:0z:1z:1v=2v=2u<1s:/r9.q8-n8,m7+m7+m7+l8+l8+l8+l8+j9+j9+g3(k7,o;0n:/j6+g3(d2'e3(c1&h6+b2&]-!_/#^."a3&oA4‹NIPKƒRK‚QJu[Nw]P`ZJSM=>G4<E26C23@/2=/1<.39/39/77566457246116/05..6+.6+,8*0<.5D19H58J45G11C-.@*)2-)2--2,.3-25,58/8<+:>-5@"FQ3Vm?i€Rq•Xxœ_qœWi”OZ}GVyCSv@Sv@VyCY|FY|FX{E]€J`ƒM`ƒM\I[~H]€J_‚L]€JRpNEcA;Y7icSicSicSicSicSicSicSicSicSicSicSicSicSicSicSicSibRjcSjcSjcSkdTkdTkdTleUleUleUleUleUleUleUleUkdTee]oog…†€¤¥ŸÀ¿×ÙÖéíîöúûöúû÷ûüûýüýÿþÿþüÿþüÿüùÿûøÿíÚÿæÓîÜÄÜʲÁº¨¡„‚ƒdijKMP5FI.FA.GB/K<5H92L76O:9<;9CB@RGE]RP‚fc¨Œ‰Ö­§ë¼ÿÑÆê°¥×}t¾d[ÖRP×SQæFHß?AÕEEÕEEÙGGÜJJÝDFÖ=?×==ÜBBØ>>Ù??Ø@=Ø@=ÕA=Ô@<ÑA9ÑA9ß@:Ý>8ÐB8Î@6ºD8´>2š>/“7(‡>-‡>->-€=,~=)~=)<)<):+~9*}9,}9,|8+|8+{9-z8,|:.|:.z:0z:0z:0z:0z:1z:1u<1t;0t;0r9.q8-p7,m7+l6*l6*l6*k7*k7*k7*k7*i8*i8*j6+l8-n:/n:/k7,h4)e3(d2'b0%d2'^."]-!b2&^."_1$n@3„GB‹NI‡VO„SLpVIjPCOI9C=-8A.7@-3@/2?.2=/1<.4:04:077577557246116/16//7,/7,,8*/;-3B/7F37I36H23E/1C--61,50-2,-2,03*36-6:)8<+5@"FQ3Ul>jSr–Yxœ_ošUeKX{EUxBRu?Ru?UxBWzDX{EWzDZ}G]€J^K[~HZ}G\I]€JZ}GPnLCa?7U3gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSibRjcSjcSjcSkdTkdTkdTleUleUleUleUleUleUleUleUleUaedw{z•™˜²¶µÉÑÓáéëñùû÷ÿÿùÿÿùÿÿûÿüúÿûþÿùÿÿúÿÿøÿÿøøÿÞôûÚéóÐÜæÃÍÙ±ºÆž›ª„“h^hCNX3CG,AE*HE4IF5I@7H?6E99UIIj`_€vu™”¹´°ÓÑÅáßÓòæØÿõçÿâ×Û¯¤¾ea¤KGÄGKÔW[Ô[SÊQIÆGAÆGAÑGDÒHEÖDDÕCCÖ>=Ö>=×?>Ø@?ÖA=ÖA=Ô@<Ô@<Ù@:Ø?9ÎD:ÍC9»F=´?6œ>2–8,‰=/‰=/>.€=-~=+~=+~=+~=+~:-}9,}9,}9,{9-{9-{9-z8,{;1{;1{;1{;1z;2z;2y:1y:1q;1q;1o;0n:/m9.l8-i7,h6+i7,i7,h8,h8,h8,h8,h8,h8,k90k90j8/j8/j8/i7.d4*b2(b3)`1'[,"_0&a5*Y-"\0%pD9yRK~WPwZRoRJYMAOC7;=/46(/:*0;+0<.1=/4<14<17:169068368349338227027008-08--8*/:,2?.5B17F38G46G46G43=20://5+,2(-0%03(37(6:+5?&FP7WmGmƒ]u—dy›hk”Z^‡MVvDTtBRr@Rr@TtBVvDVvDVvDWwE[{I\|JZzHZzH]}K[{IXxFOePAWB5K6gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSibRjcSjcSjcSkdTkdTkdTleUleUleUleUleUleUmfVmfVmfVgkjƒ‡†£§¦º¾½ÍÕ×åíïòúüôüþùÿÿùÿÿûÿüúÿûýþøýþøÿÿ÷ÿÿø÷þÝõüÛîøÕæðÍÝéÁÎÚ²³Â—ž­‚}‡bdnIMQ6DH-KH7LI8KB9G>5QEEk__‹€£™˜µ°¬ËÆÂÝÛÏèæÚøìÞÿúìÿñæÿÙÎÿ¬¨æ‰Ù\`º=AÈOGÌSKÍNHÆGAÎDAÕKHÙGGÐ>>Ô<;Õ=<Ö>=×?>ÖA=ÖA=ÕA=Ô@<×>8Ø?9ÏE;ÎD:»F=´?6?3—9-‰=/‰=/>.€=-~=+~=+~=+~=+~:-}9,}9,}9,{9-{9-{9-z8,|<2|<2{;1{;1z;2y:1y:1y:1o9/o9/m9.l8-k7,j6+h6+g5*i7,i7,h8,h8,h8,h8,h8,h8,l:1i7.g5,h6-j8/i7.d4*`0&c4*`1'].$`1'`4)V*^2'yMBZS|UNjME]@8H<0D8,9;-8:,-8(.9)/;-1=/4<14<169058/68368349338238127019.19.-8*.9+/<+2?.4C07F37H58I69C84>317-,2(,/$-0%15&37(3=$GQ8\rLs‰czœixšgdSS|BRr@Qq?Pp>Pp>Qq?SsASsATtBUuCYyG[{IZzH[{I]}KYyGTtBH^I:P;-C.gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSibRjcSjcSjcSkdTkdTkdTleUkdTleUleUleUmfVmfVngWngWksu…¢ª­·¿ÂËÕ×ãíïðüüòþþ÷ÿþ÷ÿþúÿùùÿøûÿñøüîøùé÷øèñÿçñÿçðýáëøÜéóÑÞèÆËÑ­·½™œ¢€|‚`X^DGM3CL9CL9=H::E7a^W‚xª£À¹³Ê¿×ÏÌâáÜîíèõöîóôì÷íãüòèÿõìÿçÞߨ£¥ni M;¨UC¹\K¾aPÂSH·H=¾B:ÂF>Ê@=ËA>ÏA=ÐB>ÑB>ÒC?ÐC<ÐC<Ò?8ÔA:ËF?ÊE>·F>°?7›>6—:2‰<2‰<2=0€</~<.~<.~<.~<.~:-}9,|:.|:.{9-{9-y9/x8.|<2|<2z;2z;2y:1y:1x92x92k9.k9.j8-i7,i7,h6+f6*f6*f8+f8+f8+f8+d8+d8+d8+d8+j:0g7-e5+e5+h8.h8.c4*`1'a2(b3)\0%\0%\0%V*a7+~THg]TZPGHA7>7-77+88,8<.9=/19,2:-4</4</7:/69.68-57,2:/2:/2:-2:-19,19,/:,/:,-8(-8(.9)0;+2?.5B18E4:G6;F57B14;+/6&.2$.2$04%15&09$HQ<avWxnzšqs“j[‚SIpANn=Nn=Oo>Oo>Oo>Oo>Pp?Qq@TtCXxGZzI[{J]}L]}LWwFOo>DQG6C9*7-gdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSgdSibRjcSjcSjcSkdTkdTkdTleUkdTleUleUmfVmfVngWohXohXgoqz‚„“›ž¬´·ÃÍÏÛåçë÷÷òþþóþúõÿüùÿøùÿøúþð÷ûíõöæòóãïÿåïÿåðýáîûßîøÖåïÍÓÙµÀÆ¢¬²ŠnbhNLR8CL9EN;EPBGRD}zsš“Ľ·ÖÏÉÜÔÑäÜÙíìçø÷òîïçùúòÿýóÿûñÿïæÿëâÿÛÖÿÏÊÝŠxµbP¥H7²UDÄUJµF;º>6ÇKCÊ@=ËA>ÏA=ÐB>ÑB>ÑB>ÏB;ÏB;Ó@9ÔA:ËF?ÈC<³B:­<4š=5˜;3‰<2‰<2=0€</~<.~<.~<.~<.~:-}9,|:.|:.{9-{9-y9/x8.{;1{;1y:1y:1x90w8/w81w81j8-j8-j8-i7,i7,h6+g7+g7+f8+f8+f8+f8+d8+d8+d8+d8+h8.f6,e5+f6,g7-g7-f7-d5+a2(d5+^2'[/$`4)`4)g=1{QERH?G=4;4*;4*99-88,48*37)3;.3;.3;.3;.58-47,46+46+19.19.19,08+08+08+.9+.9+.9)-8(-8(.9)/<+2?.4A06C2:E48C28?/4;+37)15'04%/3$/8#JS>cxYv‹lr’ig‡^QxIAh9Jj9Ll;Mm<Mm<Ll;Ll;Mm<Nn=TtCXxGZzI[{J]}L\|KSsBIi8:G=.;1#0&feSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSibRjcSjcSjcSkdTkdTkdTleUkdTkdTleUmfVngWohXohXpiYbkpluzƒŽ’¡¬°½ÈÌÒÝáâððíûûòý÷óþøøÿõùÿöûÿîùýìøúåöøãøôëùõìýóçýóçÿñáúéÙêÕÀØîÀ¯›¡|tm[\UCMPESVKXc[bme›Šªµ¤ÒÏÆãà×òââøèèÿðóÿô÷ÿüüÿùùôùòóøñõûíùÿñÿÿóÿÿóÿÞÃ⪴pYŸ[D­VC­VC¹MA¹MAÂG?ÂG?ÈE=ÉF>ÉD=ÉD=ÈC<ÇB;ÐC<ÑD=ÇF@ÂA;¯@9¨92–<4–<4‰<4‰<4=4€<3~<0~<0~<0~<0};/|:.|:.|:.{9-{9-y9/x8.z:1z:1x90x90w81v70s7/s7/j8-j8-i9-h8,h8,h8,g9,f8+f8+f8+d8+d8+d8+d8+d8+d8+f5.g6/h70h70g80g80i:2k<4d8/i=4b6-`4+nC:vKBsH?tI@7>6180/7,4<16<228.14)25*58-47,46)46)35(35(46)46)-8(-8(-8(-8(-8(-8(-8(-8(.9).9)-8(-8(.9)/:*0;+1<,7C-7C-:A/9@.9=.59*15&.2#09&KTAbv[oƒhd„_YyTGmD=c:If6Li9Nk;Nk;Li9Kh8Mj:Ol<UrBXuE[xH\yI^{K\yIQn>Eb24=:)2/!*'feSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSfeSibRjcSjcSjcSkdTkdTkdTleUkdTkdTleUmfVngWohXpiYpiYgpuluz€‹£®²ÁÌÐÓÞâàîîîüüòý÷óþø÷ÿôøÿõüÿïûÿîýÿêüþéû÷îýùðÿ÷ëÿøìÿ÷çÿñáòÝÈáÌ·Á°œ¥”€{tbd]KVYN_bWkvn{†~£®·Â±ÙÖÍéæÝûëëÿññÿòõÿðóûõõûõõ÷üõûÿùøþðòøêöøêûýïÿêÏÿíÒÿÄ­Â~g§P=¬UB¾RF±E9ÂG?ÂG?ÉF>ÉF>ÉD=ÈC<ÇB;ÆA:ÑD=ÒE>ÇF@À?9¬=6¦70•;3•;3‰<4‰<4=4€<3~<0~<0~<0~<0};/|:.|:.|:.{9-{9-y9/x8.z:1y90x90w8/v70u6/r6.r6.j8-j8-i9-i9-i9-h8,g9,g9,e7*e7*c7*c7*c7*c7*c7*c7*f5.i81k:3k:3h91i:2l=5pA9l@7pD;g;2g;2~SJ‹`W~SJpE<5<42912:/5=24:0.4*25*8;025*25*13&13&13&24'46)57*,7',7',7',7',7'-8(-8(-8(.9).9)-8(-8(,7'-8(-8(-8(4@*6B,<C1=D2=A28<-26'.2#2;(LUB_sXg{`YyTNnIAg><b9Gd4Kh8Mj:Mj:Kh8Jg7Kh8Nk;TqAWtDYvF[xH]zJZwGMj:@]-096%.+'$heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVfeSgfThdYhdYkd\kd\ldWmeXe`JjeOmlXmlXef`de_nqx~ˆ†‘”žŸª²´ÀÈÊ×ÛÜèìíõõõøøøþýùÿþúþÿùýþøúýôøûò÷ýñøþò÷úñ÷úñ÷ùëøúìûýåõ÷ßãçÆÑÕ´·½›•›ylwY\gI_mVqh’‚žŽ·¸³ËÌÇâãÞîïêôõðøùôùúõøùôþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúêÿÿëÿÿÿÿýîíëÓ¦ “f`œD:¨PFÆMBÁH=ÇC7ÉE9ÌJ=ÍK>ÉK?ÇI=ÅH2ÅH2¹J6µF2 H4›C/ŠE5‰D4D4~C3}B4{@2€</;.ƒ9.ƒ9.}:1}:1|90{8/x8.w7-v6,v6,u7,v8-v8-w9.t8-r6+p4)o3(h9/g8.g8.g8.f7-f7-g7-f6,f6,f6,h8.h8.i7.h6-f4+e3*h1,k4/l7/m80i9+j:,f?.hA0`D/gK6^L8r`Lun[‚{hƒ‚pNM;3;.3;.2:-2:-19,19,19,19,08+/7*/7*/7*.6).6).6)-5(.5-.5-.5-.5-.5-.5-.5-.5-.5-.5--4,-4,-4,-4,.5-.5-/;12>45A77C97C56B43@/2?.2?+DQ=WeN\jSSaGGU;DR8FT:Hd>Ie?Jf>Ie=Hd;Ie<Kh<Mj>SoFWsJZvN\xP\wVVqPFaB7R3&.1$,/"*-heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVfeSgfThdYhdYkd\kd\ldWmeXidNlgQlkWlkWfgaklf{~…’™¦°±·ÁÂÍÕ×Þæèîòó÷ûüÿÿÿÿÿÿýüøþýùþÿùýþøúýôøûòöüðöüðöùðöùð÷ùë÷ùëøúâñóÛßãÂÌЯ³¹—‘—uhsUXcE^lUt‚k‰šŠ˜©™¿À»ÒÓÎçèãòóî÷øóúûöûü÷úûöþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúèÿÿäþÿùøöýüúÿåß쿹Òzp§OE¿F;ÀG<ËG;ËG;ÅC6¿=0¾@4ÄF:ÄG1ÅH2»L8·H4 H4šB.‹F6‹F6€E5D4}B4{@2€</€</ƒ9.ƒ9.}:1}:1|90{8/x8.w7-w7-v6,u7,u7,v8-v8-s7,r6+p4)o3(h9/g8.g8.g8.f7-f7-g7-g7-c3)d4*e5+g7-i7.j8/j8/j8/l50l50m80m80k;-l<.hA0iB1dH3lP;dR>weQ}vc‹„q„ƒqLK92:-2:-2:-19,19,08+08+08+08+/7*/7*/7*.6).6).6)-5(-4,-4,-4,-4,-4,-4,-4,-4,.5-.5--4,,3+,3+-4,.5-.5-,8..:01=34@65A36B45B14A05B.BO;P^GQ_HHV<AO5BP6FT:Gc=Ie?Jf>Ie=Gc:Fb9Gd8He9QmDVrIZvN[wOZuTRmLA\=2M.&.1$,/"*-heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVfeSgfThdYhdYkd\kd\keWlfXkiRkiRikVikVileuxqŽ‘˜¨«²¼ÆÈÑÛÝéñóôüþûÿÿüÿÿÿÿýýýûýüøÿþúÿÿøýþöøûðõøíñ÷ëñ÷ëó÷éôøêõøåô÷äô÷ÜìïÔÛܽÈɪ®±’“–wuyblpYt{k‰€§œ¬¶«ÍÎÉÞßÚïðë÷øóûü÷ýþùþÿúüýøþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúõúýúÿÿþýûüûùÿûóÿøðôϿɤ”ŒO<”WD¤M:œE2¶H9Ê\MÎTG»A4ÇA5ÊD8ÄJ?¿E:ªB9¤<3•@9–A:†A:…@9}A9|@8z?7y>6y>6y>6w=2v<1u<1t;0t;0s:/p:.p:.o9-o9-n:-n:-m9,l8+k7*j6)l7/l7/j8/i7.i7.h6-h6-h6-e5+e5+e5+f6,f7-h9/i:0j;1i=4g;2f<0g=1g@/iB1fE2fE2bL5kU>fZDvjT‚€k‘z}€mCF319,19,19,08+08+/7*/7*/7*08+/7*/7*/7*.6).6).6)-5(-4,-4,-4,-4,-4,-4,-4,-4,.5--4,,3+,3+,3+,3+-4,.5-)5+*6,,8./;12>24@46C27D37D2?L:ES<BP9;I08F-=K2DR9G_=Ia?Kc?Kc?Ha:F_8F_8F_8QjCWpI\tR]uSZqTOfI=T:,C)&.0$,."*,heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVfeSgfThdYhdYkd\kd\keWlfXkiRljSjlWlnYnqj€ƒ|ž¡¨º½ÄÂÌÎÚäæòúüøÿÿùýþùýþûûùùù÷þýùÿþúþÿ÷úûóô÷ìîñæèîâçíáíñãïóåñôáðóàðóØèëÐØÙºÇÈ©¯²“ž¡‚“|”}™ §®ž³½²¼Æ»ÜÝØéêåö÷òûü÷üýøþÿúþÿúüýøþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúöûþûÿÿÿÿýòñïüëãÿøðÿõåÿìÜö¹¦º}j I6¥N;ÂTEºL=º@3¿E8Ä>2ÉC7ÄJ?¿E:©A8£;2”?8–A:†A:…@9~B:|@8z?7y>6y>6y>6w=2v<1u<1u<1t;0t;0q;/q;/p:.p:.n:-n:-m9,l8+k7*k7*l7/l7/j8/j8/i7.i7.h6-h6-k;1j:0h8.g7-e6,f7-g8.h9/k?6i=4f<0h>2iB1kD3fE2eD1aK4kU>i]GuiS…ƒnŽyor_:=*08+08+08+08+/7*/7*/7*.6)08+/7*/7*/7*.6).6).6)-5(-4,-4,-4,-4,-4,-4,-4,-4,-4,,3+,3++2*+2*,3+,3+-4,)5+)5+)5++7--9-0<03@/5B15B09F4;I27E.2@'1?&7E,>L3BZ8E];H`<Ia=Ha:F_8F_8F_8PiBWpI^vT^vTXoRKbE7N4%<"%-/#+-!)+heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVgdSheThdYhdYkd\kd\keWlfXjhQkiRkmXoq\qvoƒˆ §­¼ÃÉÌÖØäîðùÿÿùÿÿøüýùýþþþüüüúÿÿúÿÿúüþó÷ùîîòäæêÜàç×ÞåÕæëÕéîØìðÙìðÙîîÔèèÎÚØ¿ËÉ°Á¼¨¸³Ÿ±®Ÿ¶³¤À½¶ÊÇÀÒÑÏÚÙ×èéäñòíúûöüýøüýøþÿúþÿúüýøþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúÿùüÿõø÷öôø÷õõÿø÷ÿúõÿôðÿïÿÿìãâÍ¿œ†ŒiS”K8šQ>³P=²O<Á>6ÅB:ÃF@¿B<°?;©8499ž::>=Ž=<@>><tB;tB;nC:nC:p>5p>5p>5p>5o?5n>4n>4n>4l=3l=3i=2h<1g;0f:/f:/f:/q60q60o6/o6/m6/l5.i7.i7.j;1i:0f:/d8-a9-b:.c;/d<0_C5_C5_D3aF5aH2bI3^J2]I1ZN4bV<gcJrnU€…nƒˆqXaL1:%08+08+08+08+/7*/7*/7*.6)08+/7*/7*/7*.6).6).6)-5(,3+,3+,3+,3+,3+,3+,3+,3+,3++2*+2**1)*1)+2*+2*,3+*6,*6,)5+)5+*6*,8,/;-1=/0=,3@/5B03@.0=)/<(3A*7E.=O5@R8EX<I\@I\>J]?J]=K^>SfH[nPbtZasYYkUJ\F5F3$5"$-,"+* )(heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVgdSheThdYhdYkd\kd\keWlfXigPkiRlnYoq\pun†œ£©·¾ÄÔÞàìöøùÿÿùÿÿ÷ûüûÿÿÿÿýüüúÿÿúÿþùúüñóõêéíßâæØÜãÓÛâÒãèÒæëÕéíÖèìÕëëÑççÍÜÚÁÐεÒ͹ÌdzÇĵÍÊ»ÕÒËÞÛÔçæäïîìòóîøùôýþùüýøüýøþÿúþÿúûü÷þÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúÿúýÿóöúù÷ÿÿý÷ÿúöÿùíþìîÿíðïÚÿÿìÿçÑɦ­dQ¢YFµR?®K8Â?7ÄA9ÁD>¿B<²A=­<8Ÿ;;99>=Ž=<‚A?€?=uC<tB;oD;oD;p>5p>5p>5p>5o?5o?5o?5o?5n?5m>4j>3i=2h<1h<1h<1h<1q60q60p70o6/m6/m6/i7.i7.f7-f7-e9.e9.d<0e=1f>2g?3^B4aE7eJ9gL;dK5cJ4_K3_K3]Q7cW=lhOvrY„mv{dEN94=(19,19,19,08+08+/7*/7*/7*08+/7*/7*/7*.6).6).6)-5(,3+,3+,3+,3+,3+,3+,3+,3++2*+2**1)*1)*1)*1)+2*+2*+7-*6,)5+(4*)5)*6*+7)-9+,9(/<+2?-3@.3@,2?+2@)3A*4F,8J0>Q5BU9EX:GZ<J]=L_?ReG[nPbtZ_qWVhRFXB2C0!2$-,"+* )(heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVgdSheTjcYjcYkd\kd\keWlfXkkSkkSinXjoYjqiy€x“œ¡­¶»ÐÚÜèòôùÿÿöþÿõùúûÿÿþþü÷÷õÿÿøþþöøúíðòåèìÝãçØßæÔßæÔäëÌæíÎèìÑæêÏéçÐæäÍáÚÈ×оÚÐÄÙÏÃÝÒÎæÛ×íãäóéêùðóÿöùùúõýþùÿÿûýþùüýøÿÿûÿÿûüýøþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúÿúøÿúøÿÿýÿÿýîÿýçúöæÿúíÿÿôÿúæøìÿùçÿÿíñÍ·Ÿ{e‹S:›cJ¯N;¯N;°L<°L<°I@«D;¢?9œ93•<8”;7†?9„=7xB8wA7pD7pD7p>7p>7p>7p>7o>7o>7p?8p?8pA9o@8k?6j>5i=4i=4j>5j>5q60q60p70p70l7/l7/h9/g8.a9-a9-a=/b>0aA2aA2_B2_B2RG3ZO;bWAcXB_U:ZP5XQ5ZS7YX:ZY;jnSrv[x‚icmT0?(4C,2:-2:-2:-19,19,08+08+08+08+/7*/7*/7*.6).6).6)-5(,3+,3+,3+,3+,3+,3+,3+,3++2**1))0()0()0()0(*1)+2*+5-*4,*4+*4+*4++5,,6+,6+,7).9+2=-5@07B26A15@/4?.0?*4C.9H1=L5@P6DT:HX>K[ARbH[kQap[^mXSaPDRA1?0!/ &/,$-*"+(heVheVheVheVheVheVheVheVheVheVheVheVheVheVheVheVgdSheTjcYjcYkd\kd\keWlfXmmUmmUhmWglVeldszr–›§°µÉÓÕáëíôüþóûýöúûüÿÿÿÿý÷÷õÿÿ÷ýýõ÷ùìïñäèìÝåéÚãêØåìÚæíÎèïÐèìÑåéÎçåÎåãÌáÚÈØÑ¿×ÍÁÜÒÆéÞÚøíéþôõÿõöþõøÿ÷úýþùÿÿûÿÿûþÿúýþùÿÿûÿÿûýþùþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúÿ÷õÿ÷õúúøúúøîÿýïÿþèÿüåÿùìþòóÿùÿûéúóáÿìÖÿáË⪑ªrY³R?°O<°L<±M=³LC°I@¤A;:4•<8”;7†?9„=7xB8wA7pD7pD7p>7p>7p>7p>7p?8p?8p?8p?8qB:pA9l@7k?6j>5j>5k?6k?6r71q60p70p70l7/l7/h9/h9/d<0e=1d@2d@2aA2`@1\?/[>.RG3]R>h]Gi^HbX=[Q6YR6]V:XW9XW9imRrv[t~eWaH$35D-3;.3;.2:-2:-19,19,19,19,08+/7*/7*/7*.6).6).6)-5(+2*+2*+2*+2*+2*+2*+2*+2**1)*1))0()0()0()0(*1)*1)(2*)3+)3**4++5,,6-,6+,6+,7).9+2=-6A18C39D47B15@/-<'0?*4C,7F/;K1?O5DT:HX>QaGYiO_nY[jUP^MAO>.<- .(1.&/,$-*heVheVheVheVgdUgdUgdUgdUifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYnpXkmUgoXjr[gsinzpƒ‘”œª­»ÄÉÏØÝçïòóûþúþÿûÿÿþÿúýþùÿÿøýýõøúìõ÷éò÷ãïôàêòÛçïØïöÔëòÐëîÑéìÏçåÐÞÜÇÜÔÉÜÔÉàÒÏæØÕðââùëëýñõÿõùÿøüÿúþþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúýÿ÷ýÿ÷ýÿüþÿýýþÿüýÿûüÿûüÿÿþÿþüÿÿøðÿùñÿüéÿûèÿõÙúïÓ²„c–hG‹T6“\>¢^G›W@šM;œO=ŽA1@0‡?0„<-z=+y<*u@.wB0r=7r=7s>8s>8u@:u@:r@9q?8r@9r@9q@9p?8p?8o>7n?7m>6j8/k90j:0k;1g=1g=1b>0b>0]@0\?/_H6_H6Q?+L:&I8$A0QS;MO7HK0JM2Z[<fgHabCTU6UX9]`AntXycanT=J0,:#1?(3;.3;.3;.3;.2:-2:-2:-19,2:-19,19,08+08+/7*/7*/7*/6./6./6..5-.5-.5--4,-4,+2*+2*+2*+2**1)*1)*1)*1)+5-+5-*4,*4,*4++5,+5,,6-(2)*4+.8-2<17A6:D9=G<>H=5B04A/1>,/<*1?(7E.AO8HV?N\EUcL[hVXeSKWI:F8.:0(4*'0+&/*&/*heVheVheVheVgdUgdUgdUgdUifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYlnVjlThpYks\htjp|r†”— ®±¾ÇÌÒÛàéñôôüÿúþÿûÿÿþÿúüýøÿÿøýýõùûíöøêóøäðõáéñÚæî×éðÎäëÉäçÊäçÊãáÌÜÚÅÜÔÉÞÖËæØÕìÞÛôææüîîÿó÷ÿöúÿøüÿúþþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúûþõüÿöüþûüþûüýÿûüÿúûÿùúÿÿþÿýûþÿùñÿúòÿýêÿüéÿ÷ÛýòÖÿäÃݯŽ©rT’[=›W@žZC¡TBŸR@C3B2ŠB3‰A2€C1~A/vA/u@.t?9s>8t?9u@:t?9q<6p>7sA:q?8q?8o>7o>7n=6n=6m>6l=5m;2m;2m=3n>4j@4i?3eA3d@2dG7]@0]F4_H6O=)G5!G6"D3IK3HJ2DG,BE*LM.Z[<abC_`AWZ;cfGrx\rx\UbH7D*.<%6D-5=05=05=04</4</4</3;.3;.4</4</3;.3;.2:-2:-2:-19,18007/07/07//6./6./6./6.,3+,3+,3++2*+2**1)*1))0((2*'1)'1)'1)'1((2))3*)3*+5,+5,,6+.8-2<17A6<F;?I>9F48E35B02?-1?(4B+:H1?M6JXAQ_HWdRUbPJVH;G90<2*6,)2-)2-(1,gdUgdUgdUgdUheVheVheVheVifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYkmUikSgqYku]hukq~tˆ—š¤³¶ÀÉÎÔÝâêòõõýÿúþÿûÿÿþÿúüýøÿÿõüüòùüëöùèò÷áîóÝçï×ãëÓáçÅÜâÀÝÝÃÞÞÄàÚÌÝ×ÉßÖÑãÚÕíáãòæèøíñýòöÿö÷ÿ÷øÿúúÿûûþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúôÿúôÿúùýüùýüÿùþÿøýÿóüÿòûÿøþÿöüÿøöÿù÷þÿóþÿóôÿìïûçûïÕÿ÷ÝÿíÔ×꤄k}]D‚V=aH’^HˆT>}F1u>)s?*vB-yF1zG2o?5l<2n>4sC9rB8n>4pA7wH>k?4k?4j>3j>3i?3h>2h>2h>2cB3cB3cC4cC4`E4`E4[F3ZE2^M9SB.VK5^S=OI1B<$B>%EA(=G,?I.=F)8A$=B"KP0\_@fiJ^aBmpQuy^gkPHP84<$4=(=F17?27?27?26>16>15=05=05=06>16>16>16>15=05=05=05=03:23:23:2291291180180180/6..5-.5-,3++2**1)*1))0((/('.''.''.'(/()0)*1**1*/6/-4-+2++2+.5.4;4<C<@G@=K:=K::I66E22A*0?(2A*3B+CR;IXAP_LO^KGUF:H91>4+8.,6.+5-*4,gdUgdUgdUgdUheVheVheVheVifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYkmUjlTgqYjt\fsio|r‡–™¤³¶¿ÈÍÓÜáéñôóûþùýþúþÿþÿúýþùþþôüüòùüë÷úéò÷áíòÜåíÕàèÐÛá¿ÕÛ¹ÖÖ¼××½ÜÖÈÞØÊäÛÖëâÝ÷ëíûïñÿôøÿ÷ûÿøùÿøùÿúúÿûûþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúôÿúôÿúúþýúþýÿùþÿùþÿôýÿóüÿöüÿõûÿøöÿúøÿÿôÿÿôöÿîóÿëÿþäÿ÷ÝÿíÔÿïÖÿíÔñѸ¹t|P7|H2{G1~G2J5M8|H3q>)g4{KAsC9qA7tD:qA7i9/f7-j;1i=2i=2i=2i=2h>2h>2h>2h>2bA2bA2bB3bB3_D3^C2YD1XC0XG3Q@,^S=qfPc]EOI1KG.NJ1:D)=G,>G*9B%;@ DI)UX9adEjmNuxYsw\Z^C=E-4<$7@+;D/8@37?27?27?26>16>16>16>17?27?27?27?27?27?27?27?26=56=55<45<44;34;34;34;329118007//6.-4,,3++2**1)*1*)0))0))0))0)*1*+2+,3,.5.,3,*1*)0),3,1817>7;B;>L;?M<?N;<K87F/2A*0?(/>';J3AP9GVCHWDBPA9G81>4,9/-7/,6.+5-fcTfcTgdUgdUheVheVifWifWifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYjnUimTfrZgs[aqfiyn•–Ÿ³´¾ÇÌÑÚßèðóòúýøüýúþÿÿÿûþÿúÿÿôÿÿóüÿìúýêöûäïôÝåîÑàéÌÙܽÒÕ¶ÑѹÓÓ»ÚÓÉßØÎéàáòéêüóøÿöûÿúþÿüÿýþùüýøûþõüÿöþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúùþÿúÿÿýÿþýÿþÿþúþýùÿûõÿúôÿúôÿúôÿü÷ÿþùÿÿýÿÿýúþýùýüôîîÿùùÿþøÿüöÿùíÿõéñäÓÝпʸ¢¯‡w`oYBdI6dI6iL:lO=hG4dC0cB/gF3iJ6kL8kL8lM9_C._C._C._C.^C._D/_D/_D/XG3XG3XI4XI4TI3SH2OI1OI1KI0KI0beJ|dntXSY=FO2DM09F*:G+>G*>G*@E%BG'LM.ST5wvXzy[nnTTT:@B,?A+>A.:=*7?27?27?27?26>16>16>15=06>16>16>17?27?27?27?27?28?78?77>67>66=56=56=56=54;34;33:229107//6..5--4,+2++2+*1**1**1**1*+1-,2.+1-+1-*0,+1--3//511733958I6;L9>P:=O9:L45G/1C)0B(3E-8J2=O9?Q;<M;5F4.>1*:-,6-,6-+5,fcTfcTfcTgdUheVifWifWifWifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYjnUimTfrZfrZ_odgwl•–Ÿ³´ÁÊÏÓÜáéñôòúýøüýûÿÿÿÿûÿÿûÿÿôÿÿôÿÿïþÿîùþçò÷àæïÒàéÌÖÙºÏÒ³ÌÌ´Í͵ÕÎÄÞ×Íëâãöíîÿöûÿøýÿüÿÿýÿþÿúüýøüÿöüÿöþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúúÿÿúÿÿþÿÿþÿÿÿþúþýùÿüöÿûõþùóÿúôÿýøÿþùÿÿýþþüúþýùýüüööÿùùÿùóúóíþôèÿýñÿýìÿýìÿõßÿí×öàÉåϸҷ¤¸ŠŸ‚pr`{ZG}\ItS@dC0Y:&Z;']>*[<(`D/`D/aE0aE0`E0aF1aF1aF1\K7\K7[L7[L7WL6VK5RL4QK3MK2RP7ilQ}€elrVSY=DM0>G*9F*9F*?H+BK.DI)BG'GH)LM.xwYsrTddJSS9IK5HJ4CF3:=*8@38@38@37?27?26>16>16>16>16>16>16>17?27?27?27?29@89@89@88?78?77>67>67>67>66=56=55<44;33:2291180-4--4-+2+*1*)0))0))/+)/+)/+*0,,2.-3/.40.40-3/-3/0A.5F3;M7=O9=O79K37I/5G-2D,5G/9K5;M7:K94E3.>1*:-,6-+5,*4+ebSfcTfcTgdUheVifWifWjgXifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYimTimTfrZgs[_qehznƒ—˜¤¸¹ÇÐ×Úãêíõøõýÿùýþûÿÿÿÿúþÿùÿÿóÿÿóýÿíüÿì÷ýãîôÚâëÎÛäÇÕÕ¹ÌÌ°ÇıÇıÏÈÂÚÓÍéàåöíòýöþÿøÿÿýÿÿýÿúÿøùþ÷÷ÿòøÿóþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúÿúÿÿúÿýþÿýþÿöÿööÿöñÿððÿïïÿíñÿï÷ÿöøÿ÷þüÿýûþÿ÷ÿÿ÷ÿüðÿÿôÿÿùÿÿùÿüûÿúùþõøïñôëþÿóþÿóÿÿïÿÿïÿýìú÷æ÷ðàóìÜöåËùèÎÝ̲¡vq`FbQ7^N4YI/ZJ0ZJ0ZL1ZL1[M2[M2YN2ZO3UQ8UQ8UQ8UQ8QQ7OO5LO4KN3JP4NT8]hJdoQQ^@BO1>K-9F(=J.<I-BK.FO2GL,EJ*ON0YX:qmPjfI`\CZV=VT?TR=LI8EB1:B5:B5:B59A49A48@38@38@36>16>17?27?28@38@38@39A49@89@89@89@88?78?78?77>68?78?78?77>67>66=56=56=538227105/.3-,1-+0,+0,+0,+0,,1--10-10.21-10,0/,0/':$-@*5I0:N5;O4:N39M18L04H-5I.8K5:M79L95H5.@0*<,,6+,6++5*ebSebSfcTgdUheVifWjgXjgXifWifWifWifWifWifWifWifWjdTkeUkdZkdZle]le]jgXkhYgkRhlSfrZht\`rfj|p‡›œ¨¼½Î×Þßèïòúýøÿÿûÿÿûÿÿþÿùýþøùùíùùíøûè÷úçñ÷ÝéïÕÜåÈÔÝÀÒÒ¶Éɭ¿¬Â¿¬ÊýÕÎÈæÝâóêïýöþÿøÿþüÿÿýÿúÿøùþ÷÷ÿòùÿôþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúþÿúÿùÿÿùÿûüþûüþõÿõôÿôïÿîïÿîïÿíñÿï÷ÿöøÿ÷ýûþüúýÿöÿÿöÿÿøÿÿõÿÿöÿÿ÷ÿüûÿúùþúýôýÿ÷ôøéõùê÷øæö÷åùöåú÷æÿùéÿüìÿïÕÿúàìÛÁŸŽt`O5RA'XH.XH.[K1\L2[M2\N3\N3]O4[P4[P4SO6SO6SO6SO6OO5MM3JM2IL1IO3KQ5Q\>OZ<<I+9F(>K-=J,AN2AN2HQ4IR5IN.IN.ZY;jiKgcFa]@]Y@_[B][FXVAPM<LI8<D7;C6;C6;C6:B5:B5:B5:B57?27?28@38@39A49A4:B5:B5:A99@89@89@88?78?78?77>69@89@89@89@89@89@89@88?78=77<65:4271051/40.3/-2..3/-2.-10,0/,0/,0/,0/,0/#6 )<&1E,8L3:N3:N39M19M16J/7K09L6;N8:M:6I60B2+=--7,-7,,6+YgMYgM[hN]jP`jRblTfkUfkUehUdgTgfTfeSjdVjdVkeWlfXjgVjgVjfZjfZjf]ie\geVgeVdiSfkUdp\co[`qkq‚|”§®µÈÏÒÛâàéðï÷ùôüþ÷ýùøþúüÿôûþóöùèøûêø÷ãñðÜñìØíèÔâÝÉÕмÛξ̿¯¾±¨¾±¨Ã¸¶ÍÂÀÛÒ×èßäùôûü÷þýüÿþýÿýþÿûüþùþúùþúýÿþýÿþýÿþýÿþþþüþþüþþüþþüÿÿûÿþúÿýúÿýúÿýøÿýøÿýøÿýøÿÿûÿþúüüúýýûýÿþþÿÿýÿþûýüþþüûûùÿúôÿý÷ÿüóÿùðÿøìÿúîÿúÿÿúÿÿþüÿþüþÿùþÿùüþýüþýýþÿýþÿþþþþþþþÿïýþîþýßþýßööÞüüääâÉŒŠqUP3UP3SM-QK+UO/TN.SN.SN.PO0PO0PQ2QR3NM1ON2OO3OO3LP7JN5FO4DM2FP5DN3AJ+=F'@G%CJ(GM'FL&JY.HW,DP(AM%LV4ZdB_dFV[=ZZ@[[A^ZA]Y@]W=[U;YR6WP4JE/HC-DB-A?*?=.@>/>@3?A4:=2:=28@38@37B47B47D37D37B47B46A36A36A36A37B47B47B47B47B47B48C59D6;F8;F86B86B85B14A05>-2;*08+/7*.5./6/,8,,8,*=-@"0J4N8[#8[#9X/8W.:R::R:=P==P=9K1?Q7BW8CX9@X8>V63K1)A',6+)3('1&YgMYgM[hN]jP`jRblTfkUglVfiVehUhgUgfTkeWkeWlfXlfXjgVjgVjfZjfZjf]ie\geVgeVejTglVdp\fr^fwqyŠ„˜«²¶ÉÐÐÙàßèïï÷ùõýÿøþúøþúûþóøûð÷úéöùèôóßìë×êåÑæáÍÛÖÂÏʶ̿¯Á´¤¸«¢»®¥Â·µÍÂÀÙÐÕæÝâùôûü÷þýüÿþýÿüýÿûüþùþúúÿûýÿþýÿþýÿþýÿþþþüþþüþþüþþüÿþúÿþúÿýúÿýúÿýøÿýøÿýøÿü÷ÿÿûþýùüüúýýûýÿþþÿÿýÿþûýüÿÿýþþüÿüöü÷ñôëâíäÛôèÜüðäÿúÿÿúÿÿþüÿþüþÿùþÿùüþýüþýýþÿýþÿþþþþþþþÿïýþîþýßþýßööÞüüäâàÇŠˆoSN1SN1RL,QK+UO/UO/SN.SN.PO0PO0PQ2PQ2NM1ON2OO3OO3LP7JN5FO4EN3FP5DN3AJ+>G(AH&EL*IO)JP*HW,IX-Q]5Xd<ZdBU_=SX:RW9VV<VV<YU<YU<ZT:ZT:ZS7ZS7PK5NI3IG2EC.B@1A?0>@3?A4:=2:=28@38@37B47B47D37D37B47B46A36A36A36A37B47B47B47B47B47B48C5:E7;F8<G9;G=;G=;H7:G6;D3:C28@37?26=66=62>21=11D&8K-?Y*F`1Nq9Mp8Ji@Ed;AYA;S;;N;9L9=O5CU;H]>J_@IaAE]=:R80H.+5*(2'%/$YgMYgM[hN]jPakSblTglVglVhkXgjWjiWihVlfXlfXmgYmgYjgVjgVjfZjfZie\ie\hfWgeVejTejTbnZgs_l}wŠ™¬³²ÅÌÍÖÝÝæíï÷ùöþÿøþúøþúøûðô÷ìòõäïòáêéÕáàÌÝØÄØÓ¿ÎɵÅÀ¬Á´¤¼¯Ÿ»®¥Âµ¬ËÀ¾×ÌÊâÙÞìãèúõüü÷þüûÿþýÿüýÿûüþùþúúÿûýÿþýÿþýÿþýÿþþþüþþüþþüþþüÿþúÿþúÿýúÿüùÿýøÿýøÿü÷ÿü÷ÿþúþýùüüúüüúýÿþþÿÿýÿþûýüÿÿýÿÿýÿý÷÷òìçÞÕÝÔËéÝÑøìàÿúÿÿúÿÿþüÿþüþÿùþÿùüþýüþýýþÿýþÿþþþþþþþÿïýþîþýßþýß÷÷ßüüäáßƈ†mPK.RM0RL,RL,UO/UO/TO/SN.PO0PO0OP1OP1NM1ON2NN2OO3KO6JN5FO4FO4FP5DN3CL-BK,EL*IP.NT.RX2M]0Sc6frJuYnxUV`=KP2MR4QQ7QQ7QO6QO6VP6XR8[T8\U9WR<UP:OM8JH3FD5DB3?A4?A4;>3;>38@38@37B47B46C26C28C57B47B46A36A37B47B48C58C57B47B48C58C5:E7;F8<G9>J@>J@>K:>K:@I8?H7>F9=E8=D=;B;5A54@46I+BU7Mg8WqB]€H[~FVuLLkBC[C9Q96I63F3<N4DV<LaBPeFPhHLdD@X>4L2/9.,6+)3(XfLYgM\iO]jPakScmUhmWhmWjmZilYkjXkjXmgYnhZnhZnhZkhWkhWjfZieYie\ie\hfWhfWdiSafP]iUeq]l}w~‰“¦­§ºÁÇÐ×Ùâéíõ÷õýÿ÷ýùõû÷óöëîñæèëÚâåÔÛÚÆÒѽÏʶÉݽ©»¶¢Ä·§Æ¹©Ë¾µÕÈ¿ßÔÒëàÞóêïùðõúõüýøÿüûÿýüÿûüþûüþúÿûûÿüýÿþýÿþýÿþýÿþþþüþþüþþüþþüÿþúÿþúÿüùÿüùÿýøÿü÷ÿü÷ÿü÷þýùýüøûûùüüúýÿþþÿÿýÿþûýüüüúþþüÿý÷øóíêáØáØÏîâÖþòæÿúÿÿúÿÿþüÿþüþÿùþÿùüþýüþýýþÿýþÿþþþþþþþÿïýþîþýßþýßùùáýýåáßƇ…lOJ-RM0TN.UO/UO/UO/TO/TO/QP1PO0OP1NO0NM1ON2NN2NN2KO6KO6GP5GP5HR7FP5FO0HQ2KR0NU3U[5[a;csFqT†’j›s…llvSZ_ARW9OO5MM3MK2LJ1QK1TN4YR6[T8YT>WR<QO:MK6IG8FD5AC6AC6;>3;>38@38@37B47B46C26C28C58C57B47B47B47B48C58C58C58C58C58C59D6:E7;F8<G9<H><H><I8=J9?H7?H7>F9=E8<C<:A:4@44@47J,DW9Pj;[uFX{CVyARqHGf=<T<1I1/B/-@-6H.@R8J_@PeFQiIMeE?W=3K10:/-7,+5*XfLYgM\iO^kQblTdnVhmWinXkn[jmZlkYkjXnhZnhZnhZoi[liXkhWjfZieYhd[hd[hfWigXejTafP\hTdp\l}w}ŽˆŽ¡¨ž±¸ÃÌÓÕÞåêòôòúüôúöñ÷óîñæèëàáäÓÙÜËÒѽËʶÉݽ©¼·£¸³ŸÊ½­ÑÄ´ÚÍÄä×Îîãáùîìþõúÿùþûöýýøÿüûÿüûÿûüþúûýúÿûûÿüýÿþýÿþýÿþýÿþþþüþþüþþüþþüþýùþýùÿüùÿüùÿü÷ÿü÷þûöþûöýüøüû÷úúøûûùüþýýÿþýÿþûýüüüúüüúÿûõûöðôëâíäÛöêÞÿõéÿúÿÿúÿÿþüÿþüþÿùþÿùüþýüþýýþÿýþÿþþþþþþþÿïýþîþýßþýßüüäÿÿçãáȈ†mQL/TO2VP0WQ1UO/UO/UP0UP0QP1PO0NO0MN/ON2NM1MM1MM1JN5KO6HQ6HQ6KU:HR7IR3MV7QX6RY7Z`:djD~Ža’¢už­‚š©~”ž{ˆ’oryZY`AMP5KN3LJ3JH1MI0PL3TN4WQ7VQ;UP:PN9NL7JH9HF7DF9CE8<?4<?49A49A46A36A35B15B19D68C57B47B47B47B48C59D68C58C58C59D69D6;F8<G9=H:9E;:F<:G6;H7>G6=F5<D7<D78?87>73?34@47J,BU7Mg8VpAQt<Ps;MlCBa87O7,D,+>++>+0B(;M3G\=OdEPhHLdD>V<1I/+5*(2'%/$ \ No newline at end of file
diff --git a/trunk/usage.txt b/trunk/usage.txt
index 0519b94..7af75a8 100644
--- a/trunk/usage.txt
+++ b/trunk/usage.txt
@@ -201,6 +201,11 @@ factor will visibly blur the image, however.
Switches for wizards:
+ -arithmetic Use arithmetic coding. CAUTION: arithmetic coded JPEG
+ is not yet widely implemented, so many decoders will
+ be unable to view an arithmetic coded JPEG file at
+ all.
+
-baseline Force baseline-compatible quantization tables to be
generated. This clamps quantization values to 8 bits
even at low quality settings. (This switch is poorly
@@ -444,6 +449,7 @@ jpegtran accepts a subset of the switches recognized by cjpeg:
-progressive Create progressive JPEG file.
-restart N Emit a JPEG restart marker every N MCU rows, or every
N MCU blocks if "B" is attached to the number.
+ -arithmetic Use arithmetic coding.
-scans file Use the scan script given in the specified text file.
See the previous discussion of cjpeg for more details about these switches.
If you specify none of these switches, you get a plain baseline-JPEG output