summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMattia Rizzolo <mattia@mapreri.org>2014-10-03 14:05:01 +0000
committerMattia Rizzolo <mattia@mapreri.org>2014-10-03 14:05:01 +0000
commite7e90b72fd3161c5d55fed49e100781dfa3e9408 (patch)
tree67cfcfae6b9a9e15701a332dfacbe0ca6440f16c /src
parent2d113e8792747151bf5d830f1a1485f2f951f940 (diff)
Imported Upstream version 0.84upstream/0.84
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.in110
-rw-r--r--src/Makefile.in.WIN3283
-rw-r--r--src/Mustek-logo.txt17
-rw-r--r--src/Mustek-logo.xpm527
-rw-r--r--src/Plustek-logo.txt18
-rw-r--r--src/Plustek-logo.xpm75
-rw-r--r--src/UMAX-logo.txt15
-rw-r--r--src/UMAX-logo.xpm56
-rw-r--r--src/cursor/cursor_pipette_black8
-rw-r--r--src/cursor/cursor_pipette_gray8
-rw-r--r--src/cursor/cursor_pipette_mask8
-rw-r--r--src/cursor/cursor_pipette_white8
-rw-r--r--src/sane-epson-logo.xpm495
-rw-r--r--src/sane-hp-logo.xpm253
-rw-r--r--src/sane-umax-logo.xpm557
-rw-r--r--src/sane-xsane-logo.xpm425
-rw-r--r--src/xsane-32x32.icobin0 -> 2238 bytes
-rw-r--r--src/xsane-32x32.xpm236
-rw-r--r--src/xsane-48x48.icobin0 -> 3774 bytes
-rw-r--r--src/xsane-48x48.xpm272
-rw-r--r--src/xsane-WIN32.txt123
-rw-r--r--src/xsane-back-gtk.c1622
-rw-r--r--src/xsane-back-gtk.h91
-rw-r--r--src/xsane-calibration-help.pnm155
-rw-r--r--src/xsane-calibration.pnm156
-rw-r--r--src/xsane-calibration.xpm807
-rw-r--r--src/xsane-device-preferences.c769
-rw-r--r--src/xsane-device-preferences.h44
-rw-r--r--src/xsane-fixedtext.h50
-rw-r--r--src/xsane-front-gtk.c1664
-rw-r--r--src/xsane-front-gtk.h83
-rw-r--r--src/xsane-gamma.c2504
-rw-r--r--src/xsane-gamma.h58
-rw-r--r--src/xsane-gimp-1_0-compat.h50
-rw-r--r--src/xsane-icons.c2558
-rw-r--r--src/xsane-icons.h110
-rw-r--r--src/xsane-license.txt108
-rw-r--r--src/xsane-logo.xpm372
-rw-r--r--src/xsane-preferences.c536
-rw-r--r--src/xsane-preferences.h190
-rw-r--r--src/xsane-preview.c5997
-rw-r--r--src/xsane-preview.h202
-rw-r--r--src/xsane-rc-io.c1002
-rw-r--r--src/xsane-rc-io.h124
-rw-r--r--src/xsane-save.c3466
-rw-r--r--src/xsane-save.h62
-rw-r--r--src/xsane-scan.c2179
-rw-r--r--src/xsane-scan.h33
-rw-r--r--src/xsane-setup.c3064
-rw-r--r--src/xsane-setup.h33
-rw-r--r--src/xsane-startimage.pnm332
-rw-r--r--src/xsane-style.rc34
-rw-r--r--src/xsane-text.h701
-rw-r--r--src/xsane-viewer.c1448
-rw-r--r--src/xsane-viewer.h79
-rw-r--r--src/xsane.c7972
-rw-r--r--src/xsane.h867
-rw-r--r--src/xsane.icobin0 -> 2238 bytes
58 files changed, 42816 insertions, 0 deletions
diff --git a/src/Makefile.in b/src/Makefile.in
new file mode 100644
index 0000000..620859c
--- /dev/null
+++ b/src/Makefile.in
@@ -0,0 +1,110 @@
+SHELL = /bin/sh
+
+VPATH = @srcdir@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ..
+
+sane_prefix = @SANE_PREFIX@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+configdir = ${sysconfdir}/sane.d
+sanedatadir = ${datadir}/sane
+xsanedocdir = ${datadir}/sane/xsane/doc
+
+MKINSTALLDIRS = @MKINSTALLDIRS@
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+
+CC = @CC@
+INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include @INCLUDES@
+DEFS = @DEFS@ -DLOCALEDIR=$(datadir)/locale
+CPPFLAGS = @CPPFLAGS@ -DPATH_XSANE_DOC_DIR=\$(xsanedocdir) -DPATH_SANE_DATA_DIR=\$(sanedatadir)
+CFLAGS = @CFLAGS@ @SANE_CFLAGS@ @GIMP_CFLAGS@ @GTK_CFLAGS@
+LDFLAGS = @LDFLAGS@ @SANE_LDFLAGS@
+LIBS = @SANE_LIBS@ @GIMP_LIBS@ @GTK_LIBS@ @INTLLIBS@ @LIBS@
+
+COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(LDFLAGS) -o $@
+
+BINPROGS = @BINPROGS@
+
+@SET_MAKE@
+
+PROGRAMS = $(BINPROGS)
+LIBLIB = ../lib/liblib.a
+
+XSANE_OBJS = xsane-back-gtk.o xsane-front-gtk.o xsane-gamma.o \
+ xsane-preview.o xsane-viewer.o \
+ xsane-rc-io.o xsane-device-preferences.o \
+ xsane-preferences.o xsane-setup.o xsane-save.o xsane-scan.o \
+ xsane-icons.o xsane.o
+
+
+.c.o:
+ $(COMPILE) $<
+
+all: $(PROGRAMS)
+
+install: $(PROGRAMS)
+ $(MKINSTALLDIRS) $(bindir) $(sbindir) $(datadir) $(sanedatadir) $(xsanedocdir) $(sanedatadir)/xsane
+ @for program in $(BINPROGS); do \
+ $(INSTALL_PROGRAM) $${program} $(bindir)/$${program}; \
+ done
+ $(INSTALL_DATA) $(srcdir)/xsane-style.rc $(sanedatadir)/xsane/xsane-style.rc
+ $(INSTALL_DATA) $(srcdir)/xsane-startimage.pnm $(sanedatadir)/xsane/xsane-startimage.pnm
+ $(INSTALL_DATA) $(srcdir)/xsane-calibration.pnm $(sanedatadir)/xsane/xsane-calibration.pnm
+ $(INSTALL_DATA) $(srcdir)/xsane-logo.xpm $(sanedatadir)/xsane/xsane-logo.xpm
+ $(INSTALL_DATA) $(srcdir)/xsane-license.txt $(sanedatadir)/xsane/xsane-license.txt
+ @for logo in *-logo.xpm; do \
+ echo installing $(sanedatadir)/xsane/$${logo}; \
+ $(INSTALL_DATA) $(srcdir)/$${logo} $(sanedatadir)/xsane/$${logo}; \
+ done
+
+uninstall:
+ @for program in $(BINPROGS); do \
+ echo uninstalling $(bindir)/$${program}...; \
+ rm -f $(bindir)/$${program}; \
+ done
+ echo uninstalling $(sanedatadir)/xsane/xsane-style.rc...
+ rm -f $(sanedatadir)/xsane/xsane-style.rc
+ echo uninstalling $(sanedatadir)/xsane/xsane-startimage.pnm...
+ rm -f $(sanedatadir)/xsane/xsane-startimage.pnm
+ echo uninstalling $(sanedatadir)/xsane/xsane-calibration.pnm...
+ rm -f $(sanedatadir)/xsane/xsane-calibration.pnm
+ echo uninstalling $(sanedatadir)/xsane/xsane-logo.xpm...
+ rm -f $(sanedatadir)/xsane/xsane-logo.xpm
+ @for logo in *-logo.xpm; do \
+ echo uninstalling $(sanedatadir)/xsane/$${logo}; \
+ rm -f $(sanedatadir)/xsane/$${logo}; \
+ done
+
+xsane: $(XSANE_OBJS) $(LIBLIB)
+ $(LINK) $(XSANE_OBJS) \
+ $(LIBLIB) $(LIBS) $(SANE_LIBS)
+
+
+clean:
+ rm -f *.o *~ .*~ *.bak
+ rm -rf .libs
+
+distclean: clean
+ rm -f Makefile $(PROGRAMS)
+
+depend:
+ makedepend $(INCLUDES) *.c
+
+.PHONY: all install depend clean distclean
diff --git a/src/Makefile.in.WIN32 b/src/Makefile.in.WIN32
new file mode 100644
index 0000000..46619d3
--- /dev/null
+++ b/src/Makefile.in.WIN32
@@ -0,0 +1,83 @@
+SHELL = /bin/sh
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = ..
+
+sanedir = @prefix@
+
+bindir = $(sanedir)
+datadir = $(sanedir)'\\'share
+sanedatadir = $(datadir)'\\'sane
+xsanedocdir = ${datadir}'\\'sane'\\'xsane'\\'doc
+
+MKINSTALLDIRS = @MKINSTALLDIRS@
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+
+CC = @CC@ -mwindows
+INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include \
+ @GTK_CFLAGS@ @INCLUDES@ -I/usr/include -I/usr/include/gdk
+DEFS = -D_WIN32 @DEFS@ -DXSANE_FIXED_HOME_PATH=$(sanedir)'\\'home -DTEMP_PATH=c:'\\'temp -DSLASH=92 -DBUGGY_GDK_INPUT_EXCEPTION -DLOCALEDIR=share/locale
+CPPFLAGS = @CPPFLAGS@ -DPATH_XSANE_DOC_DIR=\$(xsanedocdir) -DPATH_SANE_DATA_DIR=\$(sanedatadir)
+CFLAGS = @CFLAGS@ -fnative-struct
+LDFLAGS = @LDFLAGS@
+LIBS = -lintl -lsane @LIBS@
+# GTK_LIBS = @GTK_LIBS@
+# GIMP_LIBS = @GIMP_LIBS@
+GTK_LIBS = -lgtk-1.3 -lgdk-1.3
+GIMP_LIBS = -lgimp-1.2 -lglib-1.3
+
+COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
+LINK = $(CC) $(LDFLAGS) -o $@
+
+BINPROGS = @BINPROGS@
+
+@SET_MAKE@
+
+PROGRAMS = $(BINPROGS)
+LIBLIB = ../lib/liblib.a
+
+XSANE_OBJS = xsane-back-gtk.o xsane-front-gtk.o xsane-gamma.o xsane-preview.o \
+ xsane-viewer.o xsane-rc-io.o xsane-device-preferences.o \
+ xsane-preferences.o xsane-setup.o xsane-save.o xsane-scan.o \
+ xsane-icons.o xsane.o
+
+.c.o:
+ $(COMPILE) $<
+
+all: $(PROGRAMS)
+
+install: $(PROGRAMS)
+ $(MKINSTALLDIRS) $(bindir) $(datadir) $(sanedatadir) $(xsanedocdir) $(sanedatadir)/xsane
+ @for program in $(BINPROGS); do \
+ $(INSTALL_PROGRAM) $${program} $(bindir)/$${program}; \
+ done
+ $(INSTALL_DATA) $(srcdir)/xsane-WIN32.txt $(sanedir)/xsane-WIN32.txt
+ $(INSTALL_DATA) $(srcdir)/xsane-style.rc $(sanedatadir)/xsane/xsane-style.rc
+ $(INSTALL_DATA) $(srcdir)/xsane-startimage.pnm $(sanedatadir)/xsane/xsane-startimage.pnm
+ $(INSTALL_DATA) $(srcdir)/xsane-calibration.pnm $(sanedatadir)/xsane/xsane-calibration.pnm
+ $(INSTALL_DATA) $(srcdir)/xsane-logo.xpm $(sanedatadir)/xsane/xsane-logo.xpm
+ $(INSTALL_DATA) $(srcdir)/xsane-license.txt $(sanedatadir)/xsane/xsane-license.txt
+ @for logo in *-logo.xpm; do \
+ echo installing $(sanedatadir)/xsane/$${logo}; \
+ $(INSTALL_DATA) $(srcdir)/$${logo} $(sanedatadir)/xsane/$${logo}; \
+ done
+
+xsane: $(XSANE_OBJS) $(LIBLIB)
+ $(LINK) $(XSANE_OBJS) \
+ $(LIBLIB) $(GIMP_LIBS) $(GTK_LIBS) $(LIBS)
+
+
+clean:
+ rm -f *.o *~ .*~ *.bak
+ rm -rf .libs
+
+distclean: clean
+ rm -f Makefile $(PROGRAMS)
+
+depend:
+ makedepend $(INCLUDES) *.c
+
+.PHONY: all depend clean distclean
diff --git a/src/Mustek-logo.txt b/src/Mustek-logo.txt
new file mode 100644
index 0000000..2e152ec
--- /dev/null
+++ b/src/Mustek-logo.txt
@@ -0,0 +1,17 @@
+From: "Tom" <tom.wang@mustek.com.tw>
+To: "Henning Meier-Geinitz" <henning@meier-geinitz.de>
+
+Hi:
+I discuss with the manager again and he agrees that the order of
+logos is not important.
+You can use the logo you provided and forget my previous mail.
+
+Tom
+
+ Hi:
+ The manager of product design department prefers to reverse the order
+ or SANE logo and Mustek logo.
+ That is, to put the Mustek logo on the left side of SANE logo.
+ How do you think about this suggestion?
+
+ Tom
diff --git a/src/Mustek-logo.xpm b/src/Mustek-logo.xpm
new file mode 100644
index 0000000..b4e9ee7
--- /dev/null
+++ b/src/Mustek-logo.xpm
@@ -0,0 +1,527 @@
+/* XPM */
+static char * sane_mustek_big_xpm[] = {
+"256 48 476 2",
+" c None",
+". c #3AAB6C",
+"+ c #069444",
+"@ c #28A35E",
+"# c #37A969",
+"$ c #029341",
+"% c #3BAB6C",
+"& c #AEA282",
+"* c #D6CAA6",
+"= c #EAE6C6",
+"- c #DED6B2",
+"; c #DACEAA",
+"> c #E6DEBE",
+", c #DED6AE",
+"' c #E6DEC2",
+") c #DAD2AA",
+"! c #BEB68E",
+"~ c #C2B68E",
+"{ c #BEB692",
+"] c #009240",
+"^ c #0D974A",
+"/ c #AAA27E",
+"( c #EAE2C2",
+"_ c #E2DAB6",
+": c #DAD2AE",
+"< c #CABE96",
+"[ c #D6CAA2",
+"} c #CEC29A",
+"| c #D6CEA6",
+"1 c #C6BA92",
+"2 c #D2C69E",
+"3 c #AEA682",
+"4 c #CAC29A",
+"5 c #B2AA82",
+"6 c #1D9E56",
+"7 c #CECAB6",
+"8 c #E6DEBA",
+"9 c #B6AA82",
+"0 c #D2CAA2",
+"a c #AEA67E",
+"b c #22A05A",
+"c c #65BD8C",
+"d c #25A15B",
+"e c #EAE6D2",
+"f c #CEC29E",
+"g c #BAAE86",
+"h c #BEB28A",
+"i c #AA9E7A",
+"j c #BEB28E",
+"k c #AEA27E",
+"l c #A69A7A",
+"m c #968E6E",
+"n c #57B781",
+"o c #5DBA86",
+"p c #C6BA96",
+"q c #DED2AE",
+"r c #CEC69E",
+"s c #BAAE8A",
+"t c #9A8E6E",
+"u c #E2DEC6",
+"v c #E2D6B2",
+"w c #B6AE86",
+"x c #C6BE96",
+"y c #A29676",
+"z c #B6AA86",
+"A c #B2A67E",
+"B c #968E6A",
+"C c #7E7256",
+"D c #F6F2E6",
+"E c #B2A682",
+"F c #665E46",
+"G c #C2BA92",
+"H c #A69A76",
+"I c #A29A76",
+"J c #9E9672",
+"K c #4E4A36",
+"L c #3EAC6F",
+"M c #27A25D",
+"N c #EAE2C6",
+"O c #B2AA86",
+"P c #C2B692",
+"Q c #968A6A",
+"R c #867A5E",
+"S c #564E3A",
+"T c #3A3226",
+"U c #2E2A1E",
+"V c #26261A",
+"W c #221E16",
+"X c #1A1612",
+"Y c #1E1A16",
+"Z c #322E22",
+"` c #3A3626",
+" . c #4A4632",
+".. c #BAB28A",
+"+. c #A29672",
+"@. c #625E46",
+"#. c #BEE3CE",
+"$. c #53B57E",
+"%. c #EAF6EF",
+"&. c #D4ECDE",
+"*. c #71C295",
+"=. c #56523E",
+"-. c #1A1A12",
+";. c #060606",
+">. c #5A523E",
+",. c #16160E",
+"'. c #A6D9BC",
+"). c #9BD4B4",
+"!. c #48B176",
+"~. c #B7E0C9",
+"{. c #B6AE8A",
+"]. c #7E765A",
+"^. c #020206",
+"/. c #8A8262",
+"(. c #A69E7A",
+"_. c #6CC091",
+":. c #5CB985",
+"<. c #E0F1E7",
+"[. c #8DCEA9",
+"}. c #7CC79D",
+"|. c #EEE6CE",
+"1. c #1E1E16",
+"2. c #B4DEC7",
+"3. c #D6EDE0",
+"4. c #CDE9D9",
+"5. c #4FB47B",
+"6. c #16120E",
+"7. c #B8E0C9",
+"8. c #79C59B",
+"9. c #38AA6A",
+"0. c #91D0AC",
+"a. c #5E5642",
+"b. c #EEEAD2",
+"c. c #120E0E",
+"d. c #58B782",
+"e. c #C2E5D1",
+"f. c #76C498",
+"g. c #75C498",
+"h. c #5A563E",
+"i. c #7A7256",
+"j. c #9E9272",
+"k. c #A1D6B8",
+"l. c #C0E4CF",
+"m. c #C5E6D3",
+"n. c #EAE9E9",
+"o. c #E1E1E1",
+"p. c #D6D5D5",
+"q. c #C6C5C5",
+"r. c #858382",
+"s. c #848281",
+"t. c #C1C0C0",
+"u. c #E2DABA",
+"v. c #CABE9A",
+"w. c #72664E",
+"x. c #726A52",
+"y. c #BFE3CE",
+"z. c #5BB984",
+"A. c #6ABF8F",
+"B. c #797776",
+"C. c #4E4B4A",
+"D. c #D8D7D7",
+"E. c #B9B8B8",
+"F. c #B2B0B0",
+"G. c #47B075",
+"H. c #87CBA5",
+"I. c #5FBA87",
+"J. c #6EC192",
+"K. c #B0DDC4",
+"L. c #82765A",
+"M. c #8BCDA8",
+"N. c #44AF73",
+"O. c #E5F3EB",
+"P. c #A9DABE",
+"Q. c #4E4636",
+"R. c #2A261E",
+"S. c #928666",
+"T. c #C0E3CF",
+"U. c #42AE71",
+"V. c #4AB177",
+"W. c #E8E7E7",
+"X. c #26221A",
+"Y. c #A29A8A",
+"Z. c #AAA27A",
+"`. c #9DD5B5",
+" + c #80C8A0",
+".+ c #4BB278",
+"++ c #67BE8D",
+"@+ c #8ACDA7",
+"#+ c #DCDBDB",
+"$+ c #867E5E",
+"%+ c #EEEACE",
+"&+ c #D2C6A2",
+"*+ c #55B680",
+"=+ c #C9E8D6",
+"-+ c #CFEADB",
+";+ c #CAC9C9",
+">+ c #C0BFBF",
+",+ c #D8D8D8",
+"'+ c #A3A2A1",
+")+ c #757372",
+"!+ c #878584",
+"~+ c #B5B4B4",
+"{+ c #DFDFDF",
+"]+ c #9F9D9D",
+"^+ c #A7A5A5",
+"/+ c #D0CFCF",
+"(+ c #D2D1D1",
+"_+ c #82807F",
+":+ c #7B7978",
+"<+ c #777574",
+"[+ c #8C8A89",
+"}+ c #ACABAA",
+"|+ c #ECECEB",
+"1+ c #8A7E62",
+"2+ c #766E52",
+"3+ c #DBEFE4",
+"4+ c #E7E7E6",
+"5+ c #747271",
+"6+ c #D6D6D5",
+"7+ c #868383",
+"8+ c #908E8D",
+"9+ c #9C9A99",
+"0+ c #E2E2E2",
+"a+ c #BCBBBB",
+"b+ c #787575",
+"c+ c #625A46",
+"d+ c #E2DABE",
+"e+ c #9E9676",
+"f+ c #B1DDC4",
+"g+ c #61BB89",
+"h+ c #3CAB6D",
+"i+ c #64BD8B",
+"j+ c #E4E4E4",
+"k+ c #8C8A8A",
+"l+ c #C2C1C0",
+"m+ c #5E5A42",
+"n+ c #3E3A2A",
+"o+ c #9A926E",
+"p+ c #8E8666",
+"q+ c #60BB88",
+"r+ c #68BE8E",
+"s+ c #A8D9BE",
+"t+ c #AADABF",
+"u+ c #8CCEA9",
+"v+ c #7FC89F",
+"w+ c #46B074",
+"x+ c #A2A0A0",
+"y+ c #B5B3B3",
+"z+ c #DED6BE",
+"A+ c #8A8266",
+"B+ c #4A4232",
+"C+ c #464232",
+"D+ c #625A42",
+"E+ c #ABDBC0",
+"F+ c #EBF6F0",
+"G+ c #9AD3B3",
+"H+ c #CBE8D8",
+"I+ c #9A9897",
+"J+ c #A09E9E",
+"K+ c #E9E9E9",
+"L+ c #B9B7B7",
+"M+ c #E6DABA",
+"N+ c #766E56",
+"O+ c #BCE2CD",
+"P+ c #C1E4D0",
+"Q+ c #56B780",
+"R+ c #45AF74",
+"S+ c #B2B0AF",
+"T+ c #AFAEAD",
+"U+ c #E1E0E0",
+"V+ c #767373",
+"W+ c #9E9D9C",
+"X+ c #BBBAB9",
+"Y+ c #E8E8E8",
+"Z+ c #DDDDDD",
+"`+ c #CFCFCE",
+" @ c #9A9998",
+".@ c #D6CAAE",
+"+@ c #CAC29E",
+"@@ c #524A3A",
+"#@ c #121216",
+"$@ c #2632B6",
+"%@ c #222EFA",
+"&@ c #262A92",
+"*@ c #5A5246",
+"=@ c #423E2E",
+"-@ c #4DB37A",
+";@ c #7DC79E",
+">@ c #6BBF90",
+",@ c #83CAA2",
+"'@ c #E6E6E6",
+")@ c #A09F9E",
+"!@ c #BEBDBD",
+"~@ c #DBDBDA",
+"{@ c #C9C8C7",
+"]@ c #A9A7A7",
+"^@ c #ACAAAA",
+"/@ c #CBCACA",
+"(@ c #8E8C8B",
+"_@ c #CABE9E",
+":@ c #CEC6A2",
+"<@ c #222AFA",
+"[@ c #161EFA",
+"}@ c #5E72FE",
+"|@ c #2A36FA",
+"1@ c #5266FE",
+"2@ c #3242FE",
+"3@ c #0E0E0A",
+"4@ c #726A4E",
+"5@ c #95D1AF",
+"6@ c #918F8E",
+"7@ c #C7C6C6",
+"8@ c #999797",
+"9@ c #8A8887",
+"0@ c #EEE6CA",
+"a@ c #0A0A0A",
+"b@ c #2E3AFA",
+"c@ c #7A92FE",
+"d@ c #465AFE",
+"e@ c #6276FE",
+"f@ c #1A22FA",
+"g@ c #3A4AFE",
+"h@ c #3DAC6E",
+"i@ c #7AC69B",
+"j@ c #88CCA6",
+"k@ c #D7D6D6",
+"l@ c #787675",
+"m@ c #7A7877",
+"n@ c #2632FA",
+"o@ c #4252FE",
+"p@ c #4256FE",
+"q@ c #A6BAFE",
+"r@ c #5A6AFE",
+"s@ c #4A5EFE",
+"t@ c #1E22FA",
+"u@ c #4E5AD6",
+"v@ c #94D1AF",
+"w@ c #3FAD6F",
+"x@ c #5EBA86",
+"y@ c #C4C3C3",
+"z@ c #C4C3C2",
+"A@ c #3E4EFE",
+"B@ c #3646FE",
+"C@ c #7286FE",
+"D@ c #E6F6FE",
+"E@ c #FAFAF6",
+"F@ c #BED2FE",
+"G@ c #627AFE",
+"H@ c #AABAFE",
+"I@ c #5A6EFE",
+"J@ c #7EC89E",
+"K@ c #AFDCC3",
+"L@ c #A2D7B9",
+"M@ c #DBDADA",
+"N@ c #D2CAAA",
+"O@ c #5A5642",
+"P@ c #1E26FA",
+"Q@ c #BACEFE",
+"R@ c #9AAEFE",
+"S@ c #667AFE",
+"T@ c #F2EED6",
+"U@ c #F2EEDE",
+"V@ c #BDE2CD",
+"W@ c #93D1AE",
+"X@ c #7F7C7C",
+"Y@ c #BAB9B9",
+"Z@ c #7D7B7A",
+"`@ c #BBBABA",
+" # c #EAE2CE",
+".# c #262EFA",
+"+# c #566AFE",
+"@# c #EEF2F6",
+"## c #F6F6F6",
+"$# c #41AE71",
+"%# c #EDECEC",
+"&# c #B2B1B0",
+"*# c #8C8B8A",
+"=# c #807E7D",
+"-# c #969494",
+";# c #8B8988",
+"># c #888686",
+",# c #9B9999",
+"'# c #A5A4A3",
+")# c #B1B0AF",
+"!# c #6A624A",
+"~# c #96AAFE",
+"{# c #F6FAF6",
+"]# c #7E92FE",
+"^# c #3646FA",
+"/# c #FAFAF2",
+"(# c #8ECEAA",
+"_# c #E9F5EE",
+":# c #BDBCBB",
+"<# c #A3A1A0",
+"[# c #676564",
+"}# c #8E8D8C",
+"|# c #D3D2D2",
+"1# c #C9C8C8",
+"2# c #888685",
+"3# c #B4B3B2",
+"4# c #7E766A",
+"5# c #728AFE",
+"6# c #5A72FE",
+"7# c #BED6FE",
+"8# c #5262FE",
+"9# c #323EFA",
+"0# c #B1DEC5",
+"a# c #A0D6B8",
+"b# c #9ED5B6",
+"c# c #BFBEBD",
+"d# c #AEADAC",
+"e# c #979594",
+"f# c #C0BFBE",
+"g# c #26261E",
+"h# c #4EB37A",
+"i# c #EAEAEA",
+"j# c #B0AEAE",
+"k# c #959392",
+"l# c #524E3A",
+"m# c #3642FE",
+"n# c #E3F3EA",
+"o# c #E8F5ED",
+"p# c #D2D2D1",
+"q# c #A8A7A6",
+"r# c #ADACAB",
+"s# c #A29A7A",
+"t# c #665E6E",
+"u# c #BAB2AA",
+"v# c #867E62",
+"w# c #6E664A",
+"x# c #39AA6B",
+"y# c #B6DFC8",
+"z# c #9FD6B7",
+"A# c #96D2B0",
+"B# c #656262",
+"C# c #7F7D7C",
+"D# c #9C9B9A",
+"E# c #7D7A7A",
+"F# c #939291",
+"G# c #AEA27A",
+"H# c #C6E6D4",
+"I# c #DAEFE3",
+"J# c #D9EEE2",
+"K# c #D7EDE1",
+"L# c #D5EDDF",
+"M# c #D2EBDD",
+"N# c #B6DFC7",
+"O# c #838181",
+"P# c #B7B5B5",
+"Q# c #2E2A22",
+"R# c #D6CEAA",
+"S# c #EAE6CA",
+"T# c #767473",
+"U# c #AEACAC",
+"V# c #ABA9A9",
+"W# c #8D8B8B",
+"X# c #D4D4D3",
+"Y# c #7C7A79",
+"Z# c #CDCDCC",
+"`# c #989696",
+" $ c #A9A8A8",
+".$ c #C3C2C2",
+"+$ c #AAA282",
+"@$ c #827A5A",
+"#$ c #221E1A",
+"$$ c #463E32",
+"%$ c #222216",
+"&$ c #29A35E",
+"*$ c #3A362A",
+"=$ c #423A2E",
+"-$ c #4A4636",
+";$ c #423A2A",
+">$ c #463E2E",
+",$ c #22221A",
+"'$ c #0C9749",
+")$ c #079545",
+" . + @ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # $ % ",
+" & * = - ; > , ' ) ! ~ { ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ^ ",
+" / ( _ = : _ < [ } [ | < | 1 2 3 4 1 [ - < } 5 @ ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] 6 ",
+" 7 > 8 - | < 9 ~ 4 0 1 1 < < ~ a ~ < 0 ~ ~ ~ < 1 a 1 } } 3 # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] b c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c d ] ] # ",
+" e > | f < g 1 h i < h j ~ 1 9 ~ g i 1 h g ~ 4 g ~ h k < h g 1 1 l m # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" p = q < < } 1 r 2 s g ~ ~ < } 1 r 2 s ~ s ~ } } 1 < 2 s ~ g 1 } } 1 < } t # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" u v 1 ~ 2 g 4 < r g 9 9 w x g < y 4 g z A ~ < h < < r g g 9 1 } h < < 4 g 5 B C # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" = D 0 A g E h r s g 0 < A g k A r h g 0 < A g k g < h g | < z s k g } ~ g | 1 z k F # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" = 1 G | < < g ~ ~ ~ g j * < 1 g E g A H H z y i I 3 9 h z h 2 < 1 h ~ ~ ~ z ~ < J i K # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] # # ] L L L L L L M ] ] ] ] ] ] ] ] ] ] # L L L L L L # ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" N v * h O P z ~ s z h r h k 9 Q R S T U V W W X Y Z ` .F Q H / ~ h 1 ..9 h r g +.~ g @. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] #.] $. %.] ] ] ] ] ] ] ] ] ] &. *.] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" ( _ } ~ r ~ } 4 ~ g * g R =.-.;. >.Q 9 0 4 1 ~ | 1 h | ! } Q ,. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] # '.] ). !.] ] ] ] ] ] ] ] % ~.] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" = {.h ~ r s 1 A < g ].X ^. /.} 5 < 1 h ~ (.0 h ~ J X # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] _.:.] <. [.] ] ] ] ] ] ] ] }. ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" |.< ~ ~ / < ~ < < y ^. = | < < g 1 ~ / ~ 1 ~ 1. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] 2.] L 3.] ] ] ] ] ] ] ] 4. 5.] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" > 1 h h i < h g s +.6. = ~ g 1 s j ~ (.< h A ,. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] 7.] 8. . ] ] ] ] ] ] 9. 0.] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" _ : 0 ~ 1 1 < < < s a. _ b.; < 1 1 } 0 h ~ ~ < g c. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] d.*.] e. f.] ] ] ] ] ] g. 3.] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" ) _ ~ z A j 1 9 < 1 g h. 5 /.i.t H ~ 1 < h 9 9 ~ ~ j.;. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] k.9.] l.] ] ] ] ] ] m. 9.] ] ] ] ] ] ] ] ] ] ] n n.o.p. q.r.s.s.s.s.s.s.t. o ] ] # ",
+" u.| 2 g h ~ ~ < 1 v.z w. S x.t 9 [ 0 ~ ~ h Q ^. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] y.] z. ] ] ] ] ] ] A.] ] ] ] ] ] ] ] ] ] ] n B.C.C.C.C.C.C.D. E.C.C.C.C.C.C.C.F. o ] ] # ",
+" * } 1 < < < g 1 ~ h ~ y x. w.Q h < < } a. # ] ] ] ] ] ] ] ] ] ] ] ] ] G.H.] k. I.] ] ] ] J. K.] ] ] ] ] ] ] ] ] ] ] n C.C.C.C.C.C.C.D. E.C.C.C.C.C.C.C.F. o ] ] # ",
+" _ ~ ! < ~ 1 ~ E x [ g (.L. R k < 9 -. # ] ] ] ] ] ] ] ] ] ] ] ] ] M.N.] O. P.] ] ] ] #. ] ] ] ] ] ] ] ] ] ] ] n C.C.C.C.C.C.C.D. E.C.C.C.C.C.C.C.F. o ] ] # ",
+" ; } * z < g s 1 | 2 a H Q.R. S.z t ^. # ] ] ] ] ] ] ] ] ] ] ] ] ] T.] U. ] ] ] ] V.] ] ] ] ] ] ] ] ] ] n W.C.C.C.C.C.C.C.D. E.C.C.C.C.C.C.C.F. o ] ] # ",
+" < r g ~ s 1 h k i.X.^. { 2 2 Y. 0 ( < Z. k . # ] ] ] ] ] ] ] ] ] ] ] ] . `.] + .+] ] ++ @+] ] ] ] ] ] ] ] ] ] n #+C.C.C.C.C.C.C.D. E.C.C.C.C.C.C.C.F. o ] ] # ",
+" h g < s < z $+Y ^. _ %+( > [ 1 | 2 | 0 &+1 9 / } r g / U # ] ] ] ] ] ] ] ] ] ] ] ] f.*+] =+ 0.] ] ~. -+] ] ] ] ] ] ] ] ] ] n ;+>+>+>+>+>+>+>+ >+>+>+>+>+>+>+>+ ,+'+C.C.C.C.)+!+~+ {+>+>+]+C.C.C.C.C.C.C.^+>+>+/+ (+'+_+:+<+:+[+}+|+ E.C.C.C.C.C.C.C.F. >+>+>+>+>+>+>+>+ o ] ] # ",
+" g 0 g 1+X.^. ( _ * 2 } h 1 3 < ~ ~ w ~ < h 3 2+ /.g g x E /. # ] ] ] ] ] ] ] ] ] ] ] ] 7.] ] 3+] ] ] ] ] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.5+ 6+[+C.C.C.C.C.C.C.C.C.C.7+ E.C.C.C.C.C.C.C.C.C.C.C.C.C.8+ ~+C.C.C.C.C.C.C.C.C.C.9+0+ E.C.C.C.C.C.C.C.F. a+C.C.C.C.C.C.b+ o ] ] # ",
+" h c+^. d+%+u.) < ~ g e+G E ~ g ~ ~ ~ ~ } r h w i. ~ < } } S. # ] ] ] ] ] ] ] ] ] ] ] ] f+] g+ h+I. i+] ] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. C.C.C.C.C.C.C.C.C.C.C.C.C.C. E.C.C.C.C.C.C.C.C.C.C.C.C.C.8+ j+E.C.C.C.C.C.C.C.C.C.C.C.C.C.0+ E.C.C.C.C.C.C.C.F. k+C.C.C.C.C.C.l+ o ] ] # ",
+" = f $+m+S K n+Z n+Z Z Z n+n+K S F ].1+o+/ j.S ~ r ~ h p+m+ # ] ] ] ] ] ] ] ] ] ] ] q+r+] s+ t+u+ v+~. w+ P.] ] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C. E.C.C.C.C.C.C.C.C.C.C.C.C.C.8+ C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.|+ E.C.C.C.C.C.C.C.F. x+C.C.C.C.C.C.y+ o ] ] # ",
+" z+A+X.,. B+C+D+c+ s &+2 | ~ p+ # ] ] ] ] ] ] ] ] ] ] ] E+] ] F+ *+# G+] H+ F+] ] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. I+C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.J+E.C.C.C.C.C.C.C.C.C.C.C.C.C.8+ K+C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C. E.C.C.C.C.C.C.C.F. L+C.C.C.C.C.C.^+ o ] ] # ",
+" M+> P j.g 1 +. Z < 2 ~ < h N+ # ] ] ] ] ] ] ] ] ] ] ] O+] w+ ] ] P+ Q+] }. R+] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. C.C.C.C.C.C.C.S+ K+T+U+C.C.C.C.V+W+E.C.C.C.C.C.C.C.C.C.C.C.C.C.8+ B.C.C.C.C.C.C.C.X+Y+Z+C.C.C.C.C.C.C._+ E.C.C.C.C.C.C.C.F.`+C.C.C.C.C.C. @ o ] ] # ",
+" .@+@@@#@$@%@&@*@(.a _ h < } w =@ # ] ] ] ] ] ] ] ] ] ] -@;@] H. #.] ] >@ ] ] h+ ,@] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. C.C.C.C.C.C.C.C.^+a+#+'@)@!@~@ 9+C.C.C.C.C.C.C.{@ 6+C.C.C.C.C.C.C.]@ ^@C.C.C.C.C.C.C./@ E.C.C.C.C.C.C.C.F.C.C.C.C.C.C.(@ o ] ] # ",
+" _@:@;.<@[@}@|@1@2@[@I H 3@ _ h 2 9 < 4@ # ] ] ] ] ] ] ] ] ] ] 5@L ] -+ f.] ] ] l.] ] ] 3. =+] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. C.C.C.C.C.C.C.C.C.C.C.C.B.6@7@ 9+C.C.C.C.C.C.C.D. 8@C.C.C.C.C.C.C._+J+J+J+J+C.C.C.C.C.C.C.9@ E.C.C.C.C.C.C.C.C.C.C.C.C.C.C.|+ o ] ] # ",
+" 0@a@<@b@<@c@d@e@f@g@[@h x. ) < } g 1 A X. # ] ] ] ] ] ] ] ] ] ] T.] # h@] ] ] ~. i@] ] ] j@ ] ] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. ^+C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.k@ 9+C.C.C.C.C.C.C.D. l@C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.V+ E.C.C.C.C.C.C.C.C.C.C.C.C.C.C.m@ o ] ] # ",
+" > x.<@<@n@o@p@q@r@s@t@|@u@* Y %+0 A ~ g 9 U # ] ] ] ] ] ] ] ] ] L v@] r+ <.] ] ] ] g+ w@] ] ] U. x@] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. y@C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C. 9+C.C.C.C.C.C.C.D. C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.)+ E.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.z@ o ] ] # ",
+" b.;.t@A@B@C@D@E@F@G@H@I@|@: ` > ; h 1 h ~ =@ # ] ] ] ] ] ] ] ] ] J@-@] K@ ).] ] ] ] ] O.] ] ] ] ] <. L@] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. U+C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.M@ 9+C.C.C.C.C.C.C.D. C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.5+ E.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.V+ o ] ] # ",
+" N@q O@ u.^.P@n@d@Q@E@E@E@E@R@S@o@T@Z. U@} 1 1 4 < K # ] ] ] ] ] ] ] ] ] V@] ] d.] ] ] ] ] E+ L@] ] ] ] ] W@ O.] ] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. |+X@C.C.C.C.C.C.C.C.C.C.C.C.C.C.Y@ 9+C.C.C.C.C.C.C.D. 5+C.C.C.C.C.C.C.)+)+)+)+)+)+)+)+)+)+)+)+Z@ E.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.`@ o ] ] # ",
+" #( w.^. h ^..#.#+#@#E@E@E@##}@<@<@T@$+ b.&+1 g z 1 K # ] ] ] ] ] ] ] ] ] t+] .+ ] ] ] ] ] ] n x@] ] ] ] ] V. $#] ] ] ] ] ] n _+C.C.C.C.C.C.C.n. 4+C.C.C.C.C.C.C.r. %#&#*#=#C.C.C.C.C.C.C.C.C.C.C.-# 9+C.C.C.C.C.C.C.D. ;#C.C.C.C.C.C.C.a+ I+>#,#'#)#`@7@(+ E.C.C.C.C.C.C.C.C.b+C.C.C.C.C.C.C.C. o ] ] # ",
+" b.N !#^. - R.g@b@n@~#E@E@{#]#^#P@|@T@X /#u.0 1 h k / U # ] ] ] ] ] ] ] ] r+I.] (# P+] ] ] ] ] ] ] ] ] ] ] ] ] ] _# }.] ] ] ] ] ] n s.C.C.C.C.C.C.C./+ :#C.C.C.C.C.C.C.r. <#[#l@C.C.C.}# 4+|#y@)#C.C.C.C.C.C. @ 9+C.C.C.C.C.C.C.:# q.y@ 1#C.C.C.C.C.C.C.2#j+ C.C.C.C.C.C.C.m@ E.C.C.C.C.C.C.C.C. -#C.C.C.C.C.C.C.3# o ] ] # ",
+" = ; (.3@ ; 4#P@o@g@5#6#7#|@8#S@9#<@: ^. d+= 1 A < 1 r i a@ # ] ] ] ] ] ] ] ] 0#] ] 3. i@] ] ] ] ] ] ] a# =+] ] ] ] ] ] ] b# e.] ] ] ] ] ] n 6@C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.r. 5+C.C.C.C.C.C.5+X+,+~@c#C.C.C.C.C.C.C.d# x+C.C.C.C.C.C.C.C.C.C.5+ C.C.C.C.C.C.C.C.e#F.'+C.C.C.C.C.C.C.C.f# E.C.C.C.C.C.C.C.F. K+C.C.C.C.C.C.C.C. o ] ] # ",
+" = = [ 3 g# r K .#d@|@o@+#P@b@[@A@|.K _ = : | 1 < 2 [ p+^. # ] ] ] ] ] ] ] ] 7.] 9. w@] ] ] ] ] ] ] h# ,@] ] ] ] ] ] ] $. ] ] ] ] ] ] n )@C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.r. Y+C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.i# c#C.C.C.C.C.C.C.C.C.C.5+ j#C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.=# E.C.C.C.C.C.C.C.F. k#C.C.C.C.C.C.C.^@ o ] ] # ",
+" : : v.z 1+ Q h l#<@P@<@g@m#[@d@|.p+^. ' ( ~ ~ < z 1 z h 1. # ] ] ] ] ] ] ] *+g.] J. n#] ] ] ] ] ] ] ] ] o# R+] ] ] ] ] ] ] ] d.] ] ] ] ] n p#C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.r. T+C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.q# C.C.C.C.C.C.C.C.C.C.5+ r#C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C. E.C.C.C.C.C.C.C.F. W.C.C.C.C.C.C.C.C. o ] ] # ",
+" < r x ~ 1 s#o+ j.9 y t#<@|@m#u#/#v#^. 8 T@N 0 g z 1 1 < 9 w#^. # ] ] ] ] ] ] ] `.x#] y# z#] ] ] ] ] ] ] ] ] A# F+] ] ] ] ] ] ] ] ] t+ ).] ] ] ] ] n ;+C.C.C.C.C.C.C.C.C.B#C.C.C.C.C.C.r. y@C.C.C.C.C.C.C.C.C.C.C.C.C.C.W+ C#C.C.C.C.C.C.C.C.C.5+ D#C.C.C.C.C.C.C.C.C.C.C.C.C.E# E.C.C.C.C.C.C.C.F. F#C.C.C.C.C.C.C.'+ o ] ] # ",
+" | * h i g G#3 k /.h } 1 ~ ].-.^. > ; : h g g 1 < } g 3 L.^. # ] ] ] ] ] ] ] b#] ] H#-+-+-+-+-+-+z.] ] ] ] ] ] ] ] ] w+I#I#I#I#I#I#t+] ] ] ] ] ] ] ] ] :.J#K#3.L#&.M#N#] ] ] ] ] n (+C.C.C.C.C.C.C.C.:#,#C.C.C.C.C.C.r. X+C.C.C.C.C.C.C.C.C.C.C.O# P#C.C.C.C.C.C.C.C.5+ I+C.C.C.C.C.C.C.C.C.C.C.z@ D#C.C.C.C.C.C.C.F. '@C.C.C.C.C.C.C.C.|# o ] ] # ",
+" ~ v.E 1 H +@} | ; ~ 4 G#l Q# R#S#b._ q ~ ~ < 0 1 2 0 h j i.;. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n ]@:+B.C.T#O#D. ;+U#d#d#d#d#U#c# p.V#W#_+m@:+X@8+3#X# 6+k#V+:+Y#V+V+[+F. Z#'#V+B._+=#b+m@`#j+ E. $d#d#d#d#d#U#X# (+d#d#d#d#d#d#U#.$ o ] ] # ",
+" 3 9 / 4 I < ~ 1 r } h g * * | 2 | _ - } r _ _ N ; | r } g z 1 x 2 ~ ~ < g l#^. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" t H H a x 1 1 ~ } } h k a 4 4 < < &+[ G z E r < 1 1 r } h k G#1 1 g /.V ^. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" x.y A A s ~ 1 h g 9 h A z g < 1 h ~ 9 s +$z g ~ 1 ~ g 9 g t C Q#^. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] n o ] ] # ",
+" 4@@$j.A E G#1 ~ 4 ~ g g ~ g k < 1 } ~ z E ~ 9 i g t !##$^. # ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] b c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c d ] ] # ",
+" l#2+].j./ h J k k ~ 1 s 1 1 } / k j.t L.$$%$;. ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] &$ ",
+" Q#n+*$=$*$*$-$-$B+;$>$` ,$6.3@ '$] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] )$ ",
+" ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] . "};
diff --git a/src/Plustek-logo.txt b/src/Plustek-logo.txt
new file mode 100644
index 0000000..a2813e0
--- /dev/null
+++ b/src/Plustek-logo.txt
@@ -0,0 +1,18 @@
+AW: Status: USB-Scanner support fuer Linux
+Datum: Mon, 14 Jan 2002 15:00:10 +0100
+Von: "Th. Bittner, Plustek Technology GmbH" <thomas@plustek.de>
+ An: "G. Jaeger" <g.jaeger@earthling.net>
+
+ Sehr geehrter Herr Jaeger!
+
+Wir wünschen Ihnen ebenfalls ein erfolgreiches Jahr 2002.
+Vielen Dank für die Nachricht und die Unterstützung.
+
+Sie können selbstverständlich unser Logo verwenden.
+Wenn Sie dazu Bilder benötigen, teilen Sie mir bitte mit, welche Auflösung und
+welches Dateiformat Sie bevorzugen.
+Ich werde Ihnen gerne die notwendigen Dateien zur verfügung stellen.
+
+Viele Grüße
+
+Thomas Bittner
diff --git a/src/Plustek-logo.xpm b/src/Plustek-logo.xpm
new file mode 100644
index 0000000..21b0897
--- /dev/null
+++ b/src/Plustek-logo.xpm
@@ -0,0 +1,75 @@
+/* XPM */
+static char * plustek_logo_2_xpm[] = {
+"256 48 24 1",
+" c None",
+". c #3A4A52",
+"+ c #3E4E56",
+"@ c #3E4E52",
+"# c #42525A",
+"$ c #46565E",
+"% c #3E4A52",
+"& c #46525A",
+"* c #4A5A62",
+"= c #46565A",
+"- c #723A42",
+"; c #6A2A32",
+"> c #6A2A36",
+", c #6E363E",
+"' c #6E323E",
+") c #6E323A",
+"! c #723642",
+"~ c #6A2E36",
+"{ c #72363E",
+"] c #4A565E",
+"^ c #424E56",
+"/ c #4A5A5E",
+"( c #425256",
+"_ c #763A42",
+" ",
+" . +@ ",
+" ... #... ",
+" .@.@. $....% ",
+" ......+ &..@@..@ ",
+" .@.@@%..%% ..+@...@@. ",
+" .......@@.@# %@...@.....@ ",
+" .@..@........* +............. ",
+" *...@@....%@.%. #%%@.@...@@..@. ",
+" +....@.@.@@@@%%.....@@...@# ",
+" =@.@.......@.@.@...@.. - ",
+" #.........@....... ;;;;;;;;;;;;;;;;;>>;> ;;;;;;;;; ;;;;;;;;> ",
+" =@....@...@.@... ;;;;;;;;;;;;;;;>;;;;;>, ;;;;;;;;, ' ;;;;;;;;; ",
+" @.@@@@.......@@.$ >>>>>>>>>>>>>;;;;;;>>;;) >>>>>>>; !;>;; >>>>>>>;; ",
+"%@$ #.......@.@.@...@@.@= #% ;;;;;;;;;;~~~>;;;>;;;;;;{ ;;;;;;;; ~;;>;>;; ;;;;;;>>; ",
+"...%# @%.+.......@.........@%.# @+.. ;;;;;;;;; ~>;;;;;;;> ;;;;;;>; ;;;;;;;; ;;;;;;;;; ",
+"@.....] ^.+..@....@...@.@.......%.../ +..%@@ ;;;;;;;>> ;;;>>;>;; ;;;;;;;; >;;>;>>> ;;;;;;;;> ",
+".@@%%@.@ #@@..@..@@@@..@ .@@..@.@.%%@.. ^....@.. >>>>>>>;; ;>>;;>;;; ~>>>>>;>> );;;;;;;;;;;;;;;;;>;>;;;;;;;;;;;; ,;;>>;;;) ;>>>>;;>; ~;;;;;;;; ",
+"...@.@.@.@* &.............@ $@@...@....@@@@* &@.@.....@ ;;;;;;;;~ ;;;;;;;;; ;;;;;;;;; ;;;;;;;;; ;;;;;;;; );;;;;;;;;;;;;;;;;;;;;;>;>;;;;;;;;;; );>>>;;>;;>>>>~ ;;;;>>;;; ~;;;;;;;; ",
+"..@........%^ /@.@@..@..@....$ #@..@@......@.( /@.@...@@.... -;;;;;;;>- ;;;;;;>>> ;;;;;>;;> >>>>>>>>- ;>>>>>>> ;>;>>;>>>>>>>>>>>>>>>;;;;;;;;;;;>>>;~ ~;;;;;;;;;;;;;;;;;> ;;;;;;;;; ~;>>>>>>~ ",
+"..........@...@ ..@.....@..@.. +...@.......@.. /..@..@....@@.@ -;;;;;>;> ;>>;>;;;> ;;;;;;;;; ;;;;;;;; ;;;;;;;; ;;;;>;;;;;~~~~~~~~~~>>;;>;>>;>>~~~~~ ;;;;;;;> ;;;;;;;> ;;;;;;>>; ;>;;;;;;~ ",
+"@..@.@.@.@..@...+@%.....@@..@../ @@....@.@...@.@@..@.......@.... ,>>>>>;;; ->>;;>;;;> >>>>;>>;; ;;;;;;;; ;;;;;;;; ;>;;;;;;; -;;;;;>;; ;;;>>;;> >>;;;;;; >>>;;>;;> ~;;;;;;;~ ",
+".@.@.@.@..@.@.....@@.........# @@@...............@.@.....@.@ ~;;;;;>;> >>>;;;;;;;;;~ ;;;;;;;;; ;;;;;;>; ;;;;;;>; ;;;;;;;;; ;>;;;;;; ~;>;;>>; ;>>>>;;; ;;>>;;;;> ,;;;;;;;; ",
+"@............@@..@...@@..@.@ ..@.@.@..@.@@..@...@@...... ~>;;;;;;; ~;;;;;;;;>>' ;;;>;;>>> >>>>>>;; >>>>>>;> ;>>;>>>>; ~;;;;;;;; >>;;;;;~ ;;;;;;;>, ;;;;;;;;; ,>;;>>>>; ",
+" #......@.....@....@..... $.@..@.....@..@....@@.@./ ;;;;>;>;> >>;>>;>~, ;;;;;;;; ;;;;;;>> ;;;;;;;> ,;;;;;;>>; >;>>;>;;; ;;;;;;;;>-- -;;;;>>;;; ;;;;>>;;> ~;>>;;;;> ",
+" +.@.@..@....@......@@( ...@..@..@.......@...] ;>>>;;;>; ~;>,, >>;>>;;; ;;;;;;;; ,;;;;;;;; ;;;;>;;>;) >>;;>;;;; >;;>>;;;;;>;;;;;;;;;;;;;;> >;;>;;>;; ~;;;;;;;; ",
+" @..@.@.....@@....... (...........@.@.....$ ;;;;>;;;~ ;;;;;;;; >;;;>;;> >;;;;>;;~ ~;;;;;;>;; ;;;;;>;>> ;>;;>>;;>;>;;;;;>>>>;;;;;' >>;;;;>;; ;;;;;;;>, ",
+" ....@@..@...@@...@.% &.@.@..@.@@..@...@@.@ ;;;;;;;;> ;>;;>>>> ;>>>;;;; ;>>>>;;;~ ;;;;>;;;;_ ;;;;;;>;; >;;;;;>;, ;;;;;;;;> ,;>>>>;;> ",
+" @..@....@........%.@ =@..@%.@.....@..@...+ ;;>;>;>;, ;;;;;;;> ;;;;>>;> ;;;;;>;;, ~>;;;;;>>! >>;>;;;;; ;;;;;;>;- ;;>>;;>;; ~;;;>;;;~ ",
+" =.@......@+ @+@.@.@ ....@.. &.@..@....@ >>;;;>;; ;>>;;;>; ;;;;;;;;, ;;;;;;;>; ;;;>>;;;; ;;>;;;;;> ;>>;;;;;~ ;>;;>;;;> ~;;;;;;;; ",
+" $@@.... ..@...%.+ ......... $....@. ;;>;;;;; >;;;;;;;; ;;>;;>;>;, >>;;;>;;;> ;>;;>;;;> ;;;>;>>;> ;;>>;;>;; ;;;;>;;;; ;;>>>>;; ",
+" #.@ ....@..@@.= +..@@@..@.. +.@ ;;;;;;>> ;;;>>>;>; >>;;;;>;;>;;;;;>>>;;;>; ) >;;;;;;;; ;;;;>;;;; ;;;>;;>>; ;;;;;;>;; ,;;;;;;>; ",
+" ....@@...@.@/ ^.@....@..@@@ >;>;>;;; >;;;;;;;; ;;>>;;;;;;;;;;;;;;>;;;; >>;>>;;~;;;;;>>>;; ;>;;;;;;;;;;>> ;;;>;;;>;;; -~;; >>;;>;;;> ;;;;>;;;) ",
+" @.@.....@.....& (%...@....@.... ;;;>;;;; ;>;;;>;>> ;;;;;;;>;>;>;;~;;;;>;;> ;;;;;;;;;;>>;;;;>' ~;;;;;>;;>;>;; ~;;;;;;;;>;;;>>;>;;;> ;;>;;;>>; ;;;;;;;;- ",
+" @........@..%.%%...@%............ -~;;;;;>; ;;;;;;;;> ;;>;>;;;>;>~ ;>;;;>;; );;;>;;;>;;>;;;~ ~;>>;>>;>;;>, ;;;;>>;;;>;;;;;>>;, ;;>;;;;;> ,>;;>;;>; ",
+" ..@..@@....@.@@.@...@..@@@..@...@ ,>;;;>>;> ;>>>;>;;; >;>;;>;;; >;;;>;;> >>>;>>>;;;;;~ ~;;;;;;;;;; >;;;;;;;;;;;>;;; ;;;;>;;;; ;;>;>;;;; ",
+" ..@@...@.@.@..@..@..@....@..@@@.@ ,~;;, -,~,, ,,~,,, '~;>>>;~ ",
+" /.....@.........@....@....@..... ",
+" (...@.........@...........$ ",
+" #...@.@@.@...@..@@@..+ ",
+" (.@..@..@..@....@.* ",
+" .....@....@...$ ",
+" ....@.....+ ",
+" $+.@.+ ",
+" + ",
+" ",
+" ",
+" "};
diff --git a/src/UMAX-logo.txt b/src/UMAX-logo.txt
new file mode 100644
index 0000000..c577f51
--- /dev/null
+++ b/src/UMAX-logo.txt
@@ -0,0 +1,15 @@
+From: "Roman Bartkowiak" <rba@umax.de>
+To: <oliver.rauch@wolfsburg.de>
+
+Hallo Herr Rauch,
+
+ich wünsche Ihnen gleichfalls alles gute im neuen Jahr, vor allem
+kooperative Hersteller und klare SDK-Dokumentationen ;-)
+
+Das Umax Logo dürfen Sie natürlich verwenden, solange klar
+ersichtlich ist, daß sich für Umax selbst in Verbindung mit dem Treiber
+keine Verpflichtungen (Support, etc.) ergeben.
+
+Mit freundlichen Grüßen
+Roman Bartkowiak
+Umax Systems GmbH
diff --git a/src/UMAX-logo.xpm b/src/UMAX-logo.xpm
new file mode 100644
index 0000000..c7fbcf5
--- /dev/null
+++ b/src/UMAX-logo.xpm
@@ -0,0 +1,56 @@
+/* XPM */
+static char * umax_logo_xpm[] = {
+"256 48 5 1",
+" c None",
+". c #FF0033",
+"+ c #F41A4B",
+"@ c #F90D3F",
+"# c #EE2858",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" .......... .......... ............ +........... ........... .......... .........@ ",
+" .......... .......... ............# ............ ............ .......... .......... ",
+" .......... .......... ............. ............ ............. .......... @......... ",
+" .......... .......... ............. ............. .............. #.........@ #......... ",
+" .......... .......... .............@ ............. @.............. @.........# .........# ",
+" .......... .......... .............. @............. ...............@ ..........+.........@ ",
+" .......... .......... ..............+ .............. @................ ................... ",
+" .......... .......... ............... #.............. .................@ ................. ",
+" .......... .......... ............... ............... +.................. #............... ",
+" .......... .......... ................ ............... ...................+ @.............# ",
+" .......... .......... ................ @............... +.................... ............@ ",
+" .......... .......... ................+ ................ .......... @.........+ ........... ",
+" .......... .......... ................. +................ #.......... .......... ........... ",
+" .......... .......... ................. ................. .......... ..........# #...........@ ",
+" .......... .......... .................. ................. .......... .......... .............+ ",
+" .......... .......... .......... ............... ......... .......... .......... ............... ",
+" .......... .......... .......... .............. ......... .......... .......... ................. ",
+" .......... .......... .......... ............. ......... ........................... @.................. ",
+" .......... .......... .......... ............ ......... ............................ #.........@.......... ",
+" #.......... ..........@ .......... ........... ......... ............................. .........# @.........@ ",
+" ........... ........... .......... .......... ......... .............................. .........@ ..........# ",
+" #..........................# .......... ......... ......... ............................... .......... .......... ",
+" #........................# .......... ........ ......... .......... ........... @......... .......... ",
+" ...................... .......... +....... ......... @.......... .......... #......... #.......... ",
+" @................@ .......... ...... ......... .......... ..........@ .........# @.........@ ",
+" .......... .......... +..... ......... @.......... .......... .........@ @.........# ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "};
diff --git a/src/cursor/cursor_pipette_black b/src/cursor/cursor_pipette_black
new file mode 100644
index 0000000..9fc4d56
--- /dev/null
+++ b/src/cursor/cursor_pipette_black
@@ -0,0 +1,8 @@
+#define cursor_pipette_black_width 16
+#define cursor_pipette_black_height 16
+#define cursor_pipette_black_x_hot 1
+#define cursor_pipette_black_y_hot 14
+static unsigned char cursor_pipette_black_bits[] = {
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7d, 0x80, 0x38,
+ 0x40, 0x18, 0xe0, 0x17, 0xf0, 0x13, 0xf8, 0x01, 0xfc, 0x00, 0x7c, 0x00,
+ 0x3e, 0x00, 0x0f, 0x00, 0x04, 0x00, 0x00, 0x00};
diff --git a/src/cursor/cursor_pipette_gray b/src/cursor/cursor_pipette_gray
new file mode 100644
index 0000000..7cbea80
--- /dev/null
+++ b/src/cursor/cursor_pipette_gray
@@ -0,0 +1,8 @@
+#define cursor_pipette_gray_width 16
+#define cursor_pipette_gray_height 16
+#define cursor_pipette_gray_x_hot 1
+#define cursor_pipette_gray_y_hot 14
+static unsigned char cursor_pipette_gray_bits[] = {
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7d, 0x80, 0x38,
+ 0x40, 0x18, 0x20, 0x14, 0x10, 0x12, 0xf8, 0x01, 0xfc, 0x00, 0x7c, 0x00,
+ 0x3e, 0x00, 0x0f, 0x00, 0x04, 0x00, 0x00, 0x00};
diff --git a/src/cursor/cursor_pipette_mask b/src/cursor/cursor_pipette_mask
new file mode 100644
index 0000000..36c7757
--- /dev/null
+++ b/src/cursor/cursor_pipette_mask
@@ -0,0 +1,8 @@
+#define cursor_pipette_mask_width 16
+#define cursor_pipette_mask_height 16
+#define cursor_pipette_mask_x_hot 1
+#define cursor_pipette_mask_y_hot 14
+static unsigned char cursor_pipette_mask_bits[] = {
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7f, 0x80, 0x3f,
+ 0xc0, 0x1f, 0xe0, 0x17, 0xf0, 0x13, 0xf8, 0x01, 0xfc, 0x00, 0x7c, 0x00,
+ 0x3e, 0x00, 0x0f, 0x00, 0x04, 0x00, 0x00, 0x00};
diff --git a/src/cursor/cursor_pipette_white b/src/cursor/cursor_pipette_white
new file mode 100644
index 0000000..9952441
--- /dev/null
+++ b/src/cursor/cursor_pipette_white
@@ -0,0 +1,8 @@
+#define cursor_pipette_white_width 16
+#define cursor_pipette_white_height 16
+#define cursor_pipette_white_x_hot 1
+#define cursor_pipette_white_y_hot 14
+static unsigned char cursor_pipette_white_bits[] = {
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7d, 0x80, 0x38,
+ 0x40, 0x18, 0x20, 0x14, 0x10, 0x12, 0x08, 0x01, 0x84, 0x00, 0x44, 0x00,
+ 0x32, 0x00, 0x09, 0x00, 0x04, 0x00, 0x00, 0x00};
diff --git a/src/sane-epson-logo.xpm b/src/sane-epson-logo.xpm
new file mode 100644
index 0000000..014c4ab
--- /dev/null
+++ b/src/sane-epson-logo.xpm
@@ -0,0 +1,495 @@
+/* XPM */
+static char * Epson_logo_xpm[] = {
+"256 48 444 2",
+" c None",
+". c #AAA27E",
+"+ c #E6DEBE",
+"@ c #EAE6C6",
+"# c #DED6B2",
+"$ c #CABE96",
+"% c #CABE9A",
+"& c #E2DAB6",
+"* c #D6CEA6",
+"= c #D6CEAA",
+"- c #C6BE96",
+"; c #C6BA92",
+"> c #CAC29A",
+", c #D6CAA6",
+"' c #CEC29A",
+") c #CECAB6",
+"! c #D2C69E",
+"~ c #B6AA82",
+"{ c #D2CAA2",
+"] c #AEA67E",
+"^ c #C2B68E",
+"/ c #AEA682",
+"( c #DED6B6",
+"_ c #B2A682",
+": c #C2BA92",
+"< c #B6AA86",
+"[ c #C2B692",
+"} c #BAAE86",
+"| c #BAAE8A",
+"1 c #AA9E7E",
+"2 c #E2DABE",
+"3 c #CEC69E",
+"4 c #BEB68E",
+"5 c #B2A67E",
+"6 c #BEB28A",
+"7 c #B6AE86",
+"8 c #968E6A",
+"9 c #7E7256",
+"0 c #CF0000",
+"a c #BEB28E",
+"b c #AEA27E",
+"c c #BAB28A",
+"d c #968E6E",
+"e c #4E4A36",
+"f c #EAE2C6",
+"g c #E2D6B2",
+"h c #B2AA86",
+"i c #A69A76",
+"j c #867A5E",
+"k c #4A4232",
+"l c #2E2A1E",
+"m c #26221A",
+"n c #221E16",
+"o c #1E1A16",
+"p c #322E22",
+"q c #423E2E",
+"r c #665E46",
+"s c #9E9272",
+"t c #A29672",
+"u c #625E46",
+"v c #CEC6A2",
+"w c #AAA282",
+"x c #56523E",
+"y c #12120E",
+"z c #968A6A",
+"A c #9A926E",
+"B c #1A1612",
+"C c #EEE6CE",
+"D c #020206",
+"E c #1E1E16",
+"F c #E6DEBA",
+"G c #D2C6A2",
+"H c #3A362A",
+"I c #E6DEC2",
+"J c #16120E",
+"K c #DAD2AA",
+"L c #5A563E",
+"M c #B2AA82",
+"N c #8A8262",
+"O c #060606",
+"P c #BC0612",
+"Q c #A90B23",
+"R c #A60C26",
+"S c #A30D28",
+"T c #8B153F",
+"U c #881541",
+"V c #851644",
+"W c #831746",
+"X c #602267",
+"Y c #5D2369",
+"Z c #5A246C",
+"` c #57246E",
+" . c #323091",
+".. c #2F3194",
+"+. c #1F36A3",
+"@. c #1C37A5",
+"#. c #1938A8",
+"$. c #DED2B2",
+"%. c #A29676",
+"&. c #726A52",
+"*. c #564E3A",
+"=. c #867E62",
+"-. c #7A7256",
+";. c #C90206",
+">. c #C60208",
+",. c #C3030B",
+"'. c #C1040D",
+"). c #BE0510",
+"!. c #BB0612",
+"~. c #B90715",
+"{. c #AE0A1F",
+"]. c #AB0B21",
+"^. c #A80C24",
+"/. c #A30D29",
+"(. c #A00E2B",
+"_. c #90133A",
+":. c #8D143D",
+"<. c #881642",
+"[. c #821747",
+"}. c #801849",
+"|. c #7D194C",
+"1. c #672060",
+"2. c #652062",
+"3. c #622165",
+"4. c #5F2267",
+"5. c #5D236A",
+"6. c #57256F",
+"7. c #542571",
+"8. c #522674",
+"9. c #3F2C85",
+"0. c #3C2D88",
+"a. c #392E8A",
+"b. c #372F8D",
+"c. c #342F8F",
+"d. c #313092",
+"e. c #24349E",
+"f. c #2135A1",
+"g. c #1E36A3",
+"h. c #1C37A6",
+"i. c #1639AB",
+"j. c #A69E7A",
+"k. c #82765A",
+"l. c #1A1A12",
+"m. c #C0040D",
+"n. c #B0091C",
+"o. c #AD0A1F",
+"p. c #A50C26",
+"q. c #921238",
+"r. c #7F1849",
+"s. c #7A1A4E",
+"t. c #6A1F5D",
+"u. c #642062",
+"v. c #512674",
+"w. c #4F2776",
+"x. c #362F8D",
+"y. c #26349C",
+"z. c #23349E",
+"A. c #1B37A6",
+"B. c #564E3E",
+"C. c #3E362A",
+"D. c #BEB692",
+"E. c #A29A8A",
+"F. c #EAE2C2",
+"G. c #928666",
+"H. c #928A6A",
+"I. c #C0040E",
+"J. c #BD0510",
+"K. c #BB0613",
+"L. c #B3081A",
+"M. c #A50D27",
+"N. c #A20D29",
+"O. c #A00E2C",
+"P. c #9D0F2E",
+"Q. c #8F133B",
+"R. c #7F184A",
+"S. c #7C194C",
+"T. c #7A1A4F",
+"U. c #6C1E5B",
+"V. c #691F5E",
+"W. c #642163",
+"X. c #542672",
+"Y. c #4E2777",
+"Z. c #4C2879",
+"`. c #392E8B",
+" + c #333090",
+".+ c #29339A",
+"++ c #2035A1",
+"@+ c #1E36A4",
+"#+ c #1838A9",
+"$+ c #9E9672",
+"%+ c #D6CAA2",
+"&+ c #C50309",
+"*+ c #BA0613",
+"=+ c #B50818",
+"-+ c #A70C24",
+";+ c #9F0E2C",
+">+ c #951236",
+",+ c #8C143D",
+"'+ c #791A4F",
+")+ c #6F1D59",
+"!+ c #4B2879",
+"~+ c #3B2D88",
+"{+ c #382E8B",
+"]+ c #303092",
+"^+ c #2B3297",
+"/+ c #1D36A4",
+"(+ c #1539AB",
+"_+ c #464236",
+":+ c #161212",
+"<+ c #EEEACE",
+"[+ c #B6AE8A",
+"}+ c #827A5E",
+"|+ c #A29A76",
+"1+ c #C2040C",
+"2+ c #BD0511",
+"3+ c #B70716",
+"4+ c #A70C25",
+"5+ c #A40D27",
+"6+ c #A20E2A",
+"7+ c #9C0F2F",
+"8+ c #941236",
+"9+ c #921339",
+"0+ c #8C143E",
+"a+ c #891540",
+"b+ c #711D57",
+"c+ c #6E1D59",
+"d+ c #6C1E5C",
+"e+ c #662061",
+"f+ c #532672",
+"g+ c #512775",
+"h+ c #4B287A",
+"i+ c #48297C",
+"j+ c #3B2D89",
+"k+ c #352F8E",
+"l+ c #2D3195",
+"m+ c #2036A2",
+"n+ c #1A37A7",
+"o+ c #867E5E",
+"p+ c #3A3626",
+"q+ c #3E3A2A",
+"r+ c #5E5642",
+"s+ c #7E765A",
+"t+ c #8E8666",
+"u+ c #5E5A42",
+"v+ c #BF040E",
+"w+ c #A10E2A",
+"x+ c #911339",
+"y+ c #861643",
+"z+ c #6B1E5C",
+"A+ c #502775",
+"B+ c #303193",
+"C+ c #22359F",
+"D+ c #1738A9",
+"E+ c #8A8266",
+"F+ c #E6DABA",
+"G+ c #D6CAAA",
+"H+ c #464232",
+"I+ c #625A46",
+"J+ c #CEC29E",
+"K+ c #C4030A",
+"L+ c #BF050F",
+"M+ c #BC0511",
+"N+ c #BA0614",
+"O+ c #A40D28",
+"P+ c #9E0F2D",
+"Q+ c #8E143C",
+"R+ c #891541",
+"S+ c #701D57",
+"T+ c #6E1E5A",
+"U+ c #681F5F",
+"V+ c #532673",
+"W+ c #4D2878",
+"X+ c #48297D",
+"Y+ c #3A2D89",
+"Z+ c #382E8C",
+"`+ c #2235A0",
+" @ c #1F36A2",
+".@ c #1D37A5",
+"+@ c #1738AA",
+"@@ c #D2C6A6",
+"#@ c #524A3A",
+"$@ c #1E2266",
+"%@ c #222EFA",
+"&@ c #423E6E",
+"*@ c #B90614",
+"=@ c #A10E2B",
+"-@ c #8B143E",
+";@ c #801848",
+">@ c #731C55",
+",@ c #6D1E5A",
+"'@ c #552570",
+")@ c #522673",
+"!@ c #4A287A",
+"~@ c #3D2D87",
+"{@ c #372E8C",
+"]@ c #DED2B6",
+"^@ c #42426A",
+"/@ c #2A32FA",
+"(@ c #4652FE",
+"_@ c #3A4AFE",
+":@ c #4252FE",
+"<@ c #2A36FE",
+"[@ c #86829E",
+"}@ c #928A66",
+"|@ c #C70208",
+"1@ c #BE050F",
+"2@ c #861644",
+"3@ c #7D194B",
+"4@ c #701D58",
+"5@ c #552571",
+"6@ c #4A297B",
+"7@ c #3C2D87",
+"8@ c #3A2E8A",
+"9@ c #2135A0",
+"0@ c #222AFA",
+"a@ c #2632FA",
+"b@ c #4256FE",
+"c@ c #A6BAFE",
+"d@ c #5266FE",
+"e@ c #1E22FA",
+"f@ c #3E4AEA",
+"g@ c #E2DABA",
+"h@ c #C4030B",
+"i@ c #831747",
+"j@ c #721C56",
+"k@ c #6D1E5B",
+"l@ c #671F5F",
+"m@ c #4C2878",
+"n@ c #313091",
+"o@ c #DACEAE",
+"p@ c #5A5642",
+"q@ c #3E52FE",
+"r@ c #C2D2FE",
+"s@ c #FAFAF6",
+"t@ c #C6D2FA",
+"u@ c #A2B6FE",
+"v@ c #4A5EFE",
+"w@ c #E6E2C2",
+"x@ c #726E52",
+"y@ c #E2D6BA",
+"z@ c #4A4632",
+"A@ c #951135",
+"B@ c #931238",
+"C@ c #6F1D58",
+"D@ c #113AB0",
+"E@ c #EAE2CE",
+"F@ c #262EFA",
+"G@ c #566AFE",
+"H@ c #F6F6F6",
+"I@ c #5E72FE",
+"J@ c #F2EED6",
+"K@ c #C60309",
+"L@ c #AB0B22",
+"M@ c #981133",
+"N@ c #6A1F5E",
+"O@ c #4F2777",
+"P@ c #3E2C86",
+"Q@ c #332F8F",
+"R@ c #1339AD",
+"S@ c #103AB0",
+"T@ c #D6CEAE",
+"U@ c #DED2AE",
+"V@ c #564E46",
+"W@ c #323EFE",
+"X@ c #96AAFE",
+"Y@ c #DEEAFA",
+"Z@ c #7E8AFA",
+"`@ c #4E62FE",
+" # c #0E0E0E",
+".# c #F2F2DE",
+"+# c #C80206",
+"@# c #AA0B22",
+"## c #971133",
+"$# c #59246D",
+"%# c #56256F",
+"&# c #23359F",
+"*# c #133AAE",
+"=# c #26261E",
+"-# c #3A3E9A",
+";# c #465AFE",
+"># c #3646FE",
+",# c #161EFA",
+"'# c #969AE6",
+")# c #E6E2BE",
+"!# c #DAD2AE",
+"~# c #C80207",
+"{# c #AF091D",
+"]# c #AD0A20",
+"^# c #971134",
+"/# c #811848",
+"(# c #7C194D",
+"_# c #5C236B",
+":# c #562570",
+"<# c #362F8E",
+"[# c #25349D",
+"}# c #1B37A7",
+"|# c #1539AC",
+"1# c #AA9E7A",
+"2# c #9E9676",
+"3# c #9A8E6E",
+"4# c #6262BA",
+"5# c #3236D6",
+"6# c #3242FE",
+"7# c #4E56EA",
+"8# c #A2AAFA",
+"9# c #827A66",
+"0# c #EEE6CA",
+"a# c #B2091B",
+"b# c #AC0A20",
+"c# c #871643",
+"d# c #841745",
+"e# c #7E184A",
+"f# c #632163",
+"g# c #612266",
+"h# c #5E2268",
+"i# c #5B236B",
+"j# c #3D2C86",
+"k# c #DACEAA",
+"l# c #423E32",
+"m# c #C70207",
+"n# c #C5030A",
+"o# c #B40819",
+"p# c #AF0A1E",
+"q# c #841746",
+"r# c #632164",
+"s# c #602266",
+"t# c #5E2369",
+"u# c #C6BA96",
+"v# c #7E7A62",
+"w# c #DEDABA",
+"x# c #3E3A2E",
+"y# c #AAA27A",
+"z# c #161612",
+"A# c #C90105",
+"B# c #5E5646",
+"C# c #524E3A",
+"D# c #A69A7A",
+"E# c #665A46",
+"F# c #222216",
+"G# c #363226",
+"H# c #4A4636",
+"I# c #463E2E",
+"J# c #0E0E0A",
+"K# c #CB0104",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" . + @ # $ % & * # = - ; > , ' ",
+" ) + # ! ~ - { ; $ ; ] ; { ^ ^ $ ] $ ' / ",
+" @ ( ! % ; ; _ ^ ; ; : ^ < ^ ; $ ^ [ } ^ ; $ | 1 ",
+" 2 ; $ } > 3 } ~ 4 } < > } 5 ; 6 $ 3 } ~ $ 6 $ > 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ",
+" @ = ; ^ 6 : 6 ; ; 6 ~ a ~ | ~ b ] c 6 ; ; a 6 ; 6 ; ^ d e 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ",
+" f g % h a ^ | 6 - b i j k l m n o p q r s . ^ ; } 6 ; t 6 u 0 0 0 0 0 0 0 0 ",
+" @ v ; 3 ; 4 ^ w x x y z | 4 ; > c * : A B 0 0 0 0 0 0 0 ",
+" C $ ^ . ; $ < D @ * $ } ; . ; ^ E 0 0 0 0 0 0 0 ",
+" F G ; } ; ^ } H & I ; ^ ; ; < ; ~ J 0 0 0 0 0 ",
+" K & 6 5 [ ~ $ } L M N N i ; $ } ~ ^ s O 0 0 0 0 0 P Q R S T U V W X Y Z ` ... +.@.#. ",
+" $.3 ^ ; 6 ; ; %.&. *.=.z 4 ; ; -. 0 0 0 0 0 0 ;.>.,.'.).!.~. {.].^.R /.(. _.:.T <.V [.}.|. 1.2.3.4.5.Z 6.7.8. 9.0.a.b.c.d... e.f.g.h.#.i. ",
+" { 4 ; ; | - $ j.k. j b ^ l. 0 0 0 0 0 0 0 >.,.m.).!. n.o.].^.p./.(. q._.:. [.r.|.s. t.1.u.3. 7.v.w. 0.a.x.c.d. y.z.f.g.A.#.i. ",
+" ! { a | ^ : N B.C. D.! E. F.c G.H.D 0 0 0 0 0 0 0 0 ,.I.J.K. L. ^.M.N.O.P. q.Q.:. R.S.T. U.V.1.W. X.v.Y.Z. `.x. +d. .+ ++@+A.#+i. ",
+" 6 } [ $ $+o D F.F.# ; %+* { ; ~ a 3 M l 0 0 0 0 0 0 0 0 0 0 0 0 &+,.I.J.*+ =+ -+M.N.;+P. >+q.Q.,+ R.S.'+ )+U.V.1.W. X.v.Y.!+ ~+{+x. +]+ ^+ ++/+A.#+(+ ",
+" } . _+:+ <+& * $ [+a | ^ ^ 4 ' 4 d }+} : ^ |+ 0 0 0 0 0 0 0 0 &+1+I.2+ 3+ 4+5+6+;+7+ 8+9+Q.0+a+ b+c+d+V.e+ f+g+Y.h+i+ j+{+k+ + l+ m+/+n+#+ ",
+" # o+L e p+q+p p q+e r+s+H.. -. ^ 3 ^ t+u+ 0 0 0 0 0 0 0 &+1+v+2+*+3+ 4+5+w+;+ x+Q.0+a+y+ b+c+z+V.e+ f+A+Y.h+i+ j+{+k+ +B+l+ C+m+/+n+D+ ",
+" E+E F+G+s ^ t H+I+p J+3 ; d 0 0 0 0 0 0 0 K+1+L+M+N+ 4+O+w+P+ x+Q+0+R+y+W S+T+z+U+e+ V+A+W+h+X+ Y+Z+k+ .B+ `+ @.@n++@ ",
+" @@#@$@%@&@j.] G $ : q 0 0 0 0 K+'.L+P *@ Q R O+=@P+ Q+-@R+y+W ;@ >@S+,@z+U+ '@)@A+W+!@ ~@Y+{@k+ . `+ @@.n++@ ",
+" ]@^@/@(@_@:@<@[@q G ! ^ }@ 0 0 0 0 0 |@K+'.1@P Q R S =@P+ T U 2@W }.3@ >@4@,@t.U+ 5@)@w.W+6@ 7@8@{@c. . 9@+.@.#. ",
+" + &.0@a@b@c@d@e@f@, o g@5 6 ~ l 0 0 0 0 0 0 >.h@'.).!. ^.R /.(. <.V i@}.|. j@4@k@t.l@ 5@)@w.m@6@ 7@a.{@c.n@ e.9@g.@.#. ",
+" o@p@ f O /@q@r@s@t@u@v@w@x@ y@^ ; ; z@ 0 0 0 0 0 0 0 >.,.'.).!. ].^.p./.(. A@B@ V [.}.|.s. j@C@k@t.1. 6.7.8.w.Z. 0.a.x.c. e.f.g.A.#. D@ ",
+" E@F.H 6 D F@G@H@s@s@I@0@J@o+ g@; } ; e 0 0 0 0 0 0 K@,.I.). L@^.M.N. M@>+q. [.R.|.T. j@)+U.N@1. 6.X.v.O@Z. P@0.`.x.Q@ z.f.g.A. R@S@ ",
+" @ T@q+ U@V@W@W@X@Y@Z@`@a@w@ # .#> $ ^ . o 0 0 0 0 0 0 0 0 +#&+,.I.J. o.@#^.M. ##>+q.Q. [.R.S. )+U.V.1. $#%#X.v.Y. P@~+`.x. + y.&#++@+A. (+*# ",
+" @ @ : =# 3 -#;#>#G@a@,#'#e )#!#3 $ %+t+D 0 0 0 0 0 0 0 0 0 0 ~#&+1+I.2+ {#]#@#4+ ^#8+9+Q.0+ /#R.(# c+d+V.e+ _#$#:#f+g+ P@j+{+<# [#&#m+/+}##+|# ",
+" { * [ 1#2# z 3#4#5#6#7#8#9#D 0#f 3 6 [ $ i y 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ~#&+1+v+2+*+3+=+a#{#b#@# 8+x+Q.0+a+c#d#/#e# z+V.e+f#g#h#i#$#:#f+ j#j+{+k+ C+m+/+n+#+ ",
+" * % 1#~ / b N ; ; %.l.D + k#J+} ^ $ ; / l# m#n#1+L+ 3+o#a#p# Q+0+R+y+q# r#s#t#i# ~@ @.@ ",
+" 6 / 7 > > , ; ~ u#* %+& * v#& f # w#G 6 ; { ; 3 |+x# m#K+1+L+ ",
+" 3#i y#- ; ^ ' 6 ] > > $ %+: < 3 $ ; 3 6 b ; ^ N z# A#|@K+'.L+ ",
+" E+}@|+} } ^ ^ } } ; | ; ^ [+< ^ } } s B#H D A#>.K+'.1@ ",
+" C#-.s < $+b ^ ^ ; $ . D#3#E#F#O ;.>.,.'. ",
+" G#H x#H H#k I#p+o J# ;.>.,.m. ",
+" K#+#K@,.I. ",
+" K#+#&+,. ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "};
diff --git a/src/sane-hp-logo.xpm b/src/sane-hp-logo.xpm
new file mode 100644
index 0000000..f6e0d28
--- /dev/null
+++ b/src/sane-hp-logo.xpm
@@ -0,0 +1,253 @@
+/* XPM */
+static char * sane_hp_logo_xpm[] = {
+"256 48 202 2",
+" c None",
+". c #123B81",
+"+ c #AAA27E",
+"@ c #E6DEBE",
+"# c #EAE6C6",
+"$ c #DED6B2",
+"% c #CABE96",
+"& c #CABE9A",
+"* c #E2DAB6",
+"= c #D6CEA6",
+"- c #D6CEAA",
+"; c #C6BE96",
+"> c #C6BA92",
+", c #CAC29A",
+"' c #D6CAA6",
+") c #CEC29A",
+"! c #CECAB6",
+"~ c #D2C69E",
+"{ c #B6AA82",
+"] c #D2CAA2",
+"^ c #AEA67E",
+"/ c #C2B68E",
+"( c #AEA682",
+"_ c #DED6B6",
+": c #B2A682",
+"< c #C2BA92",
+"[ c #B6AA86",
+"} c #C2B692",
+"| c #BAAE86",
+"1 c #BAAE8A",
+"2 c #AA9E7E",
+"3 c #E2DABE",
+"4 c #CEC69E",
+"5 c #BEB68E",
+"6 c #B2A67E",
+"7 c #BEB28A",
+"8 c #B6AE86",
+"9 c #968E6A",
+"0 c #7E7256",
+"a c #BEB28E",
+"b c #AEA27E",
+"c c #BAB28A",
+"d c #968E6E",
+"e c #4E4A36",
+"f c #EAE2C6",
+"g c #E2D6B2",
+"h c #B2AA86",
+"i c #A69A76",
+"j c #867A5E",
+"k c #4A4232",
+"l c #2E2A1E",
+"m c #26221A",
+"n c #221E16",
+"o c #1E1A16",
+"p c #322E22",
+"q c #423E2E",
+"r c #665E46",
+"s c #9E9272",
+"t c #A29672",
+"u c #625E46",
+"v c #CEC6A2",
+"w c #AAA282",
+"x c #56523E",
+"y c #12120E",
+"z c #968A6A",
+"A c #9A926E",
+"B c #1A1612",
+"C c #EEE6CE",
+"D c #020206",
+"E c #1E1E16",
+"F c #E6DEBA",
+"G c #D2C6A2",
+"H c #3A362A",
+"I c #E6DEC2",
+"J c #16120E",
+"K c #DAD2AA",
+"L c #5A563E",
+"M c #B2AA82",
+"N c #8A8262",
+"O c #060606",
+"P c #DED2B2",
+"Q c #A29676",
+"R c #726A52",
+"S c #564E3A",
+"T c #867E62",
+"U c #7A7256",
+"V c #A69E7A",
+"W c #82765A",
+"X c #1A1A12",
+"Y c #564E3E",
+"Z c #3E362A",
+"` c #BEB692",
+" . c #A29A8A",
+".. c #EAE2C2",
+"+. c #928666",
+"@. c #928A6A",
+"#. c #9E9672",
+"$. c #D6CAA2",
+"%. c #464236",
+"&. c #161212",
+"*. c #EEEACE",
+"=. c #B6AE8A",
+"-. c #827A5E",
+";. c #A29A76",
+">. c #867E5E",
+",. c #3A3626",
+"'. c #3E3A2A",
+"). c #5E5642",
+"!. c #7E765A",
+"~. c #8E8666",
+"{. c #5E5A42",
+"]. c #8A8266",
+"^. c #E6DABA",
+"/. c #D6CAAA",
+"(. c #464232",
+"_. c #625A46",
+":. c #CEC29E",
+"<. c #D2C6A6",
+"[. c #524A3A",
+"}. c #1E2266",
+"|. c #222EFA",
+"1. c #423E6E",
+"2. c #DED2B6",
+"3. c #42426A",
+"4. c #2A32FA",
+"5. c #4652FE",
+"6. c #3A4AFE",
+"7. c #4252FE",
+"8. c #2A36FE",
+"9. c #86829E",
+"0. c #928A66",
+"a. c #222AFA",
+"b. c #2632FA",
+"c. c #4256FE",
+"d. c #A6BAFE",
+"e. c #5266FE",
+"f. c #1E22FA",
+"g. c #3E4AEA",
+"h. c #E2DABA",
+"i. c #DACEAE",
+"j. c #5A5642",
+"k. c #3E52FE",
+"l. c #C2D2FE",
+"m. c #FAFAF6",
+"n. c #C6D2FA",
+"o. c #A2B6FE",
+"p. c #4A5EFE",
+"q. c #E6E2C2",
+"r. c #726E52",
+"s. c #E2D6BA",
+"t. c #4A4632",
+"u. c #EAE2CE",
+"v. c #262EFA",
+"w. c #566AFE",
+"x. c #F6F6F6",
+"y. c #5E72FE",
+"z. c #F2EED6",
+"A. c #D6CEAE",
+"B. c #DED2AE",
+"C. c #564E46",
+"D. c #323EFE",
+"E. c #96AAFE",
+"F. c #DEEAFA",
+"G. c #7E8AFA",
+"H. c #4E62FE",
+"I. c #0E0E0E",
+"J. c #F2F2DE",
+"K. c #26261E",
+"L. c #3A3E9A",
+"M. c #465AFE",
+"N. c #3646FE",
+"O. c #161EFA",
+"P. c #969AE6",
+"Q. c #E6E2BE",
+"R. c #DAD2AE",
+"S. c #AA9E7A",
+"T. c #9E9676",
+"U. c #9A8E6E",
+"V. c #6262BA",
+"W. c #3236D6",
+"X. c #3242FE",
+"Y. c #4E56EA",
+"Z. c #A2AAFA",
+"`. c #827A66",
+" + c #EEE6CA",
+".+ c #DACEAA",
+"++ c #423E32",
+"@+ c #C6BA96",
+"#+ c #7E7A62",
+"$+ c #DEDABA",
+"%+ c #3E3A2E",
+"&+ c #AAA27A",
+"*+ c #161612",
+"=+ c #5E5646",
+"-+ c #524E3A",
+";+ c #A69A7A",
+">+ c #665A46",
+",+ c #222216",
+"'+ c #363226",
+")+ c #4A4636",
+"!+ c #463E2E",
+"~+ c #0E0E0A",
+" ",
+" . . . . . . ",
+" . . . . . . ",
+" . . . . . . . ",
+" . . . . . . . ",
+" . . . . . . . ",
+" . . . . . . ",
+" . . . . . . . ",
+" + @ # $ % & * = $ - ; > , ' ) . . . . . . . ",
+" ! @ $ ~ { ; ] > % > ^ > ] / / % ^ % ) ( . . . . . . ",
+" # _ ~ & > > : / > > < / [ / > % / } | / > % 1 2 . . . . . . . ",
+" 3 > % | , 4 | { 5 | [ , | 6 > 7 % 4 | { % 7 % , 8 9 0 . . . . . . ",
+" # - > / 7 < 7 > > 7 { a { 1 { b ^ c 7 > > a 7 > 7 > / d e . . . . . . . ",
+" f g & h a / 1 7 ; b i j k l m n o p q r s + / > | 7 > t 7 u . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" # v > 4 > 5 / w x x y z 1 5 > , c = < A B . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" C % / + > % [ D # = % | > + > / E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" F G > | > / | H * I > / > > [ > { J . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" K * 7 6 } { % | L M N N i > % | { / s O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" P 4 / > 7 > > Q R S T z 5 > > U . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" ] 5 > > 1 ; % V W j b / X . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" ~ ] a 1 / < N Y Z ` ~ . ..c +.@.D . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" 7 | } % #.o D ....$ > $.= ] > { a 4 M l . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" | + %.&. *.* = % =.a 1 / / 5 ) 5 d -.| < / ;. . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" $ >.L e ,.'.p p '.e ).!.@.+ U / 4 / ~.{. . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" ].E ^./.s / t (._.p :.4 > d . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" <.[.}.|.1.V ^ G % < q . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" 2.3.4.5.6.7.8.9.q G ~ / 0. . . . . . . . . . . . . . . . . . . . . . . . . ",
+" @ R a.b.c.d.e.f.g.' o h.6 7 { l . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" i.j. f O 4.k.l.m.n.o.p.q.r. s./ > > t. . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" u...H 7 D v.w.x.m.m.y.a.z.>. h.> | > e . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" # A.'. B.C.D.D.E.F.G.H.b.q.I. J., % / + o . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" # # < K. 4 L.M.N.w.b.O.P.e Q.R.4 % $.~.D . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" ] = } S.T. z U.V.W.X.Y.Z.`.D +f 4 7 } % i y . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" = & S.{ ( b N > > Q X D @ .+:.| / % > ( ++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" 7 ( 8 , , ' > { @+= $.* = #+* f $ $+G 7 > ] > 4 ;.%+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" U.i &+; > / ) 7 ^ , , % $.< [ 4 % > 4 7 b > / N *+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" ].0.;.| | / / | | > 1 > / =.[ / | | s =+H D . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" -+U s [ #.b / / > % + ;+U.>+,+O . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+" '+H %+H )+k !+,.o ~+ . . . . . . . . . . . . . . . . . . . . . . ",
+" . . . . . . . ",
+" . . . . . . ",
+" . . . . . . ",
+" . . . . . . . ",
+" . . . . . . ",
+" . . . . . . . ",
+" . . . . . . . ",
+" . . . . . . ",
+" . . . . . . . "};
diff --git a/src/sane-umax-logo.xpm b/src/sane-umax-logo.xpm
new file mode 100644
index 0000000..f8c32c8
--- /dev/null
+++ b/src/sane-umax-logo.xpm
@@ -0,0 +1,557 @@
+/* XPM */
+static char * sane_umax_logo_xpm[] = {
+"256 48 506 2",
+" c None",
+". c #AAA27E",
+"+ c #E6DEBE",
+"@ c #EAE6C6",
+"# c #DED6B2",
+"$ c #CABE96",
+"% c #CABE9A",
+"& c #E2DAB6",
+"* c #D6CEA6",
+"= c #D6CEAA",
+"- c #C6BE96",
+"; c #C6BA92",
+"> c #CAC29A",
+", c #D6CAA6",
+"' c #CEC29A",
+") c #CECAB6",
+"! c #D2C69E",
+"~ c #B6AA82",
+"{ c #D2CAA2",
+"] c #AEA67E",
+"^ c #C2B68E",
+"/ c #AEA682",
+"( c #E5290C",
+"_ c #E4280C",
+": c #E3290E",
+"< c #DE2912",
+"[ c #DA2816",
+"} c #D5281A",
+"| c #D0271E",
+"1 c #CC2722",
+"2 c #C72626",
+"3 c #C3262A",
+"4 c #BE262E",
+"5 c #902157",
+"6 c #8B205B",
+"7 c #87205F",
+"8 c #821F63",
+"9 c #7E1F67",
+"0 c #791E6B",
+"a c #741E6F",
+"b c #701D73",
+"c c #6B1D77",
+"d c #671C7B",
+"e c #621C7F",
+"f c #DED6B6",
+"g c #B2A682",
+"h c #C2BA92",
+"i c #B6AA86",
+"j c #C2B692",
+"k c #BAAE86",
+"l c #BAAE8A",
+"m c #AA9E7E",
+"n c #E2290F",
+"o c #DE2913",
+"p c #D92817",
+"q c #D4281B",
+"r c #D0271F",
+"s c #CB2723",
+"t c #C72627",
+"u c #C2262B",
+"v c #BD252F",
+"w c #B92533",
+"x c #B42537",
+"y c #B0243B",
+"z c #86205F",
+"A c #7D1F67",
+"B c #781E6B",
+"C c #6F1D73",
+"D c #661C7B",
+"E c #611C7F",
+"F c #5D1B84",
+"G c #581B88",
+"H c #E2DABE",
+"I c #CEC69E",
+"J c #BEB68E",
+"K c #B2A67E",
+"L c #BEB28A",
+"M c #B6AE86",
+"N c #968E6A",
+"O c #7E7256",
+"P c #CF271F",
+"Q c #C62627",
+"R c #C1262B",
+"S c #B82533",
+"T c #B42437",
+"U c #AF243B",
+"V c #AA233F",
+"W c #A62343",
+"X c #A12347",
+"Y c #862060",
+"Z c #811F64",
+"` c #7C1F68",
+" . c #781E6C",
+".. c #731E70",
+"+. c #6F1D74",
+"@. c #6A1D78",
+"#. c #651C7C",
+"$. c #611C80",
+"%. c #5C1B84",
+"&. c #531A8C",
+"*. c #BEB28E",
+"=. c #AEA27E",
+"-. c #BAB28A",
+";. c #968E6E",
+">. c #4E4A36",
+",. c #2F2F2F",
+"'. c #C52628",
+"). c #C1262C",
+"!. c #BC2530",
+"~. c #B82534",
+"{. c #B32438",
+"]. c #AE243C",
+"^. c #AA2340",
+"/. c #A52344",
+"(. c #A12248",
+"_. c #9C224C",
+":. c #972250",
+"<. c #932154",
+"[. c #771E6C",
+"}. c #6E1D74",
+"|. c #691D78",
+"1. c #601C80",
+"2. c #5C1B85",
+"3. c #571B89",
+"4. c #521A8D",
+"5. c #4E1A91",
+"6. c #EAE2C6",
+"7. c #E2D6B2",
+"8. c #B2AA86",
+"9. c #A69A76",
+"0. c #867A5E",
+"a. c #4A4232",
+"b. c #2E2A1E",
+"c. c #26221A",
+"d. c #221E16",
+"e. c #1E1A16",
+"f. c #322E22",
+"g. c #423E2E",
+"h. c #665E46",
+"i. c #9E9272",
+"j. c #A29672",
+"k. c #625E46",
+"l. c #B72534",
+"m. c #B22438",
+"n. c #A92340",
+"o. c #A02249",
+"p. c #9B224D",
+"q. c #972151",
+"r. c #922155",
+"s. c #8E2159",
+"t. c #89205D",
+"u. c #842061",
+"v. c #771E6D",
+"w. c #721E71",
+"x. c #6D1D75",
+"y. c #691D79",
+"z. c #641C7D",
+"A. c #601C81",
+"B. c #5B1B85",
+"C. c #561B89",
+"D. c #4D1A91",
+"E. c #491995",
+"F. c #CEC6A2",
+"G. c #AAA282",
+"H. c #56523E",
+"I. c #12120E",
+"J. c #968A6A",
+"K. c #9A926E",
+"L. c #1A1612",
+"M. c #E3280D",
+"N. c #AD243D",
+"O. c #A92341",
+"P. c #A42345",
+"Q. c #9F2249",
+"R. c #962151",
+"S. c #8D2059",
+"T. c #88205D",
+"U. c #7F1F65",
+"V. c #7B1F69",
+"W. c #711E71",
+"X. c #681D79",
+"Y. c #5F1C81",
+"Z. c #5A1B86",
+"`. c #561B8A",
+" + c #511A8E",
+".+ c #4D1A92",
+"++ c #481996",
+"@+ c #43199A",
+"#+ c #EEE6CE",
+"$+ c #020206",
+"%+ c #1E1E16",
+"&+ c #9F224A",
+"*+ c #9A224E",
+"=+ c #962152",
+"-+ c #912156",
+";+ c #8D205A",
+">+ c #88205E",
+",+ c #831F62",
+"'+ c #7F1F66",
+")+ c #7A1E6A",
+"!+ c #761E6E",
+"~+ c #711E72",
+"{+ c #6C1D76",
+"]+ c #681D7A",
+"^+ c #631C7E",
+"/+ c #5F1C82",
+"(+ c #551B8A",
+"_+ c #4C1A92",
+":+ c #3E189E",
+"<+ c #3A18A2",
+"[+ c #E6DEBA",
+"}+ c #D2C6A2",
+"|+ c #3A362A",
+"1+ c #E6DEC2",
+"2+ c #16120E",
+"3+ c #DF2912",
+"4+ c #8C205A",
+"5+ c #87205E",
+"6+ c #7E1F66",
+"7+ c #751E6E",
+"8+ c #701D72",
+"9+ c #671D7A",
+"0+ c #5E1C82",
+"a+ c #591B87",
+"b+ c #551B8B",
+"c+ c #501A8F",
+"d+ c #4C1A93",
+"e+ c #471997",
+"f+ c #42199B",
+"g+ c #3E189F",
+"h+ c #3918A3",
+"i+ c #3517A7",
+"j+ c #DAD2AA",
+"k+ c #5A563E",
+"l+ c #B2AA82",
+"m+ c #8A8262",
+"n+ c #060606",
+"o+ c #5D1C83",
+"p+ c #541B8B",
+"q+ c #4B1A93",
+"r+ c #461997",
+"s+ c #3D189F",
+"t+ c #3417A7",
+"u+ c #2F17AB",
+"v+ c #DED2B2",
+"w+ c #A29676",
+"x+ c #726A52",
+"y+ c #564E3A",
+"z+ c #867E62",
+"A+ c #7A7256",
+"B+ c #E1280E",
+"C+ c #541B8C",
+"D+ c #4F1A90",
+"E+ c #4A1A94",
+"F+ c #461998",
+"G+ c #41199C",
+"H+ c #3D18A0",
+"I+ c #3818A4",
+"J+ c #3317A8",
+"K+ c #2F17AC",
+"L+ c #2A16B0",
+"M+ c #A69E7A",
+"N+ c #82765A",
+"O+ c #1A1A12",
+"P+ c #E0280F",
+"Q+ c #DD2913",
+"R+ c #D82817",
+"S+ c #4E1A90",
+"T+ c #4A1994",
+"U+ c #451998",
+"V+ c #3C18A0",
+"W+ c #3718A4",
+"X+ c #2E17AC",
+"Y+ c #2516B4",
+"Z+ c #564E3E",
+"`+ c #3E362A",
+" @ c #BEB692",
+".@ c #A29A8A",
+"+@ c #EAE2C2",
+"@@ c #928666",
+"#@ c #928A6A",
+"$@ c #DF2810",
+"%@ c #E12910",
+"&@ c #DC2914",
+"*@ c #D82818",
+"=@ c #D3281C",
+"-@ c #CF2720",
+";@ c #CA2724",
+">@ c #451999",
+",@ c #40189D",
+"'@ c #3B18A1",
+")@ c #3718A5",
+"!@ c #3217A9",
+"~@ c #2E17AD",
+"{@ c #2916B1",
+"]@ c #2416B5",
+"^@ c #2015B9",
+"/@ c #9E9672",
+"(@ c #D6CAA2",
+"_@ c #DE2811",
+":@ c #E02910",
+"<@ c #D72818",
+"[@ c #CE2720",
+"}@ c #C92724",
+"|@ c #C0262C",
+"1@ c #441999",
+"2@ c #3F189D",
+"3@ c #3617A5",
+"4@ c #2D17AD",
+"5@ c #2816B1",
+"6@ c #1F15B9",
+"7@ c #1B15BD",
+"8@ c #1914BF",
+"9@ c #464236",
+"0@ c #161212",
+"a@ c #EEEACE",
+"b@ c #B6AE8A",
+"c@ c #827A5E",
+"d@ c #A29A76",
+"e@ c #DD2812",
+"f@ c #E02911",
+"g@ c #DB2915",
+"h@ c #D72819",
+"i@ c #D2281D",
+"j@ c #C92725",
+"k@ c #C42629",
+"l@ c #C0262D",
+"m@ c #BB2531",
+"n@ c #B62535",
+"o@ c #B22439",
+"p@ c #3F189E",
+"q@ c #3617A6",
+"r@ c #3117AA",
+"s@ c #2C16AE",
+"t@ c #2816B2",
+"u@ c #2316B6",
+"v@ c #1F15BA",
+"w@ c #1A15BE",
+"x@ c #867E5E",
+"y@ c #3A3626",
+"z@ c #3E3A2A",
+"A@ c #5E5642",
+"B@ c #7E765A",
+"C@ c #8E8666",
+"D@ c #5E5A42",
+"E@ c #DC2812",
+"F@ c #E4290D",
+"G@ c #DF2911",
+"H@ c #DB2815",
+"I@ c #D62819",
+"J@ c #CD2721",
+"K@ c #C82725",
+"L@ c #B12439",
+"M@ c #A82341",
+"N@ c #3517A6",
+"O@ c #2716B2",
+"P@ c #2315B6",
+"Q@ c #1E15BA",
+"R@ c #8A8266",
+"S@ c #E6DABA",
+"T@ c #D6CAAA",
+"U@ c #464232",
+"V@ c #625A46",
+"W@ c #CEC29E",
+"X@ c #DC2813",
+"Y@ c #D6281A",
+"Z@ c #D1271E",
+"`@ c #C82726",
+" # c #BF262E",
+".# c #B1243A",
+"+# c #AC243E",
+"@# c #A82342",
+"## c #A32346",
+"$# c #9E224A",
+"%# c #952152",
+"&# c #3017AB",
+"*# c #2B16AF",
+"=# c #2716B3",
+"-# c #2215B7",
+";# c #1E15BB",
+"># c #D2C6A6",
+",# c #524A3A",
+"'# c #1E2266",
+")# c #222EFA",
+"!# c #423E6E",
+"~# c #DB2814",
+"{# c #B92532",
+"]# c #A72342",
+"^# c #A22346",
+"/# c #9E224B",
+"(# c #99224F",
+"_# c #952153",
+":# c #2616B3",
+"<# c #1D15BB",
+"[# c #DED2B6",
+"}# c #42426A",
+"|# c #2A32FA",
+"1# c #4652FE",
+"2# c #3A4AFE",
+"3# c #4252FE",
+"4# c #2A36FE",
+"5# c #86829E",
+"6# c #928A66",
+"7# c #DA2814",
+"8# c #DA2715",
+"9# c #942153",
+"0# c #8F2157",
+"a# c #2616B4",
+"b# c #2115B8",
+"c# c #1C15BC",
+"d# c #222AFA",
+"e# c #2632FA",
+"f# c #4256FE",
+"g# c #A6BAFE",
+"h# c #5266FE",
+"i# c #1E22FA",
+"j# c #3E4AEA",
+"k# c #E2DABA",
+"l# c #D92716",
+"m# c #9D224C",
+"n# c #982250",
+"o# c #8F2158",
+"p# c #8A205C",
+"q# c #2015B8",
+"r# c #DACEAE",
+"s# c #5A5642",
+"t# c #3E52FE",
+"u# c #C2D2FE",
+"v# c #FAFAF6",
+"w# c #C6D2FA",
+"x# c #A2B6FE",
+"y# c #4A5EFE",
+"z# c #E6E2C2",
+"A# c #726E52",
+"B# c #E2D6BA",
+"C# c #4A4632",
+"D# c #D82716",
+"E# c #8E2158",
+"F# c #852060",
+"G# c #801F64",
+"H# c #EAE2CE",
+"I# c #262EFA",
+"J# c #566AFE",
+"K# c #F6F6F6",
+"L# c #5E72FE",
+"M# c #F2EED6",
+"N# c #D72717",
+"O# c #801F65",
+"P# c #D6CEAE",
+"Q# c #DED2AE",
+"R# c #564E46",
+"S# c #323EFE",
+"T# c #96AAFE",
+"U# c #DEEAFA",
+"V# c #7E8AFA",
+"W# c #4E62FE",
+"X# c #0E0E0E",
+"Y# c #F2F2DE",
+"Z# c #D72718",
+"`# c #D62718",
+" $ c #E5290D",
+".$ c #761E6D",
+"+$ c #26261E",
+"@$ c #3A3E9A",
+"#$ c #465AFE",
+"$$ c #3646FE",
+"%$ c #161EFA",
+"&$ c #969AE6",
+"*$ c #E6E2BE",
+"=$ c #DAD2AE",
+"-$ c #D52719",
+";$ c #1A14BD",
+">$ c #AA9E7A",
+",$ c #9E9676",
+"'$ c #9A8E6E",
+")$ c #6262BA",
+"!$ c #3236D6",
+"~$ c #3242FE",
+"{$ c #4E56EA",
+"]$ c #A2AAFA",
+"^$ c #827A66",
+"/$ c #EEE6CA",
+"($ c #B52536",
+"_$ c #DACEAA",
+":$ c #423E32",
+"<$ c #D4271A",
+"[$ c #A72341",
+"}$ c #C6BA96",
+"|$ c #7E7A62",
+"1$ c #DEDABA",
+"2$ c #3E3A2E",
+"3$ c #A22347",
+"4$ c #9D224B",
+"5$ c #1914BE",
+"6$ c #AAA27A",
+"7$ c #161612",
+"8$ c #98214E",
+"9$ c #5E5646",
+"0$ c #524E3A",
+"a$ c #A69A7A",
+"b$ c #665A46",
+"c$ c #222216",
+"d$ c #363226",
+"e$ c #4A4636",
+"f$ c #463E2E",
+"g$ c #0E0E0A",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" . + @ # $ % & * # = - ; > , ' ",
+" ) + # ! ~ - { ; $ ; ] ; { ^ ^ $ ] $ ' / ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( _ _ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( : < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d e ",
+" @ f ! % ; ; g ^ ; ; h ^ i ^ ; $ ^ j k ^ ; $ l m ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( n o p q r s t u v w x y 6 z 8 A B a C c D E F G ",
+" H ; $ k > I k ~ J k i > k K ; L $ I k ~ $ L $ > M N O ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( _ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( q P s Q R v S T U V W X Y Z ` ...+.@.#.$.%.G &. ",
+" @ = ; ^ L h L ; ; L ~ *.~ l ~ =.] -.L ; ; *.L ; L ; ^ ;.>. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. _ ( ( ( ( ( ( ( ( ( ( ( ( ( ,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. '.).!.~.{.].^./.(._.:.<. ` [...}.|.#.1.2.3.4.5.,.,.,.,.,. ",
+" 6.7.% 8.*.^ l L - =.9.0.a.b.c.d.e.f.g.h.i.. ^ ; k L ; j.L k. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. l.m.].n./.o.p.q.r.s.t.u. v.w.x.y.z.A.B.C.4.D.E.,.,.,.,.,.,. ",
+" @ F.; I ; J ^ G.H.H.I. J.l J ; > -.* h K.L. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. M.( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. N.O.P.Q.p.R.r.S.T.u.U.V.,.W.x.X.z.Y.Z.`. +.+++@+,.,.,.,.,.,. ",
+" #+$ ^ . ; $ i $+ @ * $ k ; . ; ^ %+ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. &+*+=+-+;+>+,+'+)+!+~+{+]+^+/+Z.(+ +_+++@+:+<+,.,.,.,.,. ",
+" [+}+; k ; ^ k |+ & 1+; ^ ; ; i ; ~ 2+ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( M.( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( : 3+,. -+4+5+,+6+)+7+8+{+9+^+0+a+b+c+d+e+f+g+h+i+,.,.,.,.,. ",
+" j+& L K j ~ $ k k+ l+m+m+9.; $ k ~ ^ i.n+ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( : < [ } ,.,. 8 9 0 a b c d e o+a+p+c+q+r+f+s+h+t+u+,.,.,.,.,. ",
+" v+I ^ ; L ; ; w+x+ y+z+J.J ; ; A+ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( B+( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( n o p q r s t ,. a C c D E F G C+D+E+F+G+H+I+J+K+L+,.,.,.,.,.,. ",
+" { J ; ; l - $ M+N+ 0.=.^ O+ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( P+,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( n Q+R+q P s Q R v ,.,. #.$.%.G &.S+T+U+G+V+W+J+X+L+Y+,.,.,.,.,.,. ",
+" ! { *.l ^ h m+Z+`+ @! .@ +@-. @@#@$+ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( $@( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( %@&@*@=@-@;@'.).!.~.{.].,. 2.3.4.5.E.>@,@'@)@!@~@{@]@^@,.,.,.,.,.,. ",
+" L k j $ /@e.$+ +@+@# ; (@* { ; ~ *.I l+ b. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( _@,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( :@&@<@=@[@}@'.|@!.l.m.].n./.,.,. D.E.1@2@'@3@!@4@5@]@6@7@8@,.,.,.,.,. ",
+" k . 9@0@ a@& * $ b@*.l ^ ^ J ' J ;.c@k h ^ d@ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( e@( ( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( f@g@h@i@,.j@k@l@m@n@o@N.O.P.Q.p.R.,. p@<+q@r@s@t@u@v@w@8@8@8@,.,.,.,. ",
+" # x@k+>.y@z@f.f.z@>.A@B@#@. A+ ^ I ^ C@D@ ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( E@( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( F@G@H@I@i@J@K@,.,.m@n@L@N.M@P.&+*+=+-+;+,.,. <+N@r@s@O@P@Q@8@8@8@8@8@8@8@,.,. ",
+" R@%+ S@T@i.^ j. U@V@f. W@I ; ;. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( X@( X@( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( : 3+[ Y@Z@1 `@3 #,.,..#+#@###$#*+%#-+4+5+,+6+,. i+&#*#=#-#;#8@8@8@8@8@8@8@8@8@,.,. ",
+" >#,#'#)#!#M+] }+$ h g. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ~#( ,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( : < [ } | 1 2 3 4 {#,.,.,.]#^#/#(#_#5 6 7 8 9 0 a ,.,. u+*#:#-#<#8@8@8@8@8@8@8@8@8@8@8@8@,. ",
+" [#}#|#1#2#3#4#5#g. }+! ^ 6# ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( 7#( 8#( 8#,.,.,. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. n o p q r s t u v w x y ,.,.,.,.(#9#0#6 z 8 A B a C c D ,. L+a#b#c#8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@,. ",
+" + x+d#e#f#g#h#i#j#, e. k#K L ~ b. ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( l#( ,.,.,. ( ( ( ( ( ( ( ( ( ( ,.( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,. Q+R+q P s Q R v S T U V W X m#n#<.o#p#Y Z ` ...+.@.#.$.%.,.,. Y+q#c#8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@ ",
+" r#s# 6.n+|#t#u#v#w#x#y#z#A# B#^ ; ; C# ( ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( l#( D#( D#,.,.,. ( ( ( ( ( ( ( ( ( ( ,.( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.( ( ( ( ( ( ( ( ( ( ( ,.,.,. =@-@;@'.).!.~.{.].^./.(._.:.<.E#p#F#G#` [...}.|.#.1.2.3.4.5.,. 7@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@8@ ",
+" H#+@|+ L $+I#J#K#v#v#L#d#M#x@ k#; k ; >. ( ( ( ( ( ( ( ( ( ( ( ( ,.,. ( ( ( ( ( ( ( ( ( ( N#( ,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.( ( ( ( ( ( ( ( ( ( ( ( ( ,.( ( ( ( ( ( ( ( ( ( :@,.,.,. }@'.|@!.l.m.].n./.o.p.q.r.s.t.u.O#V.v.w.x.y.z.A.B.C.4.D.E.1@,.,. 8@8@8@8@8@8@8@8@8@8@8@,.8@8@8@8@8@8@8@8@8@8@8@,. ",
+" @ P#z@ Q#R#S#S#T#U#V#W#e#z#X# Y#> $ ^ . e. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( Z#( `#( `#,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.( ( ( ( ( ( ( ( ( ( ( ( ,.,.( ( ( ( ( ( ( $f@g@h@,.,.,.k@l@m@n@o@N.O.P.Q.p.R.r.S.T.u.U.V..$W.x.X.z.Y.Z.`. +.+++@+p@<+,.,. 8@8@8@8@8@8@8@8@8@8@8@,.,.8@8@8@8@8@8@8@8@8@8@8@8@,. ",
+" @ @ h +$ I @$#$$$J#e#%$&$>. *$=$I $ (@C@$+ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( `#( ( `#( -$,.,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.,.( ( ( ( ( ( ( ( ( ( ( ,.,.( ( ( ( ( F@G@H@I@i@J@,.,.,.m@n@L@N.M@P.&+*+=+-+;+>+,+'+)+!+~+{+]+^+/+Z.(+ +_+++@+:+<+N@r@s@,.,. ;$8@8@8@8@8@8@8@8@8@8@8@,.,.,.8@8@8@8@8@8@8@8@8@8@8@8@,. ",
+" { * j >$,$ J.'$)$!$~${$]$^$$+ /$6.I L j $ 9.I. ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.,.( ( ( ( ( ( ( ( ( ( ,.,.,.( ( ( : 3+[ Y@Z@1 `@3 ,.,.($.#+#@###$#*+%#-+4+5+,+6+)+7+8+{+9+^+0+a+b+c+d+e+f+g+h+i+&#*#=#-#,.,. 8@8@8@8@8@8@8@8@8@8@8@8@,.,.,.,.,.8@8@8@8@8@8@8@8@8@8@8@8@ ",
+" * % >$~ / =. m+; ; w+O+$+ + _$W@k ^ $ ; / :$ ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( -$( <$( <$,.,.,.,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ( ,.,.,.( : < [ } | 1 2 3 4 [$,.,.+#]#^#/#(#_#5 6 7 8 9 0 ,.,.,.,.,.,.,.,.,.,.r+f+s+h+t+u+*#:#-#<#8@8@,. 8@8@8@8@8@8@8@8@8@8@8@,.,.,.,.,. 8@8@8@8@8@8@8@8@8@8@8@8@ ",
+" L / M > > , ; ~ }$* (@& * |$& 6.# 1$}+L ; { ; I d@2$ ,.( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,.,.,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ( ,.,.,.,.o p q r s t u v w x y ,.W 3$4$(#9#0#6 z 8 A B a ,.,.,.,.,.,.,.,.,.,.,.H+I+J+K+L+a#b#c#8@8@8@8@,.,. 5$8@8@8@8@8@8@8@8@8@8@,.,.,.,.,.,. 8@8@8@8@8@8@8@8@8@8@8@,. ",
+" '$9.6$- ; ^ ' L ] > > $ (@h i I $ ; I L =.; ^ m+7$ ,.,.( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ,.,.,.,.,.,.,.,. ( ( ( ( ( ( ( ( ( ( ,.,.,. ( ( ( ( ( ( ( ,.,.,.,.q P s Q R v S T U 8$W ,.m#n#<.o#p#Y Z ` ...+.@.,.,.,.,.,.,.,.,.,.,.,.,.X+L+Y+q#c#8@8@8@8@8@8@8@,.5$8@8@8@8@8@8@8@8@8@8@,.,.,.,.,.,. 8@8@8@8@8@8@8@8@8@8@8@8@,. ",
+" R@6#d@k k ^ ^ k k ; l ; ^ b@i ^ k k i.9$|+$+ ,.,.,.,.,.,.,.( ( ( ( ( ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ",
+" 0$A+i.i /@=.^ ^ ; $ . a$'$b$c$n+ ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ",
+" d$|+2$|+e$a.f$y@e.g$ ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,. ,.,.,.,.,.,.,.,.,.,.,.,. ",
+" ,.,.,.,.,. ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "};
diff --git a/src/sane-xsane-logo.xpm b/src/sane-xsane-logo.xpm
new file mode 100644
index 0000000..2960f24
--- /dev/null
+++ b/src/sane-xsane-logo.xpm
@@ -0,0 +1,425 @@
+/* XPM */
+static char * sane_xsane_logo_xpm[] = {
+"256 48 374 2",
+" c None",
+". c #CA0633",
+"+ c #B0062C",
+"@ c #AC062B",
+"# c #A70628",
+"$ c #A40627",
+"% c #9E0625",
+"& c #A20626",
+"* c #9C0624",
+"= c #96102B",
+"- c #870422",
+"; c #860422",
+"> c #7B031C",
+", c #75021C",
+"' c #74021C",
+") c #73021C",
+"! c #6C021C",
+"~ c #640219",
+"{ c #620218",
+"] c #5C0214",
+"^ c #570214",
+"/ c #540214",
+"( c #4C0213",
+"_ c #4D0213",
+": c #470213",
+"< c #420210",
+"[ c #41020F",
+"} c #3C020C",
+"| c #33020C",
+"1 c #36020C",
+"2 c #31020C",
+"3 c #2C020C",
+"4 c #29020B",
+"5 c #1F0207",
+"6 c #1D0207",
+"7 c #130204",
+"8 c #1E0207",
+"9 c #120204",
+"0 c #883648",
+"a c #BC062F",
+"b c #AF062C",
+"c c #AD062B",
+"d c #A90629",
+"e c #A30626",
+"f c #A10626",
+"g c #830420",
+"h c #77021C",
+"i c #79031C",
+"j c #6F021C",
+"k c #66021A",
+"l c #620217",
+"m c #5D0214",
+"n c #5A0214",
+"o c #580214",
+"p c #550214",
+"q c #520214",
+"r c #430211",
+"s c #430210",
+"t c #3F020E",
+"u c #3A020C",
+"v c #37020C",
+"w c #30020C",
+"x c #2F020C",
+"y c #77424E",
+"z c #27020A",
+"A c #220208",
+"B c #240209",
+"C c #771C31",
+"D c #AB062A",
+"E c #A80629",
+"F c #A60628",
+"G c #A30627",
+"H c #9F0625",
+"I c #54363D",
+"J c #7D2B3E",
+"K c #820420",
+"L c #7F031E",
+"M c #70021C",
+"N c #6D021C",
+"O c #753443",
+"P c #660A20",
+"Q c #600216",
+"R c #5D0215",
+"S c #450212",
+"T c #40020F",
+"U c #3B020C",
+"V c #35020C",
+"W c #3F2F32",
+"X c #2A020B",
+"Y c #9D0527",
+"Z c #6F0F24",
+"` c #AE062B",
+" . c #AA0629",
+".. c #9D0624",
+"+. c #980624",
+"@. c #571C2A",
+"#. c #81031F",
+"$. c #7C031C",
+"%. c #78031C",
+"&. c #610217",
+"*. c #5E0216",
+"=. c #500214",
+"-. c #440211",
+";. c #39020C",
+">. c #32020C",
+",. c #350E16",
+"'. c #4A1E28",
+"). c #200207",
+"!. c #1A0206",
+"~. c #180205",
+"{. c #190206",
+"]. c #740F26",
+"^. c #890C26",
+"/. c #8D0523",
+"(. c #80031F",
+"_. c #71021C",
+":. c #763B48",
+"<. c #560214",
+"[. c #510214",
+"}. c #450211",
+"|. c #38020C",
+"1. c #34020C",
+"2. c #3C0E18",
+"3. c #2E020C",
+"4. c #A32240",
+"5. c #721228",
+"6. c #AA062A",
+"7. c #AC062A",
+"8. c #9B0624",
+"9. c #8E0523",
+"0. c #6A021B",
+"a. c #5B0214",
+"b. c #40020E",
+"c. c #3E020D",
+"d. c #3A0E18",
+"e. c #170205",
+"f. c #6E0C21",
+"g. c #A00625",
+"h. c #9A0624",
+"i. c #940624",
+"j. c #880422",
+"k. c #69021B",
+"l. c #67021A",
+"m. c #753746",
+"n. c #5E0215",
+"o. c #4F0214",
+"p. c #390E17",
+"q. c #72162A",
+"r. c #990624",
+"s. c #950624",
+"t. c #423033",
+"u. c #76021C",
+"v. c #6F2636",
+"w. c #530214",
+"x. c #160205",
+"y. c #6B081E",
+"z. c #9D1A37",
+"A. c #A50627",
+"B. c #960624",
+"C. c #482930",
+"D. c #7D031D",
+"E. c #72021C",
+"F. c #650219",
+"G. c #4E0214",
+"H. c #3D020D",
+"I. c #370E17",
+"J. c #150205",
+"K. c #1C0206",
+"L. c #C90633",
+"M. c #711A2C",
+"N. c #930624",
+"O. c #870B26",
+"P. c #6E021C",
+"Q. c #6B021C",
+"R. c #712C3C",
+"S. c #590214",
+"T. c #360E16",
+"U. c #1D0206",
+"V. c #69041A",
+"W. c #8F0523",
+"X. c #35282A",
+"Y. c #C40630",
+"Z. c #711B2D",
+"`. c #A80628",
+" + c #72303F",
+".+ c #601727",
+"++ c #C2062F",
+"@+ c #721C2E",
+"#+ c #B1062C",
+"$+ c #8A0422",
+"%+ c #402F32",
+"&+ c #7C031D",
+"*+ c #5F0216",
+"=+ c #410E1A",
+"-+ c #BF0E37",
+";+ c #95283F",
+">+ c #9F0528",
+",+ c #403033",
+"'+ c #850421",
+")+ c #7E031D",
+"!+ c #7B041D",
+"~+ c #653C45",
+"{+ c #460212",
+"]+ c #380E17",
+"^+ c #3B2E30",
+"/+ c #903046",
+"(+ c #920624",
+"_+ c #7B0922",
+":+ c #7E031E",
+"<+ c #77404C",
+"[+ c #650E21",
+"}+ c #6D303E",
+"|+ c #3F0E19",
+"1+ c #392D2F",
+"2+ c #C80632",
+"3+ c #A00626",
+"4+ c #8C0523",
+"5+ c #74061F",
+"6+ c #68021B",
+"7+ c #3A0E17",
+"8+ c #210208",
+"9+ c #26020A",
+"0+ c #C70632",
+"a+ c #C3062F",
+"b+ c #970624",
+"c+ c #82041F",
+"d+ c #773F4B",
+"e+ c #55252F",
+"f+ c #3E020E",
+"g+ c #411C24",
+"h+ c #C30630",
+"i+ c #BE062D",
+"j+ c #C0062E",
+"k+ c #AE193A",
+"l+ c #BA062F",
+"m+ c #B4062C",
+"n+ c #3C2E31",
+"o+ c #81041F",
+"p+ c #68021A",
+"q+ c #4A0213",
+"r+ c #2D020C",
+"s+ c #200208",
+"t+ c #C1062E",
+"u+ c #C1062F",
+"v+ c #B3062C",
+"w+ c #A20527",
+"x+ c #4D1E28",
+"y+ c #77404D",
+"z+ c #751D31",
+"A+ c #67343F",
+"B+ c #5E1424",
+"C+ c #BF062E",
+"D+ c #BC062C",
+"E+ c #BD062F",
+"F+ c #BC062E",
+"G+ c #AD0629",
+"H+ c #7F0823",
+"I+ c #490213",
+"J+ c #230208",
+"K+ c #C60631",
+"L+ c #C20630",
+"M+ c #AF062B",
+"N+ c #A50628",
+"O+ c #840421",
+"P+ c #552C35",
+"Q+ c #50091A",
+"R+ c #28020A",
+"S+ c #1B0206",
+"T+ c #2C1F21",
+"U+ c #C50631",
+"V+ c #C50630",
+"W+ c #BB062C",
+"X+ c #B6062C",
+"Y+ c #97213B",
+"Z+ c #BA062E",
+"`+ c #910624",
+" @ c #8B0523",
+".@ c #763141",
+"+@ c #461822",
+"@@ c #4B0213",
+"#@ c #400E1A",
+"$@ c #250209",
+"%@ c #B5062C",
+"&@ c #B7062C",
+"*@ c #7F051D",
+"=@ c #561625",
+"-@ c #8A0523",
+";@ c #900523",
+">@ c #3E2F32",
+",@ c #7A031C",
+"'@ c #670B21",
+")@ c #6B021B",
+"!@ c #630219",
+"~@ c #26090E",
+"{@ c #483237",
+"]@ c #85384A",
+"^@ c #8F0521",
+"/@ c #890422",
+"(@ c #402D31",
+"_@ c #753947",
+":@ c #441B24",
+"<@ c #490516",
+"[@ c #28020B",
+"}@ c #BD062D",
+"|@ c #C90632",
+"1@ c #B8062C",
+"2@ c #800723",
+"3@ c #430E1B",
+"4@ c #B9062C",
+"5@ c #763B49",
+"6@ c #753C49",
+"7@ c #682A38",
+"8@ c #C70631",
+"9@ c #900624",
+"0@ c #480213",
+"a@ c #663641",
+"b@ c #BD062C",
+"c@ c #B2062C",
+"d@ c #8D0522",
+"e@ c #A30628",
+"f@ c #763A47",
+"g@ c #603A43",
+"h@ c #140204",
+"i@ c #833848",
+"j@ c #8E0522",
+"k@ c #840420",
+"l@ c #860421",
+"m@ c #3D2E31",
+"n@ c #6E142A",
+"o@ c #490A19",
+"p@ c #2B020B",
+"q@ c #74061D",
+"r@ c #61081B",
+"s@ c #3D0E19",
+"t@ c #78041D",
+"u@ c #6F1C30",
+"v@ c #50202B",
+"w@ c #3B1A20",
+"x@ c #BA062C",
+"y@ c #5B081A",
+"z@ c #230209",
+"A@ c #3B0E18",
+"B@ c #37020E",
+"C@ c #AE062A",
+"D@ c #9D0625",
+"E@ c #733745",
+"F@ c #4D3439",
+"G@ c #3E0E19",
+"H@ c #911831",
+"I@ c #820B23",
+"J@ c #83051F",
+"K@ c #80051F",
+"L@ c #7C051F",
+"M@ c #77041E",
+"N@ c #7B3243",
+"O@ c #82172F",
+"P@ c #77031E",
+"Q@ c #74031E",
+"R@ c #6D031A",
+"S@ c #6B0319",
+"T@ c #670219",
+"U@ c #51111F",
+"V@ c #4C0F1C",
+"W@ c #4F0616",
+"X@ c #430212",
+"Y@ c #410916",
+"Z@ c #603A42",
+"`@ c #3F121C",
+" # c #340912",
+".# c #33020D",
+"+# c #32020D",
+"@# c #2C020B",
+"## c #39151C",
+"$# c #35141A",
+" ",
+" ",
+" ",
+" ",
+" ",
+" . . . . . . . . . . . . . . . + + + + @ # $ $ % & * = - - - ; > > > , ' ' ) ! ~ ~ { ] ] ] ^ / / ( _ : < [ [ } | | 1 2 | | 3 4 5 5 5 5 5 6 7 8 9 ",
+" . . . . . . 0 . . . . . . . . . . a + b c d # $ e f % * * - - - g g > h i ' ' j j ! k { l m ] n o p / q r s < t } u v v | w x y z A B A 5 5 5 8 9 9 ",
+" . . . . . . . . . . . . . . . . C + D E @ F $ G H % * * I J - - K L > h h ' ' M N ! O P ~ Q R ] n o ^ / q S < [ T } } U V | 2 w W X A z 5 5 8 5 8 7 9 ",
+" . . . . . . . Y . . . . . . . . Z + ` E .E $ G ..H * +.@. - #.$.> > %.h , M M j N ! &.l *.] n o p / =. -.[ < t } ;.u 1 | >.w ,. '.).5 5 !.5 ~.{.{. ",
+" . . . . . . . . . . . . . . . . ]. + .E .E $ f & * * +.^. /.> (.> > %.' ' _.N j ! ! :. &.l R ] n o <./ [. }.< [ } } u |.1.| w x 2. 3.5 5 5 8 8 7 ~. ",
+" . . . . . . . . . 4. . . . . . . . 5. ` 6.7.d $ G & % * * 8.9. (.> > > h , ' _._.M ! 0.k *.] ] a.o <./ [. -.< b.c.} ;.v V | >.x d. 5 5 5 8 8 7 e. ",
+" . . . . . . . . . . . . . . . . . f. c D 7.# $ G g.& * * h.i.y j.$.> i , , ' ' ) N ! k.l.m. l n.] n <./ / o. s [ < T } u |.v | w w p. 5 e.!.e.9 9 ",
+" . . . . . . . . . . . . . . . . . q. + D d 6.$ G H f * * r.s.t. > > > i u.' j j N ! l.k v. ~ ] ] ^ o / q w. r [ [ } } |.|.1.| >.w ,. 8 x.7 x.9 ",
+" . . . . . . . . . . . . . . . . . y. z. d D A.$ H f * * 8.B.i.C. D.> > i , ' E._.! ! k.F.~ n.] ^ p / / G. s < H.[ } } ;.1.| 2 3 I. J.8 K.9 ",
+" . . . . . . . . . . . . . . . . . L.M. + 7.D $ $ G % * * h.i.N.O. + > > , , ' P.E.! Q.k ~ ~ R. n.] ^ S./ / _ < < < } } ;.1.| | 2 3 T. 7 U.9 ",
+" . . . . . . . . . . . . . . . . V. + + 7.7.$ $ & % * * h.N.N.W. - > , ' ' N ) ! ! ! k ~ ~ ~ ] S.S./ / / [ < } } ;.} ;.| 2 2 3 ,. X.9 9 ",
+" . . . . . . . . . . . . . . . Y.Z. + + - 7.`.$ $ & * * * s.h.N.N.y - > , ' ' ' ' E.! 0.k ~ ~ ~ + .+S.^ / _ G. : < } } } v |.| x 2 3.,. 5 7 9 ",
+" . . . . . . . . . . . . . . . ++@+ #++ + $ $ H H * * B.s.i.N.$+%+ &+N. , ' ' ) N ! ! k 0.~ ~ { *+ ^ ^ / G._ [ [ [ } ;.|.1.| >.x 3 =+ 5 8 y 9 ",
+" . . . . . . . . . . . . . . -+ ;+ + + >+ $ $ & ..* * B.h.N.N.N.,+ '+)+ !+' ' ' N N ! Q.l.~ ~ &.*+~+ <./ / =.G. {+[ [ } U v 1 | x x 3.]+ 5 5 5 ^+ ",
+" . . . . . . . . . . . . . . /+ + + c c G g.f f * 8.s.s.N.(+W._+ :+> <+ ' ' j ! ! ! l.~ ~ ~ &.n.[+ }+/ q _ G. < T c.} |.v |.| >.w w |+ ).z 5 e.1+ ",
+" . . . . . . . . . . . . . 2+ + + 6.6. $ 3+f g.* +.i.N.N.W.4+j. g > > 5+' j ! ! 0.k.6+~ ~ *+Q ] / / q _ t c.} } U 1.V | w x x 7+ z 8+9+5 5 1+ ",
+" . . . . . . . . . . . 0+0+a+ + c 6.d e % g.* 8.b+i.N.N.(+j.- y (.c+> d+ ) M ! ! 6+l.F.~ &.Q R ] e+ / o._ G. f+t t u |.V | | 2 x 3 g+ A 4 8+5 5 !.1+ ",
+" . . . . . . . . . . h+2+i+j+k+ l++ @ 6.6.6. m+% H * r.B.b+N.(+/.4+- n+ o+> > %. M ) ! ! p+p+~ ~ Q Q R ] ^ G.o.q+ t f+} u |.1 | >.w r+3 ,. 4 s+5 5 5 8 1+ ",
+" . . . . . . . . Y.2+t+u+j+i+v+ + ` .d 6.w+ % * * h.i.N.N.(+4+/.- x+ > > > h y+ z+N ! 6+0.F.~ &.&.R ] n o A+ B+G.q+ f+} } u v V | 2 w r+3 ,. A 5 5 5 8 1+ ",
+" . . . . . . 0+0+Y.++Y.C+C+D+ + 6.d .# $ E+F+G+% * * b+b+N.(+4+9.- - H+ g > h > ' ! ! p+l.6+~ { { m ] a.o ^ ( I+ b.} } u v V | 2 x x 3 7+ J+5 8 8 1+ ",
+" . . . . 0+0+Y.K+++++C+L+D+D+D+ M+D N+$ $ $ e f % * 8.+.s.N.N.(+j.j.W.- O+ > i i ' ' ! ! k.0.~ ~ { &.m ] ^ S.p P+ Q+I+ b.T U v 1.| 2 >.w 3 3 p. R+K.S+1+ T+ ",
+" . . . 2+U+U+t+V+C+C+D+h+D+D+W+X+Y+ Z+D D E $ $ $ f H % * B.r.N.N.`+ @W.- - - - y > ' u.' ' .@ l.k ~ ~ ~ *+&.] ] a.<./ +@ @@ H.} U U 1 | 2 x 3.3 4 #@ $@x.1+ 9 ",
+" . . . j+C+j+U+C+j+D+V+D+D+%@&@W+%@ D D A.A.$ $ f *@: =@d r.i.N.N.-@;@;@;@- - - >@ > ' ' ,@' ' '@)@F.~ { !@&.] ] <./ / / : [ } |.v 1 | >.x r+3 B ,. ~@{@ 9 9 ",
+" . . 2+]@ K+j+j+j+j+D+D+D+D+D+%@+ + 6.$ $ $ $ $ f ^@ B.s.N.N.`+/@- - - - - (@ > > ' ' ' N _@ 0.~ ~ ~ n.] ] ] <.S./ / :@ <@ } } |.| | | w 3 3 3 [@,. 9 9 9 ",
+" }@. |@. . K+D+D+D+D+D+1@D+%@&@&@+ .d $ $ $ f H f s.h.N.N.`+- - - - - - 2@ > ' ' ' ' N N 0.~ ~ { n.] ] n ^ / / / o. } } |.| | | x 3 3 R+3 3@ J.9 9 9 ",
+" . i+0+D+0+ D+}@D+D+4@%@m+1@%@+ + + 7.A.$ $ $ f H f * r.N. @;@- - - - - - - ,@ > ' , ' ) N ! 5@ 6@~ n.n.n.] n ^ / / ( ( ( 7@ } |.|.| | x w 3.3 [@B ,. 9 K.9 9 9 ",
+" C+8@|@D+K+j+ D+D+%@%@1@%@&@&@X++ + .A.$ $ f H f * * N.9@ @W.W.- /@- - - - D.y ,@' ' ' P.! ! ! ~ *.&.n.] S.S.<./ w.o.o.0@ } U |.1 | | w 3 3 $@4 ,. a@S+9 9 9 9 ",
+" j+j+j+U+D+b@D+ &@1@&@c@#+#+c@+ + + 6.$ $ f g.....* +.d@ e@4+9@/@- - - - - - ; &+n+ u.' ' P.) N ! 0.f@ ~ &.R ] a.<.o / / [.G._ @@g@ ;.|.|.1.| 2 w x 3 X 4 ]+ h@7 9 9 9 9 ",
+" U+D+Y.}@D+D+D+i@ v+&@X+v++ v++ + D 6. $ $ $ G H f H * * +.j@ ;@/@-@- - - - - k@L l@m@ ' ' j j ! ! ! k.n@ &.] ] S.S.o / [._ o.q+q+o@ u u V | >.x r+3 p@9+9+p. !.x.7 9 9 9 9 ",
+" D+D+D+D+D+D+W+W+ v+X++ + + + c 6.F 6.$ f 3+3+..* h.b++.`+ ;@ @ @j.- - - - ; > > q@ ' ' _.' ! ! ! l.6+ r@m ] o o / / o.G._ ( : : ;.v 1 | | w x 3 4 9+J+s@ {.~.7 {.9 9 9 9 ",
+" D+&@W+X+&@X+W+&@X+ + + + + ` ` 6. $ & g.g.% * * b+B.B.N. 4+4+j.- - - - - l@(.> t@ ' M M ! ! ! Q.6+F.u@ ] S.o p / / @@=.( @@: : v@ u 1 | 2 2 w r+3 3 $@$@,. w@{.~.9 9 9 9 9 9 ",
+" X+X+W+#+X+c@x@X+X+m+ + + ` ` D D & 3+% % * * h.B.s.N.N. - j.- - - - l@K l@#.> > y M M M ! ! ! 6+l.~ &. y@o o p / =.q @@( : : r S |.1 | >.w 3 3 X X z@$@A@ B@8 ~.{.7 9 9 9 9 9 ",
+" W+#+W+#+m+%@%@#+m++ + + ` 7.E 6. C@3+D@* * * h.b+r.b+N.4+h - - - - - - l@&+$.> i > n+ ' _.j _.! ! k.~ ~ !@E@ <.o / [.[.[.@@: : : }.< F@ |.1 | w w r+3 z 9+$@9+G@ 6 {.e.7 x.9 9 9 9 9 ",
+" #+1@#+&@+ #+#++ + + + + + E 7. g.H@I@J@K@J@K@K@L@L@M@M@ N@O@P@Q@Q@Q@R@R@S@S@S@T@n+ ' ! P.! k.l.k ~ ~ { R <.U@V@W@=.=.q+: : X@-.Y@Z@ |.`@ #| .#+#3.3.@#r+@#>@ ##$#J+J+K.K.!.x.x.x.K. ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "};
diff --git a/src/xsane-32x32.ico b/src/xsane-32x32.ico
new file mode 100644
index 0000000..4408721
--- /dev/null
+++ b/src/xsane-32x32.ico
Binary files differ
diff --git a/src/xsane-32x32.xpm b/src/xsane-32x32.xpm
new file mode 100644
index 0000000..e695c8f
--- /dev/null
+++ b/src/xsane-32x32.xpm
@@ -0,0 +1,236 @@
+/* XPM */
+static char * xsane_32x32_xpm[] = {
+"32 32 201 2",
+" c None",
+". c #020206",
+"+ c #3E3A2A",
+"@ c #5E5A42",
+"# c #9A926E",
+"$ c #DED6B2",
+"% c #2A36FE",
+"& c #161EFA",
+"* c #B6AE86",
+"= c #323EFE",
+"- c #465AFE",
+"; c #D2CAA2",
+"> c #161612",
+", c #3E4AEA",
+"' c #C6BE96",
+") c #726A52",
+"! c #96AAFE",
+"~ c #3236D6",
+"{ c #7E8AFA",
+"] c #7E765A",
+"^ c #A2B6FE",
+"/ c #A69E7A",
+"( c #F2F2DE",
+"_ c #322E22",
+": c #BEB68E",
+"< c #4E4A36",
+"[ c #3A3E9A",
+"} c #C2D2FE",
+"| c #969AE6",
+"1 c #EAE6C6",
+"2 c #8A8262",
+"3 c #6262BA",
+"4 c #423E6E",
+"5 c #1E2266",
+"6 c #AEA67E",
+"7 c #CEC69E",
+"8 c #E6E2BE",
+"9 c #12120E",
+"0 c #2E2A1E",
+"a c #3646FE",
+"b c #86829E",
+"c c #968E6A",
+"d c #1E22FA",
+"e c #C2BA92",
+"f c #DEEAFA",
+"g c #5A563E",
+"h c #566AFE",
+"i c #222216",
+"j c #D6CEA6",
+"k c #464232",
+"l c #BAB28A",
+"m c #222AFA",
+"n c #DEDABA",
+"o c #9E9672",
+"p c #0E0E0A",
+"q c #928A66",
+"r c #B2A67E",
+"s c #3A4AFE",
+"t c #CAC29A",
+"u c #363226",
+"v c #524E3A",
+"w c #222EFA",
+"x c #A29A8A",
+"y c #DED2AE",
+"z c #726E52",
+"A c #F6F6F6",
+"B c #4E62FE",
+"C c #1E1E16",
+"D c #867E5E",
+"E c #CECAB6",
+"F c #3E52FE",
+"G c #4E56EA",
+"H c #F2EED6",
+"I c #C6BA92",
+"J c #E6DEBA",
+"K c #A29672",
+"L c #AAA27A",
+"M c #B2AA82",
+"N c #C2B68E",
+"O c #D2C69E",
+"P c #A29A76",
+"Q c #5E72FE",
+"R c #423E2E",
+"S c #7A7256",
+"T c #CABE96",
+"U c #A2AAFA",
+"V c #928666",
+"W c #060606",
+"X c #1A1612",
+"Y c #EAE2CE",
+"Z c #BAAE86",
+"` c #867A5E",
+" . c #CEC29A",
+".. c #AEA27E",
+"+. c #DAD2AA",
+"@. c #D6CAA2",
+"#. c #8E8666",
+"$. c #BEB28A",
+"%. c #262EFA",
+"&. c #B6AA82",
+"*. c #625A46",
+"=. c #D6CEAE",
+"-. c #4A4632",
+";. c #56523E",
+">. c #7E7A62",
+",. c #EEE6CE",
+"'. c #564E46",
+"). c #EAE2C2",
+"!. c #BAAE8A",
+"~. c #E6DABA",
+"{. c #3E362A",
+"]. c #4652FE",
+"^. c #A69A76",
+"/. c #1E1A16",
+"(. c #3A3626",
+"_. c #625E46",
+":. c #C2B692",
+"<. c #9A8E6E",
+"[. c #968A6A",
+"}. c #B6AA86",
+"|. c #2632FA",
+"1. c #BEB28E",
+"2. c #E2DABE",
+"3. c #D2C6A6",
+"4. c #E2D6B2",
+"5. c #FAFAF6",
+"6. c #D6CAA6",
+"7. c #CABE9A",
+"8. c #3242FE",
+"9. c #827A5E",
+"0. c #26261E",
+"a. c #4256FE",
+"b. c #1A1A12",
+"c. c #AA9E7A",
+"d. c #5E5642",
+"e. c #2A32FA",
+"f. c #EEE6CA",
+"g. c #16120E",
+"h. c #DACEAA",
+"i. c #4A4232",
+"j. c #E2DAB6",
+"k. c #4A5EFE",
+"l. c #A6BAFE",
+"m. c #42426A",
+"n. c #5266FE",
+"o. c #EEEACE",
+"p. c #9E9272",
+"q. c #524A3A",
+"r. c #AEA682",
+"s. c #D2C6A2",
+"t. c #463E2E",
+"u. c #7E7256",
+"v. c #DED2B6",
+"w. c #E6DEC2",
+"x. c #AAA282",
+"y. c #EAE2C6",
+"z. c #E2D6BA",
+"A. c #564E3A",
+"B. c #221E16",
+"C. c #D6CEAA",
+"D. c #E2DABA",
+"E. c #8A8266",
+"F. c #3A362A",
+"G. c #CEC29E",
+"H. c #82765A",
+"I. c #C6D2FA",
+"J. c #26221A",
+"K. c #4252FE",
+"L. c #665A46",
+"M. c #DACEAE",
+"N. c #827A66",
+"O. c #665E46",
+"P. c #3E3A2E",
+"Q. c #B6AE8A",
+"R. c #BEB692",
+"S. c #CEC6A2",
+"T. c #928A6A",
+"U. c #C6BA96",
+"V. c #A29676",
+"W. c #AAA27E",
+"X. c #DED6B6",
+"Y. c #E6DEBE",
+"Z. c #A69A7A",
+"`. c #968E6E",
+" + c #B2A682",
+".+ c #423E32",
+"++ c #D6CAAA",
+"@+ c #E6E2C2",
+"#+ c #5A5642",
+"$+ c #9E9676",
+"%+ c #867E62",
+"&+ c #B2AA86",
+"*+ c #AA9E7E",
+"=+ c #464236",
+"-+ c #0E0E0E",
+";+ c #DED2B2",
+">+ c #DAD2AE",
+",+ c #4A4636",
+"'+ c #5E5646",
+")+ c #161212",
+"!+ c #564E3E",
+" ",
+" W.Y.1 $ T 7.j.j $ C.' I t 6. . ",
+" E Y.$ O &.' ; I T I 6 I ; N N T 6 T .r. ",
+" 1 X.O 7.I I +N I I e N }.N I T N :.Z N I T !.*+ ",
+" 2.I T Z t 7 Z &.: Z }.t Z r I $.T 7 Z &.T $.T t * c u. ",
+" 1 C.I N $.e $.I I $.&.1.&.!.&...6 l $.I I 1.$.I $.I N `.< ",
+" y.4.7.&+1.N !.$.' ..^.` i.0 J.B./._ R O.p.W.N I Z $.I K $._. ",
+" 1 S.I 7 I : N x.;.;.9 [.!.: I t l j e # X ",
+" ,.T N W.I T }.. 1 j T Z I W.I N C ",
+" J s.I Z I N Z F. j.w.I N I I }.I &.g.",
+" +.j.$.r :.&.T Z g M 2 2 ^.I T Z &.N p.W ",
+" ;+7 N I $.I I V.) A.%+[.: I I S ",
+" ; : I I !.' T / H. ` ..N b. ",
+" O ; 1.!.N e 2 !+{. R.O x ).l V T.. ",
+" $.Z :.T o /.. ).).$ I @.j ; I &. 1.7 M 0 ",
+" Z W.=+)+ o.j.j T Q.1.!.N N : .: `.9.Z e N P ",
+" $ D g < (.+ _ _ + < d.] T.W.S N 7 N #.@ ",
+" E.C ~.++p.N K k *._ G.7 I `. ",
+" 3.q.5 w 4 / 6 s.T e R ",
+" v.m.e.].s K.% b R s.O N q ",
+" Y.) m |.a.l.n.d , 6./. D.r $.&.0 ",
+" M.#+ y.W e.F } 5.I.^ k.@+z z.N I I -.",
+" Y ).F. $.. %.h A 5.5.Q m H D D.I Z I < ",
+" 1 =.+ y '.= = ! f { B |.@+-+ ( t T N W./.",
+" 1 1 e 0. 7 [ - a h |.& | < 8 >+7 T @.#.. ",
+" ; j :.c.$+ [.<.3 ~ 8.G U N.. f.y.7 $.:.T ^.9 ",
+" j 7.c.&.r... 2 I I V.b.. Y.h.G.Z N T I r..+ ",
+" $.r.* t t 6.I &.U.j @.j.j >.j.y.$ n s.$.I ; I 7 P P. ",
+" <.^.L ' I N .$.6 t t T @.e }.7 T I 7 $...I N 2 > ",
+" E.q P Z Z N N Z Z I !.I N Q.}.N Z Z p.'+F.. ",
+" v S p.}.o ..N N I T W.Z.<.L.i W ",
+" u F.P.F.,+i.t.(./.p "};
diff --git a/src/xsane-48x48.ico b/src/xsane-48x48.ico
new file mode 100644
index 0000000..5f609ac
--- /dev/null
+++ b/src/xsane-48x48.ico
Binary files differ
diff --git a/src/xsane-48x48.xpm b/src/xsane-48x48.xpm
new file mode 100644
index 0000000..e063bca
--- /dev/null
+++ b/src/xsane-48x48.xpm
@@ -0,0 +1,272 @@
+/* XPM */
+static char * xsane_48x48_xpm[] = {
+"48 48 221 2",
+" c None",
+". c #AEA282",
+"+ c #D6CAA6",
+"@ c #EAE6C6",
+"# c #DED6B2",
+"$ c #DACEAA",
+"% c #E6DEBE",
+"& c #DED6AE",
+"* c #E6DEC2",
+"= c #DAD2AA",
+"- c #BEB68E",
+"; c #C2B68E",
+"> c #BEB692",
+", c #AAA27E",
+"' c #EAE2C2",
+") c #E2DAB6",
+"! c #DAD2AE",
+"~ c #CABE96",
+"{ c #D6CAA2",
+"] c #CEC29A",
+"^ c #D6CEA6",
+"/ c #C6BA92",
+"( c #D2C69E",
+"_ c #AEA682",
+": c #CAC29A",
+"< c #B2AA82",
+"[ c #CECAB6",
+"} c #E6DEBA",
+"| c #B6AA82",
+"1 c #D2CAA2",
+"2 c #AEA67E",
+"3 c #EAE6D2",
+"4 c #CEC29E",
+"5 c #BAAE86",
+"6 c #BEB28A",
+"7 c #AA9E7A",
+"8 c #BEB28E",
+"9 c #AEA27E",
+"0 c #A69A7A",
+"a c #968E6E",
+"b c #C6BA96",
+"c c #DED2AE",
+"d c #CEC69E",
+"e c #BAAE8A",
+"f c #9A8E6E",
+"g c #E2DEC6",
+"h c #E2D6B2",
+"i c #B6AE86",
+"j c #C6BE96",
+"k c #A29676",
+"l c #B6AA86",
+"m c #B2A67E",
+"n c #968E6A",
+"o c #7E7256",
+"p c #F6F2E6",
+"q c #B2A682",
+"r c #665E46",
+"s c #C2BA92",
+"t c #A69A76",
+"u c #A29A76",
+"v c #9E9672",
+"w c #4E4A36",
+"x c #EAE2C6",
+"y c #B2AA86",
+"z c #C2B692",
+"A c #968A6A",
+"B c #867A5E",
+"C c #564E3A",
+"D c #3A3226",
+"E c #2E2A1E",
+"F c #26261A",
+"G c #221E16",
+"H c #1A1612",
+"I c #1E1A16",
+"J c #322E22",
+"K c #3A3626",
+"L c #4A4632",
+"M c #BAB28A",
+"N c #A29672",
+"O c #625E46",
+"P c #56523E",
+"Q c #1A1A12",
+"R c #060606",
+"S c #5A523E",
+"T c #16160E",
+"U c #B6AE8A",
+"V c #7E765A",
+"W c #020206",
+"X c #8A8262",
+"Y c #A69E7A",
+"Z c #EEE6CE",
+"` c #1E1E16",
+" . c #16120E",
+".. c #5E5642",
+"+. c #EEEAD2",
+"@. c #120E0E",
+"#. c #5A563E",
+"$. c #7A7256",
+"%. c #9E9272",
+"&. c #E2DABA",
+"*. c #CABE9A",
+"=. c #72664E",
+"-. c #726A52",
+";. c #82765A",
+">. c #4E4636",
+",. c #2A261E",
+"'. c #928666",
+"). c #26221A",
+"!. c #A29A8A",
+"~. c #AAA27A",
+"{. c #867E5E",
+"]. c #EEEACE",
+"^. c #D2C6A2",
+"/. c #8A7E62",
+"(. c #766E52",
+"_. c #625A46",
+":. c #E2DABE",
+"<. c #9E9676",
+"[. c #5E5A42",
+"}. c #3E3A2A",
+"|. c #9A926E",
+"1. c #8E8666",
+"2. c #DED6BE",
+"3. c #8A8266",
+"4. c #4A4232",
+"5. c #464232",
+"6. c #625A42",
+"7. c #E6DABA",
+"8. c #766E56",
+"9. c #D6CAAE",
+"0. c #CAC29E",
+"a. c #524A3A",
+"b. c #121216",
+"c. c #2632B6",
+"d. c #222EFA",
+"e. c #262A92",
+"f. c #5A5246",
+"g. c #423E2E",
+"h. c #CABE9E",
+"i. c #CEC6A2",
+"j. c #222AFA",
+"k. c #161EFA",
+"l. c #5E72FE",
+"m. c #2A36FA",
+"n. c #5266FE",
+"o. c #3242FE",
+"p. c #0E0E0A",
+"q. c #726A4E",
+"r. c #EEE6CA",
+"s. c #0A0A0A",
+"t. c #2E3AFA",
+"u. c #7A92FE",
+"v. c #465AFE",
+"w. c #6276FE",
+"x. c #1A22FA",
+"y. c #3A4AFE",
+"z. c #2632FA",
+"A. c #4252FE",
+"B. c #4256FE",
+"C. c #A6BAFE",
+"D. c #5A6AFE",
+"E. c #4A5EFE",
+"F. c #1E22FA",
+"G. c #4E5AD6",
+"H. c #3E4EFE",
+"I. c #3646FE",
+"J. c #7286FE",
+"K. c #E6F6FE",
+"L. c #FAFAF6",
+"M. c #BED2FE",
+"N. c #627AFE",
+"O. c #AABAFE",
+"P. c #5A6EFE",
+"Q. c #D2CAAA",
+"R. c #5A5642",
+"S. c #1E26FA",
+"T. c #BACEFE",
+"U. c #9AAEFE",
+"V. c #667AFE",
+"W. c #F2EED6",
+"X. c #F2EEDE",
+"Y. c #EAE2CE",
+"Z. c #262EFA",
+"`. c #566AFE",
+" + c #EEF2F6",
+".+ c #F6F6F6",
+"++ c #6A624A",
+"@+ c #96AAFE",
+"#+ c #F6FAF6",
+"$+ c #7E92FE",
+"%+ c #3646FA",
+"&+ c #FAFAF2",
+"*+ c #7E766A",
+"=+ c #728AFE",
+"-+ c #5A72FE",
+";+ c #BED6FE",
+">+ c #5262FE",
+",+ c #323EFA",
+"'+ c #26261E",
+")+ c #524E3A",
+"!+ c #3642FE",
+"~+ c #A29A7A",
+"{+ c #665E6E",
+"]+ c #BAB2AA",
+"^+ c #867E62",
+"/+ c #6E664A",
+"(+ c #AEA27A",
+"_+ c #2E2A22",
+":+ c #D6CEAA",
+"<+ c #EAE6CA",
+"[+ c #AAA282",
+"}+ c #827A5A",
+"|+ c #221E1A",
+"1+ c #463E32",
+"2+ c #222216",
+"3+ c #3A362A",
+"4+ c #423A2E",
+"5+ c #4A4636",
+"6+ c #423A2A",
+"7+ c #463E2E",
+"8+ c #22221A",
+" ",
+" . + @ # $ % & * = - ; > ",
+" , ' ) @ ! ) ~ { ] { ^ ~ ^ / ( _ : / { # ~ ] < ",
+" [ % } # ^ ~ | ; : 1 / / ~ ~ ; 2 ; ~ 1 ; ; ; ~ / 2 / ] ] _ ",
+" 3 % ^ 4 ~ 5 / 6 7 ~ 6 8 ; / | ; 5 7 / 6 5 ; : 5 ; 6 9 ~ 6 5 / / 0 a ",
+" b @ c ~ ~ ] / d ( e 5 ; ; ~ ] / d ( e ; e ; ] ] / ~ ( e ; 5 / ] ] / ~ ] f ",
+" g h / ; ( 5 : ~ d 5 | | i j 5 ~ k : 5 l m ; ~ 6 ~ ~ d 5 5 | / ] 6 ~ ~ : 5 < n o ",
+" @ p 1 m 5 q 6 d e 5 1 ~ m 5 9 m d 6 5 1 ~ m 5 9 5 ~ 6 5 ^ ~ l e 9 5 ] ; 5 ^ / l 9 r ",
+" @ / s ^ ~ ~ 5 ; ; ; 5 8 + ~ / 5 q 5 m t t l k 7 u _ | 6 l 6 ( ~ / 6 ; ; ; l ; ~ v 7 w ",
+" x h + 6 y z l ; e l 6 d 6 9 | A B C D E F G G H I J K L r A t , ; 6 / M | 6 d 5 N ; 5 O ",
+" ' ) ] ; d ; ] : ; 5 + 5 B P Q R S A | 1 : / ; ^ / 6 ^ - ] A T ",
+" @ U 6 ; d e / m ~ 5 V H W X ] < ~ / 6 ; Y 1 6 ; v H ",
+" Z ~ ; ; , ~ ; ~ ~ k W @ ^ ~ ~ 5 / ; , ; / ; ` ",
+" % / 6 6 7 ~ 6 5 e N . @ ; 5 / e 8 ; Y ~ 6 m T ",
+" ) ! 1 ; / / ~ ~ ~ e .. ) +.$ ~ / / ] 1 6 ; ; ~ 5 @. ",
+" = ) ; l m 8 / | ~ / 5 #. < X $.f t ; / ~ 6 | | ; ; %.R ",
+" &.^ ( 5 6 ; ; ~ / *.l =. C -.f | { 1 ; ; 6 A W ",
+" + ] / ~ ~ ~ 5 / ; 6 ; k -. =.A 6 ~ ~ ] .. ",
+" ) ; - ~ ; / ; q j { 5 Y ;. B 9 ~ | Q ",
+" $ ] + l ~ 5 e / ^ ( 2 t >.,. '.l f W ",
+" ~ d 5 ; e / 6 9 $.).W > ( ( !. 1 ' ~ ~. 9 L ",
+" 6 5 ~ e ~ l {.I W ) ].' % { / ^ ( ^ 1 ^./ | , ] d 5 , E ",
+" 5 1 5 /.).W ' ) + ( ] 6 / _ ~ ; ; i ; ~ 6 _ (. X 5 5 j q X ",
+" 6 _.W :.].&.= ~ ; 5 <.s q ; 5 ; ; ; ; ] d 6 i $. ; ~ ] ] '. ",
+" @ 4 {.[.C w }.J }.J J J }.}.w C r V /.|., %.C ; d ; 6 1.[. ",
+" 2.3.).T 4.5.6._. e ^.( ^ ; 1. ",
+" 7.% z %.5 / N J ~ ( ; ~ 6 8. ",
+" 9.0.a.b.c.d.e.f.Y 2 ) 6 ~ ] i g. ",
+" h.i.R j.k.l.m.n.o.k.u t p. ) 6 ( | ~ q. ",
+" r.s.j.t.j.u.v.w.x.y.k.6 -. = ~ ] 5 / m ). ",
+" % -.j.j.z.A.B.C.D.E.F.m.G.+ I ].1 m ; 5 | E ",
+" +.R F.H.I.J.K.L.M.N.O.P.m.! K % $ 6 / 6 ; g. ",
+" Q.c R. &.W S.z.v.T.L.L.L.L.U.V.A.W.~. X.] / / : ~ w ",
+" Y.' =.W 6 W Z.Z.`. +L.L.L..+l.j.j.W.{. +.^./ 5 l / w ",
+" +.x ++W # ,.y.t.z.@+L.L.#+$+%+S.m.W.H &+&.1 / 6 9 , E ",
+" @ $ Y p. $ *+S.A.y.=+-+;+m.>+V.,+j.! W :.@ / m ~ / d 7 s. ",
+" @ @ { _ '+ d w Z.v.m.A.`.S.t.k.H.Z w ) @ ! ^ / ~ ( { 1.W ",
+" ! ! *.l /. A 6 )+j.S.j.y.!+k.v.Z 1.W * ' ; ; ~ l / l 6 ` ",
+" ~ d j ; / ~+|. %.| k {+j.m.!+]+&+^+W } W.x 1 5 l / / ~ | /+W ",
+" ^ + 6 7 5 (+_ 9 X 6 ] / ; V Q W % $ ! 6 5 5 / ~ ] 5 _ ;.W ",
+" ; *.q / t 0.] ^ $ ; : (+0 _+ :+<++.) c ; ; ~ 1 / ( 1 6 8 $.R ",
+" _ | , : u ~ ; / d ] 6 5 + + ^ ( ^ ) # ] d ) ) x $ ^ d ] 5 l / j ( ; ; ~ 5 )+W ",
+" f t t 2 j / / ; ] ] 6 9 2 : : ~ ~ ^.{ s l q d ~ / / d ] 6 9 (+/ / 5 X F W ",
+" -.k m m e ; / 6 5 | 6 m l 5 ~ / 6 ; | e [+l 5 ; / ; 5 | 5 f o _+W ",
+" q.}+%.m q (+/ ; : ; 5 5 ; 5 9 ~ / ] ; l q ; | 7 5 f ++|+W ",
+" )+(.V %., 6 v 9 9 ; / e / / ] , 9 %.f ;.1+2+R ",
+" _+}.3+4+3+3+5+5+4.6+7+K 8+ .p. ",
+" "};
diff --git a/src/xsane-WIN32.txt b/src/xsane-WIN32.txt
new file mode 100644
index 0000000..e7476dc
--- /dev/null
+++ b/src/xsane-WIN32.txt
@@ -0,0 +1,123 @@
+README for xsane for win32:
+
+
+This is an early Version of xsane for win32.
+It may have several bugs. It is not tested very well
+but short tests looked very good.
+
+This version supports:
+ - preview scan, preview zoom
+ - scan and save to pnm, ps and raw file, if compiled in also jpeg, png and tiff
+ - handling of all backend options
+ - helpfiles
+ - copy mode (printing via ghostscript, see section "copy mode")
+ - gimp-plugin
+
+
+It does not support:
+ - fax mode (no compatible faxsoftware)
+ - internationalization not set up correct
+
+
+Installation:
+=============
+ - unpack the archiv to c:\
+ that creates the directory c:\Sane with several files
+ you do not need to copy any files, simply call xsane or scanimage
+
+ - Sane MUST BE installed in c:\sane because the paths are hardcoded.
+ Xsane will not work correct if you install it at any other place!
+
+ - make sure you have a directory c:\temp (or whatever you
+ define as temporary directory in xsane's setup)
+
+ - there are two icons (xsane-32x32.ico and xsane-48x48.ico)
+ that you can use if you set a link from xsane.exe to your desktop,
+ for that use right mouse button and change properties of the link,
+ change icon and select "c:\sane\xsane-??x??.ico"
+
+
+Configuration:
+==============
+ edit c:\Sane\etc\sane.d\net.conf
+ and enter a list of NetBEUI names or of IP-addresses
+ of machines you want to connect to. On some Windows
+ system IP-addresses are not accepted; if you experience
+ any problems try the NetBUI names.
+
+example for net.conf:
+myhost1
+myhost2.mydomain.com
+192.168.0.1
+192.169.1.73
+
+ you also can start xsane with host:backend:device given as command line option:
+ xsane 192.168.0.1:umax:/dev/scanner
+or
+ xsane myhost:umax:/dev/scanner
+
+
+Copy-Mode:
+===========
+If you want to use copy mode, you need ghostscript for win32.
+You can download it e.g. from http://www.cs.wisc.edu/~ghost/
+Enter Setup/Copy options:
+enter as Command:
+ c:/gs/gs6.50/bin/gswin32c -sDEVICE=mswinpr2 -dNOPAUSE -
+Pay attention: you have to use "/", don´t use "\".
+With sDEVICE=mswinpr2 you select the Printer Dialog of Windows.
+
+You also can enter DEVICE-name of your printer (e.g. laserjet).
+To get a list of available device names open a dos box,
+and call c:\gs\gs6.50\bin\gswin32c -h
+
+
+Gimp-Plugin:
+===========
+If you want to use xsane as gimp plugin,
+copy xsane.exe and *.dll to the GIMP´s plug-ins driectory
+(e.g. c:\Program Files\GIMP\plug-ins)
+
+
+Support:
+========
+ There is no special support for xsane for win32.
+ I develop xsane on a linux machine and will make a binary version
+ for win32 from time to time.
+
+
+Licence:
+========
+ * xsane and xsane for win32 stand under the terms of
+ the GNU general public licence (GPL).
+ You can find the sourcecode for xsane at:
+ http://www.xsane.org
+
+ * The gtk-libraries that come with xsane also do stand under the terms of the
+ GNU general public licence - GPL (gdk, gtk, glib, gnu-intl, gmodule)
+
+ * cygwin1.dll stands under the term of the GNU general public licence - GPL
+
+ * The sourcecode of xsane can be found at http://www.xsane.org
+
+ * The sourcecode of sane can be found at http://www.mostang.com/sane
+
+ * For any information about cygwin take a look at http://cygwin.com
+
+ * For any information about gtk/gdk for win32 take a look at
+ http://user.sgic.fi/~tml/gimp/win32/
+
+
+Compile it yourself:
+====================
+ * In xsane.WIN32-compilation I wrote down what I did to create xsane.exe
+
+
+Contact:
+========
+ You can contact me via email: Oliver.Rauch@rauch-domain.de
+ but don`t ask for help/support for xsane-win32, I do not have the
+ time to give support to it and want to use my free time to
+ work on the code - please understand that.
+
+Oliver Rauch
diff --git a/src/xsane-back-gtk.c b/src/xsane-back-gtk.c
new file mode 100644
index 0000000..bced94d
--- /dev/null
+++ b/src/xsane-back-gtk.c
@@ -0,0 +1,1622 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-back-gtk.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preferences.h"
+#include "xsane-gamma.h"
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+/* extern declarations */
+extern void xsane_panel_build(void);
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations: */
+SANE_Status xsane_control_option(SANE_Handle handle, SANE_Int option, SANE_Action action, void *val, SANE_Int *info);
+const SANE_Option_Descriptor *xsane_get_option_descriptor(SANE_Handle handle, SANE_Int option);
+const char *xsane_back_gtk_unit_string(SANE_Unit unit);
+void xsane_back_gtk_set_tooltip(GtkTooltips *tooltips, GtkWidget *widget, const gchar *desc);
+int xsane_back_gtk_make_path(size_t buf_size, char *buf, const char *prog_name, const char *dir_name,
+ const char *prefix, const char *dev_name, const char *postfix, int location);
+void xsane_back_gtk_set_option(int opt_num, void *val, SANE_Action action);
+
+static void xsane_back_gtk_panel_rebuild(void);
+void xsane_set_sensitivity(SANE_Int sensitivity);
+void xsane_set_window_icon(GtkWidget *gtk_window, gchar **xpm_d);
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_bound_int(int *value, int min, int max)
+{
+ DBG(DBG_proc3, "xsane_bound_int\n");
+
+ if (min > max)
+ {
+ int help = min;
+ min = max;
+ max = help;
+ }
+
+ if (*value < min)
+ {
+ *value = min;
+ }
+
+ if (*value > max)
+ {
+ *value = max;
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_bound_float(float *value, float min, float max)
+{
+ DBG(DBG_proc3, "xsane_bound_float\n");
+
+ if (min > max)
+ {
+ double help = min;
+ min = max;
+ max = help;
+ }
+
+ if (*value < min)
+ {
+ *value = min;
+ }
+
+ if (*value > max)
+ {
+ *value = max;
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_bound_double(double *value, double min, double max)
+{
+ DBG(DBG_proc3, "xsane_bound_double\n");
+
+ if (min > max)
+ {
+ double help = min;
+ min = max;
+ max = help;
+ }
+
+ if (*value < min)
+ {
+ *value = min;
+ }
+
+ if (*value > max)
+ {
+ *value = max;
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+/* returns 1 if value is in bounds */
+int xsane_check_bound_double(double value, double min, double max)
+{
+ int in_bounds = 1;
+
+ DBG(DBG_proc3, "xsane_check_bound_double\n");
+
+ if (min > max)
+ {
+ double help = min;
+ min = max;
+ max = help;
+ }
+
+ if (value < min)
+ {
+ in_bounds = 0;
+ }
+
+ if (value > max)
+ {
+ in_bounds = 0;
+ }
+
+ return (in_bounds);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+const SANE_Option_Descriptor *xsane_get_option_descriptor(SANE_Handle handle, SANE_Int option)
+{
+ DBG(DBG_optdesc, "xsane_get_option_descriptor(%d)\n", option);
+
+ if (option >= 0)
+ {
+ return sane_get_option_descriptor(handle, option);
+ }
+ return NULL;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+SANE_Status xsane_control_option(SANE_Handle handle, SANE_Int option, SANE_Action action, void *val, SANE_Int *info)
+{
+ DBG(DBG_proc, "xsane_control_option(option = %d, action = %d)\n", option, action);
+
+ if (option >= 0)
+ {
+ SANE_Status status;
+
+ status = sane_control_option(handle, option, action, val, info);
+ if (status)
+ {
+ DBG(DBG_error, "ERROR: xsane_control_option(option = %d, action = %d) failed\n", option, action);
+ }
+
+ return status;
+ }
+
+ return SANE_STATUS_INVAL;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+const char *xsane_back_gtk_unit_string(SANE_Unit unit)
+{
+ DBG(DBG_proc, "xsane_back_gtk_unit_string\n");
+
+ switch (unit)
+ {
+ case SANE_UNIT_NONE: return "none";
+ case SANE_UNIT_PIXEL: return "px";
+ case SANE_UNIT_BIT: return "bit";
+ case SANE_UNIT_DPI: return "dpi";
+ case SANE_UNIT_PERCENT: return "%";
+ case SANE_UNIT_MM:
+ if (preferences.length_unit > 9.9 && preferences.length_unit < 10.1)
+ {
+ return "cm";
+ }
+ else if (preferences.length_unit > 25.3 && preferences.length_unit < 25.5)
+ {
+ return "in";
+ }
+ return "mm";
+ case SANE_UNIT_MICROSECOND: return "\265s";
+ }
+ return 0;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_set_tooltip(GtkTooltips *tooltips, GtkWidget *widget, const gchar *desc)
+{
+ DBG(DBG_proc, "xsane_back_gtk_set_tooltip\n");
+
+ if (desc && desc[0])
+ {
+ gtk_tooltips_set_tip(tooltips, widget, desc, 0);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+int xsane_back_gtk_make_path(size_t buf_size, char *buf, const char *prog_name, const char *dir_name,
+ const char *prefix, const char *dev_name, const char *postfix, int location)
+{
+ size_t len, extra;
+ int i;
+
+ DBG(DBG_proc, "xsane_back_gtk_make_path\n");
+
+ if (location == XSANE_PATH_LOCAL_SANE) /* make path to local file */
+ {
+ if (getenv(STRINGIFY(ENVIRONMENT_HOME_DIR_NAME)) != NULL)
+ {
+ snprintf(buf, buf_size-2, "%s%c.sane", getenv(STRINGIFY(ENVIRONMENT_HOME_DIR_NAME)), SLASH);
+ }
+ else
+ {
+ snprintf(buf, buf_size-2, "%s", STRINGIFY(XSANE_FIXED_HOME_PATH));
+ }
+ mkdir(buf, 0777); /* ensure ~/.sane directory exists */
+ }
+ else if (location == XSANE_PATH_SYSTEM) /* make path to system file */
+ {
+ snprintf(buf, buf_size-2, "%s", STRINGIFY(PATH_SANE_DATA_DIR));
+ }
+ else /* make path to temporary file */
+ {
+ snprintf(buf, buf_size-2, "%s", preferences.tmp_path);
+ }
+
+ len = strlen(buf);
+
+ buf[len++] = SLASH;
+
+ if (prog_name)
+ {
+ extra = strlen(prog_name);
+ if (len + extra + 2 >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ memcpy(buf + len, prog_name, extra);
+ len += extra;
+
+ buf[len] = '\0';
+ mkdir(buf, 0777); /* ensure ~/.sane/PROG_NAME directory exists */
+
+ buf[len++] = SLASH; /* OS/2 does not like slash at end of mktemp-path */
+ }
+ if (len >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ if (dir_name)
+ {
+ extra = strlen(dir_name);
+ if (len + extra + 2 >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ memcpy(buf + len, dir_name, extra);
+ len += extra;
+
+ buf[len++] = SLASH;
+
+ buf[len] = '\0';
+ mkdir(buf, 0777); /* ensure DIR_NAME directory exists */
+ }
+
+ if (len >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+
+ if (prefix)
+ {
+ extra = strlen(prefix);
+ if (len + extra >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ memcpy(buf + len, prefix, extra);
+ len += extra;
+ }
+
+ if (dev_name)
+ {
+ /* Turn devicename into valid filename by replacing slashes by "_", "_" gets "__", spaces are erased */
+
+ for (i = 0; dev_name[i]; ++i)
+ {
+ if (len + 2 >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ switch (dev_name[i])
+ {
+ case '\\': /* "\" -> "_" */
+ buf[len++] = '_';
+ break;
+
+ case '/': /* "/" -> "_" */
+ buf[len++] = '_';
+ break;
+
+#ifdef _WIN32
+ case ':': /* ":" -> "_" */
+ buf[len++] = '_';
+ break;
+#endif
+
+#ifdef HAVE_OS2_H
+ case ':': /* ":" -> "_" */
+ buf[len++] = '_';
+ break;
+#endif
+
+ case ' ': /* erase " " */
+ break;
+
+ case '_': /* "_" -> "__" */
+ buf[len++] = '_';
+ /* fall through */
+ default:
+ buf[len++] = dev_name[i];
+ break;
+ }
+ }
+ }
+
+ if (postfix)
+ {
+ extra = strlen(postfix);
+ if (len + extra >= buf_size)
+ {
+ goto filename_too_long;
+ }
+ memcpy(buf + len, postfix, extra);
+ len += extra;
+ }
+
+ if (len >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ if (location == XSANE_PATH_TMP) /* tmp dir, add uid */
+ {
+ char tmpbuf[256];
+ uid_t uid;
+ int fd;
+
+ uid = getuid();
+ snprintf(tmpbuf, sizeof(tmpbuf), "-%d-", uid);
+
+ extra = strlen(tmpbuf);
+ if (len + extra >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ memcpy(buf + len, tmpbuf, extra);
+ len += extra;
+
+ if (len + 7 >= buf_size)
+ {
+ goto filename_too_long;
+ }
+
+ memcpy(buf + len, "XXXXXX", 6); /* create unique filename */
+ len += 6;
+ buf[len] = '\0';
+
+#if 1
+ fd = mkstemp(buf); /* create unique filename and opens/creates the file */
+#else
+ mktemp(buf); /* not safe */
+ umask(0177);
+ fd = open(buf, O_WRONLY | O_EXCL | O_CREAT, 0600);
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+#endif
+
+ if (fd == -1)
+ {
+ xsane_back_gtk_error(ERR_CREATE_TEMP_FILE, FALSE);
+ return -1;
+ }
+ close(fd); /* will be opened again later */
+ }
+ else
+ {
+ buf[len++] = '\0';
+ }
+
+ DBG(DBG_proc, "path = \"%s\"\n", buf);
+
+ return 0;
+
+
+filename_too_long:
+ xsane_back_gtk_error(ERR_FILENAME_TOO_LONG, FALSE);
+ errno = E2BIG;
+ return -1;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_set_option(int opt_num, void *val, SANE_Action action)
+{
+ SANE_Status status;
+ SANE_Int info;
+ char buf[256];
+ int old_colors = xsane.xsane_colors;
+ int update_gamma = FALSE;
+
+ DBG(DBG_proc, "xsane_back_gtk_set_option\n");
+
+ status = xsane_control_option(xsane.dev, opt_num, action, val, &info);
+ if (status != SANE_STATUS_GOOD)
+ {
+ snprintf(buf, sizeof(buf), "%s %s: %s.", ERR_SET_OPTION, xsane_get_option_descriptor(xsane.dev, opt_num)->name,
+ XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, FALSE);
+ return;
+ }
+
+ if (info & SANE_INFO_RELOAD_PARAMS)
+ {
+ xsane_update_param(0);
+ }
+
+ if (info & SANE_INFO_RELOAD_OPTIONS)
+ {
+ xsane_back_gtk_panel_rebuild();
+
+ if (xsane.preview)
+ {
+ preview_update_surface(xsane.preview, 0);
+ }
+
+ update_gamma = TRUE; /* scanner gamma correction may have changed, medium may need update */
+ }
+
+ if (xsane.xsane_colors != old_colors)
+ {
+ /* we have to update gamma tables and histogram because medium settings */
+ /* may have changed */
+ update_gamma = TRUE;
+ }
+
+ if (update_gamma)
+ {
+ xsane_update_gamma_curve(TRUE);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_close_dialog_callback(GtkWidget * widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_back_gtk_close_dialog_callback\n");
+
+ gtk_widget_destroy(data);
+ xsane.back_gtk_message_dialog_active = 0;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static gint decision_flag;
+static GtkWidget *decision_dialog;
+
+void xsane_back_gtk_decision_callback(GtkWidget * widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_back_gtk_decision_callback\n");
+
+ gtk_widget_destroy(decision_dialog);
+ xsane.back_gtk_message_dialog_active = 0;
+ decision_flag = (long) data;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+gint xsane_back_gtk_decision(gchar *title, gchar **xpm_d, gchar *message, gchar *oktext, gchar *rejecttext, int wait)
+{
+ GtkWidget *main_vbox, *hbox, *label, *button;
+ GdkPixmap *pixmap;
+ GdkBitmap *mask;
+ GtkWidget *pixmapwidget;
+
+ DBG(DBG_proc, "xsane_back_gtk_decision\n");
+
+ if (xsane.back_gtk_message_dialog_active)
+ {
+ DBG(DBG_error0, "%s: %s\n", title, message);
+ return TRUE;
+ }
+ xsane.back_gtk_message_dialog_active = 1;
+ decision_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(decision_dialog), GTK_WIN_POS_MOUSE);
+ gtk_window_set_title(GTK_WINDOW(decision_dialog), title);
+ gtk_signal_connect(GTK_OBJECT(decision_dialog), "delete_event",
+ GTK_SIGNAL_FUNC(xsane_back_gtk_decision_callback), (void *) -1); /* -1 = cancel */
+
+ xsane_set_window_icon(decision_dialog, 0);
+
+ /* create the main vbox */
+ main_vbox = gtk_vbox_new(TRUE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 5);
+ gtk_widget_show(main_vbox);
+
+ gtk_container_add(GTK_CONTAINER(decision_dialog), main_vbox);
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbox, FALSE, FALSE, 0);
+
+ /* the info icon */
+ if (xpm_d)
+ {
+ pixmap = gdk_pixmap_create_from_xpm_d(decision_dialog->window, &mask, xsane.bg_trans, xpm_d);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 10);
+ gtk_widget_show(pixmapwidget);
+ gdk_pixmap_unref(pixmap);
+ }
+
+ /* the message */
+ label = gtk_label_new(message);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
+ gtk_widget_show(label);
+
+ gtk_widget_show(hbox);
+
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(main_vbox), hbox, FALSE, FALSE, 0);
+
+ /* the confirmation button */
+ button = gtk_button_new_with_label(oktext);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_back_gtk_decision_callback, (void *) 1 /* confirm */);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 5);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+
+ if (rejecttext) /* the rejection button */
+ {
+ button = gtk_button_new_with_label(rejecttext);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_back_gtk_decision_callback, (void *) -1 /* reject */);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 5);
+ gtk_widget_show(button);
+ }
+ gtk_widget_show(hbox);
+
+ gtk_widget_show(decision_dialog);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ if (!wait)
+ {
+ return TRUE;
+ }
+
+ decision_flag = 0;
+
+ while (decision_flag == 0)
+ {
+ gtk_main_iteration();
+ }
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ if (decision_flag == 1)
+ {
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_message(gchar *title, gchar **icon_xpm, gchar *message, int wait)
+{
+ DBG(DBG_proc, "xsane_back_gtk_message\n");
+
+ xsane_back_gtk_decision(title, icon_xpm, message, BUTTON_OK, 0 /* no reject text */, wait);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_error(gchar *error, int wait)
+{
+ DBG(DBG_proc, "xsane_back_gtk_error: %s\n", error);
+
+ if (wait)
+ {
+ SANE_Int old_sensitivity = xsane.sensitivity;
+
+ xsane_set_sensitivity(FALSE);
+ xsane_back_gtk_message(ERR_HEADER_ERROR, (gchar**) error_xpm, error, wait);
+ xsane_set_sensitivity(old_sensitivity);
+ }
+ else
+ {
+ xsane_back_gtk_message(ERR_HEADER_ERROR, (gchar **) error_xpm, error, wait);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_warning(gchar *warning, int wait)
+{
+ DBG(DBG_proc, "xsane_back_gtk_warning: %s\n", warning);
+
+ if (wait)
+ {
+ SANE_Int old_sensitivity = xsane.sensitivity;
+
+ xsane_set_sensitivity(FALSE);
+ xsane_back_gtk_message(ERR_HEADER_WARNING, (gchar**) warning_xpm, warning, wait);
+ xsane_set_sensitivity(old_sensitivity);
+ }
+ else
+ {
+ xsane_back_gtk_message(ERR_HEADER_WARNING, (gchar**) warning_xpm, warning, wait);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_info(gchar *info, int wait)
+{
+ DBG(DBG_proc, "xsane_back_gtk_info: %s\n", info);
+
+ if (wait)
+ {
+ SANE_Int old_sensitivity = xsane.sensitivity;
+
+ xsane_set_sensitivity(FALSE);
+ xsane_back_gtk_message(ERR_HEADER_INFO, (gchar**) info_xpm, info, wait);
+ xsane_set_sensitivity(old_sensitivity);
+ }
+ else
+ {
+ xsane_back_gtk_message(ERR_HEADER_INFO, (gchar**) info_xpm, info, wait);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_back_gtk_get_filename_button_clicked(GtkWidget *w, gpointer data)
+{
+ int *clicked = data;
+
+ DBG(DBG_proc, "xsane_back_gtk_get_filename_button_clicked\n");
+ *clicked = 1;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+int xsane_back_gtk_get_filename(const char *label, const char *default_name, size_t max_len, char *filename,
+ int show_fileopts, int shorten_path, int hide_file_list)
+{
+ int cancel = 0, ok = 0, destroy = 0;
+ GtkWidget *fileselection;
+ GtkAccelGroup *accelerator_group;
+
+ DBG(DBG_proc, "xsane_back_gtk_get_filename\n");
+
+
+ fileselection = gtk_file_selection_new((char *) label);
+ accelerator_group = gtk_accel_group_new();
+ gtk_accel_group_attach(accelerator_group, GTK_OBJECT(fileselection));
+
+ gtk_signal_connect(GTK_OBJECT(fileselection),
+ "destroy", GTK_SIGNAL_FUNC(xsane_back_gtk_get_filename_button_clicked), &destroy);
+
+ gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fileselection)->cancel_button),
+ "clicked", (GtkSignalFunc) xsane_back_gtk_get_filename_button_clicked, &cancel);
+ gtk_widget_add_accelerator(GTK_FILE_SELECTION(fileselection)->cancel_button, "clicked",
+ accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+
+ gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fileselection)->ok_button),
+ "clicked", (GtkSignalFunc) xsane_back_gtk_get_filename_button_clicked, &ok);
+ if (default_name)
+ {
+ DBG(DBG_info, "xsane_back_gtk_get_filename: default_name =%s\n", default_name);
+ gtk_file_selection_set_filename(GTK_FILE_SELECTION(fileselection), (char *) default_name);
+ }
+
+ if (hide_file_list)
+ {
+ DBG(DBG_info, "xsane_back_gtk_get_filename: hiding file-list and delete-file-widget\n");
+ gtk_widget_hide(GTK_FILE_SELECTION(fileselection)->file_list->parent);
+ gtk_widget_hide(GTK_FILE_SELECTION(fileselection)->fileop_del_file);
+ }
+
+ if (show_fileopts)
+ {
+ DBG(DBG_info, "xsane_back_gtk_get_filename: showing file-options\n");
+ gtk_file_selection_show_fileop_buttons(GTK_FILE_SELECTION(fileselection));
+ }
+ else
+ {
+ DBG(DBG_info, "xsane_back_gtk_get_filename: hiding file-options\n");
+ gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(fileselection));
+ }
+
+ gtk_widget_show(fileselection);
+
+ DBG(DBG_info, "xsane_back_gtk_get_filename: waiting for user action\n");
+ while (!cancel && !ok && !destroy)
+ {
+ if (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ if (ok)
+ {
+ size_t len, cwd_len;
+ char *cwd;
+
+ DBG(DBG_info, "ok button pressed\n");
+
+ strncpy(filename, gtk_file_selection_get_filename(GTK_FILE_SELECTION(fileselection)), max_len - 1);
+ filename[max_len - 1] = '\0';
+
+ len = strlen(filename);
+
+ cwd = alloca(len + 2); /* alloca => memory is freed on return */
+ getcwd(cwd, len + 1);
+ cwd_len = strlen(cwd);
+ cwd[cwd_len++] = '/';
+ cwd[cwd_len] = '\0';
+
+ DBG(DBG_info, "xsane_back_gtk_get_filename: full path filename = %s\n", filename);
+ if (shorten_path && (strncmp(filename, cwd, cwd_len) == 0))
+ {
+ memcpy(filename, filename + cwd_len, len - cwd_len + 1);
+ DBG(DBG_info, "xsane_back_gtk_get_filename: short path filename = %s\n", filename);
+ }
+ }
+
+ if (!destroy)
+ {
+ gtk_widget_destroy(fileselection);
+ }
+
+ return ok ? 0 : -1;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_back_gtk_autobutton_update(GtkWidget *widget, GSGDialogElement *elem)
+{
+ int opt_num = elem - xsane.element;
+ const SANE_Option_Descriptor *opt;
+ SANE_Status status;
+ SANE_Word val;
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_back_gtk_autobutton_update\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ if (GTK_TOGGLE_BUTTON(widget)->active)
+ {
+ xsane_back_gtk_set_option(opt_num, 0, SANE_ACTION_SET_AUTO);
+ }
+ else
+ {
+ status = xsane_control_option(xsane.dev, opt_num, SANE_ACTION_GET_VALUE, &val, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ snprintf(buf, sizeof(buf), "%s %s: %s.", ERR_GET_OPTION, opt->name, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, FALSE);
+ }
+ xsane_back_gtk_set_option(opt_num, &val, SANE_ACTION_SET_VALUE);
+ }
+ return FALSE;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_back_gtk_autobutton_new(GtkWidget *parent, GSGDialogElement *elem,
+ GtkWidget *label, GtkTooltips *tooltips)
+{
+ GtkWidget *button, *alignment;
+
+ DBG(DBG_proc, "xsane_back_gtk_autobutton_new\n");
+
+ button = gtk_check_button_new();
+ gtk_container_set_border_width(GTK_CONTAINER(button), 0);
+ gtk_widget_set_usize(button, 20, 20);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_back_gtk_autobutton_update, elem);
+ xsane_back_gtk_set_tooltip(tooltips, button, "Turns on automatic mode.");
+
+ alignment = gtk_alignment_new(0.0, 1.0, 0.5, 0.5);
+ gtk_container_add(GTK_CONTAINER(alignment), button);
+
+ gtk_box_pack_end(GTK_BOX(parent), label, FALSE, FALSE, 0);
+ gtk_box_pack_end(GTK_BOX(parent), alignment, FALSE, FALSE, 2);
+
+ gtk_widget_show(alignment);
+ gtk_widget_show(button);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_back_gtk_button_update(GtkWidget * widget, GSGDialogElement * elem)
+{
+ int opt_num = elem - xsane.element;
+ const SANE_Option_Descriptor *opt;
+ SANE_Word val = SANE_FALSE;
+
+ DBG(DBG_proc, "xsane_back_gtk_button_update\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ if (GTK_TOGGLE_BUTTON(widget)->active)
+ {
+ val = SANE_TRUE;
+ }
+ xsane_back_gtk_set_option(opt_num, &val, SANE_ACTION_SET_VALUE);
+
+ return FALSE;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_button_new(GtkWidget * parent, const char *name, SANE_Word val,
+ GSGDialogElement * elem, GtkTooltips *tooltips, const char *desc, SANE_Int settable)
+{
+ GtkWidget *button;
+
+ DBG(DBG_proc, "xsane_back_gtk_button_new\n");
+
+ button = gtk_check_button_new_with_label((char *) name);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), val);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_back_gtk_button_update, elem);
+ gtk_box_pack_start(GTK_BOX(parent), button, FALSE, TRUE, 0);
+ gtk_widget_show(button);
+ xsane_back_gtk_set_tooltip(tooltips, button, desc);
+
+ gtk_widget_set_sensitive(button, settable);
+
+ elem->widget = button;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_back_gtk_scale_update(GtkAdjustment * adj_data, GSGDialogElement * elem)
+{
+ const SANE_Option_Descriptor *opt;
+ SANE_Word val, new_val;
+ int opt_num;
+ double d;
+
+ DBG(DBG_proc, "xsane_back_gtk_scale_update\n");
+
+ opt_num = elem - xsane.element;
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ switch(opt->type)
+ {
+ case SANE_TYPE_INT:
+ val = adj_data->value + 0.5;
+ break;
+
+ case SANE_TYPE_FIXED:
+ d = adj_data->value;
+ if (opt->unit == SANE_UNIT_MM)
+ {
+ d *= preferences.length_unit;
+ }
+ val = SANE_FIX(d);
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_back_gtk_scale_update: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ return;
+ }
+
+ xsane_back_gtk_set_option(opt_num, &val, SANE_ACTION_SET_VALUE);
+ xsane_control_option(xsane.dev, opt_num, SANE_ACTION_GET_VALUE, &new_val, 0);
+ if (new_val != val)
+ {
+ val = new_val;
+ goto value_changed;
+ }
+ return; /* value didn't change */
+
+value_changed:
+ switch(opt->type)
+ {
+ case SANE_TYPE_INT:
+ adj_data->value = val;
+ break;
+
+ case SANE_TYPE_FIXED:
+ d = SANE_UNFIX(val);
+ if (opt->unit == SANE_UNIT_MM)
+ {
+ d /= preferences.length_unit;
+ }
+ adj_data->value = d;
+ break;
+
+ default:
+ break;
+ }
+ /* Let widget know that value changed _again_. This must converge
+ quickly---otherwise things would get very slow very quickly (as
+ in "infinite recursion"): */
+ gtk_signal_emit_by_name(GTK_OBJECT(adj_data), "value_changed");
+ return;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_scale_new(GtkWidget * parent, const char *name, gfloat val,
+ gfloat min, gfloat max, gfloat quant, int automatic,
+ GSGDialogElement * elem, GtkTooltips *tooltips, const char *desc, SANE_Int settable)
+{
+ GtkWidget *hbox, *label, *scale;
+
+ DBG(DBG_proc, "xsane_back_gtk_scale_new(%s)\n", name);
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
+ gtk_box_pack_start(GTK_BOX(parent), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new((char *) name);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+
+ elem->data = gtk_adjustment_new(val, min, max, quant, quant*10, 0.0);
+ scale = gtk_hscale_new(GTK_ADJUSTMENT(elem->data));
+ xsane_back_gtk_set_tooltip(tooltips, scale, desc);
+ gtk_widget_set_usize(scale, 150, 0);
+
+ if (automatic)
+ {
+ xsane_back_gtk_autobutton_new(hbox, elem, scale, tooltips);
+ }
+ else
+ {
+ gtk_box_pack_end(GTK_BOX(hbox), scale, FALSE, FALSE, 0); /* make scales fixed */
+/* gtk_box_pack_end(GTK_BOX(hbox), scale, TRUE, TRUE, 0); */ /* make scales sizeable */
+ }
+
+ gtk_range_set_update_policy(GTK_RANGE(scale), GTK_UPDATE_CONTINUOUS);
+ gtk_scale_set_value_pos(GTK_SCALE(scale), GTK_POS_TOP);
+
+ if (quant - (int) quant == 0.0)
+ {
+ gtk_scale_set_digits(GTK_SCALE(scale), 0);
+ }
+ else
+ {
+ /* set number of digits in dependacne of quantization */
+ gtk_scale_set_digits(GTK_SCALE(scale), (int) log10(1/quant)+0.8);
+ }
+
+ gtk_signal_connect(elem->data, "value_changed", (GtkSignalFunc) xsane_back_gtk_scale_update, elem);
+
+ gtk_widget_show(label);
+ gtk_widget_show(scale);
+ gtk_widget_show(hbox);
+
+ gtk_widget_set_sensitive(scale, settable);
+
+ elem->widget = scale;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_push_button_callback(GtkWidget * widget, gpointer data)
+{
+ GSGDialogElement *elem = data;
+ int opt_num;
+
+ DBG(DBG_proc, "xsane_back_gtk_push_button_callback\n");
+
+ opt_num = elem - xsane.element;
+ xsane_back_gtk_set_option(opt_num, 0, SANE_ACTION_SET_VALUE);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_back_gtk_option_menu_lookup(GSGMenuItem menu_items[], const char *string)
+{
+ int i;
+
+ DBG(DBG_proc, "xsane_back_gtk_option_menu_lookup\n");
+
+ for (i = 0; strcmp(menu_items[i].label, string) != 0; ++i);
+
+ return i;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_back_gtk_option_menu_callback(GtkWidget * widget, gpointer data)
+{
+ GSGMenuItem *menu_item = data;
+ GSGDialogElement *elem = menu_item->elem;
+ const SANE_Option_Descriptor *opt;
+ int opt_num;
+ double dval;
+ SANE_Word val;
+ void *valp = &val;
+
+ DBG(DBG_proc, "xsane_back_gtk_option_menu_callback\n");
+
+ opt_num = elem - xsane.element;
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ switch(opt->type)
+ {
+ case SANE_TYPE_INT:
+ sscanf(menu_item->label, "%d", &val);
+ break;
+
+ case SANE_TYPE_FIXED:
+ sscanf(menu_item->label, "%lg", &dval);
+ val = SANE_FIX(dval);
+ break;
+
+ case SANE_TYPE_STRING:
+ valp = menu_item->label;
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_back_gtk_option_menu_callback: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ break;
+ }
+ xsane_back_gtk_set_option(opt_num, valp, SANE_ACTION_SET_VALUE);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_option_menu_new(GtkWidget *parent, const char *name, char *str_list[],
+ const char *val, GSGDialogElement * elem,
+ GtkTooltips *tooltips, const char *desc, SANE_Int settable)
+{
+ GtkWidget *hbox, *label, *option_menu, *menu, *item;
+ GSGMenuItem *menu_items;
+ int i, num_items;
+
+ DBG(DBG_proc, "xsane_back_gtk_option_menu_new(%s)\n", name);
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
+ gtk_box_pack_start(GTK_BOX(parent), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new((char *) name);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+
+ for (num_items = 0; str_list[num_items]; ++num_items);
+ menu_items = malloc(num_items * sizeof(menu_items[0]));
+
+ menu = gtk_menu_new();
+ for (i = 0; i < num_items; ++i)
+ {
+ item = gtk_menu_item_new_with_label(_BGT(str_list[i]));
+ gtk_container_add(GTK_CONTAINER(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_back_gtk_option_menu_callback, menu_items + i);
+
+ gtk_widget_show(item);
+
+ menu_items[i].label = str_list[i];
+ menu_items[i].elem = elem;
+ menu_items[i].index = i;
+ }
+
+ option_menu = gtk_option_menu_new();
+ gtk_box_pack_end(GTK_BOX(hbox), option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(option_menu), xsane_back_gtk_option_menu_lookup(menu_items, val));
+ xsane_back_gtk_set_tooltip(tooltips, option_menu, desc);
+
+ gtk_widget_show(label);
+ gtk_widget_show(option_menu);
+ gtk_widget_show(hbox);
+
+ gtk_widget_set_sensitive(option_menu, settable);
+
+ elem->widget = option_menu;
+ elem->menu_size = num_items;
+ elem->menu = menu_items;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_back_gtk_text_entry_callback(GtkWidget *w, gpointer data)
+{
+ GSGDialogElement *elem = data;
+ const SANE_Option_Descriptor *opt;
+ gchar *text;
+ int opt_num;
+ char *buf;
+
+ DBG(DBG_proc, "xsane_back_gtk_text_entry_callback\n");
+
+ opt_num = elem - xsane.element;
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+
+ buf = alloca(opt->size);
+ buf[0] = '\0';
+
+ text = gtk_entry_get_text(GTK_ENTRY(elem->widget));
+ if (text)
+ {
+ strncpy(buf, text, opt->size);
+ }
+ buf[opt->size - 1] = '\0';
+
+ xsane_back_gtk_set_option(opt_num, buf, SANE_ACTION_SET_VALUE);
+
+ if (strcmp(buf, text) != 0) /* the backend modified the option value; update widget: */
+ {
+ gtk_entry_set_text(GTK_ENTRY(elem->widget), buf);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_text_entry_new(GtkWidget * parent, const char *name, const char *val, GSGDialogElement *elem,
+ GtkTooltips *tooltips, const char *desc, SANE_Int settable)
+{
+ GtkWidget *hbox, *text, *label;
+
+ DBG(DBG_proc, "xsane_back_gtk_text_entry_new\n");
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
+ gtk_box_pack_start(GTK_BOX(parent), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new((char *) name);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+
+ text = gtk_entry_new();
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) val);
+/* gtk_box_pack_start(GTK_BOX(hbox), text, FALSE, TRUE, 0); */ /* text entry fixed */
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 0); /* text entry sizeable */
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_back_gtk_text_entry_callback, elem);
+ xsane_back_gtk_set_tooltip(tooltips, text, desc);
+
+ gtk_widget_show(hbox);
+ gtk_widget_show(label);
+ gtk_widget_show(text);
+
+ gtk_widget_set_sensitive(text, settable);
+
+ elem->widget = text;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+GtkWidget *xsane_back_gtk_group_new(GtkWidget *parent, const char *title)
+{
+ GtkWidget * frame, * vbox;
+
+ DBG(DBG_proc, "xsane_back_gtk_group_new(%s)\n", title);
+
+ frame = gtk_frame_new((char *) title);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(parent), frame, FALSE, FALSE, 0);
+
+ vbox = gtk_vbox_new(FALSE, 4);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 2);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+ return vbox;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+#if 0
+static void tooltips_destroy(void)
+{
+ DBG(DBG_proc, "tooltips_destroy\n");
+
+ gtk_object_unref(GTK_OBJECT(xsane.tooltips));
+ xsane.tooltips = 0;
+}
+#endif
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_back_gtk_panel_destroy(void)
+{
+ const SANE_Option_Descriptor *opt;
+ GSGDialogElement *elem;
+ int i, j;
+
+ DBG(DBG_proc, "xsane_back_gtk_panel_destroy\n");
+
+ gtk_widget_destroy(xsane.xsane_hbox);
+ gtk_widget_destroy(xsane.standard_hbox);
+ gtk_widget_destroy(xsane.advanced_hbox);
+
+ /* free the menu labels of integer/fix-point word-lists: */
+ for (i = 0; i < xsane.num_elements; ++i)
+ {
+ if (xsane.element[i].menu)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, i);
+ elem = xsane.element + i;
+ if (opt->type != SANE_TYPE_STRING)
+ {
+ for (j = 0; j < elem->menu_size; ++j)
+ {
+ if (elem->menu[j].label)
+ {
+ free(elem->menu[j].label);
+ elem->menu[j].label = 0;
+ }
+ }
+ free(elem->menu);
+ elem->menu = 0;
+ }
+ }
+ }
+ memset(xsane.element, 0, xsane.num_elements * sizeof(xsane.element[0]));
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+/* When an setting an option changes the dialog, everything may
+ change: the option titles, the activity-status of the option, its
+ constraints or what not. Thus, rather than trying to be clever in
+ detecting what exactly changed, we use a brute-force method of
+ rebuilding the entire dialog. */
+
+static void xsane_back_gtk_panel_rebuild(void)
+{
+ DBG(DBG_proc, "xsane_back_gtk_panel_rebuild\n");
+
+ xsane_back_gtk_panel_destroy();
+ xsane_panel_build();
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_refresh_dialog(void)
+{
+ DBG(DBG_proc, "xsane_back_gtk_refresh_dialog\n");
+
+ xsane_back_gtk_panel_rebuild();
+ xsane_update_param(0);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_update_scan_window(void)
+{
+ const SANE_Option_Descriptor *opt;
+ double old_val, new_val;
+ GSGDialogElement *elem;
+ SANE_Status status;
+ SANE_Word word;
+ int i, optnum;
+ char str[64];
+
+ DBG(DBG_proc, "xsane_back_gtk_update_scan_window\n");
+
+ for (i = 0; i < 4; ++i)
+ {
+ if (xsane.well_known.coord[i] > 0)
+ {
+ optnum = xsane.well_known.coord[i];
+ elem = xsane.element + optnum;
+ opt = xsane_get_option_descriptor(xsane.dev, optnum);
+
+ status = xsane_control_option(xsane.dev, optnum, SANE_ACTION_GET_VALUE, &word, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ continue; /* sliently ignore errors */
+ }
+
+ switch(opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_RANGE:
+ if (opt->type == SANE_TYPE_INT)
+ {
+ old_val = GTK_ADJUSTMENT(elem->data)->value;
+ new_val = word;
+ GTK_ADJUSTMENT(elem->data)->value = new_val;
+ }
+ else
+ {
+ old_val = GTK_ADJUSTMENT(elem->data)->value;
+ new_val = SANE_UNFIX(word);
+ if (opt->unit == SANE_UNIT_MM)
+ {
+ new_val /= preferences.length_unit;
+ }
+ GTK_ADJUSTMENT(elem->data)->value = new_val;
+ }
+
+ if (old_val != new_val)
+ {
+ gtk_signal_emit_by_name(GTK_OBJECT(elem->data), "value_changed");
+ }
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ if (opt->type == SANE_TYPE_INT)
+ {
+ sprintf(str, "%d", word);
+ }
+ else
+ {
+ sprintf(str, "%g", SANE_UNFIX(word));
+ }
+ /* XXX maybe we should call this only when the value changes... */
+ gtk_option_menu_set_history(GTK_OPTION_MENU(elem->widget), xsane_back_gtk_option_menu_lookup(elem->menu, str));
+ break;
+
+ default:
+ break;
+ }
+ }
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+/* Ensure sure the device has up-to-date option values. Except for
+ vectors, all option values are kept current. Vectors are
+ downloaded into the device during this call. */
+void xsane_back_gtk_sync(void)
+{
+ const SANE_Option_Descriptor *opt;
+ gfloat val, *vector;
+ SANE_Word *optval;
+ int i, j, optlen;
+ GtkWidget *curve;
+
+ DBG(DBG_proc, "xsane_back_gtk_sync\n");
+
+ for (i = 1; i < xsane.num_elements; ++i)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, i);
+
+ if (!SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ continue;
+ }
+
+ if (opt->type != SANE_TYPE_INT && opt->type != SANE_TYPE_FIXED)
+ {
+ continue;
+ }
+
+ if (opt->size == sizeof(SANE_Word))
+ {
+ continue;
+ }
+
+ /* ok, we're dealing with an active vector */
+
+ optlen = opt->size / sizeof(SANE_Word);
+ optval = alloca(optlen * sizeof(optval[0]));
+ vector = alloca(optlen * sizeof(vector[0]));
+
+ curve = GTK_GAMMA_CURVE(xsane.element[i].widget)->curve;
+ gtk_curve_get_vector(GTK_CURVE(curve), optlen, vector);
+ for (j = 0; j < optlen; ++j)
+ {
+ val = vector[j];
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ optval[j] = SANE_FIX(val);
+ }
+ else
+ {
+ optval[j] = val + 0.5;
+ }
+ }
+
+ xsane_back_gtk_set_option(i, optval, SANE_ACTION_SET_VALUE);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_update_vector(int opt_num, SANE_Int *vector)
+{
+ const SANE_Option_Descriptor *opt;
+ gfloat val;
+ SANE_Word *optval;
+ int j, optlen;
+
+ DBG(DBG_proc, "xsane_back_gtk_update_vector\n");
+
+ if (opt_num < 1)
+ return; /* not defined */
+
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ if (!SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ return; /* inactive */
+ }
+
+ if (opt->type != SANE_TYPE_INT && opt->type != SANE_TYPE_FIXED)
+ {
+ return;
+ }
+
+ if (opt->size == sizeof(SANE_Word))
+ {
+ return;
+ }
+
+ /* ok, we're dealing with an active vector */
+
+ optlen = opt->size / sizeof(SANE_Word);
+ optval = alloca(optlen * sizeof(optval[0]));
+ for (j = 0; j < optlen; ++j)
+ {
+ val = vector[j];
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ optval[j] = SANE_FIX(val);
+ }
+ else
+ {
+ optval[j] = val + 0.5;
+ }
+ }
+
+ xsane_back_gtk_set_option(opt_num, optval, SANE_ACTION_SET_VALUE);
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_set_tooltips(int enable)
+{
+ DBG(DBG_proc, "xsane_back_gtk_set_tooltips\n");
+
+ if (!xsane.tooltips)
+ {
+ return;
+ }
+
+ if (enable)
+ {
+ gtk_tooltips_enable(xsane.tooltips);
+ }
+ else
+ {
+ gtk_tooltips_disable(xsane.tooltips);
+ }
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_set_sensitivity(int sensitive)
+{
+ const SANE_Option_Descriptor *opt;
+ int i;
+
+ DBG(DBG_proc, "xsane_back_gtk_set_sensitivity\n");
+
+ for (i = 0; i < xsane.num_elements; ++i)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, i);
+
+ if (!SANE_OPTION_IS_ACTIVE(opt->cap) || !SANE_OPTION_IS_SETTABLE(opt->cap) ||
+ opt->type == SANE_TYPE_GROUP || !xsane.element[i].widget)
+ {
+ continue;
+ }
+
+ if (!(opt->cap & SANE_CAP_ALWAYS_SETTABLE))
+ {
+ gtk_widget_set_sensitive(xsane.element[i].widget, sensitive);
+ }
+ }
+
+ if (xsane.xsanemode_widget)
+ {
+ gtk_widget_set_sensitive(xsane.xsanemode_widget, sensitive);
+ }
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_set_sensitivity(SANE_Int sensitivity)
+{
+ DBG(DBG_proc, "xsane_set_sensitivity\n");
+
+ if (xsane.shell)
+ {
+ gtk_widget_set_sensitive(xsane.menubar, sensitivity);
+ gtk_widget_set_sensitive(xsane.xsane_window, sensitivity);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), sensitivity);
+ gtk_widget_set_sensitive(xsane.standard_options_shell, sensitivity);
+ gtk_widget_set_sensitive(xsane.advanced_options_shell, sensitivity);
+ gtk_widget_set_sensitive(xsane.histogram_dialog, sensitivity);
+
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+ gtk_widget_set_sensitive(xsane.gamma_dialog, sensitivity);
+#endif
+ }
+
+ if (xsane.preview)
+ {
+ gtk_widget_set_sensitive(xsane.preview->button_box, sensitivity); /* button box at top of window */
+#if 1
+ gtk_widget_set_sensitive(xsane.preview->viewport, sensitivity); /* Preview image selection */
+#endif
+ gtk_widget_set_sensitive(xsane.preview->start, sensitivity); /* Acquire preview button */
+ }
+
+ if (xsane.fax_dialog)
+ {
+ gtk_widget_set_sensitive(xsane.fax_dialog, sensitivity);
+ }
+
+#if 0
+ xsane_back_gtk_set_sensitivity(sensitivity);
+#endif
+
+ while (gtk_events_pending()) /* make sure set_sensitivity is displayed */
+ {
+ gtk_main_iteration();
+ }
+
+ xsane.sensitivity = sensitivity;
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+void xsane_back_gtk_destroy_dialog(void)
+{
+ SANE_Handle dev = xsane.dev;
+
+ DBG(DBG_proc, "xsane_back_gtk_destroy_dialog\n");
+
+ xsane_back_gtk_panel_destroy();
+ free((void *) xsane.dev_name);
+ free(xsane.element);
+
+ sane_close(dev);
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_set_window_icon(GtkWidget *gtk_window, gchar **xpm_d)
+{
+ GdkPixmap *pixmap;
+ GdkBitmap *mask;
+
+ DBG(DBG_proc, "xsane_set_window_icon\n");
+
+ gtk_widget_realize(gtk_window);
+ if (xpm_d)
+ {
+ pixmap = gdk_pixmap_create_from_xpm_d(gtk_window->window, &mask, xsane.bg_trans, xpm_d);
+ }
+ else
+ {
+ if (xsane.window_icon_pixmap)
+ {
+ pixmap = xsane.window_icon_pixmap;
+ mask = xsane.window_icon_mask;
+ }
+ else
+ {
+ pixmap = gdk_pixmap_create_from_xpm_d(gtk_window->window, &mask, xsane.bg_trans, (gchar **) xsane_window_icon_xpm);
+ }
+ }
+
+ gdk_window_set_icon(gtk_window->window, 0, pixmap, mask);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-back-gtk.h b/src/xsane-back-gtk.h
new file mode 100644
index 0000000..feb52e9
--- /dev/null
+++ b/src/xsane-back-gtk.h
@@ -0,0 +1,91 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-back-gtk.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef XSANE_BACK_GTK_H
+#define XSANE_BACK_GTK_H
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef enum
+ {
+ xsane_back_gtk_TL_X, /* top-left x */
+ xsane_back_gtk_TL_Y, /* top-left y */
+ xsane_back_gtk_BR_X, /* bottom-right x */
+ xsane_back_gtk_BR_Y /* bottom-right y */
+ }
+GSGCornerCoordinates;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern int xsane_back_gtk_message_dialog_active;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_bound_int(int *value, int min, int max);
+extern void xsane_bound_float(float *value, float min, float max);
+extern void xsane_bound_double(double *value, double min, double max);
+extern int xsane_check_bound_double(double value, double min, double max);
+extern const SANE_Option_Descriptor *xsane_get_option_descriptor(SANE_Handle handle, SANE_Int option);
+extern SANE_Status xsane_control_option(SANE_Handle handle, SANE_Int option, SANE_Action action, void *val, SANE_Int *info);
+extern int xsane_back_gtk_make_path(size_t max_len, char *filename_ret, const char *prog_name, const char *dir_name,
+ const char *prefix, const char *dev_name, const char *postfix, int local);
+extern gint xsane_back_gtk_decision(gchar *title, gchar** icon_xpm, gchar *message, gchar *oktext, gchar *rejecttext, int wait);
+extern void xsane_back_gtk_message(gchar *title, gchar** icon_xpm, gchar *message, int wait);
+extern void xsane_back_gtk_error(gchar *error_message, int wait);
+extern void xsane_back_gtk_warning(gchar *warning_message, int wait);
+extern void xsane_back_gtk_info(gchar *info_message, int wait);
+extern int xsane_back_gtk_get_filename(const char *label, const char *default_name, size_t max_len, char *filename,
+ int show_fileopts, int shorten_path, int hide_file_list);
+
+extern void xsane_back_gtk_sync(void);
+extern void xsane_back_gtk_update_vector(int opt_num, SANE_Int *vector);
+extern void xsane_back_gtk_refresh_dialog(void);
+/* extern void xsane_back_gtk_vector_new(GtkWidget *box, int num_vopts, int *vopts); */
+extern void xsane_back_gtk_update_scan_window(void);
+extern void xsane_back_gtk_set_advanced(int advanced);
+extern void xsane_back_gtk_set_tooltips(int enable);
+extern void xsane_back_gtk_set_tooltip(GtkTooltips *tooltips, GtkWidget *widget, const char *desc);
+extern void xsane_back_gtk_set_sensitivity(int sensitive);
+extern void xsane_set_sensitivity(SANE_Int sensitivity);
+extern void xsane_back_gtk_destroy_dialog(void);
+extern void xsane_back_gtk_set_option(int opt_num, void *val, SANE_Action action);
+extern GtkWidget *xsane_back_gtk_group_new (GtkWidget *parent, const char * title);
+extern void xsane_back_gtk_button_new(GtkWidget * parent, const char *name, SANE_Word val,
+ GSGDialogElement *elem, GtkTooltips *tooltips, const char *desc, SANE_Int settable);
+extern void xsane_back_gtk_scale_new(GtkWidget * parent, const char *name, gfloat val,
+ gfloat min, gfloat max, gfloat quant, int automatic,
+ GSGDialogElement *elem, GtkTooltips *tooltips, const char *desc, SANE_Int settable);
+extern void xsane_back_gtk_option_menu_new(GtkWidget *parent, const char *name, char *str_list[],
+ const char *val, GSGDialogElement * elem, GtkTooltips *tooltips, const char *desc, SANE_Int settable);
+extern void xsane_back_gtk_text_entry_new(GtkWidget *parent, const char *name, const char *val,
+ GSGDialogElement *elem, GtkTooltips *tooltips, const char *desc, SANE_Int settable);
+extern void xsane_back_gtk_push_button_callback(GtkWidget * widget, gpointer data);
+extern const char *xsane_back_gtk_unit_string(SANE_Unit unit);
+void xsane_set_window_icon(GtkWidget *gtk_window, gchar **xpm_d);
+
+#endif
diff --git a/src/xsane-calibration-help.pnm b/src/xsane-calibration-help.pnm
new file mode 100644
index 0000000..7bc833f
--- /dev/null
+++ b/src/xsane-calibration-help.pnm
@@ -0,0 +1,155 @@
+P6
+# CREATOR: The GIMP's PNM Filter Version 1.0
+400 547
+255
+ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ \ No newline at end of file
diff --git a/src/xsane-calibration.pnm b/src/xsane-calibration.pnm
new file mode 100644
index 0000000..41c33d4
--- /dev/null
+++ b/src/xsane-calibration.pnm
@@ -0,0 +1,156 @@
+P6
+# surface: 0 0 400 547 400 547
+#time: -1
+400 547
+255
+ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
+
+
+  !!!"""######$$$%%%&&&''''''((()))***++++++,,,---...//////000111222333333444555666666777888999::::::;;;<<<===>>>>>>???@@@AAABBBBBBCCCDDDEEEFFFFFFGGGHHHIIIJJJJJJKKKLLLMMMNNNNNNOOOPPPQQQRRRRRRSSSTTTUUUVVVVVVWWWXXXYYYZZZZZZ[[[\\\]]]^^^^^^___```aaabbbbbbcccdddeeeffffffggghhhiiiiiijjjkkklllmmmmmmnnnooopppqqqqqqrrrssstttuuuuuuvvvwwwxxxyyyyyyzzz{{{|||}}}}}}~~~€€€‚‚‚ƒƒƒ„„„………………†††‡‡‡ˆˆˆ‰‰‰‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘‘‘‘’’’“““”””••••••–––———˜˜˜˜˜˜™™™ššš›››œœœœœœžžžŸŸŸ      ¡¡¡¢¢¢£££¤¤¤¤¤¤¥¥¥¦¦¦§§§¨¨¨¨¨¨©©©ªªª«««¬¬¬¬¬¬­­­®®®¯¯¯°°°°°°±±±²²²³³³´´´´´´µµµ¶¶¶···¸¸¸¸¸¸¹¹¹ººº»»»¼¼¼¼¼¼½½½¾¾¾¿¿¿ÀÀÀÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÈÈÈÉÉÉÊÊÊËËËÌÌÌÌÌÌÍÍÍÎÎÎÏÏÏÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÓÓÓÔÔÔÕÕÕÖÖÖ××××××ØØØÙÙÙÚÚÚÛÛÛÛÛÛÜÜÜÝÝÝÞÞÞßßßßßßàààáááâââããããããäääåååæææççççççèèèéééêêêëëëëëëìììíííîîîïïïïïïðððñññòòòóóóóóóôôôõõõööö÷÷÷÷÷÷øøøùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
diff --git a/src/xsane-calibration.xpm b/src/xsane-calibration.xpm
new file mode 100644
index 0000000..9baf29b
--- /dev/null
+++ b/src/xsane-calibration.xpm
@@ -0,0 +1,807 @@
+/* XPM */
+static char * xsane_calibration_xpm[] = {
+"400 547 257 2",
+" c None",
+". c #FFFFFF",
+"+ c #7F7F7F",
+"@ c #000000",
+"# c #020202",
+"$ c #FDFDFD",
+"% c #040404",
+"& c #FBFBFB",
+"* c #060606",
+"= c #F9F9F9",
+"- c #010101",
+"; c #030303",
+"> c #050505",
+", c #070707",
+"' c #080808",
+") c #090909",
+"! c #0A0A0A",
+"~ c #0B0B0B",
+"{ c #0C0C0C",
+"] c #0D0D0D",
+"^ c #0E0E0E",
+"/ c #0F0F0F",
+"( c #101010",
+"_ c #111111",
+": c #121212",
+"< c #131313",
+"[ c #141414",
+"} c #151515",
+"| c #161616",
+"1 c #171717",
+"2 c #181818",
+"3 c #191919",
+"4 c #1A1A1A",
+"5 c #1B1B1B",
+"6 c #1C1C1C",
+"7 c #1D1D1D",
+"8 c #1E1E1E",
+"9 c #1F1F1F",
+"0 c #202020",
+"a c #212121",
+"b c #222222",
+"c c #232323",
+"d c #242424",
+"e c #252525",
+"f c #262626",
+"g c #272727",
+"h c #282828",
+"i c #292929",
+"j c #2A2A2A",
+"k c #2B2B2B",
+"l c #2C2C2C",
+"m c #2D2D2D",
+"n c #2E2E2E",
+"o c #2F2F2F",
+"p c #303030",
+"q c #313131",
+"r c #323232",
+"s c #333333",
+"t c #343434",
+"u c #353535",
+"v c #363636",
+"w c #373737",
+"x c #383838",
+"y c #393939",
+"z c #3A3A3A",
+"A c #3B3B3B",
+"B c #3C3C3C",
+"C c #3D3D3D",
+"D c #3E3E3E",
+"E c #3F3F3F",
+"F c #404040",
+"G c #414141",
+"H c #424242",
+"I c #434343",
+"J c #444444",
+"K c #454545",
+"L c #464646",
+"M c #474747",
+"N c #484848",
+"O c #494949",
+"P c #4A4A4A",
+"Q c #4B4B4B",
+"R c #4C4C4C",
+"S c #4D4D4D",
+"T c #4E4E4E",
+"U c #4F4F4F",
+"V c #505050",
+"W c #515151",
+"X c #525252",
+"Y c #535353",
+"Z c #545454",
+"` c #555555",
+" . c #565656",
+".. c #575757",
+"+. c #585858",
+"@. c #595959",
+"#. c #5A5A5A",
+"$. c #5B5B5B",
+"%. c #5C5C5C",
+"&. c #5D5D5D",
+"*. c #5E5E5E",
+"=. c #5F5F5F",
+"-. c #606060",
+";. c #616161",
+">. c #626262",
+",. c #636363",
+"'. c #646464",
+"). c #656565",
+"!. c #666666",
+"~. c #676767",
+"{. c #686868",
+"]. c #696969",
+"^. c #6A6A6A",
+"/. c #6B6B6B",
+"(. c #6C6C6C",
+"_. c #6D6D6D",
+":. c #6E6E6E",
+"<. c #6F6F6F",
+"[. c #707070",
+"}. c #717171",
+"|. c #727272",
+"1. c #737373",
+"2. c #747474",
+"3. c #757575",
+"4. c #767676",
+"5. c #777777",
+"6. c #787878",
+"7. c #797979",
+"8. c #7A7A7A",
+"9. c #7B7B7B",
+"0. c #7C7C7C",
+"a. c #7D7D7D",
+"b. c #7E7E7E",
+"c. c #808080",
+"d. c #818181",
+"e. c #828282",
+"f. c #838383",
+"g. c #848484",
+"h. c #858585",
+"i. c #868686",
+"j. c #878787",
+"k. c #888888",
+"l. c #898989",
+"m. c #8A8A8A",
+"n. c #8B8B8B",
+"o. c #8C8C8C",
+"p. c #8D8D8D",
+"q. c #8E8E8E",
+"r. c #8F8F8F",
+"s. c #909090",
+"t. c #919191",
+"u. c #929292",
+"v. c #939393",
+"w. c #949494",
+"x. c #959595",
+"y. c #969696",
+"z. c #979797",
+"A. c #989898",
+"B. c #999999",
+"C. c #9A9A9A",
+"D. c #9B9B9B",
+"E. c #9C9C9C",
+"F. c #9D9D9D",
+"G. c #9E9E9E",
+"H. c #9F9F9F",
+"I. c #A0A0A0",
+"J. c #A1A1A1",
+"K. c #A2A2A2",
+"L. c #A3A3A3",
+"M. c #A4A4A4",
+"N. c #A5A5A5",
+"O. c #A6A6A6",
+"P. c #A7A7A7",
+"Q. c #A8A8A8",
+"R. c #A9A9A9",
+"S. c #AAAAAA",
+"T. c #ABABAB",
+"U. c #ACACAC",
+"V. c #ADADAD",
+"W. c #AEAEAE",
+"X. c #AFAFAF",
+"Y. c #B0B0B0",
+"Z. c #B1B1B1",
+"`. c #B2B2B2",
+" + c #B3B3B3",
+".+ c #B4B4B4",
+"++ c #B5B5B5",
+"@+ c #B6B6B6",
+"#+ c #B7B7B7",
+"$+ c #B8B8B8",
+"%+ c #B9B9B9",
+"&+ c #BABABA",
+"*+ c #BBBBBB",
+"=+ c #BCBCBC",
+"-+ c #BDBDBD",
+";+ c #BEBEBE",
+">+ c #BFBFBF",
+",+ c #C0C0C0",
+"'+ c #C1C1C1",
+")+ c #C2C2C2",
+"!+ c #C3C3C3",
+"~+ c #C4C4C4",
+"{+ c #C5C5C5",
+"]+ c #C6C6C6",
+"^+ c #C7C7C7",
+"/+ c #C8C8C8",
+"(+ c #C9C9C9",
+"_+ c #CACACA",
+":+ c #CBCBCB",
+"<+ c #CCCCCC",
+"[+ c #CDCDCD",
+"}+ c #CECECE",
+"|+ c #CFCFCF",
+"1+ c #D0D0D0",
+"2+ c #D1D1D1",
+"3+ c #D2D2D2",
+"4+ c #D3D3D3",
+"5+ c #D4D4D4",
+"6+ c #D5D5D5",
+"7+ c #D6D6D6",
+"8+ c #D7D7D7",
+"9+ c #D8D8D8",
+"0+ c #D9D9D9",
+"a+ c #DADADA",
+"b+ c #DBDBDB",
+"c+ c #DCDCDC",
+"d+ c #DDDDDD",
+"e+ c #DEDEDE",
+"f+ c #DFDFDF",
+"g+ c #E0E0E0",
+"h+ c #E1E1E1",
+"i+ c #E2E2E2",
+"j+ c #E3E3E3",
+"k+ c #E4E4E4",
+"l+ c #E5E5E5",
+"m+ c #E6E6E6",
+"n+ c #E7E7E7",
+"o+ c #E8E8E8",
+"p+ c #E9E9E9",
+"q+ c #EAEAEA",
+"r+ c #EBEBEB",
+"s+ c #ECECEC",
+"t+ c #EDEDED",
+"u+ c #EEEEEE",
+"v+ c #EFEFEF",
+"w+ c #F0F0F0",
+"x+ c #F1F1F1",
+"y+ c #F2F2F2",
+"z+ c #F3F3F3",
+"A+ c #F4F4F4",
+"B+ c #F5F5F5",
+"C+ c #F6F6F6",
+"D+ c #F7F7F7",
+"E+ c #F8F8F8",
+"F+ c #FAFAFA",
+"G+ c #FCFCFC",
+"H+ c #FEFEFE",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # @ # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ . $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # @ @ @ @ @ @ # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ . . . . . . $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # # # # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ # # # # # # # # # # # # # # # # # # # # # # # # @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % @ @ @ @ @ % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & . . . . . & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & . . . . . . . . . & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & . . . . . . . . . . . & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & . . . . . . . . . . . . . & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & . . . . . . . . . . . . . & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & . . . . . . . . . . . . . . . & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & . . . . . . . . . . . . . . & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & . . . . . . . . . . . . . . & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & . . . . . . . . . . . . . . . & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & . . . . . . . . . . . . . . . & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & . . . . . . . . . . . . . . & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ % % % % % % % % % % % % % % % % % % % % % % % % % % % @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & & & & & & & & & & & & & & & & & & & & & & & & & & & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * @ @ @ @ @ * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = . . . . . = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * @ @ @ @ @ @ @ @ @ * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = . . . . . . . . . = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = . . . . . . . . . . . = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = . . . . . . . . . . . . = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = . . . . . . . . . . . . . . = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = . . . . . . . . . . . . . . = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = . . . . . . . . . . . . . . . . . = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = . . . . . . . . . . . . . . = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = . . . . . . . . . . . . = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = . . . . . . . . . . . = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * @ @ @ @ @ @ @ @ @ * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = . . . . . . . . . = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * @ @ @ @ @ @ @ * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = . . . . . . . = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * @ @ @ * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = . . . = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ * * * * * * * * @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = = = = = = = = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . @ . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + @ @ - # ; ; % > * , , ' ) ! ~ ~ { ] ^ / / ( _ : < < [ } | 1 1 2 3 4 5 5 6 7 8 9 9 0 a b c c d e f g g h i j k k l m n o o p q r s s t u v v w x y z z A B C D D E F G H H I J K L L M N O P P Q R S T T U V W X X Y Z ` . ...+.@.#.#.$.%.&.*.*.=.-.;.>.>.,.'.).!.!.~.{.].].^./.(._._.:.<.[.}.}.|.1.2.3.3.4.5.6.7.7.8.9.0.a.a.b.+ c.d.d.e.f.g.h.h.i.j.k.l.l.m.n.o.p.p.q.r.s.t.t.u.v.w.x.x.y.z.A.A.B.C.D.E.E.F.G.H.I.I.J.K.L.M.M.N.O.P.Q.Q.R.S.T.U.U.V.W.X.Y.Y.Z.`. +.+.+++@+#+$+$+%+&+*+=+=+-+;+>+,+,+'+)+!+~+~+{+]+^+/+/+(+_+:+<+<+[+}+|+|+1+2+3+4+4+5+6+7+8+8+9+0+a+b+b+c+d+e+f+f+g+h+i+j+j+k+l+m+n+n+o+p+q+r+r+s+t+u+v+v+w+x+y+z+z+A+B+C+D+D+E+= F+& & G+$ H++ + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
+". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . "};
diff --git a/src/xsane-device-preferences.c b/src/xsane-device-preferences.c
new file mode 100644
index 0000000..7f6a80e
--- /dev/null
+++ b/src/xsane-device-preferences.c
@@ -0,0 +1,769 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-device-preferences.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-rc-io.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-gamma.h"
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+#define BITS_PER_LONG (8*sizeof(u_long))
+
+#define SET(set, bit) ((set)[(bit)/BITS_PER_LONG] |= (1UL << (bit)%BITS_PER_LONG))
+#define IS_SET(set, bit) (((set)[(bit)/BITS_PER_LONG] & (1UL << (bit)%BITS_PER_LONG)) != 0)
+
+#define DPOFFSET(field) ((char *) &((Xsane *) 0)->field - (char *) 0)
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static struct
+{
+ SANE_String name;
+ void (*codec) (Wire *w, void *p, long offset);
+ long offset;
+}
+desc_xsane_device[] =
+{
+ {"xsane-main-window-x-position", xsane_rc_pref_int, DPOFFSET(shell_posx)},
+ {"xsane-main-window-y-position", xsane_rc_pref_int, DPOFFSET(shell_posy)},
+
+ {"xsane-main-window-width", xsane_rc_pref_int, DPOFFSET(shell_width)},
+ {"xsane-main-window-height", xsane_rc_pref_int, DPOFFSET(shell_height)},
+
+ {"xsane-standard-options-window-x-position", xsane_rc_pref_int, DPOFFSET(standard_options_shell_posx)},
+ {"xsane-standard-options-window-y-position", xsane_rc_pref_int, DPOFFSET(standard_options_shell_posy)},
+
+ {"xsane-advanced-options-window-x-position", xsane_rc_pref_int, DPOFFSET(advanced_options_shell_posx)},
+ {"xsane-advanced-options-window-y-position", xsane_rc_pref_int, DPOFFSET(advanced_options_shell_posy)},
+
+ {"xsane-histogram-window-x-position", xsane_rc_pref_int, DPOFFSET(histogram_dialog_posx)},
+ {"xsane-histogram-window-y-position", xsane_rc_pref_int, DPOFFSET(histogram_dialog_posy)},
+
+ {"xsane-gamma-window-x-position", xsane_rc_pref_int, DPOFFSET(gamma_dialog_posx)},
+ {"xsane-gamma-window-y-position", xsane_rc_pref_int, DPOFFSET(gamma_dialog_posy)},
+
+ {"xsane-preview-window-x-position", xsane_rc_pref_int, DPOFFSET(preview_dialog_posx)},
+ {"xsane-preview-window-y-position", xsane_rc_pref_int, DPOFFSET(preview_dialog_posy)},
+ {"xsane-preview-window-width", xsane_rc_pref_int, DPOFFSET(preview_dialog_width)},
+ {"xsane-preview-window-height", xsane_rc_pref_int, DPOFFSET(preview_dialog_height)},
+
+ {"xsane-gamma", xsane_rc_pref_double, DPOFFSET(gamma)},
+ {"xsane-gamma-red", xsane_rc_pref_double, DPOFFSET(gamma_red)},
+ {"xsane-gamma-green", xsane_rc_pref_double, DPOFFSET(gamma_green)},
+ {"xsane-gamma-blue", xsane_rc_pref_double, DPOFFSET(gamma_blue)},
+
+ {"xsane-brightness", xsane_rc_pref_double, DPOFFSET(brightness)},
+ {"xsane-brightness-red", xsane_rc_pref_double, DPOFFSET(brightness_red)},
+ {"xsane-brightness-green", xsane_rc_pref_double, DPOFFSET(brightness_green)},
+ {"xsane-brightness-blue", xsane_rc_pref_double, DPOFFSET(brightness_blue)},
+
+ {"xsane-contrast", xsane_rc_pref_double, DPOFFSET(contrast)},
+ {"xsane-contrast-red", xsane_rc_pref_double, DPOFFSET(contrast_red)},
+ {"xsane-contrast-green", xsane_rc_pref_double, DPOFFSET(contrast_green)},
+ {"xsane-contrast-blue", xsane_rc_pref_double, DPOFFSET(contrast_blue)},
+
+ {"xsane-lineart-mode", xsane_rc_pref_int, DPOFFSET(lineart_mode)},
+ {"xsane-threshold", xsane_rc_pref_double, DPOFFSET(threshold)},
+ {"xsane-threshold-min", xsane_rc_pref_double, DPOFFSET(threshold_min)},
+ {"xsane-threshold-max", xsane_rc_pref_double, DPOFFSET(threshold_max)},
+ {"xsane-threshold-multiplier", xsane_rc_pref_double, DPOFFSET(threshold_mul)},
+ {"xsane-threshold-offset", xsane_rc_pref_double, DPOFFSET(threshold_off)},
+ {"xsane-grayscale-scanmode", xsane_rc_pref_string, DPOFFSET(grayscale_scanmode)},
+
+ {"xsane-adf-scansource", xsane_rc_pref_string, DPOFFSET(adf_scansource)},
+
+ {"xsane-enhancement-rgb-default", xsane_rc_pref_int, DPOFFSET(enhancement_rgb_default)},
+ {"xsane-negative", xsane_rc_pref_int, DPOFFSET(negative)},
+ {"xsane-show-preview", xsane_rc_pref_int, DPOFFSET(show_preview)},
+};
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_device_preferences_load_values(Wire *w, SANE_Handle device)
+{
+ const SANE_Option_Descriptor *opt;
+ SANE_Word *word_array;
+ SANE_String name, str;
+ u_long *caused_reload;
+ SANE_Int num_options;
+ SANE_Status status;
+ int i, keep_going;
+ SANE_Word word;
+ SANE_Int info;
+ off_t offset;
+ size_t size;
+ char *buf;
+
+ DBG(DBG_proc, "xsane_device_preferences_load_values\n");
+
+ lseek(w->io.fd, 1, SEEK_SET); /* rewind file */
+ xsane_rc_io_w_flush(w);
+
+ offset = lseek(w->io.fd, 0, SEEK_CUR); /* remeber file position */
+
+ keep_going = 0;
+
+ xsane_control_option(device, 0, SANE_ACTION_GET_VALUE, &num_options, 0);
+ size = (num_options + BITS_PER_LONG - 1) / BITS_PER_LONG * sizeof(long);
+ caused_reload = alloca(size);
+ memset(caused_reload, 0, size);
+
+ while (1)
+ {
+ xsane_rc_io_w_space(w, 3);
+ if (!w->status)
+ {
+ xsane_rc_io_w_string(w, &name);
+ }
+
+ if (w->status == XSANE_EOF) /* eof */
+ {
+ if (keep_going) /* we had a reload otpions? */
+ {
+ lseek(w->io.fd, offset, SEEK_SET); /* rewind file to position of first run */
+ xsane_rc_io_w_flush(w);
+ keep_going = 0;
+ continue;
+ }
+
+ /* no keep_gooing: we can exit, all options should be set correct */
+ return 0;
+ }
+ else if (w->status) /* error: skip line */
+ {
+ w->status = 0;
+ xsane_rc_io_w_free(w, (WireCodecFunc) xsane_rc_io_w_string, &name); /* free string memory */
+ xsane_rc_io_w_skip_newline(w); /* skip this line */
+ continue;
+ }
+
+ status = SANE_STATUS_GOOD;
+ info = 0;
+ for (i = 1; (opt = xsane_get_option_descriptor(device, i)); ++i) /* search all options */
+ {
+ if (!opt->name || strcmp(opt->name, name) != 0) /* test if option names are equal */
+ {
+ continue; /* not equal, continue the search */
+ }
+
+ if (IS_SET(caused_reload, i))
+ {
+ continue; /* option already caused a reload: */
+ /* we expect that this option already is set correct */
+ /* otherwise we could get infinite loops */
+ }
+
+ /* name is correct and option did not force a reload: set option */
+ switch (opt->type)
+ {
+ case SANE_TYPE_BOOL:
+ case SANE_TYPE_INT:
+ case SANE_TYPE_FIXED:
+ if (opt->size == sizeof(SANE_Word))
+ {
+ xsane_rc_io_w_word(w, &word);
+ status = xsane_control_option(device, i, SANE_ACTION_SET_VALUE, &word, &info);
+ }
+ else /* array */
+ {
+ SANE_Int len;
+
+ xsane_rc_io_w_array(w, &len, (void **) &word_array, (WireCodecFunc) xsane_rc_io_w_word, sizeof(SANE_Word));
+ status = xsane_control_option(device, i, SANE_ACTION_SET_VALUE, word_array, &info);
+ w->direction = WIRE_FREE;
+ xsane_rc_io_w_array(w, &len, (void **) &word_array, (WireCodecFunc) xsane_rc_io_w_word, sizeof(SANE_Word));
+ w->direction = WIRE_DECODE;
+ }
+ break;
+
+ case SANE_TYPE_STRING:
+ xsane_rc_io_w_string(w, &str);
+ buf = malloc(opt->size);
+ if (!w->status) /* got a string ? */
+ {
+ strncpy(buf, str, opt->size);
+ buf[opt->size - 1] = '\0';
+ xsane_rc_io_w_free(w, (WireCodecFunc) xsane_rc_io_w_string, &str);
+ status = xsane_control_option(device, i, SANE_ACTION_SET_VALUE, buf, &info);
+ }
+ break;
+
+ case SANE_TYPE_BUTTON:
+ case SANE_TYPE_GROUP:
+ /* nothing to read for button and group */
+ break;
+ }
+ break; /* option is set: do not continue search */
+ }
+ xsane_rc_io_w_free(w, (WireCodecFunc) xsane_rc_io_w_string, &name); /* free string memory */
+
+ if (status == SANE_STATUS_GOOD && (info & SANE_INFO_RELOAD_OPTIONS))
+ {
+ SET(caused_reload, i);
+ keep_going = 1;
+ }
+ }
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_device_preferences_save_values(Wire *w, SANE_Handle device)
+{
+ const SANE_Option_Descriptor *opt;
+ size_t word_array_size = 0;
+ SANE_Word *word_array = 0;
+ size_t str_size = 0;
+ SANE_String str = 0;
+ SANE_Word word;
+ int i;
+
+ DBG(DBG_proc, "xsane_device_preferences_save_values\n");
+
+ for (i = 0; (opt = xsane_get_option_descriptor(device, i)); ++i)
+ {
+ if ((opt->cap & (SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT)) !=
+ (SANE_CAP_SOFT_SELECT | SANE_CAP_SOFT_DETECT) || !opt->name)
+ /* if we can't query AND set the option, don't bother saving it */
+ {
+ continue;
+ }
+
+ if (!SANE_OPTION_IS_ACTIVE(opt->cap)) /* option is not active, don`t save it */
+ {
+ continue;
+ }
+
+ switch (opt->type)
+ {
+ case SANE_TYPE_BOOL:
+ case SANE_TYPE_INT:
+ case SANE_TYPE_FIXED:
+ if (opt->size == sizeof(SANE_Word))
+ {
+ if (xsane_control_option(device, i, SANE_ACTION_GET_VALUE, &word, 0) != SANE_STATUS_GOOD)
+ {
+ continue;
+ }
+ xsane_rc_io_w_string(w, (SANE_String *) &opt->name);
+ xsane_rc_io_w_word(w, &word);
+ }
+ else
+ {
+ SANE_Int len = opt->size / sizeof(SANE_Word);
+
+ if (opt->size > word_array_size)
+ {
+ word_array_size = ((opt->size + 32*sizeof(SANE_Word)) & ~(32*sizeof(SANE_Word) - 1));
+ if (word_array)
+ {
+ word_array = realloc(word_array, word_array_size);
+ }
+ else
+ {
+ word_array = malloc(word_array_size);
+ }
+
+ if (word_array == 0)
+ {
+ /* Malloc failed, so return an error. */
+ w->status = ENOMEM;
+ return 1;
+ }
+ }
+
+ if (xsane_control_option(device, i, SANE_ACTION_GET_VALUE, word_array, 0) != SANE_STATUS_GOOD)
+ {
+ continue;
+ }
+
+ xsane_rc_io_w_string(w, (SANE_String *) &opt->name);
+ xsane_rc_io_w_array(w, &len, (void **) &word_array, (WireCodecFunc) xsane_rc_io_w_word, sizeof(SANE_Word));
+ }
+ break;
+
+ case SANE_TYPE_STRING:
+ if (opt->size > str_size)
+ {
+ str_size = (opt->size + 1024) & ~1023;
+
+ if (str)
+ {
+ str = realloc(str, str_size);
+ }
+ else
+ {
+ str = malloc(str_size);
+ }
+
+ if (str == 0)
+ {
+ /* Malloc failed, so return an error. */
+ w->status = ENOMEM;
+ return 1;
+ }
+ }
+
+ if (xsane_control_option(device, i, SANE_ACTION_GET_VALUE, str, 0) != SANE_STATUS_GOOD)
+ {
+ continue;
+ }
+
+ xsane_rc_io_w_string(w, (SANE_String *) &opt->name);
+ xsane_rc_io_w_string(w, &str);
+ break;
+
+ case SANE_TYPE_BUTTON:
+ case SANE_TYPE_GROUP:
+ break;
+ }
+ }
+
+ if (word_array)
+ {
+ free(word_array);
+ }
+ if (str)
+ {
+ free(str);
+ }
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_device_preferences_load_file(char *filename)
+{
+ int fd;
+ char buf[256];
+#if 0
+ char *version = 0;
+#endif
+ Wire w;
+ SANE_String name;
+ int i;
+
+ DBG(DBG_proc, "xsane_device_preferences_load_file\n");
+
+ /* set geometry and position to standard values */
+ xsane.shell_posx = XSANE_SHELL_POS_X;
+ xsane.shell_posy = XSANE_SHELL_POS_Y;
+ xsane.shell_width = XSANE_SHELL_WIDTH;
+ xsane.shell_height = XSANE_SHELL_HEIGHT;
+
+ xsane.standard_options_shell_posx = XSANE_STD_OPTIONS_POS_X;
+ xsane.standard_options_shell_posy = XSANE_STD_OPTIONS_POS_Y;
+
+ xsane.advanced_options_shell_posx = XSANE_ADV_OPTIONS_POS_X;
+ xsane.advanced_options_shell_posy = XSANE_ADV_OPTIONS_POS_Y;
+
+ xsane.histogram_dialog_posx = XSANE_HISTOGRAM_POS_X;
+ xsane.histogram_dialog_posy = XSANE_HISTOGRAM_POS_Y;
+
+ xsane.preview_dialog_posx = XSANE_PREVIEW_POS_X;
+ xsane.preview_dialog_posy = XSANE_PREVIEW_POS_Y;
+ xsane.preview_dialog_width = XSANE_PREVIEW_WIDTH;
+ xsane.preview_dialog_height = XSANE_PREVIEW_HEIGHT;
+
+ xsane.gamma = 1.0;
+ xsane.gamma_red = 1.0;
+ xsane.gamma_green = 1.0;
+ xsane.gamma_blue = 1.0;
+
+ xsane.brightness = 0.0;
+ xsane.brightness_red = 0.0;
+ xsane.brightness_green = 0.0;
+ xsane.brightness_blue = 0.0;
+
+ xsane.contrast = 0.0;
+ xsane.contrast_red = 0.0;
+ xsane.contrast_green = 0.0;
+ xsane.contrast_blue = 0.0;
+
+ xsane.lineart_mode = 0;
+ xsane.grayscale_scanmode = 0; /* Empty String => keeps "grayscale" */
+ xsane.threshold = 50.0;
+ xsane.threshold_min = 0.0;
+ xsane.threshold_max = 100.0;
+ xsane.threshold_mul = 1.0;
+ xsane.threshold_off = 0.0;
+
+ xsane.adf_scansource = 0; /* Empty String => keeps adf scansource */
+
+ xsane.enhancement_rgb_default = 1;
+ xsane.negative = 0;
+ xsane.show_preview = 1;
+
+ fd = open(filename, O_RDONLY);
+ if (fd >= 0)
+ {
+ /* prepare wire */
+ w.io.fd = fd;
+ w.io.read = read;
+ w.io.write = write;
+ xsane_rc_io_w_init(&w);
+ xsane_rc_io_w_set_dir(&w, WIRE_DECODE);
+
+ xsane_rc_io_w_space(&w, 3);
+ if (!w.status)
+ {
+ xsane_rc_io_w_string(&w, &name); /* get string */
+ if (!w.status)
+ {
+ if (strcmp(name, "XSANE_DEVICE_RC")) /* no real *.drc file */
+ {
+ w.status = -1; /* no *.drc file => error */
+ }
+ }
+ }
+
+ if (w.status)
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s\n%s %s", ERR_LOAD_DEVICE_SETTINGS, filename, ERR_NO_DRC_FILE);
+ xsane_back_gtk_error(buf, TRUE);
+ close(fd);
+ return;
+ }
+
+ xsane_rc_io_w_space(&w, 3);
+ if (!w.status)
+ {
+ xsane_rc_io_w_string(&w, &name); /* get string */
+ if (!w.status)
+ {
+ if (strcmp(name, xsane.device_set_filename))
+ {
+ snprintf(buf, sizeof(buf), "%s \"%s\"\n"
+ "%s \"%s\",\n"
+ "%s \"%s\",\n"
+ "%s",
+ TEXT_FILE, filename,
+ ERR_CREATED_FOR_DEVICE, name,
+ ERR_USED_FOR_DEVICE, xsane.device_set_filename,
+ ERR_MAY_CAUSE_PROBLEMS);
+ if (xsane_back_gtk_decision(ERR_HEADER_WARNING, (gchar **) error_xpm, buf, BUTTON_OK, BUTTON_CANCEL, TRUE) == FALSE)
+ { /* cancel */
+ close(fd);
+ return;
+ }
+ }
+ }
+ }
+
+ if (w.status)
+ {
+ /* may be we should pop up a window here */
+ close(fd);
+ return;
+ }
+
+
+#if 0
+/* add here: read version info */
+#if 0
+ while (!feof(file))
+ {
+ fgets(option, sizeof(option), file); /* get option name */
+ option[strlen(option)-1] = 0; /* remove cr */
+ if (strcmp(option, "\"xsane-version\"") == 0)
+ {
+ fgets(option, sizeof(option), file); /* get version */
+ option[strlen(option)-1] = 0; /* remove cr */
+ len = strlen(option);
+ if (len)
+ {
+ if (option[len-1] == 34)
+ {
+ option[len-1] = 0; /* remove " */
+ }
+ }
+ version = strdup(option+1);
+ }
+ else
+ {
+ fgets(option, sizeof(option), file); /* skip option */
+ }
+ }
+#endif
+
+
+ if (version)
+ {
+ if (strcmp(version, XSANE_VERSION))
+ {
+ snprintf(buf, sizeof(buf), "File: \"%s\"\n"
+ "has been saved with xsane-%s,\n"
+ "this may cause problems!", filename, version);
+ xsane_back_gtk_warning(buf, TRUE);
+ }
+ free(version);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "File: \"%s\"\n"
+ "has been saved with xsane before version 0.40,\n"
+ "this may cause problems!", filename);
+ xsane_back_gtk_warning(buf, TRUE);
+ }
+#endif
+
+
+
+ while (1) /* read device dependant xsane options */
+ {
+ xsane_rc_io_w_space(&w, 3);
+ if (w.status)
+ {
+ break;
+ }
+
+ xsane_rc_io_w_string(&w, &name);
+
+ if (!w.status && name)
+ {
+ for (i = 0; i < NELEMS (desc_xsane_device); ++i)
+ {
+ if (strcmp(name, desc_xsane_device[i].name) == 0)
+ {
+ (*desc_xsane_device[i].codec) (&w, &xsane, desc_xsane_device[i].offset);
+ break; /* leave for loop */
+ }
+ }
+ }
+ w.status = 0;
+ }
+
+ xsane_device_preferences_load_values(&w, xsane.dev); /* read device preferences */
+ close(fd);
+
+ if (xsane.well_known.dpi > 0)
+ {
+ const SANE_Option_Descriptor *opt;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.dpi);
+
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ {
+ SANE_Int dpi;
+ xsane_control_option(xsane.dev, xsane.well_known.dpi, SANE_ACTION_GET_VALUE, &dpi, 0);
+ xsane.resolution = dpi;
+ }
+ break;
+
+ case SANE_TYPE_FIXED:
+ {
+ SANE_Fixed dpi;
+ xsane_control_option(xsane.dev, xsane.well_known.dpi, SANE_ACTION_GET_VALUE, &dpi, 0);
+ xsane.resolution = (int) SANE_UNFIX(dpi);
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_pref_load_file: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ return;
+ }
+ }
+ }
+ gtk_widget_set_uposition(xsane.shell, xsane.shell_posx, xsane.shell_posy);
+ gtk_window_set_default_size(GTK_WINDOW(xsane.shell), xsane.shell_width, xsane.shell_height);
+ gtk_widget_set_uposition(xsane.standard_options_shell, xsane.standard_options_shell_posx, xsane.standard_options_shell_posy);
+ gtk_widget_set_uposition(xsane.advanced_options_shell, xsane.advanced_options_shell_posx, xsane.advanced_options_shell_posy);
+ gtk_widget_set_uposition(xsane.histogram_dialog, xsane.histogram_dialog_posx, xsane.histogram_dialog_posy);
+ gtk_widget_set_uposition(xsane.preview->top, xsane.preview_dialog_posx, xsane.preview_dialog_posy);
+ gtk_window_set_default_size(GTK_WINDOW(xsane.preview->top), xsane.preview_dialog_width, xsane.preview_dialog_height);
+
+ xsane_update_param(0);
+ xsane_refresh_dialog();
+ xsane_enhancement_by_gamma();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_device_preferences_restore(void)
+{
+ char filename[PATH_MAX];
+ struct stat st;
+
+ DBG(DBG_proc, "xsane_device_preferences_restore\n");
+
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, 0, xsane.device_set_filename, ".drc", XSANE_PATH_LOCAL_SANE);
+
+ if (stat(filename, &st) >= 0)
+ {
+ xsane_device_preferences_load_file(filename);
+ }
+ else /* no local sane file, look for system file */
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, 0, xsane.device_set_filename, ".drc", XSANE_PATH_SYSTEM);
+ xsane_device_preferences_load_file(filename);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_device_preferences_load(void)
+{
+ char filename[PATH_MAX];
+ char windowname[256];
+
+ DBG(DBG_proc, "xsane_device_preferences_load\n");
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+ xsane_set_sensitivity(FALSE);
+
+ sprintf(windowname, "%s %s %s", xsane.prog_name, WINDOW_LOAD_SETTINGS, xsane.device_text);
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, 0, xsane.device_set_filename, ".drc", XSANE_PATH_LOCAL_SANE);
+
+ if (!xsane_back_gtk_get_filename(windowname, filename, sizeof(filename), filename, FALSE, FALSE, FALSE))
+ {
+ xsane_device_preferences_load_file(filename);
+ }
+ xsane_set_sensitivity(TRUE);
+ xsane_update_histogram(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define XSANE_RC_IO_W_STRINGCONST(wire, string) { SANE_String str=string; xsane_rc_io_w_string(wire, &str); }
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_device_preferences_save_file(char *filename)
+{
+ int fd;
+ Wire w;
+ int i;
+
+ if (filename)
+ {
+ DBG(DBG_info, "Saving device preferences to file %s\n", filename);
+
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+ fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, 0666);
+ if (fd < 0)
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_FAILED_CREATE_FILE, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ xsane_set_sensitivity(TRUE);
+ return;
+ }
+
+ /* prepare wire */
+ w.io.fd = fd;
+ w.io.read = read;
+ w.io.write = write;
+ xsane_rc_io_w_init(&w);
+ xsane_rc_io_w_set_dir(&w, WIRE_ENCODE);
+
+ XSANE_RC_IO_W_STRINGCONST(&w, "XSANE_DEVICE_RC");
+ xsane_rc_io_w_string(&w, &xsane.device_set_filename);
+
+ XSANE_RC_IO_W_STRINGCONST(&w, "xsane-version");
+ XSANE_RC_IO_W_STRINGCONST(&w, XSANE_VERSION);
+
+ /* make geometry and position values up to date */
+ xsane_widget_get_uposition(xsane.shell, &xsane.shell_posx, &xsane.shell_posy);
+ gdk_window_get_size(xsane.shell->window, &xsane.shell_width, &xsane.shell_height);
+ gtk_widget_set_uposition(xsane.shell, xsane.shell_posx, xsane.shell_posy); /* geometry used when window closed and opened again */
+ gtk_window_set_default_size(GTK_WINDOW(xsane.shell), xsane.shell_width, xsane.shell_height);
+
+ xsane_widget_get_uposition(xsane.standard_options_shell, &xsane.standard_options_shell_posx, &xsane.standard_options_shell_posy);
+ gtk_widget_set_uposition(xsane.standard_options_shell, xsane.standard_options_shell_posx, xsane.standard_options_shell_posy);
+
+ xsane_widget_get_uposition(xsane.advanced_options_shell, &xsane.advanced_options_shell_posx, &xsane.advanced_options_shell_posy);
+ gtk_widget_set_uposition(xsane.advanced_options_shell, xsane.advanced_options_shell_posx, xsane.advanced_options_shell_posy);
+
+ xsane_widget_get_uposition(xsane.histogram_dialog, &xsane.histogram_dialog_posx, &xsane.histogram_dialog_posy);
+ gtk_widget_set_uposition(xsane.histogram_dialog, xsane.histogram_dialog_posx, xsane.histogram_dialog_posy);
+
+ if (xsane.preview)
+ {
+ xsane_widget_get_uposition(xsane.preview->top, &xsane.preview_dialog_posx, &xsane.preview_dialog_posy);
+ gdk_window_get_size(xsane.preview->top->window, &xsane.preview_dialog_width, &xsane.preview_dialog_height);
+ gtk_widget_set_uposition(xsane.preview->top, xsane.preview_dialog_posx, xsane.preview_dialog_posy);
+ gtk_window_set_default_size(GTK_WINDOW(xsane.preview->top), xsane.preview_dialog_width, xsane.preview_dialog_height);
+ }
+
+ xsane_device_preferences_save_values(&w, xsane.dev);
+
+ for (i = 0; i < NELEMS(desc_xsane_device); ++i) /* save device preferences xsane values */
+ {
+ xsane_rc_io_w_string(&w, &desc_xsane_device[i].name);
+ (*desc_xsane_device[i].codec) (&w, &xsane, desc_xsane_device[i].offset);
+ }
+
+ xsane_rc_io_w_flush(&w);
+ close(fd);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_device_preferences_store(void)
+{
+ char filename[PATH_MAX];
+
+ DBG(DBG_proc, "xsane_device_preferences_store\n");
+
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, 0, xsane.device_set_filename, ".drc", XSANE_PATH_LOCAL_SANE);
+ xsane_device_preferences_save_file(filename);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_device_preferences_save(void)
+{
+ char filename[PATH_MAX];
+ char windowname[256];
+
+ DBG(DBG_proc, "xsane_device_preferences_save\n");
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+ xsane_set_sensitivity(FALSE);
+
+ sprintf(windowname, "%s %s %s", xsane.prog_name, WINDOW_SAVE_SETTINGS, xsane.device_text);
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, 0, xsane.device_set_filename, ".drc", XSANE_PATH_LOCAL_SANE);
+
+ if (!xsane_back_gtk_get_filename(windowname, filename, sizeof(filename), filename, FALSE, FALSE, FALSE))
+ {
+ xsane_device_preferences_save_file(filename);
+ }
+
+ xsane_set_sensitivity(TRUE);
+ xsane_update_histogram(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
diff --git a/src/xsane-device-preferences.h b/src/xsane-device-preferences.h
new file mode 100644
index 0000000..053c2a8
--- /dev/null
+++ b/src/xsane-device-preferences.h
@@ -0,0 +1,44 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-device-preferences.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef xsane_device_preferences_h
+#define xsane_device_preferences_h
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include <sane/sane.h>
+#include "xsane.h"
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_device_preferences_store(void);
+extern void xsane_device_preferences_save(void);
+extern void xsane_device_preferences_save_file(char *filename);
+extern void xsane_device_preferences_restore(void);
+extern void xsane_device_preferences_load(void);
+extern void xsane_device_preferences_load_file(char *filename);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#endif
diff --git a/src/xsane-fixedtext.h b/src/xsane-fixedtext.h
new file mode 100644
index 0000000..2bff8cc
--- /dev/null
+++ b/src/xsane-fixedtext.h
@@ -0,0 +1,50 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-fixedtext.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ------------------------------------------------------------------------ */
+
+#ifndef XSANE_FIXEDTEXT_H
+#define XSANE_FIXEDTEXT_H
+
+#ifdef _WIN32
+# define XSANE_FILETYPE_JPEG ".jpg"
+# define XSANE_FILETYPE_TIFF ".tif"
+#else
+# define XSANE_FILETYPE_JPEG ".jpeg"
+# define XSANE_FILETYPE_TIFF ".tiff"
+#endif
+
+#define XSANE_FILETYPE_PNG ".png"
+#define XSANE_FILETYPE_PNM ".pnm"
+#define XSANE_FILETYPE_PS ".ps"
+#define XSANE_FILETYPE_RAW ".raw"
+#define XSANE_FILETYPE_RGBA ".rgba"
+
+#define MENU_ITEM_FILETYPE_JPEG "JPEG"
+#define MENU_ITEM_FILETYPE_TIFF "TIFF"
+#define MENU_ITEM_FILETYPE_PNG "PNG"
+#define MENU_ITEM_FILETYPE_PNM "PNM"
+#define MENU_ITEM_FILETYPE_PS "PostScript"
+#define MENU_ITEM_FILETYPE_RAW "RAW"
+#define MENU_ITEM_FILETYPE_RGBA "RGBA"
+
+#endif
diff --git a/src/xsane-front-gtk.c b/src/xsane-front-gtk.c
new file mode 100644
index 0000000..b4373ed
--- /dev/null
+++ b/src/xsane-front-gtk.c
@@ -0,0 +1,1664 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-front-gtk.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-back-gtk.h"
+#include "xsane-preferences.h"
+#include "xsane-preview.h"
+#include "xsane-save.h"
+#include "xsane-gamma.h"
+#include "xsane-setup.h"
+#include <md5.h>
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+#include <png.h>
+#include <zlib.h>
+#endif
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations: */
+
+int xsane_parse_options(char *options, char *argv[]);
+void xsane_get_bounds(const SANE_Option_Descriptor *opt, double *minp, double *maxp);
+double xsane_find_best_resolution(int well_known_option, double dpi);
+int xsane_set_resolution(int well_known_option, double resolution);
+void xsane_set_all_resolutions(void);
+void xsane_define_maximum_output_size();
+void xsane_close_dialog_callback(GtkWidget *widget, gpointer data);
+void xsane_authorization_button_callback(GtkWidget *widget, gpointer data);
+gint xsane_authorization_callback(SANE_String_Const resource,
+ SANE_Char username[SANE_MAX_USERNAME_LEN],
+ SANE_Char password[SANE_MAX_PASSWORD_LEN]);
+void xsane_progress_cancel(GtkWidget *widget, gpointer data);
+void xsane_progress_new(char *bar_text, char *info, GtkSignalFunc callback, int *cancel_data_pointer);
+void xsane_progress_update(gfloat newval);
+void xsane_progress_clear();
+GtkWidget *xsane_vendor_pixmap_new(GdkWindow *window, GtkWidget *parent);
+GtkWidget *xsane_toggle_button_new_with_pixmap(GdkWindow *window, GtkWidget *parent, const char *xpm_d[], const char *desc,
+ int *state, void *xsane_toggle_button_callback);
+GtkWidget *xsane_button_new_with_pixmap(GdkWindow *window, GtkWidget *parent, const char *xpm_d[], const char *desc,
+ void *xsane_button_callback, gpointer data);
+void xsane_option_menu_new(GtkWidget *parent, char *str_list[], const char *val, int option_number, const char *desc,
+ void *option_menu_callback, SANE_Int settable, const gchar *widget_name);
+void xsane_option_menu_new_with_pixmap(GdkWindow *window, GtkBox *parent, const char *xpm_d[], const char *desc,
+ char *str_list[], const char *val,
+ GtkObject **data, int option,
+ void *option_menu_callback, SANE_Int settable, const gchar *widget_name);
+void xsane_scale_new(GtkBox *parent, char *labeltext, const char *desc,
+ float min, float max, float quant, float step, float page_step,
+ int digits, double *val, GtkObject **data, void *xsane_scale_callback, SANE_Int settable);
+void xsane_scale_new_with_pixmap(GdkWindow *window, GtkBox *parent, const char *xpm_d[], const char *desc,
+ float min, float max, float quant, float step, float page_step, int digits,
+ double *val, GtkObject **data, int option, void *xsane_scale_callback, SANE_Int settable);
+void xsane_separator_new(GtkWidget *xsane_parent, int dist);
+GtkWidget *xsane_info_table_text_new(GtkWidget *table, gchar *text, int row, int colomn);
+GtkWidget *xsane_info_text_new(GtkWidget *parent, gchar *text);
+void xsane_refresh_dialog(void);
+void xsane_set_sensitivity(SANE_Int sensitivity);
+void xsane_update_param(void *arg);
+void xsane_define_output_filename(void);
+int xsane_identify_output_format(char *filename, char **ext);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_parse_options(char *options, char *argv[])
+{
+ int optpos = 0;
+ int bufpos = 0;
+ int arg = 0;
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_parse_options\n");
+
+ while (options[optpos] != 0)
+ {
+ switch(options[optpos])
+ {
+ case ' ':
+ buf[bufpos] = 0;
+ argv[arg++] = strdup(buf);
+ bufpos = 0;
+ optpos++;
+ break;
+
+ case '\"':
+ optpos++; /* skip " */
+ while ((options[optpos] != 0) && (options[optpos] != '\"'))
+ {
+ buf[bufpos++] = options[optpos++];
+ }
+ optpos++; /* skip " */
+ break;
+
+ default:
+ buf[bufpos++] = options[optpos++];
+ break;
+ }
+ }
+ buf[bufpos] = 0;
+ argv[arg++] = strdup(buf);
+
+ return arg;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_get_bounds(const SANE_Option_Descriptor *opt, double *minp, double *maxp)
+{
+ double min, max;
+ int i;
+
+ DBG(DBG_proc, "xsane_get_bounds\n");
+
+ min = -INF;
+ max = INF;
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_RANGE:
+ min = opt->constraint.range->min;
+ max = opt->constraint.range->max;
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ min = INF;
+ max = -INF;
+
+ for (i = 1; i <= opt->constraint.word_list[0]; ++i)
+ {
+ if (opt->constraint.word_list[i] < min)
+ {
+ min = opt->constraint.word_list[i];
+ }
+ if (opt->constraint.word_list[i] > max)
+ {
+ max = opt->constraint.word_list[i];
+ }
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ if (min > -INF && min < INF)
+ {
+ min = SANE_UNFIX (min);
+ }
+ if (max > -INF && max < INF)
+ {
+ max = SANE_UNFIX (max);
+ }
+ }
+ *minp = min;
+ *maxp = max;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+double xsane_find_best_resolution(int well_known_option, double dpi)
+{
+ const SANE_Option_Descriptor *opt;
+ double bestdpi;
+
+ DBG(DBG_proc, "xsane_find_best_resolution\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, well_known_option);
+
+ if (!opt)
+ {
+ return -1.0; /* option does not exits */
+ }
+
+ if (opt->constraint_type == SANE_CONSTRAINT_RANGE)
+ {
+ double quant=0;
+ double min=0;
+ double max=0;
+
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ min = opt->constraint.range->min;
+ max = opt->constraint.range->max;
+ quant = opt->constraint.range->quant;
+ break;
+
+ case SANE_TYPE_FIXED:
+ min = SANE_UNFIX(opt->constraint.range->min);
+ max = SANE_UNFIX(opt->constraint.range->max);
+ quant = SANE_UNFIX(opt->constraint.range->quant);
+ break;
+
+ default:
+ DBG(DBG_error, "find_best_resolution: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ }
+
+ bestdpi = dpi;
+
+ if (quant != 0) /* make sure selected value fits into quantisation */
+ {
+ int factor;
+ double diff;
+
+ factor = (int) (dpi - min) / quant;
+
+ diff = dpi - min - factor * quant;
+ bestdpi = min + factor * quant;
+
+ if (diff >quant/2.0)
+ {
+ bestdpi += quant;
+ }
+ }
+
+ if (bestdpi < min)
+ {
+ bestdpi = min;
+ }
+
+ if (bestdpi > max)
+ {
+ bestdpi = max;
+ }
+ }
+ else if (opt->constraint_type == SANE_CONSTRAINT_WORD_LIST)
+ {
+ SANE_Word diff;
+ SANE_Word val;
+ int items;
+ int i;
+
+ items = opt->constraint.word_list[0];
+
+ bestdpi = opt->constraint.word_list[1];
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ bestdpi = SANE_UNFIX(bestdpi);
+ }
+
+ diff = abs(bestdpi - dpi);
+
+ for (i=1; i<=items; i++)
+ {
+ val = opt->constraint.word_list[i];
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ val = SANE_UNFIX(val);
+ }
+
+ if (abs(val - dpi) < diff)
+ {
+ diff = abs(val - dpi);
+ bestdpi = val;
+ }
+ }
+ }
+ else
+ {
+ DBG(DBG_error, "find_best_resolution: %s %d\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ return -1; /* error */
+ }
+
+ return bestdpi;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_set_resolution(int well_known_option, double resolution)
+{
+ const SANE_Option_Descriptor *opt;
+ double bestdpi;
+ SANE_Word dpi;
+
+ DBG(DBG_proc, "xsane_set_resolution\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, well_known_option);
+
+ if (!opt)
+ {
+ return -1; /* option does not exits */
+ }
+
+ if (!SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ return -1; /* option is not active */
+ }
+
+ bestdpi = xsane_find_best_resolution(well_known_option, resolution);
+
+ if (bestdpi < 0)
+ {
+ DBG(DBG_error, "set_resolution: %s\n", ERR_FAILED_SET_RESOLUTION);
+ return -1;
+ }
+
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ dpi = bestdpi;
+ break;
+
+ case SANE_TYPE_FIXED:
+ dpi = SANE_FIX(bestdpi);
+ break;
+
+ default:
+ DBG(DBG_error, "set_resolution: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ return 1; /* error */
+ }
+
+ xsane_control_option(xsane.dev, well_known_option, SANE_ACTION_SET_VALUE, &dpi, 0);
+ return 0; /* everything is ok */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_set_all_resolutions(void)
+{
+ int printer_resolution;
+
+ DBG(DBG_proc, "xsane_set_all_resolutions\n");
+
+#if 0
+ xsane_set_resolution(xsane.well_known.dpi_y, xsane.resolution_y); /* set y resolution if possible */
+ if (xsane_set_resolution(xsane.well_known.dpi_x, xsane.resolution_x)) /* set x resolution if possible */
+ {
+ xsane_set_resolution(xsane.well_known.dpi, xsane.resolution); /* set common resolution if necessary */
+ xsane.resolution_x = xsane.resolution;
+ xsane.resolution_y = xsane.resolution;
+ }
+#else
+ if (xsane_set_resolution(xsane.well_known.dpi_y, xsane.resolution_y)) /* set y resolution if possible */
+ {
+ xsane_set_resolution(xsane.well_known.dpi, xsane.resolution); /* set common resolution if necessary */
+ xsane.resolution_x = xsane.resolution;
+ xsane.resolution_y = xsane.resolution;
+ }
+ else
+ {
+ xsane_set_resolution(xsane.well_known.dpi_x, xsane.resolution_x); /* set x resolution if possible */
+ }
+#endif
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ xsane.zoom = xsane.resolution / printer_resolution;
+ xsane.zoom_x = xsane.resolution_x / printer_resolution;
+ xsane.zoom_y = xsane.resolution_y / printer_resolution;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_define_maximum_output_size()
+{
+ const SANE_Option_Descriptor *opt;
+
+ DBG(DBG_proc, "xsane_define_maximum_output_size\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.coord[0]);
+
+ if ( (opt) && (opt->unit== SANE_UNIT_MM) )
+ {
+ switch(xsane.xsane_mode)
+ {
+ case XSANE_SAVE:
+
+ xsane_define_output_filename();
+ xsane.xsane_output_format = xsane_identify_output_format(xsane.output_filename, 0);
+
+ preview_set_maximum_output_size(xsane.preview, INF, INF);
+ break;
+
+ case XSANE_VIEWER:
+ preview_set_maximum_output_size(xsane.preview, INF, INF);
+ break;
+
+ case XSANE_COPY:
+ if (preferences.psrotate) /* rotate: landscape */
+ {
+ preview_set_maximum_output_size(xsane.preview,
+ preferences.printer[preferences.printernr]->height / xsane.zoom_y,
+ preferences.printer[preferences.printernr]->width / xsane.zoom_x);
+ }
+ else /* do not rotate: portrait */
+ {
+ preview_set_maximum_output_size(xsane.preview,
+ preferences.printer[preferences.printernr]->width / xsane.zoom_x,
+ preferences.printer[preferences.printernr]->height / xsane.zoom_y);
+ }
+ break;
+
+ case XSANE_FAX:
+ preview_set_maximum_output_size(xsane.preview, preferences.fax_width, preferences.fax_height);
+ break;
+
+ case XSANE_MAIL:
+ preview_set_maximum_output_size(xsane.preview, INF, INF);
+ break;
+
+ default:
+ preview_set_maximum_output_size(xsane.preview, INF, INF);
+ }
+ }
+ else
+ {
+ preview_set_maximum_output_size(xsane.preview, INF, INF);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_close_dialog_callback(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *dialog_widget = data;
+
+ DBG(DBG_proc, "xsane_close_dialog_callback\n");
+
+ gtk_widget_destroy(dialog_widget);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int authorization_flag;
+
+void xsane_authorization_button_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_authorization_button_callback\n");
+
+ authorization_flag = (long) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+gint xsane_authorization_callback(SANE_String_Const resource,
+ SANE_Char username[SANE_MAX_USERNAME_LEN],
+ SANE_Char password[SANE_MAX_PASSWORD_LEN])
+{
+ GtkWidget *authorize_dialog, *vbox, *hbox, *button, *label;
+ GtkWidget *username_widget, *password_widget;
+ char buf[SANE_MAX_PASSWORD_LEN+SANE_MAX_USERNAME_LEN+128];
+ char *input;
+ char *resource_string;
+ int len;
+ int resource_len;
+ int secure_password_transmission = 0;
+ char password_filename[PATH_MAX];
+ struct stat password_stat;
+ FILE *password_file;
+ unsigned char md5digest[16];
+ int query_user = 1;
+
+ DBG(DBG_proc, "xsane_authorization_callback\n");
+
+ if (strstr(resource, "$MD5$") != NULL) /* secure password authorisation */
+ {
+ DBG(DBG_info, "xsane_authorization_callback: secure (MD5) password transmission requested\n");
+ secure_password_transmission = 1;
+ resource_len = strstr(resource, "$MD5$") - resource;
+ }
+ else
+ {
+ DBG(DBG_info, "xsane_authorization_callback: insecure password transmission requested\n");
+ resource_len = strlen(resource);
+ }
+ resource_string = alloca(resource_len+1);
+ snprintf(resource_string, resource_len+1, "%s", resource);
+
+ xsane_back_gtk_make_path(sizeof(password_filename), password_filename, NULL, NULL, "pass", NULL, NULL, XSANE_PATH_LOCAL_SANE);
+
+ /* if password transmission is secure and file ~/.sane/pass exists and it's permissions are x00 then
+ try to read username and pasword for resource from that file */
+ if ((stat(password_filename, &password_stat) == 0) && (secure_password_transmission))
+ {
+ if ((password_stat.st_mode & 63) != 0) /* 63 = 0x077 */
+ {
+ snprintf(buf, sizeof(buf), ERR_PASSWORD_FILE_INSECURE, password_filename);
+ xsane_back_gtk_error(buf, TRUE);
+ }
+ else /* ok, password file has secure permissions, we can use it */
+ {
+ password_file = fopen(password_filename, "r");
+
+ if (password_file)
+ {
+ DBG(DBG_info, "xsane authorization: opened %s as password file\n", password_filename);
+ /* file format: "username:password:resource" */
+ while (fgets(buf, sizeof(buf), password_file))
+ {
+ char *stored_username;
+ char *stored_password;
+ char *stored_resource;
+ char *marker;
+
+ marker = strrchr(buf, '\n');
+ if (marker)
+ {
+ *marker = 0; /* remove \n at end of read line */
+ }
+
+ marker = strrchr(buf, '\r');
+ if (marker)
+ {
+ *marker = 0; /* remove \r at end of read line (eg for windows file) */
+ }
+
+ marker = strchr(buf, ':');
+ if (marker)
+ {
+ stored_username = buf;
+ *marker = 0; /* set \0 to end of stored_username */
+ stored_password = marker + 1;
+
+ marker = strchr(stored_password, ':');
+ if (marker)
+ {
+ *marker = 0; /* set \0 to end of stored_password */
+ stored_resource = marker + 1;
+
+ if (strcmp(stored_resource, resource_string) == 0) /* password file resource equals requested resource */
+ {
+ strcpy(username, stored_username);
+ strcpy(password, stored_password);
+ query_user = 0;
+ }
+ }
+ }
+ }
+
+ fclose(password_file);
+ }
+ else
+ {
+ DBG(DBG_info, "xsane authorization: could not open existing password file %s\n", password_filename);
+ }
+ }
+ }
+ else
+ {
+ DBG(DBG_info, "xsane authorization: password file %s does not exist\n", password_filename);
+ }
+
+ if (query_user)
+ {
+ authorize_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(authorize_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(authorize_dialog), FALSE, FALSE, FALSE);
+ gtk_signal_connect(GTK_OBJECT(authorize_dialog), "delete_event",
+ GTK_SIGNAL_FUNC(xsane_authorization_button_callback), (void *) -1); /* -1 = cancel */
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_AUTHORIZE);
+ gtk_window_set_title(GTK_WINDOW(authorize_dialog), buf);
+ xsane_set_window_icon(authorize_dialog, 0);
+
+ vbox = gtk_vbox_new(/* not homogeneous */ FALSE, 10); /* y-space between all box items */
+ gtk_container_add(GTK_CONTAINER(authorize_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* print resourece string */
+ snprintf(buf, sizeof(buf), "\n\n%s %s", TEXT_AUTHORIZATION_REQ, resource_string);
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); /* y-space around authorization text */
+ gtk_widget_show(label);
+
+ /* print securety of password transmission */
+ if (secure_password_transmission)
+ {
+ snprintf(buf, sizeof(buf), "%s\n", TEXT_AUTHORIZATION_SECURE);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "%s\n", TEXT_AUTHORIZATION_INSECURE);
+ }
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); /* y-space around authorization text */
+ gtk_widget_show(label);
+
+ /* ask for username */
+ hbox = gtk_hbox_new(FALSE, 10); /* x-space between label and input filed */
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); /* y-space around inner items */
+
+ label = gtk_label_new(TEXT_USERNAME);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10); /* x-space around label */
+ gtk_widget_show(label);
+
+ username_widget = gtk_entry_new_with_max_length(SANE_MAX_USERNAME_LEN-1);
+ gtk_widget_set_usize(username_widget, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(username_widget), "");
+ gtk_box_pack_end(GTK_BOX(hbox), username_widget, FALSE, FALSE, 10); /* x-space around input filed */
+ gtk_widget_show(username_widget);
+ gtk_widget_show(hbox);
+
+
+ /* ask for password */
+ hbox = gtk_hbox_new(FALSE, 10); /* x-space between label and input filed */
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); /* y-space around inner items */
+
+ label = gtk_label_new(TEXT_PASSWORD);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10); /* x-space around label */
+ gtk_widget_show(label);
+
+ password_widget = gtk_entry_new_with_max_length(SANE_MAX_PASSWORD_LEN-1);
+ gtk_entry_set_visibility(GTK_ENTRY(password_widget), FALSE); /* make entered text invisible */
+ gtk_widget_set_usize(password_widget, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(password_widget), "");
+ gtk_box_pack_end(GTK_BOX(hbox), password_widget, FALSE, FALSE, 10); /* x-space around input filed */
+ gtk_widget_show(password_widget);
+ gtk_widget_show(hbox);
+
+ /* buttons */
+ hbox = gtk_hbox_new(TRUE, 10); /* x-space between buttons */
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 10); /* y-space around buttons */
+
+ button = gtk_button_new_with_label(BUTTON_OK);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(xsane_authorization_button_callback), (void *) 1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 10); /* x-space around OK-button */
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(xsane_authorization_button_callback), (void *) -1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 10); /* x-space around cancel-button */
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+
+ gtk_widget_show(authorize_dialog);
+
+
+ username[0]=0;
+ password[0]=0;
+
+ authorization_flag = 0;
+
+ /* wait for ok or cancel */
+ while (authorization_flag == 0)
+ {
+ gtk_main_iteration();
+ }
+
+ if (authorization_flag == 1) /* 1=ok, -1=cancel */
+ {
+ input = gtk_entry_get_text(GTK_ENTRY(username_widget));
+ len = strlen(input);
+ memcpy(username, input, len);
+ username[len] = 0;
+
+ input = gtk_entry_get_text(GTK_ENTRY(password_widget));
+ len = strlen(input);
+ memcpy(password, input, len);
+ password[len] = 0;
+ }
+ gtk_widget_destroy(authorize_dialog);
+ }
+
+ if (secure_password_transmission)
+ {
+ DBG(DBG_info, "xsane authorization: calculating md5digest of password\n");
+
+ snprintf(buf, sizeof(buf), "%s%s", (strstr(resource, "$MD5$")) + 5, password); /* random string from backend + password */
+ md5_buffer(buf, strlen(buf), md5digest); /* calculate md5digest */
+#if 0 /* makes problems with WIN32 */
+ memset(password, 0, SANE_MAX_PASSWORD_LEN); /* clear password */
+#endif
+
+ sprintf(password, "$MD5$%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
+ md5digest[0], md5digest[1], md5digest[2], md5digest[3],
+ md5digest[4], md5digest[5], md5digest[6], md5digest[7],
+ md5digest[8], md5digest[9], md5digest[10], md5digest[11],
+ md5digest[12], md5digest[13], md5digest[14], md5digest[15]);
+ }
+
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_progress_cancel(GtkWidget *widget, gpointer data)
+{
+ void *cancel_data_pointer;
+ GtkFunction callback = (GtkFunction) data;
+
+ DBG(DBG_proc, "xsane_progress_cancel\n");
+
+ cancel_data_pointer = gtk_object_get_data(GTK_OBJECT(widget), "progress-cancel-data-pointer");
+
+ (callback)(cancel_data_pointer);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_progress_new(char *bar_text, char *info, GtkSignalFunc callback, int *cancel_data_pointer)
+{
+ DBG(DBG_proc, "xsane_progress_new\n");
+
+ gtk_label_set(GTK_LABEL(xsane.info_label), info);
+ gtk_progress_set_format_string(GTK_PROGRESS(xsane.progress_bar), bar_text);
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(xsane.progress_bar), 0.0);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.cancel_button), TRUE);
+ gtk_object_set_data(GTK_OBJECT(xsane.cancel_button), "progress-cancel-data-pointer", cancel_data_pointer);
+ gtk_signal_connect(GTK_OBJECT(xsane.cancel_button), "clicked", (GtkSignalFunc) xsane_progress_cancel, callback);
+ xsane.cancel_callback = callback;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_progress_clear()
+{
+ DBG(DBG_proc, "xsane_progress_clear\n");
+
+ /* do not call xsane_update_param() here because it overrites the good scanning parameters with bad guessed ones */
+ gtk_progress_set_format_string(GTK_PROGRESS(xsane.progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(xsane.progress_bar), 0.0);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.cancel_button), FALSE);
+
+ if (xsane.cancel_callback)
+ {
+ gtk_signal_disconnect_by_func(GTK_OBJECT(xsane.cancel_button), (GtkSignalFunc) xsane_progress_cancel, xsane.cancel_callback);
+ xsane.cancel_callback = 0;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_progress_update(gfloat newval)
+{
+ DBG(DBG_proc, "xsane_progress_update\n");
+
+ if (newval < 0.0)
+ {
+ newval = 0.0;
+ }
+
+ if (newval > 1.0)
+ {
+ newval = 1.0;
+ }
+
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(xsane.progress_bar), newval);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* add the scanner vendor´s logo if available */
+/* when the logo is not available use the xsane logo */
+GtkWidget *xsane_vendor_pixmap_new(GdkWindow *window, GtkWidget *parent)
+{
+ char filename[PATH_MAX];
+ GtkWidget *hbox, *vbox;
+ GtkWidget *pixmapwidget = NULL;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap = NULL;
+
+ if (xsane.devlist[xsane.selected_dev]->vendor)
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", NULL, NULL, xsane.devlist[xsane.selected_dev]->vendor, "-logo.xpm", XSANE_PATH_SYSTEM);
+ pixmap = gdk_pixmap_create_from_xpm(window, &mask, xsane.bg_trans, filename);
+ }
+
+ if (!pixmap) /* vendor logo not available, use backend logo */
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", NULL, NULL, xsane.backend, "-logo.xpm", XSANE_PATH_SYSTEM);
+ pixmap = gdk_pixmap_create_from_xpm(window, &mask, xsane.bg_trans, filename);
+ }
+
+ if (!pixmap) /* backend logo not available, use xsane logo */
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", NULL, NULL, "sane-xsane", "-logo.xpm", XSANE_PATH_SYSTEM);
+ pixmap = gdk_pixmap_create_from_xpm(window, &mask, xsane.bg_trans, filename);
+ }
+
+ if (pixmap) /* ok, we have a pixmap, so let´s show it */
+ {
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_box_pack_end(GTK_BOX(parent), vbox, FALSE, FALSE, 0);
+ gtk_widget_show(vbox);
+
+ hbox = gtk_hbox_new(TRUE /* homogeneous */ , 2);
+ gtk_container_add(GTK_CONTAINER(vbox), hbox);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 0);
+ gtk_widget_show(hbox);
+
+ pixmapwidget = gtk_pixmap_new(pixmap, mask); /* now add the pixmap */
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE /* expand */, FALSE /* fill */, 2);
+ gdk_pixmap_unref(pixmap);
+ gtk_widget_show(pixmapwidget);
+ }
+
+ return pixmapwidget;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+GtkWidget *xsane_toggle_button_new_with_pixmap(GdkWindow *window, GtkWidget *parent, const char *xpm_d[], const char *desc,
+ int *state, void *xsane_toggle_button_callback)
+{
+ GtkWidget *button;
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+
+ DBG(DBG_proc, "xsane_toggle_button_new_with_pixmap\n");
+
+ button = gtk_toggle_button_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, desc);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, xsane.bg_trans, (gchar **) xpm_d);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_container_add(GTK_CONTAINER(button), pixmapwidget);
+ gtk_widget_show(pixmapwidget);
+ gdk_pixmap_unref(pixmap);
+
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *state);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_toggle_button_callback, (GtkObject *) state);
+ gtk_box_pack_start(GTK_BOX(parent), button, FALSE, FALSE, 0);
+ gtk_widget_show(button);
+
+ return button;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+GtkWidget *xsane_button_new_with_pixmap(GdkWindow *window, GtkWidget *parent, const char *xpm_d[], const char *desc,
+ void *xsane_button_callback, gpointer data)
+{
+ GtkWidget *button;
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+
+ DBG(DBG_proc, "xsane_button_new_with_pixmap\n");
+
+ button = gtk_button_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, desc);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, xsane.bg_trans, (gchar **) xpm_d);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_container_add(GTK_CONTAINER(button), pixmapwidget);
+ gtk_widget_show(pixmapwidget);
+ gdk_pixmap_unref(pixmap);
+
+ if (xsane_button_callback)
+ {
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_button_callback, data);
+ }
+ gtk_box_pack_start(GTK_BOX(parent), button, FALSE, FALSE, 0);
+ gtk_widget_show(button);
+
+ return(button);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_option_menu_lookup(GSGMenuItem menu_items[], const char *string)
+{
+ int i;
+
+ DBG(DBG_proc, "xsane_option_menu_lookup\n");
+
+ for (i = 0; strcmp(menu_items[i].label, string) != 0; ++i);
+ return i;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_option_menu_callback(GtkWidget *widget, gpointer data)
+{
+ GSGMenuItem *menu_item = data;
+ GSGDialogElement *elem = menu_item->elem;
+ const SANE_Option_Descriptor *opt;
+ int opt_num;
+ double dval;
+ SANE_Word val;
+ void *valp = &val;
+
+ DBG(DBG_proc, "xsane_option_menu_callback\n");
+
+ opt_num = elem - xsane.element;
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ sscanf(menu_item->label, "%d", &val);
+ break;
+
+ case SANE_TYPE_FIXED:
+ sscanf(menu_item->label, "%lg", &dval);
+ val = SANE_FIX(dval);
+ break;
+
+ case SANE_TYPE_STRING:
+ valp = menu_item->label;
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_option_menu_callback: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ break;
+ }
+ xsane_back_gtk_set_option(opt_num, valp, SANE_ACTION_SET_VALUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_option_menu_new(GtkWidget *parent, char *str_list[], const char *val, int option_number, const char *desc,
+ void *option_menu_callback, SANE_Int settable, const gchar *widget_name)
+{
+ GtkWidget *option_menu, *menu, *item;
+ GSGMenuItem *menu_items;
+ GSGDialogElement *elem;
+ int i, num_items;
+
+ DBG(DBG_proc, "xsane_option_menu_new\n");
+
+ elem = xsane.element + option_number;
+
+ for (num_items = 0; str_list[num_items]; ++num_items);
+ menu_items = malloc(num_items * sizeof(menu_items[0]));
+
+ menu = gtk_menu_new();
+ if (widget_name)
+ {
+ gtk_widget_set_name(menu, widget_name);
+ }
+
+ for (i = 0; i < num_items; ++i)
+ {
+ item = gtk_menu_item_new_with_label(_BGT(str_list[i]));
+ gtk_container_add(GTK_CONTAINER(menu), item);
+
+ if (option_menu_callback)
+ {
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) option_menu_callback, menu_items + i);
+ }
+ else
+ {
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_option_menu_callback, menu_items + i);
+ }
+
+ gtk_widget_show(item);
+
+ menu_items[i].label = str_list[i];
+ menu_items[i].elem = elem;
+ menu_items[i].index = i;
+ }
+
+ option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, option_menu, desc);
+ gtk_box_pack_end(GTK_BOX(parent), option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(option_menu), xsane_option_menu_lookup(menu_items, val));
+
+ gtk_widget_show(option_menu);
+
+ gtk_widget_set_sensitive(option_menu, settable);
+
+ elem->widget = option_menu;
+ elem->menu_size = num_items;
+ elem->menu = menu_items;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_option_menu_new_with_pixmap(GdkWindow *window, GtkBox *parent, const char *xpm_d[], const char *desc,
+ char *str_list[], const char *val,
+ GtkObject **data, int option,
+ void *option_menu_callback, SANE_Int settable, const gchar *widget_name)
+{
+ GtkWidget *hbox;
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+
+ DBG(DBG_proc, "xsane_option_menu_new_with_pixmap\n");
+
+ hbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_start(parent, hbox, FALSE, FALSE, 0);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, xsane.bg_trans, (gchar **) xpm_d);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gtk_widget_show(pixmapwidget);
+
+ xsane_option_menu_new(hbox, str_list, val, option, desc, option_menu_callback, settable, widget_name);
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_scale_new(GtkBox *parent, char *labeltext, const char *desc,
+ float min, float max, float quant, float page_step, float page_size,
+ int digits, double *val, GtkObject **data, void *xsane_scale_callback, SANE_Int settable)
+{
+ GtkWidget *hbox;
+ GtkWidget *label;
+ GtkWidget *scale;
+
+ DBG(DBG_proc, "xsane_scale_new\n");
+
+ hbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_start(parent, hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(labeltext);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+
+ *data = gtk_adjustment_new(*val, min, max, quant, page_step, page_size);
+ scale = gtk_hscale_new(GTK_ADJUSTMENT(*data));
+ xsane_back_gtk_set_tooltip(xsane.tooltips, scale, desc);
+ gtk_widget_set_usize(scale, 201, 0); /* minimum scale with = 201 pixels */
+ gtk_range_set_update_policy(GTK_RANGE(scale), preferences.gtk_update_policy);
+ /* GTK_UPDATE_CONTINUOUS, GTK_UPDATE_DISCONTINUOUS, GTK_UPDATE_DELAYED */
+ gtk_scale_set_value_pos(GTK_SCALE(scale), GTK_POS_TOP);
+ gtk_scale_set_digits(GTK_SCALE(scale), digits);
+ gtk_box_pack_end(GTK_BOX(hbox), scale, FALSE, TRUE, 5); /* make scale not sizeable */
+
+ if (xsane_scale_callback)
+ {
+ gtk_signal_connect(*data, "value_changed", (GtkSignalFunc) xsane_scale_callback, val);
+ }
+
+ gtk_widget_show(label);
+ gtk_widget_show(scale);
+ gtk_widget_show(hbox);
+
+ gtk_widget_set_sensitive(scale, settable);
+
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_scale_new_with_pixmap(GdkWindow *window, GtkBox *parent, const char *xpm_d[], const char *desc,
+ float min, float max, float quant, float page_step, float page_size,
+ int digits, double *val, GtkObject **data, int option, void *xsane_scale_callback, SANE_Int settable)
+{
+ GtkWidget *hbox;
+ GtkWidget *scale;
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+
+ DBG(DBG_proc, "xsane_scale_new_with_pixmap\n");
+
+ hbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_start(parent, hbox, FALSE, FALSE, 0);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(window, &mask, xsane.bg_trans, (gchar **) xpm_d);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+
+ *data = gtk_adjustment_new(*val, min, max, quant, page_step, page_size);
+ scale = gtk_hscale_new(GTK_ADJUSTMENT(*data));
+ xsane_back_gtk_set_tooltip(xsane.tooltips, scale, desc);
+ gtk_widget_set_usize(scale, 201, 0); /* minimum scale with = 201 pixels */
+ gtk_range_set_update_policy(GTK_RANGE(scale), preferences.gtk_update_policy);
+ /* GTK_UPDATE_CONTINUOUS, GTK_UPDATE_DISCONTINUOUS, GTK_UPDATE_DELAYED */
+ gtk_scale_set_value_pos(GTK_SCALE(scale), GTK_POS_TOP);
+ gtk_scale_set_digits(GTK_SCALE(scale), digits);
+ gtk_box_pack_end(GTK_BOX(hbox), scale, TRUE, TRUE, 5); /* make scale sizeable */
+
+ if (xsane_scale_callback)
+ {
+ gtk_signal_connect(*data, "value_changed", (GtkSignalFunc) xsane_scale_callback, val);
+ }
+
+ gtk_widget_show(pixmapwidget);
+ gtk_widget_show(scale);
+ gtk_widget_show(hbox);
+
+ gtk_widget_set_sensitive(scale, settable);
+
+ gdk_pixmap_unref(pixmap);
+
+ if (option)
+ {
+ GSGDialogElement *elem;
+
+ elem=xsane.element + option;
+ elem->data = *data;
+ elem->widget = scale;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_separator_new(GtkWidget *xsane_parent, int dist)
+{
+ GtkWidget *xsane_separator;
+
+ DBG(DBG_proc, "xsane_separator_new\n");
+
+ xsane_separator = gtk_hseparator_new();
+ gtk_box_pack_start(GTK_BOX(xsane_parent), xsane_separator, FALSE, FALSE, dist);
+ gtk_widget_show(xsane_separator);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+GtkWidget *xsane_info_table_text_new(GtkWidget *table, gchar *text, int row, int colomn)
+{
+ GtkWidget *hbox, *label;
+
+ DBG(DBG_proc, "xsane_info_table_text_new\n");
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_table_attach_defaults(GTK_TABLE(table), hbox, row, row+1, colomn, colomn+1);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(text);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10);
+ gtk_widget_show(label);
+
+ return label;
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#if 0
+GtkWidget *xsane_info_text_new(GtkWidget *parent, gchar *text)
+{
+ GtkWidget *hbox, *label;
+
+ DBG(DBG_proc, "xsane_info_text_new\n");
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(parent), hbox, TRUE, TRUE, 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(text);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10);
+ gtk_widget_show(label);
+
+ return label;
+}
+#endif
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_refresh_dialog(void)
+{
+ DBG(DBG_proc, "xsane_refresh_dialog\n");
+
+ xsane_back_gtk_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* Update the info line with the latest size information and update histogram. */
+void xsane_update_param(void *arg)
+{
+ gchar buf[200];
+ const char *unit;
+
+ DBG(DBG_proc, "xsane_update_param\n");
+
+ if (!xsane.info_label)
+ {
+ return;
+ }
+
+ if (xsane.block_update_param) /* if we change more than one value, we only want to update all once */
+ {
+ return;
+ }
+
+ if (xsane.preview)
+ {
+ preview_update_surface(xsane.preview, 0);
+ }
+
+ if (sane_get_parameters(xsane.dev, &xsane.param) == SANE_STATUS_GOOD)
+ {
+ float size = (float) xsane.param.bytes_per_line * (float) xsane.param.lines;
+ int depth = xsane.param.depth;
+
+ if ( (depth == 16) && (preferences.reduce_16bit_to_8bit) )
+ {
+ depth = 8;
+ size /= 2;
+ }
+
+ unit = "B";
+
+ if (xsane.param.format >= SANE_FRAME_RED && xsane.param.format <= SANE_FRAME_BLUE)
+ {
+ size *= 3.0;
+ depth *= 3;
+ }
+ else if (xsane.param.format == SANE_FRAME_RGB)
+ {
+ depth *= 3;
+ }
+#ifdef SUPPORT_RGBA
+ else if (xsane.param.format == SANE_FRAME_RGBA)
+ {
+ depth *= 4;
+ }
+#endif
+
+ if (size >= 1024.0 * 1024.0)
+ {
+ size /= 1024.0 * 1024.0;
+ unit = "MB";
+ }
+ else if (size >= 1024.0)
+ {
+ size /= 1024.0;
+ unit = "KB";
+ }
+ snprintf(buf, sizeof(buf), "%d*%d*%d (%1.1f %s)", xsane.param.pixels_per_line, xsane.param.lines, depth, size, unit);
+
+ if (xsane.param.format == SANE_FRAME_GRAY)
+ {
+ xsane.xsane_colors = 1;
+ }
+#ifdef SUPPORT_RGBA
+ else if (xsane.param.format == SANE_FRAME_RGBA)
+ {
+ xsane.xsane_colors = 4;
+ }
+#endif
+ else /* RGB */
+ {
+ xsane.xsane_colors = 3;
+ }
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), TEXT_INVALID_PARAMS);
+ }
+
+ gtk_label_set(GTK_LABEL(xsane.info_label), buf);
+
+
+ if (xsane.preview->surface_unit == SANE_UNIT_MM)
+ {
+ double dx, dy;
+
+ unit = xsane_back_gtk_unit_string(xsane.preview->surface_unit);
+
+ dx = fabs(xsane.preview->selection.coordinate[2] - xsane.preview->selection.coordinate[0]) / preferences.length_unit;
+ dy = fabs(xsane.preview->selection.coordinate[3] - xsane.preview->selection.coordinate[1]) / preferences.length_unit;
+
+ snprintf(buf, sizeof(buf), "%1.2f %s x %1.2f %s", dx, unit, dy, unit);
+ gtk_progress_set_format_string(GTK_PROGRESS(xsane.progress_bar), buf);
+ }
+
+ xsane_update_histogram(TRUE /* update raw */);
+
+ preview_display_valid(xsane.preview);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_define_output_filename(void)
+{
+ char buffer[256];
+
+ DBG(DBG_proc, "xsane_define_output_filename\n");
+
+ if (xsane.output_filename)
+ {
+ free(xsane.output_filename);
+ xsane.output_filename = 0;
+ }
+
+ if (!xsane.force_filename)
+ {
+ if (xsane.filetype)
+ {
+ snprintf(buffer, sizeof(buffer), "%s%s", preferences.filename, xsane.filetype);
+ xsane.output_filename = strdup(buffer);
+ }
+ else
+ {
+ xsane.output_filename = strdup(preferences.filename);
+ }
+ }
+ else
+ {
+ xsane.output_filename = strdup(xsane.external_filename);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_identify_output_format(char *filename, char **ext)
+{
+ char *extension;
+ int output_format=-1;
+
+ DBG(DBG_proc, "xsane_identify_output_format\n");
+
+ extension = strrchr(filename, '.');
+ if (extension)
+ {
+ extension++; /* skip "." */
+ }
+
+ output_format = XSANE_UNKNOWN;
+
+ if (extension)
+ {
+ if (!strcasecmp(extension, "raw"))
+ {
+ if (xsane.param.depth == 16)
+ {
+ output_format = XSANE_RAW16;
+ }
+ }
+ else if ( (!strcasecmp(extension, "pnm")) || (!strcasecmp(extension, "ppm")) ||
+ (!strcasecmp(extension, "pgm")) || (!strcasecmp(extension, "pbm")) )
+ {
+ if (xsane.param.depth == 16)
+ {
+ output_format = XSANE_PNM16;
+ }
+ else
+ {
+ output_format = XSANE_PNM;
+ }
+ }
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ else if (!strcasecmp(extension, "png"))
+ {
+ output_format = XSANE_PNG;
+ }
+#endif
+#endif
+#ifdef HAVE_LIBJPEG
+ else if ( (!strcasecmp(extension, "jpg")) || (!strcasecmp(extension, "jpeg")) )
+ {
+ output_format = XSANE_JPEG;
+ }
+#endif
+ else if (!strcasecmp(extension, "ps"))
+ {
+ output_format = XSANE_PS;
+ }
+#ifdef HAVE_LIBTIFF
+ else if ( (!strcasecmp(extension, "tif")) || (!strcasecmp(extension, "tiff")) )
+ {
+ output_format = XSANE_TIFF;
+ }
+#endif
+#ifdef SUPPORT_RGBA
+ else if (!strcasecmp(extension, "rgba"))
+ {
+ output_format = XSANE_RGBA;
+ }
+#endif
+ }
+
+ if (ext)
+ {
+ if (extension)
+ {
+ *ext = strdup(extension);
+ }
+ else
+ {
+ *ext = 0;
+ }
+ }
+
+ return output_format;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_change_working_directory(void)
+{
+ char filename[PATH_MAX];
+ char windowname[256];
+
+ DBG(DBG_proc, "xsane_change_working_directory\n");
+
+ xsane_set_sensitivity(FALSE);
+
+ sprintf(windowname, "%s %s %s", xsane.prog_name, WINDOW_CHANGE_WORKING_DIR, xsane.device_text);
+ if (getcwd(filename, sizeof(filename)))
+ {
+ xsane_back_gtk_get_filename(windowname, filename, sizeof(filename), filename, TRUE, FALSE, TRUE);
+ if (chdir(filename))
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s (%s).", ERR_CHANGE_WORKING_DIR, filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ xsane_set_sensitivity(TRUE);
+ return;
+ }
+ }
+
+ xsane_set_sensitivity(TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int license_flag;
+static GtkWidget *license_dialog = NULL;
+
+static void xsane_license_button_callback(GtkWidget *widget, gpointer data)
+{
+ license_flag = (int) data;
+
+ DBG(DBG_proc ,"xsane_license_button_callback(%d)\n", license_flag);
+
+ gtk_widget_destroy(license_dialog);
+ license_dialog = NULL;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_display_license(int ask_for_accept)
+/* returns FALSE if accepted, TRUE if not accepted */
+{
+ GtkWidget *vbox, *hbox, *button, *label;
+ GtkWidget *text, *vscrollbar;
+ GtkAccelGroup *accelerator_group;
+ char buf[1024];
+ char filename[PATH_MAX];
+ FILE *infile;
+
+ DBG(DBG_proc, "xsane_display_license(%d)\n", ask_for_accept);
+
+ if (license_dialog) /* make sure the dialog is only opend once */
+ {
+ return 0;
+ }
+
+ license_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_widget_set_usize(license_dialog, 550, 580);
+ gtk_window_set_position(GTK_WINDOW(license_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(license_dialog), FALSE, TRUE, FALSE);
+ gtk_signal_connect(GTK_OBJECT(license_dialog), "delete_event",
+ GTK_SIGNAL_FUNC(xsane_license_button_callback), (void *) -1); /* -1 = cancel */
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_LICENSE);
+ gtk_window_set_title(GTK_WINDOW(license_dialog), buf);
+ xsane_set_window_icon(license_dialog, 0);
+
+ accelerator_group = gtk_accel_group_new();
+ gtk_accel_group_attach(accelerator_group, GTK_OBJECT(license_dialog));
+
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 5);
+ gtk_container_add(GTK_CONTAINER(license_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* display XSane copyright message */
+ snprintf(buf, sizeof(buf), "XSane %s %s\n"
+ "%s %s\n"
+ "\n"
+ "%s\n"
+ "%s %s\n"
+ "%s %s\n",
+ TEXT_VERSION, XSANE_VERSION,
+ XSANE_COPYRIGHT_SIGN, XSANE_COPYRIGHT_TXT,
+ TEXT_GPL,
+ TEXT_HOMEPAGE, XSANE_HOMEPAGE,
+ TEXT_EMAIL, XSANE_EMAIL);
+
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
+ gtk_widget_show(label);
+
+ /* add hbox with text and scrollbar to display the license text */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, TRUE, TRUE, 0);
+ gtk_widget_show(hbox);
+
+ /* Create the GtkText widget */
+ text = gtk_text_new(NULL, NULL);
+ gtk_text_set_editable(GTK_TEXT(text), FALSE); /* text is not editable */
+ gtk_text_set_word_wrap(GTK_TEXT(text), TRUE); /* wrap complete words */
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 0);
+ gtk_widget_show(text);
+
+ /* Add a vertical scrollbar to the GtkText widget */
+ vscrollbar = gtk_vscrollbar_new(GTK_TEXT(text)->vadj);
+ gtk_box_pack_start(GTK_BOX(hbox), vscrollbar, FALSE, FALSE, 0);
+ gtk_widget_show(vscrollbar);
+
+ /* Freeze the text widget, ready for multiple updates */
+ gtk_text_freeze(GTK_TEXT(text));
+
+ /* Load the file text.c into the text window */
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-license", 0, ".txt", XSANE_PATH_SYSTEM);
+ infile = fopen(filename, "r");
+
+ if (infile)
+ {
+ char buffer[4096];
+ int nchars;
+
+ while (!feof(infile))
+ {
+ nchars = fread(buffer, 1, 4096, infile);
+ gtk_text_insert(GTK_TEXT(text), NULL, NULL, NULL, buffer, nchars);
+ }
+
+ fclose(infile);
+ }
+ else
+ {
+ DBG(DBG_error0, "ERROR: license text not found. Looks like xsane is not installed correct.\n");
+ return TRUE;
+ }
+
+ /* Thaw the text widget, allowing the updates to become visible */
+ gtk_text_thaw(GTK_TEXT(text));
+
+
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ if (ask_for_accept) /* show accept + not accept buttons */
+ {
+ button = gtk_button_new_with_label(BUTTON_ACCEPT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_license_button_callback, (void *) 0 /* accept */);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_NOT_ACCEPT);
+ gtk_widget_add_accelerator(button, "clicked", accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_license_button_callback, (void *) 1 /* not accept */);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+ }
+ else /* show close button */
+ {
+ button = gtk_button_new_with_label(BUTTON_CLOSE);
+ gtk_widget_add_accelerator(button, "clicked", accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_license_button_callback, (void *) 0 /* ok = accept */);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+ }
+
+ gtk_widget_show(hbox);
+ gtk_widget_show(vbox);
+ gtk_widget_show(license_dialog);
+
+ if (ask_for_accept == 0) /* do not ask for accept */
+ {
+ return 0;
+ }
+
+ license_flag = -255;
+
+ while(license_flag == -255)
+ {
+ gtk_main_iteration(); /* allow gtk to react to user action */
+ }
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ return license_flag;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_widget_get_uposition(GtkWidget *gtk_window, gint *x, gint *y)
+{
+ if (xsane.get_deskrelative_origin)
+ {
+ DBG(DBG_proc, "xsane_widget_get_uposition(deskrelative)\n");
+ gdk_window_get_deskrelative_origin(gtk_window->window, x, y);
+ }
+ else
+ {
+ DBG(DBG_proc, "xsane_widget_get_uposition(root)\n");
+ gdk_window_get_root_origin(gtk_window->window, x, y);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_widget_test_uposition(GtkWidget *gtk_window)
+{
+ gint x, y, x_orig, y_orig;
+
+ DBG(DBG_proc, "xsane_widget_test_uposition\n");
+
+ gtk_widget_realize(gtk_window);
+
+ while (!GTK_WIDGET_REALIZED(gtk_window) || (gtk_events_pending()))
+ {
+ gtk_main_iteration();
+ }
+
+ xsane_widget_get_uposition(gtk_window, &x, &y);
+ xsane_widget_get_uposition(gtk_window, &x, &y);
+
+ DBG(DBG_info, "xsane_widget_test_uposition: original position = %d, %d\n", x, y);
+
+ x_orig = x;
+ y_orig = y;
+ gtk_widget_set_uposition(gtk_window, x, y);
+
+ xsane_widget_get_uposition(gtk_window, &x, &y);
+ DBG(DBG_info, "xsane_widget_test_uposition: new position = %d, %d\n", x, y);
+
+ if ( (x != x_orig) || (y != y_orig) )
+ {
+ DBG(DBG_proc, "xsane_widget_test_uposition: using deskrelative function\n");
+ xsane.get_deskrelative_origin = 1;
+ }
+ else
+ {
+ DBG(DBG_proc, "xsane_widget_test_uposition: using root function\n");
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-front-gtk.h b/src/xsane-front-gtk.h
new file mode 100644
index 0000000..b894b06
--- /dev/null
+++ b/src/xsane-front-gtk.h
@@ -0,0 +1,83 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-front-gtk.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include <sane/sane.h>
+#include "xsane.h"
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef xsane_front_gtk_h
+#define xsane_front_gtk_h
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern int xsane_parse_options(char *options, char *argv[]);
+extern void xsane_get_bounds(const SANE_Option_Descriptor *opt, double *minp, double *maxp);
+extern double xsane_find_best_resolution(int well_known_option, double dpi);
+extern int xsane_set_resolution(int well_known_option, double resolution);
+extern void xsane_set_all_resolutions(void);
+extern void xsane_define_maximum_output_size();
+extern void xsane_close_dialog_callback(GtkWidget *widget, gpointer data);
+extern void xsane_authorization_button_callback(GtkWidget *widget, gpointer data);
+extern gint xsane_authorization_callback(SANE_String_Const resource,
+ SANE_Char username[SANE_MAX_USERNAME_LEN],
+ SANE_Char password[SANE_MAX_PASSWORD_LEN]);
+extern void xsane_progress_cancel(GtkWidget *widget, gpointer data);
+extern void xsane_progress_new(char *bar_text, char *info, GtkSignalFunc callback, int *cancel_data_pointer);
+extern void xsane_progress_update(gfloat newval);
+extern void xsane_progress_clear();
+extern GtkWidget *xsane_vendor_pixmap_new(GdkWindow *window, GtkWidget *parent);
+extern GtkWidget *xsane_toggle_button_new_with_pixmap(GdkWindow *window, GtkWidget *parent, const char *xpm_d[], const char *desc,
+ int *state, void *xsane_toggle_button_callback);
+extern GtkWidget *xsane_button_new_with_pixmap(GdkWindow *window, GtkWidget *parent, const char *xpm_d[], const char *desc,
+ void *xsane_button_callback, gpointer data);
+extern void xsane_pixmap_new(GtkWidget *parent, char *title, int width, int height, XsanePixmap *hist);
+extern void xsane_option_menu_new(GtkWidget *parent, char *str_list[], const char *val, int option_number, const char *desc,
+ void *option_menu_callback, SANE_Int settable, const gchar *widget_name);
+extern void xsane_option_menu_new_with_pixmap(GdkWindow *window, GtkBox *parent, const char *xpm_d[], const char *desc,
+ char *str_list[], const char *val,
+ GtkObject **data, int option,
+ void *option_menu_callback, SANE_Int settable, const gchar *widget_name);
+extern void xsane_scale_new(GtkBox *parent, char *labeltext, const char *desc,
+ float min, float max, float quant, float page_step, float page_size,
+ int digits, double *val, GtkObject **data, void *xsane_scale_callback, SANE_Int settable);
+extern void xsane_scale_new_with_pixmap(GdkWindow *window, GtkBox *parent, const char *xpm_d[], const char *desc,
+ float min, float max, float quant, float page_step, float page_size, int digits,
+ double *val, GtkObject **data, int option, void *xsane_scale_callback, SANE_Int settable);
+extern void xsane_separator_new(GtkWidget *xsane_parent, int dist);
+extern GtkWidget *xsane_info_table_text_new(GtkWidget *table, gchar *text, int row, int colomn);
+extern GtkWidget *xsane_info_text_new(GtkWidget *parent, gchar *text);
+extern void xsane_refresh_dialog(void);
+extern void xsane_update_param(void *arg);
+extern void xsane_define_output_filename(void);
+extern int xsane_identify_output_format(char *filename, char **ext);
+extern void xsane_change_working_directory(void);
+extern int xsane_display_license(int ask_for_accept);
+extern void xsane_widget_get_uposition(GtkWidget *gtk_window, gint *x, gint *y);
+extern void xsane_widget_test_uposition(GtkWidget *gtk_window);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#endif
+
diff --git a/src/xsane-gamma.c b/src/xsane-gamma.c
new file mode 100644
index 0000000..d47f6b7
--- /dev/null
+++ b/src/xsane-gamma.c
@@ -0,0 +1,2504 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-gamma.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preferences.h"
+#include "xsane-preview.h"
+#include "xsane-save.h"
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+#include <png.h>
+#include <zlib.h>
+#endif
+#endif
+
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations: */
+
+void xsane_clear_histogram(XsanePixmap *hist);
+static void xsane_draw_histogram_with_points(XsanePixmap *hist,
+ SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue,
+ int show_red, int show_green, int show_blue, int show_inten, double scale);
+static void xsane_draw_histogram_with_lines(XsanePixmap *hist,
+ SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue,
+ int show_red, int show_green, int show_blue, int show_inten, double scale);
+void xsane_draw_slider_level(XsaneSlider *slider);
+static void xsane_set_slider(XsaneSlider *slider, double min, double mid, double max);
+void xsane_update_slider(XsaneSlider *slider);
+void xsane_update_sliders(void);
+static gint xsane_slider_callback(GtkWidget *widget, GdkEvent *event, XsaneSlider *slider);
+void xsane_create_slider(XsaneSlider *slider);
+void xsane_create_histogram(GtkWidget *parent, const char *title, int width, int height, XsanePixmap *hist);
+void xsane_get_free_gamma_curve(gfloat *free_color_gamma_data, SANE_Int *gammadata,
+ int negative, double gamma, double brightness, double contrast,
+ int len, int maxout);
+static void xsane_calculate_auto_enhancement(SANE_Int *count_raw,
+ SANE_Int *count_raw_red, SANE_Int *count_raw_green, SANE_Int *count_raw_blue);
+void xsane_calculate_raw_histogram(void);
+void xsane_calculate_enh_histogram(void);
+void xsane_update_histogram(int update_raw);
+void xsane_histogram_toggle_button_callback(GtkWidget *widget, gpointer data);
+void xsane_create_preview_threshold_curve(u_char *gammadata, double threshold, int numbers);
+void xsane_create_preview_gamma_curve(u_char *gammadata, int negative, double gamma,
+ double brightness, double contrast,
+ double medium_shadow, double medium_highlight, double medium_gamma,
+ int numbers);
+void xsane_create_gamma_curve(SANE_Int *gammadata,
+ int negative, double gamma, double brightness, double contrast,
+ double medium_shadow, double medium_highlight, double medium_gamma,
+ int numbers, int maxout);
+void xsane_update_gamma_curve(int update_raw);
+static void xsane_enhancement_update(void);
+static void xsane_gamma_to_histogram(double *min, double *mid, double *max,
+ double contrast, double brightness, double gamma);
+void xsane_enhancement_by_gamma(void);
+void xsane_enhancement_restore_default(void);
+void xsane_enhancement_restore(void);
+void xsane_enhancement_store(void);
+static int xsane_histogram_to_gamma(XsaneSlider *slider, double *contrast, double contrast_offset, double *brightness, double brightness_offset, double *gamma, double gamma_multiplier);
+void xsane_enhancement_by_histogram(int update_gamma);
+static gint xsane_histogram_win_delete(GtkWidget *widget, gpointer data);
+void xsane_create_histogram_dialog(const char *devicetext);
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+static gint xsane_gamma_win_delete(GtkWidget *widget, gpointer data);
+#endif
+void xsane_create_gamma_dialog(const char *devicetext);
+void xsane_update_gamma_dialog(void);
+void xsane_set_auto_enhancement(void);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_clear_histogram(XsanePixmap *hist)
+{
+ GdkRectangle rect;
+
+ DBG(DBG_proc, "xsane_clear_histogram\n");
+
+ if(hist->pixmap)
+ {
+ rect.x=0;
+ rect.y=0;
+ rect.width = HIST_WIDTH;
+ rect.height = HIST_HEIGHT;
+
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_backg, TRUE, 0, 0, HIST_WIDTH, HIST_HEIGHT);
+ gtk_widget_draw(hist->pixmapwid, &rect);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_draw_histogram_with_points(XsanePixmap *hist,
+ SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue,
+ int show_red, int show_green, int show_blue, int show_inten, double scale)
+{
+ GdkRectangle rect;
+ int i;
+ int inten, red, green, blue;
+
+ DBG(DBG_proc, "xsane_draw_histogram_with_points\n");
+
+#define XD 1
+#define YD 2
+
+ if(hist->pixmap)
+ {
+ rect.x=0;
+ rect.y=0;
+ rect.width = HIST_WIDTH;
+ rect.height = HIST_HEIGHT;
+
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_backg, TRUE, 0, 0, HIST_WIDTH, HIST_HEIGHT);
+
+ red = 0;
+ green = 0;
+ blue = 0;
+
+ for (i=0; i < HIST_WIDTH; i++)
+ {
+ inten = show_inten * count[i] * scale;
+
+ if (xsane.xsane_colors > 1)
+ {
+ red = show_red * count_red[i] * scale;
+ green = show_green * count_green[i] * scale;
+ blue = show_blue * count_blue[i] * scale;
+ }
+
+ if (inten > HIST_HEIGHT)
+ inten = HIST_HEIGHT;
+
+ if (red > HIST_HEIGHT)
+ red = HIST_HEIGHT;
+
+ if (green > HIST_HEIGHT)
+ green = HIST_HEIGHT;
+
+ if (blue > HIST_HEIGHT)
+ blue = HIST_HEIGHT;
+
+
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_red, TRUE, i, HIST_HEIGHT - red, XD, YD);
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_green, TRUE, i, HIST_HEIGHT - green, XD, YD);
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_blue, TRUE, i, HIST_HEIGHT - blue, XD, YD);
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_black, TRUE, i, HIST_HEIGHT - inten, XD, YD);
+ }
+
+ gtk_widget_draw(hist->pixmapwid, &rect);
+ }
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_draw_histogram_with_lines(XsanePixmap *hist,
+ SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue,
+ int show_red, int show_green, int show_blue, int show_inten, double scale)
+{
+ GdkRectangle rect;
+ int i, j, k;
+ int inten, red, green, blue;
+ int inten0=0, red0=0, green0=0, blue0=0;
+ int val[4];
+ int val2[4];
+ int color[4];
+ int val_swap;
+ int color_swap;
+
+ DBG(DBG_proc, "xsane_draw_histogram_with_lines\n");
+
+ if (hist->pixmap)
+ {
+ rect.x=0;
+ rect.y=0;
+ rect.width = HIST_WIDTH;
+ rect.height = HIST_HEIGHT;
+
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_backg, TRUE, 0, 0, HIST_WIDTH, HIST_HEIGHT);
+
+ red = 0;
+ green = 0;
+ blue = 0;
+
+ for (i=0; i < HIST_WIDTH; i++)
+ {
+ inten = show_inten * count[i] * scale;
+
+ if (xsane.xsane_colors > 1)
+ {
+ red = show_red * count_red[i] * scale;
+ green = show_green * count_green[i] * scale;
+ blue = show_blue * count_blue[i] * scale;
+ }
+
+ if (inten > HIST_HEIGHT)
+ {
+ inten = HIST_HEIGHT;
+ }
+
+ if (red > HIST_HEIGHT)
+ {
+ red = HIST_HEIGHT;
+ }
+
+ if (green > HIST_HEIGHT)
+ {
+ green = HIST_HEIGHT;
+ }
+
+ if (blue > HIST_HEIGHT)
+ {
+ blue = HIST_HEIGHT;
+ }
+
+ val[0] = red; color[0] = 0;
+ val[1] = green; color[1] = 1;
+ val[2] = blue; color[2] = 2;
+ val[3] = inten; color[3] = 3;
+
+ for (j = 0; j < 3; j++)
+ {
+ for (k = j + 1; k < 4; k++)
+ {
+ if (val[j] < val[k])
+ {
+ val_swap = val[j];
+ color_swap = color[j];
+ val[j] = val[k];
+ color[j] = color[k];
+ val[k] = val_swap;
+ color[k] = color_swap;
+ }
+ }
+ }
+ val2[0] = val[1] + 1;
+ val2[1] = val[2] + 1;
+ val2[2] = val[3] + 1;
+ val2[3] = 0;
+
+ for (j = 0; j < 4; j++)
+ {
+ switch(color[j])
+ {
+ case 0: red0 = val2[j];
+ break;
+ case 1: green0 = val2[j];
+ break;
+ case 2: blue0 = val2[j];
+ break;
+ case 3: inten0 = val2[j];
+ break;
+ }
+ }
+
+
+ gdk_draw_line(hist->pixmap, xsane.gc_red, i, HIST_HEIGHT - red, i, HIST_HEIGHT - red0);
+ gdk_draw_line(hist->pixmap, xsane.gc_green, i, HIST_HEIGHT - green, i, HIST_HEIGHT - green0);
+ gdk_draw_line(hist->pixmap, xsane.gc_blue, i, HIST_HEIGHT - blue, i, HIST_HEIGHT - blue0);
+ gdk_draw_line(hist->pixmap, xsane.gc_black, i, HIST_HEIGHT - inten, i, HIST_HEIGHT - inten0);
+ }
+
+ gtk_widget_draw(hist->pixmapwid, &rect);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_establish_slider(XsaneSlider *slider)
+{
+ int x, y, pos, len;
+ guchar buf[XSANE_SLIDER_WIDTH*3];
+ GdkRectangle rect;
+
+ DBG(DBG_proc, "xsane_establish_slider\n");
+
+ buf[0] = buf[1] = buf[2] = 0;
+ buf[3+0] = buf[3+1] = buf[3+2]= 0;
+
+ for (x = 0; x < 256; x++)
+ {
+ buf[3*x+0+6] = x * slider->r;
+ buf[3*x+1+6] = x * slider->g;
+ buf[3*x+2+6] = x * slider->b;
+ }
+
+ buf[258*3+0] = 255 * slider->r;
+ buf[258*3+1] = 255 * slider->g;
+ buf[258*3+2] = 255 * slider->b;
+
+ buf[259*3+0] = 255 * slider->r;
+ buf[259*3+1] = 255 * slider->g;
+ buf[259*3+2] = 255 * slider->b;
+
+ for (y = 0; y < XSANE_SLIDER_HEIGHT; y++)
+ {
+ pos = slider->position[0]-y/2;
+ len = y;
+ if (pos<-2)
+ {
+ len = len + pos + 2;
+ pos = -2;
+ }
+ pos = pos * 3 + 6;
+
+ for (x = 0; x <= len; x++)
+ {
+ if ((x == 0) || (x == len) || (y == XSANE_SLIDER_HEIGHT-1))
+ {
+ buf[pos++] = 255;
+ buf[pos++] = 255;
+ buf[pos++] = 255;
+ }
+ else
+ {
+ buf[pos++] = 0;
+ buf[pos++] = 0;
+ buf[pos++] = 0;
+ }
+ }
+
+
+ pos = slider->position[1]-y/2;
+ len = y;
+ pos = pos * 3 + 6;
+
+ for (x = 0; x <= len; x++)
+ {
+ if ((x == 0) || (x == len) || (y == XSANE_SLIDER_HEIGHT-1))
+ {
+ buf[pos++] = 255;
+ buf[pos++] = 255;
+ buf[pos++] = 255;
+ }
+ else
+ {
+ buf[pos++] = 128;
+ buf[pos++] = 128;
+ buf[pos++] = 128;
+ }
+ }
+
+
+ pos = slider->position[2]-y/2;
+ len = y;
+ if (pos+len>257)
+ {
+ len = 257 - pos;
+ }
+ pos = pos * 3 + 6;
+
+ for (x=0; x<=len; x++)
+ {
+ if ((x == 0) || (x == len) || (y == XSANE_SLIDER_HEIGHT-1))
+ {
+ buf[pos++] = 0;
+ buf[pos++] = 0;
+ buf[pos++] = 0;
+ }
+ else
+ {
+ buf[pos++] = 255;
+ buf[pos++] = 255;
+ buf[pos++] = 255;
+ }
+ }
+
+ gtk_preview_draw_row(GTK_PREVIEW(slider->preview),buf, 0, y, XSANE_SLIDER_WIDTH);
+ }
+
+ rect.x=0;
+ rect.y=0;
+ rect.width = XSANE_SLIDER_WIDTH;
+ rect.height = XSANE_SLIDER_HEIGHT;
+
+ gtk_widget_draw(slider->preview, &rect);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_draw_slider_level(XsaneSlider *slider)
+{
+ int i;
+ guchar buf[XSANE_SLIDER_WIDTH*3];
+ GdkRectangle rect;
+
+ DBG(DBG_proc, "xsane_draw_slider_level\n");
+
+ buf[0] = buf[1] = buf[2] = 0;
+ buf[3+0] = buf[3+1] = buf[3+2]= 0;
+
+ for (i=0; i<256; i++)
+ {
+ buf[3*i+0+6] = i * slider->r;
+ buf[3*i+1+6] = i * slider->g;
+ buf[3*i+2+6] = i * slider->b;
+ }
+
+ buf[258*3+0] = 255 * slider->r;
+ buf[258*3+1] = 255 * slider->g;
+ buf[258*3+2] = 255 * slider->b;
+
+ buf[259*3+0] = 255 * slider->r;
+ buf[259*3+1] = 255 * slider->g;
+ buf[259*3+2] = 255 * slider->b;
+
+ for (i=0; i<XSANE_SLIDER_HEIGHT; i++)
+ {
+ gtk_preview_draw_row(GTK_PREVIEW(slider->preview),buf, 0, i, XSANE_SLIDER_WIDTH);
+ }
+
+ rect.x=0;
+ rect.y=0;
+ rect.width = XSANE_SLIDER_WIDTH;
+ rect.height = XSANE_SLIDER_HEIGHT;
+
+ gtk_widget_draw(slider->preview, &rect);
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_set_slider(XsaneSlider *slider, double min, double mid, double max)
+{
+ DBG(DBG_proc, "xsane_set_slider\n");
+
+ slider->value[0] = min;
+ slider->value[1] = mid;
+ slider->value[2] = max;
+
+ slider->position[0] = min * 2.55;
+ slider->position[1] = mid * 2.55;
+ slider->position[2] = max * 2.55;
+
+ xsane_establish_slider(slider);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_slider(XsaneSlider *slider)
+{
+ DBG(DBG_proc, "xsane_update_slider\n");
+
+ slider->position[0] = 2.55 * slider->value[0];
+ slider->position[1] = 2.55 * slider->value[1];
+ slider->position[2] = 2.55 * slider->value[2];
+
+ xsane_establish_slider(slider);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_sliders()
+{
+ DBG(DBG_proc, "xsane_update_sliders\n");
+
+ xsane_update_slider(&xsane.slider_gray);
+
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) )
+ {
+ xsane_update_slider(&xsane.slider_red);
+ xsane_update_slider(&xsane.slider_green);
+ xsane_update_slider(&xsane.slider_blue);
+
+ xsane.slider_gray.active &= ~XSANE_SLIDER_INACTIVE; /* mark slider active */
+ xsane.slider_red.active &= ~XSANE_SLIDER_INACTIVE; /* mark slider active */
+ xsane.slider_green.active &= ~XSANE_SLIDER_INACTIVE; /* mark slider active */
+ xsane.slider_blue.active &= ~XSANE_SLIDER_INACTIVE; /* mark slider active */
+ }
+ else
+ {
+ xsane_draw_slider_level(&xsane.slider_red); /* remove slider */
+ xsane_draw_slider_level(&xsane.slider_green); /* remove slider */
+ xsane_draw_slider_level(&xsane.slider_blue); /* remove slider */
+
+ xsane.slider_red.active = XSANE_SLIDER_INACTIVE; /* mark slider inactive */
+ xsane.slider_green.active = XSANE_SLIDER_INACTIVE; /* mark slider inactive */
+ xsane.slider_blue.active = XSANE_SLIDER_INACTIVE; /* mark slider inactive */
+
+ if (xsane.param.depth == 1)
+ {
+ xsane_draw_slider_level(&xsane.slider_gray); /* remove slider */
+ xsane.slider_gray.active = XSANE_SLIDER_INACTIVE; /* mark slider inactive */
+ }
+ else
+ {
+ xsane.slider_gray.active &= ~XSANE_SLIDER_INACTIVE; /* mark slider active */
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_slider_hold_event()
+{
+ DBG(DBG_proc, "xsane_slider_hold_event\n");
+
+ xsane_enhancement_by_histogram(TRUE);
+
+ gtk_timeout_remove(xsane.slider_timer);
+ xsane.slider_timer = 0;
+
+ if (xsane.slider_timer_restart)
+ {
+ xsane.slider_timer = gtk_timeout_add(XSANE_CONTINUOUS_HOLD_TIME, xsane_slider_hold_event, 0);
+ xsane.slider_timer_restart = FALSE;
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_slider_callback(GtkWidget *widget, GdkEvent *event, XsaneSlider *slider)
+{
+ GdkEventButton *button_event;
+ GdkEventMotion *motion_event;
+ int distance;
+ int i = 0;
+ static int update = FALSE;
+ static int x;
+
+ DBG(DBG_proc, "xsane_slider_callback\n");
+
+ if (slider->active == XSANE_SLIDER_INACTIVE)
+ {
+ return 0;
+ }
+
+ switch(event->type)
+ {
+ case GDK_BUTTON_PRESS:
+ gtk_grab_add(widget);
+ button_event = (GdkEventButton *) event;
+
+ distance = G_MAXINT;
+ for (i=0; i<3; i++)
+ {
+ if (fabs(button_event->x - slider->position[i]) < distance)
+ {
+ slider->active = i + 1;
+ distance = fabs(button_event->x - slider->position[i]);
+ }
+ }
+ if (distance<10)
+ {
+ x = button_event->x;
+ update = TRUE;
+ }
+ else
+ {
+ slider->active = XSANE_SLIDER_ACTIVE;
+ }
+ break;
+
+ case GDK_BUTTON_RELEASE:
+ gtk_grab_remove(widget);
+ xsane_enhancement_by_histogram(TRUE); /* slider->active must be unchanged !!! */
+ slider->active = XSANE_SLIDER_ACTIVE; /* ok, now we can reset it */
+ break;
+
+ case GDK_MOTION_NOTIFY:
+
+ motion_event = (GdkEventMotion *) event;
+ gdk_window_get_pointer(widget->window, &x, 0, 0);
+ update = TRUE;
+ break;
+
+ default:
+ break;
+ }
+
+ if (update)
+ {
+ update = FALSE;
+ switch(slider->active)
+ {
+ case 1:
+ slider->value[0] = (x-XSANE_SLIDER_OFFSET) / 2.55;
+ xsane_bound_double(&slider->value[0], 0.0, slider->value[1] - 1);
+ break;
+
+ case 2:
+ slider->value[1] = (x-XSANE_SLIDER_OFFSET) / 2.55;
+ xsane_bound_double(&slider->value[1], slider->value[0] + 1, slider->value[2] - 1);
+ break;
+
+ case 3:
+ slider->value[2] = (x-XSANE_SLIDER_OFFSET) / 2.55;
+ xsane_bound_double(&slider->value[2], slider->value[1] + 1, 100.0);
+ break;
+
+ default:
+ break;
+ }
+ xsane_set_slider(slider, slider->value[0], slider->value[1], slider->value[2]);
+
+ if (preferences.gtk_update_policy == GTK_UPDATE_CONTINUOUS)
+ {
+ /* call xsane_enhancement_by_histogram by event handler */
+ if (!xsane.slider_timer)
+ {
+ xsane.slider_timer = gtk_timeout_add(XSANE_CONTINUOUS_HOLD_TIME, xsane_slider_hold_event, 0);
+ }
+ else
+ {
+ xsane.slider_timer_restart = TRUE;
+ }
+ }
+ else if (preferences.gtk_update_policy == GTK_UPDATE_DELAYED)
+ {
+ if (xsane.slider_timer) /* hold timer active? then remove it, we had a motion */
+ {
+ gtk_timeout_remove(xsane.slider_timer);
+ }
+ /* call xsane_slider_hold_event if mouse is not moved for ??? ms */
+ xsane.slider_timer = gtk_timeout_add(XSANE_HOLD_TIME, xsane_slider_hold_event, 0);
+ }
+ }
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_slider(XsaneSlider *slider)
+{
+ DBG(DBG_proc, "xsane_create_slider\n");
+
+ slider->preview = gtk_preview_new(GTK_PREVIEW_COLOR);
+ gtk_preview_size(GTK_PREVIEW(slider->preview), XSANE_SLIDER_WIDTH, XSANE_SLIDER_HEIGHT);
+ gtk_widget_set_events(slider->preview, XSANE_SLIDER_EVENTS);
+ gtk_signal_connect(GTK_OBJECT(slider->preview), "event", GTK_SIGNAL_FUNC(xsane_slider_callback), slider);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_histogram(GtkWidget *parent, const char *title, int width, int height, XsanePixmap *hist)
+{
+ GdkBitmap *mask=NULL;
+
+ DBG(DBG_proc, "xsane_create_histogram\n");
+
+ hist->frame = gtk_frame_new(title);
+ hist->pixmap = gdk_pixmap_new(xsane.histogram_dialog->window, width, height, -1);
+ hist->pixmapwid = gtk_pixmap_new(hist->pixmap, mask);
+ gtk_container_add(GTK_CONTAINER(hist->frame), hist->pixmapwid);
+ gdk_draw_rectangle(hist->pixmap, xsane.gc_backg, TRUE, 0, 0, width, height);
+
+ gtk_box_pack_start(GTK_BOX(parent), hist->frame, FALSE, FALSE, 2);
+ gtk_widget_show(hist->pixmapwid);
+ gtk_widget_show(hist->frame);
+ }
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_calculate_auto_enhancement(SANE_Int *count_raw,
+ SANE_Int *count_raw_red, SANE_Int *count_raw_green, SANE_Int *count_raw_blue)
+{ /* calculate white, medium and black values for auto enhancement */
+ int limit, limit_mid;
+ int points, points_mix, points_red, points_green, points_blue;
+ int min, mid, max;
+ int min_red, mid_red, max_red;
+ int min_green, mid_green, max_green;
+ int min_blue, mid_blue, max_blue;
+ int val;
+ int i;
+
+ DBG(DBG_proc, "xsane_calculate_auto_enhancement\n");
+
+ if (xsane.preview)
+ {
+ points = 0;
+ points_mix = 0;
+ points_red = 0;
+ points_green = 0;
+ points_blue = 0;
+
+ for (i=0; i<256; i++)
+ {
+ points += count_raw[i];
+ points_mix += 10 * log(1 + count_raw[i] + count_raw_red[i] + count_raw_green[i] + count_raw_blue[i]);
+ points_red += 10 * log(1 + count_raw_red[i]);
+ points_green += 10 * log(1 + count_raw_green[i]);
+ points_blue += 10 * log(1 + count_raw_blue[i]);
+ }
+
+ limit = 1 + points / 5000;
+
+ /* ----- gray ----- */
+
+ min = -1;
+ val = 0;
+ while ( (val/4 < limit) && (min < 253) )
+ {
+ min++;
+ val += count_raw[min] + count_raw_red[min] + count_raw_green[min] + count_raw_blue[min];
+ }
+
+ max = HIST_WIDTH;
+ val = 0;
+ while ( (val/4 < limit) && (max > min + 1) )
+ {
+ max--;
+ val += count_raw[max] + count_raw_red[max] + count_raw_green[max] + count_raw_blue[max];
+ }
+
+ limit_mid = points_mix / 2.0;
+
+ mid = 0;
+ val = 0;
+ while ( (val < limit_mid) && (mid < max - 1) )
+ {
+ mid++;
+ val += 10 * log(1 + count_raw[mid] + count_raw_red[mid] + count_raw_green[mid] + count_raw_blue[mid]);
+ }
+
+ xsane_bound_int(&mid, min, max);
+
+ /* ----- red ----- */
+
+ min_red = -1;
+ val = 0;
+ while ( (val < limit) && (min_red < 253) )
+ {
+ min_red++;
+ val += count_raw_red[min_red];
+ }
+
+ max_red = HIST_WIDTH;
+ val = 0;
+ while ( (val < limit) && (max_red > min_red + 1) )
+ {
+ max_red--;
+ val += count_raw_red[max_red];
+ }
+
+ limit_mid = points_red / 2.0;
+
+ mid_red = 0;
+ val = 0;
+ while ( (val < limit_mid) && (mid_red < max_red - 1) )
+ {
+ mid_red++;
+ val += 10 * log(1 + count_raw_red[mid_red]);
+ }
+
+ xsane_bound_int(&mid_red, min_red, max_red);
+
+ /* ----- green ----- */
+
+ min_green = -1;
+ val = 0;
+ while ( (val < limit) && (min_green < 253) )
+ {
+ min_green++;
+ val += count_raw_green[min_green];
+ }
+
+ max_green = HIST_WIDTH;
+ val = 0;
+ while ( (val < limit) && (max_green > min_green + 1) )
+ {
+ max_green--;
+ val += count_raw_green[max_green];
+ }
+
+ limit_mid = points_green / 2.0;
+
+ mid_green = 0;
+ val = 0;
+ while ( (val < limit_mid) && (mid_green < max_green - 1) )
+ {
+ mid_green++;
+ val += 10 * log(1 + count_raw_green[mid_green]);
+ }
+
+ xsane_bound_int(&mid_green, min_green, max_green);
+
+ /* ----- blue ----- */
+
+ min_blue = -1;
+ val = 0;
+ while ( (val < limit) && (min_blue < 253) )
+ {
+ min_blue++;
+ val += count_raw_blue[min_blue];
+ }
+
+ max_blue = HIST_WIDTH;
+ val = 0;
+ while ( (val < limit) && (max_blue > min_blue + 1) )
+ {
+ max_blue--;
+ val += count_raw_blue[max_blue];
+ }
+
+ limit_mid = points_blue / 2.0;
+
+ mid_blue = 0;
+ val = 0;
+ while ( (val < limit_mid) && (mid_blue < max_blue - 1) )
+ {
+ mid_blue++;
+ val += 10 * log(1 + count_raw_blue[mid_blue]);
+ }
+
+ xsane_bound_int(&mid_blue, min_blue, max_blue);
+
+ xsane.auto_white = max/2.55;
+ xsane.auto_gray = mid/2.55;
+ xsane.auto_black = min/2.55;
+
+ xsane.auto_white_red = max_red/2.55;
+ xsane.auto_gray_red = mid_red/2.55;
+ xsane.auto_black_red = min_red/2.55;
+
+ xsane.auto_white_green = max_green/2.55;
+ xsane.auto_gray_green = mid_green/2.55;
+ xsane.auto_black_green = min_green/2.55;
+
+ xsane.auto_white_blue = max_blue/2.55;
+ xsane.auto_gray_blue = mid_blue/2.55;
+ xsane.auto_black_blue = min_blue/2.55;
+ }
+
+ DBG(DBG_proc, "xsane.auto_white = %f\n", xsane.auto_white);
+ DBG(DBG_proc, "xsane.auto_gray = %f\n", xsane.auto_gray);
+ DBG(DBG_proc, "xsane.auto_black = %f\n", xsane.auto_black);
+ DBG(DBG_proc, "xsane.auto_white_red = %f\n", xsane.auto_white_red);
+ DBG(DBG_proc, "xsane.auto_gray_red = %f\n", xsane.auto_gray_red);
+ DBG(DBG_proc, "xsane.auto_black_red = %f\n", xsane.auto_black_red);
+ DBG(DBG_proc, "xsane.auto_white_green = %f\n", xsane.auto_white_green);
+ DBG(DBG_proc, "xsane.auto_gray_green = %f\n", xsane.auto_gray_green);
+ DBG(DBG_proc, "xsane.auto_black_green = %f\n", xsane.auto_black_green);
+ DBG(DBG_proc, "xsane.auto_white_blue = %f\n", xsane.auto_white_blue);
+ DBG(DBG_proc, "xsane.auto_gray_blue = %f\n", xsane.auto_gray_blue);
+ DBG(DBG_proc, "xsane.auto_black_blue = %f\n", xsane.auto_black_blue);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_calculate_raw_histogram(void)
+{
+ SANE_Int *count_raw;
+ SANE_Int *count_raw_red;
+ SANE_Int *count_raw_green;
+ SANE_Int *count_raw_blue;
+ int i;
+ int maxval_raw;
+ double scale_raw;
+
+ DBG(DBG_proc, "xsane_calculate_raw_histogram\n");
+
+ /* at first reset auto enhancement values */
+
+ xsane.auto_black = 0.0;
+ xsane.auto_gray = 50.0;
+ xsane.auto_white = 100.0;
+
+ xsane.auto_black_red = 0.0;
+ xsane.auto_gray_red = 50.0;
+ xsane.auto_white_red = 100.0;
+
+ xsane.auto_black_green = 0.0;
+ xsane.auto_gray_green = 50.0;
+ xsane.auto_white_green = 100.0;
+
+ xsane.auto_black_blue = 0.0;
+ xsane.auto_gray_blue = 50.0;
+ xsane.auto_white_blue = 100.0;
+
+ if (xsane.preview) /* preview window exists? */
+ {
+ count_raw = calloc(256, sizeof(SANE_Int));
+ count_raw_red = calloc(256, sizeof(SANE_Int));
+ count_raw_green = calloc(256, sizeof(SANE_Int));
+ count_raw_blue = calloc(256, sizeof(SANE_Int));
+
+ preview_calculate_raw_histogram(xsane.preview, count_raw, count_raw_red, count_raw_green, count_raw_blue);
+
+ if (xsane.param.depth > 1)
+ {
+ xsane_calculate_auto_enhancement(count_raw, count_raw_red, count_raw_green, count_raw_blue);
+ }
+
+ if (xsane.histogram_log) /* logarithmical display */
+ {
+ for (i=0; i<=255; i++)
+ {
+ count_raw[i] = (int) (50*log(1.0 + count_raw[i]));
+ count_raw_red[i] = (int) (50*log(1.0 + count_raw_red[i]));
+ count_raw_green[i] = (int) (50*log(1.0 + count_raw_green[i]));
+ count_raw_blue[i] = (int) (50*log(1.0 + count_raw_blue[i]));
+ }
+ }
+
+ maxval_raw = 1; /* we do not use 0 here because we divide through this varaible later */
+
+ /* first and last 10 values are not used for calculating maximum value */
+ for (i = 10 ; i < HIST_WIDTH - 10; i++)
+ {
+ if (count_raw[i] > maxval_raw) { maxval_raw = count_raw[i]; }
+ if (count_raw_red[i] > maxval_raw) { maxval_raw = count_raw_red[i]; }
+ if (count_raw_green[i] > maxval_raw) { maxval_raw = count_raw_green[i]; }
+ if (count_raw_blue[i] > maxval_raw) { maxval_raw = count_raw_blue[i]; }
+ }
+ scale_raw = 100.0/maxval_raw;
+
+ if (xsane.histogram_lines)
+ {
+ xsane_draw_histogram_with_lines(&xsane.histogram_raw,
+ count_raw, count_raw_red, count_raw_green, count_raw_blue,
+ xsane.histogram_red, xsane.histogram_green, xsane.histogram_blue,
+ xsane.histogram_int, scale_raw);
+ }
+ else
+ {
+ xsane_draw_histogram_with_points(&xsane.histogram_raw,
+ count_raw, count_raw_red, count_raw_green, count_raw_blue,
+ xsane.histogram_red, xsane.histogram_green, xsane.histogram_blue,
+ xsane.histogram_int, scale_raw);
+ }
+
+ free(count_raw_blue);
+ free(count_raw_green);
+ free(count_raw_red);
+ free(count_raw);
+ }
+ else
+ {
+ xsane_clear_histogram(&xsane.histogram_raw);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_calculate_enh_histogram(void)
+{
+ SANE_Int *count_enh;
+ SANE_Int *count_enh_red;
+ SANE_Int *count_enh_green;
+ SANE_Int *count_enh_blue;
+ int i;
+ int maxval_enh;
+ double scale_enh;
+
+ DBG(DBG_proc, "xsane_calculate_enh_histogram\n");
+
+ if (xsane.preview) /* preview window exists? */
+ {
+ count_enh = calloc(256, sizeof(SANE_Int));
+ count_enh_red = calloc(256, sizeof(SANE_Int));
+ count_enh_green = calloc(256, sizeof(SANE_Int));
+ count_enh_blue = calloc(256, sizeof(SANE_Int));
+
+ preview_calculate_enh_histogram(xsane.preview, count_enh, count_enh_red, count_enh_green, count_enh_blue);
+
+ if (xsane.histogram_log) /* logarithmical display */
+ {
+ for (i=0; i<=255; i++)
+ {
+ count_enh[i] = (int) (50*log(1.0 + count_enh[i]));
+ count_enh_red[i] = (int) (50*log(1.0 + count_enh_red[i]));
+ count_enh_green[i] = (int) (50*log(1.0 + count_enh_green[i]));
+ count_enh_blue[i] = (int) (50*log(1.0 + count_enh_blue[i]));
+ }
+ }
+
+ maxval_enh = 1;
+
+ /* first and last 10 values are not used for calculating maximum value */
+ for (i = 10 ; i < HIST_WIDTH - 10; i++)
+ {
+ if (count_enh[i] > maxval_enh) { maxval_enh = count_enh[i]; }
+ if (count_enh_red[i] > maxval_enh) { maxval_enh = count_enh_red[i]; }
+ if (count_enh_green[i] > maxval_enh) { maxval_enh = count_enh_green[i]; }
+ if (count_enh_blue[i] > maxval_enh) { maxval_enh = count_enh_blue[i]; }
+ }
+ scale_enh = 100.0/maxval_enh;
+
+ if (xsane.histogram_lines)
+ {
+ xsane_draw_histogram_with_lines(&xsane.histogram_enh,
+ count_enh, count_enh_red, count_enh_green, count_enh_blue,
+ xsane.histogram_red, xsane.histogram_green, xsane.histogram_blue, xsane.histogram_int, scale_enh);
+ }
+ else
+ {
+ xsane_draw_histogram_with_points(&xsane.histogram_enh,
+ count_enh, count_enh_red, count_enh_green, count_enh_blue,
+ xsane.histogram_red, xsane.histogram_green, xsane.histogram_blue, xsane.histogram_int, scale_enh);
+ }
+
+ free(count_enh_blue);
+ free(count_enh_green);
+ free(count_enh_red);
+ free(count_enh);
+ }
+ else
+ {
+ xsane_clear_histogram(&xsane.histogram_enh);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_histogram(int update_raw)
+{
+ DBG(DBG_proc, "xsane_update_histogram\n");
+
+ if (preferences.show_histogram)
+ {
+ if (update_raw)
+ {
+ xsane_calculate_raw_histogram();
+ }
+ xsane_calculate_enh_histogram();
+
+ gtk_widget_show(xsane.histogram_dialog);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_histogram_toggle_button_callback(GtkWidget *widget, gpointer data)
+{
+ int *valuep = data;
+
+ DBG(DBG_proc, "xsane_histogram_toggle_button_callback\n");
+
+ *valuep = (GTK_TOGGLE_BUTTON(widget)->active != 0);
+ xsane_update_histogram(TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_preview_threshold_curve(u_char *gammadata, double threshold, int numbers)
+{
+ int i;
+ int maxin = numbers-1;
+ int threshold_level;
+
+ DBG(DBG_proc, "xsane_create_preview_threshold_curve\n");
+
+ xsane_bound_double(&threshold, 0.0, 100.0);
+ threshold_level = maxin * threshold / 100.0;
+
+ for (i=0; i < threshold_level; i++)
+ {
+ gammadata[i] = 0;
+ }
+
+ for (i=threshold_level; i <= maxin; i++)
+ {
+ gammadata[i] = 255;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_preview_gamma_curve(u_char *gammadata, int negative, double gamma,
+ double brightness, double contrast,
+ double medium_shadow, double medium_highlight, double medium_gamma,
+ int numbers)
+{
+ int i;
+ double midin;
+ double val;
+ double m;
+ double b;
+ int maxin = numbers-1;
+ double medium_m;
+ double medium_mid;
+
+ medium_m = 100.0/(medium_highlight - medium_shadow);
+ medium_mid = (medium_shadow + medium_highlight)/200.0 * maxin;
+
+ DBG(DBG_proc, "xsane_create_preview_gamma_curve(neg=%d, gam=%3.2f, bri=%3.2f, ctr=%3.2f, nrs=%d)\n",
+ negative, gamma, brightness, contrast, numbers);
+
+ if (contrast < -100.0)
+ {
+ contrast = -100.0;
+ }
+
+ midin = (int)(numbers / 2.0);
+
+ m = 1.0 + contrast/100.0;
+ b = (1.0 + brightness/100.0) * midin;
+
+ if (negative)
+ {
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) i);
+
+ /* medium correction */
+ val = (val - medium_mid) * medium_m + midin;
+ xsane_bound_double(&val, 0.0, maxin);
+ val = maxin - val; /* invert */
+ val = maxin * pow( val/maxin, (1.0/medium_gamma) );
+
+ val = val - midin;
+
+ /* user correction */
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+
+ gammadata[i] = (u_char) (255 * pow( val/maxin, (1.0/gamma) ));
+ }
+ }
+ else /* positive */
+ {
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) i);
+
+ /* medium correction */
+ val = (val - medium_mid) * medium_m + midin;
+ xsane_bound_double(&val, 0.0, maxin);
+ val = maxin * pow( val/maxin, (1.0/medium_gamma) );
+
+ val = val - midin;
+
+ /* user correction */
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+
+ gammadata[i] = (u_char) (255 * pow( val/maxin, (1.0/gamma) ));
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_gamma_curve(SANE_Int *gammadata,
+ int negative, double gamma, double brightness, double contrast,
+ double medium_shadow, double medium_highlight, double medium_gamma,
+ int numbers, int maxout)
+{
+ int i;
+ double midin;
+ double val;
+ double m;
+ double b;
+ double medium_m;
+ double medium_mid;
+ int maxin = numbers-1;
+
+ DBG(DBG_proc, "xsane_create_gamma_curve(neg=%d, gam=%3.2f, bri=%3.2f, ctr=%3.2f, "
+ "mshd=%3.2f, mhig=%3.2f, mgam=%3.2f, "
+ "nrs=%d, max=%d)\n",
+ negative, gamma, brightness, contrast,
+ medium_shadow, medium_highlight, medium_gamma,
+ numbers, maxout);
+
+ midin = (int)(numbers / 2.0);
+
+ if (contrast < -100.0)
+ {
+ contrast = -100.0;
+ }
+
+ medium_m = 100.0/(medium_highlight - medium_shadow);
+ medium_mid = (medium_shadow + medium_highlight)/200.0 * maxin;
+
+ m = 1.0 + contrast/100.0;
+ b = (1.0 + brightness/100.0) * midin;
+
+ if (negative)
+ {
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) i);
+
+ /* medium correction */
+ val = (val - medium_mid) * medium_m + midin;
+ xsane_bound_double(&val, 0.0, maxin);
+ val = maxin - val; /* invert */
+ val = maxin * pow( val/maxin, (1.0/medium_gamma) );
+
+ val = val - midin;
+
+ /* user correction */
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+ gammadata[i] = maxout * pow( val/maxin, (1.0/gamma) );
+ }
+ }
+ else /* positive */
+ {
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) i);
+
+ /* medium correction */
+ val = (val - medium_mid) * medium_m + midin;
+ xsane_bound_double(&val, 0.0, maxin);
+ val = maxin * pow( val/maxin, (1.0/medium_gamma) );
+
+ val = val - midin;
+
+ /* user correction */
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+ gammadata[i] = maxout * pow( val/maxin, (1.0/gamma) );
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_gamma_curve(int update_raw)
+{
+ DBG(DBG_proc, "xsane_update_gamma_curve\n");
+
+ if (xsane.preview)
+ {
+ if (!xsane.preview_gamma_data_red)
+ {
+ xsane.preview_gamma_size = pow(2, preferences.preview_gamma_input_bits);
+
+ xsane.preview_gamma_data_red = malloc(xsane.preview_gamma_size);
+ xsane.preview_gamma_data_green = malloc(xsane.preview_gamma_size);
+ xsane.preview_gamma_data_blue = malloc(xsane.preview_gamma_size);
+
+ xsane.histogram_gamma_data_red = malloc(xsane.preview_gamma_size);
+ xsane.histogram_gamma_data_green = malloc(xsane.preview_gamma_size);
+ xsane.histogram_gamma_data_blue = malloc(xsane.preview_gamma_size);
+
+ xsane.histogram_medium_gamma_data_red = malloc(xsane.preview_gamma_size);
+ xsane.histogram_medium_gamma_data_green = malloc(xsane.preview_gamma_size);
+ xsane.histogram_medium_gamma_data_blue = malloc(xsane.preview_gamma_size);
+ }
+
+ if (xsane.preview->calibration)
+ {
+ double pgamma_red;
+ double pgamma_green;
+ double pgamma_blue;
+
+ pgamma_red = preferences.preview_gamma * preferences.preview_gamma_red;
+ pgamma_green = preferences.preview_gamma * preferences.preview_gamma_green;
+ pgamma_blue = preferences.preview_gamma * preferences.preview_gamma_blue;
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_red, 0, pgamma_red,
+ 0.0, 0.0, 0.0, 100.0, 1.0, xsane.preview_gamma_size);
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_green, 0, pgamma_green,
+ 0.0, 0.0, 0.0, 100.0, 1.0, xsane.preview_gamma_size);
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_blue, 0, pgamma_blue,
+ 0.0, 0.0, 0.0, 100.0, 1.0, xsane.preview_gamma_size);
+ }
+ else if (xsane.param.depth == 1) /* for lineart mode with grayscale preview scan */
+ {
+ xsane_create_preview_threshold_curve(xsane.preview_gamma_data_red, xsane.threshold, xsane.preview_gamma_size);
+ xsane_create_preview_threshold_curve(xsane.preview_gamma_data_green, xsane.threshold, xsane.preview_gamma_size);
+ xsane_create_preview_threshold_curve(xsane.preview_gamma_data_blue, xsane.threshold, xsane.preview_gamma_size);
+
+ xsane_create_preview_threshold_curve(xsane.histogram_gamma_data_red, xsane.threshold, xsane.preview_gamma_size);
+ xsane_create_preview_threshold_curve(xsane.histogram_gamma_data_green, xsane.threshold, xsane.preview_gamma_size);
+ xsane_create_preview_threshold_curve(xsane.histogram_gamma_data_blue, xsane.threshold, xsane.preview_gamma_size);
+ }
+ else /* multi bit mode */
+ {
+ double pgamma_red = 1.0;
+ double pgamma_green = 1.0;
+ double pgamma_blue = 1.0;
+
+ if ((xsane.mode != XSANE_GIMP_EXTENSION) || (!preferences.disable_gimp_preview_gamma))
+ {
+ pgamma_red = preferences.preview_gamma * preferences.preview_gamma_red;
+ pgamma_green = preferences.preview_gamma * preferences.preview_gamma_green;
+ pgamma_blue = preferences.preview_gamma * preferences.preview_gamma_blue;
+ }
+
+
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+#if 1
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_gray)->curve), 65536, xsane.free_gamma_data);
+#if 1
+{
+ int i;
+ for (i=0; i<100; i++)
+ {
+ printf("%1.6f ", xsane.free_gamma_data[i]);
+ if (i / 10.0 == i / 10)
+ {
+ printf("\n");
+ }
+ }
+ printf("\n");
+ for (i=65435; i<65536; i++)
+ {
+ printf("%1.6f ", xsane.free_gamma_data[i]);
+ if (i / 10.0 == i / 10)
+ {
+ printf("\n");
+ }
+ }
+ printf("\n");
+ printf("\n");
+}
+#endif
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_red)->curve), 65536, xsane.free_gamma_data_red);
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_green)->curve), 65536, xsane.free_gamma_data_green);
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_blue)->curve), 65536, xsane.free_gamma_data_blue);
+#endif
+
+ xsane_get_free_gamma_curve(xsane.free_gamma_data_red, xsane.preview_gamma_data_red, xsane.negative,
+ xsane.gamma * xsane.gamma_red * pgamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red, xsane.preview_gamma_size, 255);
+
+ xsane_get_free_gamma_curve(xsane.free_gamma_data_green, xsane.preview_gamma_data_green, xsane.negative,
+ xsane.gamma * xsane.gamma_green * pgamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green, xsane.preview_gamma_size, 255);
+
+ xsane_get_free_gamma_curve(xsane.free_gamma_data_blue, xsane.preview_gamma_data_blue, xsane.negative,
+ xsane.gamma * xsane.gamma_blue * pgamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue , xsane.preview_gamma_size, 255);
+
+
+ xsane_get_free_gamma_curve(xsane.free_gamma_data_red, xsane.histogram_gamma_data_red, xsane.negative,
+ xsane.gamma * xsane.gamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red, xsane.preview_gamma_size, 255);
+
+ xsane_get_free_gamma_curve(xsane.free_gamma_data_green, xsane.histogram_gamma_data_green, xsane.negative,
+ xsane.gamma * xsane.gamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green, xsane.preview_gamma_size, 255);
+
+ xsane_get_free_gamma_curve(xsane.free_gamma_data_blue, xsane.histogram_gamma_data_blue, xsane.negative,
+ xsane.gamma * xsane.gamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue , xsane.preview_gamma_size, 255);
+#else
+ if ( ( ( (xsane.xsane_colors > 1) && xsane.scanner_gamma_color ) || /* color scan and gamma table for red, green and blue available */
+ xsane.scanner_gamma_gray ) && /* grayscale scan and gamma table for gray available */
+ (!xsane.no_preview_medium_gamma) ) /* do not use gamma table when disabled */
+ {
+ DBG(DBG_info, "creating preview gamma tables without medium correction\n");
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_red, xsane.negative,
+ xsane.gamma * xsane.gamma_red * pgamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_green, xsane.negative,
+ xsane.gamma * xsane.gamma_green * pgamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_blue, xsane.negative,
+ xsane.gamma * xsane.gamma_blue * pgamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_red, xsane.negative,
+ xsane.gamma * xsane.gamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_green, xsane.negative,
+ xsane.gamma * xsane.gamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_blue, xsane.negative,
+ xsane.gamma * xsane.gamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ if (update_raw) /* to speed up things here */
+ {
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_red, xsane.negative,
+ 1.0, 0.0, 0.0, 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_green, xsane.negative,
+ 1.0, 0.0, 0.0, 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_blue, xsane.negative,
+ 1.0, 0.0, 0.0, 0.0, 100.0, 1.0,
+ xsane.preview_gamma_size);
+ }
+ }
+ else if (xsane.xsane_colors > 1) /* color scan, no color scanner gamma tables available */
+ {
+ DBG(DBG_info, "creating preview gamma tables with medium correction\n");
+
+ xsane.medium_changed = FALSE;
+
+ preview_display_valid(xsane.preview);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_red, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_red * pgamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_green, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_green * pgamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_blue, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_blue * pgamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ xsane.preview_gamma_size);
+
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_red, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_green, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_blue, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ xsane.preview_gamma_size);
+
+
+ if (update_raw) /* to speed up things here */
+ {
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_red, xsane.negative != xsane.medium_negative,
+ 1.0, 0.0, 0.0,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_green, xsane.negative != xsane.medium_negative,
+ 1.0, 0.0, 0.0,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_blue, xsane.negative != xsane.medium_negative,
+ 1.0, 0.0, 0.0,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ xsane.preview_gamma_size);
+ }
+ }
+ else /* grayscale scan, no gray scanner gamma table available */
+ {
+ DBG(DBG_info, "creating preview gamma tables with medium correction\n");
+
+ xsane.medium_changed = FALSE;
+
+ preview_display_valid(xsane.preview);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_red, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_red * pgamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_green, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_green * pgamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.preview_gamma_data_blue, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_blue * pgamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_red, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_green, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_gamma_data_blue, xsane.negative != xsane.medium_negative,
+ xsane.gamma * xsane.gamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+
+ if (update_raw) /* to speed up things here */
+ {
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_red, xsane.negative != xsane.medium_negative,
+ 1.0, 0.0, 0.0,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_green, xsane.negative != xsane.medium_negative,
+ 1.0, 0.0, 0.0,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+
+ xsane_create_preview_gamma_curve(xsane.histogram_medium_gamma_data_blue, xsane.negative != xsane.medium_negative,
+ 1.0, 0.0, 0.0,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ xsane.preview_gamma_size);
+ }
+ }
+#endif
+ }
+
+ preview_gamma_correction(xsane.preview, preferences.preview_gamma_input_bits,
+ xsane.preview_gamma_data_red, xsane.preview_gamma_data_green, xsane.preview_gamma_data_blue,
+ xsane.histogram_gamma_data_red, xsane.histogram_gamma_data_green, xsane.histogram_gamma_data_blue,
+ xsane.histogram_medium_gamma_data_red, xsane.histogram_medium_gamma_data_green, xsane.histogram_medium_gamma_data_blue);
+
+ xsane_update_histogram(update_raw);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_enhancement_update(void)
+{
+ guint sig_changed=0;
+
+ DBG(DBG_proc, "xsane_enhancement_update\n");
+
+ if (xsane.param.depth == 1) /* lineart? no gamma */
+ {
+ return;
+ }
+
+ sig_changed = gtk_signal_lookup("changed", GTK_OBJECT_TYPE(xsane.gamma_widget));
+
+ GTK_ADJUSTMENT(xsane.gamma_widget)->value = xsane.gamma;
+ GTK_ADJUSTMENT(xsane.brightness_widget)->value = xsane.brightness;
+ GTK_ADJUSTMENT(xsane.contrast_widget)->value = xsane.contrast;
+
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) )
+ {
+ GTK_ADJUSTMENT(xsane.gamma_red_widget)->value = xsane.gamma_red;
+ GTK_ADJUSTMENT(xsane.gamma_green_widget)->value = xsane.gamma_green;
+ GTK_ADJUSTMENT(xsane.gamma_blue_widget)->value = xsane.gamma_blue;
+
+ GTK_ADJUSTMENT(xsane.brightness_red_widget)->value = xsane.brightness_red;
+ GTK_ADJUSTMENT(xsane.brightness_green_widget)->value = xsane.brightness_green;
+ GTK_ADJUSTMENT(xsane.brightness_blue_widget)->value = xsane.brightness_blue;
+
+ GTK_ADJUSTMENT(xsane.contrast_red_widget)->value = xsane.contrast_red;
+ GTK_ADJUSTMENT(xsane.contrast_green_widget)->value = xsane.contrast_green;
+ GTK_ADJUSTMENT(xsane.contrast_blue_widget)->value = xsane.contrast_blue;
+
+ gtk_signal_emit(xsane.gamma_red_widget, sig_changed);
+ gtk_signal_emit(xsane.gamma_green_widget, sig_changed);
+ gtk_signal_emit(xsane.gamma_blue_widget, sig_changed);
+
+ gtk_signal_emit(xsane.brightness_red_widget, sig_changed);
+ gtk_signal_emit(xsane.brightness_green_widget, sig_changed);
+ gtk_signal_emit(xsane.brightness_blue_widget, sig_changed);
+
+ gtk_signal_emit(xsane.contrast_red_widget, sig_changed);
+ gtk_signal_emit(xsane.contrast_green_widget, sig_changed);
+ gtk_signal_emit(xsane.contrast_blue_widget, sig_changed);
+
+ }
+
+ gtk_signal_emit(xsane.gamma_widget, sig_changed);
+ gtk_signal_emit(xsane.brightness_widget, sig_changed);
+ gtk_signal_emit(xsane.contrast_widget, sig_changed);
+
+ xsane_update_sliders(); /* update histogram slider */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_gamma_to_histogram(double *min, double *mid, double *max,
+ double contrast, double brightness, double gamma)
+{
+ double m;
+ double b;
+
+ DBG(DBG_proc, "xsane_gamma_to_histogram\n");
+
+ m = 1.0 + contrast/100.0;
+ b = (1.0 + brightness/100.0) * 50.0;
+
+ if (m > 0)
+ {
+ *min = 50.0 - b/m;
+ *mid = (100.0 * pow(0.5, gamma)-b) / m + 50.0;
+ *max = (100.0-b)/m + 50.0;
+ }
+ else
+ {
+ *min = 0.0;
+ *mid = 50.0;
+ *max = 100.0;
+ }
+
+ xsane_bound_double(min, 0.0, 98.0);
+ xsane_bound_double(max, *min+1, 100.0);
+ xsane_bound_double(mid, *min+1, *max-1);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_enhancement_by_gamma(void)
+{
+ double min, mid, max;
+ double contrast, brightness, gamma;
+
+ DBG(DBG_proc, "xsane_enhancement_by_gamma\n");
+
+ xsane_gamma_to_histogram(&min, &mid, &max, xsane.contrast, xsane.brightness, xsane.gamma);
+
+ xsane.slider_gray.value[0] = min;
+ xsane.slider_gray.value[1] = mid;
+ xsane.slider_gray.value[2] = max;
+
+
+ /* red */
+ contrast = xsane.contrast + xsane.contrast_red;
+ brightness = xsane.brightness + xsane.brightness_red;
+ gamma = xsane.gamma * xsane.gamma_red;
+
+ if (contrast < -100)
+ {
+ contrast = -100;
+ }
+
+ xsane_gamma_to_histogram(&min, &mid, &max, contrast, brightness, gamma);
+
+
+ xsane.slider_red.value[0] = min;
+ xsane.slider_red.value[1] = mid;
+ xsane.slider_red.value[2] = max;
+
+
+ /* green */
+ contrast = xsane.contrast + xsane.contrast_green;
+ brightness = xsane.brightness + xsane.brightness_green;
+ gamma = xsane.gamma * xsane.gamma_green;
+
+ if (contrast < -100)
+ {
+ contrast = -100;
+ }
+
+ xsane_gamma_to_histogram(&min, &mid, &max, contrast, brightness, gamma);
+
+ xsane.slider_green.value[0] = min;
+ xsane.slider_green.value[1] = mid;
+ xsane.slider_green.value[2] = max;
+
+
+ /* blue */
+ contrast = xsane.contrast + xsane.contrast_blue;
+ brightness = xsane.brightness + xsane.brightness_blue;
+ gamma = xsane.gamma * xsane.gamma_blue;
+
+ if (contrast < -100)
+ {
+ contrast = -100;
+ }
+
+ xsane_gamma_to_histogram(&min, &mid, &max, contrast, brightness, gamma);
+
+ xsane.slider_blue.value[0] = min;
+ xsane.slider_blue.value[1] = mid;
+ xsane.slider_blue.value[2] = max;
+
+
+ xsane_enhancement_update();
+ xsane_update_gamma_curve(FALSE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_enhancement_restore_default()
+{
+ DBG(DBG_proc, "xsane_enhancement_restore_default\n");
+
+ xsane.gamma = 1.0;
+ xsane.gamma_red = 1.0;
+ xsane.gamma_green = 1.0;
+ xsane.gamma_blue = 1.0;
+
+ xsane.brightness = 0.0;
+ xsane.brightness_red = 0.0;
+ xsane.brightness_green = 0.0;
+ xsane.brightness_blue = 0.0;
+
+ xsane.contrast = 0.0;
+ xsane.contrast_red = 0.0;
+ xsane.contrast_green = 0.0;
+ xsane.contrast_blue = 0.0;
+
+ xsane_enhancement_by_gamma();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_enhancement_restore()
+{
+ DBG(DBG_proc, "xsane_enhancement_restore\n");
+
+ xsane.gamma = preferences.xsane_gamma;
+ xsane.gamma_red = preferences.xsane_gamma_red;
+ xsane.gamma_green = preferences.xsane_gamma_green;
+ xsane.gamma_blue = preferences.xsane_gamma_blue;
+
+ xsane.brightness = preferences.xsane_brightness;
+ xsane.brightness_red = preferences.xsane_brightness_red;
+ xsane.brightness_green = preferences.xsane_brightness_green;
+ xsane.brightness_blue = preferences.xsane_brightness_blue;
+
+ xsane.contrast = preferences.xsane_contrast;
+ xsane.contrast_red = preferences.xsane_contrast_red;
+ xsane.contrast_green = preferences.xsane_contrast_green;
+ xsane.contrast_blue = preferences.xsane_contrast_blue;
+
+ xsane.enhancement_rgb_default = preferences.xsane_rgb_default;
+ xsane.negative = preferences.xsane_negative;
+
+ xsane_refresh_dialog();
+ xsane_enhancement_by_gamma();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_enhancement_store()
+{
+ DBG(DBG_proc, "xsane_enhancement_store\n");
+
+ preferences.xsane_gamma = xsane.gamma;
+ preferences.xsane_gamma_red = xsane.gamma_red;
+ preferences.xsane_gamma_green = xsane.gamma_green;
+ preferences.xsane_gamma_blue = xsane.gamma_blue;
+
+ preferences.xsane_brightness = xsane.brightness;
+ preferences.xsane_brightness_red = xsane.brightness_red;
+ preferences.xsane_brightness_green = xsane.brightness_green;
+ preferences.xsane_brightness_blue = xsane.brightness_blue;
+
+ preferences.xsane_contrast = xsane.contrast;
+ preferences.xsane_contrast_red = xsane.contrast_red;
+ preferences.xsane_contrast_green = xsane.contrast_green;
+ preferences.xsane_contrast_blue = xsane.contrast_blue;
+
+ preferences.xsane_rgb_default = xsane.enhancement_rgb_default;
+ preferences.xsane_negative = xsane.negative;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_histogram_to_gamma(XsaneSlider *slider,
+ double *contrast, double contrast_offset,
+ double *brightness, double brightness_offset,
+ double *gamma, double gamma_multiplier)
+{
+ double mid;
+ double range;
+ int correct_bound = ((slider->active == XSANE_SLIDER_ACTIVE) || (slider->active == XSANE_SLIDER_INACTIVE)); /* slider not moved */
+
+ DBG(DBG_proc, "xsane_histogram_to_gamma(correct_bound = %d)\n", correct_bound);
+
+ *contrast = (10000.0 / (slider->value[2] - slider->value[0]) - 100.0);
+ if (correct_bound)
+ {
+ xsane_bound_double(contrast, -100.0 + contrast_offset, xsane.contrast_max + contrast_offset);
+ }
+
+ *brightness = - (slider->value[0] - 50.0) * (*contrast + 100.0)/50.0 - 100.0;
+ if (correct_bound)
+ {
+ xsane_bound_double(brightness, xsane.brightness_min + brightness_offset, xsane.brightness_max + brightness_offset);
+ }
+
+ mid = slider->value[1] - slider->value[0];
+ range = slider->value[2] - slider->value[0];
+
+ *gamma = log(mid/range) / log(0.5);
+ if (correct_bound)
+ {
+ xsane_bound_double(gamma, XSANE_GAMMA_MIN * gamma_multiplier, XSANE_GAMMA_MAX * gamma_multiplier);
+ return 1; /* in bound */
+ }
+ else if (xsane_check_bound_double(*contrast, -100.0 + contrast_offset, xsane.contrast_max + contrast_offset) &&
+ xsane_check_bound_double(*brightness, XSANE_BRIGHTNESS_MIN + brightness_offset, xsane.brightness_max + brightness_offset) &&
+ xsane_check_bound_double(*gamma, XSANE_GAMMA_MIN * gamma_multiplier, XSANE_GAMMA_MAX * gamma_multiplier))
+ {
+ return 1; /* in bound */
+ }
+ return 0; /* out of bound */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_enhancement_by_histogram(int update_gamma)
+{
+ double gray_brightness;
+ double gray_contrast;
+ double gray_gamma;
+ double brightness;
+ double contrast;
+ double gamma;
+
+ DBG(DBG_proc, "xsane_enhancement_by_histogram\n");
+
+ if (xsane_histogram_to_gamma(&xsane.slider_gray, &gray_contrast, 0, &gray_brightness, 0, &gray_gamma, 1.0))
+ {
+ if (update_gamma)
+ {
+ xsane.gamma = gray_gamma;
+ }
+
+ xsane.brightness = gray_brightness;
+ xsane.contrast = gray_contrast;
+ }
+
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) ) /* rgb sliders active */
+ {
+ if ((xsane.slider_gray.active == XSANE_SLIDER_ACTIVE) ||
+ (xsane.slider_gray.active == XSANE_SLIDER_INACTIVE)) /* gray slider not moved */
+ {
+ /* red */
+ if (xsane_histogram_to_gamma(&xsane.slider_red, &contrast, gray_contrast, &brightness, gray_brightness, &gamma, gray_gamma))
+ {
+ if (update_gamma)
+ {
+ xsane.gamma_red = gamma / gray_gamma;
+ }
+ xsane.brightness_red = brightness - gray_brightness;
+ xsane.contrast_red = contrast - gray_contrast;
+ }
+
+ /* green */
+ if (xsane_histogram_to_gamma(&xsane.slider_green, &contrast, gray_contrast, &brightness, gray_brightness, &gamma, gray_gamma))
+ {
+ if (update_gamma)
+ {
+ xsane.gamma_green = gamma / gray_gamma;
+ }
+ xsane.brightness_green = brightness - gray_brightness;
+ xsane.contrast_green = contrast - gray_contrast;
+ }
+
+ /* blue */
+ if (xsane_histogram_to_gamma(&xsane.slider_blue, &contrast, gray_contrast, &brightness, gray_brightness, &gamma, gray_gamma))
+ {
+ if (update_gamma)
+ {
+ xsane.gamma_blue = gamma / gray_gamma;
+ }
+ xsane.brightness_blue = brightness - gray_brightness;
+ xsane.contrast_blue = contrast - gray_contrast;
+ }
+
+ }
+ }
+
+ xsane_enhancement_by_gamma();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_histogram_win_delete(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_histogram_win_delete\n");
+
+ gtk_widget_hide(widget);
+ preferences.show_histogram = FALSE;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_histogram_widget), preferences.show_histogram);
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_histogram_dialog(const char *devicetext)
+{
+ char windowname[255];
+ GtkWidget *xsane_color_hbox;
+ GtkWidget *xsane_histogram_vbox;
+ GtkWidget *button;
+ GdkColor color_black;
+ GdkColor color_red;
+ GdkColor color_green;
+ GdkColor color_blue;
+ GdkColor color_backg;
+ GdkColormap *colormap;
+ GtkStyle *style;
+
+ DBG(DBG_proc, "xsane_create_histogram_dialog\n");
+
+ xsane.histogram_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_policy(GTK_WINDOW(xsane.histogram_dialog), FALSE, FALSE, FALSE);
+ gtk_widget_set_uposition(xsane.histogram_dialog, XSANE_HISTOGRAM_POS_X, XSANE_HISTOGRAM_POS_Y);
+ gtk_signal_connect(GTK_OBJECT(xsane.histogram_dialog), "delete_event", GTK_SIGNAL_FUNC(xsane_histogram_win_delete), NULL);
+ sprintf(windowname, "%s %s", WINDOW_HISTOGRAM, devicetext);
+ gtk_window_set_title(GTK_WINDOW(xsane.histogram_dialog), windowname);
+ xsane_set_window_icon(xsane.histogram_dialog, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(xsane.histogram_dialog));
+
+ xsane_histogram_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_histogram_vbox), 5);
+ gtk_container_add(GTK_CONTAINER(xsane.histogram_dialog), xsane_histogram_vbox);
+ gtk_widget_show(xsane_histogram_vbox);
+
+
+ /* set gc for histogram drawing */
+ gtk_widget_realize(xsane.histogram_dialog); /* realize dialog to get colors and style */
+
+ style = gtk_widget_get_style(xsane.histogram_dialog);
+/*
+ style = gtk_rc_get_style(xsane.histogram_dialog);
+ style = gtk_widget_get_default_style();
+*/
+
+ xsane.gc_trans = style->bg_gc[GTK_STATE_NORMAL];
+ xsane.bg_trans = &style->bg[GTK_STATE_NORMAL];
+
+ colormap = gdk_window_get_colormap(xsane.histogram_dialog->window);
+
+ xsane.gc_black = gdk_gc_new(xsane.histogram_dialog->window);
+ color_black.red = 0;
+ color_black.green = 0;
+ color_black.blue = 0;
+ gdk_color_alloc(colormap, &color_black);
+ gdk_gc_set_foreground(xsane.gc_black, &color_black);
+
+ xsane.gc_red = gdk_gc_new(xsane.histogram_dialog->window);
+ color_red.red = 40000;
+ color_red.green = 10000;
+ color_red.blue = 10000;
+ gdk_color_alloc(colormap, &color_red);
+ gdk_gc_set_foreground(xsane.gc_red, &color_red);
+
+ xsane.gc_green = gdk_gc_new(xsane.histogram_dialog->window);
+ color_green.red = 10000;
+ color_green.green = 40000;
+ color_green.blue = 10000;
+ gdk_color_alloc(colormap, &color_green);
+ gdk_gc_set_foreground(xsane.gc_green, &color_green);
+
+ xsane.gc_blue = gdk_gc_new(xsane.histogram_dialog->window);
+ color_blue.red = 10000;
+ color_blue.green = 10000;
+ color_blue.blue = 40000;
+ gdk_color_alloc(colormap, &color_blue);
+ gdk_gc_set_foreground(xsane.gc_blue, &color_blue);
+
+ xsane.gc_backg = gdk_gc_new(xsane.histogram_dialog->window);
+ color_backg.red = 50000;
+ color_backg.green = 50000;
+ color_backg.blue = 50000;
+ gdk_color_alloc(colormap, &color_backg);
+ gdk_gc_set_foreground(xsane.gc_backg, &color_backg);
+
+
+ /* add histogram images and sliders */
+
+ xsane_create_histogram(xsane_histogram_vbox, FRAME_RAW_IMAGE, 256, 100, &(xsane.histogram_raw));
+
+ xsane_separator_new(xsane_histogram_vbox, 0);
+
+ xsane.slider_gray.r = 1;
+ xsane.slider_gray.g = 1;
+ xsane.slider_gray.b = 1;
+ xsane.slider_gray.active = XSANE_SLIDER_ACTIVE;
+ xsane_create_slider(&xsane.slider_gray);
+ gtk_box_pack_start(GTK_BOX(xsane_histogram_vbox), xsane.slider_gray.preview, FALSE, FALSE, 0);
+ gtk_widget_show(xsane.slider_gray.preview);
+ gtk_widget_realize(xsane.slider_gray.preview);
+
+ xsane_separator_new(xsane_histogram_vbox, 0);
+
+ xsane.slider_red.r = 1;
+ xsane.slider_red.g = 0;
+ xsane.slider_red.b = 0;
+ xsane.slider_red.active = XSANE_SLIDER_ACTIVE;
+ xsane_create_slider(&xsane.slider_red);
+ gtk_box_pack_start(GTK_BOX(xsane_histogram_vbox), xsane.slider_red.preview, FALSE, FALSE, 0);
+ gtk_widget_show(xsane.slider_red.preview);
+ gtk_widget_realize(xsane.slider_red.preview);
+
+ xsane_separator_new(xsane_histogram_vbox, 0);
+
+ xsane.slider_green.r = 0;
+ xsane.slider_green.g = 1;
+ xsane.slider_green.b = 0;
+ xsane.slider_green.active = XSANE_SLIDER_ACTIVE;
+ xsane_create_slider(&xsane.slider_green);
+ gtk_box_pack_start(GTK_BOX(xsane_histogram_vbox), xsane.slider_green.preview, FALSE, FALSE, 0);
+ gtk_widget_show(xsane.slider_green.preview);
+ gtk_widget_realize(xsane.slider_green.preview);
+
+ xsane_separator_new(xsane_histogram_vbox, 0);
+
+ xsane.slider_blue.r = 0;
+ xsane.slider_blue.g = 0;
+ xsane.slider_blue.b = 1;
+ xsane.slider_blue.active = XSANE_SLIDER_ACTIVE;
+ xsane_create_slider(&xsane.slider_blue);
+ gtk_box_pack_start(GTK_BOX(xsane_histogram_vbox), xsane.slider_blue.preview, FALSE, FALSE, 0);
+ gtk_widget_show(xsane.slider_blue.preview);
+ gtk_widget_realize(xsane.slider_blue.preview);
+
+ xsane_draw_slider_level(&xsane.slider_gray);
+ xsane_draw_slider_level(&xsane.slider_red);
+ xsane_draw_slider_level(&xsane.slider_green);
+ xsane_draw_slider_level(&xsane.slider_blue);
+
+ xsane_separator_new(xsane_histogram_vbox, 0);
+
+ xsane_create_histogram(xsane_histogram_vbox, FRAME_ENHANCED_IMAGE, 256, 100, &(xsane.histogram_enh));
+
+ xsane_color_hbox = gtk_hbox_new(TRUE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_color_hbox), 5);
+ gtk_container_add(GTK_CONTAINER(xsane_histogram_vbox), xsane_color_hbox);
+ gtk_widget_show(xsane_color_hbox);
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.histogram_dialog->window, xsane_color_hbox, intensity_xpm, DESC_HIST_INTENSITY,
+ &xsane.histogram_int, xsane_histogram_toggle_button_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_I, GDK_MOD1_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.histogram_dialog->window, xsane_color_hbox, red_xpm, DESC_HIST_RED,
+ &xsane.histogram_red, xsane_histogram_toggle_button_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_R, GDK_MOD1_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.histogram_dialog->window, xsane_color_hbox, green_xpm, DESC_HIST_GREEN,
+ &xsane.histogram_green, xsane_histogram_toggle_button_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_G, GDK_MOD1_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.histogram_dialog->window, xsane_color_hbox, blue_xpm, DESC_HIST_BLUE,
+ &xsane.histogram_blue, xsane_histogram_toggle_button_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_B, GDK_MOD1_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.histogram_dialog->window, xsane_color_hbox, pixel_xpm, DESC_HIST_PIXEL,
+ &xsane.histogram_lines, xsane_histogram_toggle_button_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_M, GDK_MOD1_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.histogram_dialog->window, xsane_color_hbox, log_xpm, DESC_HIST_LOG,
+ &xsane.histogram_log, xsane_histogram_toggle_button_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_L, GDK_MOD1_MASK, GTK_ACCEL_LOCKED);
+
+ gtk_widget_show(xsane_color_hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+/* xsane_get_free_gamma_curve transforms gamma table with 65536 entries and value range 0.0-1.0 to requested gamma table */
+/* it combines the color gamma table given by gamma_widget and the gray gamma table (xsane.gamma_curve_gray) */
+void xsane_get_free_gamma_curve(gfloat *free_color_gamma_data, SANE_Int *gammadata,
+ int negative, double gamma, double brightness, double contrast,
+ int len, int maxout)
+{
+ int i;
+ gfloat factor;
+ double midin;
+ double val;
+ double m;
+ double b;
+ int maxin = len-1;
+
+ DBG(DBG_proc, "xsane_get_free_gamma_curve\n");
+ DBG(DBG_proc, "xsane_get_free_gamma_curve(neg=%d, gam=%3.2f, bri=%3.2f, ctr=%3.2f, nrs=%d, max=%d\n",
+ negative, gamma, brightness, contrast, len, maxout);
+
+ if (contrast < -100.0)
+ {
+ contrast = -100.0;
+ }
+
+ midin = (int)(len / 2.0);
+
+ m = 1.0 + contrast/100.0;
+ b = (1.0 + brightness/100.0) * midin;
+
+ factor = 65536.0 / len;
+
+ if (1) /* xxxxxxxxxxxx colors available */
+ {
+ if (negative)
+ {
+ DBG(DBG_proc, "xsane_get_free_gamma_curve: color transformation, negative\n");
+
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) (maxin - i)) - midin;
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+
+ val = maxout * xsane.free_gamma_data[(int) (65535 * free_color_gamma_data[(int) (val * factor)])];
+ val = 0.5 + maxout * pow( val/maxin, (1.0/gamma) );
+ gammadata[i] = val;
+ }
+ }
+ else /* positive */
+ {
+ DBG(DBG_proc, "xsane_get_free_gamma_curve: color transformation, positive\n");
+
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) i) - midin;
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+
+ val = maxout * xsane.free_gamma_data[(int) (65535 * free_color_gamma_data[(int) (val * factor)])];
+ val = 0.5 + maxout * pow( val/maxin, (1.0/gamma) );
+ gammadata[i] = val;
+ }
+ }
+ }
+ else
+ {
+ if (negative)
+ {
+ DBG(DBG_proc, "xsane_get_free_gamma_curve: gray transformation, negative\n");
+
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) (maxin - i)) - midin;
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+
+ val = maxout * xsane.free_gamma_data[(int) (val * factor)];
+ val = 0.5 + maxout * pow( val/maxin, (1.0/gamma) );
+ gammadata[i] = val;
+ }
+ }
+ else /* positive */
+ {
+ DBG(DBG_proc, "xsane_get_free_gamma_curve: gray transformation, positive\n");
+
+ for (i=0; i <= maxin; i++)
+ {
+ val = ((double) i) - midin;
+ val = val * m + b;
+ xsane_bound_double(&val, 0.0, maxin);
+
+ val = maxout * xsane.free_gamma_data[(int) (val * factor)];
+ val = 0.5 + maxout * pow( val/maxin, (1.0/gamma) );
+ gammadata[i] = val;
+ }
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_gamma_win_delete(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_gamma_win_delete\n");
+
+ gtk_widget_hide(widget);
+ preferences.show_gamma = FALSE;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_gamma_widget), preferences.show_gamma);
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+/* xsane_gamma_curve_notebook_page_new creates a notebook page with a gamma curve
+ of 65536 entries and a value range from 0.0-1.0 */
+
+GtkWidget* xsane_gamma_curve_notebook_page_new(GtkWidget *notebook, char *title)
+{
+ gfloat fmin, fmax, *vector;
+ GtkWidget *curve, *gamma, *vbox, *label;
+ int optlen;
+
+ DBG(DBG_proc, "xsane_back_gtk_curve_new\n");
+
+ optlen = 65536;
+ fmin = 0.0;
+ fmax = 1.0;
+
+ label = gtk_label_new((char *) title);
+ vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, label);
+ gtk_widget_show(vbox);
+ gtk_widget_show(label);
+
+ gamma = gtk_gamma_curve_new();
+ gtk_widget_set_usize(gamma, 0, 256);
+ curve = GTK_GAMMA_CURVE(gamma)->curve;
+
+ vector = alloca(optlen * sizeof(vector[0]));
+
+ gtk_curve_set_range(GTK_CURVE(curve), 0, optlen - 1, fmin, fmax);
+#if 1
+ gtk_curve_maintain_accuracy(GTK_CURVE(curve), 1.0);
+#endif
+
+ gtk_container_set_border_width(GTK_CONTAINER(gamma), 4);
+ gtk_box_pack_start(GTK_BOX(vbox), gamma, TRUE, TRUE, 0);
+ gtk_widget_show(gamma);
+
+ return gamma;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_create_gamma_dialog(const char *devicetext)
+{
+ char windowname[255];
+ GtkWidget *xsane_vbox_gamma, *notebook;
+
+ DBG(DBG_proc, "xsane_create_free_gamma_dialog\n");
+
+ xsane.free_gamma_data = calloc(65536, sizeof(xsane.free_gamma_data[0]));
+ xsane.free_gamma_data_red = calloc(65536, sizeof(xsane.free_gamma_data_red[0]));
+ xsane.free_gamma_data_green = calloc(65536, sizeof(xsane.free_gamma_data_green[0]));
+ xsane.free_gamma_data_blue = calloc(65536, sizeof(xsane.free_gamma_data_green[0]));
+
+ xsane.gamma_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_policy(GTK_WINDOW(xsane.gamma_dialog), FALSE, FALSE, FALSE);
+ gtk_widget_set_uposition(xsane.gamma_dialog, XSANE_GAMMA_POS_X, XSANE_GAMMA_POS_Y);
+ gtk_signal_connect(GTK_OBJECT(xsane.gamma_dialog), "delete_event", GTK_SIGNAL_FUNC(xsane_gamma_win_delete), NULL);
+ sprintf(windowname, "%s %s", WINDOW_GAMMA, devicetext);
+ gtk_window_set_title(GTK_WINDOW(xsane.gamma_dialog), windowname);
+ xsane_set_window_icon(xsane.gamma_dialog, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(xsane.gamma_dialog));
+
+ xsane_vbox_gamma = gtk_vbox_new(TRUE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_vbox_gamma), 5);
+ gtk_container_add(GTK_CONTAINER(xsane.gamma_dialog), xsane_vbox_gamma);
+ gtk_widget_show(xsane_vbox_gamma);
+
+ notebook = gtk_notebook_new();
+ gtk_container_set_border_width(GTK_CONTAINER(notebook), 4);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_gamma), notebook, TRUE, TRUE, 0);
+ gtk_widget_show(notebook);
+
+ xsane.gamma_curve_gray = xsane_gamma_curve_notebook_page_new(notebook, "Gamma gray");
+ xsane.gamma_curve_red = xsane_gamma_curve_notebook_page_new(notebook, "Gamma red");
+ xsane.gamma_curve_green = xsane_gamma_curve_notebook_page_new(notebook, "Gamma green");
+ xsane.gamma_curve_blue = xsane_gamma_curve_notebook_page_new(notebook, "Gamma blue");
+
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_gray)->curve), 65536, xsane.free_gamma_data);
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_red)->curve), 65536, xsane.free_gamma_data_red);
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_green)->curve), 65536, xsane.free_gamma_data_green);
+ gtk_curve_get_vector(GTK_CURVE(GTK_GAMMA_CURVE(xsane.gamma_curve_blue)->curve), 65536, xsane.free_gamma_data_blue);
+
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_gamma_dialog()
+{
+ DBG(DBG_proc, "xsane_update_gamma_dialog\n");
+
+ if (preferences.show_gamma)
+ {
+ gtk_widget_show(xsane.gamma_dialog);
+ }
+}
+#endif
+
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_set_auto_enhancement()
+{
+ DBG(DBG_proc, "xsane_set_auto_enhancement\n");
+ xsane.slider_gray.value[0] = xsane.auto_black;
+ xsane.slider_gray.value[1] = xsane.auto_gray;
+ xsane.slider_gray.value[2] = xsane.auto_white;
+
+ if (xsane.enhancement_rgb_default) /* set same values for color components */
+ {
+ xsane.slider_red.value[0] = xsane.auto_black;
+ xsane.slider_red.value[1] = xsane.auto_gray;
+ xsane.slider_red.value[2] = xsane.auto_white;
+
+ xsane.slider_green.value[0] = xsane.auto_black;
+ xsane.slider_green.value[1] = xsane.auto_gray;
+ xsane.slider_green.value[2] = xsane.auto_white;
+
+ xsane.slider_blue.value[0] = xsane.auto_black;
+ xsane.slider_blue.value[1] = xsane.auto_gray;
+ xsane.slider_blue.value[2] = xsane.auto_white;
+ }
+ else /* set different values for each color component */
+ {
+ xsane.slider_red.value[0] = xsane.auto_black_red;
+ xsane.slider_red.value[1] = xsane.auto_gray_red;
+ xsane.slider_red.value[2] = xsane.auto_white_red;
+
+ xsane.slider_green.value[0] = xsane.auto_black_green;
+ xsane.slider_green.value[1] = xsane.auto_gray_green;
+ xsane.slider_green.value[2] = xsane.auto_white_green;
+
+ xsane.slider_blue.value[0] = xsane.auto_black_blue;
+ xsane.slider_blue.value[1] = xsane.auto_gray_blue;
+ xsane.slider_blue.value[2] = xsane.auto_white_blue;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+void xsane_set_medium(Preferences_medium_t *medium)
+{
+ const SANE_Option_Descriptor *opt;
+ int shadow_gray, shadow_red, shadow_green, shadow_blue;
+ int highlight_gray, highlight_red, highlight_green, highlight_blue;
+
+
+ if (!medium)
+ {
+ DBG(DBG_proc, "xsane_set_medium: no medium given, using default values\n");
+
+ xsane.medium_gamma_gray = 1.0;
+ xsane.medium_gamma_red = 1.0;
+ xsane.medium_gamma_green = 1.0;
+ xsane.medium_gamma_blue = 1.0;
+
+ xsane.medium_shadow_gray = 0.0;
+ xsane.medium_shadow_red = 0.0;
+ xsane.medium_shadow_green = 0.0;
+ xsane.medium_shadow_blue = 0.0;
+
+ xsane.medium_highlight_gray = 100.0;
+ xsane.medium_highlight_red = 100.0;
+ xsane.medium_highlight_green = 100.0;
+ xsane.medium_highlight_blue = 100.0;
+
+ xsane.medium_negative = 0;
+
+ return;
+ }
+
+ DBG(DBG_proc, "xsane_set_medium: setting values for %s\n", medium->name);
+
+ xsane.medium_gamma_red = medium->gamma_red;
+ xsane.medium_gamma_green = medium->gamma_green;
+ xsane.medium_gamma_blue = medium->gamma_blue;
+
+ xsane.medium_shadow_red = medium->shadow_red;
+ xsane.medium_shadow_green = medium->shadow_green;
+ xsane.medium_shadow_blue = medium->shadow_blue;
+
+ xsane.medium_highlight_red = medium->highlight_red;
+ xsane.medium_highlight_green = medium->highlight_green;
+ xsane.medium_highlight_blue = medium->highlight_blue;
+
+ xsane.medium_gamma_gray = medium->gamma_gray;
+ xsane.medium_shadow_gray = medium->shadow_gray;
+ xsane.medium_highlight_gray = medium->highlight_gray;
+
+ xsane.medium_negative = medium->negative;
+
+#if 1
+return;
+#endif
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.shadow);
+ if (!opt)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.shadow_r);
+ }
+ else if (!opt)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.highlight);
+ }
+ else if (!opt)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.highlight_r);
+ }
+ else if (!opt)
+ {
+ DBG(DBG_info, "xsane_set_medium_callback: no shadow/highlight values available\n");
+ return;
+ }
+
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ shadow_gray = SANE_FIX(medium->shadow_gray);
+ shadow_red = SANE_FIX(medium->shadow_red);
+ shadow_green = SANE_FIX(medium->shadow_green);
+ shadow_blue = SANE_FIX(medium->shadow_blue);
+ highlight_gray = SANE_FIX(medium->highlight_gray);
+ highlight_red = SANE_FIX(medium->highlight_red);
+ highlight_green = SANE_FIX(medium->highlight_green);
+ highlight_blue = SANE_FIX(medium->highlight_blue);
+ }
+ else if (opt->type == SANE_TYPE_INT)
+ {
+ shadow_gray = (int) medium->shadow_gray;
+ shadow_red = (int) medium->shadow_red;
+ shadow_green = (int) medium->shadow_green;
+ shadow_blue = (int) medium->shadow_blue;
+ highlight_gray = (int) medium->highlight_gray;
+ highlight_red = (int) medium->highlight_red;
+ highlight_green = (int) medium->highlight_green;
+ highlight_blue = (int) medium->highlight_blue;
+ }
+ else
+ {
+ DBG(DBG_info, "xsane_set_medium_callback: unknown type of shadow/highlight: %d\n", opt->type);
+ return;
+ }
+
+ /* shadow values */
+ if (!xsane_control_option(xsane.dev, xsane.well_known.shadow, SANE_ACTION_SET_VALUE, &shadow_gray, 0))
+ {
+ xsane.medium_shadow_gray = 0.0; /* we are using hardware shadow */
+ }
+
+ if (!xsane_control_option(xsane.dev, xsane.well_known.shadow_r, SANE_ACTION_SET_VALUE, &shadow_red, 0))
+ {
+ xsane.medium_shadow_red = 0.0; /* we are using hardware shadow */
+ }
+
+ if (!xsane_control_option(xsane.dev, xsane.well_known.shadow_g, SANE_ACTION_SET_VALUE, &shadow_green, 0))
+ {
+ xsane.medium_shadow_green = 0.0; /* we are using hardware shadow */
+ }
+
+ if (!xsane_control_option(xsane.dev, xsane.well_known.shadow_b, SANE_ACTION_SET_VALUE, &shadow_blue, 0))
+ {
+ xsane.medium_shadow_blue = 0.0; /* we are using hardware shadow */
+ }
+
+ /* highlight values */
+ if (!xsane_control_option(xsane.dev, xsane.well_known.highlight, SANE_ACTION_SET_VALUE, &highlight_gray, 0))
+ {
+ xsane.medium_highlight_gray = 100.0; /* we are using hardware highlight */
+ }
+
+ if (!xsane_control_option(xsane.dev, xsane.well_known.highlight_r, SANE_ACTION_SET_VALUE, &highlight_red, 0))
+ {
+ xsane.medium_highlight_red = 100.0; /* we are using hardware highlight */
+ }
+
+ if (!xsane_control_option(xsane.dev, xsane.well_known.highlight_g, SANE_ACTION_SET_VALUE, &highlight_green, 0))
+ {
+ xsane.medium_highlight_green = 100.0; /* we are using hardware highlight */
+ }
+
+ if (!xsane_control_option(xsane.dev, xsane.well_known.highlight_b, SANE_ACTION_SET_VALUE, &highlight_blue, 0))
+ {
+ xsane.medium_highlight_blue = 100.0; /* we are using hardware highlight */
+ }
+
+ xsane_back_gtk_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-gamma.h b/src/xsane-gamma.h
new file mode 100644
index 0000000..124b21a
--- /dev/null
+++ b/src/xsane-gamma.h
@@ -0,0 +1,58 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-gamma.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include <sane/sane.h>
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_clear_histogram(XsanePixmap *hist);
+extern void xsane_draw_slider_level(XsaneSlider *slider);
+extern void xsane_update_slider(XsaneSlider *slider);
+extern void xsane_update_sliders(void);
+extern void xsane_create_slider(XsaneSlider *slider);
+extern void xsane_create_histogram(GtkWidget *parent, const char *title, int width, int height, XsanePixmap *hist);
+extern void xsane_get_free_gamma_curve(gfloat *free_color_gamma_data, SANE_Int *gammadata,
+ int negative, double gamma, double brightness, double contrast,
+ int len, int maxout);
+extern void xsane_calculate_raw_histogram(void);
+extern void xsane_calculate_end_histogram(void);
+extern void xsane_update_histogram(int update_raw);
+extern void xsane_histogram_toggle_button_callback(GtkWidget *widget, gpointer data);
+extern void xsane_create_gamma_curve(SANE_Int *gammadata,
+ int negative, double gamma, double brightness, double contrast,
+ double medium_shadow, double medium_highlight, double medium_gamma,
+ int numbers, int maxout);
+extern void xsane_update_gamma_curve(int update_raw);
+extern void xsane_enhancement_by_gamma(void);
+extern void xsane_enhancement_restore_default(void);
+extern void xsane_enhancement_restore(void);
+extern void xsane_enhancement_store(void);
+extern void xsane_enhancement_by_histogram(int update_gamma);
+extern void xsane_create_histogram_dialog(const char *devicetext);
+extern void xsane_create_gamma_dialog(const char *devicetext);
+extern void xsane_update_gamma_dialog(void);
+extern void xsane_set_auto_enhancement(void);
+extern void xsane_set_medium(Preferences_medium_t *medium);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-gimp-1_0-compat.h b/src/xsane-gimp-1_0-compat.h
new file mode 100644
index 0000000..363c826
--- /dev/null
+++ b/src/xsane-gimp-1_0-compat.h
@@ -0,0 +1,50 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-gimp-1_0-compat.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 2000-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+#ifndef XSANE_OLDGIMP_H
+#define XSANE_OLDGIMP_H
+
+#define GimpPlugInInfo GPlugInInfo
+#define GimpParam GParam
+#define GimpParamDef GParamDef
+#define GimpDrawable GDrawable
+#define GimpPixelRgn GPixelRgn
+#define GimpRunModeType GRunModeType
+#define GimpImageType GImageType
+
+#define GIMP_PDB_INT32 PARAM_INT32
+#define GIMP_PDB_STATUS PARAM_STATUS
+#define GIMP_PDB_CALLING_ERROR STATUS_CALLING_ERROR
+#define GIMP_PDB_SUCCESS STATUS_SUCCESS
+#define GIMP_RUN_INTERACTIVE RUN_INTERACTIVE
+#define GIMP_RUN_NONINTERACTIVE RUN_NONINTERACTIVE
+#define GIMP_RUN_WITH_LAST_VALS RUN_WITH_LAST_VALS
+#define GIMP_EXTENSION PROC_EXTENSION
+#define GIMP_RGB RGB
+#define GIMP_RGB_IMAGE RGB_IMAGE
+#define GIMP_GRAY GRAY
+#define GIMP_GRAY_IMAGE GRAY_IMAGE
+#define GIMP_RGBA_IMAGE RGBA_IMAGE
+#define GIMP_NORMAL_MODE NORMAL_MODE
+
+#endif
+
diff --git a/src/xsane-icons.c b/src/xsane-icons.c
new file mode 100644
index 0000000..baa5f32
--- /dev/null
+++ b/src/xsane-icons.c
@@ -0,0 +1,2558 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-icons.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* --------------------------------------------------- */
+
+const char *xsane_window_icon_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 14 16 6 1",
+/* color */
+" none",
+"b c #2020e0",
+"w c #eeeeee",
+"x c #fff098",
+"y c #f0e890",
+"z c #e8d880",
+/* pixel */
+" xxyyyyy ",
+" xyyyyyyyyyyz ",
+"xyyyyzzyyyyyyz",
+"xyxz zyyz",
+"xxy yyz",
+" yyyy yy ",
+" zyyyyz yyy ",
+" zzzz yxz",
+" zbbbbz yyz",
+" x zbbwwbbz yy",
+"xy zbbwwbbz yy",
+"xyy zbbbbz xyy",
+"xyyy zzzz xyyz",
+"xyyyyyyyyyyyz ",
+" zyyyyyyyyz ",
+" zzzzzzz "
+};
+
+/* --------------------------------------------------- */
+
+const char *error_xpm[] =
+{
+"40 40 6 1",
+" c None",
+". c #FE0809",
+"+ c #FDFDFC",
+"@ c #E5D5D6",
+"# c #E1A09F",
+"$ c #FE8081",
+" #@@++++@@# ",
+" #@++++++++++++@# ",
+" #+++@#$......$$@+++# ",
+" #+++#..............#+++# ",
+" #++#..................@++# ",
+" @++$....................$++@ ",
+" @+@........................++@ ",
+" #+@$.........................@+# ",
+" #++...........................$++# ",
+" ++$.....@+...............++....$++ ",
+" #+#.....+++@.............+++@....#+# ",
+" ++.....$+++++...........@++++$....++ ",
+" #+#......#++++@.........+++++#.....#+# ",
+" @+........#+++++.......@++++$.......+@ ",
+" +@.........$++++@.....+++++#........++ ",
+"#+$..........#+++++...@++++$.........$+#",
+"@+$...........$+++++$@++++#..........$+@",
+"@+.............#+++++++++$............+@",
+"++..............$+++++++#.............++",
+"++...............#+++++#..............++",
+"++...............++++++@..............++",
+"++..............@++++++++.............++",
+"@+.............+++++@++++@............+@",
+"@+$...........@++++#.#+++++..........$+@",
+"#+$..........+++++$...$++++@.........$+#",
+" +@.........@++++#.....#+++++........@+ ",
+" @+........+++++$.......$++++@.......+@ ",
+" #+#......@++++#.........#+++++.....#+# ",
+" ++.....#++++#...........$++++$....++ ",
+" @+#.....$++$.............#++$....#+# ",
+" ++$.....#$...............$#....$++ ",
+" #++............................++# ",
+" #++..........................++# ",
+" @++........................++@ ",
+" @++$....................$++@ ",
+" #++#..................#++# ",
+" #+++#..............#+++# ",
+" #+++@$$......$$++++# ",
+" #+++++++++++++@# ",
+" #@@++++@@# "
+};
+
+/* --------------------------------------------------- */
+
+const char *warning_xpm[] =
+{
+"40 40 4 1",
+" c None",
+". c #FFFFFF",
+"+ c #FFFA00",
+"@ c #000000",
+" ",
+" .. ",
+" .. ",
+" .++. ",
+" .++. ",
+" .++++. ",
+" .++++. ",
+" .++++++. ",
+" .++++++. ",
+" .++++++++. ",
+" .++++++++. ",
+" .++++++++++. ",
+" .++++@@++++. ",
+" .++++@@@@++++. ",
+" .+++@@@@@@+++. ",
+" .++++@@@@@@++++. ",
+" .+++@@@@@@@@+++. ",
+" .++++@@@@@@@@++++. ",
+" .++++@@@@@@@@++++. ",
+" .++++++@@@@@@++++++. ",
+" .++++++@@@@@@++++++. ",
+" .+++++++@@@@@@+++++++. ",
+" .+++++++@@@@@@+++++++. ",
+" .+++++++++@@@@+++++++++. ",
+" .+++++++++@@@@+++++++++. ",
+" .++++++++++@@@@++++++++++. ",
+" .+++++++++++@@+++++++++++. ",
+" .++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++++. ",
+" .+++++++++++++@@+++++++++++++. ",
+" .+++++++++++++@@@@+++++++++++++. ",
+" .+++++++++++++@@@@+++++++++++++. ",
+" .+++++++++++++++@@+++++++++++++++. ",
+" .++++++++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++++++++++. ",
+" ..++++++++++++++++++++++++++++++++++.. ",
+" ...................................... ",
+"........................................"
+};
+
+/* --------------------------------------------------- */
+
+const char *info_xpm[] =
+{
+"40 40 4 1",
+" c None",
+". c #FFFFFF",
+"+ c #00A000",
+"@ c #000000",
+" ",
+" .. ",
+" .. ",
+" .++. ",
+" .++. ",
+" .++++. ",
+" .++++. ",
+" .++++++. ",
+" .++++++. ",
+" .++++++++. ",
+" .++++++++. ",
+" .++++++++++. ",
+" .++++@@++++. ",
+" .++++@@@@++++. ",
+" .+++@@@@@@+++. ",
+" .++++@@@@@@++++. ",
+" .+++@@@@@@@@+++. ",
+" .++++@@@@@@@@++++. ",
+" .++++@@@@@@@@++++. ",
+" .++++++@@@@@@++++++. ",
+" .++++++@@@@@@++++++. ",
+" .+++++++@@@@@@+++++++. ",
+" .+++++++@@@@@@+++++++. ",
+" .+++++++++@@@@+++++++++. ",
+" .+++++++++@@@@+++++++++. ",
+" .++++++++++@@@@++++++++++. ",
+" .+++++++++++@@+++++++++++. ",
+" .++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++++. ",
+" .+++++++++++++@@+++++++++++++. ",
+" .+++++++++++++@@@@+++++++++++++. ",
+" .+++++++++++++@@@@+++++++++++++. ",
+" .+++++++++++++++@@+++++++++++++++. ",
+" .++++++++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++++++++++. ",
+" .++++++++++++++++++++++++++++++++++. ",
+" ..++++++++++++++++++++++++++++++++++.. ",
+" ...................................... ",
+"........................................"
+};
+/* --------------------------------------------------- */
+
+const char *file_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+". c #707070",
+"- c #e0e0e0",
+" none",
+/* pixels */
+" ",
+" ................ ",
+" .*............*. ",
+" .*............*. ",
+" ................ ",
+" ................ ",
+" ................ ",
+" ................ ",
+" ................ ",
+" ................ ",
+" ................ ",
+" ................ ",
+" ....--------.... ",
+" ....-...----.... ",
+" ....-...----.... ",
+" ....-...----.... ",
+" ....-...----.... ",
+" ............... ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *ocr_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+". c #303030",
+"- c #505050",
+" none",
+/* pixels */
+" ",
+" ",
+" ***** **** *** ",
+" * * * * * * ",
+" * * * * * ",
+" ***** **** * ",
+" * * * * * ",
+" * * * * * * ",
+" * * **** *** ",
+" ",
+" ",
+" **** ***** ***** ",
+" * * * * ",
+" * * * * ",
+" * * *** **** ",
+" * * * * ",
+" * * * * ",
+" **** ***** * ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *scale_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #000000",
+"* c #808080",
+"- c #a0a0a0",
+" none",
+/* pixels */
+" ",
+" ..........******** ",
+" . . * ",
+" . . * ",
+" . . * ",
+" . . * ",
+" . . * ",
+" . . * ",
+" .......... * ",
+" * - * ",
+" * - * ",
+" * - * ",
+" * - * ",
+" * - * ",
+" * - * ",
+" * -* ",
+" ****************** ",
+" ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *despeckle_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+". c #303030",
+"- c #505050",
+" none",
+/* pixels */
+" ",
+" .. .. .. - ",
+" .**. .**. .**. .-- ",
+" .**. .**. .**. --- ",
+" .. .. .. ---- ",
+" ----- ",
+" .. .. .------ ",
+" .**. .**. .------- ",
+" .**. .**. -------- ",
+" .. .. --------- ",
+" ---------- ",
+" .. .----------- ",
+" .**. .------------ ",
+" .**. ------------- ",
+" .. -------------- ",
+" --------------- ",
+" .---------------- ",
+" .----------------- ",
+" ------------------ ",
+" "
+};
+
+
+/* --------------------------------------------------- */
+
+const char *blur_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #404040",
+". c #707070",
+" none",
+/* pixels */
+" ",
+" ** ** ** . ",
+" ****************++ ",
+" ***************+++ ",
+" ** ** *+... ",
+" ** ** ++. ",
+" ** ** .++. ",
+" ** ** ..++. ",
+" **********++++++++ ",
+" *********+++++++++ ",
+" ** *+....++... ",
+" ** ++. .++. ",
+" ** .++. .++. ",
+" ** ..++....++... ",
+" ****++++++++++++++ ",
+" ***+++++++++++++++ ",
+" *+....++....++... ",
+" ++. .++. .++. ",
+" .++. .++. .++. ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *clone_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #404040",
+". c #808080",
+" none",
+/* pixels */
+" ",
+" ",
+" ******* ",
+" * * ",
+" * ",
+" * ",
+" * * * ",
+" * * * ",
+" * * * ",
+" * * ",
+" * * * ",
+" * * * ",
+" * * * ",
+" * ",
+" * ",
+" * ",
+" * ",
+" ******** ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *rotate90_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #404040",
+". c #808080",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ******** ",
+" ********* ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" * ** * ",
+" * ** * ",
+" **** ",
+" ** ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *rotate180_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #404040",
+". c #808080",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ******** ",
+" ********* ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" * ** ",
+" * ** ",
+" ******** ",
+" ******* ",
+" * ",
+" * ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *rotate270_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #404040",
+". c #808080",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ******** ",
+" ********* ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" ** ",
+" * ** * ",
+" * ** * ",
+" **** ",
+" ** ",
+" ",
+" ",
+" ",
+" ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *mirror_x_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #505050",
+". c #ffffff",
+" none",
+/* pixels */
+" ",
+" . ",
+" . ",
+" . ",
+" * . + ",
+" * . + ",
+" * * . + + ",
+" * * . + + ",
+" * * . + + ",
+" * * . + + ",
+" * * . + + ",
+" * * . + + ",
+" * *.+ +",
+" *********.+++++++++",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *mirror_y_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+"+ c #505050",
+". c #ffffff",
+" none",
+/* pixels */
+" * ",
+" * * ",
+" * * ",
+" * * ",
+" * * ",
+" * * ",
+" * * ",
+" * * ",
+" ********* ",
+" .................. ",
+" +++++++++ ",
+" + + ",
+" + + ",
+" + + ",
+" + + ",
+" + + ",
+" + + ",
+" + + ",
+" + ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *fax_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+". c #ffffff",
+"- c #e0e0e0",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" .*********** ",
+" ..*.........* ",
+" ...*..**.*.*.* ",
+" ****.........* ",
+" *............* ",
+" *...*...***..* ",
+" *............* ",
+" *.*.*.**.**..* ",
+" *............* ",
+" *..*....*..*.* ",
+" *............* ",
+" *.**..*....*.* ",
+" *............* ",
+" ************** ",
+" ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *faxreceiver_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+"* c #000000",
+"- c #e0e0e0",
+" none",
+/* pixels */
+" ",
+" ********* ",
+" *********** ",
+" ************* ",
+" *********---* ",
+" *******------* ",
+" *****--------* ",
+" *****----***-* ",
+" ****----*----* ",
+" ***-------**--* ",
+" ***------------* ",
+" **--------------* ",
+" **------------*** ",
+" **-----------* ",
+" *-------*---* ",
+" *--------*** ",
+" *----------* ",
+" *---------* ",
+" *------*** ",
+" *----* ",
+};
+
+/* --------------------------------------------------- */
+
+const char *mail_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+". c #ffffff",
+"- c #e0e0e0",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ",
+" ****************** ",
+" **..............** ",
+" *.*............*.* ",
+" *..*..........*..* ",
+" *...*........*...* ",
+" *....*......*....* ",
+" *.....******.....* ",
+" *................* ",
+" *................* ",
+" *................* ",
+" *................* ",
+" ****************** ",
+" ",
+" ",
+" ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *mailreceiver_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+"* c #000000",
+"- c #e0e0e0",
+" none",
+/* pixels */
+" ",
+" ********* ",
+" *********** ",
+" ************* ",
+" *********---* ",
+" *******------* ",
+" *****--------* ",
+" *****----***-* ",
+" ****----*----* ",
+" ***-------**--* ",
+" ***------------* ",
+" **--------------* ",
+" **------------*** ",
+" **-----------* ",
+" *-------*---* ",
+" *--------*** ",
+" *----------* ",
+" *---------* ",
+" *------*** ",
+" *----* ",
+};
+
+/* --------------------------------------------------- */
+
+const char *subject_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+"* c #000000",
+"- c #303030",
+" none",
+/* pixels */
+" ",
+" ",
+" ****** ** ",
+" *** *** ** ",
+" ** ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" *** ** ",
+" ***** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ",
+" ** ** ",
+" ** ** ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *colormode_xpm[] = {
+/* width height num_colors chars_per_pixel */
+" 20 20 23 1",
+/* colors */
+". c #000000",
+"R c #ff0000",
+"1 c #e04000",
+"2 c #c0800",
+"3 c #a0a000",
+"4 c #80c000",
+"5 c #40e000",
+"G c #00ff00",
+"6 c #00e040",
+"7 c #00c080",
+"8 c #00a0a0",
+"9 c #0080c0",
+"0 c #0040e0",
+"B c #0000ff",
+"a c #202020",
+"b c #404040",
+"c c #606060",
+"d c #808080",
+"e c #a0a0a0",
+"f c #c0c0c0",
+"g c #e0e0e0",
+"h c #ffffff",
+" none",
+/* pixels */
+" ",
+" hhhhh ",
+" hhhhh...... ",
+" hhhhh......RRRRRRR ",
+" hhhhhaaaaaaRRRRRRR ",
+" hhhhhbbbbbb1111111 ",
+" hhhhhbbbbbb2222222 ",
+" hhhhhcccccc3333333 ",
+" hhhhhcccccc4444444 ",
+" .....dddddd5555555 ",
+" .....ddddddGGGGGGG ",
+" .....eeeeeeGGGGGGG ",
+" .....eeeeee6666666 ",
+" .....ffffff7777777 ",
+" .....ffffff8888888 ",
+" .....gggggg9999999 ",
+" .....gggggg0000000 ",
+" hhhhhhBBBBBBB ",
+" BBBBBBB ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *medium_xpm[] = {
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+"# c #a05020",
+" none",
+/* pixels */
+" ",
+" ################ ",
+" ################ ",
+" #..##########..# ",
+" #..##########..# ",
+" ################ ",
+" ################ ",
+" #..##########..# ",
+" #..##########..# ",
+" ################ ",
+" ################ ",
+" #..##########..# ",
+" #..##########..# ",
+" ################ ",
+" ################ ",
+" #..##########..# ",
+" #..##########..# ",
+" ################ ",
+" ################ ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *medium_delete_xpm[] = {
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #000000",
+"# c #a05020",
+"* c #000000",
+" none",
+/* pixels */
+"** **",
+"***##############***",
+" ***############*** ",
+" ***##########*** ",
+" #***########***# ",
+" ##***######***## ",
+" ###***####***### ",
+" #..#***##***#..# ",
+" #..##******##..# ",
+" ######****###### ",
+" ######****###### ",
+" #..##******##..# ",
+" #..#***##***#..# ",
+" ###***####***### ",
+" ##***######***## ",
+" #***########***# ",
+" ***##########*** ",
+" ***############** ",
+"***##############** ",
+"** **"
+};
+
+/* --------------------------------------------------- */
+
+const char *Gamma_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #000000",
+" none",
+/* pixels */
+" ",
+" ",
+" ............. ",
+" ... .. ",
+" .. .. ",
+" .. . ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .... ",
+" ........ ",
+" "
+};
+
+/* --------------------------------------------------- */
+
+const char *Gamma_red_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #ff0000",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ............. ",
+" ... .. ",
+" .. .. ",
+" .. . ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .... ",
+" ........ ",
+};
+
+/* --------------------------------------------------- */
+
+const char *Gamma_green_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #00ff00",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ............. ",
+" ... .. ",
+" .. .. ",
+" .. . ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .... ",
+" ........ ",
+};
+
+/* --------------------------------------------------- */
+
+const char *Gamma_blue_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #0000ff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ............. ",
+" ... .. ",
+" .. .. ",
+" .. . ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .. ",
+" .... ",
+" ........ ",
+};
+
+/* --------------------------------------------------- */
+
+const char *brightness_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" . ",
+" . ",
+" . ... . ",
+" . .aaa. . ",
+" .aaaaa. ",
+" .aaaaaaa. ",
+" .aaaaaaaaa. ",
+" ....aaaaaaaaa.... ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" . .aaa. . ",
+" . ... . ",
+" . ",
+" . ",
+" . ",
+};
+
+/* --------------------------------------------------- */
+
+const char *brightness_red_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ff0000",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" . ",
+" . ",
+" . ... . ",
+" . .aaa. . ",
+" .aaaaa. ",
+" .aaaaaaa. ",
+" .aaaaaaaaa. ",
+" ....aaaaaaaaa.... ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" . .aaa. . ",
+" . ... . ",
+" . ",
+" . ",
+" . ",
+};
+
+/* --------------------------------------------------- */
+
+const char *brightness_green_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #00ff00",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" . ",
+" . ",
+" . ... . ",
+" . .aaa. . ",
+" .aaaaa. ",
+" .aaaaaaa. ",
+" .aaaaaaaaa. ",
+" ....aaaaaaaaa.... ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" . .aaa. . ",
+" . ... . ",
+" . ",
+" . ",
+" . ",
+};
+
+const char *brightness_blue_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #0000ff",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" . ",
+" . ",
+" . ... . ",
+" . .aaa. . ",
+" .aaaaa. ",
+" .aaaaaaa. ",
+" .aaaaaaaaa. ",
+" ....aaaaaaaaa.... ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" . .aaa. . ",
+" . ... . ",
+" . ",
+" . ",
+" . ",
+};
+
+/* --------------------------------------------------- */
+
+const char *contrast_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ",
+" ..... ",
+" .....aa.. ",
+" ......aaaa.. ",
+" .......aaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .......aaaaa. ",
+" ......aaaa.. ",
+" .....aa.. ",
+" ..... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *contrast_red_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ff0000",
+/* pixels */
+" ",
+" ",
+" ",
+" ..... ",
+" .....aa.. ",
+" ......aaaa.. ",
+" .......aaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .......aaaaa. ",
+" ......aaaa.. ",
+" .....aa.. ",
+" ..... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *contrast_green_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #00ff00",
+/* pixels */
+" ",
+" ",
+" ",
+" ..... ",
+" .....aa.. ",
+" ......aaaa.. ",
+" .......aaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .......aaaaa. ",
+" ......aaaa.. ",
+" .....aa.. ",
+" ..... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *contrast_blue_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #0000ff",
+/* pixels */
+" ",
+" ",
+" ",
+" ..... ",
+" .....aa.. ",
+" ......aaaa.. ",
+" .......aaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" .........aaaaaaa. ",
+" ........aaaaaa. ",
+" ........aaaaaa. ",
+" .......aaaaa. ",
+" ......aaaa.. ",
+" .....aa.. ",
+" ..... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *threshold_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" . ",
+" . ",
+" . ... . ",
+" . .a... . ",
+" .aa.... ",
+" .aaa..... ",
+" .aaaa...... ",
+" ....aaaa......... ",
+" .aaaa...... ",
+" .aaa..... ",
+" .aa.... ",
+" . .a... . ",
+" . ... . ",
+" . ",
+" . ",
+" . ",
+};
+/* --------------------------------------------------- */
+
+const char *rgb_default_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 6 1",
+/* colors */
+" none",
+"w c #ffffff",
+"k c #000000",
+"r c #ff0000",
+"g c #00ff00",
+"b c #0000ff",
+/* pixels */
+" ",
+" rr gg kk bb ",
+" rr gg kk bb ",
+" rr gg kk bb ",
+" rr gg kk bb ",
+" rr gg kk bb ",
+" rr gg kk bb ",
+" r g k b ",
+" r g k b ",
+" r g k b ",
+" rg k b ",
+" rg k b ",
+" rgkkb ",
+" kk ",
+" kk ",
+" kk ",
+" kk ",
+" kk ",
+" kk ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *negative_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 16 1",
+/* colors */
+" none",
+"W c #b0b0b0",
+"r c #a01010",
+"g c #20a010",
+"b c #0020a0",
+"c c #10a0a0",
+"m c #a000a0",
+"y c #a0a000",
+"W c #ffffff",
+"R c #ff0000",
+"G c #00ff00",
+"B c #0000ff",
+"C c #00ffff",
+"M c #ff00ff",
+"Y c #ffff00",
+"k c #000000",
+/* pixels */
+" ",
+" YYYYYYYYYYYYYYYYYk ",
+" kkYYYYYYYYYkkCCbkB ",
+" kkkYYYYYYkkkkCCkBB ",
+" YYYYYYYYYYCCCCkRRB ",
+" YYYYYkkYYYYCCkRWWW ",
+" YYYYYYYYYYYYkRRBWW ",
+" YYkkYYYYYYkkWBBBBB ",
+" YkkYYYYYYkkWWWBBBB ",
+" YYYYYYYYYkBBBBBBBB ",
+" MMMMMMMMkGGGGGGGGG ",
+" MMMMMMMkGGGGGGGGGG ",
+" MMMGMMkGGGGGGGgGGG ",
+" MMMCMkGGGGGGGGGgGG ",
+" MBMMkgGGRGGGGGGGGG ",
+" MMMkGGgGGGGGGGGgGG ",
+" MMkGGGGGgGGGGgGGGG ",
+" MkGGGGGGGgGGGGGGgG ",
+" kGGGGGGGGGGGGGGGGG ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *enhance_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 16 1",
+/* colors */
+" none",
+"w c #b0b0b0",
+"r c #a01010",
+"g c #20a010",
+"b c #0020a0",
+"c c #10a0a0",
+"m c #a000a0",
+"y c #a0a000",
+"W c #ffffff",
+"R c #ff0000",
+"G c #00ff00",
+"B c #0000ff",
+"C c #00ffff",
+"M c #ff00ff",
+"Y c #ffff00",
+"k c #000000",
+/* pixels */
+" ",
+" bbbbbbbbbbbbbbbbbk ",
+" wwbbbbbbbbbwwrrbkB ",
+" wwwbbbbbbwwwwrrkBB ",
+" bbbbbbbbbbrrrrkRRB ",
+" bbbbbwwbbbbrrkRWWW ",
+" bbbbbbbbbbbbkRRBWW ",
+" bbwwbbbbbbwkBBBBBB ",
+" bwwbbbbbbbkBWBBBBB ",
+" bbbbbbbbbkBBBBBBBB ",
+" ggggggggkGGGGGGGGG ",
+" gggmgggkGGGGGGGGGG ",
+" gggrggkGGGGGGGgGGG ",
+" gggggkGGGGGGGGGgGG ",
+" gyggkgGGRGGGGGGGGG ",
+" gggkGGgGGGGGGGGgGG ",
+" ggkGGGGGgGGGGgGGGG ",
+" gkGGGGGGGgGGGGGGgG ",
+" kGGGGGGGGGGGGGGGGG ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *store_enhancement_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 5 1",
+/* colors */
+"* c #000000",
+". c #606060",
+"- c #e0e0e0",
+"w c #ffffff",
+" none",
+/* pixels */
+" ",
+" * * ",
+" ** ** ",
+" *** *** ",
+" **** **** ",
+" ** ** ** ** ",
+" ** ** ** ** ",
+" ** ***** ** ",
+" ** *** ** ",
+" ** * ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" **** **** ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *restore_enhancement_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 5 1",
+/* colors */
+"* c #000000",
+". c #606060",
+"- c #e0e0e0",
+"w c #ffffff",
+" none",
+/* pixels */
+" ",
+" ************** ",
+" **************** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" ** ** ",
+" *************** ",
+" ************* ",
+" ** *** ",
+" ** ** ",
+" ** ** ",
+" ** *** ",
+" ** ** ",
+" ** *** ",
+" ** ** ",
+" **** **** ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *default_enhancement_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+"* c #000000",
+". c #606060",
+"- c #e0e0e0",
+" none",
+/* pixels */
+" ",
+" * ",
+" * ",
+" * ",
+" * ",
+" * ",
+" * * * ",
+" ** * ** ",
+" ** * ** ",
+" ******* * ******** ",
+" ** * ** ",
+" ** * ** ",
+" * * * ",
+" * ",
+" * ",
+" * ",
+" * ",
+" * ",
+" * ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *pipette_white_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" .... ",
+" ...... ",
+" ...... ",
+" ......... ",
+" ...... ",
+" .aaa.. ",
+" .aaaa.. ",
+" .aaaa. . ",
+" .aaaa. . ",
+" .aaaa. ",
+" .aaaa. ",
+" .aaaa. ",
+" .aaaa. ",
+" .aaaa. ",
+" .aaaa. ",
+" .aaaa. ",
+" .aaa. ",
+" ... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *pipette_gray_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+"X c #808080",
+/* pixels */
+" ",
+" ",
+" .... ",
+" ...... ",
+" ...... ",
+" ......... ",
+" ...... ",
+" .aaa.. ",
+" .aaaa.. ",
+" .aaaa. . ",
+" .XXXX. . ",
+" .XXXX. ",
+" .XXXX. ",
+" .XXXX. ",
+" .XXXX. ",
+" .XXXX. ",
+" .XXXX. ",
+" .XXXX. ",
+" .XXX. ",
+" ... ",
+};
+
+
+const char *pipette_black_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" .... ",
+" ...... ",
+" ...... ",
+" ......... ",
+" ...... ",
+" .aaa.. ",
+" .aaaa.. ",
+" .aaaa. . ",
+" ...... . ",
+" ...... ",
+" ...... ",
+" ...... ",
+" ...... ",
+" ...... ",
+" ...... ",
+" ...... ",
+" ..... ",
+" ... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_in_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ..... ",
+" .+aaaa. ",
+" .++aaaaa. ",
+" .+++aaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" ....... ",
+" ... ",
+" . ... ",
+" . ... ",
+" ..... ... ",
+" . ... ",
+" . .. ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_not_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" .. ..... .. ",
+" ...+aaaa. .. ",
+" ..+aaaaa. .. ",
+" .+..aaaaaa. .. ",
+" .aa..aaaaa... ",
+" .aaa..aaaa.. ",
+" .aaaa..aa.. ",
+" .aaaa.... ",
+" .aaaa.. ",
+" ....... ",
+" .. ... ",
+" .. ... ",
+" .. ... ",
+" .. ... ",
+" .. ... ",
+" .. .. ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_undo_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ..... ",
+" .+aaaa. ",
+" .++aaaaa. ",
+" .+++aaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" ....... ",
+" ... ",
+" ",
+" . . . . .. .. ",
+" . . .. . . . . . ",
+" . . .... . . . . ",
+" . . . .. . . . . ",
+" .. . . .. .. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_out_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ..... ",
+" .+aaaa. ",
+" .++aaaaa. ",
+" .+++aaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaaaa. ",
+" .aaaaaaa. ",
+" .aaaaa. ",
+" ....... ",
+" ... ",
+" ... ",
+" ... ",
+" ..... ... ",
+" ... ",
+" .. ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *full_preview_area_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ",
+" ................. ",
+" . . ",
+" . . . ",
+" . ... . ",
+" . . . . . ",
+" . . . ",
+" . . . ",
+" . . . . . ",
+" . . . . . ",
+" . ............. . ",
+" . . . . . ",
+" . . . . . ",
+" . . . ",
+" . . . ",
+" . . . . . ",
+" . ... . ",
+" . . . ",
+" ................. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *auto_select_preview_area_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ",
+" ................. ",
+" . . . ",
+" . . . . . ",
+" . ... . ",
+" . . . ",
+" . ....... . ",
+" . . . . ",
+" . . . . . . ",
+" . . . . . . ",
+" ...... ...... ",
+" . . . . . . ",
+" . . . . . . ",
+" . ....... . ",
+" . . . ",
+" . ... . ",
+" . . . . . ",
+" . . . ",
+" ................. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *delete_images_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+" none",
+". c #000000",
+"+ c #c0c0c0",
+"a c #ffffff",
+/* pixels */
+" ........ ",
+" .......... ",
+" ............ ",
+" ... .. ... ",
+" ... .. ... ",
+" .............. ",
+" ..... ..... ",
+" .......... ",
+" ........ ",
+" ...... ",
+" ...... ",
+".. ...... ..",
+".... .... ....",
+" ... ... ",
+" ... ... ",
+" .... ",
+" ... ... ",
+" ... ... ",
+".... ....",
+".. ..",
+};
+
+/* --------------------------------------------------- */
+
+const char *printer_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #000000",
+"# c #7f7f7f",
+" none",
+"b c #ffffff",
+/* pixels */
+" ",
+" ",
+" ",
+" ",
+" ......... ",
+" .bbbbbbb.. ",
+" .bbbbbbb.b. ",
+" .bbbbbbb.... ",
+" .bbbbbbbbbb. ",
+" .bbbbbbbbbb. ",
+" .bbbbbbbbbb. ",
+" .bbbbbbbbbb. ",
+" .bbbbbbbbbb... ",
+" ............. .. ",
+" ..###########.. . ",
+" . . . ",
+" . . . ",
+" .bbbbbbbbbbbbb. . ",
+" .#############.. ",
+" .............. ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" .............. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaa....aaaaa. ",
+" .aaaa...aaaaa. ",
+" .aaa....aaaaa. ",
+" .aa...a.aaaaa. ",
+" .aaa.aaaaaaaa. ",
+" .......aaaaaaaaaa. ",
+" .aaaaa.aaaaaaaaaa. ",
+" .aaaaa............ ",
+" .aaaaa. ",
+" .aaaaa. ",
+" .aaaaa. ",
+" ....... ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_x_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+"# c #4040ff",
+/* pixels */
+" ",
+" ",
+" .............. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaa....aaaaa. ",
+" .aaaa...aaaaa. ",
+" .aaa....aaaaa. ",
+" .aa...a.aaaaa. ",
+" .aaa ",
+" .......a ## ## ",
+" .aaaaa.a ## ## ",
+" .aaaaa.. #### ",
+" .aaaaa. ## ",
+" .aaaaa. #### ",
+" .aaaaa. ## ## ",
+" ....... ## ## ",
+};
+
+/* --------------------------------------------------- */
+
+const char *zoom_y_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+"# c #4040ff",
+/* pixels */
+" ",
+" ",
+" .............. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaaaaaaaaaaa. ",
+" .aaa....aaaaa. ",
+" .aaaa...aaaaa. ",
+" .aaa....aaaaa. ",
+" .aa...a.aaaaa. ",
+" .aaa ",
+" .......a ## ## ",
+" .aaaaa.a ## ## ",
+" .aaaaa.. #### ",
+" .aaaaa. ## ",
+" .aaaaa. ## ",
+" .aaaaa. ## ",
+" ....... ## ",
+};
+
+/* --------------------------------------------------- */
+
+const char *resolution_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #000000",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ... .. ",
+" ..... .... . ",
+" ....... ...... ... ",
+" ....... .... . ",
+" ....... .. ",
+" ..... ",
+" ... .. . ",
+" .... ... ",
+" .. .... . ",
+" .... .. ",
+" ...... ",
+" .... .. . ",
+" .. .... ",
+" .. . ",
+" .. ",
+" .... .. . ",
+" .. .. ",
+};
+
+/* --------------------------------------------------- */
+
+const char *resolution_x_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+"# c #4040ff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ... .. ",
+" ..... .... . ",
+" ....... ...... ... ",
+" ....... .... . ",
+" ....... .. ",
+" ..... ",
+" ... .. . ",
+" .... ... ",
+" .. .... . ",
+" .... ",
+" ...... ## ## ",
+" .... ## ## ",
+" .. #### ",
+" ## ",
+" .. #### ",
+" .... ## ## ",
+" .. ## ## ",
+};
+
+/* --------------------------------------------------- */
+
+const char *resolution_y_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+"# c #4040ff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ... .. ",
+" ..... .... . ",
+" ....... ...... ... ",
+" ....... .... . ",
+" ....... .. ",
+" ..... ",
+" ... .. . ",
+" .... ... ",
+" .. .... . ",
+" .... ",
+" ...... ## ## ",
+" .... ## ## ",
+" .. #### ",
+" ## ",
+" .. ## ",
+" .... ## ",
+" .. ## ",
+};
+
+/* --------------------------------------------------- */
+
+const char *scanner_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" ",
+" ",
+" ",
+" ",
+" .. ",
+" .... ",
+" .... ",
+" .... ",
+" .... ",
+" ... ",
+" .... ",
+" ................ ",
+" .aaaa.a.a.a.a.aa. ",
+" .aaaaa.a.a.a.a.aa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" ................. ",
+" .................. ",
+};
+
+/* --------------------------------------------------- */
+
+const char *intensity_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ffffff",
+/* pixels */
+" ",
+" .................. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaa........aaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaaaaa..aaaaaaa. ",
+" .aaaa........aaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .................. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *red_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #ff2020",
+/* pixels */
+" ",
+" .................. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aa..........aaaa. ",
+" .aa...........aaa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa...........aaa. ",
+" .aa..........aaaa. ",
+" .aa..aaaa..aaaaaa. ",
+" .aa..aaaaa..aaaaa. ",
+" .aa..aaaaaa..aaaa. ",
+" .aa..aaaaaaa..aaa. ",
+" .aa..aaaaaaa..aaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .................. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *green_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #20ff20",
+/* pixels */
+" ",
+" .................. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaa.......aaaa. ",
+" .aaa...........aa. ",
+" .aaa..aaaaaaa..aa. ",
+" .aaa..aaaaaaaaaaa. ",
+" .aaa..aaaaaaaaaaa. ",
+" .aaa..aaa.....aaa. ",
+" .aaa..aaa......aa. ",
+" .aaa..aaaaaaa..aa. ",
+" .aaa..aaaaaaa..aa. ",
+" .aaa..aaaaaaa..aa. ",
+" .aaaa.........aaa. ",
+" .aaaaa.......aaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .................. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *blue_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+". c #000000",
+" none",
+"a c #3030ff",
+/* pixels */
+" ",
+" .................. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aa...........aaa. ",
+" .aa............aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa...........aaa. ",
+" .aa...........aaa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa..aaaaaaaa..aa. ",
+" .aa............aa. ",
+" .aa...........aaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .aaaaaaaaaaaaaaaa. ",
+" .................. ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *pixel_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 3 1",
+/* colors */
+"a c #000000",
+" none",
+". c #ffffff",
+/* pixels */
+" ",
+" ",
+" ",
+" a . ",
+" a a . ",
+" a . ",
+" a a a . ",
+" a . ",
+" a . ",
+" . ",
+" . ",
+" . a ",
+" . aaaa ",
+" . aaaa a ",
+" . a aaaaaa ",
+" . a aaaaaaaaa ",
+" . aaaaaaaaaaaa ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *log_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #000000",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" ",
+" ",
+" . .. ... ",
+" . . . . . ",
+" . . . . ",
+" . . . . ",
+" . . . . ",
+" . . . . ... ",
+" . . . . . ",
+" . . . . . ",
+" . . . . . ",
+" . . . . . ",
+" .... .. ... ",
+" ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *move_up_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #000000",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" ... ",
+" ... ",
+" . . . ",
+" . . . ",
+" . . . ",
+" . . . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *move_down_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 2 1",
+/* colors */
+". c #000000",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . ",
+" . . . ",
+" . . . ",
+" . . . ",
+" . . . ",
+" ... ",
+" ... ",
+" . ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *scanning_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #808080",
+"+ c #000000",
+"- c #ffffff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" +++++ ",
+" ++....+ ",
+" ++......+ ",
+" ++........+ ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" -........-- ",
+" -......-- ",
+" -....-- ",
+" ----- ",
+" ",
+" ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *invalid_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #ff0000",
+"+ c #000000",
+"- c #ffffff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" +++++ ",
+" ++....+ ",
+" ++......+ ",
+" ++........+ ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" -........-- ",
+" -......-- ",
+" -....-- ",
+" ----- ",
+" ",
+" ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *valid_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #00ff00",
+"+ c #000000",
+"- c #ffffff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" +++++ ",
+" ++....+ ",
+" ++......+ ",
+" ++........+ ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" -........-- ",
+" -......-- ",
+" -....-- ",
+" ----- ",
+" ",
+" ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const char *incomplete_xpm[] =
+{
+/* width height num_colors chars_per_pixel */
+" 20 20 4 1",
+/* colors */
+". c #ffff00",
+"+ c #000000",
+"- c #ffffff",
+" none",
+/* pixels */
+" ",
+" ",
+" ",
+" +++++ ",
+" ++....+ ",
+" ++......+ ",
+" ++........+ ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" +..........- ",
+" -........-- ",
+" -......-- ",
+" -....-- ",
+" ----- ",
+" ",
+" ",
+" ",
+" ",
+" ",
+};
+
+/* --------------------------------------------------- */
+
+const unsigned char cursor_pipette_white[] =
+{
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7d, 0x80, 0x38,
+ 0x40, 0x18, 0x20, 0x14, 0x10, 0x12, 0x08, 0x01, 0x84, 0x00, 0x44, 0x00,
+ 0x32, 0x00, 0x09, 0x00, 0x04, 0x00, 0x00, 0x00
+};
+
+/* --------------------------------------------------- */
+
+const unsigned char cursor_pipette_black[] =
+{
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7d, 0x80, 0x38,
+ 0x40, 0x18, 0xe0, 0x17, 0xf0, 0x13, 0xf8, 0x01, 0xfc, 0x00, 0x7c, 0x00,
+ 0x3e, 0x00, 0x0f, 0x00, 0x04, 0x00, 0x00, 0x00
+};
+
+/* --------------------------------------------------- */
+
+const unsigned char cursor_pipette_gray[] =
+{
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7d, 0x80, 0x38,
+ 0x40, 0x18, 0x20, 0x14, 0x10, 0x12, 0xf8, 0x01, 0xfc, 0x00, 0x7c, 0x00,
+ 0x3e, 0x00, 0x0f, 0x00, 0x04, 0x00, 0x00, 0x00
+};
+
+/* --------------------------------------------------- */
+
+const unsigned char cursor_pipette_mask[] =
+{
+ 0x00, 0x70, 0x00, 0xf8, 0x80, 0xff, 0x00, 0xfe, 0x00, 0x7f, 0x80, 0x3f,
+ 0xc0, 0x1f, 0xe0, 0x17, 0xf0, 0x13, 0xf8, 0x01, 0xfc, 0x00, 0x7c, 0x00,
+ 0x3e, 0x00, 0x0f, 0x00, 0x04, 0x00, 0x00, 0x00
+};
+
+/* --------------------------------------------------- */
diff --git a/src/xsane-icons.h b/src/xsane-icons.h
new file mode 100644
index 0000000..c4d2ec7
--- /dev/null
+++ b/src/xsane-icons.h
@@ -0,0 +1,110 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-icons.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ------------------------------------------------------------------------- */
+
+#ifndef XSANE_ICONS_H
+#define XSANE_ICONS_H
+
+#define CURSOR_PIPETTE_WIDTH 16
+#define CURSOR_PIPETTE_HEIGHT 16
+#define CURSOR_PIPETTE_HOT_X 1
+#define CURSOR_PIPETTE_HOT_Y 14
+
+extern const char *xsane_window_icon_xpm[];
+extern const char *error_xpm[];
+extern const char *warning_xpm[];
+extern const char *info_xpm[];
+extern const char *file_xpm[];
+extern const char *ocr_xpm[];
+extern const char *scale_xpm[];
+extern const char *despeckle_xpm[];
+extern const char *blur_xpm[];
+extern const char *clone_xpm[];
+extern const char *rotate90_xpm[];
+extern const char *rotate180_xpm[];
+extern const char *rotate270_xpm[];
+extern const char *mirror_x_xpm[];
+extern const char *mirror_y_xpm[];
+extern const char *fax_xpm[];
+extern const char *faxreceiver_xpm[];
+extern const char *mail_xpm[];
+extern const char *mailreceiver_xpm[];
+extern const char *subject_xpm[];
+extern const char *colormode_xpm[];
+extern const char *medium_xpm[];
+extern const char *medium_delete_xpm[];
+extern const char *Gamma_xpm[];
+extern const char *Gamma_red_xpm[];
+extern const char *Gamma_green_xpm[];
+extern const char *Gamma_blue_xpm[];
+extern const char *brightness_xpm[];
+extern const char *brightness_red_xpm[];
+extern const char *brightness_green_xpm[];
+extern const char *brightness_blue_xpm[];
+extern const char *contrast_xpm[];
+extern const char *contrast_red_xpm[];
+extern const char *contrast_green_xpm[];
+extern const char *contrast_blue_xpm[];
+extern const char *threshold_xpm[];
+extern const char *rgb_default_xpm[];
+extern const char *negative_xpm[];
+extern const char *enhance_xpm[];
+extern const char *store_enhancement_xpm[];
+extern const char *restore_enhancement_xpm[];
+extern const char *default_enhancement_xpm[];
+extern const char *pipette_white_xpm[];
+extern const char *pipette_gray_xpm[];
+extern const char *pipette_black_xpm[];
+extern const char *zoom_not_xpm[];
+extern const char *zoom_out_xpm[];
+extern const char *zoom_in_xpm[];
+extern const char *zoom_undo_xpm[];
+extern const char *full_preview_area_xpm[];
+extern const char *auto_select_preview_area_xpm[];
+extern const char *delete_images_xpm[];
+extern const char *printer_xpm[];
+extern const char *zoom_xpm[];
+extern const char *zoom_x_xpm[];
+extern const char *zoom_y_xpm[];
+extern const char *resolution_xpm[];
+extern const char *resolution_x_xpm[];
+extern const char *resolution_y_xpm[];
+extern const char *scanner_xpm[];
+extern const char *intensity_xpm[];
+extern const char *red_xpm[];
+extern const char *green_xpm[];
+extern const char *blue_xpm[];
+extern const char *pixel_xpm[];
+extern const char *log_xpm[];
+extern const char *move_up_xpm[];
+extern const char *move_down_xpm[];
+extern const char *scanning_xpm[];
+extern const char *invalid_xpm[];
+extern const char *valid_xpm[];
+extern const char *incomplete_xpm[];
+extern const char cursor_pipette_white[];
+extern const char cursor_pipette_gray[];
+extern const char cursor_pipette_black[];
+extern const char cursor_pipette_mask[];
+
+#endif
diff --git a/src/xsane-license.txt b/src/xsane-license.txt
new file mode 100644
index 0000000..b5ab307
--- /dev/null
+++ b/src/xsane-license.txt
@@ -0,0 +1,108 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+
+ Preamble
+
+The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.
+
+When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
+
+To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
+
+For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
+
+We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
+
+Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
+
+Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
+
+The precise terms and conditions for copying, distribution and modification follow.
+
+
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
+
+
+1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
+
+
+2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
+
+2a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
+
+2b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
+
+2c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
+
+
+3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
+
+3a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
+
+3b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
+
+3c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
+
+If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
+
+
+4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
+
+
+5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
+
+
+6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
+
+
+7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
+
+This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
+
+
+8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
+
+
+9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
+
+
+10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
+
+
+ NO WARRANTY
+
+11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+
+12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+
+ END OF TERMS AND CONDITIONS
diff --git a/src/xsane-logo.xpm b/src/xsane-logo.xpm
new file mode 100644
index 0000000..72f80c1
--- /dev/null
+++ b/src/xsane-logo.xpm
@@ -0,0 +1,372 @@
+/* XPM */
+static char *xsane_logo[] = {
+/* width height ncolors chars_per_pixel */
+"256 300 65 1",
+/* colors */
+" c #CBDDFC",
+". c #363777",
+"X c #D2E6FC",
+"o c #27241C",
+"O c #B0A47E",
+"+ c #1F1C14",
+"@ c #D9EFFC",
+"# c #E2D9B5",
+"$ c #788DFC",
+"% c #3848FC",
+"& c #978C6B",
+"* c #0A0B54",
+"= c #C8BC94",
+"- c #D6CCA5",
+"; c #C0B48C",
+": c #2028FB",
+"> c #687CFC",
+", c #242777",
+"< c #5468FC",
+"1 c #8097FC",
+"2 c #4E4836",
+"3 c #A2B9FC",
+"4 c #858279",
+"5 c #98ACFC",
+"6 c #E9F7FC",
+"7 c #3D47B3",
+"8 c #B0C7FC",
+"9 c #AAA27F",
+"0 c #F1ECD5",
+"q c #13179A",
+"w c #BED7FC",
+"e c #595785",
+"r c #8FA6FC",
+"t c #5F5842",
+"y c #2F36B5",
+"u c #CFC49C",
+"i c #302C21",
+"p c #BBCDFC",
+"a c #4558FC",
+"s c #867C5E",
+"d c #8C9EFC",
+"f c #DAD2AD",
+"g c #020204",
+"h c #B8AC85",
+"j c #FBFBF5",
+"k c #2B2EA0",
+"l c #1E25B1",
+"z c #AEBEFC",
+"x c #7D7458",
+"c c #C6C2B0",
+"v c #EBE4C7",
+"b c None",
+"n c #171CF9",
+"m c #71684F",
+"M c #15140F",
+"N c #5E74FC",
+"B c #3D3829",
+"V c #131863",
+"C c #6F84FC",
+"Z c #474A8C",
+"A c #0D0C0A",
+"S c #8E8464",
+"D c #2B37FB",
+"F c #62669C",
+"G c #A49976",
+/* pixels */
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbS&#u##-#f###v##ummbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&&G=f#f#f---ff#f-#-##--#v#v#v-u=-==uh9hu=mbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbsS&;u-u-#f#v#vfff-###--f####---###-#fvv#ff#fu=-;OO;u;h;;===9&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGO-##-=-#f;==#-uff#vv####vv#fff#=vvvf#-f-f-####vff#--u==-uhOhu=;u=uf-u==;&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGOcvvvfff#--###uuff--uff-#fvv##f#v##-u-f#-##v#--u-###vfu-f-u-#-==uuu==uu;uu---===-=u;&Sbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;;-vvf-##vv##f--f-#--##-#u--uf#f--fv#####-==-ffv##-##u=-###f-uu;uu-u=u-uu;==hu-===u---uu=;OGh;;;Gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=-##v#f##f##v###fv#ff-f#fu-##-u=u-#fu-f-#f-##fuu----#-u--uu-fu-u=#u=uu=u=hu--u;h=u-u==uu-u=f-u;h===;u;h;;&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf-vvf##v#fvvv##v#f#v#-v#f#f=##-f###u;=uuuu=u==-##-u-ufu--=u--u=-u=u-u;-u=uuhuu==u--uOh========u-#-u-=-=uu;===;h=hGSbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9-=-vvv##0######v####ff#-#f#vv--=-##f-=uu-=uuhO=-uhhu--uu-===u==-u=uu=;u=u=--#;=9=f--u;;;u;=uhO;-u;hu#--=-u=uu==u=h==h9hhhGbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=u#fv-=##vvv#vfvvvvv-##---u--f--#--=-----==h;uu;hO;;-hG=;-u-u=;u=f--h==;hhO;;=;=-=uh=uu=u=;hh=uhh9;;-h9;=-u#uu;-=ff-==;;hhGhhhhhhbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;fffv#--f####-v-v-f#v####v-uu;u==-u-f#ff-;u=-=h;O;h;==hhO==;;huhu;;=-===--=h;O;h;===ufu-uO==u;hhO;O;;=hOO===;hu;u==u--u--#uh=h;Oh;hh;=;hbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=v---#v#fv##fu#0##f##ff#-f#-uu;;==;---ff-u-=-uuu=uh9h;u;h=;;;G;-==h==;=u;uu=;=Ohh;h=uu---u-=uuuu;=h99;=;h=;;;9;-u=;-u=u-uu-u=uhh;;h=uu=-=;=hh9bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=v#vv###fv#-vff#v###--cfuu--====-h=9;-=uu-fu==uff=h==;hhO;;h=hh;u=-=;=h==;=uh;;;=h;Ghu==u--===u-f=h=u;;;9==h;;;;u=-u;=O==h=u;;;=u;;9;-u=u--=;hh==O9mbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc00#v##0#vv#vfu-#--f#--=h-f;;c9;h;O;;h=u==;-u=hh-uu;=;;u;=u;=;9h=h;=uu;h9;uhO;GhOhOh;h=u==;uuuhO-uu;=;hu;;uh=;9O;h;;=u;;G;u;O;9;O;hh=;=u=u;-uuh9uu=hh99OGbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#6v0#-f00##vv#f--=--c-f--Ou-;u=;OOOG;;h=u===;;h=u-=u;OOuu;;=u=;Oh9=;;;=;=9;uh==;hO9Gh;O===;=;=O==-==;O9=u;;=u=;hhO;=h;u;u9;u;==;OO99O=h=uuuuu=h=uf==;O&h;OG9hSbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhvvv#v0v-f#vvv#vf#-u--uu-f-uu==h;=h;O99OO==h;uu;h==;;=u=hO;=uuuu=u;h;u;;uu-=u==hh;O;9G9Oh;=h===;h==;h=u=OO;;=uu===;h===;uu-====hh;h;O99hO;=;;uu=;=u===u=h9hh;;hO9OSbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-#f#f##vvv##--#0#fu=u--u==u;=f-=h;;O;u=hOhu;h=;h;hOhhOh;==h;Oh;fu=;h=uu==;u;=--;hO=O;u;;Oh=;h=h;;hOhh9h;==;;hh;--u;h=u==;;u;=-f=hh=O;==hO9==h;;;h;O;;9;;=u;;hOh==;9GGOGmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfvv###vvf#-vf=-#-f#-u=-u;u;u=cu-=h;;99;u;h;=;;h;;;=hhh=;hhOu;9h===-==h==;=hu;;uuuh;;OOhuhhh=;hh;;;=hhh;=hOh=;9O==;u==h=u;=h==;uuuh;=OOhu;hh=hh;;;=;;hh;=;hh==hO=u;u;h9OhGG&Sbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-0v#fvv0###uffu-f-f-uuuu===huu=-uhu;hhhhh;;h&huu;;=h9;h=;=h9h;h;=u=u=;==;=;Ouu=-uh=;hOhhO;;h&O=-;;=h9;h=;;;OO;h;=u=uu=u==;=h=u=u-hu=O9hhO;h;GOu-;;;;9hh==;;Oh;;;=-=u=;=;h9O&G9G&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-v06#vvv#vf--f=9;u;--=;===uh;huuuu;=-;h;;Ghh9GGOh;uuh;=;;;hhh=O&9hOuu;;====h;hu-uu;;-=hh;9h;9GGOh;=u;;;;;;hO;;h&G;h=u=h;u==h;huuuu;h-=hh=9h;9GG9O==-;;=;;;;O;;;&G;hu-uh;==;hO9OOOGGxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;f-0v00vv##-uu-;9;uGh=u=u;=;=;;-=u==hh==;=hOh;OOOGG==uu;;h;;OO=O&9=GO=u=uh;=u;;u=;==O;==;uhOO;OOOGG===u;=h;;OO;h&O;G9=u;u;;==;;=====O;==;uhOO=OOO9&;=;u=;h;;9O;;&9;99;u=u=;==;;h;hOG&&&Sbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=##fvvv0v#-##ff---9h;=-hOuuuu=G-#=huOhh;u=uu;hOGhhh9h;h-=hO;u;=;=u99h=uh9=-uu;Guf=;=hO;huu===hO9hhh9h;;u=hOhu;u;=u99h=uhO=uuu=G=#=;=;9;Ouu===;O9Ohh9h=;u=hhhu;u;=uOGh=u;O=-u-u&=f=OhhSG&GG&tbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvf##v#fv###f##f###f;=;-u=h9uu-cu=uf=hh=h=O;h;=;=;9hOhhO;hh=;==u-#f-;;;uu=O9=uuu=uu-uhh=h;O;h;=;=;OhOhOhh;h;===uu#ff;;huu=hG=u=u=u=-uhh=h;hh;h=h;;OOOhhOh;h=;==uu#-#=;huuuh9;-uu=uu--hOh9G&&SS&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbc0v0#0--v#uv#ufu--##-;h;uu-;---uuu=u=u-uu;h=;h9O==;;O;OG=;Ouu;====ff-;h;=uf;u-uuuu=u==-=u;h==hOO==;;O;h&=;Ouu;u=u=-#f;hhuu-=uu-u=-uuu=-=-;h=;hh9===;O;h&;;O=u;====-ff;h;=u-==--uuuuu==-=uh999&&xSsbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbb;vvv0vv0#=-v-#-u=u-uu=;u;=u=-uuu;u-==uu-u-u-uh9;hO;h=h;=;Ghu=uu=;uuuu=;===u=-=uu;=-=uuu--fu-=h9;hO;h;;;;=9Ou=uu=;=u-=u;==;u=uuuu;u-;u=u---uuu;G;hO=h;;;;=OO==uuu;=u-=u;==;u=uuuu;=f;-=u---u==OS&&sSstbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbv00ff#vv--f----u-u====u=;=;==u;;=;uu==u--f--=hh;h==9GO=;OO;;====u=u=====h;;;=u=hu;uu=;ufu#-f=hh;h;=OGO==OO;;====u=u;====;;;==u=hu;uu=;u-u#-#=;h;;;=OGO==h9;=====u=u=====;h;;=u=hu;=-=;u-uf-#;h9hGG9smmsbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbvv0ff-v#--uu-=-u--==;;u==;;===u=;;==-=;-=ff-=uu=;h=9GG;;hhh;=;uuu-==;;uu;;;;u=u==h==-==-=-f-=u-=;h=OGGh=Ohh;=;=uu-==;;uu=;;;=;uu=h==-==u=-f-==uu;h;OGGh=hOhh=;=uu-==;;uu=;=;u==u=h==-==u=-#-u=-=hOO&xss&mtbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbb;60v#v0#u=uf==u=---u;==ff=h;;=Ou--;=;=;;=uuuuu==uu;;9;=;GGO=hh=;u-uu;=;ufu;;;=9uuu==O;;=;=-uuu==u==;Oh=;G9O=hh=;u-uu;=;u-u;;;=Ouu-=;;=;=;u-uuu=====;hh=;GGO=;O=;=--u;===fu;h;;Ouuu==;;;u;=-uuu==uu=h9GOGsxmsmbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbb;vv60v###fu;=u=h==-u=u=u-u;;O;;;;uu-=h;h;=uu-;;;=;h==;Oh;;;Oh=;h==--====-u;;O;;;;-u-OsOhhuuu-;;;=;h==;hh;hhOh=;h==--u===-u=;O;;=;uu-u;;h;=uu-=;;==h=u;OO;;;OO==h;=u-u;==-uu;O;;=;u-f=;;hh=uu-=;;;=O;u;OG9&&Sxxs2bbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbcvvv0v#v#--=;;h==;h;=f-===u;OO;u;-u==u=hh=uuu=;;hO;h=hh;=h;hhhO;=hh;;-u===u;O9;u=uu=hs9hh;uuu==hhO;h=;h;=;=OhOO;=;hh;-u===u;O9h=;uu==u=;O==u=u=;hO;h;=h;=;;hhh9h=;hh=uuu==u;hGh===u==u==O;=u=u;;;9;h;=9h;h9&&Smsxtbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbc00vvv#-##f=;Oh;==O;=;==;uu=Oh;=;uu;;===;;u;u;;u;;;h;=hO;==hO&G9OOG9O9h;=uu=Oh;=;=u=hGxh;;u;==;u;;;h;=hOh==hO9h;=;hh;;=;=uu=hO;===u=;===;;u;u=hu;;;hh=hO;==;O9O;==hh;;==;uu=hO===;-=;=u=;;u===hu=h;hh=hOh=;h&&SSSSmtbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbb=0v00#vv-f-fu;9O;h;;;;hh=u-======u=;=u=;=u=h=u=;u=;=;O==h;=u=OmtmmmtmmtxG;u===;===uhuhxG;u=h=u=hu=;=;O=;;;=u=;G9h;hhh;h;;uf=;u;u;uuh==u;;u=;;u=;u=;=;O;;;h=u=;G9h;h;h;;h;=f==u;u;=u;===;;==;;u=;=u;=;O;;;h===h&&&Ssxmmbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbb;6jj0##v0#fu=;;;;;;OG;==9Ouu=u;u=h==;=u=;==;;=;=;uuu;hO=-uu=;h;OG9G&&GhOSmmh==;u=h==;;;m9==;;=;=;uu-;;9;-uu=;;;=h;;O9;==O9=uuu;u=;;=;;u=;==;h=;=;uu-;=G=-uu=h;;=h;;OGh==O9=uu=;==h==;;uu;===h=;=;uu-;=G;-uu=;hh;G9&smmxmbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbb;000j0vfvff-u=;Oh==OOG;;=OG;;u=u==h==-uu;==hhhh;;=;u-==O=====;hOh==OO9h;=9smmh=-==hu=-u;mO=hhhO;==;=-==h====u;;Oh;=OOGhhuOG;;u=u==hu=--uh==;hhO;;;;=uu=h;u==u;;Oh;uOO9OhuhGh;u=-=uh=;u-u;==;h;O;;;;=uu=;huu;u=;OOh;&&xmmxtbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbb0600600vf=uu-hOhh;h;=;OOh;;;;O-huh;uu=u=u-h;hO;hh===u-u-uh==u;OhOhO;=;OOh;;9&mhhuh;=u==Gs=;;;O;hh===u-uuuh==u;OOO;Oh=;OOO;;hhO=h=;;=u===u-=h;O;;h===u--u-O==u=OOO;O;;=hOO;;;hh=;=;h=uu==uu=h;O;hh===u--u-O====9OOh9OGGSmmmtbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbv0jjjjvvv=fuu=;=O9h;=hh=;;h9;u=;;u;;=-;u==;hOhh;h=uu--uu-;u=uu==O9O;=hh=;;hG;=s&O===;-;OS9h;OOh;h==uu-uuu;====;;OGO;=hh;;hhG;uu;h=;;;u;==;h;OOhhh=uuufuuu=u==u;=h99;=;O=;;;G;u=;hu==;u==u=;;hOh;h==uufuu-===u===hGGh;h&Gsxmttbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbb0j00000#--#ff;huu=hOh=;h;hh===-=;;Ou;h==hh;;uh;&;-===--u;=u-f;h==;;hO=;h;hh=u=u9mm&;;;;9s&h;=OhGh====--=;==-f;h==;;hO=;h;h;;u=u=;=h=;h;=;;;;=hhGhu===--u=u=-f=h=u;;hO;=h;h;;u=uu;=O;;;;u;h;;=hhGOu==u--u===-f=;;==;hOhh9G&smtttbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbj000j0v==#-u;=;;=;u;;=OOh;h;;u=;O9=uOh;GhhhOO;h;=;=;-u=OOfuu;=;huh==;=h9h;O;;u=;&tx9G99tG9h9O;h;===;uu=hO--u;=;h=;;=O=;GO;hhhuu;h&;uhO=GhOhOO;h;==;;uu=O9uu-==;h=;;=h=;GO=hh;=u;;G;u;O;GhOhhO;h;===;uuuh9uuu=;;;=;;=h=;&&&x2B2t2bbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbb00j00#f##fuu;Ohuu;;=u=hhhO=;h==;=G==h==hhO9G;;O=u====;h=u-==;OO=u;;=u=;hh9==h=u;=G9Gmm&x&99Gh;O;==;;;;O==-;;h9G==hO;=;h9OGh;Oh=h=&;=h;;hOO9GO;hh==;=;=O==-==;OG=u;;;-==hhOh=h;u;u9hu;;;;hh99O=h;==;=;=O==-==;h9===h;-=;OOSmmxmmttBbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbb-v0j0vf#fu;uu;Oh;==u=u==;h;u;;u-u====hh=O;GG9Oh==h===;h===huu=OO;==u====hh;=;;=uu;==;&tm&hGGGOO;=O;=;;O;;;O;;;GGOh;;;;h;hOh;hh;;=h;;hOOO9OGGGOO;=h;==;O===h===h9;==uu===;h===;uu-;u==;;hhhOGGOO;u;;=u;;;==;=u=h9;;uuu===;&x&&&&smt2Bbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbv0vvv#--;;h===;;Oh=fu=hh=u===;u;=--;hh;hhu=hOh=;h;h;hhOhOOO;==h;hh=f-=;h====;h=;=--;h9GtG=;hOO;hO;OOO9G9GGG9hhG9G&O;hOG&GO99GGOGO;;9GGOG9;h9GG;hOhh;hhOhhGhh==h;hO;--=;h====;;=;=--;hO=O;==;OO=;h;;;hhOhhGhh;=h;hO;u-==hOx9;hGGsxmt2bbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbv000vvfu=uuh;hu;9h==uu==;=uh=hu==u-=O;;9O;=hh;;h;h;;;=hhh==hhO=;9h===u=;h==h=hu=;uu=O;;&t9=OOO;O9GO9OOG&&GG&&SG&sS&&GGG&S&&S&s&GSG99S&GSSGOGGGh9GOOOhhhOO;;;Oh;;OO===u==h=u;=hu=;uu-hh=OOh=;;h=;hh;;;=hhh;=;hh==OO==;-==h9s9;Oh9Ssmt2ibbbbbbbbbbbbbb",
+"bbbbbbbbbbbbjv00#ffuf==h9;;h;=u=u====;=;huu;-=hu;hOhOh;;h&;uu;==OO;h=;=hOh;h;=========;=O=u;-=h=h99&tSO99sGOhGGGSsSS&SSsmxsmxxsxxxmxxmxmmxxxssmsxxmxxxSSSxS9hG9O9GOOhh;OOO;h;;u=u=====;=h=u=u-h==hOhhO;hhG9=u=;=;Oh;;=;;OO;h;;u=uu;=hx&;h;;OGGmt2Bobbbbbbbbbbbbb",
+"bbbbbbbbbbb#0jjv##-uuhhh=O&O;huu;;====h;hu-uuh=-;h;;9hhGGGOh;=uh;;;;;hhh;hSOhO=u;h==;=hhh=u==OhuhG9&tSGssxsSS&&xxxmmmttttt22t2ttt22t22222ttttttmtttmtmmtmtmsS&9&GGGOOOGhhh&Ghh===;;===h;h=uuu=;-=Oh;9h;OGG9h;=u;;;;h;;O;;;&Ghh=u=h;hGx9;O=u=9&xmtBibbbbbbbbbbbbb",
+"bbbbbbbbbbb-0000v#uu;hh=O&O;GO=u;=h=;u;;u====hh==;=h9h;OO99G==uu;=h;hOh;O&9=&O=u;uh;;=h;==hhhG99OGGx2xSxmmmtmmmmttt222B2BiBBiBBBBBBBBBBBBB2B2BB22222B2t2ttt2xxsSS&S&G&&OOSGhGG;u;=;;==;;=u===hh;u;=;OO=O9O9&;=;u=;h;;OO;;&9hOO;===Gxx9;;;=;hO&xmtBiobbbbbbbbbbbb",
+"bbbbbbbbbbb00vj#f=uu=;=u=GO;;uhhu-uu;G--=huOhh;u=uu;hOGhhh9h;h-;hO;u;=;;=G9;;uhO=u=u;&=uh9hG&&&G&&S2tmtttt22222BBiBBiiiio++oooo+oooio+iiioii+iiBBBBBBBBB2222ttmmmmx&S&&Gh&&O;;;O;-=u=G=f=;=;9;h=uu==;O9OhhOO=;uuhhhu;=h=uOGh===O;h4Oh&=#=;;;&Gsxm2Bibbbbbbbbbbbb",
+"bbbbbbbbbb#v#0###---ufff-;;;uu;O9u=u===uf=Oh=h=O;O;;;;;9hOhhO=h;;;===uff-;;;u=;9G=;;;hhh;9SS&sxmxt2B222BBiiioiooo++++o+++++++++++++++MMM+MMMMoooioiBiBiiiBB2B222ttmxsSG9OGGGh;;9G;u=u;uu-uh;;;h;;hhuh;;OOOOhhO;h;;==uufff=;huu=h&xhuu=u=--hhh9Sst2iiMbbbbbbbbbbb",
+"bbbbbbbbbb-f0v#0#u-==u##u;h;uu-;u--uuuuu=u-u=;h==hOh==;;O;GG=;Ouuh=;==f#-hhO==uh;=;hOOGGSSSxxttt2B++iBio+o+MM+MMMMMMMMMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbMiBoBB2222ttmms&&ssSOh=h;u-==u=u==-=u;h;=hhG===hh;h&;=O=u;==u=-f#;hh=u-9shuu=u=u==u==O&Sm2io+bbbbbbbbbbb",
+"bbbbbbbbbb6vfv0v#f==ufuu=;u;=u=uuuu;u-==uu-u-uuuh9=Oh;h=;;=;Ghu======-==;;;;;;hhOO9&&Gsxxmmtt2BBioMM+MMMMAMAAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB2222tttmxxsSSG9hh=;;=f=u=u---uuu;G;;O;h;;;;=O9==uu=;=u-=u;=u;uhx9uu==f=u;u-uu=hGx2Bo+bbbbbbbbbbb",
+"bbbbbbbbb-##0vv#f-uu=====;;;;=uu;;uhuu=;---#-f=hhhh==OGO==OO;;;===u===;;=hOOGOOO&xSxxmt222BBii+MMMAAAAgAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB22tttmmmss&O9G;O;===u-u#-#=;O;h;uhGO;=;Oh====uu=u=====;h=hOshh===u===-ufu-h&xmBioMbbbbbbbbbb",
+"bbbbbbbbb#v#0v##f--u=;;u==;h=====;;u=-==u=ff-;uu=;h=GGG;;Ohh;;;uuuu=;hh;hOGGG&ssxmt222Biioo+MAAAAAgAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb22tttmssS&GGhhu=;==-f-=u-u;;;h&GhuhOh;;==u=-==;;u==;;hhsO==;==-u===-#-=hhSm2i+Abbbbbbbbbb",
+"bbbbbbbbbv0#vv###fu;u=--=h=;=O--u;=;;=;=uuuuu==uu=hO;=h9Gh=OO=;=-u=h;h;;O&SsstxttBBio++MMAAgAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2tmtxs&S&GOO=h=-u-u==uu=;Ohu;GG9;;O=;=--u;=;=fu;h;OmG--;;;;hu;=u=u==hh&x2i+Mbbbbbbbbbb",
+"bbbbbbbbb#v0#####-===u-u;;O;;;;-u-=h=O;=-u-;;;=;h==;Oh;hhOh=;h==u=;hOOOGSstm22BBio+MMAgAgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtmxs&&S&GG;=u-=;;==h;u;hO;;hOh;=h;=--u===-uu;hhOm9=--u;;;h=uu-=;hhOSxtB+Mbbbbbbbbbb",
+"bbbbbbbb=v##0v-=u=fuu;=;99G===uu==u=hh=uu===;hO;h=h;;=h;hOO9;=hOhh;OGSSst22BBio+MAAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtxxSSSSOhu=u=;hO;;;=O;=;;hhhOh=;hh=uuu==u=OGhhmhu==u=;O;=-=u;;OGG&smBoMAbbbbbbbbb",
+"bbbbbbbbhfvvvvuuu===;;OxmG;=====;===;;=;u=;u;;;h;=hO;==hOGO;=;9OOGG&sxmtBio+MAAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtxsSS9Oh=;u=;;hh=;O;==;OOOh==hh;;====u=hOhO&m;=;====;u;==hu=h;9&StBoMAbbbbbbbbb",
+"bbbbbbbb;ffv#fu==h;hOsx9h====u;===;===;===hu=;;;O;=h;=u=hGO;OhGG&sxmmtBio+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbxs&&9;;;uu==;O;;;h=uu;GOh;hhh;;h;=f===GsmtmO==u;;==;;u=h==;hh&Sm2oMAbbbbbbbbb",
+"bbbbbbbb#vvv#-;-=hsxsOh=;u=h=;;=u=;=u;;===;uuu=hOu-uu=;hh;hhh&S&Sx2BBi+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtSSGO;;--#=u9=-uu=;h;=h;;OOh==hG=u=hGs9&mG;;u=;==;;;==;=uu;h&SstB+Abbbbbbbbb",
+"bbbbbbbb#vvv-=Oh9xmsh;==u==;==-uuh==hhhh;=;;u-=;O====u;hOh;hGSsxmtB++AAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbs&h;=uu#-=h;uu;u=hOh;uh9GOhuhGh;Oxs9;Gm9u--;;=;h;O;;;;=u=hGSsti+Abbbbbbbbb",
+"bbbbbbbb#####uxmm&O=h;h-Ouh;uuu==u-h;h9;hh===u--uuh==uhOhOhGGGxtBo+AggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSh;----#f--O==u=OhOhO;;;hOO;;;9s9O;;Gx;u==uuuh;Ohh;=;;=-uhhmtB+ggbbbbbbbb",
+"bbbbbbbbf=uu-9mGO;OO;u=;;u;==u;u==;hOh;hh=u=-fuu-;u=u=;;OGGGGxt2iMggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbu##vv#--u==u===hOOh=;h=h;;Gh=;;h-h4Gc==u=;;hOh;h;=uu-u=;9stBoAgbbbbbbbb",
+"bbbbbbbbf&sssxx;;;=uuu=;;O=;;==;h=;uO;G;-=uu--===u--;h;=;OG&&m2iMgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbG#vvv#--=-#=;;=;hhO;=h;;h;u;-c;=Ohh;h-;h;;=;h9O=u=uu-u;hG&xB+ggbbbbbbbb",
+"bbbbbbbbf#ccchO==h;=u=;hG=-Oh;GhhhOhhh;===;u-=OOfu-;=;h=h;O&stiMgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#vvvuh---==;;==;uh==GO=h;;=u=;G;u;9;GhOhhOhhh===;=uuhGhhGm2+Agbbbbbbbb",
+"bbbbbbbbv00v#-uh=;h=u;=Gu=h==hhO9G;;h=u;;==;h=u-==;Oh==;h;h&x2iAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvv-v#v-u;hO=u;;;u=;hhOh=h;u;u9hu;;=;hh9O9=hhuu;=;=O;=u;9StioAgbbbbbbbb",
+"bbbbbbbbvv0vv-uu-;=u-u;===hh;hhGGOOO==h===;h===hu==9O;===;O&m2+Agbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;vvv##uuu=hO;==uu=u=;h;=;;=u-;===;;O;h99GOO;=;;=u=;h==hh9&mBoggbbbbbbbb",
+"bbbbbbbb00vff##uu=;u==fuhhh;hhu;h9h=;h=h;hhOhOhO==;hhOh=-;Ost2+gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvv###;==uuh=hO;--=;h;=u==hu==--=h9=hh;=hOO;=h;;;hhOhhGO9G&tBoAgbbbbbbbb",
+"bbbbbbbbcvvvf##==;===u-=h;;9O==;h;;;hh;;;;hhh;;h;Ou;Gh;==;G&m2oAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0vv###u;h==hO===u==h=u;=;==;uu-;h=9hh=;;h=hhh;;;=hhOh;h9G&mB+Agbbbbbbbb",
+"bbbbbbbb=vvvv#-u;uu=-=hu;hOhOh;;h&;uuh==hO;h=;=hG;;h;;===h9&m2iAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf#vvv#f=hh;h;;u==u=u==;=h=u;=-h=;hOhOO=hhGO=-;;=;Ohh;==hG&Sm2oAgbbbbbbbb",
+"bbbbbbbbh#vv##uu;--uuh=-hO;hOhhGGGhh==uh;;;;;hh;;h&O;h=uhOO&x2BMAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh0vvvvf==;;GG;h=u=;;u==;;h=--u=h-u9h=9h;OGG9h==u;;;;;h;OOOGmtB+ggbbbbbbbb",
+"bbbbbbbbbvf##v-uuu===;h==;=hG;;OOOGG==uu;=h;;Oh=O&O;GO==;;GGstBi+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbj00vv#u=u=&9;GO;u==;;==;;;u===h;==;uh99=O9O9Gh=;u==h;;OOhOsmmB+Agbbbbbbbb",
+"bbbbbbbbbvvvf=v#===Ohh;u=uu;hOG;hhG;;h-;hO;=;;;;=GO=h=hh==hOSttBo+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb600v#0ff=uu9G;==;O;-=u=G=f=;==9hOuuu==hOOO;O9O=;uuhhO=h=;;;&mm2+ggbbbbbbbb",
+"bbbbbbbbb0vv#####=h;=h=O;O==;;h9hOhhO=;;;;=uu-ff-h;;uu;OG=;h&st2Bobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv0vvvvvv##f#;=h=u=hO;-uu;uu-uOh;=h;hhhu;;hh9hOhOO=h;h==uu-u-9St2oggbbbbbbbb",
+"bbbbbbbbb0vvvv#fu-uuu;h==h9O==;hO;GG=;Ouu;====f#-;h;=-u==u=;9&xt2iibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;00v00vv#f-#f#;;h=--==u-uuu=uu=-=u;h==h;G===hO;;&;=O;-;====---GstBoggbbbbbbbb",
+"bbbbbbbbbcv#vv#f#-fu-u-=hO=Oh;h=;;=;Ghu=u==;u-u==;=====uu==OO9xm22Bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#0##000v#----uu;==;u===uu;=f=-=u---uuu;Gh;9=h;;;;uOG=u=u=;;u-;;GSmB+ggbbbbbbbb",
+"bbbbbbbbb;vfvvf-f#-fff;hOhh==OGh=;h9;===u=u===u===;;;==u=huO;9Sxtt2Bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#0v#v000vvf-uu=u==;h;;=uuhu;=u=;u-uf-f=;O=h;=hGO;;;Oh;===uu==;==hOStBMggbbbbbbbb",
+"bbbbbbbbbbfv#0#f#-#f-;-uu;h=GGG=;hOh;=;u=u-u=;;u=;;;==;===h=h;Gsxtt2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=v6v#vvvv##f#-==;===;;;u;u==h==-===u-#-uuuu;;;h&Ghuh9h;===u=-u==;;hGstiMggbbbbbbbb",
+"bbbbbbbbbb##f#fff-f=-==uu;hO;=hGGh=hh;=u--=;=;--=;;;=O-u=;;;hO9&smm22bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-6v#f#0v-vf#ff-;=;=fu;h;;h=u-;;;;;u;=uu-=u=u==hhh=;GG9;;9=;=--u;;;=u;&xtiAggbbbbbbbb",
+"bbbbbbbbbb--#-ff#f-=;==;hu=;Oh;hhO;=;h==f-==;u-u;;h;;;;-u-=hh9G9GSmt22bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-v##v##----;==-u=h;;u==;Oh;;;=-fu;;hh==--==;==h;u;hO;;hOh;=O;=--u;;=u=;Gm2iAggbbbbbbbb",
+"bbbbbbbbbbu#uf###--=hhh;h=hh;=h=hOhO;=;h;;-u=;uu;OG;==uu==u=OOhh9&xt22ibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbOf#v-f#-u=;hGGOG&&G;hhhh;;OGO===u;=u=;9==u;u=hhO;;;uO;=;;;hhOh=;hh=uu==;;OSm2igggbbbbbbbb",
+"bbbbbbbbbbbff##f#u=-;;;h;;;O;==hO9h;==O;=;===uu;Oh;=;=u;;;==;;;Oh&sstt2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh9h=;;9SsxsSsxssS&G&9hOGGOh;hu;;====;=;=uh==h=hO=hO;;=;OOOh==hh;=;===u;&sm2+Aggbbbbbbbb",
+"bbbbbbbbbbb-##-##-=-=;=;h;=h;=u=OGO;h;hh;h;=u-=======u;=u=;;=;hh;9S&xtt2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbxSxtttttttmmmsSGGGG9hO;=h;;=;h;=;=u=;==;;=O;;;huu=;9Oh;;hhh;h;;-=hO&mB+ggbbbbbbbbb",
+"bbbbbbbbbbb-#ffff-u--==hh=-u=;;;=;h;;OG==;Ghu-==;u=;=;;==;;=u;O=hOGG&stt2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBtt222ttttxssSS&9&9OOh=;h===h;;=;uu-;=9=-uu=;;;;O;;OOO==hG=u=h9SmBMggbbbbbbbbb",
+"bbbbbbbbbbbbu-----u=--=;O===u=;hO;=;O9G;;=OG;=u=u==hu=--u;=;hhhOhh9GG&xt22bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbi22t222mmmsSSSGGO;;Oh;hhhhh;;;=-==Ohu=;u;;Oh==h99OhuOGO;=O9StBMggbbbbbbbbb",
+"bbbbbbbbbbbb--=----u=-u-uuh==uhOOOhhh=;OOh;;hhhuhuh;u=u===-;h;9hhOhOGGSSmm2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2222tmtmmmsSGG9h;;Gh9Oh;;=;=-uu-O==u=OhOhh;;h;OO;h;hOOGxtogggbbbbbbbbb",
+"bbbbbbbbbbbb;u--uf#-ffuuf;==u==;OOO;=h;;;;hO;-=;;u;==u;=u=;;Oh;;O;;;;hGSsmmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2t2tmtmxsss&&GGGGOhO;=uu--uuu;==u=;h9Oh=;h;h;;Gh=;9Sx2ogggbbbbbbbbb",
+"bbbbbbbbbbbbb-h-vf#fffu==---;;==;hhh=;h=h;===u=;;O=;;=u;;;;=OhGh-==;=;9&sxxmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb22ttttxmxss&&&SGh;;=u-u=u;-f=h;u=hhO;=;;;;h=;=;G&mB+gggbbbbbbbbb",
+"bbbbbbbbbbbbb=-#-f-##uOOffu==;;=h==h=hGh;Oh=u=;;G=uOh;GhhhOhhhh=;=huuh&SG&smm2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb22t2ttmmxsS&9OhO=u=hG=--u=;h=;;uh==GO;hh;=uOGmtBMggbbbbbbbbbb",
+"bbbbbbbbbbbbbG#-fffu=u--==;Ohu=;;u==hhhO;=h=u;=G==h==hhO9G;;h;u;==;;9;;;9&xmtmmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2t2ttxmxS&GGOhG;;-u=;h9=u;;;u=;OhO;=O;uO;smtiAggbbbbbbbbbb",
+"bbbbbbbbbbbbbbu-##-=--=;=u=GO;==uu=u=;h;u;;=uu;===hh;hhGOGOO=uh;=u=O;=;9hO&mmmmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2tttsxxSG&G9h;h;;=O9;===u=uu;h;=;;===O&x2ogggbbbbbbbbbb",
+"bbbbbbbbbbbbbbuuuuu=uh;h==;;;hh=fu=O;=====;u==fu;hh;hhu;OOh=;h;;;hhOh999OOGSsmtmmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2mtmmxxss&GS9O==O;;O;--=;h;===;h=;;hGmBMgggbbbbbbbbbb",
+"bbbbbbbbbbbbbbbu--u==u=;;hu;G;===uu=h=u;=h==;ufuh;;9O==;h;;;hh;h;;hhO;;hhGh&sxxxmmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2tmmxxxsSGGGO;;O9;==-u=h=u==O=uOhO&tiMggbbbbbbbbbbb",
+"bbbbbbbbbbbbbbb-==-ufu-;G;;h;===u=====;;h=u;-=h=h;OhOO=hh&;uu;;=hO;h=;=OGOhGG&&sxmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbttmmsS&&&&OOhhu===;u==;;h;u;;;Ss2igggbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbb=uu--=;==h&h;huu;;====;;;ufuu;=-hOh;O;h99GO;=uuh;h;;;hOhhOSG9&G&sxmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtmxxmSSGs&hh;u=;;===;;h=uu;Osx2+gggbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbu-u-===uOGO;Gh=u;=;;==h======h;=u;uhGh;G9OGG;=u=;=h;hOh;h&GhSG9GSSxmmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmmmsSxs&&Gh==;;;==;;;==;h&stBAggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbb&;u--uuu=GO=huhhuuuuhOu-=;=OhO;u=uuhhO9;hhG;;;-;;Ohu;;;;=GG;O;G&GGSSmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmxsxm&OOhO=-uu=G=f=;;;&Sm2igggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbb=-f###vf;;;uu;OOuuu=;uuf;;h=h=h;O==;;hOOO;hO;;;;;==u--f-h;hu=hG&9G&sxx2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbm&sssGOhGG;uuu;=u-uOOG&t2+gggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbb&--ffvvf=;;u--;uuuuuu=u=uu=uhh==hOh==;hO;9G;;O=u;u==uf#-;hh=uuhhhO&&sxxtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmxs&9hOh=uuu-=-===OOxtiMgggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbuuf##f-====u=uuuu=u-==uu--uuu=h9;hO=h=h;;;9h=uu==;uuu==;=;==;=;;hG&GssmmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSS&GOh=u==-=u;==;Gs2ogggbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbG---#-fu==;=uu=;uhuu==ufu#-f=hOhh==O9h=;hOh====uu====;u=;;h;==h9h&G&xxmmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmSG9O9;;=-===u=;&sB+gggbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbb-uuuf-u====;u==;u=-=;-=ff-=uu=;h=GGG;=hOh==;uu=u=;;;u=;hh;=h;hOG9&&smmttt2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSGG99;=-u===;h&tiAggbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbb&u=##-=u;uh-uu;;=;===u=-=-==uu=hO;=hGGh=OO=;u-u=;=hu-=hhh;G=hh&&Ssxmt22BBBBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbG9GGO;;-;;=hGm2Mgggbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbb=-#f-u=u=;;---=h=O;=-fu=;==;h==hOh;hhOhu=O==--==;u-u;h9OOG&9G&xmt2BBBioo+oibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbShhOhhOu==hstiAgggbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbb&=-#=;h=-=uu=uu=hh==u=u;hhhhhuh;;=h=hhOO;;hh;;-u=h;=hGSGG&&smmt2iio+MMAAMMoobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSOOO9;=-OOx2+gggbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbb;-u;;u-=u-;;====;====;u;;;h;;hO;==hO9Oh;=Oh;;=;;==OGSGSsxmt2Bio+MAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=f##vvv00v-uSSbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSOhO=;;hsmBMgggbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbb=u-u----=====;==;=u;;==;;;h;=h;=u=hGO;h;hh;9;h;=OGGssxmtBBo+MAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhc##0v#v#v#v#fffhsbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSO;h;;9xtiAggbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbh-=f-=-==uu;;=u;h=;=;-uu;;O=-==;;h;hO;;OG;;h&GOO&SxxtBBi+MMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-#v##vf#vff#f---uOSbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGhOhhGx2+gggbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbb;-uu=f---u;==hh;;;=;;u-=;O=uu==hhO;=;OGGOhhSs&Ssmt2Bo+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9&GG;uuuufuu-GG&4bbbbbbbbbbbbbbbbbbbbbb9#f#-##v0vf#-u==h;=;Sbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9OO9&mBAggbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbOh-;=f-f-u=-;;;G;h;==;-u-uuh;=uhOhOhOOh9G&&&smt22iiMAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhhf##v###v---=uuu--uf-#-fh=u=&bbbbbbbbbbbbbbbbbbbh=-f####v#--;==h=;h;h&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9GGStigggbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbb;-=-u#uu-u=hOh;;O==u-f=u-;=====;9GOhhGGGSsmtt2BoMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&;v#ffv###vf###f-uu--=f###vf-#-uuuu==O9&&bbbbbbbbbbbbbbbb9==u----uuuu=uuuu-u;=h&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&O&stiggbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbhu==--=;===O;G;u=u=--u===u-;h=;hOGGOGSsmm2Bi+AAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;=f#v#vv#f-##f#v#fff#u-;u##f####f-u##u;uu=hhO=;9Gbbbbbbbbbbbbbb9hOh;-=u;ufff---u=;h==9sbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&GS2oggbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbb;-h;uh=;;hh;hh===;--=O9---==hh=O;O&Gstm2BB+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=-#uf#-f#vv#f=#v-u#;---uu-u-fffu#v#=;###--==u==uh=;&hhGGbbbbbbbbbbbbb&&GGh;;-ff-##-;9=uu;hOG9xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSGx2+gbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbh==;=;h9=;h======;h==u==hOO=;OG9Gsxt2Bi+Agggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbu#0v#ff-##f#vfv=fv-##---;=u-uu#----f;--#-fu;;--u==-=;hhGh;9h;xbbbbbbbbbbbmSG&9===uuf;-u#uuhOGhh9GG9bbbbbbbbbbbbbbbbbbbbbbbbbbbbbSm2+gbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbh=;hhhhhh=u;====O;==;==;GGOhOG&SxtBB+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfvvvvv0v###v#vvvvf###-uuu=h=O=;ufuuf--=--fu---h;u-u--u-u;;;=hh;;=O9bbbbbbbbbbbSS9GO;u==u-fuuuuO9h;hhh999bbbbbbbbbbbbbbbbbbbbbbbbbbbxm2+bbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbb;hh-=;hhu=h;;;hhOhOOh;=hOOG&&&xt2ioMgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb###ffv60vffv#vv#-###v#-u=-=;fuh;h-u;===;;h=;Oh=uu;=;hu##-===uu==O;;h=;9&bbbbbbbbbbbS&&9GOO;=O;=-u;;hOhu=OG&GGbbbbbbbbbbbbbbbbbbbbbbbbbbt2bbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbO=====u=;h=h;;hOh;;OhG;GsSsxm2BoMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc##vv-##vvvv#f#vf#c##cf##;=uh;uu=;;u;h;=;==;hh;=;;;u=h;=uu-uu;u-=uhuuO;=;GG9sbbbbbbbbbb&S&GGG9h==;=uuhO=;;=;hG9OG&mbbbbbbbbbbbbbbbbbbbbbbbm2bbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbsO=;;G=-u;==hh;h;;=O&9GSSxmtBiMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbcv0f-#v###0vvv#v##--uf#=f#;u==h;O9=;;Ghuu;;=;h;h==uhOh=h;;u=uu=uu===;uu;uu9;9G&&&xbbbbbbbbbbSS&&O;=;Oh=;;=-uuu;;hO9G&&&bbbbbbbbbbbbbbbbbbbbbbmbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbOhGOO;=uuuh;hh;;GGGG&mmm22i+Aggggbbbbbbbbbbbbbbbbbbbbbbbbbbbb##v#f###=fvfvv##f#-f-==-#fu==f;Oh;h;hO9GO;=uuh;hh;=hO;h;G9;;uu===uu==;;u--u;huh&GGS&&tbbbbbbbbbs&GG9Ghh=9O;;uu=;=;;hO9&O99Gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;GhOhOuuf=;=hhOG9GSmttBi+Mggggbbbbbbbbbbbbbbbbbbbbbbbbbbbcv0#vvf#v#=u#=u##--uu--;uuu==u;;=u;u;9O=9999G;=uu=u;;;Oh;;&9h99=u==h;=uh==uu=u;;;=hh9&sGsmbbbbbbbbbm&&&&hhG9hOO=uu=;===OOOOGG&&mbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmhhhO===f;hOhhOG&Sm22B+Mgggggbbbbbbbbbbbbbbbbbbbbbbbbbbf0v###v#v#v#;=f-fuu-#--=Ou-==u;9h;uuuuhhh9hhOGO=;u;hOh=;=h==GG;;;;h=-=u;9u-=;u=9O;===;9G&ssSsbbbbbbbbbb&G&9h&&;=;=h=-=-=9=-;OO9sSs&sbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGOO;;hu=;hhhhOO&smBiMAggggbbbbbbbbbbbbbbbbbbbbbbbbbb-fvv#v#v000000--uf#uhhu-u=;u-#;h;;;;h;hhu;;hOOhh;Oh=;hh;=uu-u-hhhu-;O9u-uu;=uf=h;;=h;;;O=O9&Ssxsmbbbbbbbbb9hh=hhhu-uOO=-uu;=u-=99GGSSssbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9;GGu=h==hOGSsxtB+Mggggbbbbbbbbbbbbbbbbbbbbbbbbbhvfuvvfv0vvv#v00v-==--f==u-u--=u=uu;uOh;;hhO;;;;9;O&=;O=u=u===##f;hh=u-=;=-=uuuu=uu;uhh;;;h9hhO&ssstmbbbbbbbbbh;=OOh=ufu=u-=u-=u;==h;G&&&sstbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;;;G;u=;O&sxt2iMAggggbbbbbbbbbbbbbbbbbbbbbbbb;0vvvv-f000v#####f-=uu=u=uuuu==u==;;-u-c==;9hOO;h;hh;;99;==;;h=uu=u;===u==u-u==f=uuu---uuu=9hO9;99G&sSmmbbbbbbbbb9OGOh;uu=u--==-=uuuuuu;hOGxsxmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&h9h;=;OGst2B+Aggggbbbbbbbbbbbbbbbbbbbbbbbbc#-#vv#fvv#v#v#-f--uu=;;;==u=h=O==hGS;=-=-;OGOhh;9GG;hOGOh;;;==;=;=;=;hhh;=u=huh=u;;=-uf-f=;9h;;=OGG9G&xmxxbbbbbbbbb999Ghhu-u;-;u-===-u---=9&&SSSx2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&O;;Oh&sm2oMAgggbbbbbbbbbbbbbbbbbbbbbbbb;0fu-v0#-fv#f##-#-u;;==;hhh;h;hh9;h=&x9;=u=h;;hO9OGSSG;G&GhhO;;h=;hhO;;hOhh=h;;;h=;u=;u=-f-=uu=;h;O&&O;GssSxmmbbbbbbbbbsG9O=;uu=;u=-u=uu-#-u;=h9&Sstmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGGhGGSm2oAggggbbbbbbbbbbbbbbbbbbbbbbb-v##vv#--#v-u#--#-uh=O;uh9O9h&;hhG9GG&mSG9OOO9GOOG&S&G&sSSGGSOG9hhhGOGO=h99OOG;=;OhOhh=h;;uu==;uu=hOh=OGG&O&xSxmmbbbbbbbbbs9OG;u-====;u;=uu-=u;=;hG&SSxmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGO&&sx2oAgggbbbbbbbbbbbbbbbbbbbbbbbc0v00###vf-u-fu;==-=hO9O;O9GS&&&SGGGSxmtmS&GGSSsSsxsSxxxsxxxsSSxS&O9&GSGO9GGSGGGGO;;O9OG9h;u=h;h;;O;=hOO;O9G99GxxmsmbbbbbbbbbsGOO=-fu==;Ouu--==;==hh;G&sSxmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&&sm2oMgggbbbbbbbbbbbbbbbbbbbbbbbv###0vv#vf#u=h9hhG&G&O&&SS&smmxxxssxxmBBtmmmmmtttttttmttmtmttttmmmtmmsxsxxssmmxSS&G&GGG&SGOhO;OGGGO9h;OO;OhhOGG&&smtmtbbbbbbbbb&h;==uuu=h==-;-=hhO;hh=GGG&ssmm2bbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSmtB+Agbbbbbbbbbbbbbbbbbbbbbbb0vvv#vv#u#--;9&&&&&sxxxsxmxxtttttttt22t2BB22222222222B22B2222B22222222tttttmtttttmmxxmxxsssSs&GSGG&GG&OG&hh;hGGG9O9sxmtt2bbbbbbbbbG;hh=uuu;u=uuh==h;hO=OGhOG&xmmttbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbt2i+gbbbbbbbbbbbbbbbbbbbbbbcv60vvv##f=;;hGsmmxmtttt2t22t2B2BB2BBBBBBiiBiBBBiiBiiiiioiioiBBiiiBBBBBBBBBB2222222t2ttttmttmxmxxxsSsSSS&G&&O;h9&GGGGSxmtt2bbbbbbbbbbOh;==;=u==u=;=u;;;;;h;9;h9Smmmttbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB2Bbbbbbbbbbbbbbbbbbbbbbb=00v000#f;u=OGsmmmt222BBBBBiiBBiiiiioooooooooo++++o+ooo+o+oioioooioooooooiiiiBBiiBBBBBBBB2B22t22ttttmmxmxms&SG&SGGG&O9&SSSm222bbbbbbbbbbG;;;=-u;=u=;uu-;uG;-==hO9G&xxmttbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBbbbbbbbbbbbbbbbbbbbbbb#vv0vvvvuO&&smtt2BiBiio++o++MM++++++M++++MMMMM+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb++oiooiiiBiBBBBiBBBBBB222ttttttxxxsxsxS&G&SssSst2BBbbbbbbbbbb;h;==;=;;=;;=-u;Ohu=;uhO&&&&mt22bbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc0fv###uhO&Stt2BBioo++++++MMMM+MAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbboiooiiBBBBBB22t2t2ttmmtmmxxsSSSxmm22Bbbbbbbbbbb&;==;=h;=;==;=u-uuh====9OG&Sxxmt2bbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv#v#f==h&4xt2Biooo+MMAAAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbioBBB2B2B222t222tmxxxxxmm222Bbbbbbbbbbb9;;hh=u;=uu---u-u;==u;h9&&&SxmmtBbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#vv--OO9Smt2iio+MMMAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbboB2BB222222ttmmmmmt2BBibbbbbbbbbbO=;hh;u-u----=u;-f=h;u;O9&G&mmtt2bbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbG#v-c;9sxt2iii+AAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbsS&SGSsx222bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBB2222t2ttttt22iibbbbbbbbbbbOh;hu-u=u-u;O=--u=;h=;h=G9Gmmm22bbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-f=hh9smt2BobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbG=#v###0v#=;;G&S&msmBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbi2B2Bt2t22BioobbbbbbbbbbS;h--u-=-;u;u-u;hO=u;;hu;O&Smxtt2bbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-ch9SsmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGfvvvv0vffvv#-u;;hGGO;OO&s2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBt22222iiobbbbbbbbbbbhu=u-#u=;uu;===O9;=======9&Ssmtt2bbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcu;u9xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&-ff#fu##vv#f-u-fu;9O;;===O;;hSmibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbi22BBiibbbbbbbbbbbbh==u==;=;9hh=uh;hO;--=hOhO9&stttBbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-hObbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;fvv##f####-#f;;;;;;;h9;u;uhuu9=;hStibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBBBiobbbbbbbbbbbS=;u-==;;==h;=;hO;;=uu;O;;9&sxm22bbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbO##0#####v#uh;=h9G9G&G&99hh;;=u;uu9hG&x2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbiiBbbbbbbbbbbbb;u==u=u-u;O9=;hhu==u;u=;hOG&smttBbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbS#000v####-=9O&&mmxmxxmmxxs&&G9=---;;uhS&&tBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbboBbbbbbbbbbbbb==;uuuuO;h;G9;;=u=;====hhGGGSmtBBbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;#-v000##=h9ssmm222BB22222tmmmsS9Oh=;;;=OOGsmt+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbu-fuu-;;==GGO9O;u=;h;==hhhOGsxt2Bbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf#f#0vvf=G&SttBBio+iiooiiBB222txmsS&SGh=uu;G&sxtobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;;ufu-=u=G&;;;;h=-===G=u;O9&tt22Bbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&#v#vv---hSmt2Bio++M+AAAMAAMMMiBBtmtmxS&GOhhh=O&sxtibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;=-f###f#=;huu=OO;-u=;=uu;GGsx22Bibbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh0v#vf;-;SmtBo+AMMgM*,lqn:D::nql,Voo2tmsmS&9OhO;OGSmxBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb--#ffvvv=h;u-u===-=uu=u;=;9Gxt2Bibbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;0v0vv#c&mt2oMAgggVy%aa%:nDDD::DD%%ayqVitss&&&9OO;9GSxm2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-f-###ff==;=uu==-uu;-=u===;h&xt2iobbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc0vf#v-;st2oMggg*qn:aaa<a::DDD::D%%aa%nnlVimxmSGO=OGGGSxtBgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbff###---=;;;uuu;=;=u===uu=;O&t2Bibbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=0#--##Om2iMggg*qnnnn%a<<aDnDDDDnD%%a<:nn:D:qomSSGG&Gh;&mmmBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv##ffff==;;u;u=;;==-===uu-=hsxtBiobbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9vvv0#h&m2iAgggqnnnnnnDa<<<%nDDDD:D%a<a:n:D%:nnV2xS&hO99GGxtmobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbO-fffv#=;=;;=u-;=;=;u;==uuhh&sm2iobbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&06v##-GmB+ggg*:::nnnnn:a<<N%:D%DD:Daa<ann:%D:nnnqix&&hOOG9&st2Mbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf##vv#-h=;;;u--=;;hh==fu=;9GSm2Bi+bbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#00v#fGxBMgggq::::::nnnn%NNNa::%DDD%a<N%n:D%Dnnnn::,mGGh;;OGSxm2Abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf##fvf=O;=u=uuuu=;O;=u;-;OG&smt2i+bbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-00vf#OxBMggA:D::n:n:nnnnDNNC<:D%%:D%aNNDn:%%nnnnn::D,m9O9OhO9Sm2Bgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh##v#u;===h-=;====h=;=u;=;O9&mt2iobbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh00vv-Os2MggADDD:::::::nnn:<>C>DDa%DDa<NN:nD%%nnnn:DDD:,m99GhhO&mt2obbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf0###f-=-u======;u;=u;h==h9&Sm2io+bbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb00#00u&2+gg*lDDDDD::::::nn:aC$C%:a%DDaNC<n:%%:nnn:DDD:::,mhhOu;9smtBAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvvvv#u#==u;;u=;;u=h;=;;u==hhxxt2iobbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv0vvv-9togggn:DD%DDDD:::::nn%C11a:aaD%<>$%:Da%nnn:DD%DD::n,xh;uhGSxm2ogbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbuvv#v#u=u=u-u=;=;h;;h=;;=u;Osxm2o+Mbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbS06jv#GmiAggqn::DD%%DD::D::nn:C1d<Daa%%N$1D:%<:nn:DD%D:::nnn.Sh;=uOSm22MbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbO-f#v--;u=uuu=u=;;OO=h;=;==;O&t2io+bbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0jj00cs2Mggq:nn::DD%%%D:D:D:n:<rrCD<a%aC1C:Daann::%%%D:::nnnn2O;u=;9xtBogbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhvv#fv#u=uu===u;hO;;O;==u-u;;GmtBoMbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb4jjj0fGmogg*nn:::::D%%%%D:DD:nnar5dD<<%<$5N:a<Dnn:%%%D:::nnn:Dlxhu-=;&m2BMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvvv#u-u==u==;;uhOOO=u=uuuu;h&&mBo+bbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvj0#uuSBAggn:::n:::DD%aa%DDDD:nDdzz%N>a>r3a:<<nnDDa%%D::nn:::::.Guuh=9xtBigbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0v#uf#-h=Oh;hhh;hO;==;=--hGhh&m2o+Abbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0v0v#ht+ggq:nnn:::::D%%aa%DDDDn:$p NC1<dz8%aC%n:Daa%D::nn::DD:DDx===h;&t2iAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#v--vfu=;O;GO9;;huu;=;=h;;=;9SmBi+Abbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-v00v;sBAggn::::::::::D%a<<%D%%D:NX6115C3 zD$C::Da<%D::n::DD:DD%aZh=uuu9xti+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0vv#vfu;uO9OGOOhu;==u=;h=u;h9&mBi+Abbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#v0#=&toggqD:::n:::::D:D%aN<a%aaDaXjp58r jr<5<:%<Na%D:n:DDDDD%<N<<x--ff;stBogbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv00vf=-;h==OOO;=h;;;hhOh;GOOOGmtB+Mbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbsv##v=sBMgADD:D:::::::D:DDaNC><<Na%pj@3Xz6j$53%%N$>%D:::D%DDaN>N>N<7=#-#h9xBiMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv0j###=;;===h=hhh;h;=;OOhhhO9&s2i+Agbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcvvv#=miggVDDDDDDD::D::DDDDa$r1$$$<5jjpjXj61X1aC51<%::D%%DaNCCC><<a%&ff--hmtiMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0vv##uuh9u;;G9=u;h=;hhhh=uhG&GstBoMAbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-v0vuStMggn:D%%%%%DD:D::DD%a>5835311jj6j6j68@N$88$aD:%a%aN$11$CNaa%De=--#-&tB+gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0vjv=uuh=hhOG9hu=u;;O;;;hOhOOsxt2oAgbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbjv0#hs2MggnnnnDD%%a%%DDDDD%aNdp@www56jjjjjX68r @5>a%Naa>d5rd$N<a%%DDk;f##uGmBoAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv#v0##-h9=999OGOu=u=u;;;Oh;=&SxtBoMgbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbttbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGvv0#;miggV:n:nn::Daa<aa%D%%<>186j66@Xjjjjj6j8@jXrN>1C$5zz5dCNaa%DDD::9vf#-OtBiMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#vv00vu;hOO;O9G=;=uhOh;;hO;;&xSx2iMgbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbm=h&xxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;v00#=xigglDDD::n:n:D%<<N<a<<Cr3@jjjjjjjjjjj66j6wr335w@ 851><a%DDDDDD:xv0#uhStB+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0#0##=#u=hhOhO;hOu;;h;uuu-u-hGSx2iAgbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbGf=hGG&stbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#000-9moggn::DDDDDD:::D%N$dd1158@6jjjjjjjjjjjjj6 @@@jj6pdC<a%%%DDDDDD%Z##0#;9t2Bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv#vv#-=;u=;Oh;&;;hhu=;u==-#fhGSxtBMgbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhv##=9&sxtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv00#-Gt+g*n::::DDD%%%DDD:%>3wwwX6jjjjjjjjjjjjjj6jjjjj6pd><a%%%%a%aaaa%7#vv0#;sm2gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc000vu-;;=h;=;;;h9;uu==;=uuuuh9GxtiMggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;v##fuhGsm2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0j0#=sBMg*::::::::DDD%a<<aaNr 6jjjjjjjjjjjjjjjjjjjjj6pr$N<<<NNN<<<aaaa7=v00vuOstgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfjjvfuuuu;9h;;;OO;=;=-u======;9&xtBMggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbO0vvv#uh&xmBibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb000#;xBMg*n::::D:D:DDDDDaN1533p6jjjjjjjjjjjjjjjjjjjjX8z5rd11$C>NN<<aa%Dh0v00#hsxMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbj000vv-u;GGhu;9h;=;===-=u;h==hO&xtiMggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcvvvvvf;Gxt2ibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbj00uOmiMgqnn:n:::::DDD%%a<>13X@6jjjjjjjjjjjjjjjjjjjjj66 z51$><<a%DDD:::90v0v-;&&ibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0j000#==h;hOOG;=Gu;uuu-;=;;-uhGGxtiMggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb9#0###vv-GstBiMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbj0#uGmBMgqnnnnnnn::n:::DD%<$rw@jjjjjjjjjjjjjjjjjjjjj6Xzd><a%%%DDDDDDDDD9000#-OGSBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;0v00#f#=;O=hOOh;=h;=ffu;==uuuhGSx2BMggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-###f##f=hSmBoAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb##v=&tiMgqn:n::n:n::::::D%aN15w6jjjjjjjjjjjjjjjjjjjjj@X pzz355rd11$C>>N96v0#=9sxibbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb00v#v--f;;;;;;;Ohh;;h;=u=u=;uuG&SstBAggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbb#0vff##vfh&m2iMgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbff-u&mBAgq:::::DDDDD%%a<>158w66jjjjjjjjjjjjjjjjjjjj@ pzrd$CC>>>NNN<<<<aOv0#v=GStobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb00vv#-f=O==u;OOOh=u;h;==uu=u=OGO&xtiMggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbO#00v#uf#=OxtiMggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb==-;&xBMglDD%D%D%%a%%%%%%%aNr8@jjjjjjjjjjjjjjjjjjjjXz1<aDDDD:D:::::::::h0v##=&mt+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc600v#f-;=Ou-uhGOh;hhhh;h=;-==;hh&stiAggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbj00vvvvf=;GmB+gggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbuuhhOxB+g*:::::n:nn:::D%N5 6jjjjjjjjjjjjjjjjjjjjjjjj6@85Ca%D::::::::::nh00#v=&tBgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0jj0vv=u#uu;;;=;Oh;hhh==h9uu===O=SxtiAggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbb#06000v#u-=&tiMgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;-O9Gs2oA*nnnnn:DD%<>$53p @66666jjjjjjjjjjjjjjjjjX8w8z5d$CCN<a%DD::nn:nc#0#uhsB+gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh0v0jv#;=-==-=hO;==hGGG;uOGOuu=;=O&x2oAggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbj00v000f-=G&tiMgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbO;-;9x2iM*::D%%<NC$$1dddr535rr3Xjjjjjjjjjjjjjjj6j6w$NNN><a<a<aaaa%%DD:lu0#v-&tiAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv0000vvff;==u=OhOh;h=h;Oh;;hOh==OOsx2igggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbc06jvv00v#=GxtiMgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhuu;=GtiMA%a<<N<N>>C>>>N<<aaN5@jjjjjjjjjjjjjjjjj XjX1aDDD%%%%%%%%%%%%%7##vv=&2+ggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc00j000##fhu=-=;OOOh;;;;Oh;O;=;;h;O&m2ogggbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbXjj0v0j0#-uhStiMgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbOuf-;hxB+A7aa<<<<<<<aa%DDD%Nz6@ 66jjjjjjjjjjjjjjjz5 X5<D::::D%DDDDDDDDev00#=sBAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0j0j00v#-;f-u;;u;hOO==h;;;;;h==uh9GStB+ggbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbvj0v#j60vf=h&mB+gggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbs=f##=x2oAyaa%%%%%%DDD:::%>3855w86jjjjjjjjj@@jj@jj3<13r>D::nn::DDDDD:D400v-Omoggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfj0v0jv-;uf--==;==;uh;=9h;;hO;u=h9OGStBMggbbbbbbb",
+"bbbbbbbbbbbbbbbbbb00v0000vfc=;9m2ogggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbx--ffh&2i+VD%%%DDD::n::Da>d1N$51 jjjjjjjjjj88XjXw66z%%>$CaD::nnn::::::f00vuG2Mggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbj0000f#--fu=;O==;;;u;=hOO;;9xm9=OGOGstiAggbbbbbbb",
+"bbbbbbbbbbbbbbbbb60v000vv#fOh9&tBMggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;f##-GmBiADD:D::::n:D%NCC<%>CN36 @@wj6jjjj3r1@j3rw 3%D%N>N%D:nnnnn::7v00v=xBAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb000jvv-ffu===hG;u=;=u=uhhh;=hGmh;;hh&x2igggbbbbbbb",
+"bbbbbbbbbbbbbbbb0vvvv##-##=h9Sm2ogggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=u#vf=S2iMq::nnnn::%a<N<%D<a%$w83w38@Xjjj63NNr6X>$53d%:D%<<a%::nnnnnxvvv-9togggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0000v#f--O;;=uhhhh=--=;;=;=u=hhmhuuhGsmB+gggbbbbbbb",
+"bbbbbbbbbbbbbbb#00vv#v#--=uh&st2+ggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbs#vuf-GtBo*nnnn::D%a<<%DDa%D<5315r$pp8@6jj3a<a363aNC1dan:Daaa%D::nnnu0vvu&2Mggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-v0vvv#-==;;h;u=hO;;=-u=h=u=;;=;mGu-O&StB+gggbbbbbbb",
+"bbbbbbbbbbbbbbv6vvv#vv#=h;;9&stiAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-uv#;Om2iAn:n:DDaaaaD:%aDDa$1NC$CNw13pX668%%D<z >DaNC$<:n:%aaa%:::Z000#;xiAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#j000v#fuuuu;OO;;hhu==u;u===h=;u;G&G;O&xtiAggbbbbbbbb",
+"bbbbbbbbbbbbbb6vvvvvvu==;;&G&xtiAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-#v-fc42Bo*::D%%a%%::%%::%N1a<N<aN3>138 @8%:D:N33%Da<NC<Dnn:D%%%D:u00v-&togggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=060jvvu--u=O;h=GG;;u====;==;=O=--=9m9Gxm2oAggbbbbbbbb",
+"bbbbbbbbbbbbb0jj00v#f=uu;GGGsm2oAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbS-#-=uhmtBA:D%%%%::DD%::%<$a%aaaDCC<C1rzw3%:DnD>5$DD%a<N<Dnn:DD%%Fvj0v-&2Aggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#fv000#vu==hh=uG9OOO;-=hh===hh===;=httttt2+gggbbbbbbbb",
+"bbbbbbbbbbbbv0jvv###uu=;9SGOsx2oggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbh;=--;Gm2oV%%%D:::%D::Da>a%a%%DD$aa<$1r35annnn%Cr<:D%aa<<%nn::Dy=6v0#Otigggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbv#fjv0vf==u;;O=;&S;;O=h=-===Ouu;===GOGG&x2oAgggbbbbbbbb",
+"bbbbbbbbbbbb#00vv###ff-f-OhGGs2oAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbSu-uu;&xm2MlD::nDD::nDaN<D%%%D:%>%%a<>$dda:n:n:a$1a::%%aa<%nnnnsvvvvuS2Aggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb4#vv0##v#u==uuu-uf=;huu=9O=--=h=-f=O;h=9O&xB+gggbbbbbbbbb",
+"bbbbbbbbbbb-00#00v#f-f#vuhOGGstB+gbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb=hu-uO&tt2Ann:DD:::D%aa%D%%DD:<<D%%<<>$1<nnnnnD<$CD:DD%%aa%:ny#-0vuGmiAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb#v#vv=vv-ufuuu=uf##;;h=u-=;=-=-u=-;-=;=9GGSmB+gggbbbbbbbbb",
+"bbbbbbbbbbbvfv0jv#----u-=hh99&tBoMbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&-u-uOGxmti*::D:nn:%aa%DDDDD:D<%D%%a<NC$<:nnnnn%NC<:nDD%%%a%:-0v#-=&2Aggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbfv00vvvf=-#fu=;u---u=;==-===uu==-=uu=u--;hGS2iAgggbbbbbbbbb",
+"bbbbbbbbbbb#v00vvvfu=uu=u;hOGSx2iobbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc-uhh;Gsm2oqD:n::D%a%:D%DD::D<DDD%aa<NCNDnnnnn:%>>a:::DD%%%O00#f-9togggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbf0#vvvvfuf-uu-u;u=====;;;=uuu;u;;-;===--uu;&mBogggbbbbbbbbbb",
+"bbbbbbbbbbcv0vv0vfff=;;==;OOG&xtBi+bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbx=u--;h&ttt+qnn:D%a%:DDDD:::aa:DD%aa<N>NDnnnnn:DaN<D:::DDD460f##OxBAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb00--v0vu-f-=uu=-uu=;===;h;=;u==;==uu==uufu;&SmBMgggbbbbbbbbbb",
+"bbbbbbbbbb##v0vvv#-==;--=;;Oh&&xtBBbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb&-u=;h9&mt2Mq:D%%%D:DDD::::a%:DDD%%a<<N%nnnnnn:%a<<Dn:::xf##0#OS2Mgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-#v#v##fu#-h-uuu--=;;;fu;;=;;=uu;=;==u=;uu-;h&stoAggbbbbbbbbbbb",
+"bbbbbbbbbb-vv#vv0vuu=ufu=;h;O&&Smt2Bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbt9;cu;h9Gmm2MlD%%D::D:D::nDaD:DD%%%aa<<%nnnnnnnD%a<%:nnx0vv##u&t+gggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb-06v#v0f-uu-u;;=-fu==u-u-=O;;h;u--=;;hh;;fu;OGStBMgggbbbbbbbbbbb",
+"bbbbbbbbbbc#vvvff---=;-uhOGh;O9&smt22bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmG===h;GG4mto,%:::DD:::::%%:::DD%%%a<<%:nnnnnnnD%aa%:xvvvvf;&tiAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhvvv0vvv##fu=;;=;;;uu=u==u=hGh===u=uu=hhh=-h-h&Sm2oggggbbbbbbbbbbb",
+"bbbbbbbbbb=#vv#ffu--=uu;OOh;;h;GSxmmttbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbxhO9c=;9SxxmBV:::D::::n:%%::DDDD%%aaaa:nnnnnnn:Daa7G000v-;&tiAgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbfvv#0v-vv#-=;h;=uh;;==u==u=hOh;=;uu;=u=uO;;=uOh&xtiMgggbbbbbbbbbbbb",
+"bbbbbbbbbb=#f#--f=u;=-u=;;;=;=O9GSsmmmtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbS99Ou-;9s44xtol:::::nnD%Dn::DDD%%%aa%DnnnnnnnnDDFuv#6j#uSmBMgggbbbbbbbbbbbbbbbbbbbbbbbbbbb#0vv0vvv#-##f=Ohh;;h;h;;=;f=====;uu====u;;====hOO&m2ogggbbbbbbbbbbbbb",
+"bbbbbbbbbbb###u#fuh=-u=u;=uh=;OhOGSssxmmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB9h;hh==9&GSsmB,::::n:D%::::DDDD%%aaa:nnnnnnnny&vj00v#uOmiAgggbbbbbbbbbbbbbbbbbbbbbbbbbb=v606v0-v0v#fu=u;O;;hhh=;Ohuuu==hfh;uhhu=;;==hh;hGGStiAgggbbbbbbbbbbbbb",
+"bbbbbbbbbbbfu==-#-GO=uu;-=;;=;==;G9Gsssxxtbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2&O;9h9;;h&sx4x2Vn:n:%D::::DDDDD%%%aDnnnnnnqxffv60vv=GtBMgggbbbbbbbbbbbbbbbbbbbbbbbbbb#0vv0j0v-fv#-fu=O=;=;GGO=uO&hu-;=u;;==uuu=;=;h;;9h&sm2ogggbbbbbbbbbbbbbb",
+"bbbbbbbbbbbu-f--u=u;;hh#Ouhhu=uu;;hG&&mSss&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2&OGG99hhO9GG&&x2,n:%:n::::DDDDD%%%Dnnnnk4vvj00v##=StiAgggbbbbbbbbbbbbbbbbbbbbbbbbb##0v00vvv0#vu---=hhhh;;=O;Oh;;hO;=u;=h=;uuu==;h;O&h&Sm2iAgggbbbbbbbbbbbbbb",
+"bbbbbbbbbbb=-f-uu-;;=u;;=uh==u;;=;;O&9G&sSG&&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB&G&&G9h;hhGGGG&&s2.ln::::DDDD%%%%D:,Z;#0j00jv--hStiAgggbbbbbbbbbbbbbbbbbbbbbbbb;#vv#v00000#vf=-=-uhOOhh;;;hhh;O;==;h-===uu====;OOhO&SxtiMgggbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbb#--f--u==u==hh=h;u==;;;;G9SGO999OOObbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbboxG&SGG=;h=hhhhG=;GGte.kkyy:yyZZeS;#000000v#--OxBoAgggbbbbbbbbbbbbbbbbbbbbbbb;0####v0000vv#f=ff=;=u;hhO==h=;;=;huu=;O;;;===;;;uhGGG&Sm2+ggggbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbb-u;--==-f-;;h;uOh=OhhhOhOhGh;9Gh;O&&hsbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbms&GS99G;hO;=uu;h9;-hG;Gh;;;uf#u#v##000f=u;&mBMggggbbbbbbbbbbbbbbbbbbbbbb;#vv#vfv0vfvvvu;u#f-=;;u===h;=Gh;hh;u-=;O;==O=hOOOhhOO&&&mBoAgggbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbb===u-u=-;=Ghu;=hOOOG9h;h;=;hhh;9O&G9GGsbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBx&&&S&Gh;h;-;u9;-u-u==uh=ufffvv#v#v--=OGm2oMggggbbbbbbbbbbbbbbbbbbbbb9v-#fvv#0vv###u-=ufu=hh===h;u;=hOO;;;;=;=OO=;=;OOhGO9hOG9&m2iMgggbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbb===#u---u=;uuhh=;O9OGhO;u;;u=;9h9xtmm9S&O&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbotssss49GO==cu=ufu=u-=;uhuu-#####-;O9&m2iMAgggbbbbbbbbbbbbbbbbbbbbb-v#u#u###vv###fu;u-u===OG=u===u=uhhh=;;==u=;=u;;h=OGOG99GG&xtiMgggbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbhu---=ff-uu;hh;hO=OGOO=;hh;;;OOGm&&9hOO99O;=hSbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbimxxsS&S9;;=u==;--=#-;=;--===;h&sxtBi+AggggbbbbbbbbbbbbbbbbbbbOfv#fvv-#-#v#--fu;;==Ohh=uh;hh=--=;;=;===h=uuuu;;O;hO;;9GGGGSmti+ggggbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbf=-=f-=-#uh;;hO=u;hh;;hh=h;;h&xGhh;h=h99h;u==h9&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbimxxmsSxGh;Gh=;;---u==;hGO&sxt2Bi+AAgggbbbbbbbbbbbbbbbbbbb###v##v0v####-uf===;hO;h;h=u;hhh;uuu=O=u==h=-h=-f;h;OOhu;h9OGSxtB+ggggbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbO==--=#-=u;;hOOh=hh9;==h;=h;OmG=uhOh=hh;u;==;=;=h;OG&bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbi2mmtxxxSS&G99O-hhGGGSmmt2BioMAggggbbbbbbbbbbbbbbbbbbc0#0#v##f-v##c-ffu=u==;h;=u;OO=;hhu==u;u===;;;=;=-;=h;Oh99=OO&&&xtB+ggggbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbb;;-#ff=u-hOhhhhhO9&h=u==;hOGxhhh;;;9h==uu=====;;hhu-==G9bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb+2tmtmxxmsGGOOOSmmmt2Bio+MAAAggbbbbbbbbbbbbbbbbbc000v#6vuf#f#--=h;-f--;=O;;;;O;h;GO;;=u===;==;=hu--=u;-=GOOOhOO&sxxmBoAgggbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbb=uu=-=;-uh=hG;=G99OG;=-==hmGhO;=;9G;Oh--=;=u=-Ou;u=;uhO=u9hsbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbAoi2tmmS&sGhssttii++AAgAggbbbbbbbbbbbbbbbbO=#vvvv0v#vv#v#cc#;;hh9;=u-;uh;=hh;=GGOOO;-=h;===h;;===u;h;=h;=GG;&Sxm2Boggggbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbb==uh;h=--fuOOh9;hOGh=;u;;GmO;;h;9&9u9=;u-f=-;=-u=uu;OO=u=-uhO9G9GbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbA+222m&G&stBMAgAgggbbbbbbbbbbbbbbb9f##-0vvvv#--#vvvv-uu==u;O9-;u=;hh=;;O=;&&;hh;;=-===O=u;===OOh;uu-h9GGSSm2BoAgggbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbb9;h=;u;=h=-;hOOOO;;9;u;9&x;=uu-fO;;u-;9;-f-=;u##hu=u=;;=h=-;;9hOhhh9;mbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbbbbbbb-f;-000v-v00##v#v-##-u#-=h;hhh=Oh==hh=uuuuuf;;huu=GO=u-=h=-f;h=O=O=;;G=hGSxm2B+Agggbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbb;h=G=;==;h=;;OOh9G;;9;;x9==u##-=h;=-u=;--------#u;fhu=u==;u=uhO;hG==O;-=uu;mbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc0#-f#00###0#6vv0#0#-vc---u-==uuhOhh&;=h;u====uf#f=hh=--=;=-;-u=-=-=h=hO;;hhO&G&m2B+ggggbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbOu=u;u=OOh;=;=;;h;9h;-hm9=u-u-=;;=uuu=u--uu---uuf#--u-=hh;;u=u=u;;hhuf-=u=---f-=u=uhmbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbs-f#fv#vvv###vvvv#0vvv0vvv#v0v#---hhO;=;=;=;h;O;uu==;uu-u-=;==uu==-uu=-uu==u--==;hGGSSsm2i+ggggbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbb;=-=h9O=;;hOh;;;9h===;s9;=uu=u=;;;=u-=;uh-u==--#f##fuhhuuu=;=uuuh;u-u-f-=u--u-uuu=u-#-uf=-#uu-######u;;---u=u---=u-#f#vvf##v#v#####v0v#v-#vf########=h9=;=hOh;;=hO;u==uu;==u===;;;==uu;u;=u==;u---fu;G&GSxt2oMggggbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbb=O;h==h=O9G;u;Ghu;hu=Gs;=;;==;h=;=;===;u=-==--ff#=u=u-;u;99=-=h=-u=f-u##fu---u==ufu--uuf-#--#f#vv#-ff#u-u;h=v-;u##-v##vvv##v##ff######f#fvf-#####-=uuu;;;GGOu=GO=;;u==-uu;;u==;h;==u=;;==u;;uuuf-uhhOGsxtB+Mggggbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbb9h;;OOhhhOO9O=Ohu==-;s9=;u-==;;uh-u=;;==uu;u=fu-uu-u;h;;;h;hh-=;--f###u-u-#---u-=###u---#f-#f####f##-=uuu==u=#-=###vvvf#f#0v#ff#-###uf---fuuu#-uu=-u;hhhhhOh9=;O===-u-;=;;-u;;=;;=uu;=;;=u===u-;;OhGst2B+Aggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbOG9hh9O;;9Oh;=;h=ufuh===fu=h;;;h=--u=;=Oh=u-uuu;u;=uuhh==Ohh=uu=u-##u---###u=--=-###-u-=uf#v###-##-##uuf#=u=-f#-fvvv####v##-u--=-###u=u;;=u#uuu;u=;=uhh;=OOO;;=h;u-f===u-u-;h;;h;u-u;;;h;;=-=;hOGSxmtiMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbb&GOOO9;O;;OOhhh;h==u==;u-;O9h===uu-=;;h=uu=-;hh;hh=;=h=hu;hhh;;u=uufu-u-fu=h=f--#f##-u=-f#-#-uuuuuf#-u-uff-uu-----fv-#-##-=h=--ufuf-=;h=u-=f=hhh;h;u;h;h;;hOhh;;h;=-==;=uuOGh===u=uu=hhh==h=h&Ssm2BiMggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbb&G&&OhhhGOOhu=h;;=uu=uu;OOh==;-=;=u=;;==uu;=;;hhh=hO=;=;OOhh=u;h==--u--u;h;uuu#uu-f--=--#f-fuuuu=-u=f-fu;===--uuu-ff-f--;h==u=fu==u=uh===u;==;;;h=;O;==;OOhO==;;;==uu=u=hhh;=;u=h====O;h;;GGSxt2BoAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbSGSGh;O9GOhh;O;;O=;=uu=;;;==u;====;;===u;;u=;=;;;;hhuu;hGh;;;hh=h===fu==u=uu-uuuu-uu-uuf==#-uuuu==;=f#u;O;uuu;==;u==#u====ucu==u=u;;=====;u=;;;;;h;O=u=hGO;;;hhh;;;;f==;;=;=======hh;;OhGsSxtBo+gggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbG&G&GOOGGhhh9;;;O;u-=u;=uhu=h=u;;=-;h===;-====9u-=u;=;=h9;;hO==;O;-u=u==u;uuh=uu==-u;uuu=-uuuuh-f-u===-;O=;;h;==h;--uuu;-h=u;;==;;-=h=u=;uuu==G=u===;;=h9;;hhh=;hhu-u==huh==h;==hh=hGGGSmm2BoAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbb&G&&&&Ohh9&&;==GG;uu;u==h===uu;==;h;;h=;=--=OO;uu=u;;O==;hGGh=uGG;u-=uu=;=uuuu===;;;=;u==-f=hO;-uu-;;O===hO9h=u9G;u-;uu=;===-u====;;=h=;;u-=;9;uu=u;;O;;=hGGO==O&huu;;u=;=====;hhO&&Smm2Bi+Aggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbxGsSSSGG9h9OhO;OhOh-huhhu=-uu==;h;Gh;;;=;u=f;u;;=uhhhO;;h=O;hh=hhh;u;=hhu=-uu===;;9h=h=u;u=f=u;==u=hhh;;;;O;hh=hhO;u;=;hu=-u-===h;9O=;==;u=f;u;==u=hhhh;h;O;hh=hhG;=uh=O=;u==hh9&SmttBB+Aggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbsxxss&GGOG9hOO==;;=uhu;u;;==u;O;;;9;u=ufuu-;;==u=h9Oh;h;;OO;hh===;;-;u=u===uuhOh;;O;==uf-uf=hu=u=h9Ohh;;;hhhhh=u==;-===u===uu;Oh;;9hu=u--u-uh==u=h9Ohh;;;hOhhG==;;h-;;;;;hOOGSmmt2i+Mggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbssmxsG&G9OOhhhu=;hh=O;u=u==;;9h9h=uuu-u-u==--=;==;OOhu;;==;;;h-=uhh=h=u====;uhhOh=u-uf-fu==f-=;=u;OOhu=;==;=;h-=uhh;;;=====huhOOO=uuu---u=h--=;;u;OOh=;h;;h=;hu==hO;OhhhGGSxxtBi+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtSsxSsxG&&Oh==hhO;uhh=9Ohhh;hh9;u;;u-uhOu#-u=h==;==h=hG;hO;=u-;;h;=hhuOh;hhh;;9;u;;u--hh=f--=;==;=uO;;G;hhh=u-=hh;=;huOOhhhhh;9;u;hu--hh=#-u=;;=;==O;;Gh;hh;uu=hOOhO&GSsmm22ioMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbmxxmmssG&Gh9;&O=h;hOOhGOO;h;u=;;;u;=;u-=;h;=;=h==;;hOh;;h;uh=GO===hhOhGOO;;huu===u;=;=f=;hh=;=;;=;=hOO;;;huh=99u;=hhO;GhO;;huu;==u;=;=f=;;h=;;hh=;;hOO;hhh=h;G&hOG&xmm22io+Aggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbxmxmSsSGG999h;9O;;9GOGhOh=;==u;hh=u==;=GO;u;==uu;hhOu;;=uu;;u=hh;;OGOG;Oh=;;===hh=u====O9;u;=uu==hhh=;;==u=;=u;;h=hGOGhhh=;==u;hh=u====OG;=;==u==hhO;;h;;;OGGGSxmm2Bi+MAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtmxxxmSGGG9GGGOOG;OG99;=;h;;;hh;hOO;u;Ohhhu-u=h==;===Ouuuuu;;h;;OuhGO9;=;h;=;hh;;Oh;u;hhhhu-uuh==;===hu-uuu;hO;;9=;GO9h=;;;;;hh;;9hh=;OO;h=-u=h;;h=;;Gh;hOGSstm2BBoMAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtmmxxmsG&s&&&&hhhOOhhOh;hhhh9Oh;h;;uhhhh;uu==h=-==huuOu--h;;hO===;h;;hh=h;hhOhhhh;;=;hhh;uuu;h=u==huuO=--;;;hO;==;h;;hh;h;;hOOhOhh;u;hhO;=u==O;=hhGhOS&&Smt2BioMAAgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2mtxxxxxsSss&OGGGO;hOh;h;hh;==O9h=hO;u==u==;=;;h=u;-u==h;hO9Ouhh9;==h;=;;hh;==hOO=hhhu==u;u;==;;==;uu;uh;hhOOuhh9;=;hh;hhhO;;u;OO;hOh==;=h;hhOGG&&ssstt2ii+AAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2xtmxmtmxxssSsx&hhh;OOGh;;hhhOhGO;;=u==;==;;;Ouuuu;;u;9Ohhhhh9&O=u==;;9;;=;h;hhOO=;u=u=====;;hu-u-=;-;9OhhhOh9&G;u==;;O;;=hOhOhGOh;=;;;hOOG&&xSsmttBBoMAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2mmtmmtmstxxsxGO;OO;9OOGO;hGGO9O=u;h;;==O=;u=;uhhu=O=;GO=&9GOG;=u=;uh;;Oh;;9GOOO=-;hh===O=;u==u;h==h;;G9=GGGOGh=u=;uhhhOO;;9&GGGO;O&&&&&mmmt22Bi+MMgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2mtttttmmmmxSS9&G&GO99GOGsG;Ghh;;-;=h;==;==;OO;=uuuOhOO;hOG9;;==hhO=hhO;OSG;9hh;=-;=;h==;==;G9;==uuhOhhhhhG9=;=;hOO=hhGh9Ssh&&G&GGSsmtttBBio+Agggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbtt222tttmtxssxs&G9OOh;G9O;=O&O=u=;9=--O;h;;h;;h;u;h9OhOh;O;u;hh;==uu=fhhhuu;Ghuuu=9=--h;;;=O=;;hu;hGOOOO;OO=;O9h;;=hh=G&&9Gsmmxmm2BBBi+MAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbt22222tmtmxxssSGO;OG&G9;;hOh;hu;;==u;9uGhh;h;O;;=OGhO&;;Oh=====u##f;;h=-u=;=u=-uuu;-;Ou9hh;hhhh;;OGOO&h;9OhhOh9h;;hSsxxsmt222iBo+MAgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb22222tmttmmxxSSSssSGGG&9hhhO;;;;h=u=;h;hGG9Ohh;h;hO99hu=;;;u=uu=;h;===;;uu=;u==u=u-=;h=;99GO;OhOh9GG&GhhGG&G&&SSmmttt2Biio+MAAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB2222tt2tmmtmmmxxxS&&&GsG9&G9hhh;==O&&OOOOGOO9hGGh;;;=;Oh;=;=h;hhh===h=O;=hhh=u=uuuhG&h99O&GGGG&S&GSS&Smmxmtt22iiioo+MAAggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbB2t22222t2tttmmmmmxssSSsGG9OOGGG99GG&ss&hOS&hOGhhO=;;OOhhO9OO;O;hOOhh=hO=;;u;;G99O&G&sxsG&mxsxmxmmmtt2BBiio++MAAAgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBB22222222ttttttmmmmmxSssssSSsxsssxsssGSsGGGOOO&G&GhGG&GG&999&G&GG9&GGhOGG&GGsssxxmmmtmtttt222BBiioo+MMAAgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbBiBBBB222222222ttttmmtmtmmmtmmxtmmxsxxsS&&sSsS&&&ssssxS&G&SssxxsS&sssxxmmmmtttt22B22BBiBBio++MMMAAggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbiiBBBBBBBBB222BB22222tt222t2t2tttttmmmmmmmmmtttmmmmmxtttttmmtmt2t222222BBBBBiooo++MMMMAAAAgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbooBBBBBBBBiiBBBi2B2BBBBB2222B2222222222222t222222B2222B2BBBBBiiooo++M+MMMMMAAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbo+iiiiiiiiBiioiiiioiiiBBBBBBiiBBBiBBiBBiiiiiiioioo++o+++M++MMAAAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb+++++oioioioooiiooiooooo+o+o+oooo++o+o++++MMAAbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbggggggggggbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbggggggggbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbggggggbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbgggggbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbggggggbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggggbbbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggggggggggggggggggggbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbggggggbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbggggggbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbggggggbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbgggbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbgggggbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbggbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbggggggbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggggbbbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbggbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbggggggbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbggggggbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbgbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbggggggbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbggggggbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbgbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbggggggbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbgbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbgggggggggbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbggbbbbbbggggbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbgggbbbbbggggggbbbbbbbbggbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbgggggbbbbbbbbbbbggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbgggggggggbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbggbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbgggbbbbbbggggggbbbbbbbggbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbggggggggggggggggggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbgggggggggbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbggbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbgggbbbbbbbggggggbbbbbbggbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbggggggggggggggggggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbggggggggbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbgggggggggbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbgggbbbbbbbbgggggggbbbbggbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbgggggbbbbbbbbbbbggbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbgggbggggggbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbbbbbbbbbbbbggggggggbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbbbbgggbbbbbbbbbbggggggbbbggbbbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbgbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbgggbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggggggggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbggggggbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbggbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbgggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbggbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbggbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbggbbbbbbb",
+"bbbbbbbbbbbbbbggbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbbgggbbbbbbb",
+"bbbbbbbbbbbbbggbbbbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbbbbbbgggbbbbbbbb",
+"bbbbbbbbbbbbgggbbbbbbbbbggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggbbbbbbbbbggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbgggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggbbbbbbbbbbbbgggggbbbbbbbb",
+"bbbbbbbbbbggggggbbbbbbbggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbggggggggbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggbbbbbbbbbbbbbbbbbggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbgggggggggggggggggggggggbbbbbbbbb",
+"bbbbbbbbbbgggggggbbbbggggggggggggbbbbbbbbbbbbbbbbbbbbbbbbbbgbbbbbbgggggbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
+};
diff --git a/src/xsane-preferences.c b/src/xsane-preferences.c
new file mode 100644
index 0000000..4ceec06
--- /dev/null
+++ b/src/xsane-preferences.c
@@ -0,0 +1,536 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-preferences.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* --------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-preferences.h"
+#include "xsane-rc-io.h"
+
+#ifdef HAVE_LIBTIFF
+# include <tiffio.h>
+#else
+# define COMPRESSION_PACKBITS 32773
+# define COMPRESSION_JPEG 7
+# define COMPRESSION_CCITTFAX3 2
+#endif
+
+/* --------------------------------------------------------------------- */
+
+#define POFFSET(field) ((char *) &((Preferences *) 0)->field - (char *) 0)
+#define PFIELD(p,offset,type) (*((type *)(((char *)(p)) + (offset))))
+
+#define PRTOFFSET(field) ((char *) &((Preferences_printer_t *) 0)->field - (char *) 0)
+#define PAREAOFFSET(field) ((char *) &((Preferences_preset_area_t *) 0)->field - (char *) 0)
+#define PMEDIUMOFFSET(field) ((char *) &((Preferences_medium_t *) 0)->field - (char *) 0)
+
+/* --------------------------------------------------------------------- */
+
+/* *** ATTENTION *** : DO NOT ENTER STRINGS HERE !!! */
+
+Preferences preferences =
+ {
+ 0, /* xsane-version string */
+ 0, /* default path to temporary directory (not defined here) */
+ 0, /* no default filename */
+ 0137, /* image umask (permission mask for -rw-r------) */
+ 0027, /* directory umask (permission mask for -rwxr-x----) */
+ 0, /* no fax project */
+ 0, /* no default faxcommand */
+ 0, /* no default fax receiver option */
+ 0, /* no default fax postscript option */
+ 0, /* no default fax normal option */
+ 0, /* no default fax fine option */
+ 0, /* no fax viewer */
+ 215.70, /* fax_width: width of fax paper in mm */
+ 296.98, /* fax_height: height of fax paper in mm */
+ 0.0, /* fax_leftoffset */
+ 0.0, /* fax_bottomoffset */
+ 0, /* no default from email address */
+ 0, /* no default reply to email address */
+ 0, /* no default smtp server */
+ 25, /* default smtp port */
+ 0, /* no pop3 authentification */
+ 0, /* no default pop3 server */
+ 110, /* default pop3 port */
+ 0, /* no default pop3 user */
+ 0, /* no default pop3 passsword */
+ 0, /* no mail project */
+ 0, /* no mail viewer */
+ 0, /* no default ocrcommand */
+ 0, /* no default ocr input file option */
+ 0, /* no default ocr output file option */
+ 0, /* no doc viewer */
+ 80.0, /* jpeg_quality */
+ 7.0, /* png_compression */
+ COMPRESSION_PACKBITS, /* tiff_compression16_nr */
+ COMPRESSION_JPEG, /* tiff_compression8_nr */
+ COMPRESSION_CCITTFAX3, /* tiff_compression1_nr */
+ 1, /* save_devprefs_at_exit */
+ 1, /* overwrite_warning */
+ 1, /* skip_existing_numbers */
+ 0, /* reduce_16bit_to_8bit */
+ 1, /* filename_counter_step */
+ 4, /* filename_counter_len */
+ 1, /* tooltips enabled */
+ 1, /* (dont) show histogram */
+ 1, /* (dont) show gamma */
+ 1, /* (dont) show standard options */
+ 0, /* (dont) show advanced options */
+ 0, /* (dont) show resolution list */
+ 10.0, /* length unit */
+ 1, /* main window fixed (1) or scrolled (0) */
+ 0, /* preview_own_cmap */
+ 1.5, /* preview_oversampling */
+ 1.0, /* preview_gamma */
+ 1.0, /* preview_gamma_red */
+ 1.0, /* preview_gamma_green */
+ 1.0, /* preview_gamma_blue */
+ 1, /* disable_gimp_preview_gamma */
+ 12, /* preview_gamma_input_bits */
+ 3, /* preview_pipette_range */
+ 1.6, /* gamma */
+ 1.0, /* gamma red */
+ 1.0, /* gamma green */
+ 1.0, /* gamma blue */
+ 0.0, /* brightness */
+ 0.0, /* brightness red */
+ 0.0, /* brightness green */
+ 0.0, /* brightness blue */
+ 0.0, /* contrast */
+ 0.0, /* contrast red */
+ 0.0, /* contrast green */
+ 0.0, /* contrast blue */
+ 1, /* rgb default */
+ 0, /* negative */
+ 1, /* autoenhance_gamma: change gamma value with autoenhance button */
+ 1, /* preselect_scanarea after preview scan */
+ 1, /* auto_correct_colors after preview scan */
+ GTK_UPDATE_DISCONTINUOUS, /* update policy for gtk frontend sliders */
+ 0, /* psrotate: rotate in postscript mode (landscape) */
+ 0, /* preset_area_definitions */
+ 0, /* printernr */
+ 0 /* printerdefinitions */
+ };
+
+/* --------------------------------------------------------------------- */
+
+static struct
+ {
+ SANE_String name;
+ void (*codec) (Wire *w, void *p, long offset);
+ long offset;
+ }
+desc[] =
+ {
+ {"xsane-version", xsane_rc_pref_string, POFFSET(xsane_version_str)},
+ {"tmp-path", xsane_rc_pref_string, POFFSET(tmp_path)},
+ {"filename", xsane_rc_pref_string, POFFSET(filename)},
+ {"image-umask", xsane_rc_pref_int, POFFSET(image_umask)},
+ {"directory-umask", xsane_rc_pref_int, POFFSET(directory_umask)},
+ {"fax-project", xsane_rc_pref_string, POFFSET(fax_project)},
+ {"fax-command", xsane_rc_pref_string, POFFSET(fax_command)},
+ {"fax-receiver-option", xsane_rc_pref_string, POFFSET(fax_receiver_option)},
+ {"fax-postscript-option", xsane_rc_pref_string, POFFSET(fax_postscript_option)},
+ {"fax-normal-option", xsane_rc_pref_string, POFFSET(fax_normal_option)},
+ {"fax-fine-option", xsane_rc_pref_string, POFFSET(fax_fine_option)},
+ {"fax-viewer", xsane_rc_pref_string, POFFSET(fax_viewer)},
+ {"fax-width", xsane_rc_pref_double, POFFSET(fax_width)},
+ {"fax-height", xsane_rc_pref_double, POFFSET(fax_height)},
+ {"fax-left-offset", xsane_rc_pref_double, POFFSET(fax_leftoffset)},
+ {"fax-bottom-offset", xsane_rc_pref_double, POFFSET(fax_bottomoffset)},
+ {"mail-from", xsane_rc_pref_string, POFFSET(mail_from)},
+ {"mail-reply-to", xsane_rc_pref_string, POFFSET(mail_reply_to)},
+ {"mail-smtp-server", xsane_rc_pref_string, POFFSET(mail_smtp_server)},
+ {"mail-smtp-port", xsane_rc_pref_int, POFFSET(mail_smtp_port)},
+ {"mail-pop3-authentification", xsane_rc_pref_int, POFFSET(mail_pop3_authentification)},
+ {"mail-pop3-server", xsane_rc_pref_string, POFFSET(mail_pop3_server)},
+ {"mail-pop3-port", xsane_rc_pref_int, POFFSET(mail_pop3_port)},
+ {"mail-pop3-user", xsane_rc_pref_string, POFFSET(mail_pop3_user)},
+ {"mail-pop3-pass", xsane_rc_pref_string, POFFSET(mail_pop3_pass)},
+ {"mail-project", xsane_rc_pref_string, POFFSET(mail_project)},
+ {"mail-viewert", xsane_rc_pref_string, POFFSET(mail_viewer)},
+ {"ocr-command", xsane_rc_pref_string, POFFSET(ocr_command)},
+ {"ocr-inputfile-option", xsane_rc_pref_string, POFFSET(ocr_inputfile_option)},
+ {"ocr-outputfile-options", xsane_rc_pref_string, POFFSET(ocr_outputfile_option)},
+ {"doc-viewer", xsane_rc_pref_string, POFFSET(doc_viewer)},
+ {"jpeg-quality", xsane_rc_pref_double, POFFSET(jpeg_quality)},
+ {"png-compression", xsane_rc_pref_double, POFFSET(png_compression)},
+ {"tiff-compression16_nr", xsane_rc_pref_int, POFFSET(tiff_compression16_nr)},
+ {"tiff-compression8_nr", xsane_rc_pref_int, POFFSET(tiff_compression8_nr)},
+ {"tiff-compression1_nr", xsane_rc_pref_int, POFFSET(tiff_compression1_nr)},
+ {"save-devprefs-at-exit", xsane_rc_pref_int, POFFSET(save_devprefs_at_exit)},
+ {"overwrite-warning", xsane_rc_pref_int, POFFSET(overwrite_warning)},
+ {"skip-existing-numbers", xsane_rc_pref_int, POFFSET(skip_existing_numbers)},
+ {"reduce-16bit-to8bit", xsane_rc_pref_int, POFFSET(reduce_16bit_to_8bit)},
+ {"filename-counter-step", xsane_rc_pref_int, POFFSET(filename_counter_step)},
+ {"filename-counter-len", xsane_rc_pref_int, POFFSET(filename_counter_len)},
+ {"tool-tips", xsane_rc_pref_int, POFFSET(tooltips_enabled)},
+ {"show-histogram", xsane_rc_pref_int, POFFSET(show_histogram)},
+ {"show-gamma", xsane_rc_pref_int, POFFSET(show_gamma)},
+ {"show-standard-options", xsane_rc_pref_int, POFFSET(show_standard_options)},
+ {"show-advanced-options", xsane_rc_pref_int, POFFSET(show_advanced_options)},
+ {"show-resolution-list", xsane_rc_pref_int, POFFSET(show_resolution_list)},
+ {"length-unit", xsane_rc_pref_double, POFFSET(length_unit)},
+ {"main-window-fixed", xsane_rc_pref_int, POFFSET(main_window_fixed)},
+ {"preview-own-cmap", xsane_rc_pref_int, POFFSET(preview_own_cmap)},
+ {"preview-oversampling", xsane_rc_pref_double, POFFSET(preview_oversampling)},
+ {"preview-gamma", xsane_rc_pref_double, POFFSET(preview_gamma)},
+ {"preview-gamma-red", xsane_rc_pref_double, POFFSET(preview_gamma_red)},
+ {"preview-gamma-green", xsane_rc_pref_double, POFFSET(preview_gamma_green)},
+ {"preview-gamma-blue", xsane_rc_pref_double, POFFSET(preview_gamma_blue)},
+ {"disable-gimp-preview-gamma", xsane_rc_pref_int, POFFSET(disable_gimp_preview_gamma)},
+ {"preview-gamma-input-bits", xsane_rc_pref_int, POFFSET(preview_gamma_input_bits)},
+ {"preview-pipette-range", xsane_rc_pref_int, POFFSET(preview_pipette_range)},
+ {"gamma", xsane_rc_pref_double, POFFSET(xsane_gamma)},
+ {"gamma-red", xsane_rc_pref_double, POFFSET(xsane_gamma_red)},
+ {"gamma-green", xsane_rc_pref_double, POFFSET(xsane_gamma_green)},
+ {"gamma-blue", xsane_rc_pref_double, POFFSET(xsane_gamma_blue)},
+ {"brightness", xsane_rc_pref_double, POFFSET(xsane_brightness)},
+ {"brightness-red", xsane_rc_pref_double, POFFSET(xsane_brightness_red)},
+ {"brightness-green", xsane_rc_pref_double, POFFSET(xsane_brightness_green)},
+ {"brightness-blue", xsane_rc_pref_double, POFFSET(xsane_brightness_blue)},
+ {"contrast", xsane_rc_pref_double, POFFSET(xsane_contrast)},
+ {"contrast-red", xsane_rc_pref_double, POFFSET(xsane_contrast_red)},
+ {"contrast-green", xsane_rc_pref_double, POFFSET(xsane_contrast_green)},
+ {"contrast-blue", xsane_rc_pref_double, POFFSET(xsane_contrast_blue)},
+ {"rgb-default", xsane_rc_pref_int, POFFSET(xsane_rgb_default)},
+ {"negative", xsane_rc_pref_int, POFFSET(xsane_negative)},
+ {"auto-enhance-gamma", xsane_rc_pref_int, POFFSET(auto_enhance_gamma)},
+ {"preselect-scanarea", xsane_rc_pref_int, POFFSET(preselect_scanarea)},
+ {"auto-correct-colors", xsane_rc_pref_int, POFFSET(auto_correct_colors)},
+ {"gtk-update-policy", xsane_rc_pref_int, POFFSET(gtk_update_policy)},
+ {"postscript-rotate", xsane_rc_pref_int, POFFSET(psrotate)},
+ {"preset-area-definitions", xsane_rc_pref_int, POFFSET(preset_area_definitions)},
+ {"medium-definitions", xsane_rc_pref_int, POFFSET(medium_definitions)},
+ {"printernr", xsane_rc_pref_int, POFFSET(printernr)},
+ {"printerdefinitions", xsane_rc_pref_int, POFFSET(printerdefinitions)}
+ };
+
+/* --------------------------------------------------------------------- */
+
+static struct
+ {
+ SANE_String name;
+ void (*codec) (Wire *w, void *p, long offset);
+ long offset;
+ }
+desc_printer[] =
+ {
+ {"printer-name", xsane_rc_pref_string, PRTOFFSET(name)},
+ {"printer-command", xsane_rc_pref_string, PRTOFFSET(command)},
+ {"printer-copy-number-option", xsane_rc_pref_string, PRTOFFSET(copy_number_option)},
+ {"printer-lineart-resolution", xsane_rc_pref_int, PRTOFFSET(lineart_resolution)},
+ {"printer-grayscale-resolution", xsane_rc_pref_int, PRTOFFSET(grayscale_resolution)},
+ {"printer-color-resolution", xsane_rc_pref_int, PRTOFFSET(color_resolution)},
+ {"printer-width", xsane_rc_pref_double, PRTOFFSET(width)},
+ {"printer-height", xsane_rc_pref_double, PRTOFFSET(height)},
+ {"printer-left-offset", xsane_rc_pref_double, PRTOFFSET(leftoffset)},
+ {"printer-bottom-offset", xsane_rc_pref_double, PRTOFFSET(bottomoffset)},
+ {"printer-gamma", xsane_rc_pref_double, PRTOFFSET(gamma)},
+ {"printer-gamma-red", xsane_rc_pref_double, PRTOFFSET(gamma_red)},
+ {"printer-gamma-green", xsane_rc_pref_double, PRTOFFSET(gamma_green)},
+ {"printer-gamma-blue", xsane_rc_pref_double, PRTOFFSET(gamma_blue)}
+ };
+
+/* --------------------------------------------------------------------- */
+
+static struct
+ {
+ SANE_String name;
+ void (*codec) (Wire *w, void *p, long offset);
+ long offset;
+ }
+desc_preset_area[] =
+ {
+ {"preset-area-name", xsane_rc_pref_string, PAREAOFFSET(name)},
+ {"preset-area-xoffset", xsane_rc_pref_double, PAREAOFFSET(xoffset)},
+ {"preset-area-yoffset", xsane_rc_pref_double, PAREAOFFSET(yoffset)},
+ {"preset-area-width", xsane_rc_pref_double, PAREAOFFSET(width)},
+ {"preset-area-height", xsane_rc_pref_double, PAREAOFFSET(height)}
+ };
+
+/* --------------------------------------------------------------------- */
+
+static struct
+ {
+ SANE_String name;
+ void (*codec) (Wire *w, void *p, long offset);
+ long offset;
+ }
+desc_medium[] =
+ {
+ {"medium-name", xsane_rc_pref_string, PMEDIUMOFFSET(name)},
+ {"medium-shadow-gray", xsane_rc_pref_double, PMEDIUMOFFSET(shadow_gray)},
+ {"medium-shadow-red", xsane_rc_pref_double, PMEDIUMOFFSET(shadow_red)},
+ {"medium-shadow-green", xsane_rc_pref_double, PMEDIUMOFFSET(shadow_green)},
+ {"medium-shadow-blue", xsane_rc_pref_double, PMEDIUMOFFSET(shadow_blue)},
+ {"medium-highlight-gray", xsane_rc_pref_double, PMEDIUMOFFSET(highlight_gray)},
+ {"medium-highlight-red", xsane_rc_pref_double, PMEDIUMOFFSET(highlight_red)},
+ {"medium-highlight-green", xsane_rc_pref_double, PMEDIUMOFFSET(highlight_green)},
+ {"medium-highlight-blue", xsane_rc_pref_double, PMEDIUMOFFSET(highlight_blue)},
+ {"medium-gamma-gray", xsane_rc_pref_double, PMEDIUMOFFSET(gamma_gray)},
+ {"medium-gamma-red", xsane_rc_pref_double, PMEDIUMOFFSET(gamma_red)},
+ {"medium-gamma-green", xsane_rc_pref_double, PMEDIUMOFFSET(gamma_green)},
+ {"medium-gamma-blue", xsane_rc_pref_double, PMEDIUMOFFSET(gamma_blue)},
+ {"medium-negative", xsane_rc_pref_int, PMEDIUMOFFSET(negative)}
+ };
+
+/* --------------------------------------------------------------------- */
+
+void preferences_save(int fd)
+{
+ Wire w;
+ int i, n;
+
+ DBG(DBG_proc, "preferences_save\n");
+
+ w.io.fd = fd;
+ w.io.read = read;
+ w.io.write = write;
+ xsane_rc_io_w_init(&w);
+ xsane_rc_io_w_set_dir(&w, WIRE_ENCODE);
+
+ for (i = 0; i < NELEMS(desc); ++i)
+ {
+ DBG(DBG_info2, "saving preferences value for %s\n", desc[i].name);
+ xsane_rc_io_w_string(&w, &desc[i].name);
+ (*desc[i].codec) (&w, &preferences, desc[i].offset);
+ }
+
+ /* save printers */
+
+ n=0;
+
+ while (n < preferences.printerdefinitions)
+ {
+ DBG(DBG_info2, "saving preferences printer definition %s\n", preferences.printer[n]->name);
+ for (i = 0; i < NELEMS(desc_printer); ++i)
+ {
+ xsane_rc_io_w_string(&w, &desc_printer[i].name);
+ (*desc_printer[i].codec) (&w, preferences.printer[n], desc_printer[i].offset);
+ }
+ n++;
+ }
+
+ /* save preset areas */
+
+ n=1; /* start with number 1, number 0 (full size) is not saved */
+
+ while (n < preferences.preset_area_definitions)
+ {
+ DBG(DBG_info2, "saving preferences preset area definition %s\n", preferences.preset_area[n]->name);
+ for (i = 0; i < NELEMS(desc_preset_area); ++i)
+ {
+ xsane_rc_io_w_string(&w, &desc_preset_area[i].name);
+ (*desc_preset_area[i].codec) (&w, preferences.preset_area[n], desc_preset_area[i].offset);
+ }
+ n++;
+ }
+
+ /* save mediums */
+
+ n=0;
+
+ while (n < preferences.medium_definitions)
+ {
+ DBG(DBG_info2, "saving preferences medium definition %s\n", preferences.medium[n]->name);
+ for (i = 0; i < NELEMS(desc_medium); ++i)
+ {
+ xsane_rc_io_w_string(&w, &desc_medium[i].name);
+ (*desc_medium[i].codec) (&w, preferences.medium[n], desc_medium[i].offset);
+ }
+ n++;
+ }
+
+
+
+ xsane_rc_io_w_set_dir(&w, WIRE_DECODE); /* flush it out */
+ xsane_rc_io_w_exit(&w);
+}
+
+/* --------------------------------------------------------------------- */
+
+void preferences_restore(int fd)
+{
+ SANE_String name;
+ Wire w;
+ int i, n;
+
+ DBG(DBG_proc, "preferences_restore\n");
+
+ w.io.fd = fd;
+ w.io.read = read;
+ w.io.write = write;
+ xsane_rc_io_w_init(&w);
+ xsane_rc_io_w_set_dir(&w, WIRE_DECODE);
+
+ while (1)
+ {
+ xsane_rc_io_w_space(&w, 3);
+ if (w.status)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ xsane_rc_io_w_string(&w, &name);
+ if (w.status || !name)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ for (i = 0; i < NELEMS (desc); ++i)
+ {
+ if (strcmp(name, desc[i].name) == 0)
+ {
+ DBG(DBG_info2, "reading preferences value for %s\n", desc[i].name);
+ (*desc[i].codec) (&w, &preferences, desc[i].offset);
+ break;
+ }
+ }
+ if (!strcmp(name, "printerdefinitions"))
+ {
+ break;
+ }
+ }
+
+ preferences.printer = calloc(preferences.printerdefinitions, sizeof(void *));
+ n=0;
+ while (n < preferences.printerdefinitions)
+ {
+ preferences.printer[n] = calloc(sizeof(Preferences_printer_t), 1);
+ for (i = 0; i < NELEMS(desc_printer); ++i)
+ {
+ xsane_rc_io_w_space(&w, 3);
+ if (w.status)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ xsane_rc_io_w_string(&w, &name);
+ if (w.status || !name)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ if (strcmp(name, desc_printer[i].name) == 0)
+ {
+ (*desc_printer[i].codec) (&w, preferences.printer[n], desc_printer[i].offset);
+ }
+ else
+ {
+ break;
+ }
+ }
+ DBG(DBG_info2, "preferences printer definition %s read\n", preferences.printer[n]->name);
+ n++;
+ }
+
+ if (preferences.preset_area_definitions)
+ {
+ preferences.preset_area = calloc(preferences.preset_area_definitions, sizeof(void *));
+
+ preferences.preset_area[0] = calloc(sizeof(Preferences_preset_area_t), 1);
+ preferences.preset_area[0]->name = strdup(_(MENU_ITEM_SURFACE_FULL_SIZE));
+ preferences.preset_area[0]->xoffset = 0.0;
+ preferences.preset_area[0]->yoffset = 0.0;
+ preferences.preset_area[0]->width = INF;
+ preferences.preset_area[0]->height = INF;
+
+ n=1;
+ while (n < preferences.preset_area_definitions)
+ {
+ preferences.preset_area[n] = calloc(sizeof(Preferences_preset_area_t), 1);
+ for (i = 0; i < NELEMS(desc_preset_area); ++i)
+ {
+ xsane_rc_io_w_space(&w, 3);
+ if (w.status)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ xsane_rc_io_w_string(&w, &name);
+ if (w.status || !name)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ if (strcmp(name, desc_preset_area[i].name) == 0)
+ {
+ (*desc_preset_area[i].codec) (&w, preferences.preset_area[n], desc_preset_area[i].offset);
+ }
+ else
+ {
+ break;
+ }
+ }
+ DBG(DBG_info2, "preferences preset area definition %s read\n", preferences.preset_area[n]->name);
+ n++;
+ }
+ }
+
+ if (preferences.medium_definitions)
+ {
+ preferences.medium = calloc(preferences.medium_definitions, sizeof(void *));
+
+ n=0;
+ while (n < preferences.medium_definitions)
+ {
+ preferences.medium[n] = calloc(sizeof(Preferences_medium_t), 1);
+ for (i = 0; i < NELEMS(desc_medium); ++i)
+ {
+ xsane_rc_io_w_space(&w, 3);
+ if (w.status)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ xsane_rc_io_w_string(&w, &name);
+ if (w.status || !name)
+ {
+ xsane_rc_io_w_exit(&w);
+ return;
+ }
+
+ if (strcmp(name, desc_medium[i].name) == 0)
+ {
+ (*desc_medium[i].codec) (&w, preferences.medium[n], desc_medium[i].offset);
+ }
+ else
+ {
+ break;
+ }
+ }
+ DBG(DBG_info2, "preferences medium definition %s read\n", preferences.medium[n]->name);
+ n++;
+ }
+ }
+
+ xsane_rc_io_w_exit(&w);
+}
diff --git a/src/xsane-preferences.h b/src/xsane-preferences.h
new file mode 100644
index 0000000..a6686b5
--- /dev/null
+++ b/src/xsane-preferences.h
@@ -0,0 +1,190 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-preferences.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef xsane_preferences_h
+#define xsane_preferences_h
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include <sane/sane.h>
+#include <gtk/gtk.h>
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct
+ {
+ char *name; /* user defined printer name */
+ char *command; /* printercommand */
+ char *copy_number_option; /* option to define number of copies */
+ int lineart_resolution; /* printer resolution for lineart mode */
+ int grayscale_resolution; /* printer resolution for grayscale mode */
+ int color_resolution; /* printer resolution for color mode */
+ double width; /* printer width of printable area in mm */
+ double height; /* printer height of printable area in mm */
+ double leftoffset; /* printer left offset in mm */
+ double bottomoffset; /* printer bottom offset in mm */
+ double gamma; /* printer gamma */
+ double gamma_red; /* printer gamma red */
+ double gamma_green; /* printer gamma green */
+ double gamma_blue; /* printer gamma blue */
+ }
+Preferences_printer_t;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct
+ {
+ char *name;
+ double xoffset;
+ double yoffset;
+ double width;
+ double height;
+ } Preferences_preset_area_t;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct
+{
+ gchar *name;
+ double shadow_gray;
+ double shadow_red;
+ double shadow_green;
+ double shadow_blue;
+ double highlight_gray;
+ double highlight_red;
+ double highlight_green;
+ double highlight_blue;
+ double gamma_gray;
+ double gamma_red;
+ double gamma_green;
+ double gamma_blue;
+ int negative;
+} Preferences_medium_t;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct
+ {
+ char *xsane_version_str; /* xsane-version string */
+ char *tmp_path; /* path to temporary directory */
+ char *filename; /* default filename */
+ int image_umask; /* image umask (permisson mask) */
+ int directory_umask; /* directory umask (permisson mask) */
+
+ char *fax_project; /* fax project */
+ char *fax_command; /* faxcommand */
+ char *fax_receiver_option; /* fax receiver option */
+ char *fax_postscript_option; /* fax postscript option */
+ char *fax_normal_option; /* fax normal mode option */
+ char *fax_fine_option; /* fax fine mode option */
+ char *fax_viewer; /* fax viewer */
+ double fax_width; /* width of fax paper in mm */
+ double fax_height; /* height of fax paper in mm */
+ double fax_leftoffset; /* left offset of fax paper in mm */
+ double fax_bottomoffset; /* bottom offset of fax paper in mm */
+
+ char *mail_from; /* email address of sender */
+ char *mail_reply_to; /* email address for replied emails */
+ char *mail_smtp_server; /* ip address or domain name of smtp server */
+ int mail_smtp_port; /* port to connect to smtp sever */
+ int mail_pop3_authentification; /* use pop3 login for authentification */
+ char *mail_pop3_server; /* ip address or domain name of pop3 server */
+ int mail_pop3_port; /* port to connect to pop3 server */
+ char *mail_pop3_user; /* user name for pop3 server */
+ char *mail_pop3_pass; /* password for pop3 server */
+ char *mail_project; /* mail project */
+ char *mail_viewer; /* mail viewer */
+
+ char *ocr_command; /* ocrcommand */
+ char *ocr_inputfile_option; /* option for input file */
+ char *ocr_outputfile_option; /* option for output file */
+
+ char *doc_viewer; /* doc viewer for helpfiles */
+
+ double jpeg_quality; /* quality when saving image as jpeg */
+ double png_compression; /* compression when saving image as pnm */
+ int tiff_compression16_nr; /* compression type nr when saving 16i bit image as tiff */
+ int tiff_compression8_nr; /* compression type nr when saving 8 bit image as tiff */
+ int tiff_compression1_nr; /* compression type nr when saving 1 bit image as tiff */
+ int save_devprefs_at_exit; /* save device preferences at exit */
+ int overwrite_warning; /* warn if file exists */
+ int skip_existing_numbers; /* skip used filenames when automatically increase counter */
+ int reduce_16bit_to_8bit; /* reduce images with 16 bits/color to 8 bits/color */
+ int filename_counter_step; /* filename_counter += filename_counter_step; */
+ int filename_counter_len; /* minimum length of filename_counter */
+
+ int tooltips_enabled; /* should tooltips be disabled? */
+ int show_histogram; /* show histogram ? */
+ int show_gamma; /* show gamma curve ? */
+ int show_standard_options; /* show standard options ? */
+ int show_advanced_options; /* show advanced options ? */
+ int show_resolution_list; /* show resolution list instead of slider ? */
+ double length_unit; /* 1.0==mm, 10.0==cm, 25.4==inches, etc. */
+ int main_window_fixed; /* fixed (1) or scrolled (0) main window */
+ int preview_own_cmap; /* install colormap for preview */
+ double preview_oversampling; /* resolution faktor for previews */
+ double preview_gamma; /* gamma value for previews */
+ double preview_gamma_red; /* red gamma value for previews */
+ double preview_gamma_green; /* green gamma value for previews */
+ double preview_gamma_blue; /* blue gamma value for previews */
+ int disable_gimp_preview_gamma; /* fixed (1) or scrolled (0) main window */
+ int preview_gamma_input_bits; /* handle preview gamma and histogram with # bits */
+ int preview_pipette_range; /* dimension of a square that is used to pick pipette color */
+ double xsane_gamma;
+ double xsane_gamma_red;
+ double xsane_gamma_green;
+ double xsane_gamma_blue;
+ double xsane_brightness;
+ double xsane_brightness_red;
+ double xsane_brightness_green;
+ double xsane_brightness_blue;
+ double xsane_contrast;
+ double xsane_contrast_red;
+ double xsane_contrast_green;
+ double xsane_contrast_blue;
+
+ int xsane_rgb_default;
+ int xsane_negative;
+ int auto_enhance_gamma; /* change gamma value with automatic color correction */
+ int preselect_scanarea; /* automatic selection of scanarea after preview scan */
+ int auto_correct_colors; /* automatic color correction after preview scan */
+ int gtk_update_policy;
+
+ int psrotate; /* rotate by 90 degree in postscript mode - landscape */
+ int printernr; /* number of printers */
+ int printerdefinitions;
+ Preferences_printer_t **printer;
+ int preset_area_definitions;
+ Preferences_preset_area_t **preset_area;
+ int medium_definitions;
+ Preferences_medium_t **medium;
+ }
+Preferences;
+
+extern Preferences preferences;
+
+extern void preferences_save (int fd);
+extern void preferences_restore (int fd);
+
+#endif /* preferences_h */
diff --git a/src/xsane-preview.c b/src/xsane-preview.c
new file mode 100644
index 0000000..da81e3f
--- /dev/null
+++ b/src/xsane-preview.c
@@ -0,0 +1,5997 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-preview.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/*
+
+ The preview strategy is as follows:
+ -----------------------------------
+
+ 1) The preview is done on the full scan area or a part of it.
+
+ 2) The preview is zoomable so the user can precisely pick
+ the selection area even for small scans on a large scan
+ surface.
+
+ 3) The preview window is resizeable.
+
+ 4) The preview scan resolution depends on preview window size
+ and the selected preview surface (zoom area).
+
+ 5) We let the user/backend pick whether a preview is in color,
+ grayscale, lineart or what not. The only options that the
+ preview may (temporarily) modify are:
+
+ - resolution (set so the preview fills the window)
+ - scan area options (top-left corner, bottom-right corner)
+ - preview option (to let the backend know we're doing a preview)
+ - gamma table is set to default (gamma=1.0)
+
+ 5) The initial size of the scan surface is determined based on the constraints
+ of the four corner coordinates. Missing constraints are replaced
+ by 0/+INF as appropriate (0 for top-left, +INF for bottom-right coords).
+
+ 6) Given the preview window size and the scan surface size, we
+ select the resolution so the acquired preview image just fits
+ in the preview window. The resulting resolution may be out
+ of range in which case we pick the minum/maximum if there is
+ a range or word-list constraint or a default value if there is
+ no such constraint.
+
+ 7) Once a preview image has been acquired, we know the size of the
+ preview image (in pixels). An initial scale factor is chosen
+ so the image fits into the preview window.
+
+ 8) Surface definitions:
+ device = surface of the scanner
+ image = same oriantation like device
+ preview = rotated (0/90/180/270 degree) device surface
+ window = same oriantation like device, may be different scaling
+
+*/
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+/* #include <sys/param.h> */
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preview.h"
+#include "xsane-preferences.h"
+#include "xsane-gamma.h"
+#include <gdk/gdkkeysyms.h>
+
+
+#ifndef PATH_MAX
+# define PATH_MAX 1024
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* Cut fp conversion routines some slack: */
+#define GROSSLY_DIFFERENT(f1,f2) (fabs ((f1) - (f2)) > 1e-3)
+#define GROSSLY_EQUAL(f1,f2) (fabs ((f1) - (f2)) < 1e-3)
+
+#ifdef __alpha__
+ /* This seems to be necessary for at least some XFree86 3.1.2
+ servers. It's known to be necessary for the XF86_TGA server for
+ Linux/Alpha. Fortunately, it's no great loss so we turn this on
+ by default for now. */
+# define XSERVER_WITH_BUGGY_VISUALS
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static u_char *preview_gamma_data_red = 0;
+static u_char *preview_gamma_data_green = 0;
+static u_char *preview_gamma_data_blue = 0;
+
+static u_char *histogram_gamma_data_red = 0;
+static u_char *histogram_gamma_data_green = 0;
+static u_char *histogram_gamma_data_blue = 0;
+
+/* histogram_medium_gamma_data_* is used when medium correction is done after preview-scan by xsane */
+static u_char *histogram_medium_gamma_data_red = 0;
+static u_char *histogram_medium_gamma_data_green = 0;
+static u_char *histogram_medium_gamma_data_blue = 0;
+
+static int preview_gamma_input_bits;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations */
+static void preview_rotate_devicesurface_to_previewsurface(int rotation, float dsurface[4], float *psurface);
+static void preview_rotate_previewsurface_to_devicesurface(int rotation, float psurface[4], float *dsurface);
+static void preview_transform_coordinates_device_to_window(Preview *p, float dcoordinate[4], float *win_coord);
+static void preview_transform_coordinate_window_to_device(Preview *p, float winx, float winy, float *previewx, float *previewy);
+static void preview_transform_coordinate_window_to_image(Preview *p, int winx, int winy, int *imagex, int *imagey);
+static void preview_order_selection(Preview *p);
+static void preview_bound_selection(Preview *p);
+static void preview_draw_rect(Preview *p, GdkWindow *win, GdkGC *gc, float coord[4]);
+static void preview_draw_selection(Preview *p);
+static void preview_update_selection(Preview *p);
+static void preview_establish_selection(Preview *p);
+/* static void preview_update_batch_selection(Preview *p); */
+static void preview_get_scale_device_to_image(Preview *p, float *xscalep, float *yscalep);
+static void preview_get_scale_device_to_window(Preview *p, float *xscalep, float *yscalep);
+static void preview_get_scale_window_to_image(Preview *p, float *xscalep, float *yscalep);
+static void preview_paint_image(Preview *p);
+static void preview_display_partial_image(Preview *p);
+static void preview_display_maybe(Preview *p);
+static void preview_display_image(Preview *p);
+static void preview_save_option(Preview *p, int option, void *save_loc, int *valid);
+static void preview_restore_option(Preview *p, int option, void *saved_value, int valid);
+static void preview_set_option(Preview *p, int option, void *value);
+static void preview_set_option_float(Preview *p, int option, float value);
+static void preview_set_option_val(Preview *p, int option, SANE_Int value);
+static int preview_increment_image_y(Preview *p);
+static void preview_read_image_data(gpointer data, gint source, GdkInputCondition cond);
+static void preview_scan_done(Preview *p, int save_image);
+static void preview_scan_start(Preview *p);
+static int preview_make_image_path(Preview *p, size_t filename_size, char *filename, int level);
+static void preview_restore_image(Preview *p);
+static gint preview_expose_event_handler_start(GtkWidget *window, GdkEvent *event, gpointer data);
+static gint preview_expose_event_handler_end(GtkWidget *window, GdkEvent *event, gpointer data);
+static gint preview_hold_event_handler(gpointer data);
+static gint preview_motion_event_handler(GtkWidget *window, GdkEvent *event, gpointer data);
+static gint preview_button_press_event_handler(GtkWidget *window, GdkEvent *event, gpointer data);
+static gint preview_button_release_event_handler(GtkWidget *window, GdkEvent *event, gpointer data);
+static void preview_start_button_clicked(GtkWidget *widget, gpointer data);
+static void preview_cancel_button_clicked(GtkWidget *widget, gpointer data);
+static void preview_area_correct(Preview *p);
+static void preview_save_image(Preview *p);
+static void preview_delete_images(Preview *p);
+static void preview_zoom_not(GtkWidget *window, gpointer data);
+static void preview_zoom_out(GtkWidget *window, gpointer data);
+static void preview_zoom_in(GtkWidget *window, gpointer data);
+static void preview_zoom_undo(GtkWidget *window, gpointer data);
+static void preview_get_color(Preview *p, int x, int y, int range, int *red, int *green, int *blue);
+static void preview_pipette_white(GtkWidget *window, gpointer data);
+static void preview_pipette_gray(GtkWidget *window, gpointer data);
+static void preview_pipette_black(GtkWidget *window, gpointer data);
+void preview_select_full_preview_area(Preview *p);
+static void preview_full_preview_area_callback(GtkWidget *widget, gpointer call_data);
+static void preview_delete_images_callback(GtkWidget *widget, gpointer call_data);
+static gint preview_preset_area_rename_callback(GtkWidget *widget, GtkWidget *preset_area_widget);
+static gint preview_preset_area_add_callback(GtkWidget *widget, GtkWidget *preset_area_widget);
+static gint preview_preset_area_delete_callback(GtkWidget *widget, GtkWidget *preset_area_widget);
+static gint preview_preset_area_move_up_callback(GtkWidget *widget, GtkWidget *preset_area_widget);
+static gint preview_preset_area_move_down_callback(GtkWidget *widget, GtkWidget *preset_area_widget);
+static gint preview_preset_area_context_menu_callback(GtkWidget *widget, GdkEvent *event);
+static void preview_preset_area_callback(GtkWidget *widget, gpointer call_data);
+static void preview_rotation_callback(GtkWidget *widget, gpointer call_data);
+static void preview_autoselect_scanarea_callback(GtkWidget *window, gpointer data);
+
+void preview_do_gamma_correction(Preview *p);
+void preview_calculate_raw_histogram(Preview *p, SANE_Int *count_raw, SANE_Int *count_raw_red, SANE_Int *count_raw_green, SANE_Int *count_raw_blue);
+void preview_calculate_enh_histogram(Preview *p, SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue);
+void preview_gamma_correction(Preview *p, int gamma_input_bits,
+ u_char *gamma_red, u_char *gamma_green, u_char *gamma_blue,
+ u_char *gamma_red_hist, u_char *gamma_green_hist, u_char *gamma_blue_hist,
+ u_char *medium_gamma_red_hist, u_char *medium_gamma_green_hist, u_char *medium_gamma_blue_hist);
+void preview_area_resize(Preview *p);
+gint preview_area_resize_handler(GtkWidget *widget, GdkEvent *event, gpointer data);
+void preview_update_maximum_output_size(Preview *p);
+void preview_set_maximum_output_size(Preview *p, float width, float height);
+void preview_autoselect_scanarea(Preview *p, float *autoselect_coord);
+void preview_display_valid(Preview *p);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_rotate_devicesurface_to_previewsurface(int rotation, float dsurface[4], float *psurface)
+{
+ DBG(DBG_proc, "preview_rotate_devicesurface_to_previewsurface(rotation = %d)\n", rotation);
+
+ switch (rotation & 3)
+ {
+ case 0: /* 0 degree */
+ default:
+ *(psurface+0) = dsurface[0];
+ *(psurface+1) = dsurface[1];
+ *(psurface+2) = dsurface[2];
+ *(psurface+3) = dsurface[3];
+ break;
+
+ case 1: /* 90 degree */
+ *(psurface+0) = dsurface[3];
+ *(psurface+1) = dsurface[0];
+ *(psurface+2) = dsurface[1];
+ *(psurface+3) = dsurface[2];
+ break;
+
+ case 2: /* 180 degree */
+ *(psurface+0) = dsurface[2];
+ *(psurface+1) = dsurface[3];
+ *(psurface+2) = dsurface[0];
+ *(psurface+3) = dsurface[1];
+ break;
+
+ case 3: /* 270 degree */
+ *(psurface+0) = dsurface[1];
+ *(psurface+1) = dsurface[2];
+ *(psurface+2) = dsurface[3];
+ *(psurface+3) = dsurface[0];
+ break;
+ }
+
+ if (rotation & 4) /* mirror in x direction */
+ {
+ float help=*(psurface+0);
+
+ *(psurface+0) = *(psurface+2);
+ *(psurface+2) = help;
+ }
+
+ DBG(DBG_info, "device[%3.2f %3.2f %3.2f %3.2f] -> preview[%3.2f %3.2f %3.2f %3.2f]\n",
+ dsurface[0], dsurface[1], dsurface[2], dsurface[3],
+ *(psurface+0), *(psurface+1), *(psurface+2), *(psurface+3));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_rotate_previewsurface_to_devicesurface(int rotation, float psurface[4], float *dsurface)
+{
+ DBG(DBG_proc, "preview_rotate_previewsurface_to_devicesurface(rotation = %d)\n", rotation);
+
+ switch (rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ *(dsurface+0) = psurface[0];
+ *(dsurface+1) = psurface[1];
+ *(dsurface+2) = psurface[2];
+ *(dsurface+3) = psurface[3];
+ break;
+
+ case 1: /* 90 degree */
+ *(dsurface+0) = psurface[1];
+ *(dsurface+1) = psurface[2];
+ *(dsurface+2) = psurface[3];
+ *(dsurface+3) = psurface[0];
+ break;
+
+ case 2: /* 180 degree */
+ *(dsurface+0) = psurface[2];
+ *(dsurface+1) = psurface[3];
+ *(dsurface+2) = psurface[0];
+ *(dsurface+3) = psurface[1];
+ break;
+
+ case 3: /* 270 degree */
+ *(dsurface+0) = psurface[3];
+ *(dsurface+1) = psurface[0];
+ *(dsurface+2) = psurface[1];
+ *(dsurface+3) = psurface[2];
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ *(dsurface+0) = psurface[2];
+ *(dsurface+1) = psurface[1];
+ *(dsurface+2) = psurface[0];
+ *(dsurface+3) = psurface[3];
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ *(dsurface+0) = psurface[1];
+ *(dsurface+1) = psurface[0];
+ *(dsurface+2) = psurface[3];
+ *(dsurface+3) = psurface[2];
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ *(dsurface+0) = psurface[0];
+ *(dsurface+1) = psurface[3];
+ *(dsurface+2) = psurface[2];
+ *(dsurface+3) = psurface[1];
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ *(dsurface+0) = psurface[3];
+ *(dsurface+1) = psurface[2];
+ *(dsurface+2) = psurface[1];
+ *(dsurface+3) = psurface[0];
+ break;
+ }
+
+ DBG(DBG_info, "preview[%3.2f %3.2f %3.2f %3.2f] -> device[%3.2f %3.2f %3.2f %3.2f]\n",
+ psurface[0], psurface[1], psurface[2], psurface[3],
+ *(dsurface+0), *(dsurface+1), *(dsurface+2), *(dsurface+3));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_transform_coordinates_device_to_window(Preview *p, float preview_coord[4], float *win_coord)
+{
+ float minx, maxx, miny, maxy;
+ float xscale, yscale;
+
+ DBG(DBG_proc, "preview_transform_coordinates_device_to_window\n");
+
+ preview_get_scale_device_to_window(p, &xscale, &yscale);
+
+ minx = preview_coord[0];
+ miny = preview_coord[1];
+ maxx = preview_coord[2];
+ maxy = preview_coord[3];
+
+ if (minx > maxx)
+ {
+ float val = minx;
+ minx = maxx;
+ maxx = val;
+ }
+
+ if (miny > maxy)
+ {
+ float val = miny;
+ miny = maxy;
+ maxy = val;
+ }
+
+ switch (p->rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ *(win_coord+0) = xscale * (minx - p->surface[0]);
+ *(win_coord+1) = yscale * (miny - p->surface[1]);
+ *(win_coord+2) = xscale * (maxx - p->surface[0]);
+ *(win_coord+3) = yscale * (maxy - p->surface[1]);
+ break;
+
+ case 1: /* 90 degree */
+ *(win_coord+0) = xscale * (p->surface[0] - maxx);
+ *(win_coord+1) = yscale * (miny - p->surface[1]);
+ *(win_coord+2) = xscale * (p->surface[0] - minx);
+ *(win_coord+3) = yscale * (maxy - p->surface[1]);
+ break;
+
+ case 2: /* 180 degree */
+ *(win_coord+0) = xscale * (p->surface[0] - maxx);
+ *(win_coord+1) = yscale * (p->surface[1] - maxy);
+ *(win_coord+2) = xscale * (p->surface[0] - minx);
+ *(win_coord+3) = yscale * (p->surface[1] - miny);
+ break;
+
+ case 3: /* 270 degree */
+ *(win_coord+0) = xscale * (minx - p->surface[0]);
+ *(win_coord+1) = yscale * (p->surface[1] - maxy);
+ *(win_coord+2) = xscale * (maxx - p->surface[0]);
+ *(win_coord+3) = yscale * (p->surface[1] - miny);
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ *(win_coord+0) = xscale * (p->surface[0] - maxx);
+ *(win_coord+1) = yscale * (miny - p->surface[1]);
+ *(win_coord+2) = xscale * (p->surface[0] - minx);
+ *(win_coord+3) = yscale * (maxy - p->surface[1]);
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ *(win_coord+0) = xscale * (minx - p->surface[0]);
+ *(win_coord+1) = yscale * (miny - p->surface[1]);
+ *(win_coord+2) = xscale * (maxx - p->surface[0]);
+ *(win_coord+3) = yscale * (maxy - p->surface[1]);
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ *(win_coord+0) = xscale * (minx - p->surface[0]);
+ *(win_coord+1) = yscale * (p->surface[1] - maxy);
+ *(win_coord+2) = xscale * (maxx - p->surface[0]);
+ *(win_coord+3) = yscale * (p->surface[1] - miny);
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ *(win_coord+0) = xscale * (p->surface[0] - maxx);
+ *(win_coord+1) = yscale * (p->surface[1] - maxy);
+ *(win_coord+2) = xscale * (p->surface[0] - minx);
+ *(win_coord+3) = yscale * (p->surface[1] - miny);
+ break;
+ }
+
+ DBG(DBG_info, "preview[%3.2f %3.2f %3.2f %3.2f] -> window[%3.2f %3.2f %3.2f %3.2f]\n",
+ preview_coord[0], preview_coord[1], preview_coord[2], preview_coord[3],
+ *(win_coord+0), *(win_coord+1), *(win_coord+2), *(win_coord+3) );
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_transform_coordinate_window_to_device(Preview *p, float winx, float winy, float *devicex, float *devicey)
+{
+ float xscale, yscale;
+
+ DBG(DBG_proc, "preview_transform_coordinate_window_to_device\n");
+
+ preview_get_scale_device_to_window(p, &xscale, &yscale);
+
+ switch (p->rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ *devicex = p->surface[0] + winx / xscale;
+ *devicey = p->surface[1] + winy / yscale;
+ break;
+
+ case 1: /* 90 degree */
+ *devicex = p->surface[0] - winx / xscale;
+ *devicey = p->surface[1] + winy / yscale;
+ break;
+
+ case 2: /* 180 degree */
+ *devicex = p->surface[0] - winx / xscale;
+ *devicey = p->surface[1] - winy / yscale;
+ break;
+
+ case 3: /* 270 degree */
+ *devicex = p->surface[0] + winx / xscale;
+ *devicey = p->surface[1] - winy / yscale;
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ *devicex = p->surface[0] - winx / xscale;
+ *devicey = p->surface[1] + winy / yscale;
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ *devicex = p->surface[0] + winx / xscale;
+ *devicey = p->surface[1] + winy / yscale;
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ *devicex = p->surface[0] + winx / xscale;
+ *devicey = p->surface[1] - winy / yscale;
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ *devicex = p->surface[0] - winx / xscale;
+ *devicey = p->surface[1] - winy / yscale;
+ break;
+ }
+
+ DBG(DBG_info, "window[%3.2f %3.2f] -> device[%3.2f %3.2f]\n", winx, winy, *devicex, *devicey);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_transform_coordinate_window_to_image(Preview *p, int winx, int winy, int *imagex, int *imagey)
+{
+ float xscale, yscale;
+
+ DBG(DBG_proc, "preview_transform_coordinate_window_to_image\n");
+
+ preview_get_scale_window_to_image(p, &xscale, &yscale);
+
+ switch (p->rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ *imagex = winx * xscale;
+ *imagey = winy * yscale;
+ break;
+
+ case 1: /* 90 degree */
+ *imagex = winy * yscale;
+ *imagey = p->image_height - winx * xscale;
+ break;
+
+ case 2: /* 180 degree */
+ *imagex = p->image_width - winx * xscale;
+ *imagey = p->image_height - winy * yscale;
+ break;
+
+ case 3: /* 270 degree */
+ *imagex = p->image_width - winy * yscale;
+ *imagey = winx * xscale;
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ *imagex = p->image_width - winx * xscale;
+ *imagey = winy * yscale;
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ *imagex = winy * yscale;
+ *imagey = winx * xscale;
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ *imagex = winx * xscale;
+ *imagey = p->image_height - winy * yscale;
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ *imagex = p->image_width - winy * yscale;
+ *imagey = p->image_height - winx * xscale;
+ break;
+ }
+
+ DBG(DBG_info, "window[%d %d] -> image[%d %d]\n", winx, winy, *imagex, *imagey);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_order_selection(Preview *p)
+{
+ float tmp_coordinate;
+
+ DBG(DBG_proc, "preview_order_selection\n");
+
+ p->selection.active = ( (p->selection.coordinate[0] != p->selection.coordinate[2]) &&
+ (p->selection.coordinate[1] != p->selection.coordinate[3]) );
+
+
+ if (p->selection.active)
+ {
+
+ if (p->selection.coordinate[p->index_xmin] > p->selection.coordinate[p->index_xmax])
+ {
+ tmp_coordinate = p->selection.coordinate[p->index_xmin];
+ p->selection.coordinate[p->index_xmin] = p->selection.coordinate[p->index_xmax];
+ p->selection.coordinate[p->index_xmax] = tmp_coordinate;
+
+ p->selection_xedge = (p->selection_xedge + 2) & 3;
+ }
+
+ if (p->selection.coordinate[p->index_ymin] > p->selection.coordinate[p->index_ymax])
+ {
+ tmp_coordinate = p->selection.coordinate[p->index_ymin];
+ p->selection.coordinate[p->index_ymin] = p->selection.coordinate[p->index_ymax];
+ p->selection.coordinate[p->index_ymax] = tmp_coordinate;
+
+ p->selection_yedge = (p->selection_yedge + 2) & 3;
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_bound_selection(Preview *p)
+{
+ DBG(DBG_proc, "preview_bound_selection\n");
+
+ p->selection.active = ( (p->selection.coordinate[0] != p->selection.coordinate[2]) &&
+ (p->selection.coordinate[1] != p->selection.coordinate[3]) );
+
+
+ if (p->selection.active)
+ {
+#if 0
+ xsane_bound_float(&p->selection.coordinate[0], p->scanner_surface[0], p->scanner_surface[2]);
+ xsane_bound_float(&p->selection.coordinate[2], p->scanner_surface[0], p->scanner_surface[2]);
+ xsane_bound_float(&p->selection.coordinate[1], p->scanner_surface[1], p->scanner_surface[3]);
+ xsane_bound_float(&p->selection.coordinate[3], p->scanner_surface[1], p->scanner_surface[3]);
+#endif
+ xsane_bound_float(&p->selection.coordinate[0], p->surface[0], p->surface[2]);
+ xsane_bound_float(&p->selection.coordinate[2], p->surface[0], p->surface[2]);
+ xsane_bound_float(&p->selection.coordinate[1], p->surface[1], p->surface[3]);
+ xsane_bound_float(&p->selection.coordinate[3], p->surface[1], p->surface[3]);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_draw_rect(Preview *p, GdkWindow *win, GdkGC *gc, float preview_coord[4])
+{
+ float win_coord[4];
+
+ DBG(DBG_proc, "preview_draw_rect [%3.2f %3.2f %3.2f %3.2f]\n", preview_coord[0], preview_coord[1], preview_coord[2], preview_coord[3]);
+
+ preview_transform_coordinates_device_to_window(p, preview_coord, win_coord);
+ gdk_draw_rectangle(win, gc, FALSE, win_coord[0], win_coord[1], win_coord[2]-win_coord[0] + 1, win_coord[3] - win_coord[1] + 1);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_draw_selection(Preview *p)
+{
+ DBG(DBG_proc, "preview_draw_selection\n");
+
+ if (!p->gc_selection) /* window isn't mapped yet */
+ {
+ return;
+ }
+
+ if ( (p->show_selection == FALSE) || (p->calibration) )
+ {
+ return;
+ }
+
+ if (p->previous_selection.active)
+ {
+ preview_draw_rect(p, p->window->window, p->gc_selection, p->previous_selection.coordinate);
+ }
+
+ if (p->selection.active)
+ {
+ preview_draw_rect(p, p->window->window, p->gc_selection, p->selection.coordinate);
+ }
+
+ p->previous_selection = p->selection;
+
+
+ if (!p->gc_selection_maximum) /* window isn't mapped yet */
+ {
+ return;
+ }
+
+ if (p->previous_selection_maximum.active)
+ {
+ preview_draw_rect(p, p->window->window, p->gc_selection_maximum, p->previous_selection_maximum.coordinate);
+ }
+
+ if (p->selection_maximum.active)
+ {
+ preview_draw_rect(p, p->window->window, p->gc_selection_maximum, p->selection_maximum.coordinate);
+ }
+
+ p->previous_selection_maximum = p->selection_maximum;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_update_selection(Preview *p)
+/* draw selection box as defined in backend */
+{
+ const SANE_Option_Descriptor *opt;
+ SANE_Status status;
+ SANE_Word val;
+ int i, optnum;
+ float coord[4];
+
+ DBG(DBG_proc, "preview_update_selection\n");
+
+ p->previous_selection = p->selection;
+
+ for (i = 0; i < 4; ++i)
+ {
+ optnum = xsane.well_known.coord[i];
+ if (optnum > 0)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, optnum);
+ status = xsane_control_option(xsane.dev, optnum, SANE_ACTION_GET_VALUE, &val, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ continue;
+ }
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ coord[i] = SANE_UNFIX(val);
+ }
+ else
+ {
+ coord[i] = val;
+ }
+ }
+ else /* backend does not use scanarea options */
+ {
+ switch (i)
+ {
+ case 0:
+ case 1:
+ coord[i] = 0;
+ break;
+
+ case 2:
+ coord[i] = p->preview_width;
+ break;
+
+ case 3:
+ coord[i] = p->preview_height;
+ break;
+ }
+ }
+ }
+
+ preview_rotate_devicesurface_to_previewsurface(p->rotation, coord, p->selection.coordinate);
+
+ p->selection.active = ( (p->selection.coordinate[0] != p->selection.coordinate[2]) &&
+ (p->selection.coordinate[1] != p->selection.coordinate[3]));
+
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_establish_selection(Preview *p)
+{
+ /* This routine only shall be called if the preview area really is changed. */
+ int i;
+ float coord[4];
+
+ DBG(DBG_proc, "preview_establish_selection\n");
+
+ preview_order_selection(p);
+
+ xsane.block_update_param = TRUE; /* do not change parameters each time */
+
+ preview_rotate_previewsurface_to_devicesurface(p->rotation, p->selection.coordinate, coord);
+
+ for (i = 0; i < 4; ++i)
+ {
+ preview_set_option_float(p, xsane.well_known.coord[i], coord[i]);
+ }
+
+ xsane_back_gtk_update_scan_window();
+
+ xsane.block_update_param = FALSE;
+
+ xsane_update_param(0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#if 0
+static void preview_update_batch_selection(Preview *p)
+{
+ Batch_selection *batch_selection;
+
+ DBG(DBG_proc, "preview_update_batch_selection\n");
+
+ if (!p->gc_selection) /* window isn't mapped yet */
+ {
+ return;
+ }
+
+ batch_selection = p->batch_selection;
+
+ while (batch_selection)
+ {
+ preview_draw_rect(p, p->window->window, p->gc_selection, batch_selection->coordinate);
+
+ batch_selection = batch_selection->next;
+ }
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_get_scale_device_to_image(Preview *p, float *xscalep, float *yscalep)
+{
+ float device_width, device_height;
+ float xscale = 1.0;
+ float yscale = 1.0;
+
+ device_width = fabs(p->image_surface[2] - p->image_surface[0]);
+ device_height = fabs(p->image_surface[3] - p->image_surface[1]);
+
+ if ( ((p->rotation & 3) == 0) || ((p->rotation & 3) == 2) ) /* 0 or 180 degree */
+ {
+ if ( (device_width >0) && (device_width < INF) )
+ {
+ xscale = p->image_width / device_width;
+ }
+
+ if ( (device_height >0) && (device_height < INF) )
+ {
+ yscale = p->image_height / device_height;
+ }
+ }
+ else /* 90 or 270 degree */
+ {
+ if ( (device_width >0) && (device_width < INF) )
+ {
+ xscale = p->image_height / device_width;
+ }
+
+ if ( (device_height >0) && (device_height < INF) )
+ {
+ yscale = p->image_width / device_height;
+ }
+ }
+
+#if 1
+ if (xscale > yscale)
+ {
+ yscale = xscale;
+ }
+ else
+ {
+ xscale = yscale;
+ }
+#endif
+
+ *xscalep = xscale;
+ *yscalep = yscale;
+
+ DBG(DBG_info, "preview_get_scale_device_to_image: scale = %f, %f\n", xscale, yscale);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_get_scale_device_to_window(Preview *p, float *xscalep, float *yscalep)
+{
+ float device_width, device_height;
+ float xscale = 1.0;
+ float yscale = 1.0;
+
+ /* device_* in device coords */
+ device_width = fabs(p->image_surface[2] - p->image_surface[0]);
+ device_height = fabs(p->image_surface[3] - p->image_surface[1]);
+
+ if ( (device_width >0) && (device_width < INF) )
+ {
+ xscale = p->preview_width / device_width; /* preview width is in window coords */
+ }
+
+ if ( (device_height >0) && (device_height < INF) )
+ {
+ yscale = p->preview_height / device_height; /* preview height is in window coords */
+ }
+
+ /* make sure pixels have square dimension */
+ if (xscale > yscale)
+ {
+ yscale = xscale;
+ }
+ else
+ {
+ xscale = yscale;
+ }
+
+ *xscalep = xscale;
+ *yscalep = yscale;
+
+ DBG(DBG_info, "preview_get_scale_device_to_window: scale = %f, %f\n", xscale, yscale);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_get_scale_window_to_image(Preview *p, float *xscalep, float *yscalep)
+{
+ float xscale = 1.0;
+ float yscale = 1.0;
+
+ switch (p->rotation & 3)
+ {
+ case 0: /* do not rotate - 0 degree */
+ case 2: /* rotate 180 degree */
+ default:
+ if (p->image_width > 0)
+ {
+ xscale = p->image_width / (float) p->preview_width;
+ }
+
+ if (p->image_height > 0)
+ {
+ yscale = p->image_height / (float) p->preview_height;
+ }
+ break;
+
+ case 1: /* rotate 90 degree */
+ case 3: /* rotate 270 degree */
+ if (p->image_height > 0)
+ {
+ xscale = p->image_height / (float) p->preview_width;
+ }
+
+ if (p->image_width > 0)
+ {
+ yscale = p->image_width / (float) p->preview_height;
+ }
+ break;
+
+ }
+
+ /* make sure pixels have square dimension */
+ if (xscale > yscale)
+ {
+ yscale = xscale;
+ }
+ else
+ {
+ xscale = yscale;
+ }
+
+ *xscalep = xscale;
+ *yscalep = yscale;
+
+ DBG(DBG_info, "preview_get_scale_window_to_image: scale = %f, %f\n", xscale, yscale);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_paint_image(Preview *p)
+{
+ float xscale, yscale, src_x, src_y;
+ int dst_x, dst_y, height, x, y, old_y, src_offset, x_direction;
+ int rotation;
+
+ DBG(DBG_proc, "preview_paint_image (rotation=%d)\n", p->rotation);
+
+ if (!p->image_data_enh)
+ {
+ return; /* no image data */
+ }
+
+ memset(p->preview_row, 0x80, 3 * p->preview_window_width);
+
+ old_y = -1;
+ height = 0;
+
+ rotation = p->rotation;
+ if (p->calibration) /* do not rotate calibration image */
+ {
+ p->rotation = 0;
+ xscale=1.0;
+ yscale=1.0;
+ }
+ else
+ {
+ preview_get_scale_window_to_image(p, &xscale, &yscale);
+ }
+
+
+ switch (p->rotation & 3)
+ {
+ case 0: /* do not rotate - 0 degree */
+ default:
+
+ /* don't draw last line unless it's complete: */
+ height = p->image_y; /* last line */
+
+ if (p->image_x == 0 && height < p->image_height)
+ {
+ ++height; /* use last line if it is complete */
+ }
+
+ src_y = 0.0; /* Source Y position index */
+
+ DBG(DBG_info, "preview_height=%d\n", p->preview_height);
+
+ for (dst_y = 0; dst_y < p->preview_height; ++dst_y)
+ {
+ y = (int) (src_y + 0.5);
+ if (y >= height)
+ {
+ break;
+ }
+
+ if (p->rotation & 4) /* mirror in x direction */
+ {
+ src_offset = (y+1) * 3 * p->image_width - 3;
+ x_direction = -1;
+ }
+ else /* not mirrored */
+ {
+ src_offset = y * 3 * p->image_width;
+ x_direction = 1;
+ }
+
+ if (old_y != y) /* create new line ? - not necessary if the same line is used several times */
+ {
+ old_y = y;
+ src_x = 0.0; /* Source X position index */
+
+ for (dst_x = 0; dst_x < p->preview_width; ++dst_x)
+ {
+ x = (int) (src_x + 0.5);
+ if (x >= p->image_width)
+ {
+ break;
+ }
+
+ p->preview_row[3*dst_x + 0] = p->image_data_enh[src_offset + x_direction * 3 * x + 0]; /* R */
+ p->preview_row[3*dst_x + 1] = p->image_data_enh[src_offset + x_direction * 3 * x + 1]; /* G */
+ p->preview_row[3*dst_x + 2] = p->image_data_enh[src_offset + x_direction * 3 * x + 2]; /* B */
+ src_x += xscale; /* calculate new source x position index */
+ }
+ }
+
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ src_y += yscale; /* calculate new source y position index */
+ }
+
+ memset(p->preview_row, 0x80, 3*p->preview_window_width);
+ for (; dst_y < p->preview_window_height; ++dst_y)
+ {
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ }
+ break;
+
+
+ case 1: /* 90 degree */
+ /* because we run in x direction we have to draw all rows all the time */
+
+ src_y = 0.0;
+
+ DBG(DBG_info, "height=%d\n", height);
+ DBG(DBG_info, "preview_height=%d\n", p->preview_height);
+
+ for (dst_y = 0; dst_y < p->preview_height; ++dst_y)
+ {
+ y = (int) (src_y + 0.5);
+ if (y >= p->image_width)
+ {
+ break;
+ }
+
+ if (p->rotation & 4) /* mirror in x direction */
+ {
+ src_offset = y * 3 + 3 * p->image_width * (p->image_height-1);
+ x_direction = -1;
+ }
+ else /* not mirrored */
+ {
+ src_offset = y * 3;
+ x_direction = 1;
+ }
+
+ if (old_y != y) /* create new line ? - not necessary if the same line is used several times */
+ {
+ old_y = y;
+ src_x = p->image_height - 1;
+
+ for (dst_x = 0; dst_x < p->preview_width; ++dst_x)
+ {
+ x = (int) (src_x + 0.5);
+ if (x < 0)
+ {
+ break;
+ }
+
+ p->preview_row[3*dst_x + 0] = p->image_data_enh[src_offset + x_direction * 3 * x * p->image_width + 0]; /* R */
+ p->preview_row[3*dst_x + 1] = p->image_data_enh[src_offset + x_direction * 3 * x * p->image_width + 1]; /* G */
+ p->preview_row[3*dst_x + 2] = p->image_data_enh[src_offset + x_direction * 3 * x * p->image_width + 2]; /* B */
+ src_x -= xscale;
+ }
+ }
+
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ src_y += yscale;
+ }
+
+ memset(p->preview_row, 0x80, 3*p->preview_window_width);
+ for (; dst_y < p->preview_window_height; ++dst_y)
+ {
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ }
+ break;
+
+
+ case 2: /* 180 degree */
+
+ /* don't draw last line unless it's complete: */
+ height = p->image_y; /* last line */
+
+ if ( (p->image_x == 0) && (height < p->image_height) )
+ {
+ ++height; /* use last line if it is complete */
+ }
+
+ src_y = 0; /* Source Y position index */
+
+ DBG(DBG_info, "height=%d\n", height);
+ DBG(DBG_info, "preview_height=%d\n", p->preview_height);
+
+ /* it looks like it is necessary to write row 0 at first */
+ memset(p->preview_row, 0x80, 3*p->preview_window_width);
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, 0, p->preview_window_width);
+ for (dst_y = p->preview_height-1; dst_y >=0; --dst_y)
+ {
+ y = (int) (src_y + 0.5);
+ if (y >= height)
+ {
+ break;
+ }
+
+ if (p->rotation & 4) /* mirror in x direction */
+ {
+ src_offset = (y+1) * 3 * p->image_width - 3;
+ x_direction = -1;
+ }
+ else /* not mirrored */
+ {
+ src_offset = y * 3 * p->image_width;
+ x_direction = 1;
+ }
+
+ if (old_y != y) /* create new line ? - not necessary if the same line is used several times */
+ {
+ old_y = y;
+ src_x = p->image_width - 1;
+
+ for (dst_x = 0; dst_x < p->preview_width; ++dst_x)
+ {
+ x = (int) (src_x + 0.5);
+ if (x < 0)
+ {
+ break;
+ }
+
+ p->preview_row[3*dst_x + 0] = p->image_data_enh[src_offset + x_direction * 3 * x + 0]; /* R */
+ p->preview_row[3*dst_x + 1] = p->image_data_enh[src_offset + x_direction * 3 * x + 1]; /* G */
+ p->preview_row[3*dst_x + 2] = p->image_data_enh[src_offset + x_direction * 3 * x + 2]; /* B */
+ src_x -= xscale;
+ }
+ }
+
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ src_y += yscale;
+ }
+ dst_y = p->preview_height;
+
+ memset(p->preview_row, 0x80, 3*p->preview_window_width);
+ for (; dst_y < p->preview_window_height; ++dst_y)
+ {
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ }
+ break;
+
+
+ case 3: /* 270 degree */
+ /* because we run in x direction we have to draw all rows all the time */
+
+ src_y = 0.0;
+
+ DBG(DBG_info, "preview_height=%d\n", p->preview_height);
+
+ for (dst_y = 0; dst_y < p->preview_height; ++dst_y)
+ {
+ y = (int) (src_y + 0.5);
+ if (y >= p->image_width)
+ {
+ break;
+ }
+
+ if (p->rotation & 4) /* mirror in x direction */
+ {
+ src_offset = (p->image_width - y - 1) * 3 + 3 * p->image_width * (p->image_height - 1);
+ x_direction = -1;
+ }
+ else /* not mirrored */
+ {
+ src_offset = (p->image_width - y - 1) * 3;
+ x_direction = 1;
+ }
+
+ if (old_y != y) /* create new line ? - not necessary if the same line is used several times */
+ {
+ old_y = y;
+ src_x = 0.0;
+
+ for (dst_x = 0; dst_x < p->preview_width; ++dst_x)
+ {
+ x = (int) (src_x + 0.5);
+ if (x >= p->image_height)
+ {
+ break;
+ }
+
+ p->preview_row[3*dst_x + 0] = p->image_data_enh[src_offset + x_direction * 3 * x * p->image_width + 0]; /* R */
+ p->preview_row[3*dst_x + 1] = p->image_data_enh[src_offset + x_direction * 3 * x * p->image_width + 1]; /* G */
+ p->preview_row[3*dst_x + 2] = p->image_data_enh[src_offset + x_direction * 3 * x * p->image_width + 2]; /* B */
+ src_x += xscale;
+ }
+ }
+
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ src_y += yscale;
+ }
+
+ memset(p->preview_row, 0x80, 3*p->preview_window_width);
+ for (; dst_y < p->preview_window_height; ++dst_y)
+ {
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, dst_y, p->preview_window_width);
+ }
+ break;
+ }
+
+ if (p->calibration) /* do not rotate calibration image */
+ {
+ p->rotation = rotation;
+ }
+
+ /* image is redrawn, we have no visible selections */
+ p->previous_selection.active = FALSE;
+ p->previous_selection_maximum.active = FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_display_partial_image(Preview *p)
+{
+ DBG(DBG_proc, "preview_display_partial_image\n");
+
+ preview_paint_image(p);
+
+ if (GTK_WIDGET_DRAWABLE(p->window))
+ {
+ GtkPreview *preview = GTK_PREVIEW(p->window);
+ int src_x, src_y;
+
+ src_x = (p->window->allocation.width - preview->buffer_width)/2;
+ src_y = (p->window->allocation.height - preview->buffer_height)/2;
+
+ gtk_preview_put(preview, p->window->window, p->window->style->black_gc, src_x, src_y,
+ 0, 0, p->preview_window_width, p->preview_window_height);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_display_maybe(Preview *p)
+{
+ time_t now;
+
+ DBG(DBG_proc, "preview_display_maybe\n");
+
+ time(&now);
+
+ if (now > p->image_last_time_updated) /* wait at least one secone */
+ {
+ p->image_last_time_updated = now;
+ preview_display_partial_image(p);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_display_image(Preview *p)
+{
+ DBG(DBG_proc, "preview_display_image\n");
+
+ /* if image height was unknown and got larger than expected get missing memory */
+ if (p->params.lines <= 0 && p->image_y < p->image_height)
+ {
+ p->image_height = p->image_y;
+
+ p->image_data_raw = realloc(p->image_data_raw, 6 * p->image_width * p->image_height);
+ p->image_data_enh = realloc(p->image_data_enh, 3 * p->image_width * p->image_height);
+ assert(p->image_data_raw);
+ assert(p->image_data_enh);
+ }
+
+ preview_do_gamma_correction(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_save_option(Preview *p, int option, void *save_loc, int *valid)
+{
+ SANE_Status status;
+
+ DBG(DBG_proc, "preview_save_option\n");
+
+ if (option <= 0)
+ {
+ *valid = 0;
+ return;
+ }
+
+ status = xsane_control_option(xsane.dev, option, SANE_ACTION_GET_VALUE, save_loc, 0);
+ *valid = (status == SANE_STATUS_GOOD);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_restore_option(Preview *p, int option, void *saved_value, int valid)
+{
+ const SANE_Option_Descriptor *opt;
+ SANE_Status status;
+ SANE_Handle dev;
+
+ DBG(DBG_proc, "preview_restore_option\n");
+
+ if (!valid)
+ {
+ return;
+ }
+
+ dev = xsane.dev;
+ status = xsane_control_option(dev, option, SANE_ACTION_SET_VALUE, saved_value, 0);
+
+ if (status != SANE_STATUS_GOOD)
+ {
+ char buf[256];
+ opt = xsane_get_option_descriptor(dev, option);
+ snprintf(buf, sizeof(buf), "%s %s: %s.", ERR_SET_OPTION, opt->name, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_set_option_float(Preview *p, int option, float value)
+{
+ const SANE_Option_Descriptor *opt;
+ SANE_Handle dev;
+ SANE_Word word;
+
+ DBG(DBG_proc, "preview_set_option_float\n");
+
+ if (option <= 0 || value <= -INF || value >= INF)
+ {
+ return;
+ }
+
+ dev = xsane.dev;
+ opt = xsane_get_option_descriptor(dev, option);
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ word = SANE_FIX(value);
+ }
+ else
+ {
+ word = value + 0.5;
+ }
+
+ xsane_control_option(dev, option, SANE_ACTION_SET_VALUE, &word, 0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_set_option(Preview *p, int option, void *value)
+{
+ SANE_Handle dev;
+
+ DBG(DBG_proc, "preview_set_option\n");
+
+ if (option <= 0)
+ {
+ return;
+ }
+
+ dev = xsane.dev;
+ xsane_control_option(dev, option, SANE_ACTION_SET_VALUE, value, 0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_set_option_val(Preview *p, int option, SANE_Int value)
+{
+ SANE_Handle dev;
+
+ DBG(DBG_proc, "preview_set_option_val\n");
+
+ if (option <= 0)
+ {
+ return;
+ }
+
+ dev = xsane.dev;
+ xsane_control_option(dev, option, SANE_ACTION_SET_VALUE, &value, 0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int preview_test_image_y(Preview *p)
+{
+ if (p->image_y >= p->image_height) /* make sure backend does not send more data then expected */
+ {
+ char buf[256];
+
+ --p->image_y;
+ preview_scan_done(p, 1);
+ snprintf(buf, sizeof(buf), "%s", ERR_TOO_MUCH_DATA);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1;
+ }
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int preview_increment_image_y(Preview *p)
+{
+ size_t extra_size, offset;
+ char buf[256];
+
+ DBG(DBG_proc, "preview_increment_image_y\n");
+
+ p->image_x = 0;
+ ++p->image_y;
+
+ if (p->params.lines <= 0 && p->image_y >= p->image_height) /* backend said it does not know image height */
+ {
+ offset = 3 * p->image_width*p->image_height;
+ extra_size = 3 * 32 * p->image_width;
+ p->image_height += 32;
+
+ p->image_data_raw = realloc(p->image_data_raw, (offset + extra_size) * 2);
+ p->image_data_enh = realloc(p->image_data_enh, offset + extra_size);
+
+ if ( (!p->image_data_enh) || (!p->image_data_raw) )
+ {
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_FAILED_ALLOCATE_IMAGE, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ return -1;
+ }
+ memset(p->image_data_enh + offset, 0xff, extra_size);
+ }
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_read_image_data(gpointer data, gint source, GdkInputCondition cond)
+{
+ SANE_Status status;
+ Preview *p = data;
+ u_char buf[8192];
+ guint16 *buf16 = (guint16 *) buf;
+ SANE_Handle dev;
+ SANE_Int len;
+ int i, j;
+ int offset = 0;
+ char last = 0;
+
+ DBG(DBG_proc, "preview_read_image_data\n");
+
+ dev = xsane.dev;
+ while (1)
+ {
+ if ((p->params.depth == 1) || (p->params.depth == 8))
+ {
+ status = sane_read(dev, buf, sizeof(buf), &len);
+ }
+ else if (p->params.depth == 16)
+ {
+ if (offset)
+ {
+ buf16[0] = last; /* ATTENTION: that is wrong! */
+ /* use sizeof(buf) here because sizeof(buf16) returns the size of a pointer */
+ status = sane_read(dev, ((SANE_Byte *) buf16) + 1, sizeof(buf) - 1, &len);
+ }
+ else
+ {
+ status = sane_read(dev, (SANE_Byte *) buf16, sizeof(buf), &len);
+ }
+
+ if (len % 2) /* odd number of bytes */
+ {
+ len--;
+ last = buf16[len];
+ offset = 1;
+ }
+ else /* even number of bytes */
+ {
+ offset = 0;
+ }
+ }
+ else /* bad bitdepth */
+ {
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %d.", ERR_PREVIEW_BAD_DEPTH, p->params.depth);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+
+ if (!p->scanning) /* preview scan may have been canceled while sane_read was executed */
+ {
+ return; /* ok, the scan has been canceled */
+ }
+
+
+ if (status != SANE_STATUS_GOOD)
+ {
+ if (status == SANE_STATUS_EOF)
+ {
+ if (p->params.last_frame) /* got all preview image data */
+ {
+ p->invalid = FALSE; /* preview is valid now */
+ preview_scan_done(p, 1); /* scan is done, save image */
+ return; /* ok, all finished */
+ }
+ else
+ {
+ if (p->input_tag >= 0)
+ {
+ gdk_input_remove(p->input_tag);
+ p->input_tag = -1;
+ }
+ preview_scan_start(p);
+ break; /* exit while loop, display_maybe */
+ }
+ }
+ else if (status == SANE_STATUS_CANCELLED)
+ {
+ p->invalid = FALSE; /* preview is valid now - although it is cancled */
+ p->scan_incomplete = TRUE; /* preview is incomplete */
+ preview_scan_done(p, 1); /* save scanned part of the preview */
+ snprintf(buf, sizeof(buf), "%s", XSANE_STRSTATUS(status));
+ xsane_back_gtk_info(buf, TRUE);
+ return;
+ }
+
+ /* not SANE_STATUS_GOOD and not SANE_STATUS_EOF and not SANE_STATUS_CANCELLED */
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_DURING_READ, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ if (!len)
+ {
+ break; /* out of data for now */
+ }
+
+ switch (p->params.format)
+ {
+ case SANE_FRAME_RGB:
+ switch (p->params.depth)
+ {
+ case 8:
+ {
+ for (i = 0; i < len; ++i)
+ {
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ p->image_data_raw[p->image_offset] = buf[i] * 256;
+ p->image_data_enh[p->image_offset++] = buf[i];
+
+ if (p->image_offset%3 == 0)
+ {
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ }
+ }
+ break;
+
+ case 16:
+ {
+ for (i = 0; i < len/2; ++i)
+ {
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ p->image_data_raw[p->image_offset] = buf16[i];
+ p->image_data_enh[p->image_offset++] = (u_char) (buf16[i]/256);
+
+ if (p->image_offset%3 == 0)
+ {
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ }
+ }
+ break;
+
+ default:
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %d.", ERR_PREVIEW_BAD_DEPTH, p->params.depth);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ break;
+
+ case SANE_FRAME_GRAY:
+ switch (p->params.depth)
+ {
+ case 1:
+ for (i = 0; i < len; ++i)
+ {
+ u_char mask = buf[i];
+
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ for (j = 7; j >= 0; --j)
+ {
+ u_char gl = (mask & (1 << j)) ? 0x00 : 0xff;
+
+ p->image_data_raw[p->image_offset] = gl * 256;
+ p->image_data_enh[p->image_offset++] = gl;
+
+ p->image_data_raw[p->image_offset] = gl * 256;
+ p->image_data_enh[p->image_offset++] = gl;
+
+ p->image_data_raw[p->image_offset] = gl * 256;
+ p->image_data_enh[p->image_offset++] = gl;
+
+ if (++p->image_x >= p->image_width)
+ {
+ if (preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ break; /* skip padding bits */
+ }
+ }
+ }
+ break;
+
+ case 8:
+ for (i = 0; i < len; ++i)
+ {
+ u_char gray = buf[i];
+
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ p->image_data_raw[p->image_offset] = gray * 256;
+ p->image_data_enh[p->image_offset++] = gray;
+
+ p->image_data_raw[p->image_offset] = gray * 256;
+ p->image_data_enh[p->image_offset++] = gray;
+
+ p->image_data_raw[p->image_offset] = gray * 256;
+ p->image_data_enh[p->image_offset++] = gray;
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ break;
+
+ case 16:
+ for (i = 0; i < len/2; ++i)
+ {
+ u_char gray = buf16[i]/256;
+
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ p->image_data_raw[p->image_offset] = buf16[i];
+ p->image_data_enh[p->image_offset++] = gray;
+
+ p->image_data_raw[p->image_offset] = buf16[i];
+ p->image_data_enh[p->image_offset++] = gray;
+
+ p->image_data_raw[p->image_offset] = buf16[i];
+ p->image_data_enh[p->image_offset++] = gray;
+
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ break;
+
+ default:
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %d.", ERR_PREVIEW_BAD_DEPTH, p->params.depth);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ break;
+
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ switch (p->params.depth)
+ {
+ case 1:
+ for (i = 0; i < len; ++i)
+ {
+ u_char mask = buf[i];
+
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ for (j = 0; j < 8; ++j)
+ {
+ u_char gl = (mask & 1) ? 0xff : 0x00;
+ mask >>= 1;
+
+ p->image_data_raw[p->image_offset] = gl * 256;
+ p->image_data_enh[p->image_offset++] = gl;
+
+ p->image_offset += 3;
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ }
+ break;
+
+ case 8:
+ for (i = 0; i < len; ++i)
+ {
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ p->image_data_raw[p->image_offset] = buf[i] * 256;
+ p->image_data_enh[p->image_offset] = buf[i];
+
+ p->image_offset += 3;
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ break;
+
+ case 16:
+ for (i = 0; i < len/2; ++i)
+ {
+ if (preview_test_image_y(p))
+ {
+ return; /* backend sends too much image data */
+ }
+
+ p->image_data_raw[p->image_offset] = buf16[i];
+ p->image_data_enh[p->image_offset] = (u_char) (buf16[i]/256);
+
+ p->image_offset += 3;
+ if (++p->image_x >= p->image_width && preview_increment_image_y(p) < 0)
+ {
+ return;
+ }
+ }
+ break;
+
+ default:
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %d.", ERR_PREVIEW_BAD_DEPTH, p->params.depth);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ break;
+
+ default:
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %d.", ERR_BAD_FRAME_FORMAT, p->params.format);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ if (p->input_tag < 0)
+ {
+ preview_display_maybe(p);
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "preview_read_image_data: calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+ }
+ preview_display_maybe(p);
+
+ return;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_scan_done(Preview *p, int save_image)
+{
+ int i;
+
+ DBG(DBG_proc, "preview_scan_done\n");
+
+ p->scanning = FALSE;
+
+ if (p->input_tag >= 0)
+ {
+ gdk_input_remove(p->input_tag);
+ p->input_tag = -1;
+ }
+
+ sane_cancel(xsane.dev);
+
+ xsane.block_update_param = TRUE; /* do not change parameters each time */
+
+ preview_restore_option(p, xsane.well_known.dpi, &p->saved_dpi, p->saved_dpi_valid);
+ preview_restore_option(p, xsane.well_known.dpi_x, &p->saved_dpi_x, p->saved_dpi_x_valid);
+ preview_restore_option(p, xsane.well_known.dpi_y, &p->saved_dpi_y, p->saved_dpi_y_valid);
+
+ for (i = 0; i < 4; ++i)
+ {
+ preview_restore_option(p, xsane.well_known.coord[i], &p->saved_coord[i], p->saved_coord_valid[i]);
+ }
+
+ preview_restore_option(p, xsane.well_known.scanmode, &p->saved_scanmode, p->saved_scanmode_valid);
+
+ preview_restore_option(p, xsane.well_known.bit_depth, &p->saved_bit_depth, p->saved_bit_depth_valid);
+
+ preview_set_option_val(p, xsane.well_known.preview, SANE_FALSE);
+
+ gtk_widget_set_sensitive(p->cancel, FALSE);
+ xsane_set_sensitivity(TRUE);
+
+ xsane.block_update_param = FALSE;
+
+ preview_update_selection(p);
+
+ if (save_image)
+ {
+ preview_save_image(p); /* save preview image */
+ preview_display_image(p);
+ }
+
+ preview_update_surface(p, 1); /* if surface was not defined it's necessary to redefine it now */
+
+ xsane_update_histogram(TRUE /* update raw */);
+
+ sane_get_parameters(xsane.dev, &xsane.param); /* update xsane.param */
+
+ if ( (preferences.preselect_scanarea) && (!p->startimage))
+ {
+ preview_autoselect_scanarea(p, p->selection.coordinate); /* get autoselection coordinates */
+ preview_draw_selection(p);
+ preview_establish_selection(p);
+ xsane_update_histogram(TRUE /* update_raw */); /* update histogram (necessary because overwritten by preview_update_surface) */
+ }
+
+ if (preferences.auto_correct_colors)
+ {
+ xsane_calculate_raw_histogram();
+ xsane_set_auto_enhancement();
+ xsane_enhancement_by_histogram(preferences.auto_enhance_gamma);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int preview_get_memory(Preview *p)
+{
+ char buf[256];
+
+ DBG(DBG_proc, "preview_get_memory\n");
+
+ if (p->image_data_enh)
+ {
+ free(p->image_data_enh);
+ p->image_data_enh = 0;
+ }
+
+ if (p->image_data_raw)
+ {
+ free(p->image_data_raw);
+ p->image_data_raw = 0;
+ }
+
+ if (p->preview_row)
+ {
+ free(p->preview_row);
+ p->preview_row = 0;
+ }
+
+ p->image_data_raw = malloc(6 * p->image_width * p->image_height);
+ p->image_data_enh = malloc(3 * p->image_width * p->image_height);
+ p->preview_row = malloc(3 * p->preview_window_width);
+
+ if ( (!p->image_data_raw) || (!p->image_data_enh) || (!p->preview_row) )
+ {
+ if (p->image_data_enh)
+ {
+ free(p->image_data_enh);
+ p->image_data_enh = 0;
+ }
+
+ if (p->image_data_raw)
+ {
+ free(p->image_data_raw);
+ p->image_data_raw = 0;
+ }
+
+ if (p->preview_row)
+ {
+ free(p->preview_row);
+ p->preview_row = 0;
+ }
+
+ DBG(DBG_error, "failed to allocate image buffer: %s", strerror(errno));
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_FAILED_ALLOCATE_IMAGE, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+
+ return -1; /* error */
+ }
+
+ memset(p->image_data_raw, 0x80, 6*p->image_width*p->image_height); /* clean memory */
+ memset(p->image_data_enh, 0x80, 3*p->image_width*p->image_height); /* clean memory */
+
+ return 0; /* ok */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* preview_scan_start is called 3 times in 3 pass color scanning mode */
+static void preview_scan_start(Preview *p)
+{
+ SANE_Handle dev = xsane.dev;
+ SANE_Status status;
+ char buf[256];
+ int fd, y;
+ int gamma_gray_size = 256; /* set this values to image depth for more than 8bpp input support!!! */
+ int gamma_red_size = 256;
+ int gamma_green_size = 256;
+ int gamma_blue_size = 256;
+ int gamma_gray_max = 255; /* set this to to image depth for more than 8bpp output support */
+ int gamma_red_max = 255;
+ int gamma_green_max = 255;
+ int gamma_blue_max = 255;
+
+ DBG(DBG_proc, "preview_scan_start\n");
+
+ xsane.medium_changed = FALSE;
+
+ preview_display_valid(p);
+
+ p->startimage = 0; /* we start the scan so lets say the startimage is not displayed any more */
+
+ p->image_surface[0] = p->surface[p->index_xmin];
+ p->image_surface[1] = p->surface[p->index_ymin];
+ p->image_surface[2] = p->surface[p->index_xmax];
+ p->image_surface[3] = p->surface[p->index_ymax];
+
+ gtk_widget_set_sensitive(p->cancel, TRUE);
+ xsane_set_sensitivity(FALSE);
+
+ /* clear preview row */
+ memset(p->preview_row, 0xff, 3*p->preview_width);
+
+ for (y = 0; y < p->preview_height; ++y)
+ {
+ gtk_preview_draw_row(GTK_PREVIEW(p->window), p->preview_row, 0, y, p->preview_width);
+ }
+
+ if (p->input_tag >= 0)
+ {
+ gdk_input_remove(p->input_tag);
+ p->input_tag = -1;
+ }
+
+ if (xsane.well_known.gamma_vector >0)
+ {
+ const SANE_Option_Descriptor *opt;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector);
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ SANE_Int *gamma_data;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector);
+ gamma_gray_size = opt->size / sizeof(opt->type);
+ gamma_gray_max = opt->constraint.range->max;
+
+ gamma_data = malloc(gamma_gray_size * sizeof(SANE_Int));
+
+ if ((xsane.xsane_colors > 1) || (xsane.no_preview_medium_gamma)) /* color scan or medium preview gamma disabled */
+ {
+ xsane_create_gamma_curve(gamma_data, 0, 1.0, 0.0, 0.0, 0.0, 100.0, 1.0, gamma_gray_size, gamma_gray_max);
+ }
+ else /* grayscale scan */
+ {
+ xsane_create_gamma_curve(gamma_data, xsane.medium_negative, 1.0, 0.0, 0.0,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ gamma_gray_size, gamma_gray_max);
+ }
+
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector, gamma_data);
+ free(gamma_data);
+ }
+ }
+
+ if (xsane.well_known.gamma_vector_r >0)
+ {
+ const SANE_Option_Descriptor *opt;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_r);
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ SANE_Int *gamma_data_red, *gamma_data_green, *gamma_data_blue;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_r);
+ gamma_red_size = opt->size / sizeof(opt->type);
+ gamma_red_max = opt->constraint.range->max;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_g);
+ gamma_green_size = opt->size / sizeof(opt->type);
+ gamma_green_max = opt->constraint.range->max;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_b);
+ gamma_blue_size = opt->size / sizeof(opt->type);
+ gamma_blue_max = opt->constraint.range->max;
+
+ gamma_data_red = malloc(gamma_red_size * sizeof(SANE_Int));
+ gamma_data_green = malloc(gamma_green_size * sizeof(SANE_Int));
+ gamma_data_blue = malloc(gamma_blue_size * sizeof(SANE_Int));
+
+ if (xsane.no_preview_medium_gamma) /* do not use medium gamma for preview */
+ {
+ DBG(DBG_info, "preview: not using medium gamma table\n");
+
+ xsane_create_gamma_curve(gamma_data_red, 0, 1.0, 0.0, 0.0, 0.0, 100.0, 1.0, gamma_red_size, gamma_red_max);
+ xsane_create_gamma_curve(gamma_data_green, 0, 1.0, 0.0, 0.0, 0.0, 100.0, 1.0, gamma_green_size, gamma_green_max);
+ xsane_create_gamma_curve(gamma_data_blue, 0, 1.0, 0.0, 0.0, 0.0, 100.0, 1.0, gamma_blue_size, gamma_blue_max);
+ }
+ else /* use medium gamma for preview */
+ {
+ DBG(DBG_info, "preview: using medium gamma table\n");
+
+ xsane_create_gamma_curve(gamma_data_red, xsane.medium_negative, 1.0, 0.0, 0.0,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ gamma_red_size, gamma_red_max);
+ xsane_create_gamma_curve(gamma_data_green, xsane.medium_negative, 1.0, 0.0, 0.0,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ gamma_green_size, gamma_green_max);
+ xsane_create_gamma_curve(gamma_data_blue, xsane.medium_negative, 1.0, 0.0, 0.0,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ gamma_blue_size, gamma_blue_max);
+ }
+
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector_r, gamma_data_red);
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector_g, gamma_data_green);
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector_b, gamma_data_blue);
+
+ free(gamma_data_red);
+ free(gamma_data_green);
+ free(gamma_data_blue);
+ }
+ }
+
+ status = sane_start(dev);
+ if (status != SANE_STATUS_GOOD)
+ {
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_FAILED_START_SCANNER, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ status = sane_get_parameters(dev, &p->params);
+ if (status != SANE_STATUS_GOOD)
+ {
+ preview_scan_done(p, 0);
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_FAILED_GET_PARAMS, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ p->image_offset = p->image_x = p->image_y = 0;
+
+ if (p->params.format >= SANE_FRAME_RED && p->params.format <= SANE_FRAME_BLUE)
+ {
+ p->image_offset = p->params.format - SANE_FRAME_RED;
+ }
+
+ if ( (!p->image_data_enh) || (p->params.pixels_per_line != p->image_width)
+ || ( (p->params.lines >= 0) && (p->params.lines != p->image_height) ) )
+ {
+ p->image_width = p->params.pixels_per_line;
+ p->image_height = p->params.lines;
+
+ if (p->image_height < 0)
+ {
+ p->image_height = 32; /* may have to adjust as we go... */
+ }
+
+ if (preview_get_memory(p))
+ {
+ preview_scan_done(p, 0); /* error */
+ snprintf(buf, sizeof(buf), "%s", ERR_NO_MEM);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ }
+ else if (p->scanning == FALSE) /* single pass scan or first run in 3 pass mode */
+ {
+ memset(p->image_data_raw, 0x80, 6*p->image_width*p->image_height); /* clean memory */
+ memset(p->image_data_enh, 0x80, 3*p->image_width*p->image_height); /* clean memory */
+ }
+
+ /* we do not have any active selection (image is redrawn while scanning) */
+ p->selection.active = FALSE;
+ p->previous_selection_maximum.active = FALSE;
+
+#ifndef BUGGY_GDK_INPUT_EXCEPTION
+ /* for unix */
+ if ((sane_set_io_mode(dev, SANE_TRUE) == SANE_STATUS_GOOD) && (sane_get_select_fd(dev, &fd) == SANE_STATUS_GOOD))
+ {
+ p->input_tag = gdk_input_add(fd, GDK_INPUT_READ | GDK_INPUT_EXCEPTION, preview_read_image_data, p);
+ }
+ else
+#else
+ /* for win32 */
+ sane_set_io_mode(dev, SANE_FALSE);
+#endif
+ {
+ preview_read_image_data(p, -1, GDK_INPUT_READ);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int preview_make_image_path(Preview *p, size_t filename_size, char *filename, int level)
+{
+ char buf[256];
+
+ DBG(DBG_proc, "preview_make_image_path\n");
+
+ snprintf(buf, sizeof(buf), "preview-level-%d-", level);
+ return xsane_back_gtk_make_path(filename_size, filename, 0, 0, buf, xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int preview_restore_image_from_file(Preview *p, FILE *in, int min_quality, int *min_time)
+{
+ u_int psurface_type, psurface_unit;
+ int image_width, image_height;
+ int xoffset, yoffset, width, height;
+ int max_val;
+ int quality = 0;
+ int x, y;
+ int time;
+ float psurface[4];
+ float dsurface[4];
+ size_t nread;
+ guint16 *imagep;
+ guint16 *imagepx;
+ char buf[255];
+
+ DBG(DBG_proc, "preview_restore_image_from_file\n");
+
+ if (!in)
+ {
+ return min_quality;
+ }
+
+ /* See whether there is a saved preview and load it if present: */
+ if (fscanf(in, "P6\n"
+ "# surface: %g %g %g %g %u %u\n"
+ "# time: %d\n"
+ "%d %d\n%d",
+ psurface + 0, psurface + 1, psurface + 2, psurface + 3,
+ &psurface_type, &psurface_unit,
+ &time,
+ &image_width, &image_height,
+ &max_val) != 10)
+ {
+ DBG(DBG_info, "no preview image\n");
+ return min_quality;
+ }
+
+ fgets(buf, sizeof(buf), in); /* skip newline character. this made a lot of problems in the past, so I skip it this way */
+
+
+ if (min_quality >= 0) /* read real preview */
+ {
+ if ((psurface_type != p->surface_type) || (psurface_unit != p->surface_unit))
+ {
+ DBG(DBG_info, "incompatible surface types %d <> %d\n", psurface_type, p->surface_type);
+ return min_quality;
+ }
+
+ preview_rotate_previewsurface_to_devicesurface(p->rotation, p->surface, dsurface);
+
+
+ DBG(DBG_info, "stored image surface = [%3.2f %3.2f %3.2f %3.2f]\n",
+ psurface[0], psurface[1], psurface[2], psurface[3]);
+ DBG(DBG_info, "preview selection surface = [%3.2f %3.2f %3.2f %3.2f]\n",
+ p->surface[0], p->surface[1], p->surface[2], p->surface[3]);
+ DBG(DBG_info, "preview device surface = [%3.2f %3.2f %3.2f %3.2f]\n",
+ dsurface[0], dsurface[1], dsurface[2], dsurface[3]);
+
+ xoffset = (dsurface[0] - psurface[0])/(psurface[2] - psurface[0]) * image_width;
+ yoffset = (dsurface[1] - psurface[1])/(psurface[3] - psurface[1]) * image_height;
+ width = (dsurface[2] - dsurface[0])/(psurface[2] - psurface[0]) * image_width;
+ height = (dsurface[3] - dsurface[1])/(psurface[3] - psurface[1]) * image_height;
+ quality = width;
+
+ if ((xoffset < 0) || (yoffset < 0) ||
+ (xoffset+width > image_width) || (yoffset+height > image_height) ||
+ (width == 0) || (height == 0))
+ {
+ DBG(DBG_info, "image does not cover wanted surface part\n");
+ return min_quality; /* file does not cover wanted surface part */
+ }
+
+ DBG(DBG_info, "quality = %d\n", quality);
+
+ if ( ((float) min_quality / (quality+1)) > 1.05) /* already loaded image has better quality */
+ {
+ DBG(DBG_info, "already loaded image has higher quality\n");
+ return min_quality;
+ }
+
+ if ( ((float) min_quality / (quality+1)) > 0.95) /* qualities are comparable */
+ {
+ if (*min_time > time) /* take more recent scan */
+ {
+ DBG(DBG_info, "images have comparable quality, already loaded is more up to date\n");
+ return min_quality;
+ }
+ DBG(DBG_info, "images have comparable quality, this image is more up to date\n");
+ }
+ else
+ {
+ DBG(DBG_info, "image has best quality\n");
+ }
+ }
+ else /* read startimage or calibrationimage */
+ {
+ xoffset = 0;
+ yoffset = 0;
+ width = image_width;
+ height = image_height;
+ }
+
+ if (max_val == 65535)
+ {
+ p->params.depth = 16;
+ }
+ else
+ {
+ p->params.depth = 8;
+ }
+
+ p->image_width = width;
+ p->image_height = height;
+
+ if (preview_get_memory(p))
+ {
+ return min_quality; /* error allocating memory */
+ }
+
+ if (p->params.depth == 16)
+ {
+ fseek(in, yoffset * image_width * 6, SEEK_CUR); /* skip unused lines */
+
+ imagep = p->image_data_raw;
+
+ for (y = yoffset; y < yoffset + height; y++)
+ {
+ fseek(in, xoffset * 6, SEEK_CUR); /* skip unused pixel left of area */
+
+ nread = fread(imagep, 6, width, in);
+ imagep += width * 3; /* imagep is a pointer to a 2 byte value, so we use 3 instead 6 here */
+
+ fseek(in, (image_width - width - xoffset) * 6, SEEK_CUR); /* skip unused pixel right of area */
+ }
+ }
+ else /* depth = 8 */
+ {
+ fseek(in, yoffset * image_width * 3, SEEK_CUR); /* skip unused lines */
+
+ imagep = p->image_data_raw;
+
+ for (y = yoffset; y < yoffset + height; y++)
+ {
+ fseek(in, xoffset * 3, SEEK_CUR); /* skip unused pixel left of area */
+
+ imagepx = imagep;
+ for (x = 0; x < width; x++)
+ {
+ *imagepx++ = ((guint16) fgetc(in)) * 256; /* transfrom to 16 bit image with correct byte order */
+ *imagepx++ = ((guint16) fgetc(in)) * 256;
+ *imagepx++ = ((guint16) fgetc(in)) * 256;
+ }
+ imagep += width * 3; /* imagep is a pointer to a 2 byte value, so we use 3 instead 6 here */
+
+ fseek(in, (image_width - width - xoffset) * 3, SEEK_CUR); /* skip unused pixel right of area */
+ }
+ }
+
+ p->image_x = width;
+ p->image_y = height;
+
+ p->image_surface[0] = p->surface[p->index_xmin];
+ p->image_surface[1] = p->surface[p->index_ymin];
+ p->image_surface[2] = p->surface[p->index_xmax];
+ p->image_surface[3] = p->surface[p->index_ymax];
+
+ *min_time = time;
+
+ return quality;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_restore_image(Preview *p)
+{
+ FILE *in;
+ int quality = 0;
+ int time = 0;
+ int level;
+
+ DBG(DBG_proc, "preview_restore_image\n");
+
+ p->startimage = 0;
+
+ if (p->calibration)
+ {
+ char filename[PATH_MAX];
+
+ DBG(DBG_proc, "calibration mode\n");
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-calibration", 0, ".pnm", XSANE_PATH_SYSTEM);
+ in = fopen(filename, "rb"); /* read binary (b for win32) */
+ if (in)
+ {
+ quality = preview_restore_image_from_file(p, in, -1, &time);
+ fclose(in);
+ }
+ }
+ else
+ {
+ /* See whether there is a saved preview and load it if present: */
+ for(level = 2; level >= 0; level--)
+ {
+ if (p->filename[level])
+ {
+ in = fopen(p->filename[level], "rb"); /* read binary (b for win32) */
+ if (in)
+ {
+ quality = preview_restore_image_from_file(p, in, quality, &time);
+ fclose(in);
+ }
+ }
+ }
+
+ if (quality == 0) /* no image found, read startimage */
+ {
+ char filename[PATH_MAX];
+
+ DBG(DBG_proc, "no suitable image available, using startimage\n");
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-startimage", 0, ".pnm", XSANE_PATH_SYSTEM);
+ in = fopen(filename, "rb"); /* read binary (b for win32) */
+ if (in)
+ {
+ quality = preview_restore_image_from_file(p, in, -1, &time);
+ fclose(in);
+ }
+ else
+ {
+ guint16 *imagep;
+
+ DBG(DBG_error0, "ERROR: xsane-startimage not found. Looks like xsane is not installed correct.\n");
+
+ p->image_width = 1;
+ p->image_height = 1;
+ p->params.depth = 16;
+
+ preview_get_memory(p);
+
+ imagep = p->image_data_raw;
+ *imagep++ = 65535;
+ *imagep++ = 00000;
+ *imagep++ = 00000;
+
+ p->image_x = p->image_width;
+ p->image_y = p->image_height;
+
+ p->image_surface[0] = p->surface[p->index_xmin];
+ p->image_surface[1] = p->surface[p->index_ymin];
+ p->image_surface[2] = p->surface[p->index_xmax];
+ p->image_surface[3] = p->surface[p->index_ymax];
+ }
+ p->startimage = 1;
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_hold_event_handler(gpointer data)
+{
+ Preview *p = data;
+
+ DBG(DBG_proc, "preview_hold_event_handler\n");
+
+ preview_draw_selection(p);
+ p->gamma_functions_interruptable = TRUE;
+ preview_establish_selection(p);
+ p->gamma_functions_interruptable = FALSE;
+
+ gtk_timeout_remove(p->hold_timer);
+ p->hold_timer = 0;
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_motion_event_handler(GtkWidget *window, GdkEvent *event, gpointer data)
+{
+ Preview *p = data;
+ GdkCursor *cursor;
+ float preview_selection[4];
+ float preview_x, preview_y;
+ float xscale, yscale;
+ int cursornr;
+
+ DBG(DBG_proc, "preview_motion_event_handler\n");
+
+ /* preview selection (device) -> cursor-position (window) */
+ preview_transform_coordinates_device_to_window(p, p->selection.coordinate, preview_selection);
+
+ /* cursor-prosition (window) -> preview coordinate (device) */
+ preview_transform_coordinate_window_to_device(p, event->button.x, event->button.y, &preview_x, &preview_y);
+
+ preview_get_scale_device_to_window(p, &xscale, &yscale);
+
+ if (!p->scanning)
+ {
+ switch (((GdkEventMotion *)event)->state &
+ GDK_Num_Lock & GDK_Caps_Lock & GDK_Shift_Lock & GDK_Scroll_Lock) /* mask all Locks */
+ {
+ case 256: /* left button */
+
+ DBG(DBG_info2, "left button\n");
+
+ if ( (p->selection_drag) || (p->selection_drag_edge) )
+ {
+ p->selection.active = TRUE;
+ p->selection.coordinate[p->selection_xedge] = preview_x;
+ p->selection.coordinate[p->selection_yedge] = preview_y;
+
+ preview_order_selection(p);
+ preview_bound_selection(p);
+
+ if (preferences.gtk_update_policy == GTK_UPDATE_CONTINUOUS)
+ {
+ if (!p->hold_timer) /* hold timer active? then remove it, we had a motion */
+ {
+ p->hold_timer = gtk_timeout_add(XSANE_CONTINUOUS_HOLD_TIME, preview_hold_event_handler, (gpointer *) p);
+ }
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+ }
+ else if (preferences.gtk_update_policy == GTK_UPDATE_DELAYED)
+ {
+ /* call preview_hold_event_hanlder if mouse is not moved for ??? ms */
+ if (p->hold_timer) /* hold timer active? then remove it, we had a motion */
+ {
+ gtk_timeout_remove(p->hold_timer);
+ p->hold_timer = 0;
+ }
+ p->hold_timer = gtk_timeout_add(XSANE_HOLD_TIME, preview_hold_event_handler, (gpointer *) p);
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+ }
+ else /* discontinuous */
+ {
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p); /* only draw selection, do not update backend geometry options */
+ }
+ }
+
+ cursornr = p->cursornr;
+
+ if ( (p->selection_xedge != -1) && (p->selection_yedge != -1) ) /* move corner */
+ {
+ if ( ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) && /* left */
+ ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) ) /* top */
+ {
+ cursornr = GDK_TOP_LEFT_CORNER;
+ }
+ else if ( ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) && /* right */
+ ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) ) /* top */
+ {
+ cursornr = GDK_TOP_RIGHT_CORNER;
+ }
+ else if ( ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) && /* left */
+ ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) ) /* bottom */
+ {
+ cursornr = GDK_BOTTOM_LEFT_CORNER;
+ }
+ else if ( ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) && /* right */
+ ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) ) /* bottom */
+ {
+ cursornr = GDK_BOTTOM_RIGHT_CORNER;
+ }
+ }
+ else if ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) /* left */
+ {
+ if (cursornr == GDK_RIGHT_SIDE)
+ {
+ cursornr = GDK_LEFT_SIDE;
+ }
+ }
+ else if ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) /* right */
+ {
+ if (cursornr == GDK_LEFT_SIDE)
+ {
+ cursornr = GDK_RIGHT_SIDE;
+ }
+ }
+ else if ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) /* top */
+ {
+ if (cursornr == GDK_BOTTOM_SIDE)
+ {
+ cursornr = GDK_TOP_SIDE;
+ }
+ }
+ else if ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) /* bottom */
+ {
+ if (cursornr == GDK_TOP_SIDE)
+ {
+ cursornr = GDK_BOTTOM_SIDE;
+ }
+ }
+
+ if (cursornr != p->cursornr)
+ {
+ cursor = gdk_cursor_new(cursornr); /* set curosr */
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = cursornr;
+ }
+ break;
+
+ case 512: /* middle button */
+ case 1024: /* right button */
+ DBG(DBG_info2, "middle or right button\n");
+
+ if (p->selection_drag)
+ {
+ double dx, dy;
+
+ switch (p->rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ dx = (p->selection_xpos - event->motion.x) / xscale;
+ dy = (p->selection_ypos - event->motion.y) / yscale;
+ break;
+
+ case 1: /* 90 degree */
+ dx = (event->motion.x - p->selection_xpos) / xscale;
+ dy = (p->selection_ypos - event->motion.y) / yscale;
+ break;
+
+ case 2: /* 180 degree */
+ dx = (event->motion.x - p->selection_xpos) / xscale;
+ dy = (event->motion.y - p->selection_ypos) / yscale;
+ break;
+
+ case 3: /* 270 degree */
+ dx = (p->selection_xpos - event->motion.x) / xscale;
+ dy = (event->motion.y - p->selection_ypos) / yscale;
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ dx = (event->motion.x - p->selection_xpos) / xscale;
+ dy = (p->selection_ypos - event->motion.y) / yscale;
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ dx = (p->selection_xpos - event->motion.x) / xscale;
+ dy = (p->selection_ypos - event->motion.y) / yscale;
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ dx = (p->selection_xpos - event->motion.x) / xscale;
+ dy = (event->motion.y - p->selection_ypos) / yscale;
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ dx = (event->motion.x - p->selection_xpos) / xscale;
+ dy = (event->motion.y - p->selection_ypos) / yscale;
+ break;
+ }
+
+ p->selection_xpos = event->motion.x;
+ p->selection_ypos = event->motion.y;
+
+ if (dx > p->selection.coordinate[p->index_xmin] - p->scanner_surface[p->index_xmin])
+ {
+ dx = p->selection.coordinate[p->index_xmin] - p->scanner_surface[p->index_xmin];
+ }
+
+ if (dy > p->selection.coordinate[p->index_ymin] - p->scanner_surface[p->index_ymin])
+ {
+ dy = p->selection.coordinate[p->index_ymin] - p->scanner_surface[p->index_ymin];
+ }
+
+ if (dx < p->selection.coordinate[p->index_xmax] - p->scanner_surface[p->index_xmax])
+ {
+ dx = p->selection.coordinate[p->index_xmax] - p->scanner_surface[p->index_xmax];
+ }
+
+ if (dy < p->selection.coordinate[p->index_ymax] - p->scanner_surface[p->index_ymax])
+ {
+ dy = p->selection.coordinate[p->index_ymax] - p->scanner_surface[p->index_ymax];
+ }
+
+ p->selection.active = TRUE;
+ p->selection.coordinate[0] -= dx;
+ p->selection.coordinate[1] -= dy;
+ p->selection.coordinate[2] -= dx;
+ p->selection.coordinate[3] -= dy;
+
+ if (preferences.gtk_update_policy == GTK_UPDATE_CONTINUOUS)
+ {
+ if (!p->hold_timer) /* hold timer active? then remove it, we had a motion */
+ {
+ p->hold_timer = gtk_timeout_add(XSANE_CONTINUOUS_HOLD_TIME, preview_hold_event_handler, (gpointer *) p);
+ }
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+ }
+ else if (preferences.gtk_update_policy == GTK_UPDATE_DELAYED)
+ {
+ if (p->hold_timer) /* hold timer active? then remove it, we had a motion */
+ {
+ gtk_timeout_remove(p->hold_timer);
+ p->hold_timer = 0;
+ }
+ p->hold_timer = gtk_timeout_add (XSANE_HOLD_TIME, preview_hold_event_handler, (gpointer *) p);
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+ }
+ else /* discontinuous */
+ {
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+ }
+ }
+ break;
+
+ default:
+ if ( ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) && /* left */
+ ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) ) /* top */
+ {
+ cursornr = GDK_TOP_LEFT_CORNER;
+ }
+ else if ( ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) && /* right */
+ ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) ) /* top */
+ {
+ cursornr = GDK_TOP_RIGHT_CORNER;
+ }
+ else if ( ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) && /* left */
+ ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) ) /* bottom */
+ {
+ cursornr = GDK_BOTTOM_LEFT_CORNER;
+ }
+ else if ( ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) && /* right */
+ ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) ) /* bottom */
+ {
+ cursornr = GDK_BOTTOM_RIGHT_CORNER;
+ }
+ else if ( ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) && /* left */
+ ( (event->button.y > preview_selection[1]) && (event->button.y < preview_selection[3]) ) ) /* in height */
+ {
+ cursornr = GDK_LEFT_SIDE;
+ }
+ else if ( ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) && /* right */
+ ( (event->button.y > preview_selection[1]) && (event->button.y < preview_selection[3]) ) ) /* in height */
+ {
+ cursornr = GDK_RIGHT_SIDE;
+ }
+ else if ( ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) && /* top */
+ ( (event->button.x > preview_selection[0]) && (event->button.x < preview_selection[2]) ) ) /* in width */
+ {
+ cursornr = GDK_TOP_SIDE;
+ }
+ else if ( ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) && /* bottom */
+ ( (event->button.x > preview_selection[0]) && (event->button.x < preview_selection[2]) ) ) /* in width */
+ {
+ cursornr = GDK_BOTTOM_SIDE;
+ }
+ else
+ {
+ cursornr = XSANE_CURSOR_PREVIEW;
+ }
+
+ if ((cursornr != p->cursornr) && (p->cursornr != -1))
+ {
+ cursor = gdk_cursor_new(cursornr); /* set curosr */
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = cursornr;
+ }
+ break;
+ }
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_button_press_event_handler(GtkWidget *window, GdkEvent *event, gpointer data)
+{
+ Preview *p = data;
+ GdkCursor *cursor;
+ float preview_selection[4];
+ float preview_x, preview_y;
+ int cursornr;
+
+ DBG(DBG_proc, "preview_button_press_event_handler\n");
+
+ /* preview selection (device) -> cursor-position (window) */
+ preview_transform_coordinates_device_to_window(p, p->selection.coordinate, preview_selection);
+
+ /* cursor-prosition (window) -> preview coordinate (device) */
+ preview_transform_coordinate_window_to_device(p, event->button.x, event->button.y, &preview_x, &preview_y);
+
+ if (!p->scanning)
+ {
+ switch (p->mode)
+ {
+ case MODE_PIPETTE_WHITE:
+ {
+ DBG(DBG_info, "pipette white mode\n");
+ if ( ( (((GdkEventButton *)event)->button == 1) || (((GdkEventButton *)event)->button == 2) ) && (p->image_data_raw) ) /* left or middle button */
+ {
+ int r=255, g=255, b=255; /* preset color to white */
+
+ preview_get_color(p, event->button.x, event->button.y, preferences.preview_pipette_range, &r, &g, &b);
+
+ xsane.slider_gray.value[2] = sqrt( (r*r+g*g+b*b) / 3)/2.55;
+
+ if ( (!xsane.enhancement_rgb_default) && (((GdkEventButton *)event)->button == 2) ) /* middle button */
+ {
+ xsane.slider_red.value[2] = r/2.55;
+ xsane.slider_green.value[2] = g/2.55;
+ xsane.slider_blue.value[2] = b/2.55;
+ }
+ else
+ {
+ xsane.slider_red.value[2] = xsane.slider_gray.value[2];
+ xsane.slider_green.value[2] = xsane.slider_gray.value[2];
+ xsane.slider_blue.value[2] = xsane.slider_gray.value[2];
+ }
+
+ if (xsane.slider_gray.value[2] < 2)
+ {
+ xsane.slider_gray.value[2] = 2;
+ }
+ if (xsane.slider_gray.value[1] >= xsane.slider_gray.value[2])
+ {
+ xsane.slider_gray.value[1] = xsane.slider_gray.value[2]-1;
+ if (xsane.slider_gray.value[0] >= xsane.slider_gray.value[1])
+ {
+ xsane.slider_gray.value[0] = xsane.slider_gray.value[1]-1;
+ }
+ }
+
+ if (xsane.slider_red.value[2] < 2)
+ {
+ xsane.slider_red.value[2] = 2;
+ }
+ if (xsane.slider_red.value[1] >= xsane.slider_red.value[2])
+ {
+ xsane.slider_red.value[1] = xsane.slider_red.value[2]-1;
+ if (xsane.slider_red.value[0] >= xsane.slider_red.value[1])
+ {
+ xsane.slider_red.value[0] = xsane.slider_red.value[1]-1;
+ }
+ }
+
+ if (xsane.slider_green.value[2] < 2)
+ {
+ xsane.slider_green.value[2] = 2;
+ }
+ if (xsane.slider_green.value[1] >= xsane.slider_green.value[2])
+ {
+ xsane.slider_green.value[1] = xsane.slider_green.value[2]-1;
+ if (xsane.slider_green.value[0] >= xsane.slider_green.value[1])
+ {
+ xsane.slider_green.value[0] = xsane.slider_green.value[1]-1;
+ }
+ }
+
+ if (xsane.slider_blue.value[2] < 2)
+ {
+ xsane.slider_blue.value[2] = 2;
+ }
+ if (xsane.slider_blue.value[1] >= xsane.slider_blue.value[2])
+ {
+ xsane.slider_blue.value[1] = xsane.slider_blue.value[2]-1;
+ if (xsane.slider_blue.value[0] >= xsane.slider_blue.value[1])
+ {
+ xsane.slider_blue.value[0] = xsane.slider_blue.value[1]-1;
+ }
+ }
+
+ xsane_enhancement_by_histogram(TRUE);
+ }
+
+ p->mode = MODE_NORMAL;
+
+ cursor = gdk_cursor_new(XSANE_CURSOR_PREVIEW);
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = XSANE_CURSOR_PREVIEW;
+ }
+ break;
+
+ case MODE_PIPETTE_GRAY:
+ {
+ DBG(DBG_info, "pipette gray mode\n");
+
+ if ( ( (((GdkEventButton *)event)->button == 1) || (((GdkEventButton *)event)->button == 2) ) && (p->image_data_raw) ) /* left or middle button */
+ {
+ int r=128, g=128, b=128; /* preset color to gray */
+
+ preview_get_color(p, event->button.x, event->button.y, preferences.preview_pipette_range, &r, &g, &b);
+
+ xsane.slider_gray.value[1] = sqrt( (r*r+g*g+b*b) / 3)/2.55;
+
+ if ( (!xsane.enhancement_rgb_default) && (((GdkEventButton *)event)->button == 2) ) /* middle button */
+ {
+ xsane.slider_red.value[1] = r/2.55;
+ xsane.slider_green.value[1] = g/2.55;
+ xsane.slider_blue.value[1] = b/2.55;
+ }
+ else
+ {
+ xsane.slider_red.value[1] = xsane.slider_gray.value[1];
+ xsane.slider_green.value[1] = xsane.slider_gray.value[1];
+ xsane.slider_blue.value[1] = xsane.slider_gray.value[1];
+ }
+
+ if (xsane.slider_gray.value[1] == 0)
+ {
+ xsane.slider_gray.value[1] += 1;
+ }
+ if (xsane.slider_gray.value[1] == 100)
+ {
+ xsane.slider_gray.value[1] -= 1;
+ }
+ if (xsane.slider_gray.value[1] >= xsane.slider_gray.value[2])
+ {
+ xsane.slider_gray.value[2] = xsane.slider_gray.value[1]+1;
+ }
+ if (xsane.slider_gray.value[1] <= xsane.slider_gray.value[0])
+ {
+ xsane.slider_gray.value[0] = xsane.slider_gray.value[1]-1;
+ }
+
+ if (xsane.slider_red.value[1] == 0)
+ {
+ xsane.slider_red.value[1] += 1;
+ }
+ if (xsane.slider_red.value[1] == 100)
+ {
+ xsane.slider_red.value[1] -= 1;
+ }
+ if (xsane.slider_red.value[1] >= xsane.slider_red.value[2])
+ {
+ xsane.slider_red.value[2] = xsane.slider_red.value[1]+1;
+ }
+ if (xsane.slider_red.value[1] <= xsane.slider_red.value[0])
+ {
+ xsane.slider_red.value[0] = xsane.slider_red.value[1]-1;
+ }
+
+ if (xsane.slider_green.value[1] == 0)
+ {
+ xsane.slider_green.value[1] += 1;
+ }
+ if (xsane.slider_green.value[1] == 100)
+ {
+ xsane.slider_green.value[1] -= 1;
+ }
+ if (xsane.slider_green.value[1] >= xsane.slider_green.value[2])
+ {
+ xsane.slider_green.value[2] = xsane.slider_green.value[1]+1;
+ }
+ if (xsane.slider_green.value[1] <= xsane.slider_green.value[0])
+ {
+ xsane.slider_green.value[0] = xsane.slider_green.value[1]-1;
+ }
+
+ if (xsane.slider_blue.value[1] == 0)
+ {
+ xsane.slider_blue.value[1] += 1;
+ }
+ if (xsane.slider_blue.value[1] == 100)
+ {
+ xsane.slider_blue.value[1] -= 1;
+ }
+ if (xsane.slider_blue.value[1] >= xsane.slider_blue.value[2])
+ {
+ xsane.slider_blue.value[2] = xsane.slider_blue.value[1]+1;
+ }
+ if (xsane.slider_blue.value[1] <= xsane.slider_blue.value[0])
+ {
+ xsane.slider_blue.value[0] = xsane.slider_blue.value[1]-1;
+ }
+
+ xsane_enhancement_by_histogram(TRUE);
+ }
+
+ p->mode = MODE_NORMAL;
+
+ cursor = gdk_cursor_new(XSANE_CURSOR_PREVIEW);
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = XSANE_CURSOR_PREVIEW;
+ }
+ break;
+
+ case MODE_PIPETTE_BLACK:
+ {
+ DBG(DBG_info, "pipette black mode\n");
+
+ if ( ( (((GdkEventButton *)event)->button == 1) || (((GdkEventButton *)event)->button == 2) ) &&
+ (p->image_data_raw) ) /* left or middle button */
+ {
+ int r=0, g=0, b=0; /* preset color to black */
+
+ preview_get_color(p, event->button.x, event->button.y, preferences.preview_pipette_range, &r, &g, &b);
+
+ xsane.slider_gray.value[0] = sqrt( (r*r+g*g+b*b) / 3)/2.55;
+
+ if ( (!xsane.enhancement_rgb_default) && (((GdkEventButton *)event)->button == 2) ) /* middle button */
+ {
+ xsane.slider_red.value[0] = r/2.55;
+ xsane.slider_green.value[0] = g/2.55;
+ xsane.slider_blue.value[0] = b/2.55;
+ }
+ else
+ {
+ xsane.slider_red.value[0] = xsane.slider_gray.value[0];
+ xsane.slider_green.value[0] = xsane.slider_gray.value[0];
+ xsane.slider_blue.value[0] = xsane.slider_gray.value[0];
+ }
+
+ if (xsane.slider_gray.value[0] > 98)
+ {
+ xsane.slider_gray.value[0] = 98;
+ }
+ if (xsane.slider_gray.value[1] <= xsane.slider_gray.value[0])
+ {
+ xsane.slider_gray.value[1] = xsane.slider_gray.value[0]+1;
+ if (xsane.slider_gray.value[2] <= xsane.slider_gray.value[1])
+ {
+ xsane.slider_gray.value[2] = xsane.slider_gray.value[1]+1;
+ }
+ }
+
+ if (xsane.slider_red.value[0] > 98)
+ {
+ xsane.slider_red.value[0] = 98;
+ }
+ if (xsane.slider_red.value[1] <= xsane.slider_red.value[0])
+ {
+ xsane.slider_red.value[1] = xsane.slider_red.value[0]+1;
+ if (xsane.slider_red.value[2] <= xsane.slider_red.value[1])
+ {
+ xsane.slider_red.value[2] = xsane.slider_red.value[1]+1;
+ }
+ }
+
+ if (xsane.slider_green.value[0] > 98)
+ {
+ xsane.slider_green.value[0] = 98;
+ }
+ if (xsane.slider_green.value[1] <= xsane.slider_green.value[0])
+ {
+ xsane.slider_green.value[1] = xsane.slider_green.value[0]+1;
+ if (xsane.slider_green.value[2] <= xsane.slider_green.value[1])
+ {
+ xsane.slider_green.value[2] = xsane.slider_green.value[1]+1;
+ }
+ }
+
+ if (xsane.slider_blue.value[0] > 98)
+ {
+ xsane.slider_blue.value[0] = 98;
+ }
+ if (xsane.slider_blue.value[1] <= xsane.slider_blue.value[0])
+ {
+ xsane.slider_blue.value[1] = xsane.slider_blue.value[0]+1;
+ if (xsane.slider_blue.value[2] <= xsane.slider_blue.value[1])
+ {
+ xsane.slider_blue.value[2] = xsane.slider_blue.value[1]+1;
+ }
+ }
+
+ xsane_enhancement_by_histogram(TRUE);
+ }
+
+ p->mode = MODE_NORMAL;
+
+ cursor = gdk_cursor_new(XSANE_CURSOR_PREVIEW);
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = XSANE_CURSOR_PREVIEW;
+ }
+ break;
+
+ case MODE_NORMAL:
+ {
+ DBG(DBG_info, "normal mode\n");
+
+ if (p->show_selection)
+ {
+ switch (((GdkEventButton *)event)->button)
+ {
+ case 1: /* left button: define selection area */
+ DBG(DBG_info, "left button\n");
+
+ p->selection_xedge = -1;
+ if ( (preview_selection[0] - SELECTION_RANGE_OUT < event->button.x) &&
+ (event->button.x < preview_selection[0] + SELECTION_RANGE_IN) ) /* left */
+ {
+ DBG(DBG_info, "-left\n");
+ p->selection_xedge = 0;
+ }
+ else if ( (preview_selection[2] - SELECTION_RANGE_IN < event->button.x) &&
+ (event->button.x < preview_selection[2] + SELECTION_RANGE_OUT) ) /* right */
+ {
+ DBG(DBG_info, "-right\n");
+ p->selection_xedge = 2;
+ }
+
+ p->selection_yedge = -1;
+ if ( (preview_selection[1] - SELECTION_RANGE_OUT < event->button.y) &&
+ (event->button.y < preview_selection[1] + SELECTION_RANGE_IN) ) /* top */
+ {
+ DBG(DBG_info, "-top\n");
+ p->selection_yedge = 1;
+ }
+ else if ( (preview_selection[3] - SELECTION_RANGE_IN < event->button.y) &&
+ (event->button.y < preview_selection[3] + SELECTION_RANGE_OUT) ) /* bottom */
+ {
+ DBG(DBG_info, "-bottom\n");
+ p->selection_yedge = 3;
+ }
+
+ if ( (p->selection_xedge != -1) && (p->selection_yedge != -1) ) /* move corner */
+ {
+ DBG(DBG_info, "-move corner (%f, %f)\n", preview_x, preview_y);
+ p->selection_drag_edge = TRUE;
+ p->selection.coordinate[p->selection_xedge] = preview_x;
+ p->selection.coordinate[p->selection_yedge] = preview_y;
+ preview_draw_selection(p);
+ }
+ else if ( (p->selection_xedge != -1) && (event->button.y > preview_selection[1])
+ && (event->button.y < preview_selection[3]) ) /* move x-edge */
+ {
+ DBG(DBG_info, "-move x-edge %f\n", preview_x);
+ p->selection_drag_edge = TRUE;
+ p->selection.coordinate[p->selection_xedge] = preview_x;
+ preview_draw_selection(p);
+ }
+ else if ( (p->selection_yedge != -1) && (event->button.x > preview_selection[0])
+ && (event->button.x < preview_selection[2]) ) /* move y-edge */
+ {
+ DBG(DBG_info, "-move y-edge %f\n", preview_y);
+ p->selection_drag_edge = TRUE;
+ p->selection.coordinate[p->selection_yedge] = preview_y;
+ preview_draw_selection(p);
+ }
+ else /* select new area */
+ {
+ DBG(DBG_info, "-define new area (%f, %f)\n", preview_x, preview_y);
+ p->selection_xedge = 2;
+ p->selection_yedge = 3;
+ p->selection.coordinate[0] = preview_x;
+ p->selection.coordinate[1] = preview_y;
+ p->selection_drag = TRUE;
+
+ cursornr = GDK_CROSS;
+ cursor = gdk_cursor_new(cursornr); /* set curosr */
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = cursornr;
+ }
+ break;
+
+ case 2: /* middle button */
+ case 3: /* right button */
+ DBG(DBG_info, "middle or right button\n");
+
+ if ( (preview_selection[0]-SELECTION_RANGE_OUT < event->button.x) &&
+ (preview_selection[2]+SELECTION_RANGE_OUT > event->button.x) &&
+ (preview_selection[1]-SELECTION_RANGE_OUT < event->button.y) &&
+ (preview_selection[3]+SELECTION_RANGE_OUT > event->button.y) )
+ {
+ DBG(DBG_info, "move selection area\n");
+ p->selection_drag = TRUE;
+ p->selection_xpos = event->button.x;
+ p->selection_ypos = event->button.y;
+
+ cursornr = GDK_HAND2;
+ cursor = gdk_cursor_new(cursornr); /* set curosr */
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = cursornr;
+ }
+ break;
+
+ default:
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_button_release_event_handler(GtkWidget *window, GdkEvent *event, gpointer data)
+{
+ Preview *p = data;
+ GdkCursor *cursor;
+ float preview_selection[4];
+ int cursornr;
+
+ DBG(DBG_proc, "preview_button_release_event_handler\n");
+
+ /* preview selection (device) -> cursor-position (window) */
+ preview_transform_coordinates_device_to_window(p, p->selection.coordinate, preview_selection);
+
+ if (!p->scanning)
+ {
+ if (p->show_selection)
+ {
+ switch (((GdkEventButton *)event)->button)
+ {
+ case 1: /* left button */
+ case 2: /* middle button */
+ case 3: /* right button */
+ if (p->selection_drag)
+ {
+ DBG(DBG_info, "selection finished\n");
+ cursornr = XSANE_CURSOR_PREVIEW;
+ cursor = gdk_cursor_new(cursornr); /* set curosr */
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = cursornr;
+ }
+
+ preview_draw_selection(p);
+ preview_establish_selection(p);
+
+ p->selection_drag_edge = FALSE;
+ p->selection_drag = FALSE;
+ break;
+
+ default:
+ break;
+ }
+ }
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+static int expose_event_selection_active, expose_event_selection_maximum_active;
+
+static gint preview_expose_event_handler_start(GtkWidget *window, GdkEvent *event, gpointer data)
+{
+ Preview *p = data;
+ GdkColor color;
+ GdkColormap *colormap;
+
+ DBG(DBG_proc, "preview_expose_event_handler_start\n");
+
+ if (event->type == GDK_EXPOSE)
+ {
+ if (!p->gc_selection)
+ {
+ DBG(DBG_info, "defining line styles for selection and page frames\n");
+ colormap = gdk_window_get_colormap(p->window->window);
+
+ p->gc_selection = gdk_gc_new(p->window->window);
+ gdk_gc_set_function(p->gc_selection, GDK_INVERT);
+ gdk_gc_set_line_attributes(p->gc_selection, 1, GDK_LINE_ON_OFF_DASH, GDK_CAP_BUTT, GDK_JOIN_MITER);
+
+ p->gc_selection_maximum = gdk_gc_new(p->window->window);
+ gdk_gc_set_function(p->gc_selection_maximum, GDK_XOR);
+ gdk_gc_set_line_attributes(p->gc_selection_maximum, 1, GDK_LINE_ON_OFF_DASH, GDK_CAP_BUTT, GDK_JOIN_MITER);
+
+ color.red = 0;
+ color.green = 65535;
+ color.blue = 30000;
+ gdk_color_alloc(colormap, &color);
+ gdk_gc_set_foreground(p->gc_selection_maximum, &color);
+ }
+ else
+ {
+ expose_event_selection_active = p->selection.active;
+ expose_event_selection_maximum_active = p->selection_maximum.active;
+ p->selection_maximum.active = FALSE;
+ p->selection.active = FALSE; /* do not draw new selections */
+ p->selection_maximum.active = FALSE;
+ preview_draw_selection(p); /* undraw selections */
+ }
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_expose_event_handler_end(GtkWidget *window, GdkEvent *event, gpointer data)
+{
+ Preview *p = data;
+ GdkColor color;
+ GdkColormap *colormap;
+
+ DBG(DBG_proc, "preview_expose_event_handler_end\n");
+
+ if (event->type == GDK_EXPOSE)
+ {
+ if (!p->gc_selection)
+ {
+ DBG(DBG_info, "defining line styles for selection and page frames\n");
+ colormap = gdk_window_get_colormap(p->window->window);
+
+ p->gc_selection = gdk_gc_new(p->window->window);
+ gdk_gc_set_function(p->gc_selection, GDK_INVERT);
+ gdk_gc_set_line_attributes(p->gc_selection, 1, GDK_LINE_ON_OFF_DASH, GDK_CAP_BUTT, GDK_JOIN_MITER);
+
+ p->gc_selection_maximum = gdk_gc_new(p->window->window);
+ gdk_gc_set_function(p->gc_selection_maximum, GDK_XOR);
+ gdk_gc_set_line_attributes(p->gc_selection_maximum, 1, GDK_LINE_ON_OFF_DASH, GDK_CAP_BUTT, GDK_JOIN_MITER);
+
+ color.red = 0;
+ color.green = 65535;
+ color.blue = 30000;
+ gdk_color_alloc(colormap, &color);
+ gdk_gc_set_foreground(p->gc_selection_maximum, &color);
+ }
+ else
+ {
+ p->selection.active = expose_event_selection_active;
+ p->selection_maximum.active = expose_event_selection_maximum_active;
+ preview_draw_selection(p); /* draw selections again */
+ }
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_start_button_clicked(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "preview_start_button_clicked\n");
+
+ preview_scan(data);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_cancel_button_clicked(GtkWidget *widget, gpointer data)
+{
+ Preview *p = (Preview *) data;
+
+ DBG(DBG_proc, "preview_cancel_button_clicked\n");
+
+ sane_cancel(xsane.dev);
+ gtk_widget_set_sensitive(p->cancel, FALSE); /* disable cancel button */
+
+ /* we have to make sure that xsane does detect that the scan has been cancled */
+ /* but the select_fd does not make sure that preview_read_image_data is called */
+ /* when the select_fd is closed by the backend, so we have to make sure that */
+ /* preview_read_image_data is called */
+ preview_read_image_data(p, -1, GDK_INPUT_READ);
+
+ p->scan_incomplete = TRUE;
+ preview_display_valid(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_create_preset_area_menu(Preview *p, int selection)
+{
+ int i;
+ GtkWidget *preset_area_menu, *preset_area_item;
+
+ preset_area_menu = gtk_menu_new();
+
+ for (i = 0; i < preferences.preset_area_definitions; ++i)
+ {
+ preset_area_item = gtk_menu_item_new_with_label(preferences.preset_area[i]->name);
+ gtk_container_add(GTK_CONTAINER(preset_area_menu), preset_area_item);
+ gtk_signal_connect(GTK_OBJECT(preset_area_item), "button_press_event", (GtkSignalFunc) preview_preset_area_context_menu_callback, p);
+ gtk_signal_connect(GTK_OBJECT(preset_area_item), "activate", (GtkSignalFunc) preview_preset_area_callback, p);
+ gtk_object_set_data(GTK_OBJECT(preset_area_item), "Selection", (void *) i);
+ gtk_object_set_data(GTK_OBJECT(preset_area_item), "Preview", (void *) p);
+
+ gtk_widget_show(preset_area_item);
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(p->preset_area_option_menu), preset_area_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(p->preset_area_option_menu), selection);
+
+ gtk_widget_show(preset_area_menu);
+ gtk_widget_queue_draw(p->preset_area_option_menu);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_generate_preview_filenames(Preview *p)
+{
+ char filename[PATH_MAX];
+ char buf[256];
+ int error_flag = 0;
+ int i;
+
+ DBG(DBG_proc, "preview_generate_preview_filenames\n");
+
+ for(i=0; i<=2; i++) /* create random filenames for previews */
+ {
+ if (preview_make_image_path(p, sizeof(filename), filename, i)>=0)
+ {
+ FILE *testfile;
+
+ testfile = fopen(filename, "wb");
+ if (testfile)
+ {
+ fclose(testfile);
+ p->filename[i] = strdup(filename);/* store filename */
+ DBG(DBG_info, "preview file %s created\n", filename);
+ }
+ else
+ {
+ p->filename[i] = NULL; /* mark filename does not exist */
+ DBG(DBG_error, "ERROR: could not create preview file %s\n", filename);
+ error_flag = 1;
+ }
+ }
+ else
+ {
+ DBG(DBG_error, "ERROR: could not create filename for preview level %d\n", i);
+ p->filename[i] = NULL;
+ error_flag = 2;
+ }
+ }
+
+ if (error_flag == 1)
+ {
+ snprintf(buf, sizeof(buf), ERR_CREATE_PREVIEW_FILE);
+ xsane_back_gtk_error(buf, TRUE);
+ }
+ else if (error_flag == 2)
+ {
+ snprintf(buf, sizeof(buf), ERR_CREATE_PREVIEW_FILENAME);
+ xsane_back_gtk_error(buf, TRUE);
+ }
+
+ return;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+Preview *preview_new(void)
+{
+ GtkWidget *table, *frame;
+ GtkSignalFunc signal_func;
+ GtkWidgetClass *class;
+ GtkWidget *vbox, *hbox;
+ GdkCursor *cursor;
+ GtkWidget *preset_area_option_menu;
+ GtkWidget *rotation_option_menu, *rotation_menu, *rotation_item;
+ GtkWidget *delete_images;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap = NULL;
+ Preview *p;
+ int i;
+ char buf[256];
+
+ DBG(DBG_proc, "preview_new\n");
+
+ p = malloc(sizeof(*p));
+ if (!p)
+ {
+ return 0;
+ }
+ memset(p, 0, sizeof(*p));
+
+ p->mode = MODE_NORMAL; /* no pipette functions etc */
+ p->calibration = 0; /* do not display calibration image */
+ p->input_tag = -1;
+ p->rotation = 0;
+ p->gamma_functions_interruptable = FALSE;
+
+ p->index_xmin = 0;
+ p->index_xmax = 2;
+ p->index_ymin = 1;
+ p->index_ymax = 3;
+
+ p->max_scanner_surface[0] = -INF;
+ p->max_scanner_surface[1] = -INF;
+ p->max_scanner_surface[2] = INF;
+ p->max_scanner_surface[3] = INF;
+
+ p->scanner_surface[0] = -INF;
+ p->scanner_surface[1] = -INF;
+ p->scanner_surface[2] = INF;
+ p->scanner_surface[3] = INF;
+
+ p->surface[0] = -INF;
+ p->surface[1] = -INF;
+ p->surface[2] = INF;
+ p->surface[3] = INF;
+
+ gtk_preview_set_gamma(1.0);
+ gtk_preview_set_install_cmap(preferences.preview_own_cmap);
+
+ preview_generate_preview_filenames(p);
+
+ p->preset_surface[0] = 0;
+ p->preset_surface[1] = 0;
+ p->preset_surface[2] = INF;
+ p->preset_surface[3] = INF;
+
+ p->maximum_output_width = INF; /* full output with */
+ p->maximum_output_height = INF; /* full output height */
+
+ p->preview_colors = -1;
+ p->invalid = TRUE; /* no valid preview */
+
+#ifndef XSERVER_WITH_BUGGY_VISUALS
+ gtk_widget_push_visual(gtk_preview_get_visual());
+#endif
+ gtk_widget_push_colormap(gtk_preview_get_cmap());
+
+ snprintf(buf, sizeof(buf), "%s %s", WINDOW_PREVIEW, xsane.device_text);
+ p->top = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title(GTK_WINDOW(p->top), buf);
+ xsane_set_window_icon(p->top, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(p->top));
+
+ /* set the main vbox */
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
+ gtk_container_add(GTK_CONTAINER(p->top), vbox);
+ gtk_widget_show(vbox);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+
+ /* top hbox for icons */
+ p->button_box = gtk_hbox_new(FALSE, 1);
+ gtk_container_set_border_width(GTK_CONTAINER(p->button_box), 1);
+ gtk_box_pack_start(GTK_BOX(vbox), p->button_box, FALSE, FALSE, 0);
+
+ /* White, gray and black pipette button */
+ p->pipette_white = xsane_button_new_with_pixmap(p->top->window, p->button_box, pipette_white_xpm, DESC_PIPETTE_WHITE, (GtkSignalFunc) preview_pipette_white, p);
+ p->pipette_gray = xsane_button_new_with_pixmap(p->top->window, p->button_box, pipette_gray_xpm, DESC_PIPETTE_GRAY, (GtkSignalFunc) preview_pipette_gray, p);
+ p->pipette_black = xsane_button_new_with_pixmap(p->top->window, p->button_box, pipette_black_xpm, DESC_PIPETTE_BLACK, (GtkSignalFunc) preview_pipette_black, p);
+
+ /* Zoom not, zoom out and zoom in button */
+ p->zoom_not = xsane_button_new_with_pixmap(p->top->window, p->button_box, zoom_not_xpm, DESC_ZOOM_FULL, (GtkSignalFunc) preview_zoom_not, p);
+ p->zoom_out = xsane_button_new_with_pixmap(p->top->window, p->button_box, zoom_out_xpm, DESC_ZOOM_OUT, (GtkSignalFunc) preview_zoom_out, p);
+ p->zoom_in = xsane_button_new_with_pixmap(p->top->window, p->button_box, zoom_in_xpm, DESC_ZOOM_IN, (GtkSignalFunc) preview_zoom_in, p);
+ p->zoom_undo = xsane_button_new_with_pixmap(p->top->window, p->button_box, zoom_undo_xpm, DESC_ZOOM_UNDO, (GtkSignalFunc) preview_zoom_undo, p);
+ p->full_area = xsane_button_new_with_pixmap(p->top->window, p->button_box, auto_select_preview_area_xpm, DESC_AUTOSELECT_SCANAREA, (GtkSignalFunc) preview_autoselect_scanarea_callback, p);
+ p->autoselect = xsane_button_new_with_pixmap(p->top->window, p->button_box, full_preview_area_xpm, DESC_FULL_PREVIEW_AREA, (GtkSignalFunc) preview_full_preview_area_callback, p);
+ delete_images = xsane_button_new_with_pixmap(p->top->window, p->button_box, delete_images_xpm, DESC_DELETE_IMAGES, (GtkSignalFunc) preview_delete_images_callback, p);
+
+ gtk_widget_add_accelerator(p->zoom_not, "clicked", xsane.accelerator_group, GDK_KP_Multiply, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_* */
+ gtk_widget_add_accelerator(p->zoom_out, "clicked", xsane.accelerator_group, GDK_KP_Subtract, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_- */
+ gtk_widget_add_accelerator(p->zoom_in, "clicked", xsane.accelerator_group, GDK_KP_Add, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_+ */
+ gtk_widget_add_accelerator(p->zoom_undo, "clicked", xsane.accelerator_group, GDK_KP_Divide, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_/ */
+ gtk_widget_add_accelerator(p->full_area, "clicked", xsane.accelerator_group, GDK_A, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_* */
+ gtk_widget_add_accelerator(p->autoselect, "clicked", xsane.accelerator_group, GDK_V, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_* */
+ gtk_widget_add_accelerator(delete_images, "clicked", xsane.accelerator_group, GDK_KP_Delete, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt keypad_* */
+
+ gtk_widget_set_sensitive(p->zoom_not, FALSE); /* no zoom at this point, so no zoom not */
+ gtk_widget_set_sensitive(p->zoom_out, FALSE); /* no zoom at this point, so no zoom out */
+ gtk_widget_set_sensitive(p->zoom_undo, FALSE); /* no zoom at this point, so no zoom undo */
+ gtk_widget_set_sensitive(p->full_area, FALSE); /* no selection */
+ gtk_widget_set_sensitive(p->autoselect, FALSE); /* no selection */
+
+
+ /* select maximum scanarea */
+
+ preset_area_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, preset_area_option_menu, DESC_PRESET_AREA);
+ gtk_box_pack_start(GTK_BOX(p->button_box), preset_area_option_menu, FALSE, FALSE, 0);
+ gtk_widget_show(preset_area_option_menu);
+ p->preset_area_option_menu = preset_area_option_menu;
+ preview_create_preset_area_menu(p, 0); /* build menu and set default to 0=full size */
+
+
+ /* select rotation */
+ rotation_menu = gtk_menu_new();
+
+ for (i = 0; i < 12; ++i)
+ {
+ char buffer[256];
+ int rot;
+
+ if (i<4)
+ {
+ snprintf(buffer, sizeof(buffer), "%03d ", i*90);
+ rot = i;
+ }
+ else if (i<8)
+ {
+ snprintf(buffer, sizeof(buffer), "%03d |", i*90-360);
+ rot = i;
+ }
+ else
+ {
+ snprintf(buffer, sizeof(buffer), "%03d -", i*90-2*360);
+ rot = (((i & 3) + 2) & 3) + 4;
+ }
+ rotation_item = gtk_menu_item_new_with_label(buffer);
+ gtk_container_add(GTK_CONTAINER(rotation_menu), rotation_item);
+ gtk_signal_connect(GTK_OBJECT(rotation_item), "activate", (GtkSignalFunc) preview_rotation_callback, p);
+ gtk_object_set_data(GTK_OBJECT(rotation_item), "Selection", (void *) rot);
+
+ gtk_widget_show(rotation_item);
+ }
+
+ rotation_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, rotation_option_menu, DESC_ROTATION);
+ gtk_box_pack_start(GTK_BOX(p->button_box), rotation_option_menu, FALSE, FALSE, 0);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(rotation_option_menu), rotation_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(rotation_option_menu), p->rotation); /* set rotation */
+/* xsane_back_gtk_set_tooltip(tooltips, rotation_option_menu, desc); */
+
+ gtk_widget_show(rotation_option_menu);
+ p->rotation_option_menu = rotation_option_menu;
+
+
+ gtk_widget_show(p->button_box);
+
+
+
+ /* construct the preview area (table with sliders & preview window) */
+ table = gtk_table_new(2, 2, /* homogeneous */ FALSE);
+ gtk_table_set_col_spacing(GTK_TABLE(table), 0, 1);
+ gtk_table_set_row_spacing(GTK_TABLE(table), 0, 1);
+ gtk_container_set_border_width(GTK_CONTAINER(table), 1);
+ gtk_box_pack_start(GTK_BOX(vbox), table, /* expand */ TRUE, /* fill */ TRUE, /* padding */ 0);
+
+ /* the empty box in the top-left corner */
+ frame = gtk_frame_new(/* label */ 0);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_OUT);
+ gtk_table_attach(GTK_TABLE(table), frame, 0, 1, 0, 1, GTK_FILL, GTK_FILL, 0, 0);
+
+ /* the unit label */
+ p->unit_label = gtk_label_new("cm");
+ gtk_container_add(GTK_CONTAINER(frame), p->unit_label);
+ gtk_widget_show(p->unit_label);
+
+ /* the horizontal ruler */
+ p->hruler = gtk_hruler_new();
+ gtk_table_attach(GTK_TABLE(table), p->hruler, 1, 2, 0, 1, GTK_FILL, 0, 0, 0);
+
+ /* the vertical ruler */
+ p->vruler = gtk_vruler_new();
+ gtk_table_attach(GTK_TABLE(table), p->vruler, 0, 1, 1, 2, 0, GTK_FILL, 0, 0);
+
+ /* the preview area */
+ p->window = gtk_preview_new(GTK_PREVIEW_COLOR);
+ gtk_preview_set_expand(GTK_PREVIEW(p->window), TRUE);
+
+ gtk_widget_set_events(p->window, GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK |
+ GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK);
+
+ /* the first expose_event is responsible to undraw the selection frame */
+ gtk_signal_connect(GTK_OBJECT(p->window), "expose_event", (GtkSignalFunc) preview_expose_event_handler_start, p);
+ gtk_signal_connect(GTK_OBJECT(p->window), "button_press_event", (GtkSignalFunc) preview_button_press_event_handler, p);
+ gtk_signal_connect(GTK_OBJECT(p->window), "motion_notify_event", (GtkSignalFunc) preview_motion_event_handler, p);
+ gtk_signal_connect(GTK_OBJECT(p->window), "button_release_event", (GtkSignalFunc) preview_button_release_event_handler, p);
+ gtk_signal_connect_after(GTK_OBJECT(p->window), "size_allocate", (GtkSignalFunc) preview_area_resize_handler, p);
+ /* the second expose_event is responsible to redraw the selection frame */
+ gtk_signal_connect_after(GTK_OBJECT(p->window), "expose_event", (GtkSignalFunc) preview_expose_event_handler_end, p);
+
+ /* Connect the motion-notify events of the preview area with the rulers. Nifty stuff! */
+ class = GTK_WIDGET_CLASS(GTK_OBJECT(p->hruler)->klass);
+ signal_func = (GtkSignalFunc) class->motion_notify_event;
+ gtk_signal_connect_object(GTK_OBJECT(p->window), "motion_notify_event", signal_func, GTK_OBJECT(p->hruler));
+ class = GTK_WIDGET_CLASS(GTK_OBJECT(p->vruler)->klass);
+ signal_func = (GtkSignalFunc) class->motion_notify_event;
+ gtk_signal_connect_object(GTK_OBJECT(p->window), "motion_notify_event", signal_func, GTK_OBJECT(p->vruler));
+
+
+ p->viewport = gtk_frame_new(/* label */ 0);
+ gtk_frame_set_shadow_type(GTK_FRAME(p->viewport), GTK_SHADOW_IN);
+ gtk_container_add(GTK_CONTAINER(p->viewport), p->window);
+
+ gtk_table_attach(GTK_TABLE(table), p->viewport, 1, 2, 1, 2,
+ GTK_FILL | GTK_EXPAND | GTK_SHRINK, GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0);
+
+ preview_update_surface(p, 0);
+
+ /* fill in action area: */
+
+ /* the (in)valid pixmaps */
+ pixmap = gdk_pixmap_create_from_xpm_d(p->top->window, &mask, xsane.bg_trans, (gchar **) valid_xpm);
+ p->valid_pixmap = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), p->valid_pixmap, FALSE, FALSE, 0);
+ gtk_widget_show(p->valid_pixmap);
+ gdk_pixmap_unref(pixmap);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(p->top->window, &mask, xsane.bg_trans, (gchar **) scanning_xpm);
+ p->scanning_pixmap = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), p->scanning_pixmap, FALSE, FALSE, 0);
+ gtk_widget_show(p->scanning_pixmap);
+ gdk_pixmap_unref(pixmap);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(p->top->window, &mask, xsane.bg_trans, (gchar **) incomplete_xpm);
+ p->incomplete_pixmap = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), p->incomplete_pixmap, FALSE, FALSE, 0);
+ gtk_widget_show(p->incomplete_pixmap);
+ gdk_pixmap_unref(pixmap);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(p->top->window, &mask, xsane.bg_trans, (gchar **) invalid_xpm);
+ p->invalid_pixmap = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), p->invalid_pixmap, FALSE, FALSE, 0);
+ gtk_widget_show(p->invalid_pixmap);
+ gdk_pixmap_unref(pixmap);
+
+ /* Start button */
+ p->start = gtk_button_new_with_label(BUTTON_PREVIEW_ACQUIRE);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, p->start, DESC_PREVIEW_ACQUIRE);
+ gtk_signal_connect(GTK_OBJECT(p->start), "clicked", (GtkSignalFunc) preview_start_button_clicked, p);
+ gtk_box_pack_start(GTK_BOX(hbox), p->start, TRUE, TRUE, 10);
+ gtk_widget_add_accelerator(p->start, "clicked", xsane.accelerator_group, GDK_P, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt P */
+
+ /* Cancel button */
+ p->cancel = gtk_button_new_with_label(BUTTON_PREVIEW_CANCEL);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, p->cancel, DESC_PREVIEW_CANCEL);
+ gtk_signal_connect(GTK_OBJECT(p->cancel), "clicked", (GtkSignalFunc) preview_cancel_button_clicked, p);
+ gtk_box_pack_start(GTK_BOX(hbox), p->cancel, TRUE, TRUE, 10);
+ gtk_widget_add_accelerator(p->cancel, "clicked", xsane.accelerator_group, GDK_Escape, GDK_MOD1_MASK, GTK_ACCEL_LOCKED); /* Alt ESC */
+ gtk_widget_set_sensitive(p->cancel, FALSE);
+
+ gtk_widget_show(p->cancel);
+ gtk_widget_show(p->start);
+ gtk_widget_show(p->viewport);
+ gtk_widget_show(p->window);
+ gtk_widget_show(p->hruler);
+ gtk_widget_show(p->vruler);
+ gtk_widget_show(frame);
+ gtk_widget_show(table);
+ gtk_widget_show(p->top);
+
+ cursor = gdk_cursor_new(XSANE_CURSOR_PREVIEW); /* set default curosr */
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = XSANE_CURSOR_PREVIEW;
+
+ gtk_widget_pop_colormap();
+#ifndef XSERVER_WITH_BUGGY_VISUALS
+ gtk_widget_pop_visual();
+#endif
+
+ preview_update_surface(p, 0);
+
+ preview_display_valid(p);
+
+ return p;
+}
+
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_area_correct(Preview *p)
+{
+ float width, height, max_width, max_height;
+ float aspect;
+
+ DBG(DBG_proc, "preview_area_correct\n");
+
+ if ( ((p->rotation & 3) == 0) || ((p->rotation & 3) == 2) || (p->calibration) )
+ {
+ aspect = p->aspect;
+ }
+ else
+ {
+ aspect = 1.0 / p->aspect;
+ }
+
+ max_width = p->preview_window_width;
+ max_height = p->preview_window_height;
+
+ width = max_width;
+ height = width / aspect;
+
+ if (height > max_height)
+ {
+ height = max_height;
+ width = height * aspect;
+ }
+
+ p->preview_width = width + 0.5;
+ p->preview_height = height + 0.5;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_update_surface(Preview *p, int surface_changed)
+{
+ float val;
+ float width, height;
+ float rotated_preset_surface[4];
+ const SANE_Option_Descriptor *opt;
+ int i;
+ SANE_Value_Type type;
+ SANE_Unit unit;
+ double min, max;
+ int expand_surface = 0;
+
+ DBG(DBG_proc, "preview_update_surface\n");
+
+ unit = SANE_UNIT_PIXEL;
+ type = SANE_TYPE_INT;
+
+ preview_update_selection(p); /* make sure preview selection is up to date */
+
+ p->show_selection = FALSE; /* at first let's say we have no corrdinate selection */
+
+ for (i = 0; i < 4; ++i) /* test if surface (max vals of scanarea) has changed */
+ {
+/* val = (i & 2) ? INF : -INF; */
+ val = (i & 2) ? INF : 0;
+
+ if (xsane.well_known.coord[i] > 0)
+ {
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.coord[i]);
+ assert(opt->unit == SANE_UNIT_PIXEL || opt->unit == SANE_UNIT_MM);
+ unit = opt->unit;
+ type = opt->type;
+ p->show_selection = TRUE; /* ok, we have a coordinate selection */
+
+ xsane_get_bounds(opt, &min, &max);
+
+ if (i & 2)
+ {
+ val = max;
+ }
+ else
+ {
+ val = min;
+ }
+ }
+
+ if (p->orig_scanner_surface[i] != val)
+ {
+ DBG(DBG_info, "preview_update_surface: orig_scanner_surface[%d] has changed\n", i);
+ surface_changed = 2;
+ p->orig_scanner_surface[i] = val;
+ }
+ }
+
+ if (surface_changed == 2) /* redefine all surface subparts */
+ {
+ DBG(DBG_info, "preview_update_surface: rotating surfaces\n");
+
+ /* max_scanner_surface are the rotated coordinates of orig_scanner_surface */
+ preview_rotate_devicesurface_to_previewsurface(p->rotation, p->orig_scanner_surface, p->max_scanner_surface);
+
+ gtk_widget_set_sensitive(p->zoom_not, TRUE); /* allow unzoom */
+ gtk_widget_set_sensitive(p->zoom_undo, FALSE); /* forbid undo zoom */
+
+ expand_surface = 1;
+ for (i = 0; i < 4; i++)
+ {
+ if (p->surface[i] != p->scanner_surface[i])
+ {
+ expand_surface = 0;
+ }
+ }
+ }
+ else
+ {
+ expand_surface = 0;
+ }
+
+
+ /* scanner_surface are the rotated coordinates of the reduced (preset) surface */
+ preview_rotate_devicesurface_to_previewsurface(p->rotation, p->preset_surface, rotated_preset_surface);
+ for (i = 0; i < 4; i++)
+ {
+ val = rotated_preset_surface[i];
+
+ xsane_bound_float(&val, p->max_scanner_surface[i % 2], p->max_scanner_surface[(i % 2) + 2]);
+ if (val != p->scanner_surface[i])
+ {
+ surface_changed = 1;
+ p->scanner_surface[i] = val;
+
+ if (expand_surface)
+ {
+ p->surface[i] = val;
+ }
+ }
+ DBG(DBG_info, "preview_update_surface: scanner_surface[%d] = %3.2f\n", i, val);
+ }
+
+ for (i = 0; i < 4; i++)
+ {
+ val = p->surface[i];
+
+ xsane_bound_float(&val, p->scanner_surface[i % 2], p->scanner_surface[(i % 2) + 2]);
+ if (val != p->surface[i])
+ {
+ surface_changed = 1;
+ p->surface[i] = val;
+ }
+ DBG(DBG_info, "preview_update_surface: surface[%d] = %3.2f\n", i, val);
+ }
+
+/* may be we need to define p->old_surface[i] here too */
+
+ if (p->surface_unit != unit)
+ {
+ surface_changed = 1;
+ p->surface_unit = unit;
+ }
+
+ if (p->show_selection)
+ {
+ gtk_widget_set_sensitive(p->preset_area_option_menu, TRUE); /* enable preset area */
+ gtk_widget_set_sensitive(p->zoom_in, TRUE); /* zoom in is allowed at all */
+ gtk_widget_set_sensitive(p->full_area, TRUE); /* enable selection buttons */
+ gtk_widget_set_sensitive(p->autoselect, TRUE);
+ }
+ else
+ {
+ gtk_widget_set_sensitive(p->preset_area_option_menu, FALSE); /* disable preset area */
+ gtk_widget_set_sensitive(p->zoom_in, FALSE); /* no zoom at all */
+ gtk_widget_set_sensitive(p->zoom_out, FALSE);
+ gtk_widget_set_sensitive(p->zoom_undo, FALSE);
+ gtk_widget_set_sensitive(p->zoom_not, FALSE);
+ gtk_widget_set_sensitive(p->full_area, FALSE); /* no selection */
+ gtk_widget_set_sensitive(p->autoselect, FALSE); /* no selection */
+ }
+
+ if (p->surface_type != type)
+ {
+ surface_changed = 1;
+ p->surface_type = type;
+ }
+
+
+ if (surface_changed)
+ {
+ DBG(DBG_info, "preview_update_surface: surface_changed\n");
+ /* guess the initial preview window size: */
+
+ preview_restore_image(p); /* load scanned image */
+
+ width = p->surface[p->index_xmax] - p->surface[p->index_xmin];
+ height = p->surface[p->index_ymax] - p->surface[p->index_ymin];
+
+ if ( (p->calibration) || (p->startimage) ) /* predefined image should have constant aspect */
+ {
+ p->aspect = fabs(p->image_width/(float) p->image_height);
+ }
+ else if (width >= INF || height >= INF) /* undefined size */
+ {
+ p->aspect = 1.0;
+ }
+ else /* we have a surface size that can be used to calculate the aspect ratio */
+ {
+ if (((p->rotation & 3) == 0) || ((p->rotation & 3) == 2)) /* 0 or 180 degree */
+ {
+ p->aspect = width/height;
+ }
+ else /* 90 or 270 degree */
+ {
+ p->aspect = height/width;
+ }
+ }
+ }
+#if 0
+ else if ( (p->image_height) && (p->image_width) ) /* we have an image so let´s calculate the correct aspect ratio */
+ {
+ p->aspect = fabs(p->image_width/(float) p->image_height);
+ }
+#endif
+
+ DBG(DBG_info, "preview_update_surface: aspect = %f\n", p->aspect);
+
+ if ( (surface_changed) && (p->preview_window_width == 0) ) /* window is new */
+ {
+ DBG(DBG_info, "preview_update_surface: defining size of preview window\n");
+
+ p->preview_window_width = 0.3 * gdk_screen_width();
+ p->preview_window_height = 0.5 * gdk_screen_height();
+ preview_area_correct(p); /* calculate preview_width and height */
+ gtk_widget_set_usize(GTK_WIDGET(p->window), p->preview_width, p->preview_height);
+ }
+ else if (surface_changed) /* establish new surface */
+ {
+ DBG(DBG_info, "preview_update_surface: establish new surface\n");
+ preview_area_correct(p); /* calculate preview_width and height */
+ preview_area_resize(p); /* correct rulers */
+ preview_do_gamma_correction(p); /* draw preview */
+ xsane_update_histogram(TRUE /* update raw */);
+
+ p->previous_selection.active = FALSE;
+ p->previous_selection_maximum.active = FALSE;
+ preview_bound_selection(p); /* make sure selection is not larger than surface */
+ preview_draw_selection(p); /* the selection is overpainted, we have to update it */
+ preview_establish_selection(p); /* send selection to backend, it may be changed */
+ }
+ else /* leave everything like it is */
+ {
+ DBG(DBG_info, "preview_update_surface: surface unchanged\n");
+ preview_update_selection(p);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_scan(Preview *p)
+{
+ double min, max, swidth, sheight, width, height, dpi = 0;
+ const SANE_Option_Descriptor *opt;
+ gint gwidth, gheight;
+ int i;
+ float dsurface[4];
+
+ DBG(DBG_proc, "preview_scan\n");
+
+ /* we are overpainting the image, so we do not have any visible selections */
+ p->previous_selection.active = FALSE;
+ p->previous_selection_maximum.active = FALSE;
+
+ xsane.block_update_param = TRUE; /* do not change parameters each time */
+
+ preview_save_option(p, xsane.well_known.dpi, &p->saved_dpi, &p->saved_dpi_valid);
+ preview_save_option(p, xsane.well_known.dpi_x, &p->saved_dpi_x, &p->saved_dpi_x_valid);
+ preview_save_option(p, xsane.well_known.dpi_y, &p->saved_dpi_y, &p->saved_dpi_y_valid);
+ preview_save_option(p, xsane.well_known.scanmode, &p->saved_scanmode, &p->saved_scanmode_valid);
+
+ for (i = 0; i < 4; ++i)
+ {
+ preview_save_option(p, xsane.well_known.coord[i], &p->saved_coord[i], p->saved_coord_valid + i);
+ }
+
+ preview_save_option(p, xsane.well_known.bit_depth, &p->saved_bit_depth, &p->saved_bit_depth_valid);
+
+#if 0
+ xsane_set_medium(preferences.medium[xsane.medium_nr]); /* make sure medium gamma values are up to date */
+#endif
+
+ /* determine dpi, if necessary: */
+
+ if (xsane.well_known.dpi > 0)
+ {
+ float aspect;
+
+ if ( ((p->rotation & 3) == 0) || ((p->rotation & 3) == 2) )
+ {
+ aspect = p->aspect;
+ }
+ else
+ {
+ aspect = 1.0 / p->aspect;
+ }
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.dpi);
+
+ gwidth = p->preview_width;
+ gheight = p->preview_height;
+
+ height = gheight;
+ width = height * aspect;
+
+ if (width > gwidth)
+ {
+ width = gwidth;
+ height = width / aspect;
+ }
+
+ swidth = fabs(p->surface[xsane_back_gtk_BR_X] - p->surface[xsane_back_gtk_TL_X]);
+
+ if (swidth < INF)
+ {
+ dpi = MM_PER_INCH * width/swidth;
+ }
+ else
+ {
+ sheight = fabs(p->surface[xsane_back_gtk_BR_Y] - p->surface[xsane_back_gtk_TL_Y]);
+ if (sheight < INF)
+ {
+ dpi = MM_PER_INCH * height/sheight;
+ }
+ else
+ {
+ dpi = 18.0;
+ }
+ }
+
+ dpi = dpi * preferences.preview_oversampling; /* faktor for resolution */
+
+ xsane_get_bounds(opt, &min, &max);
+
+ if (dpi < min)
+ {
+ dpi = min;
+ }
+
+ if (dpi > max)
+ {
+ dpi = max;
+ }
+
+ xsane_set_resolution(xsane.well_known.dpi, dpi); /* set resolution to dpi or next higher value that is available */
+ xsane_set_resolution(xsane.well_known.dpi_x, dpi); /* set resolution to dpi or next higher value that is available */
+ xsane_set_resolution(xsane.well_known.dpi_y, dpi); /* set resolution to dpi or next higher value that is available */
+ }
+
+ preview_rotate_previewsurface_to_devicesurface(p->rotation, p->surface, dsurface);
+
+ for (i = 0; i < 4; ++i)
+ {
+ preview_set_option_float(p, xsane.well_known.coord[i], dsurface[i]);
+ }
+
+ preview_set_option_val(p, xsane.well_known.preview, SANE_TRUE);
+
+ if ( (xsane.grayscale_scanmode) && (xsane.param.depth == 1) && (xsane.lineart_mode == XSANE_LINEART_GRAYSCALE) )
+ {
+ preview_set_option(p, xsane.well_known.scanmode, xsane.grayscale_scanmode);
+ }
+
+#if 0
+ if ( (p->saved_bit_depth == 16) && (p->saved_bit_depth_valid) ) /* don't scan with 16 bpp */
+ {
+ preview_set_option_val(p, xsane.well_known.bit_depth, 8);
+ }
+#endif
+
+ xsane.block_update_param = FALSE;
+ p->preview_colors = xsane.xsane_colors;
+ p->scan_incomplete = FALSE;
+ p->invalid = TRUE; /* no valid preview */
+ p->scanning = TRUE;
+
+ preview_display_valid(p);
+
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+
+
+ /* OK, all set to go */
+ preview_scan_start(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_save_image_file(Preview *p, FILE *out)
+{
+ DBG(DBG_proc, "preview_save_image_file\n");
+
+ if (out)
+ {
+ float dsurface[4];
+
+ preview_rotate_previewsurface_to_devicesurface(p->rotation, p->surface, dsurface);
+
+ /* always save it as a 16 bit PPM image: */
+ fprintf(out, "P6\n"
+ "# surface: %g %g %g %g %u %u\n"
+ "# time: %d\n"
+ "%d %d\n65535\n",
+ dsurface[0], dsurface[1], dsurface[2], dsurface[3],
+ p->surface_type, p->surface_unit,
+ (int) time(NULL),
+ p->image_width, p->image_height);
+
+ fwrite(p->image_data_raw, 6, p->image_width*p->image_height, out);
+ fclose(out);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_save_image(Preview *p)
+{
+ FILE *out;
+ int level=0;
+
+ DBG(DBG_proc, "preview_save_image\n");
+
+ if (!p->image_data_raw)
+ {
+ return;
+ }
+
+ if ( GROSSLY_EQUAL(p->max_scanner_surface[0], p->surface[0]) && /* full device surface */
+ GROSSLY_EQUAL(p->max_scanner_surface[1], p->surface[1]) &&
+ GROSSLY_EQUAL(p->max_scanner_surface[2], p->surface[2]) &&
+ GROSSLY_EQUAL(p->max_scanner_surface[3], p->surface[3]) )
+ {
+ level = 0;
+ }
+ else if ( GROSSLY_EQUAL(p->scanner_surface[0], p->surface[0]) && /* user defined surface */
+ GROSSLY_EQUAL(p->scanner_surface[1], p->surface[1]) &&
+ GROSSLY_EQUAL(p->scanner_surface[2], p->surface[2]) &&
+ GROSSLY_EQUAL(p->scanner_surface[3], p->surface[3]) )
+ {
+ level = 1;
+ }
+ else /* zoom area */
+ {
+ level = 2;
+ }
+
+ if (p->filename[level])
+ {
+ /* save preview image */
+ out = fopen(p->filename[level], "wb"); /* b = binary mode for win32*/
+
+ preview_save_image_file(p, out);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_delete_images(Preview *p)
+{
+ FILE *out;
+ int level=0;
+
+ DBG(DBG_proc, "preview_delete_images_file\n");
+
+ for (level = 0; level<3; level++)
+ {
+ out = fopen(p->filename[level], "wb"); /* b = binary mode for win32*/
+ if (out)
+ fclose(out);
+ }
+ preview_update_surface(p, 1);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_destroy(Preview *p)
+{
+ int level;
+
+ DBG(DBG_proc, "preview_destroy\n");
+
+ if (p->scanning)
+ {
+ preview_scan_done(p, 0); /* don't save partial window */
+ }
+
+ for(level = 0; level <= 2; level++)
+ {
+ if (p->filename[level])
+ {
+ remove(p->filename[level]); /* remove existing preview */
+ }
+ }
+
+ if (p->image_data_enh)
+ {
+ free(p->image_data_enh);
+ p->image_data_enh = 0;
+ }
+
+ if (p->image_data_raw)
+ {
+ free(p->image_data_raw);
+ p->image_data_raw = 0;
+ }
+
+ if (p->preview_row)
+ {
+ free(p->preview_row);
+ p->preview_row = 0;
+ }
+
+ if (p->gc_selection)
+ {
+ gdk_gc_destroy(p->gc_selection);
+ }
+
+ if (p->gc_selection_maximum)
+ {
+ gdk_gc_destroy(p->gc_selection_maximum);
+ }
+
+ if (p->top)
+ {
+ gtk_widget_destroy(p->top);
+ }
+ free(p);
+
+ p = 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_zoom_not(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ int i;
+
+ DBG(DBG_proc, "preview_zoom_not\n");
+
+ for (i=0; i<4; i++)
+ {
+ p->surface[i] = p->scanner_surface[i];
+ }
+
+ preview_update_surface(p, 1);
+ gtk_widget_set_sensitive(p->zoom_not, FALSE); /* forbid unzoom */
+ gtk_widget_set_sensitive(p->zoom_out, FALSE); /* forbid zoom out */
+ gtk_widget_set_sensitive(p->zoom_undo,TRUE); /* allow zoom undo */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_zoom_out(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ int i;
+ float delta_width;
+ float delta_height;
+
+ DBG(DBG_proc, "preview_zoom_out\n");
+
+ for (i=0; i<4; i++)
+ {
+ p->old_surface[i] = p->surface[i];
+ }
+
+ delta_width = (p->surface[p->index_xmax] - p->surface[p->index_xmin]) * 0.2;
+ delta_height = (p->surface[p->index_ymax] - p->surface[p->index_ymin]) * 0.2;
+
+ p->surface[p->index_xmin] -= delta_width;
+ p->surface[p->index_xmax] += delta_width;
+ p->surface[p->index_ymin] -= delta_height;
+ p->surface[p->index_ymax] += delta_height;
+
+ if (p->surface[p->index_xmin] < p->scanner_surface[p->index_xmin])
+ {
+ p->surface[p->index_xmin] = p->scanner_surface[p->index_xmin];
+ }
+
+ if (p->surface[p->index_ymin] < p->scanner_surface[p->index_ymin])
+ {
+ p->surface[p->index_ymin] = p->scanner_surface[p->index_ymin];
+ }
+
+ if (p->surface[p->index_xmax] > p->scanner_surface[p->index_xmax])
+ {
+ p->surface[p->index_xmax] = p->scanner_surface[p->index_xmax];
+ }
+
+ if (p->surface[p->index_ymax] > p->scanner_surface[p->index_ymax])
+ {
+ p->surface[p->index_ymax] = p->scanner_surface[p->index_ymax];
+ }
+
+ preview_update_surface(p, 1);
+ gtk_widget_set_sensitive(p->zoom_not, TRUE); /* allow unzoom */
+ gtk_widget_set_sensitive(p->zoom_undo,TRUE); /* allow zoom undo */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_zoom_in(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ int i;
+
+ DBG(DBG_proc, "preview_zoom_in\n");
+
+ for (i=0; i<4; i++)
+ {
+ p->old_surface[i] = p->surface[i];
+ p->surface[i] = p->selection.coordinate[i];
+ }
+
+ preview_update_surface(p, 1);
+ gtk_widget_set_sensitive(p->zoom_not, TRUE); /* allow unzoom */
+ gtk_widget_set_sensitive(p->zoom_out, TRUE); /* allow zoom out */
+ gtk_widget_set_sensitive(p->zoom_undo,TRUE); /* allow zoom undo */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_zoom_undo(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ int i;
+
+ DBG(DBG_proc, "preview_zoom_undo\n");
+
+ for (i=0; i<4; i++)
+ {
+ p->surface[i] = p->old_surface[i];
+ }
+
+ preview_update_surface(p, 1);
+ gtk_widget_set_sensitive(p->zoom_not, TRUE); /* allow unzoom */
+ gtk_widget_set_sensitive(p->zoom_out, TRUE); /* allow zoom out */
+ gtk_widget_set_sensitive(p->zoom_undo, FALSE); /* forbid zoom undo */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_get_color(Preview *p, int x, int y, int range, int *red, int *green, int *blue)
+{
+ int image_x, image_y;
+ int image_x_min, image_y_min;
+ int image_x_max, image_y_max;
+ int offset;
+ int count = 0;
+
+ DBG(DBG_proc, "preview_get_color\n");
+
+ if (p->image_data_raw)
+ {
+ preview_transform_coordinate_window_to_image(p, x, y, &image_x, &image_y);
+
+ if ( (image_x < p->image_width) && (image_y < p->image_height) )
+ {
+ image_x_min = image_x - range/2;
+ image_y_min = image_y - range/2;
+ image_x_max = image_x + range/2;
+ image_y_max = image_y + range/2;
+
+ xsane_bound_int(&image_x_min, 0, p->image_width - 1);
+ xsane_bound_int(&image_x_max, 0, p->image_width - 1);
+ xsane_bound_int(&image_y_min, 0, p->image_height - 1);
+ xsane_bound_int(&image_y_max, 0, p->image_height - 1);
+
+ *red = 0;
+ *green = 0;
+ *blue = 0;
+
+ for (image_x = image_x_min; image_x <= image_x_max; image_x++)
+ {
+ for (image_y = image_y_min; image_y <= image_y_max; image_y++)
+ {
+ count++;
+
+ offset = 3 * (image_y * p->image_width + image_x);
+
+ if (!xsane.negative) /* positive */
+ {
+ *red += (p->image_data_raw[offset ]) >> 8;
+ *green += (p->image_data_raw[offset + 1]) >> 8;
+ *blue += (p->image_data_raw[offset + 2]) >> 8;
+ }
+ else /* negative */
+ {
+ *red += 255 - (p->image_data_raw[offset ] >> 8);
+ *green += 255 - (p->image_data_raw[offset + 1] >> 8);
+ *blue += 255 - (p->image_data_raw[offset + 2] >> 8);
+ }
+ }
+ }
+
+ *red /= count;
+ *green /= count;
+ *blue /= count;
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_pipette_white(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ GdkCursor *cursor;
+ GdkColor fg;
+ GdkColor bg;
+ GdkPixmap *pixmap;
+ GdkPixmap *mask;
+
+ DBG(DBG_proc, "preview_pipette_white\n");
+
+ p->mode = MODE_PIPETTE_WHITE;
+
+ pixmap = gdk_bitmap_create_from_data(p->top->window, cursor_pipette_white, CURSOR_PIPETTE_WIDTH, CURSOR_PIPETTE_HEIGHT);
+ mask = gdk_bitmap_create_from_data(p->top->window, cursor_pipette_mask, CURSOR_PIPETTE_WIDTH, CURSOR_PIPETTE_HEIGHT);
+
+ fg.red = 0;
+ fg.green = 0;
+ fg.blue = 0;
+
+ bg.red = 65535;
+ bg.green = 65535;
+ bg.blue = 65535;
+
+ cursor = gdk_cursor_new_from_pixmap(pixmap, mask, &fg, &bg, CURSOR_PIPETTE_HOT_X, CURSOR_PIPETTE_HOT_Y);
+
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = -1;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_pipette_gray(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ GdkCursor *cursor;
+ GdkColor fg;
+ GdkColor bg;
+ GdkPixmap *pixmap;
+ GdkPixmap *mask;
+
+ DBG(DBG_proc, "preview_pipette_gray\n");
+
+ p->mode = MODE_PIPETTE_GRAY;
+
+ pixmap = gdk_bitmap_create_from_data(p->top->window, cursor_pipette_gray, CURSOR_PIPETTE_WIDTH, CURSOR_PIPETTE_HEIGHT);
+ mask = gdk_bitmap_create_from_data(p->top->window, cursor_pipette_mask, CURSOR_PIPETTE_WIDTH, CURSOR_PIPETTE_HEIGHT);
+
+ fg.red = 0;
+ fg.green = 0;
+ fg.blue = 0;
+
+ bg.red = 65535;
+ bg.green = 65535;
+ bg.blue = 65535;
+
+ cursor = gdk_cursor_new_from_pixmap(pixmap, mask, &fg, &bg, CURSOR_PIPETTE_HOT_X, CURSOR_PIPETTE_HOT_Y);
+
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = -1;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_pipette_black(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+ GdkCursor *cursor;
+ GdkColor fg;
+ GdkColor bg;
+ GdkPixmap *pixmap;
+ GdkPixmap *mask;
+
+ DBG(DBG_proc, "preview_pipette_black\n");
+
+ p->mode = MODE_PIPETTE_BLACK;
+
+ pixmap = gdk_bitmap_create_from_data(p->top->window, cursor_pipette_black, CURSOR_PIPETTE_WIDTH, CURSOR_PIPETTE_HEIGHT);
+ mask = gdk_bitmap_create_from_data(p->top->window, cursor_pipette_mask , CURSOR_PIPETTE_WIDTH, CURSOR_PIPETTE_HEIGHT);
+
+ fg.red = 0;
+ fg.green = 0;
+ fg.blue = 0;
+
+ bg.red = 65535;
+ bg.green = 65535;
+ bg.blue = 65535;
+
+ cursor = gdk_cursor_new_from_pixmap(pixmap, mask, &fg, &bg, CURSOR_PIPETTE_HOT_X, CURSOR_PIPETTE_HOT_Y);
+
+ gdk_window_set_cursor(p->window->window, cursor);
+ gdk_cursor_destroy(cursor);
+ p->cursornr = -1;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_select_full_preview_area(Preview *p)
+{
+ int i;
+
+ DBG(DBG_proc, "preview_select_full_preview_area\n");
+
+ p->selection.active = TRUE;
+
+ for (i=0; i<4; i++)
+ {
+ p->selection.coordinate[i] = p->surface[i];
+ }
+
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+ preview_establish_selection(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_full_preview_area_callback(GtkWidget *widget, gpointer call_data)
+{
+ Preview *p = call_data;
+
+ DBG(DBG_proc, "preview_full_preview_area_callback\n");
+
+ preview_select_full_preview_area(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_delete_images_callback(GtkWidget *widget, gpointer call_data)
+{
+ Preview *p = call_data;
+
+ DBG(DBG_proc, "preview_delete_images_callback\n");
+
+ preview_delete_images(p);
+ p->invalid = TRUE;
+ preview_display_valid(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_preset_area_entry_rename;
+
+static void xsane_preset_area_entry_rename_button_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_preset_area_entry_rename\n");
+
+ xsane_preset_area_entry_rename = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_preset_area_rename_callback(GtkWidget *widget, GtkWidget *preset_area_widget)
+{
+ int selection;
+ char *oldname;
+ char *newname;
+ Preview *p;
+ GtkWidget *rename_dialog;
+ GtkWidget *text;
+ GtkWidget *button;
+ GtkWidget *vbox, *hbox;
+ GtkWidget *old_preset_area_menu;
+ char buf[256];
+ int old_selection;
+
+
+ DBG(DBG_proc, "preview_preset_area_rename_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Selection");
+ p = (Preview *) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Preview");
+
+ DBG(DBG_info ,"rename %s\n", preferences.preset_area[selection]->name);
+
+ old_preset_area_menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+ old_selection = (int) gtk_object_get_data(GTK_OBJECT(gtk_menu_get_active(GTK_MENU(old_preset_area_menu))), "Selection");
+
+ gtk_menu_popdown(GTK_MENU(old_preset_area_menu));
+ /* set menu in correct state, is a bit strange this way but I do not have a better idea */
+ gtk_option_menu_set_history(GTK_OPTION_MENU(p->preset_area_option_menu), old_selection);
+
+ oldname = strdup(preferences.preset_area[selection]->name);
+
+ rename_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ xsane_set_window_icon(rename_dialog, 0);
+
+ /* set rename dialog */
+ gtk_window_set_position(GTK_WINDOW(rename_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(rename_dialog), FALSE, FALSE, FALSE);
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_PRESET_AREA_RENAME);
+ gtk_window_set_title(GTK_WINDOW(rename_dialog), buf);
+ gtk_signal_connect(GTK_OBJECT(rename_dialog), "delete_event", (GtkSignalFunc) xsane_preset_area_entry_rename_button_callback, (void *) -1);
+ gtk_widget_show(rename_dialog);
+
+ /* set the main vbox */
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
+ gtk_container_add(GTK_CONTAINER(rename_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(vbox, 2);
+ gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ text = gtk_entry_new_with_max_length(64);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRESET_AREA_NAME);
+ gtk_entry_set_text(GTK_ENTRY(text), oldname);
+ gtk_widget_set_usize(text, 300, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), text, TRUE, TRUE, 4);
+ gtk_widget_show(text);
+
+
+ button = gtk_button_new_with_label("OK");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_preset_area_entry_rename_button_callback, (void *) 1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label("Cancel");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_preset_area_entry_rename_button_callback, (void *) -1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ xsane_preset_area_entry_rename = 0;
+
+ while (xsane_preset_area_entry_rename == 0)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "preview_preset_area_rename_callback: calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+
+ newname = strdup(gtk_entry_get_text(GTK_ENTRY(text)));
+
+ if (xsane_preset_area_entry_rename == 1) /* OK button has been pressed */
+ {
+ gtk_option_menu_remove_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+
+ if (GTK_IS_WIDGET(old_preset_area_menu)) /* the menu normally is closed when we come here */
+ {
+ gtk_widget_destroy(old_preset_area_menu);
+ }
+
+ free(preferences.preset_area[selection]->name);
+ preferences.preset_area[selection]->name = strdup(newname);
+ DBG(DBG_info, "renaming %s to %s\n", oldname, newname);
+
+ preview_create_preset_area_menu(p, old_selection);
+ }
+
+ free(oldname);
+ free(newname);
+
+ gtk_widget_destroy(rename_dialog);
+
+ xsane_set_sensitivity(TRUE);
+
+ return TRUE; /* event is handled */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_preset_area_add_callback(GtkWidget *widget, GtkWidget *preset_area_widget)
+{
+ int selection, i, old_selection = 0;
+ Preview *p;
+ GtkWidget *old_preset_area_menu;
+
+ DBG(DBG_proc, "preview_preset_area_add_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Selection");
+ p = (Preview *) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Preview");
+
+ if (selection < preferences.preset_area_definitions)
+ {
+ char buf[256];
+ float coord[4];
+
+ preferences.preset_area = realloc(preferences.preset_area, (preferences.preset_area_definitions+1) * sizeof(void *));
+
+ /* shift all items after selection */
+ for (i = preferences.preset_area_definitions-1; i > selection; i--)
+ {
+ preferences.preset_area[i+1] = preferences.preset_area[i];
+ }
+
+ /* insert new item behind selected item, name is size in mm */
+ preview_rotate_previewsurface_to_devicesurface(p->rotation, p->selection.coordinate, coord);
+ snprintf(buf, sizeof(buf), "%d mm x %d mm", (int) (coord[2]-coord[0]), (int) (coord[3]-coord[1]));
+ preferences.preset_area[selection+1] = calloc(sizeof(Preferences_preset_area_t), 1);
+ preferences.preset_area[selection+1]->name = strdup(buf);
+ preferences.preset_area[selection+1]->xoffset = coord[0];
+ preferences.preset_area[selection+1]->yoffset = coord[1];
+ preferences.preset_area[selection+1]->width = coord[2] - coord[0];
+ preferences.preset_area[selection+1]->height = coord[3] - coord[1];
+
+ DBG(DBG_proc, "added %s\n", buf);
+
+ preferences.preset_area_definitions++;
+
+ old_preset_area_menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+
+ gtk_option_menu_remove_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+ old_selection = (int) gtk_object_get_data(GTK_OBJECT(gtk_menu_get_active(GTK_MENU(old_preset_area_menu))), "Selection");
+
+ if (old_selection > selection) /* we are moving the selected surface */
+ {
+ old_selection++;
+ }
+
+ gtk_widget_destroy(old_preset_area_menu);
+
+ preview_create_preset_area_menu(p, old_selection);
+ }
+
+ return TRUE; /* event is handled */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_preset_area_delete_callback(GtkWidget *widget, GtkWidget *preset_area_widget)
+{
+ int selection, i, old_selection = 0;
+ Preview *p;
+ GtkWidget *old_preset_area_menu;
+
+ DBG(DBG_proc, "preview_preset_area_delete_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Selection");
+ p = (Preview *) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Preview");
+
+
+ if (selection) /* full size can not be deleted */
+ {
+ DBG(DBG_info ,"deleting %s\n", preferences.preset_area[selection]->name);
+
+ free(preferences.preset_area[selection]);
+
+ for (i=selection; i<preferences.preset_area_definitions-1; i++)
+ {
+ preferences.preset_area[i] = preferences.preset_area[i+1];
+ }
+
+ preferences.preset_area_definitions--;
+
+ old_preset_area_menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+
+ gtk_option_menu_remove_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+ old_selection = (int) gtk_object_get_data(GTK_OBJECT(gtk_menu_get_active(GTK_MENU(old_preset_area_menu))), "Selection");
+
+ if (old_selection == selection) /* we are deleting the selected surface */
+ {
+ old_selection = 0;
+ }
+ else if (old_selection > selection) /* we are deleting the selected surface */
+ {
+ old_selection--;
+ }
+
+ gtk_widget_destroy(old_preset_area_menu);
+
+ preview_create_preset_area_menu(p, old_selection); /* build menu and set default to 0=full size */
+ }
+
+ return TRUE; /* event is handled */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_preset_area_move_up_callback(GtkWidget *widget, GtkWidget *preset_area_widget)
+{
+ int selection, old_selection = 0;
+ Preview *p;
+ GtkWidget *old_preset_area_menu;
+
+ DBG(DBG_proc, "preview_preset_area_move_up_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Selection");
+ p = (Preview *) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Preview");
+
+ if (selection > 1) /* make sure "full area" stays at top */
+ {
+ Preferences_preset_area_t *help_area;
+
+ DBG(DBG_info ,"moving up %s\n", preferences.preset_area[selection]->name);
+
+ help_area = preferences.preset_area[selection-1];
+ preferences.preset_area[selection-1] = preferences.preset_area[selection];
+ preferences.preset_area[selection] = help_area;
+
+ old_preset_area_menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+
+ gtk_option_menu_remove_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+ old_selection = (int) gtk_object_get_data(GTK_OBJECT(gtk_menu_get_active(GTK_MENU(old_preset_area_menu))), "Selection");
+
+ if (old_selection == selection)
+ {
+ old_selection--;
+ }
+ else if (old_selection == selection-1)
+ {
+ old_selection++;
+ }
+
+ gtk_widget_destroy(old_preset_area_menu);
+
+ preview_create_preset_area_menu(p, old_selection); /* build menu and set default to 0=full size */
+ }
+
+ return TRUE; /* event is handled */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_preset_area_move_down_callback(GtkWidget *widget, GtkWidget *preset_area_widget)
+{
+ int selection, old_selection = 0;
+ Preview *p;
+ GtkWidget *old_preset_area_menu;
+
+ DBG(DBG_proc, "preview_preset_area_move_down_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Selection");
+ p = (Preview *) gtk_object_get_data(GTK_OBJECT(preset_area_widget), "Preview");
+
+ /* full size can not moved down */
+ if ((selection) && (selection < preferences.preset_area_definitions-1))
+ {
+ Preferences_preset_area_t *help_area;
+
+ DBG(DBG_info ,"moving down %s\n", preferences.preset_area[selection]->name);
+
+ help_area = preferences.preset_area[selection];
+ preferences.preset_area[selection] = preferences.preset_area[selection+1];
+ preferences.preset_area[selection+1] = help_area;
+
+ old_preset_area_menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+
+ gtk_option_menu_remove_menu(GTK_OPTION_MENU(p->preset_area_option_menu));
+ old_selection = (int) gtk_object_get_data(GTK_OBJECT(gtk_menu_get_active(GTK_MENU(old_preset_area_menu))), "Selection");
+
+ if (old_selection == selection)
+ {
+ old_selection++;
+ }
+ else if (old_selection == selection+1)
+ {
+ old_selection--;
+ }
+
+ gtk_widget_destroy(old_preset_area_menu);
+
+ preview_create_preset_area_menu(p, old_selection); /* build menu and set default to 0=full size */
+ }
+
+ return TRUE; /* event is handled */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint preview_preset_area_context_menu_callback(GtkWidget *widget, GdkEvent *event)
+{
+ GtkWidget *menu;
+ GtkWidget *menu_item;
+ GdkEventButton *event_button;
+ int selection;
+
+ DBG(DBG_proc, "preview_preset_area_context_menu_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(widget), "Selection");
+
+ if (event->type == GDK_BUTTON_PRESS)
+ {
+ event_button = (GdkEventButton *) event;
+
+ if (event_button->button == 3)
+ {
+ menu = gtk_menu_new();
+
+ /** add selection */
+ menu_item = gtk_menu_item_new_with_label(MENU_ITEM_PRESET_AREA_ADD_SEL);
+ gtk_widget_show(menu_item);
+ gtk_container_add(GTK_CONTAINER(menu), menu_item);
+ gtk_signal_connect(GTK_OBJECT(menu_item), "activate", (GtkSignalFunc) preview_preset_area_add_callback, widget);
+
+ /* rename preset area */
+ menu_item = gtk_menu_item_new_with_label(MENU_ITEM_PRESET_AREA_RENAME);
+ gtk_widget_show(menu_item);
+ gtk_container_add(GTK_CONTAINER(menu), menu_item);
+ gtk_signal_connect(GTK_OBJECT(menu_item), "activate", (GtkSignalFunc) preview_preset_area_rename_callback, widget);
+
+ if (selection) /* not available for "full area" */
+ {
+ /* delete preset area */
+ menu_item = gtk_menu_item_new_with_label(MENU_ITEM_PRESET_AREA_DELETE);
+ gtk_widget_show(menu_item);
+ gtk_container_add(GTK_CONTAINER(menu), menu_item);
+ gtk_signal_connect(GTK_OBJECT(menu_item), "activate", (GtkSignalFunc) preview_preset_area_delete_callback, widget);
+ }
+
+ if (selection>1) /* available from 3rd item */
+ {
+ /* move up */
+ menu_item = gtk_menu_item_new_with_label(MENU_OTEM_PRESET_AREA_MOVE_UP);
+ gtk_widget_show(menu_item);
+ gtk_container_add(GTK_CONTAINER(menu), menu_item);
+ gtk_signal_connect(GTK_OBJECT(menu_item), "activate", (GtkSignalFunc) preview_preset_area_move_up_callback, widget);
+ }
+
+ if ((selection) && (selection < preferences.preset_area_definitions-1))
+ {
+ /* move down */
+ menu_item = gtk_menu_item_new_with_label(MENU_OTEM_PRESET_AREA_MOVE_DWN);
+ gtk_widget_show(menu_item);
+ gtk_container_add(GTK_CONTAINER(menu), menu_item);
+ gtk_signal_connect(GTK_OBJECT(menu_item), "activate", (GtkSignalFunc) preview_preset_area_move_down_callback, widget);
+ }
+
+ gtk_widget_show(menu);
+ gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, event_button->button, event_button->time);
+
+ return TRUE; /* event is handled */
+ }
+ }
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_preset_area_callback(GtkWidget *widget, gpointer call_data)
+{
+ Preview *p = call_data;
+ int selection;
+
+ DBG(DBG_proc, "preview_preset_area_callback\n");
+
+ selection = (int) gtk_object_get_data(GTK_OBJECT(widget), "Selection");
+
+ p->preset_surface[0] = preferences.preset_area[selection]->xoffset;
+ p->preset_surface[1] = preferences.preset_area[selection]->yoffset;
+ p->preset_surface[2] = preferences.preset_area[selection]->xoffset + preferences.preset_area[selection]->width;
+ p->preset_surface[3] = preferences.preset_area[selection]->yoffset + preferences.preset_area[selection]->height;
+
+ gtk_widget_set_sensitive(p->zoom_not, TRUE); /* allow unzoom */
+ gtk_widget_set_sensitive(p->zoom_undo, FALSE); /* forbid undo zoom */
+
+ preview_update_surface(p, 0);
+ preview_zoom_not(NULL, p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_rotation_callback(GtkWidget *widget, gpointer call_data)
+{
+ Preview *p = call_data;
+ float rotated_surface[4];
+ int rot;
+
+ DBG(DBG_proc, "preview_rotation_callback\n");
+
+ rot = (int) gtk_object_get_data(GTK_OBJECT(widget), "Selection");
+
+ switch (rot)
+ {
+ case 0: /* 0 degree */
+ default:
+ p->index_xmin = 0;
+ p->index_xmax = 2;
+ p->index_ymin = 1;
+ p->index_ymax = 3;
+ break;
+
+ case 1: /* 90 degree */
+ p->index_xmin = 2;
+ p->index_xmax = 0;
+ p->index_ymin = 1;
+ p->index_ymax = 3;
+ break;
+
+ case 2: /* 180 degree */
+ p->index_xmin = 2;
+ p->index_xmax = 0;
+ p->index_ymin = 3;
+ p->index_ymax = 1;
+ break;
+
+ case 3: /* 270 degree */
+ p->index_xmin = 0;
+ p->index_xmax = 2;
+ p->index_ymin = 3;
+ p->index_ymax = 1;
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ p->index_xmin = 2;
+ p->index_xmax = 0;
+ p->index_ymin = 1;
+ p->index_ymax = 3;
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ p->index_xmin = 0;
+ p->index_xmax = 2;
+ p->index_ymin = 1;
+ p->index_ymax = 3;
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ p->index_xmin = 0;
+ p->index_xmax = 2;
+ p->index_ymin = 3;
+ p->index_ymax = 1;
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ p->index_xmin = 2;
+ p->index_xmax = 0;
+ p->index_ymin = 3;
+ p->index_ymax = 1;
+ }
+
+ /* at first undo mirror function, this is necessary because order does matter */
+ if (p->rotation & 4)
+ {
+ rotated_surface[0] = p->surface[0];
+ rotated_surface[1] = p->surface[1];
+ rotated_surface[2] = p->surface[2];
+ rotated_surface[3] = p->surface[3];
+ preview_rotate_devicesurface_to_previewsurface(4, rotated_surface, p->surface);
+ }
+
+ /* now rotate the selection area and do mirror function (can be done in one step) */
+ rotated_surface[0] = p->surface[0];
+ rotated_surface[1] = p->surface[1];
+ rotated_surface[2] = p->surface[2];
+ rotated_surface[3] = p->surface[3];
+ preview_rotate_devicesurface_to_previewsurface(( ( (rot & 3) - (p->rotation & 3) ) & 3 ) + /* rotation */ (rot & 4)/* x mirror */, rotated_surface, p->surface);
+
+ p->rotation = rot;
+
+ preview_update_selection(p); /* read selection from backend: correct rotation */
+ preview_update_surface(p, 2); /* rotate surfaces */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void preview_autoselect_scanarea_callback(GtkWidget *window, gpointer data)
+{
+ Preview *p=data;
+
+ preview_autoselect_scanarea(p, p->selection.coordinate); /* get autoselection coordinates */
+ preview_draw_selection(p);
+ preview_establish_selection(p);
+ xsane_update_histogram(TRUE /* update raw */); /* update histogram (necessary because overwritten by preview_update_surface */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_do_gamma_correction(Preview *p)
+{
+ int x,y;
+ int offset;
+ u_char *image_data_enhp;
+ guint16 *image_data_rawp;
+ int rotate = 16 - preview_gamma_input_bits;
+
+ DBG(DBG_proc, "preview_do_gamma_correction\n");
+
+ if ((p->image_data_raw) && (p->params.depth > 1) && (preview_gamma_data_red))
+ {
+ if ( (xsane.param.format == SANE_FRAME_RGB) || /* color preview */
+ (xsane.param.format == SANE_FRAME_RED) ||
+ (xsane.param.format == SANE_FRAME_GREEN) ||
+ (xsane.param.format == SANE_FRAME_BLUE) )
+ {
+ for (y=0; y < p->image_height; y++)
+ {
+ offset = 3 * (y * p->image_width);
+
+ image_data_rawp = p->image_data_raw + offset;
+ image_data_enhp = p->image_data_enh + offset;
+
+ for (x=0; x < p->image_width; x++)
+ {
+ *image_data_enhp++ = preview_gamma_data_red [(*image_data_rawp++) >> rotate];
+ *image_data_enhp++ = preview_gamma_data_green[(*image_data_rawp++) >> rotate];
+ *image_data_enhp++ = preview_gamma_data_blue [(*image_data_rawp++) >> rotate];
+ }
+
+ if (p->gamma_functions_interruptable)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "preview_do_gamma_correction: calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+ }
+ }
+ else /* grayscale preview */
+ {
+ int level;
+
+ for (y=0; y < p->image_height; y++)
+ {
+ offset = 3 * (y * p->image_width);
+
+ image_data_rawp = p->image_data_raw + offset;
+ image_data_enhp = p->image_data_enh + offset;
+
+ for (x=0; x < p->image_width; x++)
+ {
+ level = ((*image_data_rawp++) + (*image_data_rawp++) + (*image_data_rawp++)) / 3;
+ level >>= rotate;
+ *image_data_enhp++ = preview_gamma_data_red [level]; /* use 12 bit gamma table */
+ *image_data_enhp++ = preview_gamma_data_green[level];
+ *image_data_enhp++ = preview_gamma_data_blue [level];
+ }
+
+ if (p->gamma_functions_interruptable)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "preview_read_image_data (raw): calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+ }
+ }
+ }
+
+ if (p->image_data_enh)
+ {
+ preview_display_partial_image(p);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_calculate_raw_histogram(Preview *p, SANE_Int *count_raw, SANE_Int *count_raw_red, SANE_Int *count_raw_green, SANE_Int *count_raw_blue)
+{
+ int x, y;
+ int offset;
+ SANE_Int red_raw, green_raw, blue_raw;
+ SANE_Int min_x, max_x, min_y, max_y;
+ float xscale, yscale;
+ guint16 *image_data_rawp;
+
+ DBG(DBG_proc, "preview_calculate_raw_histogram\n");
+
+ preview_get_scale_device_to_image(p, &xscale, &yscale);
+
+ switch (p->rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ min_x = (p->selection.coordinate[0] - p->surface[0]) * xscale;
+ min_y = (p->selection.coordinate[1] - p->surface[1]) * yscale;
+ max_x = (p->selection.coordinate[2] - p->surface[0]) * xscale;
+ max_y = (p->selection.coordinate[3] - p->surface[1]) * yscale;
+ break;
+
+ case 1: /* 90 degree */
+ min_x = (p->selection.coordinate[1] - p->surface[1]) * xscale;
+ min_y = (p->selection.coordinate[2] - p->surface[2]) * xscale;
+ max_x = (p->selection.coordinate[3] - p->surface[1]) * xscale;
+ max_y = (p->selection.coordinate[0] - p->surface[2]) * xscale;
+ break;
+
+ case 2: /* 180 degree */
+ min_x = (p->selection.coordinate[2] - p->surface[2]) * xscale;
+ min_y = (p->selection.coordinate[3] - p->surface[3]) * yscale;
+ max_x = (p->selection.coordinate[0] - p->surface[2]) * xscale;
+ max_y = (p->selection.coordinate[1] - p->surface[3]) * yscale;
+ break;
+
+ case 3: /* 270 degree */
+ min_x = (p->selection.coordinate[3] - p->surface[3]) * xscale;
+ min_y = (p->selection.coordinate[0] - p->surface[0]) * yscale;
+ max_x = (p->selection.coordinate[1] - p->surface[3]) * xscale;
+ max_y = (p->selection.coordinate[2] - p->surface[0]) * yscale;
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ min_x = (p->selection.coordinate[2] - p->surface[2]) * xscale;
+ min_y = (p->selection.coordinate[1] - p->surface[1]) * yscale;
+ max_x = (p->selection.coordinate[0] - p->surface[2]) * xscale;
+ max_y = (p->selection.coordinate[3] - p->surface[1]) * yscale;
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ min_x = (p->selection.coordinate[1] - p->surface[1]) * xscale;
+ min_y = (p->selection.coordinate[0] - p->surface[0]) * yscale;
+ max_x = (p->selection.coordinate[3] - p->surface[1]) * xscale;
+ max_y = (p->selection.coordinate[2] - p->surface[0]) * yscale;
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ min_x = (p->selection.coordinate[0] - p->surface[0]) * xscale;
+ min_y = (p->selection.coordinate[3] - p->surface[3]) * yscale;
+ max_x = (p->selection.coordinate[2] - p->surface[0]) * xscale;
+ max_y = (p->selection.coordinate[1] - p->surface[3]) * yscale;
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ min_x = (p->selection.coordinate[3] - p->surface[3]) * xscale;
+ min_y = (p->selection.coordinate[2] - p->surface[2]) * yscale;
+ max_x = (p->selection.coordinate[1] - p->surface[3]) * xscale;
+ max_y = (p->selection.coordinate[0] - p->surface[2]) * yscale;
+ break;
+ }
+
+ if (min_x < 0)
+ {
+ min_x = 0;
+ }
+
+ if (max_x >= p->image_width)
+ {
+ max_x = p->image_width-1;
+ }
+
+ if (min_y < 0)
+ {
+ min_y = 0;
+ }
+
+ if (max_y >= p->image_height)
+ {
+ max_y = p->image_height-1;
+ }
+
+ if ((p->image_data_raw) && (p->params.depth > 1) && (preview_gamma_data_red))
+ {
+ for (y = min_y; y <= max_y; y++)
+ {
+ offset = 3 * (y * p->image_width + min_x);
+ image_data_rawp = p->image_data_raw + offset;
+
+ if (!histogram_medium_gamma_data_red) /* no medium gamma table for histogran */
+ {
+ for (x = min_x; x <= max_x; x++)
+ {
+ red_raw = (*image_data_rawp++) >> 8; /* reduce from 16 to 8 bits */
+ green_raw = (*image_data_rawp++) >> 8;
+ blue_raw = (*image_data_rawp++) >> 8;
+
+ count_raw [(u_char) ((red_raw + green_raw + blue_raw)/3)]++;
+ count_raw_red [red_raw]++;
+ count_raw_green[green_raw]++;
+ count_raw_blue [blue_raw]++;
+ }
+ }
+ else /* use medium gamma table for raw histogram */
+ {
+ int rotate = 16 - preview_gamma_input_bits;
+
+ for (x = min_x; x <= max_x; x++)
+ {
+ red_raw = histogram_medium_gamma_data_red [(*image_data_rawp++) >> rotate];
+ green_raw = histogram_medium_gamma_data_green[(*image_data_rawp++) >> rotate];
+ blue_raw = histogram_medium_gamma_data_blue [(*image_data_rawp++) >> rotate];
+
+ count_raw [(u_char) ((red_raw + green_raw + blue_raw)/3)]++;
+ count_raw_red [red_raw]++;
+ count_raw_green[green_raw]++;
+ count_raw_blue [blue_raw]++;
+ }
+ }
+
+ if (p->gamma_functions_interruptable)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "preview_calculate_raw_histogram: calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+ }
+ }
+ else /* no preview image => all colors = 1 */
+ {
+ int i;
+
+ for (i = 1; i <= 254; i++)
+ {
+ count_raw [i] = 0;
+ count_raw_red [i] = 0;
+ count_raw_green[i] = 0;
+ count_raw_blue [i] = 0;
+ }
+
+ count_raw [0] = 10;
+ count_raw_red [0] = 10;
+ count_raw_green[0] = 10;
+ count_raw_blue [0] = 10;
+
+ count_raw [255] = 10;
+ count_raw_red [255] = 10;
+ count_raw_green[255] = 10;
+ count_raw_blue [255] = 10;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_calculate_enh_histogram(Preview *p, SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue)
+{
+ int x, y;
+ int offset;
+ u_char red, green, blue;
+ SANE_Int min_x, max_x, min_y, max_y;
+ float xscale, yscale;
+ guint16 *image_data_rawp;
+ int rotate = 16 - preview_gamma_input_bits;
+
+ DBG(DBG_proc, "preview_calculate_enh_histogram\n");
+
+ preview_get_scale_device_to_image(p, &xscale, &yscale);
+
+ switch (p->rotation)
+ {
+ case 0: /* 0 degree */
+ default:
+ min_x = (p->selection.coordinate[0] - p->surface[0]) * xscale;
+ min_y = (p->selection.coordinate[1] - p->surface[1]) * yscale;
+ max_x = (p->selection.coordinate[2] - p->surface[0]) * xscale;
+ max_y = (p->selection.coordinate[3] - p->surface[1]) * yscale;
+ break;
+
+ case 1: /* 90 degree */
+ min_x = (p->selection.coordinate[1] - p->surface[1]) * xscale;
+ min_y = (p->selection.coordinate[2] - p->surface[2]) * xscale;
+ max_x = (p->selection.coordinate[3] - p->surface[1]) * xscale;
+ max_y = (p->selection.coordinate[0] - p->surface[2]) * xscale;
+ break;
+
+ case 2: /* 180 degree */
+ min_x = (p->selection.coordinate[2] - p->surface[2]) * xscale;
+ min_y = (p->selection.coordinate[3] - p->surface[3]) * yscale;
+ max_x = (p->selection.coordinate[0] - p->surface[2]) * xscale;
+ max_y = (p->selection.coordinate[1] - p->surface[3]) * yscale;
+ break;
+
+ case 3: /* 270 degree */
+ min_x = (p->selection.coordinate[3] - p->surface[3]) * xscale;
+ min_y = (p->selection.coordinate[0] - p->surface[0]) * yscale;
+ max_x = (p->selection.coordinate[1] - p->surface[3]) * xscale;
+ max_y = (p->selection.coordinate[2] - p->surface[0]) * yscale;
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ min_x = (p->selection.coordinate[2] - p->surface[2]) * xscale;
+ min_y = (p->selection.coordinate[1] - p->surface[1]) * yscale;
+ max_x = (p->selection.coordinate[0] - p->surface[2]) * xscale;
+ max_y = (p->selection.coordinate[3] - p->surface[1]) * yscale;
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ min_x = (p->selection.coordinate[1] - p->surface[1]) * xscale;
+ min_y = (p->selection.coordinate[0] - p->surface[0]) * yscale;
+ max_x = (p->selection.coordinate[3] - p->surface[1]) * xscale;
+ max_y = (p->selection.coordinate[2] - p->surface[0]) * yscale;
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ min_x = (p->selection.coordinate[0] - p->surface[0]) * xscale;
+ min_y = (p->selection.coordinate[3] - p->surface[3]) * yscale;
+ max_x = (p->selection.coordinate[2] - p->surface[0]) * xscale;
+ max_y = (p->selection.coordinate[1] - p->surface[3]) * yscale;
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ min_x = (p->selection.coordinate[3] - p->surface[3]) * xscale;
+ min_y = (p->selection.coordinate[2] - p->surface[2]) * yscale;
+ max_x = (p->selection.coordinate[1] - p->surface[3]) * xscale;
+ max_y = (p->selection.coordinate[0] - p->surface[2]) * yscale;
+ break;
+ }
+
+ if (min_x < 0)
+ {
+ min_x = 0;
+ }
+
+ if (max_x >= p->image_width)
+ {
+ max_x = p->image_width-1;
+ }
+
+ if (min_y < 0)
+ {
+ min_y = 0;
+ }
+
+ if (max_y >= p->image_height)
+ {
+ max_y = p->image_height-1;
+ }
+
+ if ((p->image_data_raw) && (p->params.depth > 1) && (preview_gamma_data_red))
+ {
+ for (y = min_y; y <= max_y; y++)
+ {
+ offset = 3 * (y * p->image_width + min_x);
+ image_data_rawp = p->image_data_raw + offset;
+
+ for (x = min_x; x <= max_x; x++)
+ {
+ red = histogram_gamma_data_red [(*image_data_rawp++) >> rotate];
+ green = histogram_gamma_data_green[(*image_data_rawp++) >> rotate];
+ blue = histogram_gamma_data_blue [(*image_data_rawp++) >> rotate];
+
+ count [(u_char) ((red + green + blue)/3)]++;
+ count_red [red]++;
+ count_green[green]++;
+ count_blue [blue]++;
+ }
+
+ if (p->gamma_functions_interruptable)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "preview_calculate_enh_histogram: calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+ }
+ }
+ else /* no preview image => all colors = 1 */
+ {
+ int i;
+
+ for (i = 1; i <= 254; i++)
+ {
+ count [i] = 0;
+ count_red [i] = 0;
+ count_green[i] = 0;
+ count_blue [i] = 0;
+ }
+
+ count [0] = 10;
+ count_red [0] = 10;
+ count_green[0] = 10;
+ count_blue [0] = 10;
+
+ count [255] = 10;
+ count_red [255] = 10;
+ count_green[255] = 10;
+ count_blue [255] = 10;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_gamma_correction(Preview *p, int gamma_input_bits,
+ u_char *gamma_red, u_char *gamma_green, u_char *gamma_blue,
+ u_char *gamma_red_hist, u_char *gamma_green_hist, u_char *gamma_blue_hist,
+ u_char *medium_gamma_red_hist, u_char *medium_gamma_green_hist, u_char *medium_gamma_blue_hist)
+{
+ DBG(DBG_proc, "preview_gamma_correction\n");
+
+ preview_gamma_data_red = gamma_red;
+ preview_gamma_data_green = gamma_green;
+ preview_gamma_data_blue = gamma_blue;
+
+ histogram_gamma_data_red = gamma_red_hist;
+ histogram_gamma_data_green = gamma_green_hist;
+ histogram_gamma_data_blue = gamma_blue_hist;
+
+ histogram_medium_gamma_data_red = medium_gamma_red_hist;
+ histogram_medium_gamma_data_green = medium_gamma_green_hist;
+ histogram_medium_gamma_data_blue = medium_gamma_blue_hist;
+
+ preview_gamma_input_bits = gamma_input_bits;
+
+ preview_do_gamma_correction(p);
+ preview_draw_selection(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_area_resize(Preview *p)
+{
+ float min_x, max_x, delta_x;
+ float min_y, max_y, delta_y;
+ float xscale, yscale;
+
+ DBG(DBG_proc, "preview_area_resize\n");
+
+ p->preview_window_width = p->window->allocation.width;
+ p->preview_window_height = p->window->allocation.height;
+
+ p->preview_width = p->window->allocation.width;
+ p->preview_height = p->window->allocation.height;
+
+ preview_area_correct(p); /* set preview dimensions (with right aspect) that it fits into the window */
+
+ if (p->preview_row) /* make sure preview_row is large enough for one line of the new size */
+ {
+ p->preview_row = realloc(p->preview_row, 3 * p->preview_window_width);
+ }
+ else
+ {
+ p->preview_row = malloc(3 * p->preview_window_width);
+ }
+
+ /* set the ruler ranges: */
+
+ min_x = p->surface[xsane_back_gtk_TL_X];
+ max_x = p->surface[xsane_back_gtk_BR_X];
+ min_y = p->surface[xsane_back_gtk_TL_Y];
+ max_y = p->surface[xsane_back_gtk_BR_Y];
+
+
+ if (min_x <= -INF)
+ {
+ min_x = 0.0;
+ }
+ if (min_x >= INF)
+ {
+ min_x = p->image_width - 1;
+ }
+
+ if (max_x <= -INF)
+ {
+ max_x = 0.0;
+ }
+ if (max_x >= INF)
+ {
+ max_x = p->image_width - 1;
+ }
+
+ if (min_y <= -INF)
+ {
+ min_y = 0.0;
+ }
+ if (min_y >= INF)
+ {
+ min_y = p->image_height - 1;
+ }
+
+ if (max_y <= -INF)
+ {
+ max_y = 0.0;
+ }
+ if (max_y >= INF)
+ {
+ max_y = p->image_height - 1;
+ }
+
+ /* convert mm to inches if that's what the user wants: */
+
+ if (p->surface_unit == SANE_UNIT_MM)
+ {
+ double factor = 1.0/preferences.length_unit;
+
+ min_x *= factor;
+ max_x *= factor;
+ min_y *= factor;
+ max_y *= factor;
+ }
+
+ preview_get_scale_window_to_image(p, &xscale, &yscale);
+
+ delta_x = max_x - min_x;
+
+ gtk_ruler_set_range(GTK_RULER(p->hruler), min_x, min_x + delta_x*p->preview_window_width/p->preview_width, min_x, /* max_size */ 20);
+
+ delta_y = max_y - min_y;
+
+ gtk_ruler_set_range(GTK_RULER(p->vruler), min_y, min_y + delta_y*p->preview_window_height/p->preview_height, min_y, /* max_size */ 20);
+
+ gtk_label_set_text(GTK_LABEL(p->unit_label), xsane_back_gtk_unit_string(p->surface_unit));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+gint preview_area_resize_handler(GtkWidget *widget, GdkEvent *event, gpointer data)
+{
+ Preview *p = (Preview *) data;
+ DBG(DBG_proc, "preview_area_resize_handler\n");
+
+ preview_area_resize(p);
+ preview_paint_image(p);
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#if 0
+void preview_update_maximum_output_size(Preview *p)
+{
+ DBG(DBG_proc, "preview_update_maximum_output_size\n");
+
+ if ( (p->maximum_output_width >= INF) || (p->maximum_output_height >= INF) )
+ {
+ if (p->selection_maximum.active)
+ {
+ p->selection_maximum.active = FALSE;
+ }
+ }
+ else
+ {
+ p->previous_selection_maximum = p->selection_maximum;
+
+ p->selection_maximum.active = TRUE;
+ p->selection_maximum.coordinate[0] = (p->selection.coordinate[0] + p->selection.coordinate[2] - p->maximum_output_width )/2.0;
+ p->selection_maximum.coordinate[1] = (p->selection.coordinate[1] + p->selection.coordinate[3] - p->maximum_output_height)/2.0;
+ p->selection_maximum.coordinate[2] = (p->selection.coordinate[0] + p->selection.coordinate[2] + p->maximum_output_width )/2.0;
+ p->selection_maximum.coordinate[3] = (p->selection.coordinate[1] + p->selection.coordinate[3] + p->maximum_output_height)/2.0;
+
+ if (p->selection_maximum.coordinate[0] < p->max_scanner_surface[0])
+ {
+ p->selection_maximum.coordinate[0] = p->max_scanner_surface[0];
+ }
+
+ if (p->selection_maximum.coordinate[1] < p->max_scanner_surface[1])
+ {
+ p->selection_maximum.coordinate[1] = p->max_scanner_surface[1];
+ }
+
+ if (p->selection_maximum.coordinate[2] > p->max_scanner_surface[2])
+ {
+ p->selection_maximum.coordinate[2] = p->max_scanner_surface[2];
+ }
+
+ if (p->selection_maximum.coordinate[3] > p->max_scanner_surface[3])
+ {
+ p->selection_maximum.coordinate[3] = p->max_scanner_surface[3];
+ }
+
+ if ( (p->selection.coordinate[0] < p->selection_maximum.coordinate[0]) ||
+ (p->selection.coordinate[1] < p->selection_maximum.coordinate[1]) ||
+ (p->selection.coordinate[2] > p->selection_maximum.coordinate[2]) ||
+ (p->selection.coordinate[3] > p->selection_maximum.coordinate[3]) )
+ {
+ if (p->selection.coordinate[0] < p->selection_maximum.coordinate[0])
+ {
+ p->selection.coordinate[0] = p->selection_maximum.coordinate[0];
+ }
+
+ if (p->selection.coordinate[1] < p->selection_maximum.coordinate[1])
+ {
+ p->selection.coordinate[1] = p->selection_maximum.coordinate[1];
+ }
+
+ if (p->selection.coordinate[2] > p->selection_maximum.coordinate[2])
+ {
+ p->selection.coordinate[2] = p->selection_maximum.coordinate[2];
+ }
+
+ if (p->selection.coordinate[3] > p->selection_maximum.coordinate[3])
+ {
+ p->selection.coordinate[3] = p->selection_maximum.coordinate[3];
+ }
+ preview_draw_selection(p);
+ preview_establish_selection(p);
+ }
+ }
+}
+#endif
+
+void preview_update_maximum_output_size(Preview *p)
+{
+ if ( (p->maximum_output_width >= INF) || (p->maximum_output_height >= INF) )
+ {
+ if (p->selection_maximum.active)
+ {
+ p->selection_maximum.active = FALSE;
+ }
+ }
+ else
+ {
+ p->previous_selection_maximum = p->selection_maximum;
+
+ p->selection_maximum.active = TRUE;
+ p->selection_maximum.coordinate[p->index_xmin] = p->selection.coordinate[p->index_xmin];
+ p->selection_maximum.coordinate[p->index_ymin] = p->selection.coordinate[p->index_ymin];
+ p->selection_maximum.coordinate[p->index_xmax] = p->selection.coordinate[p->index_xmin] + p->maximum_output_width;
+ p->selection_maximum.coordinate[p->index_ymax] = p->selection.coordinate[p->index_ymin] + p->maximum_output_height;
+
+ if (p->selection_maximum.coordinate[p->index_xmax] > p->max_scanner_surface[p->index_xmax])
+ {
+ p->selection_maximum.coordinate[p->index_xmax] = p->max_scanner_surface[p->index_xmax];
+ }
+
+ if (p->selection_maximum.coordinate[p->index_ymax] > p->max_scanner_surface[p->index_ymax])
+ {
+ p->selection_maximum.coordinate[p->index_ymax] = p->max_scanner_surface[p->index_ymax];
+ }
+
+ if ( (p->selection.coordinate[p->index_xmin] < p->selection_maximum.coordinate[p->index_xmin]) ||
+ (p->selection.coordinate[p->index_ymin] < p->selection_maximum.coordinate[p->index_ymin]) ||
+ (p->selection.coordinate[p->index_xmax] > p->selection_maximum.coordinate[p->index_xmax]) ||
+ (p->selection.coordinate[p->index_ymax] > p->selection_maximum.coordinate[p->index_ymax]) )
+ {
+ if (p->selection.coordinate[p->index_xmax] > p->selection_maximum.coordinate[p->index_xmax])
+ {
+ p->selection.coordinate[p->index_xmax] = p->selection_maximum.coordinate[p->index_xmax];
+ }
+
+ if (p->selection.coordinate[p->index_ymax] > p->selection_maximum.coordinate[p->index_ymax])
+ {
+ p->selection.coordinate[p->index_ymax] = p->selection_maximum.coordinate[p->index_ymax];
+ }
+ preview_draw_selection(p);
+ preview_establish_selection(p);
+ }
+ }
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_set_maximum_output_size(Preview *p, float width, float height)
+{
+ /* witdh and height in device units */
+ DBG(DBG_proc, "preview_set_maximum_output_size\n");
+
+ p->maximum_output_width = width;
+ p->maximum_output_height = height;
+
+ preview_update_maximum_output_size(p);
+ preview_draw_selection(p);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_autoselect_scanarea(Preview *p, float *autoselect_coord)
+{
+ int x, y;
+ int offset;
+ float color;
+ int top, bottom, left, right;
+ float xscale, yscale;
+ long bright_sum = 0;
+ int brightness;
+ int background_white;
+
+ DBG(DBG_proc, "preview_autoselect_scanarea\n");
+
+ /* try to find out background color */
+ /* add color values at the margins */
+ /* and see if it is more black or more white */
+
+ /* upper line */
+ for (x = 0; x < p->image_width; x++)
+ {
+ offset = 3 * x;
+ bright_sum += (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ }
+
+ /* lower line */
+ for (x = 0; x < p->image_width; x++)
+ {
+ offset = 3 * ( (p->image_height-1) * p->image_width + x);
+ bright_sum += (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ }
+
+ /* left line */
+ for (y = 0; y < p->image_height; y++)
+ {
+ offset = 3 * y * p->image_width;
+ bright_sum += (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ }
+
+ /* right line */
+ for (y = 0; y < p->image_height; y++)
+ {
+ offset = 3 * (y * p->image_width + p->image_width - 1);
+ bright_sum += (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ }
+
+ brightness = bright_sum / (2 * (p->image_width + p->image_height) );
+ DBG(DBG_info, "preview_autoselect_scanarea: average margin brightness is %d\n", brightness);
+
+ if ( brightness > 128 )
+ {
+ DBG(DBG_info, "preview_autoselect_scanarea: background is white\n");
+ background_white = 1;
+ }
+ else
+ {
+ DBG(DBG_info, "preview_autoselect_scanarea: background is black\n");
+ background_white = 0;
+ }
+
+
+ /* search top */
+ top = 0;
+ for (y = 0; y < p->image_height; y++)
+ {
+ for (x = 0; x < p->image_width; x++)
+ {
+ offset = 3 * (y * p->image_width + x);
+ color = (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ if (background_white)
+ {
+ if (color < 200)
+ {
+ top = y;
+ break;
+ }
+ }
+
+ else if (color > 55 )
+ {
+ top = y;
+ break;
+ }
+ }
+ if (top)
+ {
+ break;
+ }
+ }
+
+
+ /* search bottom */
+ bottom = 0;
+ for (y = p->image_height-1; y > top; y--)
+ {
+ for (x = 0; x < p->image_width; x++)
+ {
+ offset = 3 * (y * p->image_width + x);
+ color = (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ if (background_white)
+ {
+ if (color < 200)
+ {
+ bottom = y;
+ break;
+ }
+ }
+ else if (color > 55 )
+ {
+ bottom = y;
+ break;
+ }
+ }
+ if (bottom)
+ {
+ break;
+ }
+ }
+
+
+ /* search left */
+ left = 0;
+ for (x = 0; x < p->image_width; x++)
+ {
+ for (y = 0; y < p->image_height; y++)
+ {
+ offset = 3 * (y * p->image_width + x);
+ color = (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ if (background_white)
+ {
+ if (color < 200)
+ {
+ left = x;
+ break;
+ }
+ }
+ else if (color > 55 )
+ {
+ left = x;
+ break;
+ }
+ }
+ if (left)
+ {
+ break;
+ }
+ }
+
+
+ /* search right */
+ right = 0;
+ for (x = p->image_width-1; x > left; x--)
+ {
+ for (y = 0; y < p->image_height; y++)
+ {
+ offset = 3 * (y * p->image_width + x);
+ color = (p->image_data_enh[offset + 0] + p->image_data_enh[offset + 1] + p->image_data_enh[offset + 2]) / 3.0;
+ if (background_white)
+ {
+ if (color < 200)
+ {
+ right = x;
+ break;
+ }
+ }
+ else if (color > 55 )
+ {
+ right = x;
+ break;
+ }
+ }
+ if (right)
+ {
+ break;
+ }
+ }
+
+ preview_get_scale_device_to_image(p, &xscale, &yscale);
+
+ if (((p->rotation & 3) == 0) || ((p->rotation & 3) == 2)) /* 0 or 180 degree */
+ {
+ *(autoselect_coord+0) = p->image_surface[0] + left / xscale;
+ *(autoselect_coord+2) = p->image_surface[0] + right / xscale;
+ *(autoselect_coord+1) = p->image_surface[1] + top / yscale;
+ *(autoselect_coord+3) = p->image_surface[1] + bottom / yscale;
+ }
+ else /* 90 or 270 degree */
+ {
+ *(autoselect_coord+1) = p->image_surface[1] + left / xscale;
+ *(autoselect_coord+3) = p->image_surface[1] + right / xscale;
+ *(autoselect_coord+0) = p->image_surface[0] + top / yscale;
+ *(autoselect_coord+2) = p->image_surface[0] + bottom / yscale;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void preview_display_valid(Preview *p)
+{
+ DBG(DBG_proc, "preview_display_valid\n");
+
+ if (p->scanning)/* we are just scanning the preview */
+ {
+ DBG(DBG_info, "preview scanning\n");
+
+ gtk_widget_show(p->scanning_pixmap);
+ gtk_widget_hide(p->incomplete_pixmap);
+ gtk_widget_hide(p->valid_pixmap);
+ gtk_widget_hide(p->invalid_pixmap);
+ }
+ else if ((xsane.medium_changed) || (xsane.xsane_colors != p->preview_colors) || (p->invalid) ) /* preview is not valid */
+ {
+ DBG(DBG_info, "preview not vaild\n");
+
+ gtk_widget_show(p->invalid_pixmap);
+ gtk_widget_hide(p->scanning_pixmap);
+ gtk_widget_hide(p->incomplete_pixmap);
+ gtk_widget_hide(p->valid_pixmap);
+ }
+ else if (p->scan_incomplete)/* preview scan has been cancled */
+ {
+ DBG(DBG_info, "preview incomplete\n");
+
+ gtk_widget_show(p->incomplete_pixmap);
+ gtk_widget_hide(p->scanning_pixmap);
+ gtk_widget_hide(p->valid_pixmap);
+ gtk_widget_hide(p->invalid_pixmap);
+ }
+ else /* preview is valid */
+ {
+ DBG(DBG_info, "preview vaild\n");
+
+ gtk_widget_show(p->valid_pixmap);
+ gtk_widget_hide(p->scanning_pixmap);
+ gtk_widget_hide(p->incomplete_pixmap);
+ gtk_widget_hide(p->invalid_pixmap);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-preview.h b/src/xsane-preview.h
new file mode 100644
index 0000000..ba1321c
--- /dev/null
+++ b/src/xsane-preview.h
@@ -0,0 +1,202 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-preview.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+#ifndef xsanepreview_h
+#define xsanepreview_h
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+#include <sys/types.h>
+#include <sane/sane.h>
+
+#define SELECTION_RANGE_IN 4
+#define SELECTION_RANGE_OUT 8
+#define XSANE_CURSOR_PREVIEW GDK_LEFT_PTR
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+enum
+{
+ MODE_NORMAL,
+ MODE_PIPETTE_WHITE,
+ MODE_PIPETTE_GRAY,
+ MODE_PIPETTE_BLACK
+};
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+typedef struct Batch_selection
+{
+ float coordinate[4]; /* batch selection coordinate (device coord) */
+ struct Batch_selection *next;
+} Batch_selection;
+
+typedef struct
+{
+ int active;
+ float coordinate[4]; /* selection coordinate (device coord) */
+} Tselection;
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+typedef struct
+{
+ int mode;
+ int calibration;
+ int startimage;
+
+ int cursornr;
+
+ guint hold_timer;
+
+ char *filename[3]; /* filenames for preview level 0,1,2 */
+
+ SANE_Value_Type surface_type;
+ SANE_Unit surface_unit;
+ float orig_scanner_surface[4];/* the scanner defined corners of the scanner surface (device coords) */
+ float image_surface[4]; /* the corners of the surface (device coords) of the scanned image */
+ float max_scanner_surface[4]; /* rotated corners of the scanner surface (window coords) */
+ float preset_surface[4]; /* the corners of the reduced (by user) surface (window coords) */
+ float scanner_surface[4]; /* the user defined corners of the scanner surface (window coords) */
+ float surface[4]; /* the corners of the selected surface (window coords) */
+ float old_surface[4]; /* the corners of the old selected surface (window coords) */
+ float aspect; /* the aspect ratio of the scan surface */
+
+ float maximum_output_width; /* maximum output width (photocopy) */
+ float maximum_output_height; /* maximum output height (photocopy) */
+
+ int index_xmin, index_xmax, index_ymin, index_ymax; /* index numbers in dependance of p->rotation */
+
+ int saved_dpi_valid;
+ int saved_dpi_x_valid;
+ int saved_dpi_y_valid;
+ SANE_Word saved_dpi;
+ SANE_Word saved_dpi_x;
+ SANE_Word saved_dpi_y;
+ int saved_coord_valid[4];
+ SANE_Word saved_coord[4];
+ int saved_custom_gamma_valid;
+ SANE_Word saved_custom_gamma;
+ int saved_bit_depth_valid;
+ SANE_Word saved_bit_depth;
+ int saved_scanmode_valid;
+ char saved_scanmode[64]; /* I hope that is enough or we will get segaults or strange effects */
+
+ /* desired/user-selected preview-window size: */
+ int preview_width; /* used with for displaying the preview image */
+ int preview_height; /* used height for displaying the preview image */
+ int preview_window_width; /* width of the preview window */
+ int preview_window_height; /* height of the preview window */
+ u_char *preview_row;
+
+ int scanning;
+ int scan_incomplete;
+ int invalid;
+ int preview_colors;
+ time_t image_last_time_updated;
+ gint input_tag;
+ SANE_Parameters params;
+ int image_offset;
+ int image_x;
+ int image_y;
+ int image_width; /* width of preview image in pixels */
+ int image_height; /* height of preview image in pixel lines */
+ int rotation; /* rotation: 0=0, 1=90, 2=180, 3=270 degree, 4-7= rotation + mirror in x direction */
+ int gamma_functions_interruptable; /* bit that defines if gamma function can be interrupted */
+ guint16 *image_data_raw; /* 3 * image_width * image_height bytes * 2 */
+ u_char *image_data_enh; /* 3 * image_width * image_height bytes */
+
+ GdkGC *gc_selection;
+ GdkGC *gc_selection_maximum;
+ int selection_drag;
+ int selection_drag_edge;
+ int selection_xpos;
+ int selection_ypos;
+ int selection_xedge;
+ int selection_yedge;
+
+ Tselection selection; /* selected area to scan */
+ Tselection previous_selection; /* previous ... */
+ Tselection selection_maximum; /* maximum selection size (photocopy) */
+ Tselection previous_selection_maximum; /* previous ... */
+
+ int show_selection;
+
+ Batch_selection *batch_selection;
+
+ GtkWidget *top; /* top-level widget */
+ GtkWidget *unit_label;
+ GtkWidget *hruler;
+ GtkWidget *vruler;
+ GtkWidget *viewport;
+ GtkWidget *window; /* the preview window */
+ GtkWidget *start; /* the start button */
+ GtkWidget *cancel; /* the cancel button */
+
+ GtkWidget *button_box; /* hbox for the following buttons */
+ GtkWidget *pipette_white; /* pipette white button */
+ GtkWidget *pipette_gray; /* pipette gray button */
+ GtkWidget *pipette_black; /* pipette black button */
+ GtkWidget *zoom_not; /* zoom not button */
+ GtkWidget *zoom_out; /* zoom out button */
+ GtkWidget *zoom_in; /* zoom in button */
+ GtkWidget *zoom_undo; /* zoom undo button */
+ GtkWidget *full_area; /* select full scanarea */
+ GtkWidget *autoselect; /* autoselect scanarea */
+ GtkWidget *preset_area_option_menu; /* menu for selection of preview area */
+ GtkWidget *rotation_option_menu; /* menu for selection of rotation */
+ GtkWidget *scanning_pixmap; /* pixmap that shows preview is in scanning progress */
+ GtkWidget *valid_pixmap; /* pixmap that shows preview is valid */
+ GtkWidget *invalid_pixmap; /* pixmap that shows preview is invalid */
+ GtkWidget *incomplete_pixmap; /* pixmap that shows preview is incomplete */
+}
+Preview;
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+extern Preview *preview_new(void); /* Create a new preview based on the info in DIALOG. */
+extern void preview_generate_preview_filenames(Preview *p); /* create new preview filenames */
+
+extern void preview_gamma_correction(Preview *p, int gamma_input_bits,
+ u_char *gamma_red, u_char *gamma_green, u_char *gamma_blue,
+ u_char *gamma_red_hist, u_char *gamma_green_hist, u_char *gamma_blue_hist,
+ u_char *medium_gamma_red_hist, u_char *medium_gamma_green_hist, u_char *medium_gamma_blue_hist);
+
+extern void preview_update_surface(Preview *p, int surface_changed); /* params changed: update preview */
+
+extern void preview_scan(Preview *p); /* Acquire a preview image and display it. */
+
+extern void preview_destroy(Preview *p); /* Destroy a preview. */
+
+extern void preview_calculate_raw_histogram(Preview *p, SANE_Int *count_raw, SANE_Int *count_raw_red, SANE_Int *count_raw_green, SANE_Int *count_raw_blue);
+extern void preview_calculate_enh_histogram(Preview *p, SANE_Int *count, SANE_Int *count_red, SANE_Int *count_green, SANE_Int *count_blue);
+
+extern void preview_area_resize(Preview *p); /* redraw preview rulers */
+extern void preview_set_maximum_output_size(Preview *p, float width, float height); /* set maximum outut size */
+extern void preview_select_full_preview_area(Preview *p);
+extern void preview_display_valid(Preview *p);
+
+/* ------------------------------------------------------------------------------------------------------ */
+
+#endif /* preview_h */
diff --git a/src/xsane-rc-io.c b/src/xsane-rc-io.c
new file mode 100644
index 0000000..9fe991c
--- /dev/null
+++ b/src/xsane-rc-io.c
@@ -0,0 +1,1002 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-rc-io.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+
+#include <errno.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/types.h>
+#include <sane/sane.h>
+#include <ctype.h>
+#include <unistd.h>
+
+#ifdef HAVE_LIBC_H
+# include <libc.h> /* NeXTStep/OpenStep */
+#endif
+
+#include <sane/sane.h>
+#include "xsane-rc-io.h"
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_space(Wire *w, size_t howmuch)
+{
+ size_t nbytes, left_over;
+ int fd = w->io.fd;
+ ssize_t nread, nwritten;
+
+ DBG(DBG_wire, "xsane_rc_io_w_space\n");
+
+ if (w->status != 0)
+ {
+ return;
+ }
+
+ if (w->buffer.curr + howmuch > w->buffer.end)
+ {
+ switch (w->direction)
+ {
+ case WIRE_ENCODE:
+ nbytes = w->buffer.curr - w->buffer.start;
+ w->buffer.curr = w->buffer.start;
+ while (nbytes > 0)
+ {
+ nwritten = (*w->io.write) (fd, w->buffer.curr, nbytes);
+ if (nwritten < 0)
+ {
+ w->status = errno;
+ return;
+ }
+ w->buffer.curr += nwritten;
+ nbytes -= nwritten;
+ }
+
+ w->buffer.curr = w->buffer.start;
+ w->buffer.end = w->buffer.start + w->buffer.size;
+ break;
+
+ case WIRE_DECODE:
+ left_over = w->buffer.end - w->buffer.curr;
+
+ if ((signed)left_over < 0)
+ {
+ return;
+ }
+
+ if (left_over)
+ {
+ memcpy(w->buffer.start, w->buffer.curr, left_over);
+ }
+ w->buffer.curr = w->buffer.start;
+ w->buffer.end = w->buffer.start + left_over;
+
+ do
+ {
+ nread = (*w->io.read) (fd, w->buffer.end, w->buffer.size - left_over);
+ if (nread <= 0)
+ {
+ if (nread == 0)
+ {
+/* errno = EINVAL; */
+ errno = XSANE_EOF;
+ }
+ w->status = errno;
+ return;
+ }
+ left_over += nread;
+ w->buffer.end += nread;
+ } while (left_over < howmuch);
+ break;
+
+ case WIRE_FREE:
+ break;
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_void(Wire *w)
+{
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_array(Wire *w, SANE_Word *len_ptr, void **v, WireCodecFunc w_element, size_t element_size)
+{
+ SANE_Word len;
+ char *val;
+ int i;
+
+ DBG(DBG_wire, "xsane_rc_io_w_array\n");
+
+ if (w->direction == WIRE_FREE)
+ {
+ if (*len_ptr && *v)
+ {
+ val = *v;
+ for (i = 0; i < *len_ptr; ++i)
+ {
+ (*w_element) (w, val);
+ val += element_size;
+ }
+ free (*v);
+ }
+ return;
+ }
+
+ if (w->direction == WIRE_ENCODE)
+ {
+ len = *len_ptr;
+ }
+
+ xsane_rc_io_w_word(w, &len);
+
+ if (w->direction == WIRE_DECODE)
+ {
+ *len_ptr = len;
+ if (len)
+ {
+ *v = malloc(len * element_size);
+
+ if (*v == 0)
+ {
+ /* Malloc failed, so return an error. */
+ w->status = ENOMEM;
+ return;
+ }
+ }
+ else
+ {
+ *v = 0;
+ }
+ }
+
+ val = *v;
+
+ for (i = 0; i < len; ++i)
+ {
+ (*w_element) (w, val);
+ val += element_size;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_ptr(Wire *w, void **v, WireCodecFunc w_value, size_t value_size)
+{
+ SANE_Word is_null;
+
+ DBG(DBG_wire, "xsane_rc_io_w_ptr\n");
+
+ if (w->direction == WIRE_FREE)
+ {
+ if (*v && value_size)
+ {
+ (*w_value) (w, *v);
+ free (*v);
+ }
+ return;
+ }
+
+ if (w->direction == WIRE_ENCODE)
+ {
+ is_null = (*v == 0);
+ }
+
+ xsane_rc_io_w_word(w, &is_null);
+
+ if (!is_null)
+ {
+ if (w->direction == WIRE_DECODE)
+ {
+ *v = malloc(value_size);
+
+ if (*v == 0)
+ {
+ /* Malloc failed, so return an error. */
+ w->status = ENOMEM;
+ return;
+ }
+ }
+ (*w_value) (w, *v);
+ }
+ else if (w->direction == WIRE_DECODE)
+ {
+ *v = 0;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_status(Wire *w, SANE_Status *v)
+{
+ SANE_Word word = *v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_status\n");
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ {
+ *v = word;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_bool(Wire *w, SANE_Bool *v)
+{
+ SANE_Word word = *v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_bool\n");
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ {
+ *v = word;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_constraint_type(Wire *w, SANE_Constraint_Type *v)
+{
+ SANE_Word word = *v;
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ *v = word;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_value_type(Wire *w, SANE_Value_Type *v)
+{
+ SANE_Word word = *v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_value_type\n");
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ *v = word;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_unit(Wire *w, SANE_Unit *v)
+{
+ SANE_Word word = *v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_unit\n");
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ {
+ *v = word;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_action(Wire *w, SANE_Action *v)
+{
+ SANE_Word word = *v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_action\n");
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ {
+ *v = word;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_frame(Wire *w, SANE_Frame *v)
+{
+ SANE_Word word = *v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_frame\n");
+
+ xsane_rc_io_w_word(w, &word);
+ if (w->direction == WIRE_DECODE)
+ {
+ *v = word;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_range(Wire *w, SANE_Range *v)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_range\n");
+
+ xsane_rc_io_w_word(w, &v->min);
+ xsane_rc_io_w_word(w, &v->max);
+ xsane_rc_io_w_word(w, &v->quant);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_device(Wire *w, SANE_Device *v)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_device\n");
+
+ xsane_rc_io_w_string(w, (SANE_String *) &v->name);
+ xsane_rc_io_w_string(w, (SANE_String *) &v->vendor);
+ xsane_rc_io_w_string(w, (SANE_String *) &v->model);
+ xsane_rc_io_w_string(w, (SANE_String *) &v->type);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_device_ptr(Wire *w, SANE_Device **v)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_device_ptr\n");
+
+ xsane_rc_io_w_ptr(w, (void **) v, (WireCodecFunc) xsane_rc_io_w_device, sizeof (**v));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_option_descriptor(Wire *w, SANE_Option_Descriptor *v)
+{
+ SANE_Word len;
+
+ DBG(DBG_wire, "xsane_rc_io_w_option_descriptor\n");
+
+ xsane_rc_io_w_string(w, (SANE_String *) &v->name);
+ xsane_rc_io_w_string(w, (SANE_String *) &v->title);
+ xsane_rc_io_w_string(w, (SANE_String *) &v->desc);
+ xsane_rc_io_w_value_type(w, &v->type);
+ xsane_rc_io_w_unit(w, &v->unit);
+ xsane_rc_io_w_word(w, &v->size);
+ xsane_rc_io_w_word(w, &v->cap);
+ xsane_rc_io_w_constraint_type(w, &v->constraint_type);
+
+ switch (v->constraint_type)
+ {
+ case SANE_CONSTRAINT_NONE:
+ break;
+
+ case SANE_CONSTRAINT_RANGE:
+ xsane_rc_io_w_ptr(w, (void **) &v->constraint.range, (WireCodecFunc) xsane_rc_io_w_range, sizeof (SANE_Range));
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ if (w->direction != WIRE_DECODE)
+ {
+ len = v->constraint.word_list[0] + 1;
+ }
+ xsane_rc_io_w_array(w, &len, (void **) &v->constraint.word_list, w->codec.w_word, sizeof(SANE_Word));
+ break;
+
+ case SANE_CONSTRAINT_STRING_LIST:
+ if (w->direction != WIRE_DECODE)
+ {
+ for (len = 0; v->constraint.string_list[len]; ++len);
+ ++len; /* send NULL string, too */
+ }
+ xsane_rc_io_w_array(w, &len, (void **) &v->constraint.string_list, w->codec.w_string, sizeof(SANE_String));
+ break;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_option_descriptor_ptr(Wire *w, SANE_Option_Descriptor **v)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_option_descriptor_ptr\n");
+
+ xsane_rc_io_w_ptr(w, (void **) v, (WireCodecFunc) xsane_rc_io_w_option_descriptor, sizeof (**v));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_parameters(Wire *w, SANE_Parameters *v)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_paramters\n");
+
+ xsane_rc_io_w_frame(w, &v->format);
+ xsane_rc_io_w_bool(w, &v->last_frame);
+ xsane_rc_io_w_word(w, &v->bytes_per_line);
+ xsane_rc_io_w_word(w, &v->pixels_per_line);
+ xsane_rc_io_w_word(w, &v->lines);
+ xsane_rc_io_w_word(w, &v->depth);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_flush(Wire *w)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_flush\n");
+
+ w->status = 0;
+
+ if (w->direction == WIRE_ENCODE)
+ {
+ xsane_rc_io_w_space(w, w->buffer.size + 1);
+ }
+ else if (w->direction == WIRE_DECODE)
+ {
+ w->buffer.curr = w->buffer.end = w->buffer.start;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_set_dir(Wire *w, WireDirection dir)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_set_dir\n");
+
+ xsane_rc_io_w_flush(w);
+ w->direction = dir;
+ xsane_rc_io_w_flush(w);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_call(Wire *w, SANE_Word procnum, WireCodecFunc w_arg, void *arg, WireCodecFunc w_reply, void *reply)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_call\n");
+
+ w->status = 0;
+ xsane_rc_io_w_set_dir(w, WIRE_ENCODE);
+
+ xsane_rc_io_w_word(w, &procnum);
+ (*w_arg) (w, arg);
+
+ if (w->status == 0)
+ {
+ xsane_rc_io_w_set_dir(w, WIRE_DECODE);
+ (*w_reply) (w, reply);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_reply(Wire *w, WireCodecFunc w_reply, void *reply)
+{
+ w->status = 0;
+ xsane_rc_io_w_set_dir(w, WIRE_ENCODE);
+ (*w_reply) (w, reply);
+ xsane_rc_io_w_flush(w);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_free(Wire *w, WireCodecFunc w_reply, void *reply)
+{
+ WireDirection saved_dir = w->direction;
+
+ DBG(DBG_wire, "xsane_rc_io_w_free\n");
+
+ w->direction = WIRE_FREE;
+ (*w_reply) (w, reply);
+ w->direction = saved_dir;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_init(Wire *w)
+{
+ DBG(DBG_wire, "xsane_rc_io_w_init\n");
+
+ w->status = 0;
+ w->direction = WIRE_ENCODE;
+ w->buffer.size = 8192;
+ w->buffer.start = malloc(w->buffer.size);
+
+ if (w->buffer.start == 0) /* Malloc failed, so return an error. */
+ {
+ w->status = ENOMEM;
+ }
+
+ w->buffer.curr = w->buffer.start;
+ w->buffer.end = w->buffer.start + w->buffer.size;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_exit(Wire *w)
+{
+ if (w->buffer.start)
+ {
+ free(w->buffer.start);
+ }
+ w->buffer.start = 0;
+ w->buffer.size = 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static const char *hexdigit = "0123456789abcdef";
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_rc_io_skip_ws(Wire *w)
+{
+ DBG(DBG_wire, "xsane_rc_io_skip_ws\n");
+
+ while (1)
+ {
+ xsane_rc_io_w_space(w, 1);
+
+ if (w->status != 0)
+ {
+ return;
+ }
+
+ if (!isspace(*w->buffer.curr))
+ {
+ return;
+ }
+
+ ++w->buffer.curr;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_skip_newline(Wire *w)
+{
+ DBG(DBG_wire, "xsane_rc_io_skip_newline\n");
+
+ while (*w->buffer.curr != 10)
+ {
+ xsane_rc_io_w_space(w, 1);
+
+ if (w->status != 0)
+ {
+ return;
+ }
+ ++w->buffer.curr;
+ }
+ ++w->buffer.curr;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static unsigned xsane_rc_io_get_digit(Wire *w)
+{
+ unsigned digit;
+
+ DBG(DBG_wire, "xsane_rc_io_get_digit\n");
+
+ xsane_rc_io_w_space(w, 1);
+ digit = tolower(*w->buffer.curr++) - '0';
+
+ if (digit > 9)
+ {
+ digit -= 'a' - ('9' + 1);
+ }
+
+ if (digit > 0xf)
+ {
+ w->status = EINVAL;
+ return 0;
+ }
+ return digit;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+static SANE_Byte xsane_rc_io_get_byte(Wire *w)
+{
+ DBG(DBG_wire, "xsane_rc_io_get_byte\n");
+
+ return xsane_rc_io_get_digit(w) << 4 | xsane_rc_io_get_digit(w);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_byte(Wire *w, SANE_Byte *v)
+{
+ SANE_Byte *b = v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_byte: %d\n", *v);
+
+ switch (w->direction)
+ {
+ case WIRE_ENCODE:
+ xsane_rc_io_w_space(w, 3);
+ *w->buffer.curr++ = hexdigit[(*b >> 4) & 0x0f];
+ *w->buffer.curr++ = hexdigit[(*b >> 0) & 0x0f];
+ *w->buffer.curr++ = '\n';
+ break;
+
+ case WIRE_DECODE:
+ xsane_rc_io_skip_ws(w);
+ *b = xsane_rc_io_get_byte(w);
+ break;
+
+ case WIRE_FREE:
+ break;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_char(Wire *w, SANE_Char *v)
+{
+ SANE_Char *c = v;
+
+ DBG(DBG_wire, "xsane_rc_io_w_char: %c\n", *v);
+
+ switch (w->direction)
+ {
+ case WIRE_ENCODE:
+ xsane_rc_io_w_space(w, 5);
+ *w->buffer.curr++ = '\'';
+
+ if (*c == '\'' || *c == '\\')
+ {
+ *w->buffer.curr++ = '\\';
+ }
+
+ *w->buffer.curr++ = *c;
+ *w->buffer.curr++ = '\'';
+ *w->buffer.curr++ = '\n';
+ break;
+
+ case WIRE_DECODE:
+ xsane_rc_io_w_space(w, 4);
+ if (*w->buffer.curr++ != '\'')
+ {
+ w->status = EINVAL;
+ return;
+ }
+ *c = *w->buffer.curr++;
+
+ if (*c == '\\')
+ {
+ xsane_rc_io_w_space(w, 2);
+ *c = *w->buffer.curr++;
+ }
+
+ if (*w->buffer.curr++ != '\'')
+ {
+ w->status = EINVAL;
+ return;
+ }
+ break;
+
+ case WIRE_FREE:
+ break;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_string(Wire *w, SANE_String *s)
+{
+ size_t len, alloced_len;
+ char * str, ch;
+ int done;
+
+
+ switch (w->direction)
+ {
+ case WIRE_ENCODE:
+ if (*s)
+ {
+ xsane_rc_io_w_space(w, 1);
+ *w->buffer.curr++ = '"';
+ str = *s;
+
+ DBG(DBG_wire, "xsane_rc_io_w_string: encoding %s\n", str);
+
+ while ((ch = *str++))
+ {
+ xsane_rc_io_w_space(w, 2);
+ if (ch == '"' || ch == '\\')
+ {
+ *w->buffer.curr++ = '\\';
+ }
+ *w->buffer.curr++ = ch;
+ }
+ *w->buffer.curr++ = '"';
+ }
+ else
+ {
+ xsane_rc_io_w_space(w, 5);
+ *w->buffer.curr++ = '(';
+ *w->buffer.curr++ = 'n';
+ *w->buffer.curr++ = 'i';
+ *w->buffer.curr++ = 'l';
+ *w->buffer.curr++ = ')';
+ }
+
+ xsane_rc_io_w_space(w, 1);
+ *w->buffer.curr++ = '\n';
+ break;
+
+ case WIRE_DECODE:
+ xsane_rc_io_skip_ws(w);
+ xsane_rc_io_w_space(w, 1);
+
+ if (w->status != 0)
+ {
+ *s = 0; /* make sure pointer does not point to an invalid address */
+ return;
+ }
+
+ ch = *w->buffer.curr++;
+ if (ch == '"')
+ {
+ alloced_len = len = 0;
+ str = 0;
+ done = 0;
+
+ do
+ {
+ xsane_rc_io_w_space(w, 1);
+
+ if (w->status != 0)
+ {
+ return;
+ }
+
+ ch = *w->buffer.curr++;
+ if (ch == '"')
+ {
+ done = 1;
+ }
+
+ if (ch == '\\')
+ {
+ xsane_rc_io_w_space(w, 1);
+ ch = *w->buffer.curr++;
+ }
+
+ if (len >= alloced_len)
+ {
+ alloced_len += 1024;
+ if (!str)
+ {
+ str = malloc(alloced_len);
+ }
+ else
+ {
+ str = realloc(str, alloced_len);
+ }
+
+ if (str == 0)
+ {
+ /* Malloc failed, so return an error. */
+ w->status = ENOMEM;
+ return;
+ }
+ }
+ str[len++] = ch;
+ }
+ while(!done);
+
+ str[len - 1] = '\0';
+
+ DBG(DBG_wire, "xsane_rc_io_w_string: decoding %s\n", str);
+
+ *s = realloc(str, len);
+
+ if (*s == 0)
+ {
+ /* Malloc failed, so return an error. */
+ w->status = ENOMEM;
+ return;
+ }
+ }
+ else /* string does not begin with a " */
+ {
+ w->status = EINVAL;
+ *s = 0; /* make sure pointer does not point to an invalid address */
+ return;
+ }
+ break;
+
+ case WIRE_FREE:
+ if (*s)
+ {
+ free(*s);
+ }
+ break;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_io_w_word(Wire *w, SANE_Word *v)
+{
+ SANE_Word val, *word = v;
+ int i, is_negative = 0;
+ char buf[16];
+
+ DBG(DBG_wire, "xsane_rc_io_w_word: %d\n", *v);
+
+ switch (w->direction)
+ {
+ case WIRE_ENCODE:
+ val = *word;
+ i = sizeof(buf) - 1;
+
+ if (val < 0)
+ {
+ is_negative = 1;
+ val = -val;
+ }
+
+ do
+ {
+ buf[i--] = '0' + (val % 10);
+ val /= 10;
+ }
+ while (val);
+
+ if (is_negative)
+ {
+ buf[i--] = '-';
+ }
+
+ xsane_rc_io_w_space(w, sizeof(buf) - i);
+ memcpy(w->buffer.curr, buf + i + 1, sizeof(buf) - i - 1);
+ w->buffer.curr += sizeof(buf) - i - 1;
+ *w->buffer.curr++ = '\n';
+ break;
+
+ case WIRE_DECODE:
+ xsane_rc_io_skip_ws(w);
+ val = 0;
+ xsane_rc_io_w_space(w, 1);
+ if (*w->buffer.curr == '-')
+ {
+ is_negative = 1;
+ ++w->buffer.curr;
+ }
+
+ while (1)
+ {
+ xsane_rc_io_w_space(w, 1);
+
+ if (w->status != 0)
+ {
+ return;
+ }
+
+ if (!isdigit (*w->buffer.curr))
+ {
+ break;
+ }
+
+ val = 10*val + (*w->buffer.curr++ - '0');
+ }
+ *word = is_negative ? -val : val;
+ break;
+
+ case WIRE_FREE:
+ break;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+#define PFIELD(p,offset,type) (*((type *)(((char *)(p)) + (offset))))
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_pref_string(Wire *w, void *p, long offset)
+{
+ SANE_String string;
+
+ DBG(DBG_wire, "xsane_rc_pref_string\n");
+
+ if (w->direction == WIRE_ENCODE)
+ {
+ string = PFIELD(p, offset, char *);
+ if (string)
+ {
+ DBG(DBG_wire, "xsane_rc_pref_string: encoding string = %s\n", string);
+ }
+ }
+
+ xsane_rc_io_w_string(w, &string);
+
+ if (w->direction == WIRE_DECODE)
+ {
+ if (w->status == 0)
+ {
+ const char **field;
+
+ field = &PFIELD(p, offset, const char *);
+ if (*field)
+ {
+ free((char *) *field);
+ }
+ *field = string ? strdup (string) : 0;
+ }
+
+ if (string)
+ {
+ DBG(DBG_wire, "xsane_rc_pref_string: decoding string = %s\n", string);
+ }
+ xsane_rc_io_w_free(w, (WireCodecFunc) xsane_rc_io_w_string, &string);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_pref_double(Wire *w, void *p, long offset)
+{
+ SANE_Word word;
+ double val = 0;
+
+ DBG(DBG_wire, "xsane_rc_pref_double\n");
+
+ if (w->direction == WIRE_ENCODE)
+ {
+ val = PFIELD (p, offset, double);
+ DBG(DBG_wire, "xsane_rc_pref_double: encoding double = %f\n", val);
+ word = SANE_FIX(val);
+ }
+
+ xsane_rc_io_w_word (w, &word);
+
+ if (w->direction == WIRE_DECODE)
+ {
+ if (w->status == 0)
+ {
+ val = SANE_UNFIX (word);
+ PFIELD(p, offset, double) = val;
+ }
+ xsane_rc_io_w_free(w, (WireCodecFunc) xsane_rc_io_w_word, &word);
+ DBG(DBG_wire, "xsane_rc_pref_double: decoding double = %f\n", val);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+void xsane_rc_pref_int(Wire *w, void *p, long offset)
+{
+ SANE_Word word;
+
+ DBG(DBG_wire, "xsane_rc_pref_int\n");
+
+ if (w->direction == WIRE_ENCODE)
+ {
+ word = PFIELD(p, offset, int);
+ }
+
+ xsane_rc_io_w_word (w, &word);
+
+ if (w->direction == WIRE_DECODE)
+ {
+ if (w->status == 0)
+ {
+ PFIELD(p, offset, int) = word;
+ }
+ xsane_rc_io_w_free(w, (WireCodecFunc) xsane_rc_io_w_word, &word);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-rc-io.h b/src/xsane-rc-io.h
new file mode 100644
index 0000000..14c2443
--- /dev/null
+++ b/src/xsane-rc-io.h
@@ -0,0 +1,124 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-rc-io.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+#ifndef xsane_rc_io_h
+#define xsane_rc_io_h
+
+#include <sys/types.h>
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define XSANE_EOF -1
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+typedef enum
+ {
+ WIRE_ENCODE = 0,
+ WIRE_DECODE,
+ WIRE_FREE
+ }
+WireDirection;
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+struct Wire;
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+typedef void (*WireCodecFunc) (struct Wire *w, void *val_ptr);
+typedef ssize_t (*WireReadFunc) (int fd, void * buf, size_t len);
+typedef ssize_t (*WireWriteFunc) (int fd, const void * buf, size_t len);
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+typedef struct Wire
+ {
+ int version; /* protocol version in use */
+ WireDirection direction;
+ int status;
+ struct
+ {
+ WireCodecFunc w_byte;
+ WireCodecFunc w_char;
+ WireCodecFunc w_word;
+ WireCodecFunc w_string;
+ }
+ codec;
+ struct
+ {
+ size_t size;
+ char *curr;
+ char *start;
+ char *end;
+ }
+ buffer;
+ struct
+ {
+ int fd;
+ WireReadFunc read;
+ WireWriteFunc write;
+ }
+ io;
+ }
+Wire;
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_rc_io_w_init(Wire *w);
+extern void xsane_rc_io_w_exit(Wire *w);
+extern void xsane_rc_io_w_space(Wire *w, size_t howmuch);
+extern void xsane_rc_io_w_skip_newline(Wire *w);
+extern void xsane_rc_io_w_void(Wire *w);
+extern void xsane_rc_io_w_byte(Wire *w, SANE_Byte *v);
+extern void xsane_rc_io_w_char(Wire *w, SANE_Char *v);
+extern void xsane_rc_io_w_word(Wire *w, SANE_Word *v);
+extern void xsane_rc_io_w_string(Wire *w, SANE_String *v);
+extern void xsane_rc_io_w_status(Wire *w, SANE_Status *v);
+extern void xsane_rc_io_w_constraint_type(Wire *w, SANE_Constraint_Type *v);
+extern void xsane_rc_io_w_value_type(Wire *w, SANE_Value_Type *v);
+extern void xsane_rc_io_w_unit(Wire *w, SANE_Unit *v);
+extern void xsane_rc_io_w_action(Wire *w, SANE_Action *v);
+extern void xsane_rc_io_w_frame(Wire *w, SANE_Frame *v);
+extern void xsane_rc_io_w_range(Wire *w, SANE_Range *v);
+extern void xsane_rc_io_w_range_ptr(Wire *w, SANE_Range **v);
+extern void xsane_rc_io_w_device(Wire *w, SANE_Device *v);
+extern void xsane_rc_io_w_device_ptr(Wire *w, SANE_Device **v);
+extern void xsane_rc_io_w_option_descriptor(Wire *w, SANE_Option_Descriptor *v);
+extern void xsane_rc_io_w_option_descriptor_ptr(Wire *w, SANE_Option_Descriptor **v);
+extern void xsane_rc_io_w_parameters(Wire *w, SANE_Parameters *v);
+extern void xsane_rc_io_w_array(Wire *w, SANE_Word *len, void **v, WireCodecFunc w_element, size_t element_size);
+extern void xsane_rc_io_w_flush(Wire *w);
+extern void xsane_rc_io_w_set_dir(Wire *w, WireDirection dir);
+extern void xsane_rc_io_w_call(Wire *w, SANE_Word proc_num, WireCodecFunc w_arg, void *arg, WireCodecFunc w_reply, void *reply);
+extern void xsane_rc_io_w_reply(Wire *w, WireCodecFunc w_reply, void *reply);
+extern void xsane_rc_io_w_free(Wire *w, WireCodecFunc w_reply, void *reply);
+
+extern void xsane_rc_pref_string(Wire *w, void *p, long offset);
+extern void xsane_rc_pref_double(Wire *w, void *p, long offset);
+extern void xsane_rc_pref_int(Wire *w, void *p, long offset);
+
+/* ---------------------------------------------------------------------------------------------------------------- */
+
+#endif /* xsane_rc_io_wire_h */
diff --git a/src/xsane-save.c b/src/xsane-save.c
new file mode 100644
index 0000000..3c78354
--- /dev/null
+++ b/src/xsane-save.c
@@ -0,0 +1,3466 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-save.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-preview.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <netdb.h>
+
+#ifdef HAVE_LIBJPEG
+#include <jpeglib.h>
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+#include <png.h>
+#include <zlib.h>
+#endif
+#endif
+
+#ifdef HAVE_LIBTIFF
+#include <tiffio.h>
+#include <time.h>
+#endif
+
+#ifdef HAVE_MMAP
+#include <unistd.h>
+#include <sys/mman.h>
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+
+#include <libgimp/gimp.h>
+
+static void xsane_gimp_query(void);
+static void xsane_gimp_run(char *name, int nparams, GimpParam * param, int *nreturn_vals, GimpParam ** return_vals);
+
+GimpPlugInInfo PLUG_IN_INFO =
+{
+ NULL, /* init_proc */
+ NULL, /* quit_proc */
+ xsane_gimp_query, /* query_proc */
+ xsane_gimp_run, /* run_proc */
+};
+
+
+static int xsane_decode_devname(const char *encoded_devname, int n,
+char *buf);
+static int xsane_encode_devname(const char *devname, int n, char *buf);
+void null_print_func(gchar *msg);
+
+#endif /* HAVE_LIBGIMP_GIMP_H */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+/* why this routine ?
+ Problem: link attack
+ Bad user wants to overwrite a file (mywork.txt) of good user.
+ File permissions of mywork.txt is 700 so that bad user can not
+ change or overwrite the file. Directory permissions allow bad user
+ to write into directory. Bad user sets symlink from a file that good
+ user will write soon (image.pnm) to mywork.txt.
+ ==> Good user overwrites his own file, he is allowed to do so.
+
+ Solution: remove file.
+ Create outputfile and make sure that it does not exist while creation.
+
+ The file is created with the requested image-file permissions.
+
+ Note: This case is a bit curious because it is only a small part of a larger problem:
+ When other users have write access to the directory they simply can move
+ mywork.txt to image.pnm. If they do it in the right moment the file is
+ overwritten without any notice of good user. If they do it long before xsane
+ wants to write image.pnm then xsane will possibly ask if image.pnm shall be
+ overwritten. So the real solution is to make the direcoty permissions safe!!!
+ But some users asked for this and so I added this.
+
+
+ This routine shall not be called for temporary files because temp files shall not
+ be removed after they have been created safe. (Although a temporary file should
+ not be a symlink so there should be no problem with this)
+*/
+
+int xsane_create_secure_file(const char *filename)
+/* returns 0 on success, -1 on error */
+{
+ int fd;
+
+ DBG(DBG_proc, "xsane_create_secure_file\n");
+
+ remove(filename); /* we need to remove the file because open(..., O_EXCL) will fail otherwise */
+ umask((mode_t) preferences.image_umask); /* define image file permissions */
+ fd = open(filename, O_WRONLY | O_CREAT | O_EXCL, 0666);
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+
+ if (fd > 0)
+ {
+ DBG(DBG_info, "file %s is created and secure\n", filename);
+ close(fd);
+ fd = 0;
+ }
+ else
+ {
+ DBG(DBG_info, "could not create secure file %s\n", filename);
+ }
+
+ return fd; /* -1 means file is not safe !!! otherwise 0 */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_cancel_save(int *cancel_save)
+{
+ DBG(DBG_proc, "xsane_cancel_save\n");
+ *cancel_save = 1;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_convert_text_to_filename(char **text)
+{
+ DBG(DBG_proc, "xsane_convert_text_to_filename\n");
+
+ if (text)
+ {
+ char *filename = *text;
+ char buf[256];
+ int buflen=0;
+ int txtlen=0;
+
+ while((filename[txtlen] != 0) && (buflen<253))
+ {
+ switch (filename[txtlen])
+ {
+ case ' ':
+ buf[buflen++] = ':';
+ buf[buflen++] = '_';
+ txtlen++;
+ break;
+
+ case '/':
+ buf[buflen++] = ':';
+ buf[buflen++] = '%';
+ txtlen++;
+ break;
+
+ case '*':
+ buf[buflen++] = ':';
+ buf[buflen++] = '#';
+ txtlen++;
+ break;
+
+ case '?':
+ buf[buflen++] = ':';
+ buf[buflen++] = 'q';
+ txtlen++;
+ break;
+
+ case '\\':
+ buf[buflen++] = ':';
+ buf[buflen++] = '=';
+ txtlen++;
+ break;
+
+ case ';':
+ buf[buflen++] = ':';
+ buf[buflen++] = '!';
+ txtlen++;
+ break;
+
+ case '&':
+ buf[buflen++] = ':';
+ buf[buflen++] = '+';
+ txtlen++;
+ break;
+
+ case '<':
+ buf[buflen++] = ':';
+ buf[buflen++] = 's';
+ txtlen++;
+ break;
+
+ case '>':
+ buf[buflen++] = ':';
+ buf[buflen++] = 'g';
+ txtlen++;
+ break;
+
+ case '|':
+ buf[buflen++] = ':';
+ buf[buflen++] = 'p';
+ txtlen++;
+ break;
+
+ case ':':
+ buf[buflen++] = ':';
+ buf[buflen++] = ':';
+ txtlen++;
+ break;
+
+ default:
+ buf[buflen++] = filename[txtlen++];
+ break;
+ }
+ }
+ buf[buflen] = 0;
+ free(filename);
+ *text = strdup(buf);
+ DBG(DBG_info, "filename = \"%s\"\n", *text);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_counter_in_filename(char **filename, int skip, int step, int min_counter_len)
+{
+ FILE *testfile;
+ char *position_point = NULL;
+ char *position_counter;
+ char buf[PATH_MAX];
+ int counter;
+ int counter_len;
+ int set_counter_len = min_counter_len;
+
+ DBG(DBG_proc, "xsane_update_counter_in_filename\n");
+
+ while (1) /* may be we have to skip existing files */
+ {
+ if (!xsane.filetype) /* no filetype: serach "." */
+ {
+ position_point = strrchr(*filename, '.');
+ }
+
+ if (!position_point) /* nothing usable ? */
+ {
+ position_point = *filename + strlen(*filename); /* here is no point, but position - 1 is last character */
+ }
+
+ if (position_point)
+ {
+ position_counter = position_point-1; /* go to last number of counter (if counter exists) */
+
+ /* search non numeric char */
+ while ( (position_counter >= *filename) && (*position_counter >= '0') && (*position_counter <='9') )
+ {
+ position_counter--; /* search fisrt numeric character */
+ }
+
+ position_counter++; /* go to first numeric charcter */
+
+ counter_len = position_point - position_counter;
+
+ if (counter_len) /* we have a counter */
+ {
+ sscanf(position_counter, "%d", &counter);
+ counter += step; /* update counter */
+
+ if (counter < 0)
+ {
+ counter = 0;
+ xsane_back_gtk_warning(WARN_COUNTER_UNDERRUN, TRUE);
+ break; /* last available number ("..999") */
+ }
+
+ *position_counter = 0; /* set end of string mark to counter start */
+
+ if (set_counter_len == 0)
+ {
+ set_counter_len = counter_len;
+ }
+
+ snprintf(buf, sizeof(buf), "%s%0*d%s", *filename, set_counter_len, counter, position_point);
+
+ DBG(DBG_info, "filename = \"%s\"\n", buf);
+
+ free(*filename);
+ *filename = strdup(buf);
+
+ if (skip) /* test if filename already used */
+ {
+ if (xsane.filetype) /* add filetype to filename */
+ {
+ snprintf(buf, sizeof(buf), "%s%s", *filename, xsane.filetype);
+ testfile = fopen(buf, "rb"); /* read binary (b for win32) */
+ }
+ else /* filetype in filename */
+ {
+ testfile = fopen(*filename, "rb"); /* read binary (b for win32) */
+ }
+
+ if (testfile) /* filename used: skip */
+ {
+ fclose(testfile);
+ }
+ else
+ {
+ break; /* filename not used, ok */
+ }
+ }
+ else /* do not test if filename already used */
+ {
+ break; /* filename ok */
+ }
+ }
+ else /* no counter */
+ {
+ break; /* no counter */
+ }
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_read_pnm_header(FILE *infile, Image_info *image_info)
+{
+ int max_val, filetype_nr;
+ char buf[256];
+
+ fgets(buf, sizeof(buf)-1, infile);
+ DBG(DBG_info, "filetype header :%s", buf);
+
+ if (buf[0] == 'P')
+ {
+ filetype_nr = atoi(buf+1); /* get filetype number */
+
+ image_info->resolution_x = 72.0;
+ image_info->resolution_y = 72.0;
+
+ while (strcmp(buf, "# XSANE data follows\n"))
+ {
+ fgets(buf, sizeof(buf)-1, infile);
+
+ if (!strncmp(buf, "# resolution_x =", 17))
+ {
+ sscanf(buf+17, "%lf", &image_info->resolution_x);
+ }
+ else if (!strncmp(buf, "# resolution_y =", 17))
+ {
+ sscanf(buf+17, "%lf", &image_info->resolution_y);
+ }
+ }
+
+ fscanf(infile, "%d %d", &image_info->image_width, &image_info->image_height);
+
+ image_info->depth = 1;
+
+ if (filetype_nr != 4) /* P4 = lineart */
+ {
+ fscanf(infile, "%d", &max_val);
+
+ if (max_val == 255)
+ {
+ image_info->depth = 8;
+ }
+ else if (max_val == 65535)
+ {
+ image_info->depth = 16;
+ }
+ }
+
+ fgetc(infile); /* read exactly one newline character */
+
+
+ image_info->colors = 1;
+
+ if (filetype_nr == 6) /* ppm RGB */
+ {
+ image_info->colors = 3;
+ }
+ }
+#ifdef SUPPORT_RGBA
+ else if (buf[0] == 'S') /* RGBA format */
+ {
+ fscanf(infile, "%d %d\n%d", &image_info->image_width, &image_info->image_height, &max_val);
+ fgetc(infile); /* read exactly one newline character */
+
+ image_info->depth = 1;
+
+ if (max_val == 255)
+ {
+ image_info->depth = 8;
+ }
+ else if (max_val == 65535)
+ {
+ image_info->depth = 16;
+ }
+
+ image_info->colors = 4;
+ }
+#endif
+
+ DBG(DBG_info, "xsane_read_pnm_header: width=%d, height=%d, depth=%d, colors=%d, resolution_x=%f, resolution_y=%f\n",
+ image_info->image_width, image_info->image_height, image_info->depth, image_info->colors,
+ image_info->resolution_x, image_info->resolution_y);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_write_pnm_header(FILE *outfile, Image_info *image_info)
+{
+ fflush(outfile);
+ rewind(outfile);
+
+
+ if (image_info->colors == 1)
+ {
+ switch (image_info->depth)
+ {
+ case 1: /* 1 bit lineart mode, write pbm header */
+ fprintf(outfile, "P4\n"
+ "# XSane settings:\n"
+ "# resolution_x = %6.1f\n"
+ "# resolution_y = %6.1f\n"
+ "# threshold = %4.1f\n"
+ "# XSANE data follows\n"
+ "%05d %05d\n",
+ image_info->resolution_x,
+ image_info->resolution_y,
+ image_info->threshold,
+ image_info->image_width, image_info->image_height);
+ break;
+
+ case 8: /* 8 bit grayscale mode, write pgm header */
+ fprintf(outfile, "P5\n"
+ "# XSane settings:\n"
+ "# resolution_x = %6.1f\n"
+ "# resolution_y = %6.1f\n"
+ "# gamma = %3.2f\n"
+ "# brightness = %4.1f\n"
+ "# contrast = %4.1f\n"
+ "# XSANE data follows\n"
+ "%05d %05d\n"
+ "255\n",
+ image_info->resolution_x,
+ image_info->resolution_y,
+ image_info->gamma,
+ image_info->brightness,
+ image_info->contrast,
+ image_info->image_width, image_info->image_height);
+ break;
+
+ default: /* grayscale mode but not 1 or 8 bit, write as raw data because this is not defined in pnm */
+ fprintf(outfile, "P5\n"
+ "# This file is in a not public defined data format.\n"
+ "# It is a 16 bit gray binary format.\n"
+ "# Some programs can read this as pnm/pgm format.\n"
+ "# XSane settings:\n"
+ "# resolution_x = %6.1f\n"
+ "# resolution_y = %6.1f\n"
+ "# gamma = %3.2f\n"
+ "# brightness = %4.1f\n"
+ "# contrast = %4.1f\n"
+ "# XSANE data follows\n"
+ "%05d %05d\n"
+ "65535\n",
+ image_info->resolution_x,
+ image_info->resolution_y,
+ image_info->gamma,
+ image_info->brightness,
+ image_info->contrast,
+ image_info->image_width, image_info->image_height);
+ break;
+ }
+ }
+ else if (image_info->colors == 3)
+ {
+ switch (image_info->depth)
+ {
+ case 8: /* color 8 bit mode, write ppm header */
+ fprintf(outfile, "P6\n"
+ "# XSane settings:\n"
+ "# resolution_x = %6.1f\n"
+ "# resolution_y = %6.1f\n"
+ "# gamma IRGB = %3.2f %3.2f %3.2f %3.2f\n"
+ "# brightness IRGB = %4.1f %4.1f %4.1f %4.1f\n"
+ "# contrast IRGB = %4.1f %4.1f %4.1f %4.1f\n"
+ "# XSANE data follows\n"
+ "%05d %05d\n255\n",
+ image_info->resolution_x,
+ image_info->resolution_y,
+ image_info->gamma, image_info->gamma_red, image_info->gamma_green, image_info->gamma_blue,
+ image_info->brightness, image_info->brightness_red, image_info->brightness_green, image_info->brightness_blue,
+ image_info->contrast, image_info->contrast_red, image_info->contrast_green, image_info->contrast_blue,
+ image_info->image_width, image_info->image_height);
+ break;
+
+ default: /* color, but not 8 bit mode, write as raw data because this is not defined in pnm */
+ fprintf(outfile, "P6\n"
+ "# This file is in a not public defined data format.\n"
+ "# It is a 16 bit RGB binary format.\n"
+ "# Some programs can read this as pnm/ppm format.\n"
+ "# File created by XSane.\n"
+ "# XSane settings:\n"
+ "# resolution_x = %6.1f\n"
+ "# resolution_y = %6.1f\n"
+ "# gamma IRGB = %3.2f %3.2f %3.2f %3.2f\n"
+ "# brightness IRGB = %4.1f %4.1f %4.1f %4.1f\n"
+ "# contrast IRGB = %4.1f %4.1f %4.1f %4.1f\n"
+ "# XSANE data follows\n"
+ "%05d %05d\n"
+ "65535\n",
+ image_info->resolution_x,
+ image_info->resolution_y,
+ image_info->gamma, image_info->gamma_red, image_info->gamma_green, image_info->gamma_blue,
+ image_info->brightness, image_info->brightness_red, image_info->brightness_green, image_info->brightness_blue,
+ image_info->contrast, image_info->contrast_red, image_info->contrast_green, image_info->contrast_blue,
+ image_info->image_width, image_info->image_height);
+ break;
+ }
+ }
+#ifdef SUPPORT_RGBA
+ else if (image_info->colors == 4)
+ {
+ switch (image_info->depth)
+ {
+ case 8: /* 8 bit RGBA mode */
+ fprintf(outfile, "SANE_RGBA\n%d %d\n255\n", image_info->image_width, image_info->image_height);
+ break;
+
+ default: /* 16 bit RGBA mode */
+ fprintf(outfile, "SANE_RGBA\n%d %d\n65535\n", image_info->image_width, image_info->image_height);
+ break;
+ }
+ }
+#endif
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_grayscale_image_as_lineart(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x, y, bit;
+ u_char bitval, packed;
+
+ *cancel_save = 0;
+
+ image_info->depth = 1;
+#if 0
+ xsane.depth = 1; /* our new depth is 1 bit/pixel */
+#endif
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ bit = 128;
+ packed = 0;
+
+ for (x = 0; x < image_info->image_width; x++)
+ {
+ bitval = fgetc(imagefile);
+
+ if (!bitval) /* white gets 0 bit, black gets 1 bit */
+ {
+ packed |= bit;
+ }
+
+ if (bit == 1)
+ {
+ fputc(packed, outfile);
+ bit = 128;
+ packed = 0;
+ }
+ else
+ {
+ bit >>= 1;
+ }
+ }
+
+ if (bit != 128)
+ {
+ fputc(packed, outfile);
+ bit = 128;
+ packed = 0;
+ }
+
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height); /* update progress bar */
+ while (gtk_events_pending()) /* give gtk the chance to display the changes */
+ {
+ gtk_main_iteration();
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_scaled_image(FILE *outfile, FILE *imagefile, Image_info *image_info, float x_scale, float y_scale, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ float original_y;
+ int old_original_y;
+ int x, y, i;
+ int original_image_width = image_info->image_width;
+ int new_image_width = image_info->image_width * x_scale;
+ int new_image_height = image_info->image_height * y_scale;
+ unsigned char *original_line;
+ unsigned char *new_line;
+ int bytespp = 1;
+
+ DBG(DBG_proc, "xsane_save_scaled_image\n");
+
+ if (image_info->depth > 8)
+ {
+ bytespp = 2;
+ }
+
+ image_info->image_width = new_image_width;
+ image_info->image_height = new_image_height;
+ image_info->resolution_x *= x_scale;
+ image_info->resolution_y *= y_scale;
+
+ original_line = malloc(original_image_width * image_info->colors * bytespp);
+ if (!original_line)
+ {
+ DBG(DBG_error, "xsane_save_scaled_image: out of memory\n");
+ return -1;
+ }
+
+ new_line = malloc(new_image_width * image_info->colors * bytespp);
+ if (!new_line)
+ {
+ free(original_line);
+ DBG(DBG_error, "xsane_save_scaled_image: out of memory\n");
+ return -1;
+ }
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ original_y = 0.0;
+ old_original_y = -1;
+
+ for (y = 0; y < new_image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (; ((int) original_y) - old_original_y; old_original_y += 1)
+ {
+ fread(original_line, original_image_width, image_info->colors * bytespp, imagefile); /* read one line */
+ }
+
+ for (x = 0; x < new_image_width; x++)
+ {
+ for (i = 0; i < image_info->colors * bytespp; i++)
+ {
+ new_line[x * image_info->colors * bytespp + i] = original_line[((int) (x / x_scale)) * image_info->colors * bytespp + i];
+ }
+ }
+
+ fwrite(new_line, new_image_width, image_info->colors * bytespp, outfile); /* write one line */
+
+ original_y += 1/y_scale;
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ free(original_line);
+ free(new_line);
+
+ fflush(outfile);
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_despeckle_image(FILE *outfile, FILE *imagefile, Image_info *image_info, int radius, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x, y, sx, sy, i;
+ int xmin, xmax;
+ int ymin, ymax;
+ int pos0;
+ int count;
+ unsigned char *line_cache;
+ unsigned char *line_cache_ptr;
+ guint16 *color_cache;
+ guint16 *color_cache_ptr;
+ int bytespp = 1;
+ int color_radius = radius * image_info->colors;
+ int color_width = image_info->image_width * image_info->colors;
+
+ if (image_info->depth > 8)
+ {
+ bytespp = 2;
+ }
+
+ pos0 = ftell(imagefile); /* mark position to skip header */
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ line_cache = malloc(color_width * bytespp * (2 * radius + 1));
+ if (!line_cache)
+ {
+ DBG(DBG_error, "xsane_despeckle_image: out of memory\n");
+ return -1;
+ }
+
+ fread(line_cache, color_width * bytespp, (2 * radius + 1), imagefile);
+
+ color_cache = malloc((size_t) sizeof(guint16) * (2*radius+1)*(2*radius+1));
+
+ if (!color_cache)
+ {
+ free(line_cache);
+ DBG(DBG_error, "xsane_despeckle_image: out of memory\n");
+ return -1;
+ }
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ ymin = y - radius;
+ ymax = y + radius;
+
+ if (ymin < 0)
+ {
+ ymin = 0;
+ }
+
+ if (ymax > image_info->image_height)
+ {
+ ymax = image_info->image_height;
+ }
+
+ for (x = 0; x < color_width; x++)
+ {
+ xmin = x - color_radius;
+ xmax = x + color_radius;
+
+ if (xmin < 0)
+ {
+ xmin = x % image_info->colors;
+ }
+
+ if (xmax > color_width)
+ {
+ xmax = color_width;
+ }
+
+ count = 0;
+
+ color_cache_ptr = color_cache;
+
+
+ if (bytespp == 1)
+ {
+ for (sy = ymin; sy <= ymax; sy++) /* search area defined by radius - y part */
+ {
+ line_cache_ptr = line_cache + (sy-ymin) * color_width + xmin;
+
+ for (sx = xmin; sx <= xmax; sx+=image_info->colors) /* x part */
+ {
+ *color_cache_ptr = *line_cache_ptr;
+ color_cache_ptr++;
+ line_cache_ptr += image_info->colors;
+ }
+ }
+
+ /* sort color_cache */
+
+ count = color_cache_ptr - color_cache;
+
+ if (count > 1)
+ {
+ int d, j, val;
+
+ for (d = count / 2; d > 0; d = d / 2)
+ {
+ for (i = d; i < count; i++)
+ {
+ for (j = i - d, color_cache_ptr = color_cache + j; j >= 0 && color_cache_ptr[0] > color_cache_ptr[d]; j -= d, color_cache_ptr -= d)
+ {
+ val = color_cache_ptr[0];
+ color_cache_ptr[0] = color_cache_ptr[d];
+ color_cache_ptr[d] = val;
+ };
+ }
+ }
+ }
+
+ fputc((char) (color_cache[count/2]), outfile);
+ }
+ else /* 16 bit/color */
+ {
+ guint16 val16;
+ guint16 *line_cache16 = (guint16 *) line_cache;
+ guint16 *line_cache16_ptr;
+ char *bytes16 = (char *) &val16;
+
+ for (sy = ymin; sy <= ymax; sy++)
+ {
+ line_cache16_ptr = line_cache16 + (sy-ymin) * color_width + xmin;
+
+ for (sx = xmin; sx <= xmax; sx+=image_info->colors)
+ {
+ *color_cache_ptr = *line_cache16_ptr;
+ color_cache_ptr++;
+ line_cache16_ptr += image_info->colors;
+ }
+ }
+
+ /* sort color_cache */
+
+ count = color_cache_ptr - color_cache;
+
+ if (count > 1)
+ {
+ int d,j, val;
+
+ for (d = count / 2; d > 0; d = d / 2)
+ {
+ for (i = d; i < count; i++)
+ {
+ for (j = i - d, color_cache_ptr = color_cache + j; j >= 0 && color_cache_ptr[0] > color_cache_ptr[d]; j -= d, color_cache_ptr -= d)
+ {
+ val = color_cache_ptr[0];
+ color_cache_ptr[0] = color_cache_ptr[d];
+ color_cache_ptr[d] = val;
+ };
+ }
+ }
+ }
+
+ val16 = color_cache[count/2];
+ fputc(bytes16[0], outfile); /* write bytes in machine byte order */
+ fputc(bytes16[1], outfile);
+ }
+ }
+
+ if ((y > radius) && (y < image_info->image_height - radius))
+ {
+ memcpy(line_cache, line_cache + color_width * bytespp,
+ color_width * bytespp * 2 * radius);
+ fread(line_cache + color_width * bytespp * 2 * radius,
+ color_width * bytespp, 1, imagefile);
+ }
+ }
+
+ fflush(outfile);
+
+ free(line_cache);
+ free(color_cache);
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_blur_image(FILE *outfile, FILE *imagefile, Image_info *image_info, int radius, GtkProgressBar *progress_bar)
+{
+ int x, y, sx, sy;
+ int xmin, xmax;
+ int ymin, ymax;
+ int pos0;
+ int val, count;
+ unsigned char *line_cache;
+ int bytespp = 1;
+
+ if (image_info->depth > 8)
+ {
+ bytespp = 2;
+ }
+
+ pos0 = ftell(imagefile); /* mark position to skip header */
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ line_cache = malloc(image_info->image_width * image_info->colors * bytespp * (2 * radius + 1));
+ if (!line_cache)
+ {
+ DBG(DBG_error, "xsane_blur_image: out of memory\n");
+ return -1;
+ }
+
+ fread(line_cache, image_info->image_width * image_info->colors * bytespp, (2 * radius + 1), imagefile);
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < image_info->image_width * image_info->colors; x++)
+ {
+ xmin = x - radius * image_info->colors;
+ xmax = x + radius * image_info->colors;
+
+ if (xmin < 0)
+ {
+ xmin = x % image_info->colors;
+ }
+
+ if (xmax > image_info->image_width * image_info->colors)
+ {
+ xmax = image_info->image_width * image_info->colors;
+ }
+
+ ymin = y - radius;
+ ymax = y + radius;
+
+ if (ymin < 0)
+ {
+ ymin = 0;
+ }
+
+ if (ymax > image_info->image_height)
+ {
+ ymax = image_info->image_height;
+ }
+
+ val = 0;
+ count = 0;
+
+ if (bytespp == 1)
+ {
+ for (sy = ymin; sy <= ymax; sy++)
+ {
+ for (sx = xmin; sx <= xmax; sx+=image_info->colors)
+ {
+ val += line_cache[(sy-ymin) * image_info->image_width * image_info->colors + sx];
+ count++;
+ }
+ }
+ fputc((char) (val/count), outfile);
+ }
+ else
+ {
+ guint16 *line_cache16 = (guint16 *) line_cache;
+ guint16 val16;
+ char *bytes16 = (char *) &val16;
+
+ for (sy = ymin; sy <= ymax; sy++)
+ {
+ for (sx = xmin; sx <= xmax; sx+=image_info->colors)
+ {
+ val += line_cache16[(sy-ymin) * image_info->image_width * image_info->colors + sx];
+ count++;
+ }
+ }
+
+ val16 = val / count;
+ fputc(bytes16[0], outfile); /* write bytes in machine byte order */
+ fputc(bytes16[1], outfile);
+ }
+ }
+
+ if ((y > radius) && (y < image_info->image_height - radius))
+ {
+ memcpy(line_cache, line_cache + image_info->image_width * image_info->colors * bytespp,
+ image_info->image_width * image_info->colors * bytespp * 2 * radius);
+ fread(line_cache + image_info->image_width * image_info->colors * bytespp * 2 * radius,
+ image_info->image_width * image_info->colors * bytespp, 1, imagefile);
+ }
+ }
+
+ fflush(outfile);
+ free(line_cache);
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_rotate_image(FILE *outfile, FILE *imagefile, Image_info *image_info, int rotation, GtkProgressBar *progress_bar, int *cancel_save)
+/* returns true if operation was cancelled */
+{
+ int x, y, pos0, bytespp, i;
+ int pixel_width = image_info->image_width;
+ int pixel_height = image_info->image_height;
+ float resolution_x = image_info->resolution_x;
+ float resolution_y = image_info->resolution_y;
+
+#ifdef HAVE_MMAP
+ char *mmaped_imagefile = NULL;
+#endif
+
+ DBG(DBG_proc, "xsane_save_rotate_image\n");
+
+ *cancel_save = 0;
+
+ pos0 = ftell(imagefile); /* mark position to skip header */
+
+ bytespp = image_info->colors;
+
+ if (image_info->depth > 8)
+ {
+ bytespp *= 2;
+ }
+
+ if (image_info->depth < 8) /* lineart images are expanded to grayscale until transformation is done */
+ {
+ image_info->depth = 8; /* so we have at least 8 bits/pixel here */
+ }
+
+#ifdef HAVE_MMAP
+ mmaped_imagefile = mmap(NULL, pixel_width * pixel_height * bytespp + pos0, PROT_READ, MAP_PRIVATE, fileno(imagefile), 0);
+ if (mmaped_imagefile == (void *) -1) /* mmap failed */
+ {
+ DBG(DBG_info, "xsane_save_rotate_image: unable to memory map image file, using standard file access\n");
+ mmaped_imagefile = NULL;
+ }
+ else
+ {
+ DBG(DBG_info, "xsane_save_rotate_image: using memory mapped image file\n");
+ }
+#endif
+
+ switch (rotation)
+ {
+ default:
+ break;
+
+ case 0: /* 0 degree */
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (y = 0; y < pixel_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / pixel_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < pixel_width; x++)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i=0; i<bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+
+ case 1: /* 90 degree */
+ image_info->image_width = pixel_height;
+ image_info->image_height = pixel_width;
+
+ image_info->resolution_x = resolution_y;
+ image_info->resolution_y = resolution_x;
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (x=0; x<pixel_width; x++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) x / pixel_width);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (y=pixel_height-1; y>=0; y--)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i=0; i<bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i=0; i<bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ break;
+
+ case 2: /* 180 degree */
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (y = pixel_height-1; y >= 0; y--)
+ {
+ gtk_progress_bar_update(progress_bar, (float) (pixel_height - y) / pixel_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = pixel_width-1; x >= 0; x--)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+
+ case 3: /* 270 degree */
+ image_info->image_width = pixel_height;
+ image_info->image_height = pixel_width;
+
+ image_info->resolution_x = resolution_y;
+ image_info->resolution_y = resolution_x;
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (x = pixel_width-1; x >= 0; x--)
+ {
+ gtk_progress_bar_update(progress_bar, (float) (pixel_width - x) / pixel_width);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (y = 0; y < pixel_height; y++)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+
+ case 4: /* 0 degree, x mirror */
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (y = 0; y < pixel_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / pixel_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = pixel_width-1; x >= 0; x--)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+
+ case 5: /* 90 degree, x mirror */
+ image_info->image_width = pixel_height;
+ image_info->image_height = pixel_width;
+
+ image_info->resolution_x = resolution_y;
+ image_info->resolution_y = resolution_x;
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (x = 0; x < pixel_width; x++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) x / pixel_width);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (y = 0; y < pixel_height; y++)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i=0; i<bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ break;
+
+ case 6: /* 180 degree, x mirror */
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (y = pixel_height-1; y >= 0; y--)
+ {
+ gtk_progress_bar_update(progress_bar, (float) (pixel_height - y) / pixel_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < pixel_width; x++)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+
+ case 7: /* 270 degree, x mirror */
+ image_info->image_width = pixel_height;
+ image_info->image_height = pixel_width;
+
+ image_info->resolution_x = resolution_y;
+ image_info->resolution_y = resolution_x;
+
+ xsane_write_pnm_header(outfile, image_info);
+
+ for (x = pixel_width-1; x >= 0; x--)
+ {
+ gtk_progress_bar_update(progress_bar, (float) (pixel_width - x) / pixel_width);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (y = pixel_height-1; y >= 0; y--)
+ {
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ char *p = mmaped_imagefile + pos0 + bytespp * (x + y * pixel_width); /* calculate correct position */
+
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(*p++, outfile);
+ }
+ }
+ else
+#endif
+ {
+ fseek(imagefile, pos0 + bytespp * (x + y * pixel_width), SEEK_SET); /* go to the correct position */
+ for (i = 0; i < bytespp; i++)
+ {
+ fputc(fgetc(imagefile), outfile);
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+ }
+
+#ifdef HAVE_MMAP
+ if (mmaped_imagefile)
+ {
+ munmap(mmaped_imagefile, pos0 + pixel_width * pixel_height * bytespp);
+ }
+#endif
+
+ fflush(outfile);
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_save_ps_create_header(FILE *outfile, Image_info *image_info,
+ int left, int bottom, float width, float height,
+ int paperwidth, int paperheight, int rotate,
+ GtkProgressBar *progress_bar)
+{
+ int degree, position_left, position_bottom, box_left, box_bottom, box_right, box_top;
+
+ DBG(DBG_proc, "xsane_save_ps_create_header\n");
+
+ if (rotate) /* rotate with 90 degrees - eg for landscape mode */
+ {
+ degree = 90;
+ position_left = left;
+ position_bottom = bottom - paperwidth;
+ box_left = paperwidth - bottom - height * 72.0;
+ box_bottom = left;
+ box_right = (int) (box_left + height * 72.0);
+ box_top = (int) (box_bottom + width * 72.0);
+ }
+ else /* do not rotate, eg for portrait mode */
+ {
+ degree = 0;
+ position_left = left;
+ position_bottom = bottom;
+ box_left = left;
+ box_bottom = bottom;
+ box_right = (int) (box_left + width * 72.0);
+ box_top = (int) (box_bottom + height * 72.0);
+ }
+
+ if (image_info->depth == 16)
+ {
+ image_info->depth = 8; /* 16 bits/color are already reduced to 8 bits/color */
+ }
+
+ fprintf(outfile, "%%!PS-Adobe-2.0 EPSF-2.0\n");
+ fprintf(outfile, "%%%%Creator: xsane version %s (sane %d.%d)\n", VERSION,
+ SANE_VERSION_MAJOR(xsane.sane_backend_versioncode),
+ SANE_VERSION_MINOR(xsane.sane_backend_versioncode));
+ fprintf(outfile, "%%%%BoundingBox: %d %d %d %d\n", box_left, box_bottom, box_right, box_top);
+ fprintf(outfile, "%%\n");
+ fprintf(outfile, "/origstate save def\n");
+ fprintf(outfile, "20 dict begin\n");
+
+ if (image_info->depth == 1)
+ {
+ fprintf(outfile, "/pix %d string def\n", (image_info->image_width+7)/8);
+ fprintf(outfile, "/grays %d string def\n", image_info->image_width);
+ fprintf(outfile, "/npixels 0 def\n");
+ fprintf(outfile, "/rgbindx 0 def\n");
+ }
+ else
+ {
+ fprintf(outfile, "/pix %d string def\n", image_info->image_width);
+ }
+
+
+ fprintf(outfile, "%d rotate\n", degree);
+ fprintf(outfile, "%d %d translate\n", position_left, position_bottom);
+ fprintf(outfile, "%f %f scale\n", width * 72.0, height * 72.0);
+ fprintf(outfile, "%d %d %d\n", image_info->image_width, image_info->image_height, image_info->depth);
+ fprintf(outfile, "[%d %d %d %d %d %d]\n", image_info->image_width, 0, 0, -image_info->image_height, 0 , image_info->image_height);
+ fprintf(outfile, "{currentfile pix readhexstring pop}\n");
+
+ if (image_info->colors == 3) /* what about RGBA here ? */
+ {
+ fprintf(outfile, "false 3 colorimage\n");
+ fprintf(outfile, "\n");
+ }
+ else
+ {
+ fprintf(outfile, "image\n");
+ fprintf(outfile, "\n");
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_save_ps_bw(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x, y, count;
+ int bytes_per_line = (image_info->image_width+7)/8;
+
+ DBG(DBG_proc, "xsane_save_ps_bw\n");
+
+ *cancel_save = 0;
+
+ count = 0;
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < bytes_per_line; x++)
+ {
+ fprintf(outfile, "%02x", (fgetc(imagefile) ^ 255));
+ if (++count >= 40)
+ {
+ fprintf(outfile, "\n");
+ count = 0;
+ }
+ }
+
+ fprintf(outfile, "\n");
+ count = 0;
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_save_ps_gray(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x, y, count;
+
+ DBG(DBG_proc, "xsane_save_ps_gray\n");
+
+ *cancel_save = 0;
+
+ count = 0;
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ for (x = 0; x < image_info->image_width; x++)
+ {
+ fprintf(outfile, "%02x", fgetc(imagefile));
+ if (++count >=40)
+ {
+ fprintf(outfile, "\n");
+ count = 0;
+ }
+ }
+ fprintf(outfile, "\n");
+ count = 0;
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_save_ps_color(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x, y, count;
+
+ DBG(DBG_proc, "xsane_save_ps_color\n");
+
+ *cancel_save = 0;
+
+ count = 0;
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < image_info->image_width; x++)
+ {
+ fprintf(outfile, "%02x", fgetc(imagefile));
+ fprintf(outfile, "%02x", fgetc(imagefile));
+ fprintf(outfile, "%02x", fgetc(imagefile));
+ if (++count >=10)
+ {
+ fprintf(outfile, "\n");
+ count = 0;
+ }
+ }
+ fprintf(outfile, "\n");
+ count = 0;
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_ps(FILE *outfile, FILE *imagefile, Image_info *image_info, int left, int bottom, float width, float height,
+ int paperheight, int paperwidth, int rotate, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ DBG(DBG_proc, "xsane_save_ps\n");
+
+ xsane_save_ps_create_header(outfile, image_info,
+ left, bottom, width, height, paperheight, paperwidth, rotate, progress_bar);
+
+ if (image_info->colors == 1) /* lineart, halftone, grayscale */
+ {
+ if (image_info->depth == 1) /* lineart, halftone */
+ {
+ xsane_save_ps_bw(outfile, imagefile, image_info, progress_bar, cancel_save);
+ }
+ else /* grayscale */
+ {
+ xsane_save_ps_gray(outfile, imagefile, image_info, progress_bar, cancel_save);
+ }
+ }
+ else /* color RGB */
+ {
+ xsane_save_ps_color(outfile, imagefile, image_info, progress_bar, cancel_save);
+ }
+
+ fprintf(outfile, "\n");
+ fprintf(outfile, "showpage\n");
+ fprintf(outfile, "end\n");
+ fprintf(outfile, "origstate restore\n");
+ fprintf(outfile, "\n");
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBJPEG
+int xsane_save_jpeg(FILE *outfile, FILE *imagefile, Image_info *image_info, int quality, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ unsigned char *data;
+ char buf[256];
+ int x,y;
+ int components = 1;
+ struct jpeg_compress_struct cinfo;
+ struct jpeg_error_mgr jerr;
+ JSAMPROW row_pointer[1];
+
+ DBG(DBG_proc, "xsane_save_jpeg\n");
+
+ *cancel_save = 0;
+
+ if (image_info->colors == 3)
+ {
+ components = 3;
+ }
+
+ data = malloc(image_info->image_width * components);
+
+ if (!data)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_NO_MEM);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ cinfo.err = jpeg_std_error(&jerr);
+ jpeg_create_compress(&cinfo);
+ jpeg_stdio_dest(&cinfo, outfile);
+ cinfo.image_width = image_info->image_width;
+ cinfo.image_height = image_info->image_height;
+ cinfo.input_components = components;
+ if (image_info->colors == 3)
+ {
+ cinfo.in_color_space = JCS_RGB;
+ }
+ else
+ {
+ cinfo.in_color_space = JCS_GRAYSCALE;
+ }
+ jpeg_set_defaults(&cinfo);
+
+ jpeg_set_quality(&cinfo, quality, TRUE);
+
+ cinfo.density_unit = 1; /* dpi */
+ cinfo.X_density = image_info->resolution_x;
+ cinfo.Y_density = image_info->resolution_y;
+
+ jpeg_start_compress(&cinfo, TRUE);
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ if (image_info->depth == 1)
+ {
+ int byte = 0;
+ int mask = 128;
+
+ for (x = 0; x < image_info->image_width; x++)
+ {
+
+ if ( (x % 8) == 0)
+ {
+ byte = fgetc(imagefile);
+ mask = 128;
+ }
+
+ if (byte & mask)
+ {
+ data[x] = 0;
+ }
+ else
+ {
+ data[x] = 255;
+ }
+ mask >>= 1;
+ }
+ }
+ else
+ {
+ fread(data, components, image_info->image_width, imagefile);
+ }
+
+ row_pointer[0] = data;
+ jpeg_write_scanlines(&cinfo, row_pointer, 1);
+
+ if (*cancel_save)
+ {
+ cinfo.image_height = y; /* correct image height */
+ break;
+ }
+ }
+
+ jpeg_finish_compress(&cinfo);
+ free(data);
+
+ return (*cancel_save);
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBTIFF
+int xsane_save_tiff(const char *outfilename, FILE *imagefile, Image_info *image_info, int quality, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ TIFF *tiffile;
+ char *data;
+ char buf[256];
+ int y, w;
+ int components;
+ int compression;
+ int bytes;
+ struct tm *ptm;
+ time_t now;
+
+ DBG(DBG_proc, "xsane_save_tiff\n");
+
+ *cancel_save = 0;
+
+ if (image_info->depth == 1)
+ {
+ compression = preferences.tiff_compression1_nr;
+ }
+ else if (image_info->depth == 8)
+ {
+ compression = preferences.tiff_compression8_nr;
+ }
+ else
+ {
+ compression = preferences.tiff_compression16_nr;
+ }
+
+
+ if (image_info->colors == 3)
+ {
+ components = 3;
+ }
+ else
+ {
+ components = 1;
+ }
+
+ if (image_info->depth <= 8)
+ {
+ bytes = 1;
+ }
+ else
+ {
+ bytes = 2;
+ }
+
+ if (xsane_create_secure_file(outfilename)) /* remove possibly existing symbolic links for security */
+ {
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, outfilename);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ tiffile = TIFFOpen(outfilename, "w");
+ if (!tiffile)
+ {
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_OPEN_FAILED, outfilename);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+#if 0
+ data = malloc(pixel_width * components * bytes);
+#else
+ data = (char *)_TIFFmalloc(image_info->image_width * components * bytes);
+#endif
+
+ if (!data)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_NO_MEM);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ TIFFSetField(tiffile, TIFFTAG_IMAGEWIDTH, image_info->image_width);
+ TIFFSetField(tiffile, TIFFTAG_IMAGELENGTH, image_info->image_height);
+ TIFFSetField(tiffile, TIFFTAG_ORIENTATION, ORIENTATION_TOPLEFT);
+ TIFFSetField(tiffile, TIFFTAG_BITSPERSAMPLE, image_info->depth);
+ TIFFSetField(tiffile, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG);
+ TIFFSetField(tiffile, TIFFTAG_COMPRESSION, compression);
+ TIFFSetField(tiffile, TIFFTAG_SAMPLESPERPIXEL, components);
+ TIFFSetField(tiffile, TIFFTAG_SOFTWARE, "xsane");
+
+ time(&now);
+ ptm = localtime(&now);
+ sprintf(buf, "%04d:%02d:%02d %02d:%02d:%02d", 1900+ptm->tm_year, ptm->tm_mon+1, ptm->tm_mday, ptm->tm_hour, ptm->tm_min, ptm->tm_sec);
+ TIFFSetField(tiffile, TIFFTAG_DATETIME, buf);
+
+ TIFFSetField(tiffile, TIFFTAG_RESOLUTIONUNIT, RESUNIT_INCH);
+ TIFFSetField(tiffile, TIFFTAG_XRESOLUTION, image_info->resolution_x);
+ TIFFSetField(tiffile, TIFFTAG_YRESOLUTION, image_info->resolution_y);
+
+ if (compression == COMPRESSION_JPEG)
+ {
+ TIFFSetField(tiffile, TIFFTAG_JPEGQUALITY, quality);
+ TIFFSetField(tiffile, TIFFTAG_JPEGCOLORMODE, JPEGCOLORMODE_RAW); /* should be default, but to be sure */
+ }
+
+ if (image_info->colors == 3)
+ {
+ TIFFSetField(tiffile, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_RGB);
+ }
+ else
+ {
+ if (image_info->depth == 1) /* lineart */
+ {
+ TIFFSetField(tiffile, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_MINISWHITE);
+ }
+ else /* grayscale */
+ {
+ TIFFSetField(tiffile, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_MINISBLACK);
+ }
+ }
+
+ TIFFSetField(tiffile, TIFFTAG_ROWSPERSTRIP, TIFFDefaultStripSize(tiffile, -1));
+
+ w = TIFFScanlineSize(tiffile);
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ fread(data, 1, w, imagefile);
+
+ TIFFWriteScanline(tiffile, data, y, 0);
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ TIFFClose(tiffile);
+#if 0
+ free(data);
+#else
+ _TIFFfree(data);
+#endif
+ return (*cancel_save);
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+int xsane_save_png(FILE *outfile, FILE *imagefile, Image_info *image_info, int compression, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ png_structp png_ptr;
+ png_infop png_info_ptr;
+ png_bytep row_ptr;
+ png_color_8 sig_bit;
+ unsigned char *data;
+ char buf[256];
+ int colortype, components, byte_width;
+ int y;
+
+ DBG(DBG_proc, "xsane_save_png\n");
+
+ *cancel_save = 0;
+
+ png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0);
+ if (!png_ptr)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_LIBTIFF);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ png_info_ptr = png_create_info_struct(png_ptr);
+ if (!png_info_ptr)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_LIBTIFF);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ if (setjmp(png_ptr->jmpbuf))
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_LIBPNG);
+ xsane_back_gtk_error(buf, TRUE);
+ png_destroy_write_struct(&png_ptr, (png_infopp) 0);
+ return -1; /* error */
+ }
+
+ byte_width = image_info->image_width;
+
+ if (image_info->colors == 4) /* RGBA */
+ {
+ components = 4;
+ colortype = PNG_COLOR_TYPE_RGB_ALPHA;
+ }
+ else if (image_info->colors == 3) /* RGB */
+ {
+ components = 3;
+ colortype = PNG_COLOR_TYPE_RGB;
+ }
+ else /* gray or black/white */
+ {
+ components = 1;
+ colortype = PNG_COLOR_TYPE_GRAY;
+ }
+
+ png_init_io(png_ptr, outfile);
+ png_set_compression_level(png_ptr, compression);
+ png_set_IHDR(png_ptr, png_info_ptr, image_info->image_width, image_info->image_height, image_info->depth,
+ colortype, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE);
+
+ if (image_info->colors >=3)
+ {
+ sig_bit.red = image_info->depth;
+ sig_bit.green = image_info->depth;
+ sig_bit.blue = image_info->depth;
+
+ if (image_info->colors == 4)
+ {
+ sig_bit.alpha = image_info->depth;
+ }
+
+ }
+ else
+ {
+ sig_bit.gray = image_info->depth;
+
+ if (image_info->depth == 1)
+ {
+ byte_width = (image_info->image_width+7)/8;
+ png_set_invert_mono(png_ptr);
+ }
+ }
+
+ png_set_sBIT(png_ptr, png_info_ptr, &sig_bit);
+#if defined(PNG_pHYs_SUPPORTED)
+ png_set_pHYs(png_ptr, png_info_ptr,
+ image_info->resolution_x * 100.0 / 2.54,
+ image_info->resolution_y * 100.0 / 2.54, PNG_RESOLUTION_METER);
+#endif
+ png_write_info(png_ptr, png_info_ptr);
+ png_set_shift(png_ptr, &sig_bit);
+
+ data = malloc(image_info->image_width * components);
+
+ if (!data)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_NO_MEM);
+ xsane_back_gtk_error(buf, TRUE);
+ png_destroy_write_struct(&png_ptr, (png_infopp) 0);
+ return -1; /* error */
+ }
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ fread(data, components, byte_width, imagefile);
+
+ row_ptr = data;
+ png_write_rows(png_ptr, &row_ptr, 1);
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ free(data);
+ png_write_end(png_ptr, png_info_ptr);
+ png_destroy_write_struct(&png_ptr, (png_infopp) 0);
+
+ return (*cancel_save);
+}
+#endif
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+int xsane_save_png_16(FILE *outfile, FILE *imagefile, Image_info *image_info, int compression, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ png_structp png_ptr;
+ png_infop png_info_ptr;
+ png_bytep row_ptr;
+ png_color_8 sig_bit; /* should be 16, but then I get a warning about wrong type */
+ unsigned char *data;
+ char buf[256];
+ int colortype, components;
+ int x,y;
+ guint16 val;
+
+ DBG(DBG_proc, "xsane_save_png16\n");
+
+ *cancel_save = 0;
+
+ png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0);
+ if (!png_ptr)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_LIBPNG);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ png_info_ptr = png_create_info_struct(png_ptr);
+ if (!png_info_ptr)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_LIBPNG);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ if (setjmp(png_ptr->jmpbuf))
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_LIBPNG);
+ xsane_back_gtk_error(buf, TRUE);
+ png_destroy_write_struct(&png_ptr, (png_infopp) 0);
+ return -1; /* error */
+ }
+
+ if (image_info->colors == 4) /* RGBA */
+ {
+ components = 4;
+ colortype = PNG_COLOR_TYPE_RGB_ALPHA;
+ }
+ else if (image_info->colors == 3) /* RGB */
+ {
+ components = 3;
+ colortype = PNG_COLOR_TYPE_RGB;
+ }
+ else /* gray or black/white */
+ {
+ components = 1;
+ colortype = PNG_COLOR_TYPE_GRAY;
+ }
+
+ png_init_io(png_ptr, outfile);
+ png_set_compression_level(png_ptr, compression);
+ png_set_IHDR(png_ptr, png_info_ptr, image_info->image_width, image_info->image_height, 16,
+ colortype, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE);
+
+ sig_bit.red = image_info->depth;
+ sig_bit.green = image_info->depth;
+ sig_bit.blue = image_info->depth;
+ sig_bit.alpha = image_info->depth;
+ sig_bit.gray = image_info->depth;
+
+ png_set_sBIT(png_ptr, png_info_ptr, &sig_bit);
+ png_write_info(png_ptr, png_info_ptr);
+ png_set_shift(png_ptr, &sig_bit);
+ png_set_packing(png_ptr);
+
+ data = malloc(image_info->image_width * components * 2);
+
+ if (!data)
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_DURING_SAVE, ERR_NO_MEM);
+ xsane_back_gtk_error(buf, TRUE);
+ png_destroy_write_struct(&png_ptr, (png_infopp) 0);
+ return -1; /* error */
+ }
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < image_info->image_width * components; x++) /* this must be changed in dependance of endianess */
+ {
+ fread(&val, 2, 1, imagefile); /* get data in machine order */
+ data[x*2+0] = val/256; /* write data in network order (MSB first) */
+ data[x*2+1] = val & 255;
+ }
+
+ row_ptr = data;
+ png_write_rows(png_ptr, &row_ptr, 1);
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ free(data);
+ png_write_end(png_ptr, png_info_ptr);
+ png_destroy_write_struct(&png_ptr, (png_infopp) 0);
+
+ return (*cancel_save);
+}
+#endif
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_pnm_16_gray(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x,y;
+ guint16 val;
+ int count = 0;
+
+ DBG(DBG_proc, "xsane_save_pnm_16_gray\n");
+
+ *cancel_save = 0;
+
+ /* write pgm ascii > 8 bpp */
+ fprintf(outfile, "P2\n# SANE data follows\n%d %d\n65535\n", image_info->image_width, image_info->image_height);
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ for (x = 0; x < image_info->image_width; x++)
+ {
+ fread(&val, 2, 1, imagefile); /* get data in machine order */
+ fprintf(outfile, "%d ", val);
+
+ if (++count >= 10)
+ {
+ fprintf(outfile, "\n");
+ count = 0;
+ }
+ }
+ fprintf(outfile, "\n");
+ count = 0;
+
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_pnm_16_color(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int x,y;
+ guint16 val;
+ int count = 0;
+
+ DBG(DBG_proc, "xsane_save_pnm_16_color\n");
+
+ *cancel_save = 0;
+
+ /* write ppm ascii > 8 bpp */
+ fprintf(outfile, "P3\n# SANE data follows\n%d %d\n65535\n", image_info->image_width, image_info->image_height);
+
+ for (y = 0; y < image_info->image_height; y++)
+ {
+ gtk_progress_bar_update(progress_bar, (float) y / image_info->image_height);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ for (x = 0; x < image_info->image_width; x++)
+ {
+ fread(&val, 2, 1, imagefile); /* get data in machine order */
+ fprintf(outfile, "%d ", val);
+
+ fread(&val, 2, 1, imagefile);
+ fprintf(outfile, "%d ", val);
+
+ fread(&val, 2, 1, imagefile);
+ fprintf(outfile, "%d ", val);
+
+ if (++count >= 3)
+ {
+ fprintf(outfile, "\n");
+ count = 0;
+ }
+ }
+ fprintf(outfile, "\n");
+ count = 0;
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_save_pnm_16(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ DBG(DBG_proc, "xsane_save_pnm_16\n");
+
+ if (image_info->colors > 1)
+ {
+ xsane_save_pnm_16_color(outfile, imagefile, image_info, progress_bar, cancel_save);
+ }
+ else
+ {
+ xsane_save_pnm_16_gray(outfile, imagefile, image_info, progress_bar, cancel_save);
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* 0=ok, <0=error, 1=canceled */
+int xsane_save_image_as_lineart(char *input_filename, char *output_filename, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ FILE *outfile;
+ FILE *infile;
+ char buf[256];
+ Image_info image_info;
+
+ *cancel_save = 0;
+
+ outfile = fopen(output_filename, "wb"); /* b = binary mode for win32 */
+
+ if (outfile == 0)
+ {
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, output_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ return -2;
+ }
+
+ infile = fopen(input_filename, "rb"); /* read binary (b for win32) */
+ if (infile == 0)
+ {
+ char buf[256];
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, input_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+
+ fclose(outfile);
+ remove(output_filename); /* remove already created output file */
+ return -1;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ xsane_save_grayscale_image_as_lineart(outfile, infile, &image_info, progress_bar, cancel_save);
+
+ fclose(infile);
+ fclose(outfile);
+
+ if (*cancel_save) /* remove output file if saving has been canceled */
+ {
+ remove(output_filename);
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+
+int xsane_save_image_as(char *input_filename, char *output_filename, int output_format, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ FILE *outfile;
+ FILE *infile;
+ char buf[256];
+ Image_info image_info;
+
+ infile = fopen(input_filename, "rb"); /* read binary (b for win32) */
+ if (infile == 0)
+ {
+ char buf[256];
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, input_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+
+ return -1;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+#ifdef HAVE_LIBTIFF
+ if (output_format == XSANE_TIFF) /* routines that want to have filename for saving */
+ {
+ xsane_save_tiff(output_filename, infile, &image_info, preferences.jpeg_quality, progress_bar, cancel_save);
+ }
+ else /* routines that want to have filedescriptor for saving */
+#endif /* HAVE_LIBTIFF */
+ {
+ if (xsane_create_secure_file(output_filename)) /* remove possibly existing symbolic links for security */
+ {
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, output_filename);
+ xsane_back_gtk_error(buf, TRUE);
+ return -1; /* error */
+ }
+
+ outfile = fopen(output_filename, "wb"); /* b = binary mode for win32 */
+
+ if (outfile != 0)
+ {
+ switch(output_format)
+ {
+ case XSANE_PNM:
+ xsane_save_rotate_image(outfile, infile, &image_info, 0, progress_bar, cancel_save);
+ break;
+
+#ifdef HAVE_LIBJPEG
+ case XSANE_JPEG:
+ xsane_save_jpeg(outfile, infile, &image_info, preferences.jpeg_quality, progress_bar, cancel_save);
+ break; /* switch format == XSANE_JPEG */
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ case XSANE_PNG:
+ if (image_info.depth <= 8)
+ {
+ xsane_save_png(outfile, infile, &image_info, preferences.png_compression, progress_bar, cancel_save);
+ }
+ else
+ {
+ xsane_save_png_16(outfile, infile, &image_info, preferences.png_compression, progress_bar, cancel_save);
+ }
+ break; /* switch format == XSANE_PNG */
+#endif
+#endif
+
+ case XSANE_PNM16:
+ xsane_save_pnm_16(outfile, infile, &image_info, progress_bar, cancel_save);
+ break; /* switch fomat == XSANE_PNM16 */
+
+ case XSANE_PS: /* save postscript, use original size */
+ {
+ float imagewidth, imageheight;
+
+ imagewidth = image_info.image_width/image_info.resolution_x; /* width in inch */
+ imageheight = image_info.image_height/image_info.resolution_y; /* height in inch */
+
+ xsane_save_ps(outfile, infile,
+ &image_info,
+ 0.0, /* left edge */
+ 0.0, /* botoom edge */
+ imagewidth, imageheight,
+ 0.0, /* paperwidth */
+ 0.0, /* paperheight */
+ 0 /* portrait */,
+ progress_bar,
+ cancel_save);
+ }
+ break; /* switch format == XSANE_PS */
+
+
+ default:
+ snprintf(buf, sizeof(buf),"%s", ERR_UNKNOWN_SAVING_FORMAT);
+ xsane_back_gtk_error(buf, TRUE);
+
+ fclose(outfile);
+ fclose(infile);
+
+ remove(output_filename); /* no usable output: remove output file */
+
+ return -2;
+ break; /* switch format == default */
+ }
+ fclose(outfile);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, output_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+
+ fclose(infile);
+ return -2;
+ }
+ }
+
+ fclose (infile);
+
+ if (*cancel_save) /* remove output file if saving has been canceled */
+ {
+ remove(output_filename);
+ }
+
+ return (*cancel_save);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+static int xsane_decode_devname(const char *encoded_devname, int n, char *buf)
+{
+ char *dst, *limit;
+ const char *src;
+ char ch, val;
+
+ DBG(DBG_proc, "xsane_decode_devname\n");
+
+ limit = buf + n;
+ for (src = encoded_devname, dst = buf; *src; ++dst)
+ {
+ if (dst >= limit)
+ {
+ return -1;
+ }
+
+ ch = *src++;
+ /* don't use the ctype.h macros here since we don't want to allow anything non-ASCII here... */
+ if (ch != '-')
+ {
+ *dst = ch;
+ }
+ else /* decode */
+ {
+ ch = *src++;
+ if (ch == '-')
+ {
+ *dst = ch;
+ }
+ else
+ {
+ if (ch >= 'a' && ch <= 'f')
+ {
+ val = (ch - 'a') + 10;
+ }
+ else
+ {
+ val = (ch - '0');
+ }
+ val <<= 4;
+
+ ch = *src++;
+ if (ch >= 'a' && ch <= 'f')
+ {
+ val |= (ch - 'a') + 10;
+ }
+ else
+ {
+ val |= (ch - '0');
+ }
+
+ *dst = val;
+
+ ++src; /* simply skip terminating '-' for now... */
+ }
+ }
+ }
+
+ if (dst >= limit)
+ {
+ return -1;
+ }
+
+ *dst = '\0';
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_encode_devname(const char *devname, int n, char *buf)
+{
+ static const char hexdigit[] = "0123456789abcdef";
+ char *dst, *limit;
+ const char *src;
+ char ch;
+
+ DBG(DBG_proc, "xsane_encode_devname\n");
+
+ limit = buf + n;
+ for (src = devname, dst = buf; *src; ++src)
+ {
+ if (dst >= limit)
+ {
+ return -1;
+ }
+
+ ch = *src;
+ /* don't use the ctype.h macros here since we don't want to allow anything non-ASCII here... */
+ if ((ch >= '0' && ch <= '9') || (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
+ {
+ *dst++ = ch;
+ }
+ else /* encode */
+ {
+ if (dst + 4 >= limit)
+ {
+ return -1;
+ }
+
+ *dst++ = '-';
+ if (ch == '-')
+ {
+ *dst++ = '-';
+ }
+ else
+ {
+ *dst++ = hexdigit[(ch >> 4) & 0x0f];
+ *dst++ = hexdigit[(ch >> 0) & 0x0f];
+ *dst++ = '-';
+ }
+ }
+ }
+
+ if (dst >= limit)
+ {
+ return -1;
+ }
+
+ *dst = '\0';
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_gimp_query(void)
+{
+ static GimpParamDef args[] =
+ {
+ {GIMP_PDB_INT32, "run_mode", "Interactive, non-interactive"},
+ };
+ static GimpParamDef *return_vals = NULL;
+ static int nargs = sizeof(args) / sizeof(args[0]);
+ static int nreturn_vals = 0;
+ char mpath[1024];
+ char name[1024];
+ size_t len;
+ int i, j;
+
+ DBG(DBG_proc, "xsane_gimp_query\n");
+
+ snprintf(name, sizeof(name), "%s", xsane.prog_name);
+#ifdef GIMP_CHECK_VERSION
+# if GIMP_CHECK_VERSION(1,1,9)
+ snprintf(mpath, sizeof(mpath), "%s", XSANE_GIMP_MENU_DIALOG);
+# else
+ snprintf(mpath, sizeof(mpath), "%s", XSANE_GIMP_MENU_DIALOG_OLD);
+# endif
+#else
+ snprintf(mpath, sizeof(mpath), "%s", XSANE_GIMP_MENU_DIALOG_OLD);
+#endif
+ gimp_install_procedure(name,
+ XSANE_GIMP_INSTALL_BLURB,
+ XSANE_GIMP_INSTALL_HELP,
+ XSANE_AUTHOR,
+ XSANE_COPYRIGHT,
+ XSANE_DATE,
+ mpath,
+ 0, /* "RGB, GRAY", */
+ GIMP_EXTENSION,
+ nargs, nreturn_vals,
+ args, return_vals);
+
+ sane_init(&xsane.sane_backend_versioncode, (void *) xsane_authorization_callback);
+ if (SANE_VERSION_MAJOR(xsane.sane_backend_versioncode) != SANE_V_MAJOR)
+ {
+ DBG(DBG_error0, "\n\n"
+ "%s %s:\n"
+ " %s\n"
+ " %s %d\n"
+ " %s %d\n"
+ "%s\n\n",
+ xsane.prog_name, ERR_ERROR,
+ ERR_MAJOR_VERSION_NR_CONFLICT,
+ ERR_XSANE_MAJOR_VERSION, SANE_V_MAJOR,
+ ERR_BACKEND_MAJOR_VERSION, SANE_VERSION_MAJOR(xsane.sane_backend_versioncode),
+ ERR_PROGRAM_ABORTED);
+ return;
+ }
+
+ sane_get_devices(&xsane.devlist, SANE_FALSE);
+
+ for (i = 0; xsane.devlist[i]; ++i)
+ {
+ snprintf(name, sizeof(name), "%s-", xsane.prog_name);
+ if (xsane_encode_devname(xsane.devlist[i]->name, sizeof(name) - 6, name + 6) < 0)
+ {
+ continue; /* name too long... */
+ }
+
+#ifdef GIMP_CHECK_VERSION
+# if GIMP_CHECK_VERSION(1,1,9)
+ snprintf(mpath, sizeof(mpath), "%s", XSANE_GIMP_MENU);
+# else
+ snprintf(mpath, sizeof(mpath), "%s", XSANE_GIMP_MENU_OLD);
+# endif
+#else
+ snprintf(mpath, sizeof(mpath), "%s", XSANE_GIMP_MENU_OLD);
+#endif
+ len = strlen(mpath);
+ for (j = 0; xsane.devlist[i]->name[j]; ++j)
+ {
+ if (xsane.devlist[i]->name[j] == '/')
+ {
+ mpath[len++] = '\'';
+ }
+ else
+ {
+ mpath[len++] = xsane.devlist[i]->name[j];
+ }
+ }
+ mpath[len++] = '\0';
+
+ gimp_install_procedure(name,
+ XSANE_GIMP_INSTALL_BLURB,
+ XSANE_GIMP_INSTALL_HELP,
+ XSANE_AUTHOR,
+ XSANE_COPYRIGHT,
+ XSANE_DATE,
+ mpath,
+ 0, /* "RGB, GRAY", */
+ GIMP_EXTENSION,
+ nargs, nreturn_vals,
+ args, return_vals);
+ }
+
+ sane_exit();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_gimp_run(char *name, int nparams, GimpParam * param, int *nreturn_vals, GimpParam ** return_vals)
+{
+ static GimpParam values[2];
+ GimpRunModeType run_mode;
+ char devname[1024];
+ char *args[2];
+ int nargs;
+
+ DBG(DBG_proc, "xsane_gimp_run\n");
+
+ run_mode = param[0].data.d_int32;
+ xsane.mode = XSANE_GIMP_EXTENSION;
+ xsane.xsane_mode = XSANE_SAVE;
+
+ *nreturn_vals = 1;
+ *return_vals = values;
+
+ values[0].type = GIMP_PDB_STATUS;
+ values[0].data.d_status = GIMP_PDB_CALLING_ERROR;
+
+ nargs = 0;
+ args[nargs++] = "xsane";
+
+ xsane.selected_dev = -1;
+ if (strncmp(name, "xsane-", 6) == 0)
+ {
+ if (xsane_decode_devname(name + 6, sizeof(devname), devname) < 0)
+ {
+ return; /* name too long */
+ }
+ args[nargs++] = devname;
+ }
+
+ switch (run_mode)
+ {
+ case GIMP_RUN_INTERACTIVE:
+ xsane_interface(nargs, args);
+ values[0].data.d_status = GIMP_PDB_SUCCESS;
+ break;
+
+ case GIMP_RUN_NONINTERACTIVE:
+ /* Make sure all the arguments are there! */
+ break;
+
+ case GIMP_RUN_WITH_LAST_VALS:
+ /* Possibly retrieve data */
+ break;
+
+ default:
+ break;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void null_print_func(gchar *msg)
+{
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_transfer_to_gimp(char *input_filename, GtkProgressBar *progress_bar, int *cancel_save)
+{
+ int remaining;
+ size_t tile_size;
+ GimpImageType image_type = GIMP_GRAY;
+ GimpImageType drawable_type = GIMP_GRAY_IMAGE;
+ gint32 layer_ID;
+ gint32 image_ID;
+ GimpDrawable *drawable;
+ guchar *tile;
+ GimpPixelRgn region;
+ unsigned tile_offset;
+ int i, x, y;
+ Image_info image_info;
+ FILE *imagefile;
+
+ DBG(DBG_info, "xsane_transer_to_gimp\n");
+
+ *cancel_save = 0;
+
+ imagefile = fopen(input_filename, "rb"); /* read binary (b for win32) */
+ if (imagefile == 0)
+ {
+ char buf[256];
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, input_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+
+ return -1;
+ }
+
+ xsane_read_pnm_header(imagefile, &image_info);
+
+ x = 0;
+ y = 0;
+ tile_offset = 0;
+ tile_size = image_info.image_width * gimp_tile_height();
+
+ if (image_info.colors == 3) /* RGB */
+ {
+ tile_size *= 3; /* 24 bits/pixel RGB */
+ image_type = GIMP_RGB;
+ drawable_type = GIMP_RGB_IMAGE;
+ }
+ else if (image_info.colors == 4) /* RGBA */
+ {
+ tile_size *= 4; /* 32 bits/pixel RGBA */
+ image_type = GIMP_RGB;
+ drawable_type = GIMP_RGBA_IMAGE; /* interpret infrared as alpha */
+ }
+ /* colors == 0/1 is predefined */
+
+ image_ID = gimp_image_new(image_info.image_width, image_info.image_height, image_type);
+
+/* the following is supported since gimp-1.1.? */
+#ifdef GIMP_HAVE_RESOLUTION_INFO
+ if (image_info.resolution_x > 0)
+ {
+ gimp_image_set_resolution(image_ID, image_info.resolution_x, image_info.resolution_y);
+ }
+/* gimp_image_set_unit(image_ID, unit?); */
+#endif
+
+ layer_ID = gimp_layer_new(image_ID, "Background", image_info.image_width, image_info.image_height, drawable_type, 100.0, GIMP_NORMAL_MODE);
+ gimp_image_add_layer(image_ID, layer_ID, 0);
+ drawable = gimp_drawable_get(layer_ID);
+ gimp_pixel_rgn_init(&region, drawable, 0, 0, drawable->width, drawable->height, TRUE, FALSE);
+ tile = g_new(guchar, tile_size);
+
+
+ if (image_info.colors == 1) /* gray */
+ {
+ switch (image_info.depth)
+ {
+ case 1: /* 1 bit gray => conversion to 8 bit gray */
+ for (i = 0; i < ( (image_info.image_width + 7) / 8) * image_info.image_height; ++i)
+ {
+ u_char mask;
+ int j;
+
+ mask = fgetc(imagefile);
+ for (j = 7; j >= 0; --j)
+ {
+ u_char gl = (mask & (1 << j)) ? 0x00 : 0xff;
+ tile[tile_offset++] = gl;
+
+ x++;
+
+ if (x >= image_info.image_width)
+ {
+ int tile_height = gimp_tile_height();
+
+ x = 0;
+ y++;
+
+ if (y % tile_height == 0)
+ {
+ gimp_pixel_rgn_set_rect(&region, tile, 0, y - tile_height, image_info.image_width, tile_height);
+ tile_offset = 0;
+ }
+
+ gtk_progress_bar_update(progress_bar, (float) y / image_info.image_height); /* update progress bar */
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ break; /* leave for j loop */
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break; /* leave switch depth 1 */
+
+ case 8: /* 8 bit gray */
+ case 16: /* 16 bit gray already has been reduced to 8 bit */
+ for (i = 0; i < image_info.image_width * image_info.image_height; ++i)
+ {
+ tile[tile_offset++] = fgetc(imagefile);
+ x++;
+
+ if (x >= image_info.image_width)
+ {
+ int tile_height = gimp_tile_height();
+
+ x = 0;
+ y++;
+
+ if (y % tile_height == 0)
+ {
+ gimp_pixel_rgn_set_rect(&region, tile, 0, y - tile_height, image_info.image_width, tile_height);
+ tile_offset = 0;
+ }
+
+ gtk_progress_bar_update(progress_bar, (float) y / image_info.image_height); /* update progress bar */
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break; /* leave switch depth */
+
+ default: /* bad depth */
+ break; /* default */
+ }
+ }
+ else if (image_info.colors == 3) /* RGB */
+ {
+ switch (image_info.depth)
+ {
+ case 8: /* 8 bit RGB */
+ case 16: /* 16 bit RGB already has been reduced to 8 bit */
+ for (i = 0; i < image_info.image_width * image_info.image_height*3; ++i)
+ {
+ tile[tile_offset++] = fgetc(imagefile);
+ if (tile_offset % 3 == 0)
+ {
+ x++;
+
+ if (x >= image_info.image_width)
+ {
+ int tile_height = gimp_tile_height();
+
+ x = 0;
+ y++;
+
+ if (y % tile_height == 0)
+ {
+ gimp_pixel_rgn_set_rect(&region, tile, 0, y - tile_height, image_info.image_width, tile_height);
+ tile_offset = 0;
+ }
+
+ gtk_progress_bar_update(progress_bar, (float) y / image_info.image_height); /* update progress bar */
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break; /* case 8 */
+
+ default: /* bad depth */
+ break; /* default */
+ }
+ }
+#ifdef SUPPORT_RGBA
+ else if (colors == 4) /* RGBA */
+ {
+ int i;
+
+ switch (bits)
+ {
+ case 8: /* 8 bit RGBA */
+ case 16: /* 16 bit RGBA already has been reduced to 8 bit */
+ for (i = 0; i < pixel_width*pixel_height*4; ++i)
+ {
+ tile[tile_offset++] = fgetc(imagefile);
+ if (tile_offset % 4 == 0)
+ {
+ x++;
+
+ if (x >= pixel_width)
+ {
+ int tile_height = gimp_tile_height();
+
+ x = 0;
+ y++;
+
+ if (y % tile_height == 0)
+ {
+ gimp_pixel_rgn_set_rect(&region, tile, 0, y - tile_height, pixel_width, tile_height);
+ tile_offset = 0;
+ }
+
+ gtk_progress_bar_update(progress_bar, (float) y / pixel_height); /* update progress bar */
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+ }
+
+ if (*cancel_save)
+ {
+ break;
+ }
+ }
+ break;
+
+ default: /* bad depth */
+ break;
+ }
+ }
+#endif
+
+/* scan_done part */
+ if (y > image_info.image_height)
+ {
+ y = image_info.image_height;
+ }
+
+ remaining = y % gimp_tile_height();
+
+ if (remaining)
+ {
+ gimp_pixel_rgn_set_rect(&region, tile, 0, y - remaining, image_info.image_width, remaining);
+ }
+
+ gimp_drawable_flush(drawable);
+ gimp_display_new(image_ID);
+ gimp_drawable_detach(drawable);
+ g_free(tile);
+ tile = 0;
+
+ fclose(imagefile);
+
+ return 0;
+}
+#endif /* HAVE_LIBGIMP_GIMP_H */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#ifdef XSANE_ACTIVATE_MAIL
+
+/* character base of base64 coding */
+static const char base64[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void write_3chars_as_base64(unsigned char c1, unsigned char c2, unsigned char c3, int pads, int fd_socket)
+{
+ char buf[4];
+
+ buf[0] = base64[c1>>2]; /* wirte bits 7-2 of first char */
+ buf[1] = base64[((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4)]; /* write bits 1,0 of first and bits 7-4 of second char */
+
+ if (pads == 2) /* only one byte used */
+ {
+ buf[2] = '='; /* char not used */
+ buf[3] = '='; /* char not used */
+ }
+ else if (pads) /* only two bytes used */
+ {
+ buf[2] = base64[((c2 & 0xF) << 2)]; /* write bits 3-0 of second char */
+ buf[3] = '='; /* char not used */
+ }
+ else
+ {
+ buf[2] = base64[((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6)]; /* write bits 3-0 of second and bits 7,6 of third char */
+ buf[3] = base64[c3 & 0x3F]; /* write bits 5-0 of third char as lsb */
+ }
+
+ write(fd_socket, buf, 4);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_base64(int fd_socket, FILE *infile)
+{
+ int c1, c2, c3;
+ int pos=0;
+
+ while ((c1 = getc(infile)) != EOF)
+ {
+ c2 = getc(infile);
+ if (c2 == EOF)
+ {
+ write_3chars_as_base64(c1, 0, 0, 2, fd_socket);
+ }
+ else
+ {
+ c3 = getc(infile);
+ if (c3 == EOF)
+ {
+ write_3chars_as_base64(c1, c2, 0, 1, fd_socket);
+ }
+ else
+ {
+ write_3chars_as_base64(c1, c2, c3, 0, fd_socket);
+ }
+ }
+
+ pos += 4;
+ if (pos > 71)
+ {
+ write(fd_socket, "\n", 1);
+
+ pos = 0;
+ }
+ }
+
+ if (pos)
+ {
+ write(fd_socket, "\n", 1);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_mail_header(int fd_socket, char *from, char *reply_to, char *to, char *subject, char *boundary, int related)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "From: %s\n", from);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Reply-To: %s\n", reply_to);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "To: %s\n", to);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Subject: %s\n", subject);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "MIME-Version: 1.0\n");
+ write(fd_socket, buf, strlen(buf));
+
+ if (related) /* related means that we need a special link in the html part to display the image */
+ {
+ snprintf(buf, sizeof(buf), "Content-Type: multipart/related;\n");
+ write(fd_socket, buf, strlen(buf));
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "Content-Type: multipart/mixed;\n");
+ write(fd_socket, buf, strlen(buf));
+ }
+
+ snprintf(buf, sizeof(buf), " boundary=\"%s\"\n\n", boundary);
+ write(fd_socket, buf, strlen(buf));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_mail_footer(int fd_socket, char *boundary)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "--%s--\n", boundary);
+ write(fd_socket, buf, strlen(buf));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_mail_mime_ascii(int fd_socket, char *boundary)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "--%s\n", boundary);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Type: text/plain;\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), " charset=\"iso-8859-1\"\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Transfer-Encoding: 8bit\n\n");
+ write(fd_socket, buf, strlen(buf));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_mail_mime_html(int fd_socket, char *boundary)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "--%s\n", boundary);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Type: text/html;\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), " charset=\"us-ascii\"\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Transfer-Encoding: 7bit\n\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "<!doctype html public \"-//w3c//dtd html 4.0 transitional//en\">\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "<html>\n");
+ write(fd_socket, buf, strlen(buf));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_mail_attach_image_png(int fd_socket, char *boundary, char *content_id, FILE *infile, char *filename)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "--%s\n", boundary);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Type: image/png\n");
+ write(fd_socket, buf, strlen(buf));
+
+ if (content_id)
+ {
+ snprintf(buf, sizeof(buf), "Content-ID: <%s>\n", content_id);
+ write(fd_socket, buf, strlen(buf));
+ }
+
+ snprintf(buf, sizeof(buf), "Content-Transfer-Encoding: base64\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Disposition: inline;\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), " filename=\"%s\"\n", filename);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "\n");
+ write(fd_socket, buf, strlen(buf));
+
+ write_base64(fd_socket, infile);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void write_mail_attach_file(int fd_socket, char *boundary, FILE *infile, char *filename)
+{
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "--%s\n", boundary);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Type: application/octet-stream\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), " name=\"%s\"\n", filename);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Transfer-Encoding: base64\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "Content-Disposition: attachment;\n");
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), " filename=\"%s\"\n", filename);
+ write(fd_socket, buf, strlen(buf));
+
+ snprintf(buf, sizeof(buf), "\n");
+ write(fd_socket, buf, strlen(buf));
+
+ write_base64(fd_socket, infile);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* returns fd_socket if sucessfull, < 0 when error occured */
+int open_socket(char *server, int port)
+{
+ int fd_socket;
+ struct sockaddr_in sin;
+ struct hostent *he;
+
+ he = gethostbyname(server);
+ if (!he)
+ {
+ DBG(DBG_error, "open_socket: Could not get hostname of \"%s\"\n", server);
+ return -1;
+ }
+ else
+ {
+ DBG(DBG_info, "open_socket: connecting to \"%s\" = %d.%d.%d.%d\n",
+ he->h_name,
+ (unsigned char) he->h_addr_list[0][0],
+ (unsigned char) he->h_addr_list[0][1],
+ (unsigned char) he->h_addr_list[0][2],
+ (unsigned char) he->h_addr_list[0][3]);
+ }
+
+ if (he->h_addrtype != AF_INET)
+ {
+ DBG(DBG_error, "open_socket: Unknown address family: %d\n", he->h_addrtype);
+ return -1;
+ }
+
+ fd_socket = socket(AF_INET, SOCK_STREAM, 0);
+
+ if (fd_socket < 0)
+ {
+ DBG(DBG_error, "open_socket: Could not create socket: %s\n", strerror(errno));
+ return -1;
+ }
+
+/* setsockopt (dev->ctl, level, TCP_NODELAY, &on, sizeof (on)); */
+
+ sin.sin_port = htons(port);
+ sin.sin_family = AF_INET;
+ memcpy(&sin.sin_addr, he->h_addr_list[0], he->h_length);
+
+ if (connect(fd_socket, &sin, sizeof(sin)))
+ {
+ DBG(DBG_error, "open_socket: Could not connect with port %d of socket: %s\n", ntohs(sin.sin_port), strerror(errno));
+ return -1;
+ }
+
+ DBG(DBG_info, "open_socket: Connected with port %d\n", ntohs(sin.sin_port));
+
+ return fd_socket;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* returns 0 if success */
+/* not only a write routine, also reads data */
+int pop3_login(int fd_socket, char *user, char *passwd)
+{
+ char buf[1024];
+ int len;
+
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ snprintf(buf, sizeof(buf), "USER %s\r\n", user);
+ DBG(DBG_info2, "> USER xxx\n");
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+ if (buf[0] != '+')
+ {
+ return -1;
+ }
+
+ snprintf(buf, sizeof(buf), "PASS %s\r\n", passwd);
+ DBG(DBG_info2, "> PASS xxx\n");
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+ if (buf[0] != '+')
+ {
+ return -1;
+ }
+
+ snprintf(buf, sizeof(buf), "QUIT\r\n");
+ DBG(DBG_info2, "> QUIT\n");
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* not only a write routine, also reads data */
+int write_smtp_header(int fd_socket, char *from, char *to)
+{
+ char buf[1024];
+ int len;
+
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ snprintf(buf, sizeof(buf), "helo localhost\r\n");
+ DBG(DBG_info2, "> %s", buf);
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ snprintf(buf, sizeof(buf), "MAIL FROM: %s\r\n", from);
+ DBG(DBG_info2, "> %s", buf);
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ snprintf(buf, sizeof(buf), "RCPT TO: %s\r\n", to);
+ DBG(DBG_info2, "> %s", buf);
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ snprintf(buf, sizeof(buf), "DATA\r\n");
+ DBG(DBG_info2, "> %s", buf);
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* not only a write routine, also reads data */
+int write_smtp_footer(int fd_socket)
+{
+ char buf[1024];
+ int len;
+
+ snprintf(buf, sizeof(buf), ".\r\n");
+ DBG(DBG_info2, "> %s", buf);
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ snprintf(buf, sizeof(buf), "QUIT\r\n");
+ DBG(DBG_info2, "> %s", buf);
+ write(fd_socket, buf, strlen(buf));
+ len = read(fd_socket, buf, sizeof(buf));
+ if (len >= 0)
+ {
+ buf[len] = 0;
+ }
+ DBG(DBG_info2, "< %s\n", buf);
+
+ return 0;
+}
+
+#endif
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-save.h b/src/xsane-save.h
new file mode 100644
index 0000000..ad30dba
--- /dev/null
+++ b/src/xsane-save.h
@@ -0,0 +1,62 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-save.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern int xsane_create_secure_file(const char *filename);
+extern void xsane_cancel_save();
+extern void xsane_convert_text_to_filename(char **filename);
+extern void xsane_update_counter_in_filename(char **filename, int skip, int step, int min_counter_len);
+extern void xsane_increase_counter_in_filename(char *filename, int skip);
+extern void xsane_read_pnm_header(FILE *infile, Image_info *image_info);
+extern void xsane_write_pnm_header(FILE *outfile, Image_info *image_info);
+extern int xsane_save_grayscale_image_as_lineart(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save);
+extern int xsane_save_scaled_image(FILE *outfile, FILE *imagefile, Image_info *image_info, float x_scale, float y_scale, GtkProgressBar *progress_bar, int *cancel_save);
+extern int xsane_save_despeckle_image(FILE *outfile, FILE *imagefile, Image_info *image_info, int radius, GtkProgressBar *progress_bar, int *cancel_save);
+extern int xsane_save_blur_image(FILE *outfile, FILE *imagefile, Image_info *image_info, int radius, GtkProgressBar *progress_bar, int *cancel_save);
+extern int xsane_save_rotate_image(FILE *outfile, FILE *imagefile, Image_info *image_info, int rotation, GtkProgressBar *progress_bar, int *cancel_save);
+extern void xsane_save_ps(FILE *outfile, FILE *imagefile, Image_info *image_info,
+ int left, int bottom, float width, float height,
+ int paperwidth, int paperheight, int landscape,
+ GtkProgressBar *progress_bar, int *cancel_save);
+extern void xsane_save_jpeg(FILE *outfile, FILE *imagefile, Image_info *image_info, int quality, GtkProgressBar *progress_bar, int *cancel_save);
+extern void xsane_save_tiff(const char *outfilename, FILE *imagefile, Image_info *image_info, int quality, GtkProgressBar *progress_bar, int *cancel_save);
+extern void xsane_save_png(FILE *outfile, FILE *imagefile, Image_info *image_info, int compression, GtkProgressBar *progress_bar, int *cancel_save);
+extern void xsane_save_png_16(FILE *outfile, FILE *imagefile, Image_info *image_info, int compression, GtkProgressBar *progress_bar, int *cancel_save);
+extern void xsane_save_pnm_16(FILE *outfile, FILE *imagefile, Image_info *image_info, GtkProgressBar *progress_bar, int *cancel_save);
+extern int xsane_save_image_as_lineart(char *input_filename, char *output_filename, GtkProgressBar *progress_bar, int *cancel_save);
+extern int xsane_save_image_as(char *input_filename, char *output_filename, int output_format, GtkProgressBar *progress_bar, int *cancel_save);
+extern void null_print_func(gchar *msg);
+extern int xsane_transfer_to_gimp(char *input_filename, GtkProgressBar *progress_bar, int *cancel_save);
+extern void write_base64(int fd_socket, FILE *infile);
+extern void write_mail_header(int fd_socket, char *from, char *reply_to, char *to, char *subject, char *boundary, int related);
+extern void write_mail_footer(int fd_socket, char *boundary);
+extern void write_mail_mime_ascii(int fd_socket, char *boundary);
+extern void write_mail_mime_html(int fd_socket, char *boundary);
+extern void write_mail_attach_image_png(int fd_socket, char *boundary, char *content_id, FILE *infile, char *filename);
+extern void write_mail_attach_file(int fd_socket, char *boundary, FILE *infile, char *filename);
+extern int open_socket(char *server, int port);
+extern int pop3_login(int fd_socket, char *user, char *passwd);
+extern int write_smtp_header(int fd_socket, char *from, char *to);
+extern int write_smtp_footer(int fd_socket);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-scan.c b/src/xsane-scan.c
new file mode 100644
index 0000000..a724e3e
--- /dev/null
+++ b/src/xsane-scan.c
@@ -0,0 +1,2179 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-scan.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preferences.h"
+#include "xsane-preview.h"
+#include "xsane-viewer.h"
+#include "xsane-save.h"
+#include "xsane-gamma.h"
+#include "xsane-setup.h"
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+#include <png.h>
+#include <zlib.h>
+#endif
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations: */
+
+static int xsane_generate_dummy_filename(int conversion_level);
+static void xsane_read_image_data(gpointer data, gint source, GdkInputCondition cond);
+static RETSIGTYPE xsane_sigpipe_handler(int signal);
+static int xsane_test_multi_scan(void);
+void xsane_scan_done(SANE_Status status);
+void xsane_cancel(void);
+static void xsane_start_scan(void);
+void xsane_scan_dialog(GtkWidget * widget, gpointer call_data);
+static void xsane_create_internal_gamma_tables(void);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_generate_dummy_filename(int conversion_level)
+/* conversion levels: */
+/* 0 = scan */
+/* 1 = rotate */
+/* 2 = pack */
+{
+ char filename[PATH_MAX];
+ int tempfile = FALSE; /* returns TRUE if file is a temporary file */
+
+ DBG(DBG_proc, "xsane_generate_dummy_filename(conversion_level=%d)\n", conversion_level);
+
+ if (xsane.dummy_filename)
+ {
+ free(xsane.dummy_filename);
+ }
+
+ if ( (conversion_level == 0) && (xsane.preview->rotation) ) /* scan level with rotation */
+ {
+ tempfile = TRUE;
+ }
+
+ if ( (conversion_level == 1) && (xsane.expand_lineart_to_grayscale) ) /* rotation level and expanded lineart*/
+ {
+ tempfile = TRUE;
+ }
+
+ if ( (xsane.xsane_mode == XSANE_COPY) ||
+ (xsane.xsane_mode == XSANE_FAX) ||
+ (xsane.xsane_mode == XSANE_MAIL) ||
+ (xsane.xsane_mode == XSANE_VIEWER) ||
+ ( (xsane.xsane_mode == XSANE_SAVE) && (xsane.xsane_output_format != XSANE_PNM) &&
+ (xsane.xsane_output_format != XSANE_RAW16) && (xsane.xsane_output_format != XSANE_RGBA) ) )
+ {
+ tempfile = TRUE;
+ }
+
+ if (tempfile) /* save to temporary file */
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, 0, 0, "conversion-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+ xsane.dummy_filename = strdup(filename);
+ DBG(DBG_info, "xsane.dummy_filename = %s\n", xsane.dummy_filename);
+
+ return TRUE;
+ }
+ else /* no conversion following, save directly to the selected filename */
+ {
+ xsane.dummy_filename = strdup(xsane.output_filename);
+ DBG(DBG_info, "xsane.dummy_filename = %s\n", xsane.dummy_filename);
+
+ return FALSE;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_read_image_data(gpointer data, gint source, GdkInputCondition cond)
+{
+ SANE_Handle dev = xsane.dev;
+ SANE_Status status;
+ SANE_Int len;
+ int i, j;
+ char buf[255];
+
+ DBG(DBG_proc, "xsane_read_image_data\n");
+
+ xsane.reading_data = TRUE;
+
+ if ( (xsane.param.depth == 1) || (xsane.param.depth == 8) )
+ {
+ unsigned char buf8[2*32768];
+ unsigned char *buf8ptr;
+
+ DBG(DBG_info, "depth = 1 or 8 bit\n");
+
+ while (1)
+ {
+ if (xsane.cancel_scan)
+ {
+ break; /* leave while loop */
+ }
+
+ status = sane_read(dev, (SANE_Byte *) buf8, sizeof(buf8), &len);
+
+ DBG(DBG_info, "sane_read returned with status %s\n", XSANE_STRSTATUS(status));
+ DBG(DBG_info, "sane_read: len = %d\n", len);
+
+ if (status == SANE_STATUS_EOF)
+ {
+ if (!xsane.param.last_frame)
+ {
+ DBG(DBG_info, "not last frame\n");
+
+ if (xsane.input_tag >= 0)
+ {
+ gdk_input_remove(xsane.input_tag);
+ xsane.input_tag = -1;
+ }
+ xsane_start_scan();
+ break; /* leave while loop */
+ }
+
+ xsane_scan_done(SANE_STATUS_EOF); /* image complete, stop scanning */
+ return;
+ }
+
+ if (status == SANE_STATUS_CANCELLED)
+ {
+ xsane_scan_done(status); /* status = return of sane_read */
+ snprintf(buf, sizeof(buf), "%s.", XSANE_STRSTATUS(status));
+ xsane_back_gtk_warning(buf, TRUE);
+ return;
+ }
+
+ if (status != SANE_STATUS_GOOD)
+ {
+ xsane_scan_done(status); /* status = return of sane_read */
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_DURING_READ, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ if (!len) /* nothing read */
+ {
+ break; /* out of data for now, leave while loop */
+ }
+
+ xsane.bytes_read += len;
+ xsane_progress_update(xsane.bytes_read / (gfloat) xsane.num_bytes);
+
+ /* it is not allowed to call gtk_main_iteration when we have gdk_input active */
+ /* because xsan_read_image_data will be called several times */
+ if (xsane.input_tag < 0)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ {
+ int i;
+ u_char val;
+
+ DBG(DBG_info, "grayscale\n");
+
+ if ((!xsane.scanner_gamma_gray) && (xsane.param.depth > 1))
+ {
+ buf8ptr = buf8;
+
+ for (i=0; i < len; ++i) /* do gamma correction by xsane */
+ {
+ *buf8ptr = xsane.gamma_data[(int) (*buf8ptr)];
+ buf8ptr++;
+ }
+
+ fwrite(buf8, 1, len, xsane.out); /* write gamma corrected data */
+ }
+ else if ((xsane.param.depth == 1) && (xsane.expand_lineart_to_grayscale))
+ {
+ unsigned char *expanded_buf8;
+ unsigned char *expanded_buf8ptr;
+
+ /* if we want to do any postprocessing (e.g. rotation) */
+ /* we save lineart images in grayscale mode */
+ /* to speed up transformation and saving the transformed expanded (1bit->1byte) */
+ /* is written in a buffer and saved as full buffer */
+
+ expanded_buf8 = malloc(len * 8); /* one byte for each pixel (bit) */
+ if (!expanded_buf8)
+ {
+ xsane_scan_done(-1); /* -1 = error */
+ snprintf(buf, sizeof(buf), "%s", ERR_NO_MEM);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ expanded_buf8ptr = expanded_buf8;
+ buf8ptr = buf8;
+
+ for (i = 0; i < len; ++i)
+ {
+ val = *buf8ptr;
+ for (j = 7; j >= 0; --j)
+ {
+ *expanded_buf8ptr = (val & (1 << j)) ? 0x00 : 0xff;
+ expanded_buf8ptr++;
+ }
+ buf8ptr++;
+ }
+ fwrite(expanded_buf8, 1, len*8, xsane.out);
+ free(expanded_buf8);
+ }
+ else /* save direct to the file */
+ {
+ fwrite(buf8, 1, len, xsane.out);
+ }
+ }
+ break; /* SANE_FRAME_GRAY */
+
+ case SANE_FRAME_RGB:
+ {
+ int i;
+
+ DBG(DBG_info, "1 pass color\n");
+
+ if (!xsane.scanner_gamma_color) /* do gamma correction by xsane */
+ {
+ buf8ptr = buf8;
+ for (i=0; i < len; ++i)
+ {
+ if (xsane.pixelcolor == 0)
+ {
+ *buf8ptr = xsane.gamma_data_red[(int) (*buf8ptr)];
+ buf8ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 1)
+ {
+ *buf8ptr = xsane.gamma_data_green[(int) (*buf8ptr)];
+ buf8ptr++;
+ xsane.pixelcolor++;
+ }
+ else
+ {
+ *buf8ptr = xsane.gamma_data_blue[(int) (*buf8ptr)];
+ buf8ptr++;
+ xsane.pixelcolor = 0;
+ }
+ }
+ fwrite(buf8, 1, len, xsane.out); /* write buffer */
+ }
+ else /* gamma correction has been done by scanner */
+ {
+ fwrite(buf8, 1, len, xsane.out); /* write buffer */
+ }
+ }
+ break;
+
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ {
+ DBG(DBG_info, "3 pass color\n");
+
+ if (!xsane.scanner_gamma_color) /* gamma correction by xsane */
+ {
+ char val;
+ SANE_Int *gamma;
+
+ if (xsane.param.format == SANE_FRAME_RED)
+ {
+ gamma = xsane.gamma_data_red;
+ }
+ else if (xsane.param.format == SANE_FRAME_GREEN)
+ {
+ gamma = xsane.gamma_data_green;
+ }
+ else
+ {
+ gamma = xsane.gamma_data_blue;
+ }
+
+ for (i = 0; i < len; ++i)
+ {
+ val = gamma[(int) buf8[i]];
+ fputc(val, xsane.out);
+ fseek(xsane.out, 2, SEEK_CUR);
+ }
+ }
+ else /* gamma correction by scanner */
+ {
+ for (i = 0; i < len; ++i)
+ {
+ fputc(buf8[i], xsane.out);
+ fseek(xsane.out, 2, SEEK_CUR);
+ }
+ }
+ }
+ break;
+
+#ifdef SUPPORT_RGBA
+ case SANE_FRAME_RGBA: /* Scanning including Infrared channel */
+ {
+ int i;
+ char val;
+
+ DBG(DBG_info, "1 pass color+alpha (RGBA)\n");
+
+ if (!xsane.scanner_gamma_color) /* gamma correction by xsane */
+ {
+ buf8ptr = buf8;
+
+ for (i=0; i < len; ++i)
+ {
+ if (xsane.pixelcolor == 0)
+ {
+ *buf8ptr = xsane.gamma_data_red[(int) (*buf8ptr)];
+ buf8ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 1)
+ {
+ *buf8ptr = xsane.gamma_data_green[(int) (*buf8ptr)];
+ buf8ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 2)
+ {
+ *buf8ptr = xsane.gamma_data_blue[(int) (*buf8ptr)];
+ buf8ptr++;
+ xsane.pixelcolor++;
+ }
+ else
+ {
+ /* no gamma table for infrared channel */
+ buf8ptr++;
+ xsane.pixelcolor = 0;
+ }
+ }
+
+ fwrite(buf8, 1, len, xsane.out);
+ }
+ else /* gamma correction has been done by scanner */
+ {
+ fwrite(buf8, 1, len, xsane.out);
+ }
+ }
+ break;
+#endif
+
+ default:
+ xsane_scan_done(-1); /* -1 = error */
+ DBG(DBG_error, "xsane_read_image_data: %s %d\n", ERR_BAD_FRAME_FORMAT, xsane.param.format);
+ return;
+ break;
+ }
+ }
+ }
+ else if ( xsane.param.depth == 16 )
+ {
+ guint16 buf16[32768];
+ guint16 *buf16ptr;
+ unsigned char *buf8 = (unsigned char *) buf16;
+ unsigned char *buf8ptr;
+ char buf[255];
+ char last = 0;
+ int offset = 0;
+
+ DBG(DBG_info, "depth = 16 bit\n");
+
+ while (1)
+ {
+ if (xsane.cancel_scan)
+ {
+ break; /* leave while loop */
+ }
+
+ if (offset) /* if we have had an odd number of bytes */
+ {
+ buf16[0] = last; /* ATTENTION: that is wrong! */
+ status = sane_read(dev, ((SANE_Byte *) buf16) + 1, sizeof(buf16) - 1, &len);
+ if (len)
+ {
+ len++;
+ }
+ }
+ else /* last read we had an even number of bytes */
+ {
+ status = sane_read(dev, (SANE_Byte *) buf16, sizeof(buf16), &len);
+ }
+
+
+ if (!xsane.scanning) /* scan may have been canceled while sane_read was executed */
+ {
+ return; /* ok, the scan has been canceled */
+ }
+
+
+ if (len % 2) /* odd number of bytes */
+ {
+ len--;
+ last = buf16[len];
+ offset = 1;
+ }
+ else /* even number of bytes */
+ {
+ offset = 0;
+ }
+
+ if (status == SANE_STATUS_EOF)
+ {
+ if (!xsane.param.last_frame)
+ {
+ DBG(DBG_info, "not last frame\n");
+ if (xsane.input_tag >= 0)
+ {
+ gdk_input_remove(xsane.input_tag);
+ xsane.input_tag = -1;
+ }
+ xsane_start_scan();
+ break; /* leave while loop */
+ }
+
+ xsane_scan_done(SANE_STATUS_EOF); /* image complete, stop scanning */
+ return;
+ }
+
+ if (status == SANE_STATUS_CANCELLED)
+ {
+ xsane_scan_done(status); /* status = return of sane_read */
+ snprintf(buf, sizeof(buf), "%s.", XSANE_STRSTATUS(status));
+ xsane_back_gtk_warning(buf, TRUE);
+ return;
+ }
+
+ if (status != SANE_STATUS_GOOD)
+ {
+ xsane_scan_done(status); /* status = return of sane_read */
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_DURING_READ, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ if (!len) /* nothing read */
+ {
+ break; /* out of data for now, leave while loop */
+ }
+
+ xsane.bytes_read += len;
+ xsane_progress_update(xsane.bytes_read / (gfloat) xsane.num_bytes);
+
+ if (xsane.input_tag < 0)
+ {
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ {
+ int i;
+
+ if (xsane.reduce_16bit_to_8bit) /* reduce 16 bit image to 8 bit */
+ {
+ DBG(DBG_info, "reducing 16 bit image to 8 bit\n");
+
+ if (!xsane.scanner_gamma_gray) /* gamma correction by xsane */
+ {
+ buf8ptr = buf8;
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ *buf8ptr = (xsane.gamma_data[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ }
+
+ fwrite(buf8, 1, len/2, xsane.out);
+ }
+ else /* gamma correction by scanner */
+ {
+ buf8ptr = buf8;
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ *buf8ptr = (*buf16ptr) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ }
+
+ fwrite(buf8, 1, len/2, xsane.out);
+ }
+ }
+ else /* save as 16 bit image */
+ {
+ if (!xsane.scanner_gamma_gray) /* gamma correction by xsane */
+ {
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ *buf16ptr = xsane.gamma_data[(*buf16ptr)];
+ buf16ptr++;
+ }
+ fwrite(buf16, 2, len/2, xsane.out);
+ }
+ else /* gamma correction by scanner */
+ {
+ fwrite(buf16, 2, len/2, xsane.out);
+ }
+ }
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ {
+ int i;
+
+ if (xsane.reduce_16bit_to_8bit) /* reduce 16 bit image to 8 bit */
+ {
+ DBG(DBG_info, "reducing 16 bit image to 8 bit\n");
+
+ if (!xsane.scanner_gamma_color) /* gamma correction by xsane */
+ {
+ buf8ptr = buf8;
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ if (xsane.pixelcolor == 0)
+ {
+ *buf8ptr = (xsane.gamma_data_red[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 1)
+ {
+ *buf8ptr = (xsane.gamma_data_green[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else
+ {
+ *buf8ptr = (xsane.gamma_data_blue[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor = 0;
+ }
+ }
+ fwrite(buf8, 1, len/2, xsane.out);
+ }
+ else /* gamma correction by scanner */
+ {
+ buf8ptr = buf8;
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ *buf8ptr = (*buf16ptr) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ fwrite(buf8, 1, len/2, xsane.out);
+ }
+ }
+ else /* save as 16 bit image */
+ {
+ if (!xsane.scanner_gamma_color) /* gamma correction by xsane */
+ {
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ if (xsane.pixelcolor == 0)
+ {
+ *buf16ptr = xsane.gamma_data_red[(*buf16ptr)];
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 1)
+ {
+ *buf16ptr = xsane.gamma_data_green[(*buf16ptr)];
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else
+ {
+ *buf16ptr = xsane.gamma_data_blue[(*buf16ptr)];
+ buf16ptr++;
+ xsane.pixelcolor = 0;
+ }
+ }
+ fwrite(buf16, 2, len/2, xsane.out);
+ }
+ else /* gamma correction by scanner */
+ {
+ fwrite(buf16, 2, len/2, xsane.out);
+ }
+ }
+ }
+ break;
+
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ /* this is incomplete:
+ - missing: gamma correction by xsane
+ - missing: reduction to 8 bit
+ but I do not think there are 3 pass scanners with more
+ than 24 bits/pixel */
+ {
+ for (i = 0; i < len/2; ++i)
+ {
+ fwrite(buf16 + i*2, 2, 1, xsane.out);
+ fseek(xsane.out, 4, SEEK_CUR);
+ }
+ }
+ break;
+
+#ifdef SUPPORT_RGBA
+ case SANE_FRAME_RGBA:
+ {
+ int i;
+ guint16 val;
+
+ if (xsane.reduce_16bit_to_8bit) /* reduce 16 bit image to 8 bit */
+ {
+ DBG(DBG_info, "reducing 16 bit image to 8 bit\n");
+
+ if (!xsane.scanner_gamma_color)
+ {
+ buf8ptr = buf8;
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ if (xsane.pixelcolor == 0)
+ {
+ *buf8ptr = (xsane.gamma_data_red[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 1)
+ {
+ *buf8ptr = (xsane.gamma_data_green[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 2)
+ {
+ *buf8ptr = (xsane.gamma_data_blue[(*buf16ptr)]) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else
+ {
+ /* no gamma table for infrared channel */
+ *buf8ptr = (*buf16ptr) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ xsane.pixelcolor = 0;
+ }
+ }
+
+ fwrite(buf8, 1, len, xsane.out);
+ }
+ else /* gamma correction done by scanner */
+ {
+ buf8ptr = buf8;
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ *buf8ptr = (*buf16ptr) >> 8; /* reduce to 8 bit */
+ buf8ptr++;
+ buf16ptr++;
+ }
+
+ fwrite(buf8, 1, len, xsane.out);
+ }
+ }
+ else /* save as 16 bit image */
+ {
+ if (!xsane.scanner_gamma_color)
+ {
+ buf16ptr = buf16;
+
+ for (i=0; i < len/2; ++i)
+ {
+ if (xsane.pixelcolor == 0)
+ {
+ *buf16ptr = xsane.gamma_data_red[(*buf16ptr)];
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 1)
+ {
+ *buf16ptr = xsane.gamma_data_green[(*buf16ptr)];
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else if (xsane.pixelcolor == 2)
+ {
+ *buf16ptr = xsane.gamma_data_blue[(*buf16ptr)];
+ buf16ptr++;
+ xsane.pixelcolor++;
+ }
+ else
+ {
+ /* no gamma table for infrared channel */
+ buf16ptr++;
+ xsane.pixelcolor = 0;
+ }
+ }
+
+ fwrite(buf16, 2, len/2, xsane.out);
+ }
+ else /* gamma correction done by scanner */
+ {
+ fwrite(buf16, 2, len/2, xsane.out);
+ }
+ }
+ }
+ break;
+#endif
+
+ default:
+ xsane_scan_done(-1); /* -1 = error */
+ DBG(DBG_error, "xsane_read_image_data: %s %d\n", ERR_BAD_FRAME_FORMAT, xsane.param.format);
+ return;
+ break;
+ }
+ }
+ }
+ else
+ {
+ xsane_scan_done(-1); /* -1 = error */
+ snprintf(buf, sizeof(buf), "%s %d.", ERR_BAD_DEPTH, xsane.param.depth);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ if (xsane.cancel_scan)
+ {
+ xsane.cancel_scan = FALSE; /* make sure we do not get an infinite loop */
+
+ xsane_read_image_data(0, -1, GDK_INPUT_READ);
+ }
+
+ xsane.reading_data = FALSE;
+
+ return;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static RETSIGTYPE xsane_sigpipe_handler(int signal)
+/* this is to catch a broken pipe while writing to printercommand */
+{
+ DBG(DBG_proc, "xsane_sigpipe_handler\n");
+
+ xsane_cancel_save(&xsane.cancel_save);
+ xsane.broken_pipe = 1;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_test_multi_scan(void)
+{
+ char *set;
+ SANE_Status status;
+ const SANE_Option_Descriptor *opt;
+
+ DBG(DBG_proc, "xsane_test_multi_scan\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.scansource);
+ if (opt)
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ if (opt->constraint_type == SANE_CONSTRAINT_STRING_LIST)
+ {
+ set = malloc(opt->size);
+ status = xsane_control_option(xsane.dev, xsane.well_known.scansource, SANE_ACTION_GET_VALUE, set, 0);
+
+ if (status == SANE_STATUS_GOOD)
+ {
+ if (xsane.adf_scansource)
+ {
+ if (!strcmp(set, xsane.adf_scansource))
+ {
+ free(set);
+ return TRUE;
+ }
+ }
+ }
+ free(set);
+ }
+ }
+ }
+
+#if 0 /* this is planned for the next sane-standard */
+ if (xsane.param.bitfield & XSANE_PARAM_STATUS_MORE_IMAGES)
+ {
+ return TRUE;
+ }
+#endif
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_reduce_to_lineart()
+/* returns 1 on abort, 0 on success */
+{
+ char *old_dummy_filename;
+ int abort = 0;
+
+ /* open progressbar */
+ xsane_progress_new(PROGRESS_PACKING_DATA, PROGRESS_TRANSFERING_DATA, (GtkSignalFunc) xsane_cancel_save, &xsane.cancel_save);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ /* on some filesystems it is not allowed to erase an opened file and access the
+ file after that, so we must wait until the file is closed */
+ old_dummy_filename = strdup(xsane.dummy_filename);
+
+ /* temporary file is created with permission 0600 in xsane_generate_dummy_filename */
+ if (!xsane_generate_dummy_filename(2)) /* create filename for packing */
+ {
+ /* no temporary file */
+ if (xsane_create_secure_file(xsane.dummy_filename)) /* remove possibly existing symbolic links for security */
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, xsane.dummy_filename);
+ xsane_back_gtk_error(buf, TRUE);
+ abort = 1; /* abort scanning */
+ }
+ }
+
+ if (!abort)
+ {
+ abort = xsane_save_image_as_lineart(old_dummy_filename, xsane.dummy_filename, xsane.progress_bar, &xsane.cancel_save);
+ }
+
+ if (abort)
+ {
+ xsane_set_sensitivity(TRUE); /* reactivate buttons etc */
+ sane_cancel(xsane.dev); /* stop scanning */
+ xsane_update_histogram(TRUE /* update raw */);
+ xsane_update_param(0);
+ xsane.header_size = 0;
+ return 1;
+ }
+
+ remove(old_dummy_filename); /* remove the unrotated image file */
+ free(old_dummy_filename); /* release memory */
+ xsane_progress_clear();
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_scan_done(SANE_Status status)
+{
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_scan_done\n");
+
+ if (!xsane.scanning)
+ {
+ return;
+ }
+
+ xsane.reading_data = FALSE;
+ xsane.scanning = FALSE; /* set marker that sane_start is called */
+
+ if (xsane.input_tag >= 0)
+ {
+ gdk_input_remove(xsane.input_tag);
+ xsane.input_tag = -1;
+ }
+
+ xsane_progress_clear(); /* clear progress bar and reset cancel callback */
+
+ while(gtk_events_pending()) /* let gtk remove the progress bar and update everything that needs it */
+ {
+ DBG(DBG_info, "calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+
+
+ /* we have to free the gamma tables if we used software gamma correction */
+
+ if (xsane.gamma_data)
+ {
+ DBG(DBG_info, "freeing gray gamma table\n");
+
+ free(xsane.gamma_data);
+ xsane.gamma_data = 0;
+ }
+
+ if (xsane.gamma_data_red)
+ {
+ DBG(DBG_info, "freeing color gamma tables\n");
+
+ free(xsane.gamma_data_red);
+ free(xsane.gamma_data_green);
+ free(xsane.gamma_data_blue);
+
+ xsane.gamma_data_red = 0;
+ xsane.gamma_data_green = 0;
+ xsane.gamma_data_blue = 0;
+ }
+
+ if (xsane.out) /* close file - this is dummy_file but if there is no conversion it is the wanted file */
+ {
+ int pixel_height = xsane.bytes_read / xsane.param.bytes_per_line;
+
+ /* correct image height if necessary, e.g. when scanning with hand scanner */
+
+ if (xsane.param.lines != pixel_height)
+ {
+ DBG(DBG_info, "correcting image height to %d lines\n", pixel_height);
+ xsane.param.lines = pixel_height;
+
+ image_info.image_width = xsane.param.pixels_per_line;
+ image_info.image_height = pixel_height;
+ image_info.depth = xsane.depth;
+ image_info.colors = xsane.xsane_colors;
+
+ image_info.resolution_x = xsane.resolution_x;
+ image_info.resolution_y = xsane.resolution_y;
+
+ image_info.gamma = xsane.gamma;
+ image_info.gamma_red = xsane.gamma_red;
+ image_info.gamma_green = xsane.gamma_green;
+ image_info.gamma_blue = xsane.gamma_blue;
+
+ image_info.brightness = xsane.brightness;
+ image_info.brightness_red = xsane.brightness_red;
+ image_info.brightness_green = xsane.brightness_green;
+ image_info.brightness_blue = xsane.brightness_blue;
+
+ image_info.contrast = xsane.contrast;
+ image_info.contrast_red = xsane.contrast_red;
+ image_info.contrast_green = xsane.contrast_green;
+ image_info.contrast_blue = xsane.contrast_blue;
+
+ image_info.threshold = xsane.threshold;
+
+
+ xsane_write_pnm_header(xsane.out, &image_info);
+ }
+
+ DBG(DBG_info, "closing output file\n");
+
+ fflush(xsane.out);
+ fclose(xsane.out);
+ xsane.out = 0;
+ }
+
+ if ( (status == SANE_STATUS_GOOD) || (status == SANE_STATUS_EOF) ) /* no error, do conversion etc. */
+ {
+ /* do we have to rotate the image ? */
+ if (xsane.preview->rotation)
+ {
+ char *old_dummy_filename;
+ int abort = 0;
+ FILE *outfile;
+ FILE *infile;
+
+ infile = fopen(xsane.dummy_filename, "rb"); /* read binary (b for win32) */
+ if (infile != 0)
+ {
+ xsane_read_pnm_header(infile, &image_info);
+
+ /* open progressbar */
+ xsane_progress_new(PROGRESS_ROTATING_DATA, PROGRESS_TRANSFERING_DATA, (GtkSignalFunc) xsane_cancel_save, &xsane.cancel_save);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ /* on some filesystems it is not allowed to erase an opened file and access the
+ file after that, so we must wait until the file is closed */
+ old_dummy_filename = strdup(xsane.dummy_filename);
+
+ /* temporary file is created with permission 0600 in xsane_generate_dummy_filename */
+ if (!xsane_generate_dummy_filename(1)) /* create filename for rotation */
+ {
+ /* no temporary file */
+ if (xsane_create_secure_file(xsane.dummy_filename)) /* remove possibly existing symbolic links for security */
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, xsane.dummy_filename);
+ xsane_back_gtk_error(buf, TRUE);
+ abort = 1; /* abort scanning */
+ }
+ }
+
+ if (!abort)
+ {
+ /* rotate image */
+ outfile = fopen(xsane.dummy_filename, "wb"); /* read binary (b for win32) */
+
+ if (outfile)
+ {
+ if (xsane_save_rotate_image(outfile, infile, &image_info, xsane.preview->rotation, xsane.progress_bar, &xsane.cancel_save))
+ {
+ abort = 1;
+ }
+ }
+ else
+ {
+ char buf[256];
+ DBG(DBG_info, "open of file `%s'failed : %s\n", xsane.dummy_filename, strerror(errno));
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.dummy_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ abort = 1;
+ }
+
+ fclose(outfile);
+ }
+
+ fclose(infile);
+ remove(old_dummy_filename); /* remove the unrotated image file */
+
+ free(old_dummy_filename); /* release memory */
+ xsane_progress_clear();
+ }
+ else
+ {
+ char buf[256];
+ DBG(DBG_info, "open of file `%s'failed : %s\n", xsane.dummy_filename, strerror(errno));
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.dummy_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ abort = 1;
+ }
+
+ if (abort)
+ {
+ xsane_set_sensitivity(TRUE); /* reactivate buttons etc */
+ sane_cancel(xsane.dev); /* stop scanning */
+ xsane_update_histogram(TRUE /* update raw */);
+ xsane_update_param(0);
+ xsane.header_size = 0;
+ return;
+ }
+ }
+
+ if (xsane.xsane_mode == XSANE_VIEWER)
+ {
+ xsane_viewer_new(xsane.dummy_filename, xsane.expand_lineart_to_grayscale, 0);
+ xsane.expand_lineart_to_grayscale = 0;
+ }
+
+ /* when we are scanning in lineart mode and we are transforming the image */
+ /* it is saved as grayscale while scanning so we can use the standard transformations */
+ /* but now we have to save the lineart image as packed lineart again */
+ if ((xsane.param.depth == 1) && (xsane.expand_lineart_to_grayscale))
+ {
+ if (xsane_reduce_to_lineart())
+ {
+ return; /* aborted */
+ }
+ }
+
+ if (xsane.xsane_mode == XSANE_SAVE)
+ {
+ if (xsane.print_filenames) /* print created filenames to stdout? */
+ {
+ if (xsane.output_filename[0] != '/') /* relative path */
+ {
+ char pathname[512];
+ getcwd(pathname, sizeof(pathname));
+ printf("XSANE_IMAGE_FILENAME: %s/%s\n", pathname, xsane.output_filename);
+ fflush(stdout);
+ }
+ else /* absolute path */
+ {
+ printf("XSANE_IMAGE_FILENAME: %s\n", xsane.output_filename);
+ fflush(stdout);
+ }
+ }
+
+ if ( ( (xsane.xsane_output_format != XSANE_PNM) && /* these files do not need any transformation */
+ (xsane.xsane_output_format != XSANE_RAW16) &&
+ (xsane.xsane_output_format != XSANE_RGBA) ) ||
+ (xsane.mode == XSANE_GIMP_EXTENSION) )
+ { /* ok, we have to do a transformation */
+
+ /* open progressbar */
+ xsane_progress_new(PROGRESS_CONVERTING_DATA, PROGRESS_TRANSFERING_DATA, (GtkSignalFunc) xsane_cancel_save, &xsane.cancel_save);
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+ if (xsane.mode == XSANE_GIMP_EXTENSION) /* xsane runs as gimp plugin */
+ {
+ xsane_transfer_to_gimp(xsane.dummy_filename, xsane.progress_bar, &xsane.cancel_save);
+ }
+ else
+#endif /* HAVE_LIBGIMP_GIMP_H */
+ {
+ xsane_save_image_as(xsane.dummy_filename, xsane.output_filename, xsane.xsane_output_format, xsane.progress_bar, &xsane.cancel_save);
+ }
+
+ xsane_progress_clear();
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ remove(xsane.dummy_filename);
+ }
+ }
+ else if (xsane.xsane_mode == XSANE_COPY)
+ {
+ FILE *outfile;
+ FILE *infile;
+ char buf[256];
+
+ DBG(DBG_info, "XSANE_COPY\n");
+
+ xsane_update_int(xsane.copy_number_entry, &xsane.copy_number); /* get number of copies */
+ if (xsane.copy_number < 1)
+ {
+ xsane.copy_number = 1;
+ }
+
+ /* open progressbar */
+ xsane_progress_new(PROGRESS_CONVERTING_DATA, PROGRESS_TRANSFERING_DATA, (GtkSignalFunc) xsane_cancel_save, &xsane.cancel_save);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ xsane.broken_pipe = 0;
+ infile = fopen(xsane.dummy_filename, "rb"); /* read binary (b for win32) */
+
+ snprintf(buf, sizeof(buf), "%s %s%d", preferences.printer[preferences.printernr]->command,
+ preferences.printer[preferences.printernr]->copy_number_option,
+ xsane.copy_number);
+ outfile = popen(buf, "w");
+/* outfile = popen(preferences.printer[preferences.printernr]->command, "w"); */
+ if ((outfile != 0) && (infile != 0)) /* copy mode, use zoom size */
+ {
+ struct SIGACTION act;
+ float imagewidth, imageheight;
+ int printer_resolution;
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break; /* switch format == SANE_FRAME_GRAY */
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break; /* switch format == SANE_FRAME_{color} */
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ imagewidth = image_info.image_width/(float)printer_resolution; /* width in inch */
+ imageheight = image_info.image_height/(float)printer_resolution; /* height in inch */
+
+ memset (&act, 0, sizeof (act)); /* define broken pipe handler */
+ act.sa_handler = xsane_sigpipe_handler;
+ sigaction (SIGPIPE, &act, 0);
+
+
+ if (preferences.psrotate) /* rotate: landscape */
+ {
+ xsane_save_ps(outfile, infile,
+ &image_info,
+ (preferences.printer[preferences.printernr]->bottomoffset +
+ preferences.printer[preferences.printernr]->height) * 36.0/MM_PER_INCH - imagewidth * 36.0, /* left edge */
+ (preferences.printer[preferences.printernr]->leftoffset +
+ preferences.printer[preferences.printernr]->width) * 36.0/MM_PER_INCH - imageheight * 36.0, /* bottom edge */
+ imagewidth, imageheight,
+ (preferences.printer[preferences.printernr]->leftoffset +
+ preferences.printer[preferences.printernr]->width ) * 72.0/MM_PER_INCH, /* paperwidth */
+ (preferences.printer[preferences.printernr]->bottomoffset +
+ preferences.printer[preferences.printernr]->height) * 72.0/MM_PER_INCH, /* paperheight */
+ 1 /* landscape */,
+ xsane.progress_bar,
+ &xsane.cancel_save);
+ }
+ else /* do not rotate: portrait */
+ {
+ xsane_save_ps(outfile, infile,
+ &image_info,
+ (preferences.printer[preferences.printernr]->leftoffset +
+ preferences.printer[preferences.printernr]->width) * 36.0/MM_PER_INCH - imagewidth * 36.0, /* left edge */
+ (preferences.printer[preferences.printernr]->bottomoffset +
+ preferences.printer[preferences.printernr]->height) * 36.0/MM_PER_INCH - imageheight * 36.0, /* bottom edge */
+ imagewidth, imageheight,
+ (preferences.printer[preferences.printernr]->leftoffset +
+ preferences.printer[preferences.printernr]->width ) * 72.0/MM_PER_INCH, /* paperwidth */
+ (preferences.printer[preferences.printernr]->bottomoffset +
+ preferences.printer[preferences.printernr]->height) * 72.0/MM_PER_INCH, /* paperheight */
+ 0 /* portrait */,
+ xsane.progress_bar,
+ &xsane.cancel_save);
+ }
+ }
+ else
+ {
+ char buf[256];
+
+ if (!infile)
+ {
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.output_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ }
+ else if (!outfile)
+ {
+ xsane_back_gtk_error(ERR_FAILED_PRINTER_PIPE, TRUE);
+ }
+ }
+
+ if (xsane.broken_pipe)
+ {
+ snprintf(buf, sizeof(buf), "%s \"%s\"", ERR_FAILED_EXEC_PRINTER_CMD, preferences.printer[preferences.printernr]->command);
+ xsane_back_gtk_error(buf, TRUE);
+ }
+
+ xsane_progress_clear();
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ if (infile)
+ {
+ fclose(infile);
+ remove(xsane.dummy_filename);
+ }
+
+ if (outfile)
+ {
+ pclose(outfile);
+ }
+ }
+ else if (xsane.xsane_mode == XSANE_FAX)
+ {
+ FILE *outfile;
+ FILE *infile;
+
+ /* open progressbar */
+ xsane_progress_new(PROGRESS_CONVERTING_DATA, PROGRESS_TRANSFERING_DATA, (GtkSignalFunc) xsane_cancel_save, &xsane.cancel_save);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ infile = fopen(xsane.dummy_filename, "rb"); /* read binary (b for win32) */
+ if (infile != 0)
+ {
+ xsane_read_pnm_header(infile, &image_info);
+
+ umask((mode_t) preferences.image_umask); /* define image file permissions */
+ outfile = fopen(xsane.fax_filename, "wb"); /* b = binary mode for win32 */
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+ if (outfile != 0)
+ {
+ float imagewidth, imageheight;
+
+ imagewidth = image_info.image_width/xsane.resolution_x; /* width in inch */
+ imageheight = image_info.image_height/xsane.resolution_y; /* height in inch */
+
+ DBG(DBG_info, "imagewidth = %f\n", imagewidth);
+ DBG(DBG_info, "imageheight = %f\n", imageheight);
+
+ xsane_save_ps(outfile, infile,
+ &image_info,
+ (preferences.fax_leftoffset + preferences.fax_width) * 36.0/MM_PER_INCH - imagewidth * 36.0,
+ (preferences.fax_bottomoffset + preferences.fax_height) * 36.0/MM_PER_INCH - imageheight * 36.0,
+ imagewidth, imageheight,
+ (preferences.fax_leftoffset + preferences.fax_width ) * 72.0/MM_PER_INCH, /* paperwidth */
+ (preferences.fax_bottomoffset + preferences.fax_height) * 72.0/MM_PER_INCH, /* paperheight */
+ 0 /* portrait */,
+ xsane.progress_bar,
+ &xsane.cancel_save);
+ fclose(outfile);
+ }
+ else
+ {
+ char buf[256];
+
+ DBG(DBG_info, "open of faxfile `%s'failed : %s\n", xsane.fax_filename, strerror(errno));
+
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.fax_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ }
+
+ fclose(infile);
+ remove(xsane.dummy_filename);
+ }
+ else
+ {
+ char buf[256];
+
+ DBG(DBG_info, "open of faxfile `%s'failed : %s\n", xsane.fax_filename, strerror(errno));
+
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.fax_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ }
+ xsane_progress_clear();
+
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "calling gtk_main_iteration");
+ gtk_main_iteration();
+ }
+ }
+#ifdef XSANE_ACTIVATE_MAIL
+ else if (xsane.xsane_mode == XSANE_MAIL)
+ {
+ FILE *infile;
+
+ /* open progressbar */
+ xsane_progress_new(PROGRESS_CONVERTING_DATA, PROGRESS_TRANSFERING_DATA, (GtkSignalFunc) xsane_cancel_save, &xsane.cancel_save);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ infile = fopen(xsane.dummy_filename, "rb"); /* read binary (b for win32) */
+ if (infile != 0)
+ {
+ xsane_read_pnm_header(infile, &image_info);
+
+ xsane_save_image_as(xsane.dummy_filename, xsane.mail_filename, XSANE_PNG, xsane.progress_bar, &xsane.cancel_save);
+
+ fclose(infile);
+ remove(xsane.dummy_filename);
+ }
+ else
+ {
+ char buf[256];
+
+ DBG(DBG_info, "open of mailfile `%s'failed : %s\n", xsane.dummy_filename, strerror(errno));
+
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.dummy_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ }
+ xsane_progress_clear();
+
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "calling gtk_main_iteration");
+ gtk_main_iteration();
+ }
+ }
+#endif
+
+ if ( (xsane.xsane_mode == XSANE_SAVE) && (xsane.mode == XSANE_STANDALONE) )
+ {
+ if (!xsane.force_filename) /* user filename selection active */
+ {
+ if (preferences.filename_counter_step) /* increase filename counter ? */
+ {
+ xsane_update_counter_in_filename(&preferences.filename, preferences.skip_existing_numbers,
+ preferences.filename_counter_step, preferences.filename_counter_len);
+ gtk_entry_set_text(GTK_ENTRY(xsane.outputfilename_entry), (char *) preferences.filename); /* update filename in entry */
+ gtk_entry_set_position(GTK_ENTRY(xsane.outputfilename_entry), strlen(preferences.filename)); /* set cursor to right position of filename */
+ }
+ }
+ else /* external filename */
+ {
+ xsane_update_counter_in_filename(&xsane.external_filename, TRUE, 1, 0);
+ }
+ }
+ else if (xsane.xsane_mode == XSANE_FAX)
+ {
+ GtkWidget *list_item;
+ char *page;
+ char *extension;
+
+ page = strdup(strrchr(xsane.fax_filename,'/')+1);
+ extension = strrchr(page, '.');
+ if (extension)
+ {
+ *extension = 0;
+ }
+ list_item = gtk_list_item_new_with_label(page);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(page));
+ gtk_container_add(GTK_CONTAINER(xsane.fax_list), list_item);
+ gtk_widget_show(list_item);
+
+ xsane_update_counter_in_filename(&xsane.fax_filename, TRUE, 1, preferences.filename_counter_len);
+ xsane_fax_project_save();
+ free(page);
+ }
+#ifdef XSANE_ACTIVATE_MAIL
+ else if (xsane.xsane_mode == XSANE_MAIL)
+ {
+ GtkWidget *list_item;
+ char *image;
+ char *extension;
+
+ image = strdup(strrchr(xsane.mail_filename,'/')+1);
+ extension = strrchr(image, '.');
+ if (extension)
+ {
+ *extension = 0;
+ }
+ list_item = gtk_list_item_new_with_label(image);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(image));
+ gtk_container_add(GTK_CONTAINER(xsane.mail_list), list_item);
+ gtk_widget_show(list_item);
+
+ xsane_update_counter_in_filename(&xsane.mail_filename, TRUE, 1, preferences.filename_counter_len);
+ xsane_mail_project_save();
+ free(image);
+ }
+#endif
+ }
+ else /* an error occured, remove the dummy_file */
+ {
+ if (xsane.dummy_filename) /* remove corrupt file */
+ {
+ remove(xsane.dummy_filename);
+ }
+ }
+
+ free(xsane.dummy_filename); /* no dummy_filename, needed if an error occurs */
+ xsane.dummy_filename = 0;
+
+ if (xsane.output_filename)
+ {
+ free(xsane.output_filename);
+ xsane.output_filename = 0;
+ }
+
+ xsane.header_size = 0;
+
+ if ( ( (status == SANE_STATUS_GOOD) || (status == SANE_STATUS_EOF) ) && (xsane_test_multi_scan()) )
+ {
+ /* multi scan (eg ADF): scan again */
+ /* stopped when: */
+ /* a) xsane_test_multi_scan returns false */
+ /* b) sane_start returns SANE_STATUS_NO_DOCS */
+ /* c) an error occurs */
+
+ xsane.adf_page_counter += 1;
+ gtk_signal_emit_by_name(xsane.start_button, "clicked"); /* press START button */
+ }
+ else /* last scan: update histogram */
+ {
+ xsane_set_sensitivity(TRUE); /* reactivate buttons etc */
+ sane_cancel(xsane.dev); /* stop scanning */
+ xsane_update_histogram(TRUE /* update raw */);
+ xsane_update_param(0);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_cancel(void)
+{
+ DBG(DBG_proc, "xsane_cancel\n");
+
+ if (!xsane.scanning)
+ {
+ return;
+ }
+
+ sane_cancel(xsane.dev);
+
+ /* we have to make sure that xsane does detect that the scan has been cancled */
+ /* but the select_fd does not make sure that preview_read_image_data is called */
+ /* when the select_fd is closed by the backend, so we have to make sure that */
+ /* preview_read_image_data is called */
+
+ if (xsane.reading_data) /* we are still reading data, set flag for cancel */
+ {
+ xsane.cancel_scan = TRUE;
+ }
+ else /* we are not reading image data, so we have to call it now */
+ {
+ xsane_read_image_data(0, -1, GDK_INPUT_READ);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* xsane_start_scan is called 3 times in 3 pass scanning mode */
+static void xsane_start_scan(void)
+{
+ SANE_Status status;
+ SANE_Handle dev = xsane.dev;
+ const char *frame_type = 0;
+ char buf[256];
+ int fd;
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_start_scan\n");
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ status = sane_start(dev);
+ DBG(DBG_info, "sane_start returned with status %s\n", XSANE_STRSTATUS(status));
+
+ if ((status == SANE_STATUS_NO_DOCS) && (xsane.adf_page_counter>0)) /* ADF out of docs but not first page */
+ {
+ xsane_scan_done(status); /* ok, stop multi image scan */
+ snprintf(buf, sizeof(buf), "%s %d", TEXT_ADF_PAGES_SCANNED, xsane.adf_page_counter);
+ xsane_back_gtk_info(buf, FALSE);
+ xsane.adf_page_counter = 0;
+ return;
+ }
+ else if (status != SANE_STATUS_GOOD) /* error */
+ {
+ xsane_scan_done(status);
+ snprintf(buf, sizeof(buf), "%s %s", ERR_FAILED_START_SCANNER, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ xsane.adf_page_counter = 0;
+ return;
+ }
+
+ status = sane_get_parameters(dev, &xsane.param);
+ if (status != SANE_STATUS_GOOD)
+ {
+ xsane_scan_done(status);
+ snprintf(buf, sizeof(buf), "%s %s", ERR_FAILED_GET_PARAMS, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ xsane.adf_page_counter = 0;
+ return;
+ }
+
+ xsane.depth = xsane.param.depth; /* bit depth for saving, can be changed: 1->8, 16->8 */
+
+ xsane.num_bytes = xsane.param.lines * xsane.param.bytes_per_line;
+ xsane.bytes_read = 0;
+ xsane.expand_lineart_to_grayscale = 0;
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_RGB: frame_type = "RGB"; break;
+ case SANE_FRAME_RED: frame_type = "red"; break;
+ case SANE_FRAME_GREEN: frame_type = "green"; break;
+ case SANE_FRAME_BLUE: frame_type = "blue"; break;
+ case SANE_FRAME_GRAY: frame_type = "gray"; break;
+#ifdef SUPPORT_RGBA
+ case SANE_FRAME_RGBA: frame_type = "RGBA"; break;
+#endif
+ default: frame_type = "unknown"; break;
+ }
+
+ if ( (xsane.param.depth == 1) && (xsane.preview->rotation) )
+ {
+ xsane.expand_lineart_to_grayscale = 1; /* We want to do transformation with lineart scan, so we save it as grayscale */
+ }
+
+ if ((xsane.xsane_mode == XSANE_VIEWER) && (xsane.param.depth == 1))
+ {
+ xsane.expand_lineart_to_grayscale = 1; /* we are using the viewer, lineart is not supported, so create grayscale */
+ }
+
+ if (!xsane.header_size) /* first pass of multi pass scan or single pass scan */
+ {
+ xsane_create_internal_gamma_tables(); /* create gamma tables that are not supported by scanner */
+
+ /* temporary file is created with permission 0600 in xsane_generate_dummy_filename */
+ if (!xsane_generate_dummy_filename(0)) /* create filename the scanned data is saved to */
+ {
+ /* no temporary file */
+ if (xsane_create_secure_file(xsane.dummy_filename)) /* remove possibly existing symbolic links for security */
+ {
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, xsane.dummy_filename);
+ xsane_scan_done(-1); /* -1 = error */
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ }
+
+ xsane.out = fopen(xsane.dummy_filename, "wb"); /* b = binary mode for win32 */
+
+ if (!xsane.out) /* error while opening the dummy_file for writing */
+ {
+ xsane_scan_done(-1); /* -1 = error */
+ DBG(DBG_info, "open of file `%s'failed : %s\n", xsane.dummy_filename, strerror(errno));
+ snprintf(buf, sizeof(buf), "%s `%s': %s", ERR_OPEN_FAILED, xsane.dummy_filename, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ if ( (xsane.expand_lineart_to_grayscale) || (xsane.reduce_16bit_to_8bit) )
+ {
+ xsane.depth = 8;
+ }
+
+ image_info.image_width = xsane.param.pixels_per_line;
+ image_info.image_height = xsane.param.lines;
+ image_info.depth = xsane.depth;
+ image_info.colors = xsane.xsane_colors;
+
+ image_info.resolution_x = xsane.resolution_x;
+ image_info.resolution_y = xsane.resolution_y;
+
+ image_info.gamma = xsane.gamma;
+ image_info.gamma_red = xsane.gamma_red;
+ image_info.gamma_green = xsane.gamma_green;
+ image_info.gamma_blue = xsane.gamma_blue;
+
+ image_info.brightness = xsane.brightness;
+ image_info.brightness_red = xsane.brightness_red;
+ image_info.brightness_green = xsane.brightness_green;
+ image_info.brightness_blue = xsane.brightness_blue;
+
+ image_info.contrast = xsane.contrast;
+ image_info.contrast_red = xsane.contrast_red;
+ image_info.contrast_green = xsane.contrast_green;
+ image_info.contrast_blue = xsane.contrast_blue;
+
+ image_info.threshold = xsane.threshold;
+
+ xsane_write_pnm_header(xsane.out, &image_info);
+
+ fflush(xsane.out);
+ xsane.header_size = ftell(xsane.out); /* store header size for 3 pass scan */
+ }
+
+ if (xsane.param.format >= SANE_FRAME_RED && xsane.param.format <= SANE_FRAME_BLUE)
+ {
+/* correct this using read_pnm_header */
+ fseek(xsane.out, xsane.header_size + xsane.param.format - SANE_FRAME_RED, SEEK_SET);
+ }
+
+ xsane.pixelcolor = 0;
+
+ snprintf(buf, sizeof(buf), PROGRESS_RECEIVING_FRAME_DATA, _(frame_type));
+ xsane_progress_new(buf, PROGRESS_SCANNING, (GtkSignalFunc) xsane_cancel, NULL);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ xsane.input_tag = -1;
+
+#ifndef BUGGY_GDK_INPUT_EXCEPTION
+ /* for unix */
+ if ((sane_set_io_mode(dev, SANE_TRUE) == SANE_STATUS_GOOD) && (sane_get_select_fd(dev, &fd) == SANE_STATUS_GOOD))
+ {
+ DBG(DBG_info, "gdk_input_add\n");
+ xsane.input_tag = gdk_input_add(fd, GDK_INPUT_READ | GDK_INPUT_EXCEPTION, xsane_read_image_data, 0);
+ }
+ else
+#else
+ /* for win32 */
+ sane_set_io_mode(dev, SANE_FALSE);
+#endif
+ {
+ xsane_read_image_data(0, -1, GDK_INPUT_READ);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* Invoked when the scan button is pressed */
+/* or by scan_done if automatic document feeder is selected */
+void xsane_scan_dialog(GtkWidget * widget, gpointer call_data)
+{
+ char buf[256];
+ const SANE_Option_Descriptor *opt;
+
+ DBG(DBG_proc, "xsane_scan_dialog\n");
+
+ xsane.reduce_16bit_to_8bit = preferences.reduce_16bit_to_8bit; /* reduce 16 bit image to 8 bit ? */
+
+ sane_get_parameters(xsane.dev, &xsane.param); /* update xsane.param */
+
+ if ( (xsane.mode == XSANE_STANDALONE) && (xsane.xsane_mode == XSANE_SAVE) )
+ {
+ /* correct length of filename counter if it is shorter than minimum length */
+ if (!xsane.force_filename)
+ {
+ xsane_update_counter_in_filename(&preferences.filename, FALSE, 0, preferences.filename_counter_len);
+ gtk_entry_set_text(GTK_ENTRY(xsane.outputfilename_entry), preferences.filename);
+ }
+ }
+
+ xsane_define_output_filename(); /* make xsane.output_filename up to date */
+
+ /* test if file exists, may be we have to output an overwrite warning */
+ if (xsane.mode == XSANE_STANDALONE) /* We are running in standalone mode */
+ {
+ char *extension;
+
+ if ( (xsane.xsane_mode == XSANE_SAVE) && (preferences.overwrite_warning) ) /* test if filename already used */
+ {
+ FILE *testfile;
+
+ testfile = fopen(xsane.output_filename, "rb"); /* read binary (b for win32) */
+ if (testfile) /* filename used: skip */
+ {
+ char buf[256];
+
+ fclose(testfile);
+ snprintf(buf, sizeof(buf), WARN_FILE_EXISTS, xsane.output_filename);
+ if (xsane_back_gtk_decision(ERR_HEADER_WARNING, (gchar **) warning_xpm, buf, BUTTON_OVERWRITE, BUTTON_CANCEL, TRUE /* wait */) == FALSE)
+ {
+ return;
+ }
+ }
+ }
+
+ xsane.xsane_output_format = xsane_identify_output_format(xsane.output_filename, &extension);
+
+ if (xsane.xsane_mode == XSANE_SAVE)
+ {
+ if (xsane.xsane_output_format == XSANE_UNKNOWN)
+ {
+ if (extension)
+ {
+ snprintf(buf, sizeof(buf), ERR_UNSUPPORTED_OUTPUT_FORMAT, xsane.param.depth, extension);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "%s", ERR_NO_OUTPUT_FORMAT);
+ }
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ else if ( ( ( (xsane.xsane_output_format == XSANE_JPEG) && xsane.param.depth == 16) ||
+ ( (xsane.xsane_output_format == XSANE_PS) && xsane.param.depth == 16) ) &&
+ ( !xsane.reduce_16bit_to_8bit) )
+
+ {
+ snprintf(buf, sizeof(buf), TEXT_REDUCE_16BIT_TO_8BIT);
+ if (xsane_back_gtk_decision(ERR_HEADER_INFO, (gchar **) info_xpm, buf, BUTTON_REDUCE, BUTTON_CANCEL, TRUE /* wait */) == FALSE)
+ {
+ return;
+ }
+ xsane.reduce_16bit_to_8bit = TRUE;
+ }
+
+#ifdef SUPPORT_RGBA
+ else if ((xsane.xsane_output_format == XSANE_RGBA) && (xsane.param.format != SANE_FRAME_RGBA))
+ {
+ snprintf(buf, sizeof(buf), "No RGBA data format !!!"); /* user selected output format RGBA, scanner uses other format */
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+#endif
+ }
+#ifdef SUPPORT_RGBA
+ else if (xsane.param.format == SANE_FRAME_RGBA) /* no scanmode but format=rgba */
+ {
+ snprintf(buf, sizeof(buf), "Special format RGBA only supported in scan mode !!!");
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+#endif
+
+#ifdef SUPPORT_RGBA
+ if (xsane.param.format == SANE_FRAME_RGBA)
+ {
+ if ( (xsane.xsane_output_format != XSANE_RGBA) && (xsane.xsane_output_format != XSANE_PNG) )
+ {
+ snprintf(buf, sizeof(buf), "Image data of type SANE_FRAME_RGBA\ncan only be saved in rgba or png format");
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ }
+#endif
+
+ if (xsane.xsane_mode == XSANE_FAX)
+ {
+ mkdir(preferences.fax_project, 7*64 + 0*8 + 0);
+ }
+
+ if (extension)
+ {
+ free(extension);
+ }
+ }
+#ifdef HAVE_LIBGIMP_GIMP_H
+ else /* We are running in gimp mode */
+ {
+ if ((xsane.param.depth != 1) && (xsane.param.depth != 8)) /* not support bit depth ? */
+ {
+ if (!xsane.reduce_16bit_to_8bit) /* ask if reduce 16 to 8 bit */
+ {
+ if (xsane.param.depth == 16)
+ {
+ snprintf(buf, sizeof(buf), TEXT_GIMP_REDUCE_16BIT_TO_8BIT);
+ if (xsane_back_gtk_decision(ERR_HEADER_INFO, (gchar **) info_xpm, buf, BUTTON_REDUCE, BUTTON_CANCEL, TRUE /* wait */) == FALSE)
+ {
+ return;
+ }
+ xsane.reduce_16bit_to_8bit = TRUE;
+ }
+ else /* unsupported bit depth */
+ {
+ snprintf(buf, sizeof(buf), ERR_GIMP_BAD_DEPTH, xsane.param.depth);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ }
+ }
+ }
+#endif
+
+ if (xsane.dummy_filename) /* no dummy filename defined - necessary if an error occurs */
+ {
+ free(xsane.dummy_filename);
+ xsane.dummy_filename = 0;
+ }
+
+ /* create scanner gamma tables, xsane internal gamma tables are created after sane_start */
+ if ( (xsane.xsane_colors > 1) && /* color scan */
+ xsane.scanner_gamma_color ) /* gamma table for red, green and blue available */
+ {
+ double gamma_red, gamma_green, gamma_blue;
+ int gamma_red_size, gamma_green_size, gamma_blue_size;
+ int gamma_red_max, gamma_green_max, gamma_blue_max;
+
+ /* ok, scanner color gamma function is supported, so we do all conversions about that */
+ /* we do not need any gamma tables while scanning, so we can free them after sending */
+ /* the data to the scanner */
+
+ /* if also gray gamma function is supported, set this to 1.0 to get the right colors */
+ if (xsane.scanner_gamma_gray)
+ {
+ int gamma_gray_size;
+ int gamma_gray_max;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector);
+ gamma_gray_size = opt->size / sizeof(opt->type);
+ gamma_gray_max = opt->constraint.range->max;
+
+ xsane.gamma_data = malloc(gamma_gray_size * sizeof(SANE_Int));
+ xsane_create_gamma_curve(xsane.gamma_data, 0, 1.0, 0.0, 0.0, 0.0, 100.0, 1.0, gamma_gray_size, gamma_gray_max);
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector, xsane.gamma_data);
+ free(xsane.gamma_data);
+ xsane.gamma_data = 0;
+ }
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_r);
+ gamma_red_size = opt->size / sizeof(opt->type);
+ gamma_red_max = opt->constraint.range->max;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_g);
+ gamma_green_size = opt->size / sizeof(opt->type);
+ gamma_green_max = opt->constraint.range->max;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_b);
+ gamma_blue_size = opt->size / sizeof(opt->type);
+ gamma_blue_max = opt->constraint.range->max;
+
+ xsane.gamma_data_red = malloc(gamma_red_size * sizeof(SANE_Int));
+ xsane.gamma_data_green = malloc(gamma_green_size * sizeof(SANE_Int));
+ xsane.gamma_data_blue = malloc(gamma_blue_size * sizeof(SANE_Int));
+
+ if (xsane.xsane_mode == XSANE_COPY)
+ {
+ gamma_red = xsane.gamma * xsane.gamma_red * preferences.printer[preferences.printernr]->gamma * preferences.printer[preferences.printernr]->gamma_red;
+ gamma_green = xsane.gamma * xsane.gamma_green * preferences.printer[preferences.printernr]->gamma * preferences.printer[preferences.printernr]->gamma_green;
+ gamma_blue = xsane.gamma * xsane.gamma_blue * preferences.printer[preferences.printernr]->gamma * preferences.printer[preferences.printernr]->gamma_blue;
+ }
+ else
+ {
+ gamma_red = xsane.gamma * xsane.gamma_red;
+ gamma_green = xsane.gamma * xsane.gamma_green;
+ gamma_blue = xsane.gamma * xsane.gamma_blue;
+ }
+
+ xsane_create_gamma_curve(xsane.gamma_data_red, xsane.negative != xsane.medium_negative,
+ gamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ gamma_red_size, gamma_red_max);
+
+ xsane_create_gamma_curve(xsane.gamma_data_green, xsane.negative != xsane.medium_negative,
+ gamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ gamma_green_size, gamma_green_max);
+
+ xsane_create_gamma_curve(xsane.gamma_data_blue, xsane.negative != xsane.medium_negative,
+ gamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ gamma_blue_size, gamma_blue_max);
+
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector_r, xsane.gamma_data_red);
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector_g, xsane.gamma_data_green);
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector_b, xsane.gamma_data_blue);
+
+ free(xsane.gamma_data_red);
+ free(xsane.gamma_data_green);
+ free(xsane.gamma_data_blue);
+
+ xsane.gamma_data_red = 0;
+ xsane.gamma_data_green = 0;
+ xsane.gamma_data_blue = 0;
+ }
+ else if (xsane.scanner_gamma_gray) /* only scanner gray gamma function available or grayscale scan */
+ {
+ /* ok, the scanner only supports gray gamma function */
+ /* if we are doing a grayscale scan everyting is ok, */
+ /* for a color scan the software has to do the gamma correction set by the component slider */
+
+ double gamma;
+ int gamma_gray_size;
+ int gamma_gray_max;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector);
+ gamma_gray_size = opt->size / sizeof(opt->type);
+ gamma_gray_max = opt->constraint.range->max;
+
+ if (xsane.xsane_mode == XSANE_COPY)
+ {
+ gamma = xsane.gamma * preferences.printer[preferences.printernr]->gamma;
+ }
+ else
+ {
+ gamma = xsane.gamma;
+ }
+
+ xsane.gamma_data = malloc(gamma_gray_size * sizeof(SANE_Int));
+
+ if (xsane.xsane_colors > 1) /* color scan */
+ {
+ xsane_create_gamma_curve(xsane.gamma_data, xsane.negative,
+ gamma, xsane.brightness, xsane.contrast,
+ 0.0, 100.0, 1.0, /* medium correction is done by xsane internal gamma correction */
+ gamma_gray_size, gamma_gray_max);
+ }
+ else
+ {
+ xsane_create_gamma_curve(xsane.gamma_data, xsane.negative != xsane.medium_negative,
+ gamma, xsane.brightness, xsane.contrast,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ gamma_gray_size, gamma_gray_max);
+ }
+
+ xsane_back_gtk_update_vector(xsane.well_known.gamma_vector, xsane.gamma_data);
+ free(xsane.gamma_data);
+ xsane.gamma_data = 0;
+ }
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+ xsane_set_sensitivity(FALSE);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ xsane.reading_data = FALSE;
+
+ xsane.scanning = TRUE; /* set marker that scan has been initiated */
+
+ xsane_start_scan();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_create_internal_gamma_tables(void)
+{
+ int size, maxval;
+
+ size = (int) pow(2, xsane.param.depth);
+ maxval = size-1;
+
+ if (xsane.xsane_colors > 1) /* color scan */
+ {
+ if ( (!xsane.scanner_gamma_color) && (xsane.scanner_gamma_gray) )
+ {
+ /* we have to create color gamma table for software conversion */
+ /* but we only have to use color slider values, because gray slider value */
+ /* is used by scanner gray gamma */
+
+ double gamma_red, gamma_green, gamma_blue;
+
+ DBG(DBG_info, "creating xsane internal color gamma tables with size %d\n", size);
+
+ xsane.gamma_data_red = malloc(size * sizeof(SANE_Int));
+ xsane.gamma_data_green = malloc(size * sizeof(SANE_Int));
+ xsane.gamma_data_blue = malloc(size * sizeof(SANE_Int));
+
+ if (xsane.xsane_mode == XSANE_COPY)
+ {
+ gamma_red = xsane.gamma_red * preferences.printer[preferences.printernr]->gamma_red;
+ gamma_green = xsane.gamma_green * preferences.printer[preferences.printernr]->gamma_green;
+ gamma_blue = xsane.gamma_blue * preferences.printer[preferences.printernr]->gamma_blue;
+ }
+ else
+ {
+ gamma_red = xsane.gamma_red;
+ gamma_green = xsane.gamma_green;
+ gamma_blue = xsane.gamma_blue;
+ }
+
+ xsane_create_gamma_curve(xsane.gamma_data_red, xsane.medium_negative,
+ gamma_red, xsane.brightness_red, xsane.contrast_red,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ size, maxval);
+
+ xsane_create_gamma_curve(xsane.gamma_data_green, xsane.medium_negative,
+ gamma_green, xsane.brightness_green, xsane.contrast_green,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ size, maxval);
+
+ xsane_create_gamma_curve(xsane.gamma_data_blue, xsane.medium_negative,
+ gamma_blue, xsane.brightness_blue, xsane.contrast_blue,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ size, maxval);
+
+ /* gamma tables are freed after scan */
+ }
+ else if ( (!xsane.scanner_gamma_color) && (!xsane.scanner_gamma_gray) ) /* no scanner gamma table */
+ {
+ double gamma_red, gamma_green, gamma_blue;
+ /* ok, we have to combin gray and color slider values */
+
+ DBG(DBG_info, "creating xsane internal complete gamma tables with size %d\n", size);
+
+ xsane.gamma_data_red = malloc(size * sizeof(SANE_Int));
+ xsane.gamma_data_green = malloc(size * sizeof(SANE_Int));
+ xsane.gamma_data_blue = malloc(size * sizeof(SANE_Int));
+
+ if (xsane.xsane_mode == XSANE_COPY)
+ {
+ gamma_red = xsane.gamma * xsane.gamma_red * preferences.printer[preferences.printernr]->gamma * preferences.printer[preferences.printernr]->gamma_red;
+ gamma_green = xsane.gamma * xsane.gamma_green * preferences.printer[preferences.printernr]->gamma * preferences.printer[preferences.printernr]->gamma_green;
+ gamma_blue = xsane.gamma * xsane.gamma_blue * preferences.printer[preferences.printernr]->gamma * preferences.printer[preferences.printernr]->gamma_blue;
+ }
+ else
+ {
+ gamma_red = xsane.gamma * xsane.gamma_red;
+ gamma_green = xsane.gamma * xsane.gamma_green;
+ gamma_blue = xsane.gamma * xsane.gamma_blue;
+ }
+
+ xsane_create_gamma_curve(xsane.gamma_data_red, xsane.negative != xsane.medium_negative,
+ gamma_red,
+ xsane.brightness + xsane.brightness_red,
+ xsane.contrast + xsane.contrast_red,
+ xsane.medium_shadow_red, xsane.medium_highlight_red, xsane.medium_gamma_red,
+ size, maxval);
+
+ xsane_create_gamma_curve(xsane.gamma_data_green, xsane.negative != xsane.medium_negative,
+ gamma_green,
+ xsane.brightness + xsane.brightness_green,
+ xsane.contrast + xsane.contrast_green,
+ xsane.medium_shadow_green, xsane.medium_highlight_green, xsane.medium_gamma_green,
+ size, maxval);
+
+ xsane_create_gamma_curve(xsane.gamma_data_blue, xsane.negative != xsane.medium_negative,
+ gamma_blue,
+ xsane.brightness + xsane.brightness_blue,
+ xsane.contrast + xsane.contrast_blue,
+ xsane.medium_shadow_blue, xsane.medium_highlight_blue, xsane.medium_gamma_blue,
+ size, maxval);
+
+ /* gamma tables are freed after scan */
+ }
+ }
+ else /* grayscale scan */
+ {
+ if (!xsane.scanner_gamma_gray) /* no gray scanner gamma table */
+ {
+ double gamma;
+
+ DBG(DBG_info, "creating xsane internal gray gamma table with size %d\n", size);
+
+ if (xsane.xsane_mode == XSANE_COPY)
+ {
+ gamma = xsane.gamma * preferences.printer[preferences.printernr]->gamma;
+ }
+ else
+ {
+ gamma = xsane.gamma;
+ }
+
+ xsane.gamma_data = malloc(size * sizeof(SANE_Int));
+ xsane_create_gamma_curve(xsane.gamma_data, xsane.negative != xsane.medium_negative,
+ gamma, xsane.brightness, xsane.contrast,
+ xsane.medium_shadow_gray, xsane.medium_highlight_gray, xsane.medium_gamma_gray,
+ size, maxval);
+
+ /* gamma table is freed after scan */
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
diff --git a/src/xsane-scan.h b/src/xsane-scan.h
new file mode 100644
index 0000000..db2259c
--- /dev/null
+++ b/src/xsane-scan.h
@@ -0,0 +1,33 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-scan.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include <sane/sane.h>
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_scan_done(SANE_Status status);
+extern void xsane_cancel(void);
+extern void xsane_scan_dialog(GtkWidget * widget, gpointer call_data);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-setup.c b/src/xsane-setup.c
new file mode 100644
index 0000000..be15672
--- /dev/null
+++ b/src/xsane-setup.c
@@ -0,0 +1,3064 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-setup.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preferences.h"
+#include "xsane-device-preferences.h"
+#include "xsane-preview.h"
+#include "xsane-save.h"
+#include "xsane-gamma.h"
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+#include <png.h>
+#include <zlib.h>
+#endif
+#endif
+
+#ifdef HAVE_LIBTIFF
+#include <tiff.h>
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define XSANE_GTK_NAME_IMAGE_PERMISSIONS "gtk_toggle_button_image_permissions"
+#define XSANE_GTK_NAME_DIRECTORY_PERMISSIONS "gtk_toggle_button_directory_permissions"
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+struct XsaneSetup xsane_setup;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations: */
+
+void xsane_new_printer(void);
+void xsane_update_int(GtkWidget *widget, int *val);
+
+static void xsane_update_bool(GtkWidget *widget, int *val);
+static void xsane_update_scale(GtkWidget *widget, double *val);
+static int xsane_update_double(GtkWidget *widget, double *val);
+static void xsane_setup_printer_update(void);
+static void xsane_setup_printer_callback(GtkWidget *widget, gpointer data);
+static void xsane_setup_printer_menu_build(GtkWidget *option_menu);
+static void xsane_setup_printer_apply_changes(GtkWidget *widget, gpointer data);
+static void xsane_setup_printer_new(GtkWidget *widget, gpointer data);
+static void xsane_setup_printer_delete(GtkWidget *widget, gpointer data);
+static void xsane_setup_display_apply_changes(GtkWidget *widget, gpointer data);
+static void xsane_setup_saving_apply_changes(GtkWidget *widget, gpointer data);
+static void xsane_setup_image_apply_changes(GtkWidget *widget, gpointer data);
+static void xsane_setup_fax_apply_changes(GtkWidget *widget, gpointer data);
+#ifdef XSANE_ACTIVATE_MAIL
+static void xsane_setup_mail_apply_changes(GtkWidget *widget, gpointer data);
+#endif
+static void xsane_setup_ocr_apply_changes(GtkWidget *widget, gpointer data);
+static void xsane_setup_options_ok_callback(GtkWidget *widget, gpointer data);
+
+static void xsane_printer_notebook(GtkWidget *notebook);
+static void xsane_saving_notebook(GtkWidget *notebook);
+static void xsane_image_notebook(GtkWidget *notebook);
+static void xsane_fax_notebook(GtkWidget *notebook);
+#ifdef XSANE_ACTIVATE_MAIL
+static void xsane_mail_notebook(GtkWidget *notebook);
+#endif
+static void xsane_display_notebook(GtkWidget *notebook);
+static void xsane_enhance_notebook_sensitivity(int lineart_mode);
+static void xsane_setup_lineart_mode_callback(GtkWidget *widget, gpointer data);
+static void xsane_enhance_notebook(GtkWidget *notebook);
+
+void xsane_setup_dialog(GtkWidget *widget, gpointer data);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int device_options_changed = 0;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+
+void xsane_new_printer(void)
+{
+ void *newprinters;
+
+ DBG(DBG_proc, "xsane_new_printer\n");
+
+ newprinters = realloc(preferences.printer, (preferences.printerdefinitions+1) * sizeof(void *));
+
+ if (newprinters) /* realloc returns NULL if failed, in this case the old memory keeps alive */
+ {
+ preferences.printer = newprinters;
+
+ preferences.printer[preferences.printerdefinitions] = calloc(sizeof(Preferences_printer_t), 1);
+
+ if (preferences.printer[preferences.printerdefinitions])
+ {
+ preferences.printernr = preferences.printerdefinitions;
+ preferences.printerdefinitions++;
+
+ preferences.printer[preferences.printernr]->name = strdup(PRINTERNAME);
+ preferences.printer[preferences.printernr]->command = strdup(PRINTERCOMMAND);
+ preferences.printer[preferences.printernr]->copy_number_option = strdup(PRINTERCOPYNUMBEROPTION);
+ preferences.printer[preferences.printernr]->lineart_resolution = 300;
+ preferences.printer[preferences.printernr]->grayscale_resolution = 150;
+ preferences.printer[preferences.printernr]->color_resolution = 150;
+ preferences.printer[preferences.printernr]->width = 203.2;
+ preferences.printer[preferences.printernr]->height = 294.6;
+ preferences.printer[preferences.printernr]->leftoffset = 3.5;
+ preferences.printer[preferences.printernr]->bottomoffset = 3.5;
+ preferences.printer[preferences.printernr]->gamma = 1.0;
+ preferences.printer[preferences.printernr]->gamma_red = 1.0;
+ preferences.printer[preferences.printernr]->gamma_green = 1.0;
+ preferences.printer[preferences.printernr]->gamma_blue = 1.0;
+ }
+ else
+ {
+ DBG(DBG_error, "could not allocate memory for new printer definition\n");
+ }
+ }
+ else
+ {
+ DBG(DBG_error, "could not allocate memory for new printer definition\n");
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_update_int(GtkWidget *widget, int *val)
+{
+ char *start, *end;
+ int v;
+
+ DBG(DBG_proc, "xsane_update_init\n");
+
+ start = gtk_entry_get_text(GTK_ENTRY(widget));
+ if (!start)
+ return;
+
+ v = (int) strtol(start, &end, 10);
+ if (end > start)
+ {
+ *val = v;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_update_bool(GtkWidget *widget, int *val)
+{
+ DBG(DBG_proc, "xsane_update_bool\n");
+
+ *val = (GTK_TOGGLE_BUTTON(widget)->active != 0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_update_scale(GtkWidget *widget, double *val)
+{
+ DBG(DBG_proc, "xsane_update_scale\n");
+
+ *val = GTK_ADJUSTMENT(widget)->value;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_update_geometry_double(GtkWidget *widget, double *val, double length_multiplier)
+{
+ char *start, *end;
+ double v;
+
+ DBG(DBG_proc, "xsane_update_geometry_double\n");
+
+ start = gtk_entry_get_text(GTK_ENTRY(widget));
+ if (!start)
+ {
+ return;
+ }
+
+ v = strtod(start, &end);
+ if (end > start)
+ {
+ *val = v * length_multiplier;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* returns 0 if value is unchaned */
+static int xsane_update_double(GtkWidget *widget, double *val)
+{
+ char *start, *end;
+ double v;
+ int value_changed = 0;
+
+ DBG(DBG_proc, "xsane_update_double\n");
+
+ start = gtk_entry_get_text(GTK_ENTRY(widget));
+ if (!start)
+ {
+ return 0;
+ }
+
+ v = strtod(start, &end);
+ if (end > start)
+ {
+ value_changed = (fabs(*val - v) >= 0.001);
+ *val = v;
+ }
+
+ return value_changed;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_printer_update()
+{
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_setup_printer_update\n");
+
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_name_entry),
+ (char *) preferences.printer[preferences.printernr]->name);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_command_entry),
+ (char *) preferences.printer[preferences.printernr]->command);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_copy_number_option_entry),
+ (char *) preferences.printer[preferences.printernr]->copy_number_option);
+
+ snprintf(buf, sizeof(buf), "%d", preferences.printer[preferences.printernr]->lineart_resolution);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_lineart_resolution_entry), buf);
+ snprintf(buf, sizeof(buf), "%d", preferences.printer[preferences.printernr]->grayscale_resolution);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_grayscale_resolution_entry), buf);
+ snprintf(buf, sizeof(buf), "%d", preferences.printer[preferences.printernr]->color_resolution);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_color_resolution_entry), buf);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->width / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_width_entry), buf);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->height / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_height_entry), buf);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->leftoffset / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_leftoffset_entry), buf);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->bottomoffset / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_bottomoffset_entry), buf);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_gamma_entry), buf);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma_red);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_gamma_red_entry), buf);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma_green);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_gamma_green_entry), buf);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma_blue);
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.printer_gamma_blue_entry), buf);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_printer_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_printer_callback\n");
+
+ preferences.printernr = (int) data;
+ xsane_setup_printer_update();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_printer_menu_build(GtkWidget *option_menu)
+{
+ GtkWidget *printer_menu, *printer_item;
+ int i;
+
+ DBG(DBG_proc, "xsane_setup_printer_menu_build\n");
+
+ printer_menu = gtk_menu_new();
+
+ for (i=0; i < preferences.printerdefinitions; i++)
+ {
+ printer_item = gtk_menu_item_new_with_label(preferences.printer[i]->name);
+ gtk_container_add(GTK_CONTAINER(printer_menu), printer_item);
+ gtk_signal_connect(GTK_OBJECT(printer_item), "activate", (GtkSignalFunc) xsane_setup_printer_callback, (void *) i);
+ gtk_widget_show(printer_item);
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(option_menu), printer_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(option_menu), preferences.printernr);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_printer_apply_changes(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *option_menu = (GtkWidget *) data;
+
+ DBG(DBG_proc, "xsane_setup_printer_apply_changes\n");
+
+ if (preferences.printer[preferences.printernr]->name)
+ {
+ free((void *) preferences.printer[preferences.printernr]->name);
+ }
+ preferences.printer[preferences.printernr]->name = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.printer_name_entry)));
+
+ if (preferences.printer[preferences.printernr]->command)
+ {
+ free((void *) preferences.printer[preferences.printernr]->command);
+ }
+ preferences.printer[preferences.printernr]->command = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.printer_command_entry)));
+
+ if (preferences.printer[preferences.printernr]->copy_number_option)
+ {
+ free((void *) preferences.printer[preferences.printernr]->copy_number_option);
+ }
+ preferences.printer[preferences.printernr]->copy_number_option =
+ strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.printer_copy_number_option_entry)));
+
+ xsane_update_int(xsane_setup.printer_lineart_resolution_entry, &preferences.printer[preferences.printernr]->lineart_resolution);
+ xsane_update_int(xsane_setup.printer_grayscale_resolution_entry, &preferences.printer[preferences.printernr]->grayscale_resolution);
+ xsane_update_int(xsane_setup.printer_color_resolution_entry, &preferences.printer[preferences.printernr]->color_resolution);
+
+ xsane_update_geometry_double(xsane_setup.printer_width_entry, &preferences.printer[preferences.printernr]->width, preferences.length_unit);
+ xsane_update_geometry_double(xsane_setup.printer_height_entry, &preferences.printer[preferences.printernr]->height, preferences.length_unit);
+ xsane_update_geometry_double(xsane_setup.printer_leftoffset_entry, &preferences.printer[preferences.printernr]->leftoffset, preferences.length_unit);
+ xsane_update_geometry_double(xsane_setup.printer_bottomoffset_entry, &preferences.printer[preferences.printernr]->bottomoffset, preferences.length_unit);
+
+ xsane_update_double(xsane_setup.printer_gamma_entry, &preferences.printer[preferences.printernr]->gamma);
+ xsane_update_double(xsane_setup.printer_gamma_red_entry, &preferences.printer[preferences.printernr]->gamma_red);
+ xsane_update_double(xsane_setup.printer_gamma_green_entry, &preferences.printer[preferences.printernr]->gamma_green);
+ xsane_update_double(xsane_setup.printer_gamma_blue_entry, &preferences.printer[preferences.printernr]->gamma_blue);
+
+ if (option_menu)
+ {
+ xsane_setup_printer_menu_build(option_menu);
+ }
+
+ xsane_define_maximum_output_size();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_printer_new(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *option_menu = (GtkWidget *) data;
+
+ DBG(DBG_proc, "xsane_setup_printer_new\n");
+
+ xsane_new_printer();
+ xsane_setup_printer_update();
+
+ xsane_setup_printer_menu_build(option_menu);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_printer_delete(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *option_menu = (GtkWidget *) data;
+ int i;
+
+ DBG(DBG_proc, "xsane_setup_printer_delete\n");
+
+ preferences.printerdefinitions--;
+
+ i = preferences.printernr;
+ while (i < preferences.printerdefinitions)
+ {
+ memcpy(preferences.printer[i], preferences.printer[i+1], sizeof(Preferences_printer_t));
+ i++;
+ }
+
+ if (preferences.printernr >= preferences.printerdefinitions)
+ {
+ preferences.printernr--;
+ }
+
+ if (preferences.printerdefinitions == 0)
+ {
+ xsane_new_printer();
+ preferences.printernr = 0;
+ }
+
+ xsane_setup_printer_update();
+
+ xsane_setup_printer_menu_build(option_menu);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_filename_counter_len_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_filename_counter_len_callback\n");
+
+ xsane_setup.filename_counter_len = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBTIFF
+static void xsane_setup_tiff_compression16_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_tiff_compression16_callback\n");
+
+ xsane_setup.tiff_compression16_nr = (int) data;
+}
+
+/* -------------------------------------- */
+
+static void xsane_setup_tiff_compression8_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_tiff_compression8_callback\n");
+
+ xsane_setup.tiff_compression8_nr = (int) data;
+}
+
+/* -------------------------------------- */
+
+static void xsane_setup_tiff_compression1_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_tiff_compression1_callback\n");
+ xsane_setup.tiff_compression1_nr = (int) data;
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_display_apply_changes(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_display_apply_changes\n");
+
+ xsane_update_bool(xsane_setup.main_window_fixed_button, &preferences.main_window_fixed);
+ xsane_update_bool(xsane_setup.preview_own_cmap_button, &preferences.preview_own_cmap);
+
+ xsane_update_double(xsane_setup.preview_gamma_entry, &preferences.preview_gamma);
+ xsane_update_double(xsane_setup.preview_gamma_red_entry, &preferences.preview_gamma_red);
+ xsane_update_double(xsane_setup.preview_gamma_green_entry, &preferences.preview_gamma_green);
+ xsane_update_double(xsane_setup.preview_gamma_blue_entry, &preferences.preview_gamma_blue);
+ xsane_update_bool(xsane_setup.disable_gimp_preview_gamma_button, &preferences.disable_gimp_preview_gamma);
+
+ xsane_update_double(xsane_setup.preview_oversampling_entry, &preferences.preview_oversampling);
+
+ if (preferences.doc_viewer)
+ {
+ free((void *) preferences.doc_viewer);
+ }
+ preferences.doc_viewer = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.doc_viewer_entry)));
+
+ xsane_update_gamma_curve(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_enhance_apply_changes(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_enhance_apply_changes\n");
+
+ device_options_changed |= (xsane.lineart_mode != xsane_setup.lineart_mode);
+ xsane.lineart_mode = xsane_setup.lineart_mode;
+
+ device_options_changed |= xsane_update_double(xsane_setup.preview_threshold_min_entry, &xsane.threshold_min);
+ device_options_changed |= xsane_update_double(xsane_setup.preview_threshold_max_entry, &xsane.threshold_max);
+ device_options_changed |= xsane_update_double(xsane_setup.preview_threshold_mul_entry, &xsane.threshold_mul);
+ device_options_changed |= xsane_update_double(xsane_setup.preview_threshold_off_entry, &xsane.threshold_off);
+
+ if (xsane.grayscale_scanmode)
+ {
+ if (xsane_setup.grayscale_scanmode)
+ {
+ device_options_changed |= (strcmp(xsane_setup.grayscale_scanmode, xsane.grayscale_scanmode));
+ }
+ else
+ {
+ device_options_changed |= 1;
+ }
+
+ free((void *) xsane.grayscale_scanmode);
+ xsane.grayscale_scanmode = NULL;
+ }
+ else if (xsane_setup.grayscale_scanmode)
+ {
+ device_options_changed |= 1;
+ }
+
+ if (xsane_setup.grayscale_scanmode)
+ {
+ xsane.grayscale_scanmode = strdup(xsane_setup.grayscale_scanmode);
+ }
+
+
+ if (xsane.adf_scansource)
+ {
+ if (xsane_setup.adf_scansource)
+ {
+ device_options_changed |= (strcmp(xsane_setup.adf_scansource, xsane.adf_scansource));
+ }
+ else
+ {
+ device_options_changed |= 1;
+ }
+
+ free((void *) xsane.adf_scansource);
+ xsane.adf_scansource = NULL;
+ }
+ else if (xsane_setup.adf_scansource)
+ {
+ device_options_changed |= 1;
+ }
+
+ if (xsane_setup.adf_scansource)
+ {
+ xsane.adf_scansource = strdup(xsane_setup.adf_scansource);
+ }
+
+ preferences.preview_pipette_range = xsane_setup.preview_pipette_range;
+
+ xsane_update_bool(xsane_setup.auto_enhance_gamma_button, &preferences.auto_enhance_gamma);
+ xsane_update_bool(xsane_setup.preselect_scanarea_button, &preferences.preselect_scanarea);
+ xsane_update_bool(xsane_setup.auto_correct_colors_button, &preferences.auto_correct_colors);
+
+ xsane_update_gamma_curve(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_saving_apply_changes(GtkWidget *widget, gpointer data)
+{
+ int level;
+
+ DBG(DBG_proc, "xsane_setup_saving_apply_changes\n");
+
+ preferences.filename_counter_len = xsane_setup.filename_counter_len;
+
+ if (strcmp(preferences.tmp_path, gtk_entry_get_text(GTK_ENTRY(xsane_setup.tmp_path_entry))))
+ {
+ for(level = 0; level <= 2; level++)
+ {
+ if (xsane.preview->filename[level])
+ {
+ remove(xsane.preview->filename[level]); /* remove existing preview files */
+ }
+ }
+
+ if (preferences.tmp_path)
+ {
+ free((void *) preferences.tmp_path);
+ }
+
+ preferences.tmp_path = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.tmp_path_entry)));
+
+ preview_generate_preview_filenames(xsane.preview);
+ }
+
+ xsane_update_bool(xsane_setup.save_devprefs_at_exit_button, &preferences.save_devprefs_at_exit);
+ xsane_update_bool(xsane_setup.overwrite_warning_button, &preferences.overwrite_warning);
+ xsane_update_bool(xsane_setup.skip_existing_numbers_button, &preferences.skip_existing_numbers);
+
+ preferences.image_umask = 0777 - xsane_setup.image_permissions;
+ preferences.directory_umask = 0777 - xsane_setup.directory_permissions;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_image_apply_changes(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_image_apply_changes\n");
+
+#ifdef HAVE_LIBJPEG
+ xsane_update_scale(xsane_setup.jpeg_image_quality_scale, &preferences.jpeg_quality);
+#else
+#ifdef HAVE_LIBTIFF
+ xsane_update_scale(xsane_setup.jpeg_image_quality_scale, &preferences.jpeg_quality);
+#endif
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ xsane_update_scale(xsane_setup.pnm_image_compression_scale, &preferences.png_compression);
+#endif
+#endif
+
+#ifdef HAVE_LIBTIFF
+ preferences.tiff_compression16_nr = xsane_setup.tiff_compression16_nr;
+ preferences.tiff_compression8_nr = xsane_setup.tiff_compression8_nr;
+ preferences.tiff_compression1_nr = xsane_setup.tiff_compression1_nr;
+#endif
+
+ xsane_update_bool(xsane_setup.reduce_16bit_to_8bit_button, &preferences.reduce_16bit_to_8bit);
+
+ xsane_define_maximum_output_size();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_fax_apply_changes(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_fax_apply_changes\n");
+
+ if (preferences.fax_command)
+ {
+ free((void *) preferences.fax_command);
+ }
+ preferences.fax_command = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.fax_command_entry)));
+ preferences.fax_receiver_option = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.fax_receiver_option_entry)));
+ preferences.fax_postscript_option = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.fax_postscript_option_entry)));
+ preferences.fax_normal_option = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.fax_normal_option_entry)));
+ preferences.fax_fine_option = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.fax_fine_option_entry)));
+ preferences.fax_viewer = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.fax_viewer_entry)));
+
+ xsane_update_geometry_double(xsane_setup.fax_leftoffset_entry, &preferences.fax_leftoffset, preferences.length_unit);
+ xsane_update_geometry_double(xsane_setup.fax_bottomoffset_entry, &preferences.fax_bottomoffset, preferences.length_unit);
+ xsane_update_geometry_double(xsane_setup.fax_width_entry, &preferences.fax_width, preferences.length_unit);
+ xsane_update_geometry_double(xsane_setup.fax_height_entry, &preferences.fax_height, preferences.length_unit);
+
+ xsane_define_maximum_output_size();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef XSANE_ACTIVATE_MAIL
+static void xsane_setup_mail_apply_changes(GtkWidget *widget, gpointer data)
+{
+ int i;
+
+ DBG(DBG_proc, "xsane_setup_mail_apply_changes\n");
+
+ preferences.mail_from = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_from_entry)));
+ preferences.mail_reply_to = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_reply_to_entry)));
+ preferences.mail_smtp_server = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_smtp_server_entry)));
+ preferences.mail_pop3_server = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_pop3_server_entry)));
+ preferences.mail_pop3_user = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_pop3_user_entry)));
+ preferences.mail_pop3_pass = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_pop3_pass_entry)));
+ preferences.mail_viewer = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.mail_viewer_entry)));
+
+ /* make sure password is not stored in ascii text */
+ /* this is very simple but better than nothing */
+ for (i=0; i<strlen(preferences.mail_pop3_pass); i++)
+ {
+ preferences.mail_pop3_pass[i] ^= 0x53;
+ }
+
+ xsane_update_bool(xsane_setup.mail_pop3_authentification_entry, &preferences.mail_pop3_authentification);
+ xsane_update_int(xsane_setup.mail_smtp_port_entry, &preferences.mail_smtp_port);
+ xsane_update_int(xsane_setup.mail_pop3_port_entry, &preferences.mail_pop3_port);
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_ocr_apply_changes(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_ocr_apply_changes\n");
+
+ if (preferences.ocr_command)
+ {
+ free((void *) preferences.ocr_command);
+ }
+ preferences.ocr_command = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.ocr_command_entry)));
+
+ if (preferences.ocr_inputfile_option)
+ {
+ free((void *) preferences.ocr_inputfile_option);
+ }
+ preferences.ocr_inputfile_option = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.ocr_inputfile_option_entry)));
+
+ if (preferences.ocr_outputfile_option)
+ {
+ free((void *) preferences.ocr_outputfile_option);
+ }
+ preferences.ocr_outputfile_option = strdup(gtk_entry_get_text(GTK_ENTRY(xsane_setup.ocr_outputfile_option_entry)));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_options_ok_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_options_ok_callback\n");
+
+ xsane_setup_printer_apply_changes(0, 0);
+ xsane_setup_display_apply_changes(0, 0);
+ xsane_setup_enhance_apply_changes(0, 0);
+ xsane_setup_saving_apply_changes(0, 0);
+ xsane_setup_image_apply_changes(0, 0);
+ xsane_setup_fax_apply_changes(0, 0);
+#ifdef XSANE_ACTIVATE_MAIL
+ xsane_setup_mail_apply_changes(0, 0);
+#endif
+ xsane_setup_ocr_apply_changes(0, 0);
+
+ if (xsane_setup.grayscale_scanmode)
+ {
+ free((void *) xsane_setup.grayscale_scanmode);
+ xsane_setup.grayscale_scanmode = NULL;
+ }
+
+ if (xsane_setup.adf_scansource)
+ {
+ free((void *) xsane_setup.adf_scansource);
+ xsane_setup.adf_scansource = NULL;
+ }
+
+
+ xsane_pref_save();
+
+ gtk_widget_destroy((GtkWidget *)data); /* => xsane_destroy_setup_dialog_callback */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* this routine is called when the setup dialog window is closed, no matter */
+/* if "OK", "CANCEL" or the window manager destroy button has been pressed */
+void xsane_destroy_setup_dialog_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_destroy_setup_dialog_callback\n");
+
+ if (device_options_changed)
+ {
+ xsane_device_preferences_save();
+ }
+
+ xsane_set_sensitivity(TRUE);
+
+ xsane.preview->calibration = 0;
+ xsane_back_gtk_refresh_dialog();
+ preview_update_surface(xsane.preview, 1);
+ xsane_update_gamma_curve(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_close_setup_dialog_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_close_setup_dialog_callback\n");
+
+ gtk_widget_destroy((GtkWidget *)data); /* => xsane_destroy_setup_dialog_callback */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_permission_toggled(GtkWidget *widget, gpointer data)
+{
+ int mask = (int) data;
+ int *permission = 0;
+ gchar *name = gtk_widget_get_name(widget);
+
+ DBG(DBG_proc, "xsane_permission_toggled\n");
+
+ if (!strcmp(name, XSANE_GTK_NAME_IMAGE_PERMISSIONS))
+ {
+ permission = &xsane_setup.image_permissions;
+ }
+ else if (!strcmp(name, XSANE_GTK_NAME_DIRECTORY_PERMISSIONS))
+ {
+ permission = &xsane_setup.directory_permissions;
+ }
+
+ if (permission)
+ {
+ if (GTK_TOGGLE_BUTTON(widget)->active) /* set bit */
+ {
+ *permission = *permission | mask;
+ }
+ else /* erase bit */
+ {
+ *permission = *permission & (0777-mask);
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_permission_box(GtkWidget *parent, gchar *name, gchar *description, int *permission,
+ int header, int x_sensitivity, int user_sensitivity)
+{
+ GtkWidget *hbox, *button, *label, *hspace;
+
+ DBG(DBG_proc, "xsane_permission_box\n");
+
+ if (header)
+ {
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(parent), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PERMISSION_USER);
+ gtk_widget_set_usize(label, 75, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ label = gtk_label_new(TEXT_SETUP_PERMISSION_GROUP);
+ gtk_widget_set_usize(label, 75, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ label = gtk_label_new(TEXT_SETUP_PERMISSION_ALL);
+ gtk_widget_set_usize(label, 75, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ gtk_widget_show(hbox);
+ }
+
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(parent), hbox, FALSE, FALSE, 2);
+
+ button = gtk_toggle_button_new_with_label("r");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 256 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_READ);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 256);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+ gtk_widget_set_sensitive(button, user_sensitivity);
+
+ button = gtk_toggle_button_new_with_label("w");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 128 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_WRITE);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 128);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+ gtk_widget_set_sensitive(button, user_sensitivity);
+
+ button = gtk_toggle_button_new_with_label("x");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 64 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_EXECUTE);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 64);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+ gtk_widget_set_sensitive(button, x_sensitivity & user_sensitivity);
+
+
+
+ hspace = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), hspace, FALSE, FALSE, 6);
+ gtk_widget_show(hspace);
+
+
+
+ button = gtk_toggle_button_new_with_label("r");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 32 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_READ);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 32);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+
+ button = gtk_toggle_button_new_with_label("w");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 16 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_WRITE);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 16);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+
+ button = gtk_toggle_button_new_with_label("x");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 8 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_EXECUTE);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 8);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+ gtk_widget_set_sensitive(button, x_sensitivity);
+
+
+
+ hspace = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), hspace, FALSE, FALSE, 6);
+ gtk_widget_show(hspace);
+
+
+
+ button = gtk_toggle_button_new_with_label("r");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 4 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_READ);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 4);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+
+ button = gtk_toggle_button_new_with_label("w");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 2 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_WRITE);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 2);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+
+ button = gtk_toggle_button_new_with_label("x");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), *permission & 1 );
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PERMISSION_EXECUTE);
+ gtk_widget_set_usize(button, 21, 0);
+ gtk_widget_set_name(button, name);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_permission_toggled, (void *) 1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
+ gtk_widget_show(button);
+ gtk_widget_set_sensitive(button, x_sensitivity);
+
+
+
+ hspace = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), hspace, FALSE, FALSE, 5);
+ gtk_widget_show(hspace);
+
+
+
+ label = gtk_label_new(description);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_printer_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *button, *label, *text, *frame;
+ GtkWidget *printer_option_menu;
+ char buf[64];
+
+ DBG(DBG_proc, "xsane_printer_notebook\n");
+
+ /* Printer options notebook page */
+
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_COPY_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_SEL);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ printer_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, printer_option_menu, DESC_PRINTER_SETUP);
+ gtk_box_pack_end(GTK_BOX(hbox), printer_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(printer_option_menu);
+ gtk_widget_show(hbox);
+
+ xsane_setup_printer_menu_build(printer_option_menu);
+
+ /* printername : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_NAME);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_NAME);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.printer[preferences.printernr]->name);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_name_entry = text;
+
+ /* printcommand : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_CMD);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_COMMAND);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.printer[preferences.printernr]->command);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_command_entry = text;
+
+ /* copy number option : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_COPY_NR_OPT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_COPY_NUMBER_OPTION);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.printer[preferences.printernr]->copy_number_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_copy_number_option_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* printer lineart resolution : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_LINEART_RES);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_LINEART_RESOLUTION);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%d", preferences.printer[preferences.printernr]->lineart_resolution);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_lineart_resolution_entry = text;
+
+
+ /* printer grayscale resolution : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_GRAYSCALE_RES);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_GRAYSCALE_RESOLUTION);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%d", preferences.printer[preferences.printernr]->grayscale_resolution);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_grayscale_resolution_entry = text;
+
+
+ /* printer color resolution : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_COLOR_RES);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_COLOR_RESOLUTION);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%d", preferences.printer[preferences.printernr]->color_resolution);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_color_resolution_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* printer width: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_PRINTER_WIDTH, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_WIDTH);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->width / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_width_entry = text;
+
+ /* printer height: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_PRINTER_HEIGHT, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_HEIGHT);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->height / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_height_entry = text;
+
+ /* printer left offset : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_PRINTER_LEFT, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_LEFTOFFSET);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->leftoffset / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_leftoffset_entry = text;
+
+ /* printer bottom offset : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_PRINTER_BOTTOM, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_BOTTOMOFFSET);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.printer[preferences.printernr]->bottomoffset / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_bottomoffset_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* printer gamma: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_GAMMA);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_GAMMA);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_gamma_entry = text;
+
+ /* printer gamma red: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_GAMMA_RED);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_GAMMA_RED);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma_red);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_gamma_red_entry = text;
+
+ /* printer gamma green: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_GAMMA_GREEN);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_GAMMA_GREEN);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma_green);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_gamma_green_entry = text;
+
+ /* printer gamma blue: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_PRINTER_GAMMA_BLUE);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRINTER_GAMMA_BLUE);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.printer[preferences.printernr]->gamma_blue);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.printer_gamma_blue_entry = text;
+
+
+ xsane_separator_new(vbox, 4);
+
+ /* "apply" "add printer" "delete printer" */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_printer_apply_changes, printer_option_menu);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_ADD_PRINTER);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_printer_new, printer_option_menu);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_DELETE_PRINTER);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_printer_delete, printer_option_menu);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_browse_tmp_path_callback(GtkWidget *widget, gpointer data)
+{
+ gchar *old_tmp_path;
+ char tmp_path[256];
+ char windowname[256];
+
+ DBG(DBG_proc, "xsane_setup_browse_tmp_path_callback\n");
+
+ old_tmp_path = gtk_entry_get_text(GTK_ENTRY(xsane_setup.tmp_path_entry));
+ strncpy(tmp_path, old_tmp_path, sizeof(tmp_path));
+
+ snprintf(windowname, sizeof(windowname), "%s %s", xsane.prog_name, WINDOW_TMP_PATH);
+ xsane_back_gtk_get_filename(windowname, tmp_path, sizeof(tmp_path), tmp_path, TRUE, FALSE, TRUE);
+
+ gtk_entry_set_text(GTK_ENTRY(xsane_setup.tmp_path_entry), tmp_path);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_saving_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *button, *label, *text, *frame;
+ GtkWidget *filename_counter_len_option_menu, *filename_counter_len_menu, *filename_counter_len_item;
+ char buf[64];
+ int i, select = 1;
+
+ DBG(DBG_proc, "xsane_saving_notebook\n");
+
+ /* Saving options notebook page */
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_SAVING_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+
+
+ /* tmp path : */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_TMP_PATH);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new_with_max_length(255);
+ gtk_widget_set_usize(text, 70, 0); /* set minimum size */
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_TMP_PATH);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.tmp_path);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_widget_show(text);
+ xsane_setup.tmp_path_entry = text;
+
+ button = gtk_button_new_with_label(BUTTON_BROWSE);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_browse_tmp_path_callback, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 2);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_BUTTON_TMP_PATH_BROWSE);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* permissions */
+ xsane_setup.image_permissions = 0777-preferences.image_umask;
+ xsane_permission_box(vbox, XSANE_GTK_NAME_IMAGE_PERMISSIONS, TEXT_SETUP_IMAGE_PERMISSION, &xsane_setup.image_permissions,
+ TRUE /* header */, FALSE /* x sens */, FALSE /* user sens */);
+
+ xsane_setup.directory_permissions = 0777-preferences.directory_umask;
+ xsane_permission_box(vbox, XSANE_GTK_NAME_DIRECTORY_PERMISSIONS, TEXT_SETUP_DIR_PERMISSION, &xsane_setup.directory_permissions,
+ FALSE /* header */, TRUE /* x sens */, FALSE /* user sens */);
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* overwrite warning */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_OVERWRITE_WARNING);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_OVERWRITE_WARNING);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.overwrite_warning);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.overwrite_warning_button = button;
+
+ /* skip existing numbers */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_SKIP_EXISTING_NRS);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_SKIP_EXISTING);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.skip_existing_numbers);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.skip_existing_numbers_button = button;
+
+ /* filename counter length */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_FILENAME_COUNTER_LEN);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ filename_counter_len_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, filename_counter_len_option_menu, DESC_FILENAME_COUNTER_LEN);
+ gtk_box_pack_end(GTK_BOX(hbox), filename_counter_len_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(filename_counter_len_option_menu);
+ gtk_widget_show(hbox);
+
+ filename_counter_len_menu = gtk_menu_new();
+
+ for (i=0; i <= 10; i++)
+ {
+ if (i)
+ {
+ snprintf(buf, sizeof(buf), "%d", i);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), MENU_ITEM_COUNTER_LEN_INACTIVE);
+ }
+ filename_counter_len_item = gtk_menu_item_new_with_label(buf);
+ gtk_container_add(GTK_CONTAINER(filename_counter_len_menu), filename_counter_len_item);
+ gtk_signal_connect(GTK_OBJECT(filename_counter_len_item), "activate",
+ (GtkSignalFunc) xsane_setup_filename_counter_len_callback, (void *) i);
+ gtk_widget_show(filename_counter_len_item);
+ if (preferences.filename_counter_len == i)
+ {
+ select = i;
+ }
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(filename_counter_len_option_menu), filename_counter_len_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(filename_counter_len_option_menu), select);
+ xsane_setup.filename_counter_len = preferences.filename_counter_len;
+
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* save device preferences at exit */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_SAVE_DEVPREFS_AT_EXIT);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_SAVE_DEVPREFS_AT_EXIT);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.save_devprefs_at_exit);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.save_devprefs_at_exit_button = button;
+
+
+ xsane_separator_new(vbox, 4);
+
+
+
+
+ /* apply button */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_saving_apply_changes, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_image_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *button, *label, *frame;
+ int i, select = 1;
+
+#ifdef HAVE_LIBTIFF
+ GtkWidget *tiff_compression_option_menu, *tiff_compression_menu, *tiff_compression_item;
+
+ typedef struct tiff_compression_t
+ {
+ char *name;
+ int number;
+ } tiff_compression;
+
+#define TIFF_COMPRESSION16_NUMBER 2
+#define TIFF_COMPRESSION8_NUMBER 3
+#define TIFF_COMPRESSION1_NUMBER 6
+
+ tiff_compression tiff_compression16_strings[TIFF_COMPRESSION16_NUMBER];
+ tiff_compression tiff_compression8_strings[TIFF_COMPRESSION8_NUMBER];
+ tiff_compression tiff_compression1_strings[TIFF_COMPRESSION1_NUMBER];
+
+ tiff_compression16_strings[0].name = MENU_ITEM_TIFF_COMP_NONE;
+ tiff_compression16_strings[0].number = COMPRESSION_NONE;
+ tiff_compression16_strings[1].name = MENU_ITEM_TIFF_COMP_PACKBITS;
+ tiff_compression16_strings[1].number = COMPRESSION_PACKBITS;
+
+ tiff_compression8_strings[0].name = MENU_ITEM_TIFF_COMP_NONE;
+ tiff_compression8_strings[0].number = COMPRESSION_NONE;
+ tiff_compression8_strings[1].name = MENU_ITEM_TIFF_COMP_JPEG;
+ tiff_compression8_strings[1].number = COMPRESSION_JPEG;
+ tiff_compression8_strings[2].name = MENU_ITEM_TIFF_COMP_PACKBITS;
+ tiff_compression8_strings[2].number = COMPRESSION_PACKBITS;
+
+ tiff_compression1_strings[0].name = MENU_ITEM_TIFF_COMP_NONE;
+ tiff_compression1_strings[0].number = COMPRESSION_NONE;
+ tiff_compression1_strings[1].name = MENU_ITEM_TIFF_COMP_CCITTRLE;
+ tiff_compression1_strings[1].number = COMPRESSION_CCITTRLE;
+ tiff_compression1_strings[2].name = MENU_ITEM_TIFF_COMP_CCITFAX3;
+ tiff_compression1_strings[2].number = COMPRESSION_CCITTFAX3;
+ tiff_compression1_strings[3].name = MENU_ITEM_TIFF_COMP_CCITFAX4;
+ tiff_compression1_strings[3].number = COMPRESSION_CCITTFAX4;
+ tiff_compression1_strings[4].name = MENU_ITEM_TIFF_COMP_JPEG;
+ tiff_compression1_strings[4].number = COMPRESSION_JPEG;
+ tiff_compression1_strings[5].name = MENU_ITEM_TIFF_COMP_PACKBITS;
+ tiff_compression1_strings[5].number = COMPRESSION_PACKBITS;
+
+#endif /* HAVE_LIBTIFF */
+
+ DBG(DBG_proc, "xsane_image_notebook\n");
+
+ /* Image options notebook page */
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_IMAGE_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+
+ /* reduce 16bit to 8bit */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_REDUCE_16BIT_TO_8BIT);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_REDUCE_16BIT_TO_8BIT);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.reduce_16bit_to_8bit);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.reduce_16bit_to_8bit_button = button;
+
+
+#ifdef HAVE_LIBJPEG
+ xsane_separator_new(vbox, 4);
+#else
+#ifdef HAVE_LIBTIFF
+ xsane_separator_new(vbox, 4);
+#else
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ xsane_separator_new(vbox, 4);
+#endif
+#endif
+#endif
+#endif
+
+#ifdef HAVE_LIBJPEG
+ xsane_scale_new(GTK_BOX(vbox), TEXT_SETUP_JPEG_QUALITY, DESC_JPEG_QUALITY, 0.0, 100.0, 1.0, 10.0, 0.0, 0,
+ &preferences.jpeg_quality, (GtkObject **) &xsane_setup.jpeg_image_quality_scale, 0, TRUE);
+#else
+#ifdef HAVE_LIBTIFF
+ xsane_scale_new(GTK_BOX(vbox), TEXT_SETUP_JPEG_QUALITY, DESC_JPEG_QUALITY, 0.0, 100.0, 1.0, 10.0, 0.0, 0,
+ &preferences.jpeg_quality, (GtkObject **) &xsane_setup.jpeg_image_quality_scale, 0, TRUE);
+#endif
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ xsane_scale_new(GTK_BOX(vbox), TEXT_SETUP_PNG_COMPRESSION, DESC_PNG_COMPRESSION, 0.0, Z_BEST_COMPRESSION, 1.0, 10.0, 0.0, 0,
+ &preferences.png_compression, (GtkObject **) &xsane_setup.pnm_image_compression_scale, 0, TRUE);
+#endif
+#endif
+
+#ifdef HAVE_LIBTIFF
+ /* TIFF 16 BIT IMAGES COMPRESSION */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_TIFF_COMPRESSION_16);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ tiff_compression_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, tiff_compression_option_menu, DESC_TIFF_COMPRESSION_16);
+ gtk_box_pack_end(GTK_BOX(hbox), tiff_compression_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(tiff_compression_option_menu);
+ gtk_widget_show(hbox);
+
+ tiff_compression_menu = gtk_menu_new();
+
+ for (i=1; i <= TIFF_COMPRESSION16_NUMBER; i++)
+ {
+ tiff_compression_item = gtk_menu_item_new_with_label(tiff_compression16_strings[i-1].name);
+ gtk_container_add(GTK_CONTAINER(tiff_compression_menu), tiff_compression_item);
+ gtk_signal_connect(GTK_OBJECT(tiff_compression_item), "activate",
+ (GtkSignalFunc) xsane_setup_tiff_compression16_callback, (void *) tiff_compression16_strings[i-1].number);
+ gtk_widget_show(tiff_compression_item);
+ if (tiff_compression16_strings[i-1].number == preferences.tiff_compression16_nr)
+ {
+ select = i-1;
+ }
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(tiff_compression_option_menu), tiff_compression_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(tiff_compression_option_menu), select);
+ xsane_setup.tiff_compression16_nr = preferences.tiff_compression16_nr;
+
+
+ /* TIFF 8 BIT IMAGES COMPRESSION */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_TIFF_COMPRESSION_8);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ tiff_compression_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, tiff_compression_option_menu, DESC_TIFF_COMPRESSION_8);
+ gtk_box_pack_end(GTK_BOX(hbox), tiff_compression_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(tiff_compression_option_menu);
+ gtk_widget_show(hbox);
+
+ tiff_compression_menu = gtk_menu_new();
+
+ for (i=1; i <= TIFF_COMPRESSION8_NUMBER; i++)
+ {
+ tiff_compression_item = gtk_menu_item_new_with_label(tiff_compression8_strings[i-1].name);
+ gtk_container_add(GTK_CONTAINER(tiff_compression_menu), tiff_compression_item);
+ gtk_signal_connect(GTK_OBJECT(tiff_compression_item), "activate",
+ (GtkSignalFunc) xsane_setup_tiff_compression8_callback, (void *) tiff_compression8_strings[i-1].number);
+ gtk_widget_show(tiff_compression_item);
+ if (tiff_compression8_strings[i-1].number == preferences.tiff_compression8_nr)
+ {
+ select = i-1;
+ }
+ }
+
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(tiff_compression_option_menu), tiff_compression_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(tiff_compression_option_menu), select);
+ xsane_setup.tiff_compression8_nr = preferences.tiff_compression8_nr;
+
+
+ /* TIFF 1 BIT IMAGES COMPRESSION */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_TIFF_COMPRESSION_1);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ tiff_compression_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, tiff_compression_option_menu, DESC_TIFF_COMPRESSION_1);
+ gtk_box_pack_end(GTK_BOX(hbox), tiff_compression_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(tiff_compression_option_menu);
+ gtk_widget_show(hbox);
+
+ tiff_compression_menu = gtk_menu_new();
+
+ for (i=1; i <= TIFF_COMPRESSION1_NUMBER; i++)
+ {
+ tiff_compression_item = gtk_menu_item_new_with_label(tiff_compression1_strings[i-1].name);
+ gtk_container_add(GTK_CONTAINER(tiff_compression_menu), tiff_compression_item);
+ gtk_signal_connect(GTK_OBJECT(tiff_compression_item), "activate",
+ (GtkSignalFunc) xsane_setup_tiff_compression1_callback, (void *) tiff_compression1_strings[i-1].number);
+ gtk_widget_show(tiff_compression_item);
+ if (tiff_compression1_strings[i-1].number == preferences.tiff_compression1_nr)
+ {
+ select = i-1;
+ }
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(tiff_compression_option_menu), tiff_compression_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(tiff_compression_option_menu), select);
+ xsane_setup.tiff_compression1_nr = preferences.tiff_compression1_nr;
+
+#endif
+
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* apply button */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_image_apply_changes, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *button, *label, *text, *frame;
+ char buf[64];
+
+ DBG(DBG_proc, "xsane_fax_notebook\n");
+
+ /* Fax options notebook page */
+
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_FAX_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+ /* faxcommand : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_FAX_COMMAND);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_COMMAND);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_command);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_command_entry = text;
+
+
+ /* fax receiver option: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_FAX_RECEIVER_OPTION);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_RECEIVER_OPT);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_receiver_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_receiver_option_entry = text;
+
+
+/* fax postscript option: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_FAX_POSTSCRIPT_OPT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_POSTSCRIPT_OPT);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_postscript_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_postscript_option_entry = text;
+
+
+ /* fax normal mode option : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_FAX_NORMAL_MODE_OPT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_NORMAL_OPT);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_normal_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_normal_option_entry = text;
+
+
+ /* fax fine mode option : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_FAX_FINE_MODE_OPT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_FINE_OPT);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_fine_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_fine_option_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* faxviewer */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_FAX_VIEWER);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_VIEWER);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_viewer);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_viewer_entry = text;
+
+
+ xsane_separator_new(vbox, 4);
+
+ /* fax width: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_FAX_WIDTH, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_WIDTH);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.fax_width / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_width_entry = text;
+
+ /* fax height: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_FAX_HEIGHT, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_HEIGHT);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.fax_height / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_height_entry = text;
+
+ /* fax left offset : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_FAX_LEFT, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_LEFTOFFSET);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.fax_leftoffset / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_leftoffset_entry = text;
+
+ /* fax bottom offset : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ snprintf(buf, sizeof(buf), "%s [%s]:", TEXT_SETUP_FAX_BOTTOM, xsane_back_gtk_unit_string(SANE_UNIT_MM));
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAX_BOTTOMOFFSET);
+ gtk_widget_set_usize(text, 80, 0);
+ snprintf(buf, sizeof(buf), "%4.3f", preferences.fax_bottomoffset / preferences.length_unit);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.fax_bottomoffset_entry = text;
+
+ xsane_separator_new(vbox, 4);
+
+ /* apply button */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_fax_apply_changes, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_pop3_authentification_callback(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *pop3_vbox = (GtkWidget *) data;
+
+ gtk_widget_set_sensitive(pop3_vbox, (GTK_TOGGLE_BUTTON(widget)->active != 0));
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef XSANE_ACTIVATE_MAIL
+static void xsane_mail_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *pop3_vbox, *hbox, *button, *label, *text, *frame;
+ char buf[64];
+ char *password;
+ int i;
+
+ DBG(DBG_proc, "xsane_mail_notebook\n");
+
+ /* Mail options notebook page */
+
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_MAIL_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+
+ /* from */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_MAIL_FROM);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAIL_FROM);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_from);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_from_entry = text;
+
+
+ /* reply to */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_MAIL_REPLY_TO);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAIL_REPLY_TO);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_reply_to);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_reply_to_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* smtp server */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_SMTP_SERVER);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_SMTP_SERVER);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_smtp_server);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_smtp_server_entry = text;
+
+
+ /* smtp port */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_SMTP_PORT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_SMTP_PORT);
+ gtk_widget_set_usize(text, 50, 0);
+ snprintf(buf, sizeof(buf), "%d", preferences.mail_smtp_port);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_smtp_port_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* create vbox for pop3 settings */
+ pop3_vbox = gtk_vbox_new(FALSE, 5);
+ gtk_widget_show(pop3_vbox);
+
+ /* pop3 authentification */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_POP3_AUTHENTIFICATION);
+ gtk_signal_connect(GTK_OBJECT(button), "toggled", (GtkSignalFunc) xsane_setup_pop3_authentification_callback, (void *) pop3_vbox);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_POP3_AUTHENTIFICATION);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.mail_pop3_authentification);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_pop3_authentification_entry = button;
+
+ /* place vbox for pop3 settings after check_button */
+ gtk_box_pack_start(GTK_BOX(vbox), pop3_vbox, FALSE, FALSE, 2);
+ gtk_widget_set_sensitive(pop3_vbox, (GTK_TOGGLE_BUTTON(button)->active != 0));
+
+ /* pop3 server */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(pop3_vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_POP3_SERVER);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_POP3_SERVER);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_pop3_server);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_pop3_server_entry = text;
+
+
+ /* pop3 port */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(pop3_vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_POP3_PORT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_POP3_PORT);
+ gtk_widget_set_usize(text, 50, 0);
+ snprintf(buf, sizeof(buf), "%d", preferences.mail_pop3_port);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_pop3_port_entry = text;
+
+
+ /* pop3 username */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(pop3_vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_POP3_USER);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_POP3_USER);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_pop3_user);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_pop3_user_entry = text;
+
+
+ /* pop3 password */
+ password = strdup(preferences.mail_pop3_pass);
+
+ for (i=0; i<strlen(password); i++)
+ {
+ password[i] ^= 0x53;
+ }
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(pop3_vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_POP3_PASS);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_POP3_PASS);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) password);
+ gtk_entry_set_visibility(GTK_ENTRY(text), 0);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_pop3_pass_entry = text;
+
+ free(password);
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* mailviewer */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_MAIL_VIEWER);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAIL_VIEWER);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_viewer);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.mail_viewer_entry = text;
+
+
+ xsane_separator_new(vbox, 4);
+
+ /* apply button */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_mail_apply_changes, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_ocr_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *label, *text, *frame;
+
+ DBG(DBG_proc, "xsane_ocr_notebook\n");
+
+ /* OCR options notebook page */
+
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_OCR_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+ /* ocrcommand : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_OCR_COMMAND);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_OCR_COMMAND);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.ocr_command);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.ocr_command_entry = text;
+
+
+ /* ocrinputfileoption : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_OCR_INPUTFILE_OPT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_OCR_INPUTFILE_OPT);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.ocr_inputfile_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.ocr_inputfile_option_entry = text;
+
+
+ /* ocroutputfileoption : */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_OCR_OUTPUTFILE_OPT);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_OCR_OUTPUTFILE_OPT);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.ocr_outputfile_option);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.ocr_outputfile_option_entry = text;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_display_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *button, *label, *text, *frame;
+ char buf[64];
+
+ DBG(DBG_proc, "xsane_display_notebook\n");
+
+ /* Display options notebook page */
+
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_DISPLAY_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+ /* main window fixed: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_WINDOW_FIXED);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_MAIN_WINDOW_FIXED);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.main_window_fixed);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.main_window_fixed_button = button;
+
+ /* private colormap: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_PRIVATE_COLORMAP);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PREVIEW_COLORMAP);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.preview_own_cmap);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.preview_own_cmap_button = button;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+/* preview oversampling value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_PREVIEW_OVERSAMPLING);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.preview_oversampling);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_OVERSAMPLING);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_oversampling_entry = text;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* preview gamma correction value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_PREVIEW_GAMMA);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.preview_gamma);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_GAMMA);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_gamma_entry = text;
+
+ /* red preview gamma correction value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_PREVIEW_GAMMA_RED);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.preview_gamma_red);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_GAMMA_RED);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_gamma_red_entry = text;
+
+ /* green preview gamma correction value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_PREVIEW_GAMMA_GREEN);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.preview_gamma_green);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_GAMMA_GREEN);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_gamma_green_entry = text;
+
+ /* blue preview gamma correction value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_PREVIEW_GAMMA_BLUE);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", preferences.preview_gamma_blue);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_GAMMA_BLUE);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_gamma_blue_entry = text;
+
+ /* disable preview gamma for gimp plugin: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_DISABLE_GIMP_PREVIEW_GAMMA);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_DISABLE_GIMP_PREVIEW_GAMMA);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.disable_gimp_preview_gamma);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.disable_gimp_preview_gamma_button = button;
+
+
+ xsane_separator_new(vbox, 2);
+
+
+ /* docviewer */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_HELPFILE_VIEWER);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_DOC_VIEWER);
+ gtk_widget_set_usize(text, 250, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.doc_viewer);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+ xsane_setup.doc_viewer_entry = text;
+
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* apply button */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_display_apply_changes, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(hbox);
+
+ preview_update_surface(xsane.preview, 1);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_enhance_notebook_sensitivity(int lineart_mode)
+{
+ int sensitivity_val = FALSE;
+ int sensitivity_mode = FALSE;
+
+ DBG(DBG_proc, "xsane_enhance_notebook_sensitivity\n");
+
+ if (lineart_mode == XSANE_LINEART_XSANE)
+ {
+ sensitivity_val = TRUE;
+ }
+
+ if (lineart_mode == XSANE_LINEART_GRAYSCALE)
+ {
+ sensitivity_val = TRUE;
+ sensitivity_mode = TRUE;
+ }
+
+ gtk_widget_set_sensitive(xsane_setup.preview_threshold_min_entry, sensitivity_val);
+ gtk_widget_set_sensitive(xsane_setup.preview_threshold_max_entry, sensitivity_val);
+ gtk_widget_set_sensitive(xsane_setup.preview_threshold_mul_entry, sensitivity_val);
+ gtk_widget_set_sensitive(xsane_setup.preview_threshold_off_entry, sensitivity_val);
+ gtk_widget_set_sensitive(xsane_setup.preview_grayscale_scanmode_widget, sensitivity_mode);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_lineart_mode_callback(GtkWidget *widget, gpointer data)
+{
+ xsane_setup.lineart_mode = (int) data;
+ xsane_enhance_notebook_sensitivity(xsane_setup.lineart_mode);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_grayscale_mode_callback(GtkWidget *widget, gpointer data)
+{
+ if (xsane_setup.grayscale_scanmode)
+ {
+ free(xsane_setup.grayscale_scanmode);
+ xsane_setup.grayscale_scanmode = NULL;
+ }
+
+ xsane_setup.grayscale_scanmode = strdup( (char *) data);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_preview_pipette_range_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_setup_preview_pipette_range_callback\n");
+
+ xsane_setup.preview_pipette_range = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_setup_adf_mode_callback(GtkWidget *widget, gpointer data)
+{
+ if (xsane_setup.adf_scansource)
+ {
+ free(xsane_setup.adf_scansource);
+ xsane_setup.adf_scansource = NULL;
+ }
+
+ if (data)
+ {
+ xsane_setup.adf_scansource = strdup( (char *) data);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_enhance_notebook(GtkWidget *notebook)
+{
+ GtkWidget *setup_vbox, *vbox, *hbox, *button, *label, *text, *frame;
+ GtkWidget *lineart_mode_option_menu, *lineart_mode_menu, *lineart_mode_item;
+ GtkWidget *adf_option_menu, *adf_menu, *adf_item;
+ GtkWidget *gray_option_menu, *gray_menu, *gray_item;
+ GtkWidget *preview_pipette_range_option_menu, *preview_pipette_range_menu, *preview_pipette_range_item;
+ const SANE_Option_Descriptor *opt;
+ char buf[64];
+ int i, j, select = 1;
+
+ typedef struct lineart_mode_t
+ {
+ char *name;
+ int number;
+ } lineart_mode;
+
+#define LINEART_MODE_NUMBER 3
+ lineart_mode lineart_mode_strings[LINEART_MODE_NUMBER];
+
+ DBG(DBG_proc, "xsane_enhance_notebook\n");
+
+ /* enhancement options notebook page */
+
+ setup_vbox = gtk_vbox_new(FALSE, 5);
+
+ label = gtk_label_new(NOTEBOOK_ENHANCE_OPTIONS);
+ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), setup_vbox, label);
+ gtk_widget_show(setup_vbox);
+
+ frame = gtk_frame_new(0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(frame);
+
+ vbox = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(frame), vbox);
+ gtk_widget_show(vbox);
+
+ /* lineart modus menu */
+ lineart_mode_strings[0].name = MENU_ITEM_LINEART_MODE_STANDARD;
+ lineart_mode_strings[0].number = XSANE_LINEART_STANDARD;
+ lineart_mode_strings[1].name = MENU_ITEM_LINEART_MODE_XSANE;
+ lineart_mode_strings[1].number = XSANE_LINEART_XSANE;
+ lineart_mode_strings[2].name = MENU_ITEM_LINEART_MODE_GRAY;
+ lineart_mode_strings[2].number = XSANE_LINEART_GRAYSCALE;
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_LINEART_MODE);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ lineart_mode_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, lineart_mode_option_menu, DESC_LINEART_MODE);
+ gtk_box_pack_end(GTK_BOX(hbox), lineart_mode_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(lineart_mode_option_menu);
+ gtk_widget_show(hbox);
+
+ lineart_mode_menu = gtk_menu_new();
+
+ for (i=1; i <= LINEART_MODE_NUMBER; i++)
+ {
+ lineart_mode_item = gtk_menu_item_new_with_label(lineart_mode_strings[i-1].name);
+ gtk_container_add(GTK_CONTAINER(lineart_mode_menu), lineart_mode_item);
+ gtk_signal_connect(GTK_OBJECT(lineart_mode_item), "activate",
+ (GtkSignalFunc) xsane_setup_lineart_mode_callback, (void *) lineart_mode_strings[i-1].number);
+ gtk_widget_show(lineart_mode_item);
+ if (lineart_mode_strings[i-1].number == xsane.lineart_mode)
+ {
+ select = i-1;
+ }
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(lineart_mode_option_menu), lineart_mode_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(lineart_mode_option_menu), select);
+ xsane_setup.lineart_mode = xsane.lineart_mode;
+
+
+ /* threshold minimum value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_THRESHOLD_MIN);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", xsane.threshold_min);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_THRESHOLD_MIN);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_threshold_min_entry = text;
+
+
+ /* threshold maximum value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_THRESHOLD_MAX);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", xsane.threshold_max);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_THRESHOLD_MAX);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_threshold_max_entry = text;
+
+
+ /* threshold multiplier value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_THRESHOLD_MUL);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", xsane.threshold_mul);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_THRESHOLD_MUL);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_threshold_mul_entry = text;
+
+
+ /* threshold offset value: */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_SETUP_THRESHOLD_OFF);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ snprintf(buf, sizeof(buf), "%1.2f", xsane.threshold_off);
+ text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PREVIEW_THRESHOLD_OFF);
+ gtk_widget_set_usize(text, 80, 0);
+ gtk_entry_set_text(GTK_ENTRY(text), buf);
+ gtk_box_pack_end(GTK_BOX(hbox), text, FALSE, FALSE, 2);
+ gtk_widget_show(text);
+ xsane_setup.preview_threshold_off_entry = text;
+
+
+ /* grayscale scanmode name */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ label = gtk_label_new(TEXT_SETUP_GRAYSCALE_SCANMODE);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ if (xsane.grayscale_scanmode)
+ {
+ xsane_setup.grayscale_scanmode = strdup(xsane.grayscale_scanmode);
+ }
+ else
+ {
+ xsane_setup.grayscale_scanmode = NULL;
+ }
+
+ select = 0;
+ gray_menu = gtk_menu_new();
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.scanmode);
+ if (opt)
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_STRING_LIST:
+ {
+ char *set;
+ SANE_Status status;
+
+ /* use a "list-selection" widget */
+ set = malloc(opt->size);
+ status = xsane_control_option(xsane.dev, xsane.well_known.scanmode, SANE_ACTION_GET_VALUE, set, 0);
+
+ for (i=0; opt->constraint.string_list[i]; i++)
+ {
+ gray_item = gtk_menu_item_new_with_label(_BGT(opt->constraint.string_list[i]));
+ gtk_container_add(GTK_CONTAINER(gray_menu), gray_item);
+ gtk_signal_connect(GTK_OBJECT(gray_item), "activate", (GtkSignalFunc) xsane_setup_grayscale_mode_callback, (void *) opt->constraint.string_list[i]);
+ gtk_widget_show(gray_item);
+
+ if (xsane.grayscale_scanmode)
+ {
+ if (!strcmp(opt->constraint.string_list[i], xsane.grayscale_scanmode))
+ {
+ select = i;
+ }
+ }
+ }
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "grayscale_scanmode_selection: %s %d\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ }
+ }
+ }
+
+ gray_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, gray_option_menu, DESC_GRAYSCALE_SCANMODE);
+ gtk_box_pack_end(GTK_BOX(hbox), gray_option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(gray_option_menu), gray_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(gray_option_menu), select);
+ gtk_widget_show(hbox);
+
+ gtk_widget_show(gray_option_menu);
+ xsane_setup.preview_grayscale_scanmode_widget = gray_option_menu;
+
+
+ xsane_separator_new(vbox, 2);
+
+ /* autoenhance gamma */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_AUTOENHANCE_GAMMA);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_AUTOENHANCE_GAMMA);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.auto_enhance_gamma);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.auto_enhance_gamma_button = button;
+
+ /* autoselect scanarea */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_PRESELECT_SCANAREA);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_PRESELECT_SCANAREA);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.preselect_scanarea);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.preselect_scanarea_button = button;
+
+ /* autocorrect colors */
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_AUTOCORRECT_COLORS);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_AUTOCORRECT_COLORS);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), preferences.auto_correct_colors);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 2);
+ gtk_widget_show(button);
+ gtk_widget_show(hbox);
+ xsane_setup.auto_correct_colors_button = button;
+
+
+ /* preview pipette range */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_PREVIEW_PIPETTE_RANGE);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ preview_pipette_range_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, preview_pipette_range_option_menu, DESC_PREVIEW_PIPETTE_RANGE);
+ gtk_box_pack_end(GTK_BOX(hbox), preview_pipette_range_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(preview_pipette_range_option_menu);
+ gtk_widget_show(hbox);
+
+ preview_pipette_range_menu = gtk_menu_new();
+
+ j=1;
+ for (i=0; i<=3; i++)
+ {
+ snprintf(buf, sizeof(buf), "%d x %d pixel", j, j);
+ preview_pipette_range_item = gtk_menu_item_new_with_label(buf);
+ gtk_container_add(GTK_CONTAINER(preview_pipette_range_menu), preview_pipette_range_item);
+ gtk_signal_connect(GTK_OBJECT(preview_pipette_range_item), "activate",
+ (GtkSignalFunc) xsane_setup_preview_pipette_range_callback, (void *) j);
+ gtk_widget_show(preview_pipette_range_item);
+ if (preferences.preview_pipette_range == j)
+ {
+ select = i;
+ }
+ j+=2;
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(preview_pipette_range_option_menu), preview_pipette_range_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(preview_pipette_range_option_menu), select);
+ xsane_setup.preview_pipette_range = preferences.preview_pipette_range;
+
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* ADF modus menu */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+
+ label = gtk_label_new(TEXT_SETUP_ADF_MODE);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ if (xsane.adf_scansource)
+ {
+ xsane_setup.adf_scansource = strdup(xsane.adf_scansource);
+ }
+ else
+ {
+ xsane_setup.adf_scansource = NULL;
+ }
+
+ select = 0;
+ adf_menu = gtk_menu_new();
+
+ adf_item = gtk_menu_item_new_with_label(MENU_ITEM_SELECTION_NONE);
+ gtk_container_add(GTK_CONTAINER(adf_menu), adf_item);
+ gtk_signal_connect(GTK_OBJECT(adf_item), "activate", (GtkSignalFunc) xsane_setup_adf_mode_callback, NULL);
+ gtk_widget_show(adf_item);
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.scansource);
+ if (opt)
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_STRING_LIST:
+ {
+ char *set;
+ SANE_Status status;
+
+ /* use a "list-selection" widget */
+ set = malloc(opt->size);
+ status = xsane_control_option(xsane.dev, xsane.well_known.scansource, SANE_ACTION_GET_VALUE, set, 0);
+
+ for (i=0; opt->constraint.string_list[i]; i++)
+ {
+ adf_item = gtk_menu_item_new_with_label(_BGT(opt->constraint.string_list[i]));
+ gtk_container_add(GTK_CONTAINER(adf_menu), adf_item);
+ gtk_signal_connect(GTK_OBJECT(adf_item), "activate", (GtkSignalFunc) xsane_setup_adf_mode_callback, (void *) opt->constraint.string_list[i]);
+
+ gtk_widget_show(adf_item);
+
+ if (xsane.adf_scansource)
+ {
+ if (!strcmp(opt->constraint.string_list[i], xsane.adf_scansource))
+ {
+ select = i+1;
+ }
+ }
+ }
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "adf_scansource_selection: %s %d\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ }
+ }
+ }
+
+ adf_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, adf_option_menu, DESC_ADF_MODE);
+ gtk_box_pack_end(GTK_BOX(hbox), adf_option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(adf_option_menu), adf_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(adf_option_menu), select);
+ gtk_widget_show(hbox);
+
+ gtk_widget_show(adf_option_menu);
+
+
+ xsane_separator_new(vbox, 4);
+
+
+ /* apply button */
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_enhance_apply_changes, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ xsane_enhance_notebook_sensitivity(xsane_setup.lineart_mode);
+
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_setup_dialog(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *setup_dialog, *setup_vbox, *hbox, *button, *notebook;
+ char buf[64];
+
+ DBG(DBG_proc, "xsane_setup_dialog\n");
+
+ device_options_changed = 0;
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+ xsane_set_sensitivity(FALSE);
+
+ xsane.preview->calibration = 1; /* show monitor calibration image */
+
+ setup_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(setup_dialog), GTK_WIN_POS_MOUSE);
+
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_SETUP);
+ gtk_window_set_title(GTK_WINDOW(setup_dialog), buf);
+ gtk_signal_connect(GTK_OBJECT(setup_dialog), "destroy", (GtkSignalFunc) xsane_destroy_setup_dialog_callback, setup_dialog);
+ xsane_set_window_icon(setup_dialog, 0);
+
+ /* set the main vbox */
+ setup_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(setup_vbox), 0);
+ gtk_container_add(GTK_CONTAINER(setup_dialog), setup_vbox);
+ gtk_widget_show(setup_vbox);
+
+ notebook = gtk_notebook_new();
+ gtk_notebook_set_tab_pos(GTK_NOTEBOOK(notebook), GTK_POS_TOP);
+ gtk_box_pack_start(GTK_BOX(setup_vbox), notebook, FALSE, FALSE, 0);
+ gtk_widget_show(notebook);
+
+
+ xsane_saving_notebook(notebook);
+ xsane_image_notebook(notebook);
+ xsane_printer_notebook(notebook);
+ xsane_fax_notebook(notebook);
+#ifdef XSANE_ACTIVATE_MAIL
+ xsane_mail_notebook(notebook);
+#endif
+ xsane_ocr_notebook(notebook);
+ xsane_display_notebook(notebook);
+ xsane_enhance_notebook(notebook);
+
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(setup_vbox, 2);
+ gtk_box_pack_end(GTK_BOX(setup_vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+
+ button = gtk_button_new_with_label(BUTTON_OK);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_setup_options_ok_callback, setup_dialog);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_close_setup_dialog_callback, setup_dialog);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(setup_dialog);
+
+ xsane_update_gamma_curve(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-setup.h b/src/xsane-setup.h
new file mode 100644
index 0000000..efb17f9
--- /dev/null
+++ b/src/xsane-setup.h
@@ -0,0 +1,33 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-setup.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include <sane/sane.h>
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_new_printer(void);
+extern void xsane_update_int(GtkWidget *widget, int *val);
+extern void xsane_setup_dialog(GtkWidget *widget, gpointer data);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane-startimage.pnm b/src/xsane-startimage.pnm
new file mode 100644
index 0000000..4ccf5e7
--- /dev/null
+++ b/src/xsane-startimage.pnm
@@ -0,0 +1,332 @@
+P6
+# surface: 0 0 400 547 400 547
+# time: -1
+400 547
+255
+888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888999::::::;;;;;;::::::<<<======>>>>>>======<<<<<<<<<;;;:::::::::::9::9999999999888888998888999;;;>>>AAAFFFIIIKKKLLLKKKIIIGGGEEECCCBBBAAABBBCCCEEEIIIMMMPPPQQQPPPNNNLLLIIIFFFBBBBBB@@@???>>>===>>>>>>===;;;<<<;;;:::999999888777777888777888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúú÷÷÷ôôôñññïïïïïïïïïñññòòòôôôöööööö÷÷÷øøøúúúûûûüüüüüüþþþþþþþþþþþþÿÿÿÿÿÿþþþþþþÿÿÿÿÿÿþþþÿÿÿÿÿÿÿÿÿþþþýýýûûûùùù÷÷÷öööõõõöööõõõöööõõõôôôóóóóóóóóóôôôôôôõõõ÷÷÷ùùùùùùúúúûûûûûûûûûüüüüüüýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýüüüüüüûûûúúúúúúùùùúúúúúúûûûûûûüüüýýýýýýýýýýýýýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþýýýúúùööõööõùùùûûûüüüüüüüüüüüüýýýýýýþþþþþþþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþþþþþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüûûûûúúúúúúûûûûûûüüüüüüüüüüüüýýýþþþþþþþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüûûûúúúôôóììëìëêíìëîíìððïñññóóóôôôôôôóóóòòñðïîííìëéèèæäåãáãáßßÞÚÒÐÈÍÊÂÒÑÊÙ×ÒÛÚÕÝÛ×ÝÜØÜÛØÜÛ×ÛÚÖÜÚÖßÞÚãâßçæäëëéðïîòòñöööûûûüüüýýýýýýýýýýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüüüüûûûúúúúúúûûûûûûüüüýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüüûûûúúúööõèçåÞÝÚÚÙÕ×ÖÑÎÍÅÈÅ»ÈƼÊǾÌÉÂÐÍÈÔÒÍ×ÖÒÚØÕÛÙÕÙØÓ×ÕÎÒÐÇÎËÀÉƺųÿ°Á½­¿»©Àº¢Àº£À»§À¼©À»©¿º¨½¸¨»¶¦¹´£·²Ÿµ°µ¯œ¶±Ÿ¸³¢»·§Á½°Çù×ÕÏäãàéèæíìêïïîóòñõõôùøøûûûüüüüüüüüüüüüüüüüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúùøø÷øø÷ðïîçæãåäáåäáåäâæåãçæäçæãääáßßÛÙØÓÓÒÌÎÍÇÊÈÂÅĽÁ¿¶º·©¹µ¤ºµ¤ºµ£»µ¢¾¸¢¾¹£¼¶£º´¡·± µ°ž³®œ³®œµ°œ¶±œº³¾·žÂ»ŸÄ½ Æ¿ Ç¿ È¿ ÉÀ ÍÅ£ÑȦÎÆ¥ÌĤÌÄ¥ÍĦÍŦÍŧÎŦÍÅ¥ÌÄ£ÉÀŸÄºš½´•¹°’·¯“·°–¹³Ÿ¾¹«ÄÀ´ÊƽÏÌÄ×ÕÎàßÚìëéðïîññðòòñóóòôôóõõô÷÷öùùùúúúûûûûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþþþþþþþþþþþþþþþýûûúø÷÷õõóôôòóóñòñïðïíííêéèåÙ×ÑÐÎÆÌÊÂÊǾÁ¾°½¸¨½¸§½¸§½¸¦¼·¥º¶£¸³ ·²·±›·±™¸±™¹²™º´š»µš¾·›Ä¼žÌĤÑɨÒÊ©ÑÉ©ÑÉ©ÐȨÏȧÎǧÍŤËáËáÏÇ¥ÒÉ¥ÒɤǪ̃ÙϬÚѬØΪØΩÙЫÚÑ«ÛѬÝÔ°ßÖ²ßÕ²ßÖ³ßÖ´ßÖ³ßÖ³ÞÕ²ÚÑ­×ΩÔÊ¥ÏÅ ÍÞÌœɿ™Äº–¸•À¶”¼³•º²•¹±–¹±˜¹²™¼¶¡ÈôÌÉ»ÎË¿ÐÌÁÏÌÂÐÍÃÒÎÅÖÓÌÛÙÓßÞÙãâÞææâëêèññðôóóõõôùùùüüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýýýýýýýýúúúõõôóòññðððïïïîîîîìíìëëêèéèæäãßÖÔÍÎËÂÉÆ»ÆöÃÀ³Á½¯¾»«½¹©º¶¥¶±š¶°˜·°—¸±—¼µ˜ÂºœÃ»Ã¼žÃ¼žÃ¼Ã¼Ä¼œÆ½È¿žÌáÐÈ¥Ô˨Öͪ×ϬÙЬÙЫÚЫÛÒ®ÝÔ°ÜÔ°ÜÓ®ÜÔ¯ÞÕ±ÞÕ±ÝÔ¯ÚÒ¬ÚЫÛѬÚЫÙÏ©ÜÓ­ÞÕ±ÞÕ±ÝÔ®ÛѬÚЪÜÒ­ßÖ²àØ´áÙ¶ãÚ¹åݽäÛ»à×µàصÞÕ²ÙϪ×ͨ×ͧÓÊ£ÒÉ¢ÒÈ¡ÎĜ͛ÎÃœËÁšÄ¹“¿´¼²Ž¼±Ž»±»±Ž»²’¼³•º²•¸°”¸°”¸°•¸±˜º³œ½·¢À»¨Á¼ªÂ½¬ÈĵÑÏÄÔÑÇÙÖÎèåàðïíóóñ÷÷öûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýýýýýýýýýýýýýýýýýýýýýýýüüüõõõîîíëêèéèæçæäåãáÛÙÔÒÏÈÎËÃÊƽÇĻƸÃÀµÁ½²¾º­º¶©¸²£¶°›µ®—¶®”¶­“¶®“·¯’¸°’¹±’»³’Á¸–ǽ™ÈÀ›ËžÏÆ£ÕÌ©ØЭÚÒ°ÚÒ°ØЭØЭÚÑ®ÚÑ®ÙЭÛÒ®ÞÖ²ßÖ³ßÖ²ÞÖ²ÞÕ±ÛÒ®ÚѬÛÒ­ÜÓ°ÜÔ¯ÝÔ°à׳áÙµàصàØ´ÝÔ°ÚÑ«ÚЪÚЪØϪÝÓ®ßÖ±ßÖ±ßÖ±ÞÔ¯ÚЪÜÓ­ßײÞÖ±áضæÞ½çß¿åݼâÙ¶ÞÕ²ÚÒ­ÙЫÛÒ­ÜÓ­×ϪÔˤÒÇ ÎÃœÏÄžÐÆžËÀ™Åº’¶ÀµŽ¿´¿³Á¶Â¸‘¿´Ž½±‹¼±Œ½±Œ»°Š¹®‰º°Œ»²»²»±º±Ž»²‘»³—º²—º³šÄ¿­ÎɼÒÎÃãáÛëêæñðî÷÷õùùùûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýûûûúúúúúúúúùöööððïííëëëéêéèééçééçèèçèèæççäääâÞÝÙÎÌÄÆùÿ³Á¼°À»®¾¹ª¼·¥¼¶¡»µ ¼¶Ÿ¼¶ž¾·ž¿¸¿¹À¹œÁ¸œÁ¸šÄ¼šÈ¾›È¾›É¾›É¿›ËÁœÌÁœÌÂœÎÄžÑÇ¢ÔÊ¥×ΨÛÒ®ß×µàØ·áÙ·áØ·áضß׳ß׳ß׳à×´áÙ·ãÛºåܼãÛ¸áصÞÖ²ÝÔ°ÛÒ®ÛÒ­ÜÓ¯ÝÔ¯ØͨÙϪãÚ¹æÞ½åݽæÞ¼áضÜÓ¯ÝÔ¯ÛÒ­ØÏ©ÚѬÛÓ®ÚÑ«ÛÒ­ÛÒ­ÙÏ©ÜÓ­áسàØ´áÙ¶ãÛ¹äܺåݼåݼß×´ÙѬÚÒ¬ÝÔ¯ÝÔ¯ØΨÕË¥ÓÉ¢ÑÆžÏĜ͛ʿ˜Ê¾–ËÀšÊ¿˜Åº“¿´½²‹¾²Œ½²‹ÀµÄ¹‘ø‘ÁµŽÁµÄ¸‘Ź’ø‘Ź‘Æ»“Æ»”Á¸’¾´½³Žº±¹¯‘¸¯’À¹¥Ä¿¬Ï˾ØÖÌÞÝÕæåàïîëöõõøøøùùùúúúûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþýüüüüüüüüüüüüüüüûûûûûûúúúöööïïíìëèééåæåáâàÜØ×ÏÏÍÂËȼÇÄ·ÄÀ²Á½®¾ºª»·©¹µ§·³¤¶²¢¶² ¼· À»¡Á»¡Â»¡Ã»¡Ã»¡Å½¢Ê¤ÎƦÑɧÓʧÓʦÔ˦Õ̧ÖΩÖΨÓʤÒÈ¢ÒÇ¡ÑÇ¡ÓÉ¢Ö̦×ͧÕË¥ÔË¥Ö̦ØÏ©ÚÑ«ÛÒ­ÞÕ±ãÜ»æÞ¿åÞ½âÚ¸âÙµáÙ´àسß׳âÙ¶æÞ½èàÁæß¾åܺáØ´ÛÓ®ÙϪØÏ©ÙЪÛÓ­ÝÔ¯ØΩØΪàضäܼæÞ¾æÞ¾äÜ»áÚ¸áÙ¶ÝÔ¯ØΨ×Ψ×ΧÔˤÖͦÙЪÛÒ¬ÞÕ°âÙ´âÙµäÛ¸äܺáضß׳ßÖ´ÜÓ¯ÙÑ«ÚѬÛÒ­ÛÒ«ÖˤÕÊ£Ö̤ÖÌ¥ÓÈ¡ÎÛ˿˜ÌÀ˜ÏÄÐÅÌÁ™Å¹’Á¶ÀµÀ´Ä¸‘ɾ–Ƚ•Æ»“ź’Æ»“Ç»“ȼ”ʾ–ÌÁ™ÎÄœÎÄÎÃœÌÁšÈ¼”Á¶¿´½²Ž¹¯º°’¹°•¹±—»´Ä¿­ÏË¿ÔÐÆÙÖÍÜÛÔëêçïïíòòðöööûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüúúúúúùùùùôóòòòñòòðññïððîïîíííëëëéééæßÝØÑÏÅÌɽȟųÿ°Á¼ªÀ»¤Á»¢Áº Ã» Å½¡ÈÀ£ÊæÌŨÍƨÎÇ©ÐÉ©ÓÌ«ÖϬ×Ï­×ϬÖΪÖͪ×ΫØЭÛÒ­ÜÓ®ÜÒ­ÙÏ©Ö̦×̦ØÏ©ØϪ×Ï©Ö̧ÕË¥ÔË¥ÔʤÔÊ£Ö̦ØÏ©ØÏ©ØΨÙЩÝÔ¯ÜÓ®ÝÔ¯ãÛ»æß¿æÞ¾ãÛ¹âÚ¶áÙµÞÖ±ÞÖ±âÙ¶æÞ½çßÀäܹâÙµßÕ±ØͨÓÉ¢ÒÇ ÔʤØÏ©ÛÒ­ÝÔ¯ÝÔ¯ÜÓ¯ßÖ²ãÚ·ãÛ¸åÝ»æÞ½ãÛ¸ÞÕ¯ØϨÖÌ¥ÓÉ¢ÑÆžÓÉ¢ÙÏ©ßÖ±áØ´âÙµâÙµåܺåÞ½ß×´×ΩÔʤÔʤÖ̦×Ψ×ͧÕˤÒÇŸÓÈ¡×ͦÛÑ«ÙÏ©ÒÈ¡ÍÁšÊ¾—ËÀ˜ÍšÎÛÍšËÀ˜É¾–Ǽ”Ç»”ɽ•Ê¿—ËÀ˜ËÀ˜È¼•Ç»“ËÀ˜ÍÁ™ÍšÏÄÐÅžÐÅžÏÄœËÀ˜Ç¼”Ǽ”Ç»”ĸ’·‘¿µ½²Ž»±º±¹°“·¯“·¯•·¯—ÄÀ°ÉÅ·ÏÌÀÜÛÓæåâíìêõôóúúùüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûöööîíêêêçééæèçäÛÙÓ×ÕÏÓÒËÐÎÆÍÌÂÌÊÀÊǼÇ÷ÄÀ²À»©Á»£Æ¿¥ÈÁ¦ÉçÊæËÄ¥ÍÆ¥ÑɦÓ˪×ϯÜÔ³ÞÖ¶ß׶ß×µß×µÞÖ³ÜÔ°ÛÓ®ÛÓ®ÛÒ­ÚÒ­ÙЫÙϪÛÒ¬ÝÔ°ÜÓ­ÚЫÚÑ«ÛÑ«ÚѬÚЫÙÏ©ÙЪÜÓ®ØΨÔÊ£ÕË¥ÕˤÔÉ£ÓÉ¢Ö̦ÙѬÛÒ­ÜÓ®ÜÓ¯ÚѬÙЪÝÔ°ßÖ´áÙ·åÝ»åÝ»ãÚ¶àسà׳âÙµäÛ¹åܺâÙµÞÕ°ÙÏ©ÑÆžÌÁšÍÁšÒÈ ØΨÚѬÜÓ¯ÞÖ³âÙ¸âÚ·âÙµâÙµà×´ß׳áØ´àײÜÓ­ÖÌ¥ÏÅÍšÑÆŸØΨàײâÙµâÙµâÙµáÙ¶ß×µÚÒ­ÔÊ£ÐÅžÐÆžÏÅžÌÁ›ÎÃÑÆŸÐÅÒÈ ÕˤÖÌ¥ÓÈ¡ÎÜ͚ÎÛÐÅÐÅÏÄœÎÛʿ—Ç»“ȼ”ȼ”Ç»“øƻ“ÍšÎÜ͚ËÀ˜Ë¿—Ë¿˜ÍšÎÃœÐÅžÐÅžÎÄ̛͚ÌÁ™Ê¾—ʾ—ʾ—ƺ“Ź‘÷‘¿³Ž»¯‹¸­‰·¬ˆµ«Š²©Š²ªµ®–º´ŸÁ½«ÓÐÆáßÙêéåóóñùùùûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýøø÷ïîìååàÛÙÒÐÍÂÌɼÉŹÅÁ³¿»©¿¹¤¿¹£¿º¢¿º¢Àº¢Â¼¢Å½¢ÉÁ£ÎƦ×έßÖµàÙ·ß×´ÝÔ°ÜÒ­ÞÕ±àØ´àײâÙµäÛºäÜ»âÚ¸àØ´âÚ·áÙ¶ÝÕ±ÛÒ­ÚÑ«ÙЪÙЫÙÑ«ÙϪÜÓ­ÞÖ±ÚÑ«ÖͧÖ̧ÚÑ«ßÖ±ßÖ²ÝÔ®ÛÒ¬ÜÓ­×̦ÑÆŸÑÆ ÓÈ¡ÓÉ¡ÒÈ ÖË¥ÛÓ®ÞÕ±ÝÔ¯ØÏ©ÖͦÖ̦ØΧØÏ©ÛÓ®äÜ»åÝ»àØ´ßÖ±àײáØ´âÙµâÙ´ßײÚЫÓÉ¢ÍÁšËÀ˜ÎÛÓÈ¡×ͧØϪÙЫÝÕ±åܼâÚ¸ßÕ°ÜÓ­ÙЩØΨÜÒ­ÞÔ®ÛÑ«ÔÉ£ÎÛÎÛÒÈ¡ØΨÜÒ¬ÞÔ®ÞÔ¯ÝÓ­ÙϪÖͧØϨÖË¥ÑŞΛ˿˜Ç¼”Ê¿—ÎÛΚÐÅžÒÈ ÏĜɾ–ƺ“Ê¿—ÑÆŸÔÊ£ÓÉ¡ÑÆŸÎÜȼ”¶ŽÃ·Å¹‘ƺ“·ƻ“ÏÄœÒÈ¡ÐŞʾ—ȼ”ȼ”ËÀ˜ÍšÏÄœÒÈ ÓÈ ÑÆŸÐÅÏÅžÏÅÏÄÎÜʿ—ƺ’÷¿³Œ¼°Š½±Š¾³Œ¾²‹º¯ˆ¹®‡·­‡·¬‡µ«ˆµ¬¸±šÂ¼ªÔÐÅâàÙëêæôóñøø÷üüüýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýüüüûûûùùùööõíìêßÝØÑÎÄÊǹÄÀ­Â½¨Ã½¥Æ¿¥ÉÁ¥ÍŧÔˬØϯÙѱÛÓ´ÝÔ´ÞÕ²ÝÕ²ß×´áصâÙ·áضà×´áصáØ´àسãÛ¹äÜ»âÙ¶âÙµâÚ·âÙ·ß׳ÞÖ²äÜ»åݼàصÝÔ°ÚÒ­ÚÑ­ØЪØΨØЪÝÔ¯àײÜÔ¯ÖͧÓÈ¢ÕË¥ÛÒ¬à׳áØ´ßÕ°ÙЪÔÊ¢ÏĜ˿—ÌÁ™ÐÅÒÈ¡ØΨÝÔ¯ÜÔ¯×Ï©ÓÉ¡ÓÉ¡Õˤ×Ω×ΨØΨÝÔ°ÞÖ²ÛÓ®ÚЫÜÓ­áسáØ´ßײÛÒ­ÖÌ¥ÑÆŸÏÄœÑÆŸÓÉ¢ÕˤÖÌ¥×ͦ×ͦÙЫÞÕ±ÜÒ­×ͦÔÉ¢ÔÊ£ÖÌ¥×̦ÕˤÒÇ ÐÅžÑÆžÓÉ¢Ö̦ÖͧÔÉ¢Õˤ×ͦÓÉ¡ÏÃœÎÃœØΨÙÏ©ÐÅžÌÀ˜Ê¾–ÌÁ™ÎÛΚʾ–ÌÀ˜ÎÛËÀ˜Ä¸‘À´Ç¼”ÑÆžÔÊ£ÕË£ÔÉ¢ÏÅɽ•Áµ¼°‰¿³ŒÆº’ɾ–ÎÛÒÇ ÑǟΚɽ–ȼ”ɾ–ÌÀ˜ÎÛÐÅÒÇ ÒÇ ÏÄœÌÁšÎÄÕË¥ÕË¥ÑÇ ÍÛɽ–Ź’ÀµŽÂ¶Ä¹‘Ĺ‘¶¶ŽÁµŽÀµŽÀµŽ¾²Œ¹®‰¶«‡´«‰¸°”½¶ ÇÁ°ÕÑÅáßØíìéñðîõôòùøøûûúüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþýýýúúúóóòîíìéèæäãàÞÜÖÑÎÄDz½¨Ä¾¥ÈÁ¥ÍŧÑʪØЯÜÓ±à×µâÙ·âÙ·âÙ·âÚ¹ãÛºäÜ»ãÛºäÜ»åÝ»äÛ¸áصàصäܺåݺâÙ¶áضàØ·áÙµäÛ¸åÜ»âÙ¶ÞÔ°ÜÓ®äܼçß¿âÙ·ÝÕ±ÜÓ¯ÝÕ°ÛÒ­×ΨÓÉ¢ÙÏ©àײßײÚЫÕˤÖͦÛÓ­áسâÙµáسÝÓ®ÖË¥ÎÛǻ“Ç»“ÌÀ˜ÐÅÔÊ£Ö̦ÕÌ¥ÓÉ¢ÐÅÏÄœÐÅÒÉ¢ÑÇ ÐÅžÒÇ¡ÖË¥ØÏ©ÛÒ¬ÞÕ°áسÞÕ°ÚЫÕË¥ÓÉ¢ÒÈ ÐÆžÓÉ¢ÖͧÔÊ£ÔÉ¢ÖˤÖÌ¥ÕË¥ÔÉ£ÓÈ¢ÒÈ ÓÈ¡ÕÊ£ÕË£ÓÉ¡ÏÄÍšÐÅžÓÈ¡ÒÈ ÑÇ ÐÅŸÐÅÒÈ ÔÊ£ÐŞʿ—Ƚ•ÓÉ¢×̦ÐÅË¿—ʾ–ÎÛÏÄœÌÁ™Ã·Ç»“ÍšÍÁ™Ç¼”øǼ”ΚÑÇŸÕÊ£ÕË£ÓÈ¡ÎÛź’¹­†¹­†À´ŒÇ»”ÌÁšÍ›ÌÁšÊ¿—Ƚ•È¼”Ƚ•Ê¿—ËÀ˜ÌÀ™ÍšÎÛÏÄœÏÄÔÊ£ÚѬØΨÓÉ¢ÐÅÎÛËÀ™Æ»“ɽ•ÌÁšÉ¾–Ǽ”Ƚ•È¼”Ź’øÁ¶ŽÀ´¿³Œ½²‹»°Š·­‰·­¹°”Á¹£ÉòÍȺÔÐÄãáÚéèãîíéôóòúùùüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýüüüûúúøùù÷ø÷÷öööòòñæåâÜÚÔÔÒÉÎÊ¿ÈĶĿ®Â»¤Â¼¡Ê¤ÔÌ«ÜÔ³ÞÖµÞÖ³ß×´áضäÜ»åݼãÛ¹áضà×µãÛ¹æß¿çàÂèàÁçÞ¿äÛ¸âÙµãÚ·æÞ½æÞ½áØ´ÝÔ¯ÝÔ¯áØ´äÛ¹åÜ»âÙ¶ÝÔ¯ÛÑ­ãÛºçß¿äÛºàصÞÖ²ÞÕ±ÜÓ®ÖͧÍ›ÔÈ¢ÞÕ°áسÞÕ°ÙЪÙЫÜÓ®ÞÕ°ÝÔ°ÝÓ®ÜÒ­Ö̦ÏÜȼ•Æ»“ɽ•ÍšÐÅÏÄÍšʿ—ɽ–Ƚ•Ê¾—ÏÄœÎÛʾ—Ǽ”Ê¿—ÐÆŸØϨÞÔ¯ÞÕ°ÚÑ«ÕˤÑÇŸÒÇ ÓÉ¢ÒÇŸÓÉ¢ÔË¥ÐÆŸÐÅÒÈ¡ÔÊ¢ÑÆŸËÀ˜ÌÀ˜ÏÄœÔÊ¢ÕË£ÓÉ¢ÐÅÌÁ™ÌÀ˜ÐÅžÒÇ ÎÛʿ—ɽ–ÎÛÑÆŸÒÇ ÐÄɾ–Æ»“ÐÅžÔÊ£ÑÆŸÏĜ͚ÌÁ™Íšɾ–¼±ŠÁ¶ÌÁ™ÐÅžÎÄœËÀ˜Ë¿˜ÍÁ™ÏÄœÐÆžÑÇŸÐÆŸÎÜȽ•¼°‰¸­†¼±‰Ã·É½•É¾–Ç»”Ź‘÷Ź‘Ç»“Ê¿—Ë¿—ʾ–ȼ”Ƚ•ËÀ˜ÑÆžÙϨÞÕ°ÛÑ«ÕʤÒÇŸÑÇŸÑÆžÍÁšÏÃœÑÆŸÌÁ™Ê¿—͚͚ɽ–Ź‘Ź‘Ź’Ĺ’Ĺ‘÷¿³Œ½²‹¼°Šº¯‹¸®·­Ž¶®‘½·Ÿ¿º¦Ã¾¬ÒÏÃâáÛìëèõôóùøøüûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûööõññïðïíðïììëèåãÞãâÝàÞÙÜÚÔÕÒÉÈĶþªÃ½¥Ä½£Å¾¢ÈÀ¢ÍÅ¥ÔÌ«ÛÓ±ß×µâÚ¹åÞ¿äݽâÚ·âÙ·ãÚ¸äÛ¹ãÚ¸âÚ¶áÙ¶ãÚ¸åÜ»èáÃçß¿äÛ¸ãÚ¶âÙµâÙµãÚ¶àØ´ÜÔ¯ÚÒ­ÛÓ®ßÖ²ÝÔ¯ÜÓ­ßÖ±ÞÕ°ÛÓ®à×´åÝ»çàÀçàÁãÛºÚѬØΧÔÊ£ÌÀ™ÐÅØΨßÖ°à׳ßÖ±ÜÓ®ÙЫ×ΧÒÇ ÏÄœÑÆŸÐÅžÎÃœÏÅÍšʾ—ÍÁ™ÏÄœÌÁ™Ä¸‘»¯ˆ¸­†¿³ŒÉ½–ÑÆŸÑÆŸÌÁ™Àµ¼°‰¿³Ê¿˜ÔÉ¢ÖÌ¥×̦ÔÊ£ÐÅžÐÅžÑÇŸÓÉ¢ÐÆžÌÁ™É¾–ʾ–ËÀ˜ÎÛÎÛʾ—ɾ–ÌÁ™ÓÉ¢ÓÈ¡ÏĜ˿˜Ë¿—ÍšÏĜ͚ɽ•Ä¸Ä¹‘Ë¿—ËÀ˜ËÀ˜Íš˿—ɽ–ÐÅžÕÊ£ÕˤÙÏ©Õʥȼ•Ç»“Ĺ’µ«†»°ŠÉ¾—ÓÉ£Õ̦ÓÉ¢ÒÈ¡ÒÇŸÏĜɾ–Ź‘Ĺ‘øĸƻ“ĸ‘ÁµŽÆº’ʾ–ʾ–¶¹­†·«„»¯ˆÄ¸‘ÎÄœÐÅžÌÁ™Å¹‘¿³‹¿³ŒÈ½•ÕˤÝÓ®ÚÑ«ÖÌ¥ÔÉ¢ÐÅžÎÛÑÆŸÒÇ ÏÅÊ¿˜Ë¿—ÎÛÏÄœÌÁ™É¾–ɾ–ʾ–ʾ–ɽ•Å¹’ÁµŽÁµÄ¸Å¹‘À´Œº®‡µª„²¨„¯¥‚¬£®¦ˆ´­”¿º¦ÍʽÙÖÎêéæóòðõõó÷ööøøøúúúüüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûööõïïìèèãàßØÚØÏØÖÍ×ÔËÓÐÅÌȺÈĵÅÁ°Ä¾«Â½§Ä½£ËäÏÆ¥ÔË©ØÏ­ÙÑ®ÞÖ´âÚ¹âÛ¹ãÛ¹åݼçßÀæß¿äÜ»áضáÙ¶åݼåݼæÞ¼æÞ¾æÞ¾çàÀéâÄäÜ»ßÕ±à׳âÙµáØ´ÞÕ°ÛѬÙЪØÏ©ØÏ©ØÏ©×ͧ×ͧÛÑ«ÛÒ­ÛÒ­ÜÓ­ÞÕ±áضäÜ»âÙ·ÙÏ©ÖÌ¥ÓÉ¢ÌÀ˜ÏÄœÖÌ¥ÚЫÜÓ­ÜÒ­ÚÑ«×ΨÕˤÎÛɾ–Ê¿—ȼ•Æº“ʾ—ËÀ™ÌÁ™ÎÛÌÁ™Ç»“¾³‹¶ªƒ³§»¯ˆÅ¹‘Ë¿˜ÏÄœÎÛ¿´Œ´¨‚³¨‚ÁµŽËÀ˜ÍšÒÇŸÔÊ¢ÑÆžÐÆžÒÈ ÒÈ ÎÛȽ•Å¹‘Ç»“Ê¿—ÌÀ˜ÍšÐÅžÐÅžÐÅžÓÉ¢ÎÛƻ“Ç»”ɾ–Ë¿—ɾ–ź’ÁµŽ¾²Š½±ŠÀ´Â¶Ä¹‘Ç»“ȼ”Ƚ•Ê¿—ÍšÐÅž×ͧÕˤɽ–ȼ”Æ»“·­‡»°ŠÈ½•ÑÇ ÔÊ£ÒÈ¡ÑÆžÏÄÎÛɽ•Ã·À´¾²‹¾²ŠÂ¶Ä¸Å¹‘ɽ•É½•Ã¸½±Šµªƒ±¦·¬†Á¶ŽÉ¾—ÏÄœÎÜ÷¸­†¶«…¿´ÌÁšÓÉ£ÖË¥ÕˤÓÉ¢ÔÉ¢ÔÊ£ÓÈ¡ÑÆŸÎÛȼ”ʾ–ÐÅÎÛÍ›ÐÆŸÑÇŸÑÇ ÐÅžÌÁšÇ¼”ĸ÷ĸ÷¾²‹¸­†´ª„²¨ƒ°¦±¥€°¥€­¢­¤ƒ°¨Œ¶°™ÇóÐÍÀÕÒÇÛØÐâàÚíìéòñð÷÷÷ûûûýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüøø÷ôôòääÞÞÝÕÕÔÉÏÍÀËȸÉŲÇ®ÿ«Â¼¦Áº£Ä½¢Ê¤ÍÅ¥ÑÉ©ÖÍ«ÖÍ©ÖͨÜÒ®à׳à×´âÚ¸åݽæÞ¿æÞ¾åݼäÜ»åݼäÜ»ß׳àصçßÀéáÃéâÃéáÃéáÂéáÂèáÂâÙ·ÜÓ®àسâÙ¶ßÖ±ÚЪÕÌ¥ÕˤÓÊ£ÒÈ¡ÑÆŸÒÇ ÓÉ¢ÔÊ£ÖͧØϪ×Χ×̦ÙϨÞÔ°ÞÕ±ÚЪ×ΧÔʤÎÛÐÅžÕÊ£ÔÊ£ÔÊ£ÕˤÕÊ£ÔʤÔÊ£ÎÛȼ”ƺ’Áµ¼°‰¿³‹Ä¹‘Ê¿—ÌÀ™Ç¼”¶Ž½±Š¹­†¶ª„º®‡¿³‹ÁµÇ¼”ÊÀ™Àµµ©ƒ±¦½±‹Å¹‘Ź‘Ê¿˜ÐÅžÐÅÐÅÐÅžÐÅÌÀ™Æº’÷ź’ËÀ˜ÌÀ™ÎÃœÔʤÔÊ£ÒÈ¡ÒÈ¡Ê¿˜Â·Ç»”ʾ–ȼ”÷¾²Š»¯ˆ¹­†·«„¶ª„º®‡¿³‹ÁµÄ¸Æ»“Ź‘ƺ’ʾ–ÑÆŸÒÈ¡ÌšÌÁšÊ¿˜ÀµŽÂ·È½•Ê¿˜ÌÁšÍšËÀ˜ËÀ˜Íšʾ–ĸÀ´Œ¼°ˆ¹­†¹­†¾²‹Å¹‘Ƚ•Ä¸‘½±Šº®‡·¬…³©„¸­‡¾³‹¿´ŒÆ»”ÊÀ™ÁµŽ·¬†´ª…¼±‹Ä¹‘ɽ•Í›ÐÆžÑÆžÕˤØΨÒÈ ÏÄœÌÁ™Æº’ɾ–ÑÆŸÏÄœÏÄÖ̦ØΨÖͧÔÊ£ÐÅžËÀ˜Ë¿˜È½•Ä¸À´Œ¼°ˆ¸¬…¶«…µª„²¦²§³¨‚²§±¥€°¥®¤°§ˆ²©´¬‘¶¯•»µŸÆ²ÒÏÅçåáñðî÷ööûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüùùøôôòêéæÞÝ×ÙØÏÔÒÇËÈ·ÊÆ´ÉįÉëÉèɧÉÂ¥ÎǧÒʪÕÌ«ÖÍ«ÙЭÛÓ¯ÝÕ±ÞÕ°ÝÔ¯ÜÓ¯ßÖ²áØ´áØ´ßÖ²ß×´æÞ¿âÚ¹ßÖ³äÜ»ãÚ¹ÝÔ°ÛÒ­ÞÕ²äÛ¹èàÁèáÃåݼäܺäܺäܹâÙµàØ´äÜ»âÙ·ÚЪÔÉ¢ÑÆžÏÅÊ¿˜É½–͚͚ÌÁ™ÍÁ™ÑÆŸÕˤÓÉ¡ÓÉ¡Ö̦ÚÑ«ÝÔ¯ÞÔ¯ÛÒ­ØЪÖͧÕË¥ÓÉ¡ËÀ™ËÀ˜ÏÄœÎÛÏÄÓÈ¡ÎÛƺ’¿³Œ½±Š¼°ˆ·«„»¯ˆÁµŽÀµ¿³ŒÀµÂ¶ŽÃ·ÁµŽ¾²‹»¯ˆº®‡»¯ˆ¼°ŠÁµŽÁµŽ¿³ŒÀ´Â¶ŽÁµÁµŽÄ¹’ËÀ˜Ç¼•Ã¸‘Ë¿˜É¾–øÁµÃ¸É¾–ÏÄœÐŞ͛ÌÁšÌÁ™ÌÁ™ÍšÎÃœÐÆžÎÛǻ”¿³Œ»¯ˆ¼°ˆ·«„µ©‚º®†»¯‡»¯ˆ¿³ŒÄ¸Ç»“Ç»“Ç»“ɽ–ΛÒÈ ÔʤÒÇ¡ÏÄœÎÃœÍÛʾ—¿´À´ŽÈ½•É½•Ë¿—ÍÁ™È¼”Áµ¼°‰¹­†·«„´¨‚¹­†¾³‹¼°‰»¯ˆ½±Š¾²Š¿³‹¿´½²‹º®‡¶«„·¬…»°ŠÁµŽÁ¶ÀµÃ¸Å¹‘÷¶Ĺ’ÌÁ™ÌÁšËÀ™Í›Íšʾ–Ç»“ʾ–ÏÅÒÇ ÔÉ¢ÖÌ¥ÔÊ£ÓÉ¡ÕˤÔÊ£ÔÉ¢×ͧÓɣʿ˜À´¼°‰½²Šº¯ˆ¸¬†·«…µ©‚³¨‚µª„·«…·«…µ©ƒ²¨‚±¦‚±§±¦‚±¦ƒ±§‡´­’þ¬ÒÎÃÜÚÓëêç÷öõûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýùùùññðäãßÚÙÒÒÐÅÍʼËƵËƲÊÆ°ÌÆ­ÎȬÏÈ«ÑʪÔÌ«×Ï®ÚÒ°ßÖ³ßÖ³ß×´ßÖ²ÞÔ°ÝÕ±ßÖ²ÞÖ²ÝÔ¯ÜÓ®ßÖ±ãÛ¸åݼáصÞÖ±äܺß×´ÛÒ®ãÛ¹âÙ·ÜÓ®ÚÒ­ÜÓ¯ß׳äܺäܺßÖ±ÞÕ°ßײáØ´àײÞÔ°ÞÕ²ÚÑ­ÓÉ¢ÍÁšÉ½•È½•Åº’ƺ’ʾ–Ƚ•Ç»“ÌÁ™ÑÇŸÕÊ£ÓÉ¡ÔÊ£×ΨÙÑ«ÛÒ­ÜÓ­ÙϪ×ͧØΨÔʤÐÅžËÀ™ÌÀ™ÎÛÍÁ™ÎÛÑÆŸÍšǻ”·¿³Œº®‡±§´©ƒ»¯ˆ¼°ˆ¿´ŒÄ¹‘ź’ĸ¶ŽÀ´Œ¾²‹¼°ˆ¹­†¹­‡À´À´»¯‰½±ŠÃ·Ç»”ø¶Ƚ•Â¶½±ŠÇ»”Ƚ•Ä¸ÁµÃ·È¼•ÏÃœÏĜȼ”ȼ”Ë¿—ËÀ˜Í›ÏÄÎÛËÀ˜Æº“¼°‰·«…»¯‡·«„·«„½±Š¼°ˆº®‡ÁµÇ»“Ê¿—Ë¿—ÌÁ™ÎÛÐÅžÔÊ¢ÖͧÓÉ¢ÑÆžÔÊ£ÑÇŸÊ¿˜Â¶Ã·É¾–Ë¿—ÌÁ™Íšǻ“À´Œ¾²‹»¯ˆ·«„±¦€²§‚¶«…·¬…¼°ˆÁµŽÁµÀ´ŒÁµÀ´Œ½±Š¸¬…·«„¹­†ÁµÁ¶¾³Á¶Æº’ȼ•Åº’Ź’ɾ–ƺ’ĸ‘Í›ÏÄœËÀ˜É½•Ë¿—ÏÄœÓÉ¡ÕË£ÓÉ¡ÑÆŸÑÆžÔÊ£ÕÊ£ÔÊ¢ÖË¥Ôɣ͚ÁµŽ»¯ˆ¾²‹½±Š¼°‰¼°‰¹­†¶ªƒ»¯‡¾²‹¿³Œ½±Š»¯ˆº¯ˆ¼±Š½±‹»¯ˆ¹®‡¶ª†´ª‰µ­’¼µžÌȺàÞ×êéåñðîøø÷üüûþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúïïîãâßÔÓËËǺÊƵÎȳÐʳÔγÕϳÖϲ×бÙЯÙÑ®ÜÓ°áضãÛºâÚ¸à×´ÞÖ³âÚ¹åݽâÙµà׳à×´ÝÕ°ÙЫØΩÝÔ¯æÞ¼êãÆæÞ¾áصáØ´ÝÔ°ÛÒ®ÝÖ´ß×´ßÖ±ÛÒ­ÙЫÚÑ­ÞÕ±ÞÕ°ÙÏ©ØÏ©ÚÑ«ÝÓ¯ÚЫÕË¥ÓÈ¡ÑÆŸÏĜǻ“¶ŽÃ·Ã·Ä¹‘Ç»“ƺ’Ç»”ÏÄÔÉ¢ÕË£ÕÊ£ÖͦØЪÚÒ¬ÙЫÖͦÓÈ¡ÑÆŸÓÈ¡ÐŞ͚ÑÇ ÓÉ¡ÑÆŸÏÜ͚ÌÁ™Ê¾—ɽ–ʾ–÷¹®‡°¦‚²§ƒ¸¬†¼°ˆÂ·È½•Å¹‘¿³‹¼°‰À´Ä¸À´Œ¾²Š¾²Š¿³Œ¹®‡³§‚º®‡Ç¼”ÏÅÌÁ™Ç¼”ƺ“ÁµŽ½±ŠÃ¸Ç»“ƺ’÷÷ǻ“ÌÀ˜ËÀ˜Æº’Ǽ”Ë¿˜ÌÁ™Ê¿—ȼ”Ĺ‘Ź‘ĸ‘º®ˆµ©ƒ¸¬…·«„·«…½±‰½±Š¾²ŠÄ¹‘ʾ–ÍÁ™ÎÛÑÆžÔÉ¢ÕˤÕˤÔÊ£ÑÆŸÐÅÒÈ ÏÄËÀ˜ÌÀ™ÎÃœÏÄÎÃœÍÁ™ËÀ˜Æº’÷Ź‘À´¸­†±§‚¯¥±¨ƒ·­‡À´Å¹‘ĸ¿³‹¼°‰À´ŒÃ·À´Œ¾²Š¿³‹À´Œ»±Š¶­ˆ¼±‹È½•ÐÅžÐÅÌÁ™È¼”ĸĹ‘ÌÁšÏÄÍÁ™Ê¾–ɾ–ÌÁ™ÑÆŸÓÈ¡ÐÆžÎÛÎÃœÑÇ ÑÆžÎÛÌÀ™ÍÁ™ÌÀ™Á¶Žº®‡º¯ˆ»°‰½±Š¾²‹½±Š½±ŠÂ·Æº’Ç»“Æ»“ź’ĸ‘Æ»”ź“ÁµŽ¾³‹½²Š»°‰·¬‡µªˆ¶®’Àº¥Ç°ÒÎÂâàÚíëèòñï÷öõùø÷ûûúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûùùùññðçæäÔÒÌÉÆ»ÈÅ´Ñ˵Ö϶ÚÓ·ÝÖ·ß×·àظàضàصà׳ßÖ²ßÖ²âÚ¸æß¾åÝ»ßÖ³ÜÓ¯âÚ¹çßÀàØ´ÝÕ°ÝÕ°ÞÖ²à×´áضáÙ¶äÛ¹æß¾äܺàسÛÒ¬ÙЩÖΪÓÌ°ÖϱÚÒ®ÖͧÓÉ¢ÔÊ£×ͧÙÏ©ÖÌ¥ÒÇ¡ÐÅžÑÆŸÏÄÍšËÀ˜ÎÛÏÄĹ’¿³‹Â¶¼²Œ¹¯‰Á¶ŽÉ½•Í›ÎÛÏÄÑÆŸÒÇŸÓÊ¢×ΧÙÑ«ØÏ©ÒÈ¡ÎÛËÀ˜ÌÁšÍÁšÎÄœÕÌ¥ØϨÕË¥ÏÄǼ”÷Ĺ‘ȼ”ɾ–ĸ¼±‰¶«„µª„·«…·«„¼°ˆÃ·Â¶Ž¾²Š»¯ˆÀ´Ä¸‘¾²Š»¯ˆ¼°ˆ¾²‹À´ÀµŽÃ·Ë¿˜ÒÈ ÎÛǻ“ĸ÷¶Ž¿³ŒÂ¶Ç»“ƺ’ĸĸǼ”ʾ–ɾ–Ź’¶ĸ‘ĸ÷ÁµÃ·Å¹‘¼°‰¸¬…º®‡³¨‚°¤¹­‡ÁµŽÆ»“Ǽ”ɽ•ËÀ˜ÎšÒÇŸÕˤÖÌ¥ÓÉ¢ÎÃœÌÀ™Ë¿˜ÌÁšÍÁšÎÛÑÇ ÔʤÔʤÏÄǼ”·÷ǻ“Ê¿—Ź‘½±Š¹®ˆ¸®‡·­‡´ª…»°ŠÅ¹’ƺ’ÁµŽ»¯ˆ¾²ŠÂ¶ŽÀ´ŒÀ´ŒÀ´ŒÀ´ŒÀ¶ŽÂ·‘ĸ‘Ë¿˜ÓÉ¡ÒÈ ÍÁ™Åº’ĸĸÀµŽÄ¸‘ɽ•È½•Å¹’÷ȼ•ÍšÎÛʿ—Æ»“Ǽ”Ç»”ƺ“ȼ”Ë¿—ÌÁ™Ä¸‘½±‰¼°‰·¬†¶¬†¾³ŒÅº’ʾ—Ê¿—ɾ–ɽ•Ê¿—͚͛ÎÄœÌÁšÆº’·À´¾²‹»¯ˆ»¯ˆ¹­‰·¬Š¶­Œ¹±–ý©Íɺ×ÓÈßÛÓãâÛëêæôóñýýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüûûú÷÷÷óóòçæäÜÜ×ÍÌÃŵƱÏË´ÙÓ¸áÙ»âÚºâÚ¸ãÛ¹æß¿åݼãÚ·åܺæÞ¼äܺáÙ¶ãÛ¹çàÁäܺÜÓ¯ØΩÜÓ°áÙ¸ÞÕ²ÛÒ­ÚÑ«ÝÓ®áصäÜ»ãÛ¸áسÞÕ°ÞÕ¯ÛÑ«ÓÈ¢ÎÃœÌÂÌŨÒˬÖΪÏŞʾ–Ê¿™ÍÄ¡ÍŤȿšÆ»”Ź‘÷ĸĸ¶ŽÆº“Ê¿˜Â·½±ŠÀ´º°Š¹¯‰Ã¸‘ËÀ˜ÏĜ˿—ɽ•ËÀ˜ÏÄœÒÈ ÓÉ¢ÔÊ£ÐƠȾ–Ĺ‘Ź‘ËÀ˜ÎÛÐÅÔʤÔË¥ÐÇ ÌÁ™Ä¸¾²ŠÁµÆº’ɽ•Å¹‘À´Œ¾²‹¾³‹¾³‹¹­‡»¯ˆÁµÁµ¼°‰¶«†»°‰Áµ¾²‹»¯ˆº®‡¾²ŠÅ¹‘Ë¿—ËÀ˜ÍšÑÆŸÌÀ˜Ä¸¿³‹½²‹½²Œ¼±ŠÂ¶ŽÈ¼”Ź’¿³Œ½±‰ÁµÄ¸À´Ž¼°‰¹­†º®‡¼°ˆ½±‰»¯ˆ¾²ŠÁµ½±Š¼°ˆ¼°ˆ¶«…µª„¿³ŒÆ»“Ë¿—ɽ•Ç»“Ç»“ÌÁ™ÐÆžÓÈ¡ÓÉ¢ÎĜŹ’ÁµÂ¶Ê¿—ÎÛÏÅÒÇ ÒÈ¡ÐÆ ÌÁ™Ä¸¾²Š¿³ŒÅ¹’ËÀ˜Ç¼”ÁµÀ´ŒÂ¶ŽÁ¶·¬‡¸®ˆÄ¹‘ƺ’Àµ·¬†·«…»¯‡¿³‹¿³‹¾²ŠÀ´ŒÄ¸È½•É½•ÌÁ™ÑÆŸÎÜȼ”¶Ž¾²Šº®ˆ¸¬…¾³ŒÈ¼”Ç»“¿³‹¹­†¿³‹Ä¸‘¸‘Á¶¿³‹¼°ˆ½±‰À´ŒÂ¶ŽÄ¹‘ƺ“Ĺ‘¶Ž¿³Œ¹¯‰¹¯‰Ã¸‘ËÀ˜ÏÄÎÛʿ—Ǽ”ÍÁšÑÆžÑÆŸÑÆŸÍ›Ź’¿´Ž¾³ŒÁµŽÁµŽÁµŽÂ·ÁµŽ»°Š¸­‡µ¬Šµ«¸°•»´›Â½«ÉÅ·ÕÒÈäâÜóóðüüûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúöõõóòñëëèàßÛ×ÕÎÈŹÆ³ÉųÓθÜÖ¼àÙ»ãܽäݽäÛºãÛ¹çß¾êãÆæà¿äܺèàÀêâÃéàÁäܺäܺæß¿àÙ¶ØϪÓÉ¢ÔʤÙϪÞÔ°ÛÒ­×ΨÖͨØЬÜÔ°ß׳ÞÕ°ÙÏ©ØΧÔɣʿ—÷ø‘ÏÅ ÕͨÔ˦ÊÀ˜Ã¸Ä¸’ƽŸÁºŸ¶­‹¹®ˆ½±Š»¯ˆ¼°‰¼°‰¸¬…»¯ˆÁµÀ´Œ¾²Š½±ŠÀµŽÆ»“Ë¿—ËÀ˜Ê¾–ȼ”Ź‘Ź’Í›ÑÆŸÎÛÌÁ™Ç¼”¿´½²ŠÂ¶ÎÃœÑÆŸÏÄœÏĜʾ—Ĺ‘ĸ‘ĸÁµŽÂ¶ŽÅ¹‘ɾ–Æ»“¶ŽÅ¹‘Ƚ•É½–øÁµŽÄ¸ÁµŽ¹®ˆ±§‚³©„»¯‰Â¶À´Œ»¯ˆ¾²ŠÃ·È¼”ËÀ˜ÎÛÍšǼ”À´Œ¹®‡´ª„´ª…½²‹Åº’Ƚ•ÁµŽ¹­†·«…¼°‰»¯ˆ±¥€²§µ©ƒ³§´¨‚¶ªƒµ©‚¶ª„º®‡½±‰¼°‰¼°‰¿³ŒÅ¹’ɾ–ʾ–Ƚ•È¼”Ź‘ĸʾ–ΛÍÛÎÛʾ—¾³‹º®‡½²‹Í›ÑÆžÏÄœÎÛɾ—ĸ‘ĸ‘øÀ´¾²‹ÁµŽÉ¾–Ç»“ÁµÁµÆ»“ɽ•¿´½²‹Ä¸‘÷»°‰±§ƒ°¥€µ©‚½±‰¾²Š¼°‰¾²ŠÀ´Ã·Æº’Ë¿—ÍÁšÉ½•Ã·¾²‹µ©ƒ±¥€»¯‰Å¹’ɾ–ź’½±‰·«„¼°ˆ¼±Š´ª…¸­‡»¯ˆµ©ƒ·«…¼°‰»¯ˆ»¯ˆ¾²‹Â¶ŽÄ¸Â¶ŽÃ·Æ»”ËÀ˜ÌÀ˜ËÀ˜Îšʾ–Ç»“ÎÃœÑÆžÎÛÎÛʾ—Àµº¯Š»±ŒÆ»”ɾ–Ƚ•Æº“ÁµŽ¼°‰¹®‡µ«…²¨ƒ°¦ƒ¯¦ƒ°§‰³¬‘¸²›Ä¿±ÖÓÉçåàòñîùøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüûûûôôóëëèÞÜ×ÖÔÌÍÊ¿ÄÁ²Ã¿®ÉÄ°ÖѸàÚÀäÝÁãÜ»àضàÙ¶äݼèàÂéâÅêâÅèáÁåÝ»äܹéáÁëäÆêâÃåÝ»âÙ¶àضÛÓ¯ÖͧÓÉ¢ÐÆžÑÆŸØΨÙÏ©Õ˧ÐÈ©Ñʪ×ΪÛÓ­ÛÒ¬×ͧÖÌ¥ÏÅžÀ´À´Ç¼•ÒÇ ÑÇ Ìšʿ—Ç»“Ź“Ĺ—½³“²¨„³§¶ªƒ´¨‚²¦€²¦·«„¼°ˆ¿³‹½±Š½±ŠÁ¶ŽÇ¼”ËÀ˜Ë¿—ɾ–ȼ”ȼ”ĸ¶ƻ“Ç»”ĸ‘ź’Ç»”Æ»“Ǽ•Ê¿˜ÍšÎÜ͚ɽ•À´¹­†¹­†¿³ŒÆ»“ɽ•È½•Æ»“֦ŽÆº’ËÀ˜Íšȼ”ĸ¶Ž¼°‰¶ª„²¨ƒ±§‚µª…·÷¾²‹¿³ŒÁµÄ¸È¼”ɾ–Ç»“ź’Àµ´ª…³©„º¯‰Ä¹‘ƺ“·ÁµŽÀ´¾²‹¿³Œ»¯ˆ³§²¦€²¦®£­¢~®£}²§¸¬…»¯‡¹­†º®‡À´Å¹‘ȼ”ʾ–Ç»“Ź‘ƺ’ĸ¶ŽÇ¼”ƺ“ÁµŽÅº’ȼ•Ã·Ã¸‘Ǽ•ÌÁšÍÁšÊ¿—Ǽ”À´¹­†·¬‡¼±‹Ã·Å¹‘ź’ƺ“÷ÁµÄ¸É¾–ÌÁ™Æº’¶¶Ž¿³‹¹®‡³©ƒ±¦€³§½±‰ÁµÀ´½±Š½±ŠÁµÇ¼”Ê¿—Ǽ”ȼ”ù‘·­ˆ´©ƒ¸­†Ä¸‘ȼ”Æ»“Ź‘¶Ž¿³Œ¿³Œ»¯ˆ²§³§µ©ƒ¯¥€°¦³©ƒ³¨‚¹­†¿³ŒÀ´ŒÁµÅ¹‘ɽ•ÍÁ™ÏÛΚÍÁ™ÎÛÌÁ™Ê¿—ÌÁ™É¾—Ź’Ǽ”ɾ–Æ»”Ƽ—Ǿ™Ê¿˜Ê¾–Ƚ•Å¹‘¿³‹·¬…°¥¯¤³¨‚³©ƒ°¦€«¡}©Ÿ}© €¬¤Šµ®™Â½­ÎʾáÞÙñðí÷÷öüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýùùùòòñëëçÙ×ÑÍÊ¿ÄÀ¯Ä¿ªÈªÐʱÙÕ½âÜÀçàÃéâÆåÞ¿áÙ¶ÜÓ¯ÛÓ¯áÚ¸êâÆíæÌìåÊçß¿äÜ»åÝ»èàÀéâÅéâÄäÛºßÖ²ÜÔ¯ÙЪÖ̤ÔÉ¢ÐÅÏÃœÔÊ£ÖˤÒɤÌŨÏÇ©Õ̧ÙЪÙЪ×ͦÕË£ÎÃœ¿´Ã·ÌÁ™ÐŞʿ—·ǻ”ɾ–Ç»“¶¼°‰µ©ƒ²¦€±¥¯¤~« |« |µªƒ¼°ˆ¼°ˆ¼°‰À´Æº’Ƚ•È½•Ç»“ȼ”ʾ–ʾ–ź’Áµ¿³Œ¾²‹¾²‹Ã¸È½•Ê¿—Í›ÍÛʾ—ÌÀ˜ÌÁ™Æº’¼°ˆ´¨‚±¥¹®‡Ç»”ÌÁ™ËÀ˜Æº’ĸź’Ƚ•ÌÁ™Íšʾ–ƺ’÷»¯ˆ¶ªƒ¶«„´©„¶¬†Ä¹’Ź‘À´À´ŒÂ¶ŽÄ¹‘ȼ”ɽ•Ç»”Ç»”ø‘¸¯Š»°ŠÃ·É¾–ĸ‘¼±‰À´ŒÄ¸Ä¸¿³Œ¼°ˆ¹­†³¨‚®¤ª }¨ž{©ž{²¦€¹­†¼°ˆ¸¬…»¯ˆÄ¸Å¹‘Ź‘Ç»“Ź‘ĸƺ’ĸÁµÃ·¿³Œ»¯ˆÁ¶ŽÇ»“ƺ“ɾ—ÌÁšÊ¾–ɽ•É½•Ä¸‘»¯ˆ²¦€®¤µ«†Â·È½•È½•Ä¸Ã·Å¹‘ȼ”ËÀ˜ÌÀ˜É¾–Ź‘¶Ž¾²Šº®†¸¬…·«„¹­†À´ŒÅ¹‘Ź‘¿³‹¾²‹Ä¹‘Ë¿—ÌÁ™È½•Ê¾—Ƽ”¸¯‰º°‰Â·É¾–Æ»“ÁµÂ¶ŽÄ¸‘ĸÁµ»¯ˆµ©ƒ²¦€¯¥¬¢ª¢¬£°¦€¸¬…¿³‹½±Š¿³ŒÆº’ɾ–Ë¿—ËÀ˜ÍšÏÛÏÄœÎÛÌÀ˜È½•Ã·¿´ŒÄ¹‘Ë¿—ÌšÐÆ ÑÇ¡Ê¿˜É½•É½•Ä¸½±‰´¨‚©ŸzªŸ{µ©ƒ¸­…³¨‚®¢~¬ |©žz¦œz¦œ|¨Ÿ‚«£‰¼¶¥ËÈ»ÛØÐëéæóóñùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþüüûùùøõõóééå×ÖÎËȽÆÁ®ÉëÐɯØгáÚ»äܾãܾçàÁéãÆëåÉéâÅâÚ¹ÛÒ­ÚÑ­ÞÕ²ãÛ¹çàÁêãÄéáÂêâÃéáÂåݼæÞ¾çßÀàصÜÓ¯ÝÔ¯ÙЩÔÊ£ÒÇ ÒÈ ÔÊ¢ÕÊ£ÓÈ¡ÐÅžÎÄžÐÇ¡ÕË¥×Ψ×ΨÕˤÓÉ¡ÏÅÌÀ™Ê¾—ɽ–ɽ•Â·½±‰¿´ŒÄ¸Ä¸‘¿³Œ»¯ˆ½±‰¸¬…±¦€­¤«¢~«¢~°¥€´¨‚·«…¿³ŒÅ¹‘ź’ÁµŽ¿³ŒÁµŽÇ»“ËÀ˜ÌÁ™Ç»“¿´Œ»¯ˆ½±‰Ã·Æº’Ź‘¶·ĸ‘Ç»“Ë¿—ÍÁ™È½•À´Œ¸¬…³§·«„À´Å¹‘Ƚ•ËÀ˜ÌÁ™ÍšÎÛÎÛÍšʾ–ɽ•È½•Ã·½±Š»¯ˆ¼°‰ÀµŽÊ¾—Ǽ”¶ŽÀ´ŒÅ¹‘ËÀ˜Í™ÎÛÐÅžÌÁšÉ¾–ɾ—ȼ•Ç»“Ç»“Àµº®‡º®‡¾²Š¾²‹¹­†¸¬…¼±‰¶«†­£¨ž{¨ž{«¡~°¤µ©ƒº®‡¼°‰À´ŒÄ¸Áµ¿³ŒÅ¹‘ƺ“ƺ’Ç»“ĸ¿³‹¼°‰¾²ŠÂ¶ŽÅ¹‘Ĺ‘ÁµŽ¾³‹À´ŒÆº’Ê¿—ËÀ˜È¼”¾²‹´¨±¥µª„¾²‹Á¶ŽÃ·Æº’ɾ–ÍÁ™ÎÛÌÁ™Ê¾–ȼ”Ç»“Ź‘¶Ž¾²Š¼°ˆ¿³ŒÄ¸Æº’Ç»“ƺ’ÁµŽÄ¹‘ËÀ˜ÍšÏÄœÐŞ͚ɾ–ź“ź“Ç»“Ç»“¶Ž»¯ˆ»¯ˆ¾²Š¿³‹¼°‰»¯ˆ¼°‰·«…±¦€­£€«¢¬£€²¨‚¶ªƒ·«„¼°‰ÁµŽÆº’Ź‘÷ĸȽ•ÍšÍšËÀ˜È¼”֦ŽÅ¹’ɾ–Ë¿˜È½•É¾–ʾ—ȼ•Ê¿—ËÀ˜É½•Áµ¸­†¯¥€¯¥€¶«„·«…¶ª„·«„·«…´¨ƒ¯£~ªŸ{§œy¥šx¥œ}§ž‚²ª“¿º©ÑÎÃæåàôôóûûúýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûøøøòòðèèäÝÜÕÍËÀÆ°ÉëÒË®ÜÔµàÙ¹áÚ¹äÜ»ãÛ¹ãÚ¹èàÁêãÇìåÉêäÇåݽßÕ±ÝÕ°ÝÔ°ÝÓ®ßÕ±âÙ·æݽêãÆëåÈåÝ»âÚ·àضÙЬÔʤÔʤÓÉ¢ÓÈ¡ÓÈ¡ÕÊ£ÕË£ÓÈ¡ÏÄœÌÁ™ÌÀ˜ÎÛÑÆŸÏÄžÍÃœÏÅÒÈ¡ÔÊ£ÒÈ Í›ǻ”¶Ž¾²‹½±Š¿³‹¾²‹¼°‰¼°‰¿´ŒÅ¹’Á¶»¯‰³©ƒ¯¥€®¤€²§¹­†¿³ŒÂ·Â¶À´À´À´À´ŒÁ¶ŽÄ¸‘ƺ“·¼°ˆ·«„¸¬…¾²‹À´Œ½±Š¹­†º®‡½±ŠÃ·Ç¼”Ê¿—Ƚ•Â¶Žº®‡¸¬…¸¬…¹­…¼°‰ÁµŽÇ¼”ÎÄœÓÉ¢ÐƞΚ˿—Æ»“ĸøĸĸĹ‘ƺ“Ƚ•Ê¿—ȼ”ĸ¶ŽÆº’ÌÁ™Ê¿—Ê¿—ÎÛÏÄÐÅžÑÆŸÌÀ˜Ä¸‘À´»¯‡·«„¼°‰½±Š¹­†¸¬…½±‰Ä¸¾³¶«†²§‚°¥€®¤²§¹­†¿³‹À´ŒÀ´ŒÀ´ŒÀ´À´À´Â¶ŽÄ¸Ä¸À´¼°ˆ·«„¸¬…¾²‹À´Œ½±Š·­‡·¬…º®‡Â¶ŽÇ¼”Ê¿—Ƚ•Â¶Žº®‡¸¬…¹­†»¯ˆ¼°ˆ¾²ŠÄ¸ÌÀ˜ÒÇŸÒÈ ÏÅËÀ˜Ç»“¶ÁµÂ¶Ä¸Ä¹‘ƺ“ȼ”ȼ”ƺ’ĸÁµÆº’ÌÁ™Ê¿—Ê¿—ÎÛÏÄÐÅžÐÆŸÌÁ›Ç»”ÁµŽ¼°‰º®‡½±Š½±Š¹­†º®‡¾²‹Â¶ŽÀ´Œ»¯ˆ³©ƒ¯¥€®¤°¦¶«…¼°‰ÁµÃ·À´À´ŒÀ´ŒÁµÄ¸Æ»“Ĺ‘ø¶Ž¼°‰¼°‰Ã·Æº’ø‘¼²Œ¿´Ã·Ä¸Ç¼”Ë¿—ËÀ˜Åº’½±Š¸­‡·¬†·¬…µ©ƒ¶ªƒ¹­†¼°‰¼±‰¸¬‡¶ª„±¥«¡|§z¥›x¥›z¥œ~¯§ŽÅÁ²ÙÖÎåãÞîíëöõôûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüúúùööõòòñææâÙÙÑËȼÅ°ÉìÔͱÝÕ¶àØ·âÛ¹áÙ¹àÙ·ãÛ¹ãÚ¸âÛ¸çàÀèàÃèáÃêâÄæß¿áØ´ÞÕ°ÛѬØΨØΨÛÒ¬à׳æßÀêãÇäܺßÖ²ÙѬÓɣ͚ËÀ˜ÎÛÒÇŸÓÉ¢ÓÉ¢ÒÇ ÏÄÌÀ˜È¼”ɽ•ÌÀ˜ÌÁšÇ¼—Æ»•Ë¿˜ÒÉ¢ÖͧÓÉ¢ÌÁ™Ä¹‘½±Š½±‰¾²‹½²Š¸¬†´¨ƒº®‡Ã¸ËÀ˜É¾–¶º®‡µ©ƒ´¨‚¹­†ÁµŽÇ¼”ĸ‘¾²Š¼°ˆÀ´Ã·Áµ½²Š½±‰À´¾²‹¸¬†´¨‚µ©‚¸¬†»¯ˆº®‡¶ªƒ¶ªƒº®†¾²ŠÁµÄ¹‘Ç»“÷»¯ˆº¯ˆ¸¬†µ©‚¸¬…¾²ŠÂ·Ì›ÓʤÑÇŸÍšȼ”ĸ¿³‹¼°‰Â¶ŽÈ½•ËÀ˜ÌÀ™Ë¿—ɽ•Ç»“Ź‘ĸǻ“ɾ–ź’ĸʾ–ÐÅÓÉ¢ÓÈ¡Ê¿—À´Œ»¯ˆ·«„·«„½±Š¼°‰µ©‚¸¬…¶ʿ—ź’¾²‹¼°‰·«…³¨¸¬…¿³‹Ã·Áµ½±‰»¯ˆÀ´Â¶Ž½±Š¾²ŠÀ´ŒÂ¶Ž¾²Š¸¬†´¨‚µ©‚¸¬…º®‡¸­†³©„µª„¹­†½±ŠÁµÅ¹‘Ç»“ĸÀ´Œ½±Š¹®‡¸¬†¹­†½±ŠÂ¶ŽÊ¿—ÑÆŸÓÉ¢ÑÆŸÌÁ™Æº’¿³‹¼°‰Â¶ŽÉ½•ÌÁ™Ê¾–Ç»“ȼ”ĸÀ´ŒÁµÆ»“Ê¿—ƺ’ĸʾ–ÐÅÔÊ£ÕË¥ÎÄŹ‘½±Š»¯‡¼°‰À´Œ¼°‰µ©‚¹­†ÁµÇ»“Ç»“¶º®‡´¨‚²§±§‚¸®ˆÁ¶ŽÄ¸ÁµŽ¼°‰¾²ŠÀ´ŒÀ´ŒÁµÁµ½±Š¾²Š½±Š¸¬…·«„½±ŠÀ´¼±Šµ«†¹¯‰À´Œ¿³ŒÂ¶ŽÆº“Ë¿˜È½•Â¶Ž¾³‹»¯ˆ·«„¶ªƒ¸¬…¼°‰¿³ŒÂ¶ŽÂ¶¿³¹­‡±¦¬¡}©žz§œx¦›x¥šyª¡„²ª“¿¹§ÒÎÅâàÛïîì÷÷öüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúù÷ööñðîëéçßÝ×ÕÓËÊȺÇıÎÈ°ÙÓ·áÚ»ãܼâÛ»áÚ¸äܺæÞ¾çàÁçàÁãÛºß׳áÙ¶àÖ²ÞÕ²åÞ¾äݼÜÓ®ÓÉ£ÑÆŸÖÌ¥ÛѬÝÔ®ÚÑ«ÜÓ¯ß×´àØ´ÜÓ®×ͦÑÇ ÌÁ™Ë¿—ÏÄÒÈ¡ÐÅÊ¿—ȼ•ÌÁ™É½•Åº’Ê¿—ÌÀ˜É¾™Ç¾¡ÈÀ£ÍÃÒÈ¡ÓÉ¢ÌÁ™Ä¸½±Š¾²Š¿³‹½²Šµ«†®¥¯¦¸­‡Ä¸Ë¿—ȼ”Áµº®‡¹­†¼°ˆÁµÄ¸Ä¸Â¶Ž¾²Šº®‡¾²ŠÁµÀ´Œ¿³Œ¿³‹Ã·¿³Œº®†·«„·«…º®‡¿³ŒÂ¶Ž¾²Šº®‡¸¬…¹­†¸¬…º®‡Åº’Ç»“¾²‹µ«…²¨ƒ·¬…¿³‹Ä¸‘Ç»“ɾ–ÍÛÑÇ ÎÜɽ•Æº’ÁµŽ¼°‰Â¶ŽÇ¼”ɽ•Æ»“Ĺ‘ƺ’¶À´Ç¼”Ƚ•Ä¹‘¶ŽÅº’ÌÀ˜ÏÄœÐÅÏĜź’¼°‰½±‰½±‰»¯ˆ¸¬…´¨²¦€¶ªƒ¿´ŒÉ½–ĸ‘»¯ˆº®†·«…¸¬„¿³ŒÃ·ÁµŽ¾²‹º®‡¹­†¾²ŠÁµ¿³‹¿³ŒÁµÃ·¿³Œº®†·«„·«…¹­†¼°ˆ¿³‹Àµ¼±Š¸¬…µ©‚·«„½±ŠÄ¸Ä¸¿³Œ¶¬†±§‚´¨‚½±ŠÄ¸‘ƺ’ƺ’ȼ”ÎÛΚʾ–Ǽ”ÁµŽ¼±‰Â¶ŽÊ¾–ÌÁ™È¼”ĸŹ‘ÁµŽ¾²ŠÃ·È¼”ȼ”ĸź’ÌÀ™ÏÄœÐÅžÐŞǼ”¾²‹¾²ŠÀ´À´º®ˆ´¨²¦€¶ªƒ¿³ŒÈ½•Ç»“Áµº®‡·«„·«…½²‹¿³Œ½±Š½±Š½±Š¾²‹¿³ŒÀ´ŒÁµÃ·Ä¸¿³Œ¾²‹¾²‹¹­†¸¬…»¯‡¾²ŠÀ´ÀµŽÀµ¿³‹»¯‡º®‡¾²ŠÅ¹’ȼ”Ź‘¿³‹¸¬…¶ªƒ¼°‰Ä¸‘Ǽ”ź’ĸȼ•Å¹’¾²‹¸­‡³©ƒ¯¥€®£~­¢}¬ |§œy¤™x¦œ~®§Ž½¸§ÍɽßÝØììêõõôûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúôóòêéæãâÞØÖÎÐÎÃÈŶÇïÍÈ°ØÓ¶âÜ¿äÝ¿äÞ¾æßÀæßÀçßÀèáÂèàÁçß¿æÞ¾âÚ¸ÝÕ°ÚÑ«ÙÏ©ÚѬàصÞÕ³ÖͧÐÇŸÑÇ ×ͧÛÒ¬ÛÒ¬ÙЪØÏ©ØÏ©ÙÏ©×̦ÓÈ¡ÐƞΚÌÁ™ÎÛÎÃœÌÀ™Ç¼”ĸĹ‘ƺ“ȼ•ÌÁ™ÌÁ™É¾˜Ë¢ÎŦÎÄËÀ™É¾—ʾ–ø½±‰¼°‰¼°‰»¯ˆµª„°¦‚²¨‚¸­†¿´ŒÅº’ĸ¿³‹¹­†³§‚±¦»¯‰Ã·Æº’Ç»“÷¾²Š¾²‹ÁµÃ·À´Œ½±‰»±Š»°Š»¯ˆ¹­†»¯ˆ¿³‹Â¶Ä¸Ã·½±Š·¬…³¨ƒ³¨‚·«…¶ø¼±Š·¬†¸­‡¿³ŒÆº“ʾ–Ƚ•É¾–ÌÀ™ÎÜ˿˜Æº’Ç»“Ź‘ÁµŽÂ¶Å¹‘Ç»“ĸÀ´Œ¾²‹À´Ä¸‘ËÀ˜Ê¿—ƺ’ȼ”ÌÀ™Í›ɾ–Ç»”ɾ–ĸ½±Š¼°ˆ»¯‡¸¬…µ©ƒ´¨´¨´¨‚º®‡Ä¸‘Á¶Ž¼°ˆ¸¬…±¥®¢}·¬…À´ŒÃ·Å¹’·½²Š¾²‹ÁµÃ·À´Œ½±‰»±Š»°Š»¯ˆ¹­†»¯ˆ¾²‹À´ŒÁµÃ·À´Œº®‡²¦€²¦€·«„À´ŒÁµ¼°‰·¬†¶«†»°‰Ä¸Ê¾–Ƚ•Ç¼”Ƚ•ÍšÌÀ˜É½•Ê¾–Æ»“¶ŽÄ¸‘ȼ”ȼ”ƺ’÷ÁµŽÀ´ÁµŽÇ¼”ʾ–ȼ”Ç»“Ë¿˜ÏÄËÀ˜È¼•ÌÁ™Ç¼”¿³Œº®ˆ¹®ˆ¹¯‰¶«…´¨´¨´¨‚º®‡Ä¸‘¶½±‰»¯ˆ¶ªƒ²§¹­‡¿³ŒÂ·Ä¹’ĸ‘ÁµÀ´ŒÀ´ŒÀ´ŒÂ¶ŽÁ¶Žº¯‰¹®‡»¯ˆº®†»¯ˆ¿³‹Â¶ŽÄ¸Ä¸Â¶Ž¾²Š·«„¶ª„º®‡ÁµÄ¸Ã·¿³‹»¯ˆ½±ŠÆº“ÍšÌÁ™É¾–ȼ”ɾ–ƺ’Áµ¿³Œ»°‰·¬†´©ƒ²§¯¥«¡|¨y¥šw¤™w¦­¥Œ½¸§ÏÊÀáÞÙîíëõõôøøøûúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýõôôííêàßÙÓÐÆÊǹÅÁ®ÆÁªÐ˱ÛÖ¼âÜ¿åßÂäÞÁâÛ»äݽéâÄéâÄëäÇìæËçßÀâÙ¶áصà׳ÝÔ¯ÕˤÕˤÖͨÕͨÑÈ£ÏÅžÑÇ ÔÊ£Õ̦ÖͧØΨØϪÖͧÔÉ£ÐÅÏÃœÎÄœÎÛÎÛÍšÌÀ˜É½–Ç»“ƺ’ĸ¾²ŠÃ¸ÌÁ™ÎÛÍÁ™ËÀ˜ÐÅŸÑÇ¡ÌÁšÄ¹‘·ËÀ˜Ç¼”¿³‹º®‡¹­†º®‡¹­†¶«„µ©ƒ·«„»¯‡¾³‹¾³‹»°‰µ©ƒªžz£˜u±¥€¿´È½•ËÀ˜È¼•Ã·Â¶ŽÃ·Ä¸¿³Œ¹®‡´ª…·­‡½±Š¼°ˆ¾²ŠÃ·Â¶ŽÁµÃ·¾²‹·¬…²¨ƒ³©ƒ¶«„¹®‡¹®‡¸­†º¯ˆ¿³‹Ã·É¾–ÍÁ™Ê¿—Ê¿—ËÀ˜É½–ź’ĸƺ’Ç»“ƺ’ĸ÷Ź‘÷¾²Š·¬…¿´ËÀ™ÏĜ͚˿—ÏÄÑÆŸÌÁ™Ã·À´Ç¼”ƺ’À´Œº®‡¶ªƒ´¨‚·«„·¬…µªƒ³¨‚·«„¾²‹¾³Œ»¯ˆµ©ƒ©žy¢—t¬¡|º®‡Ä¸‘ËÀ™ÊÀ˜Ã·Á¶ŽÃ·Ä¹‘À´Œ¹®‡³©„·­‡½±Š¼°ˆ¾²ŠÃ·Áµ¿³‹¾²‹¿³‹½±‰µ©‚²¦€³§¸¬…¹­†·«…»¯ˆÀ´ŒÃ·É½–ÌÀ˜Ê¿—Ë¿—ÌÁ™ËÀ˜É¾–Ƚ•ÌÀ˜ËÀ˜È¼”Ç»“ƺ’¶ŽÃ·Ã·½±‰À´Ç¼”ÌÁ™ÌÁ™Ê¿—ÌÀ˜ÏÄÏÅĹ’À´ÌÁ™ËÀ˜Ã·¸¬…±§±§ƒ¶«…¸¬…µªƒ³¨‚·«„¾²‹»°‰¸¬†¹­†±¦€ªŸz¯£~»¯‰Ç¼”ÎÃœËÁ™Ä¸Ã·Â¶ÀµÀ´Œ¾²‹µ«†µ«…¹­†¹­†¾²ŠÄ¸Æº’ĸÀ´Œ¿³‹½±Š¶ªƒ¶ªƒ¹­†º®‡»¯ˆ½±Š¾²‹ÁµÄ¸‘ÌÁšÑÇŸÍÁšÌÁ™ÌÁ™È¼”ø¶ŽÄ¸Ä¸À´Œ»¯ˆ¶«„±§‚¯¤¬¡|¥šw¥šv¤šw¤šy§ž€¯§¹´¡ÍɾÛÙÓæåâìëêöõôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúððîàßÙÔÒÉÊǸÆÁ¬È¨ÐÉ®ÚÔ·âßÇæåÐæàÃçàÁèâÄæàÁèáÃéâÄçß¿çàÁéâÆãÛ»ÜÓ¯ÚЫÚЪÙϪ×ͧÒÈ¢ËÁšÀ·’¾µÅº“ÍÁšÎÃœËÀ™ÐÆžÕË¥Ö̦ÒÇ ÌÁ™Ç»“Ǽ”ʾ–Ê¿—Ê¿—Ë¿—ÌÀ˜È½•À´À´À´»¯ˆÃ·ÍšÏÄœÎÛΚÐÅÍšƻ“ĸǻ”ÏÅÊ¿—À´Œº®‡»¯‡½±‰½±‰¶«„¯£~²¦¸¬…º®‡µ«…°¦‚« |¦›w¤™u®¢}¸¬…¾³‹Ã·Ç»“ɾ–Ê¿—Ǽ”À´½±Š¾²Š¾³¿´¿´Œ¾²‹¿³‹Áµ¾²Š»¯ˆ¼°‰º®‡º®‡¼±‹¹­‡±¥€¨y¨ž{¯¥¶«…¹­†º®ˆÅ¹’ÎÛÍÁ™É½•Å¹‘÷ĸŹ‘Ç»“ȼ”ȼ”ƺ’÷¿³‹¿³‹¾²Š¹­†Â¶ÍÛÒÇ ÐÆŸÎÛÐÅÍšƺ“ÀµÂ·ÍšËÀ™Ä¸¼°ˆ·«…·«„»¯‡¸­†²§‚³¨‚¸¬…½²Š¸®ˆ±§‚« |¦›w¤˜u¬ {µ©ƒ½±ŠÃ¸Ç»“ƺ’ȼ”Ƚ•Ã¸À´Œ½±Šº¯‰¼±Š¿³‹¾²‹¿³‹Áµ¾²Š¹­†·«„»¯‡¾²Š»¯ˆ¸¬…³§©žy§œx­¡}¸¬…¿³‹¿³‹Ä¹‘Ê¿—ÌÁ™ËÀ˜É½•Â·ÁµŽÄ¸Ë¿—ÌÁ™É½•È¼”ĸ‘¾²Š¿³‹À´Œ»¯ˆÂ¶ËÀ˜ÏÛÎÛÍšÎÛÌÁšÆ»”¾³‹¿´ŒÎÃœÎÛƺ’º®‡µªƒ¶«…½²‹»°‰²¨ƒ³¨‚¸¬…½±Š·¬†¯¥­¢~©žz¦›xª }²§‚»¯‰Æº“ʾ—Ǽ”Ë¿˜ËÀ˜Ã·À´ŒÀ´Œ¾´¾³Œ¾²Š½±Š¿³‹Â¶ŽÂ¶Ž¾²‹¸¬…»¯‡¾²Š¼°ˆ¼°ˆ¹­†« {¨œy¯£~¹­‡¿³‹¿´ŒÈ½–ÐÅžÑÇŸÐÅžÌÁ™Â¶¿³‹ÁµÅ¹‘Ç»“Ź‘Áµ¼°‰·«…³¨¯¤~ªŸ|ª {« {©žz¦›x¤™x£™zª£ˆ´®šÅÁµÒÐÊÚ×Ôèçåøø÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýøøøððïçæâÙ×ÐÌɻǬÉçÐɨÛÔ²åÞ¿èâÆéçÓééÖèãÇêâÄëäÆëäÇéâÄçß¿äÛ¸âÚ·áÙ·ÛÒ®ÕÌ¥ÔÊ¢ÕË£ÕˤÐǠǽ–¼²Œ¶¬‡»°ŠÃ·Á¶¾²Œ¿´ŒÈ½•ÑÆžÒȠΛȽ•Æ»“ź’Ź‘Ç»“Ç»“ƺ’ɾ–Ǽ”¿³‹¾²ŠÁµÄ¸‘ȼ•ÌÀ™ÏÛÎÛÍÁ™ÌÁ™Ç¼”À´ŒÀ´ŒÅ¹’Í›ʾ—÷½±Š¿³‹Áµ¿³‹µ©ƒ­¡}²¦€¸¬…¹®†³¨ƒ¬¢~©žz©y©žy«Ÿz­¢|²§¼°‰Æº’ËÀ˜ÎÛÌÁ™Ã¸ÀµÁµÃ·ÁµŽ¾²‹¿³‹À´Œ¿³‹¹­†µ©‚¶ªƒº®‡¾²Š½±Š³§‚§œx¡—t¨ž{²¨„³¨‚°¤³§À´ÌÀ˜ÎÛɾ–ĸŹ‘ĸ÷ĸƺ’ȼ”ɾ–ƺ“¾²‹¾²ŠÀ´ŒÁµŽÆ»“ËÀ˜Í›ÍšÌÁ™ÌÁ™Æ»“½±Š½±‰Ä¸Í›ÍÁ™Æº“¿³‹¾²‹À´¾²‹¶«…¯¥±¦¸¬…½±‰¶«…­£~©žz©y©žy«Ÿz­¢|²§¼°‰Å¹‘Ǽ”Ê¿—Ë¿—Ç»“÷ÁµÂ¶ŽÀ´Œ¾²Š¿³‹À´Œ¿³‹¹­†´¨²¦€¸¬…¿³‹¼°‰´©‚« {¤˜u§›x®¢~³§‚´©ƒµª„¾³É½•Íšʾ–Ź‘¶ÀµÁ¶ŽÆ»“ɽ•È¼”ȼ”ĸ‘¾²Š¾²Š¿³‹¿³ŒÅ¹’ËÀ˜ÌÁ™ÌÁ™ÌÁ™ÌÁ™Æ»“½±Šº®‡À´ÌÁšÍÁ™Æº“¿³‹¾²‹ÀµÁµŽº¯ˆ°¦±¦¹­†¿³‹·¬†­£©žz©y©žz© }©Ÿ|« {º®‡Æº’ȼ•ËÀ˜ËÀ™Ç¼”Ĺ‘øĸÁµŽ¾²‹¿³‹À´Œ¿³‹»°‰¶«„³§¸¬…¿³‹¿³‹¸­†®£~¤šw¥›x®£~µª„¶«…¶«…¿´ŽË¿˜ÑÇŸÐÅË¿—ĸ‘¶÷ĸƺ’Ç»“Ź‘Áµ¼°‰¹­†¶ª„±§‚²¨‚³¨°¤¬¡{¨x£˜u –sŸ–v¤œ‚ª¢°ª›¿»²ÕÓÎíìêúùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúòòðçæãÛÙÓÒÏÄÉŵÈíÎǪÖÏ­ÜÔ²ãܼèâÅéãÆìçÎîéÒíèÍìåÉêãÅèáÃæÞ¾äÛ¸ãÚ¶ßÕ±ÚЪÕˤÒÇ ÑÇŸÔÉ¢ÓȡȽ–»±‹²©„¸®ˆÂ·Æº“¹®ˆ³§‚¼°‰Ã·É½•ËÀ˜Ë¿˜Ê¾–ÌÀ˜É½•Å¹‘Ç»“ƺ’÷ĸĸ¶÷ǻ”ÎÃœÌÁ™É¾–ÍÁ™ËÀ˜Ç»”Ç»“¶»¯ˆº®‡¿³ŒÈ¼”Ƚ•Æº’÷ĸŹ‘¿³‹¶ªƒ²¦€´¨‚¸¬…º®‡µªƒ±¥¯¤~¯£~®¢}©žz§œy¬¡}»°‰Æº’ȼ”ÌÁ™ÏÃœËÀ˜Å¹’À´Œ¿³‹½±‰¼°ˆ¿³ŒÁµ¿³‹¹­†´¨‚µ©‚½±ŠÂ¶Ž¹­†«Ÿ{ –t¥œy²©„¼±‹´¨ƒ®¢~´¨ƒ¾³ŒÇ¼”Ê¿—ɾ–Ƚ•ÌÀ˜Æ»“À´ŒÁµÄ¸Æ»“ȼ•Æ»”¶·Ź’ʾ—ʾ–ȼ”Ź‘Ź’Ç»“ƺ“À´¸¬…º®‡Â¶ŽÉ½•Ê¾–ȼ”¶Ź‘Ǽ”À´·«„²¦€°¥µ©‚º¯ˆ¶«„±¥€¯¤~¯£~®¢}©žz§œy¬¡}»°‰Æº’Ç»“Ƚ•Ê¾–ËÀ˜Æº’ÁµÂ¶Ž¿³Œ¼°ˆ¿³‹Áµ¿³‹º®†µ©‚´¨º®‡¿³‹»°ˆ­¢}¢—u¨y²§¸¬…²¦®£²¨„¼²ŒÇ»“ɾ–Ç»“Ĺ‘ɾ–ȼ”÷÷ƺ’Ç»“Ź’÷ÁµÂ¶Ä¹‘ƺ’Ç»“ȼ”ɽ•É½•È¼”Æ»“¿´·«…¹­†À´È¼•Ê¾–ȼ”¶Ź‘ȼ•ÁµŽ¸¬…³§±¥¶ª„¾³Œ¸­‡°¥¯¤~¯£~®£~«¢~¥œy¤™v´©ƒÄ¸Æº’ź’Ç»“Ê¿—Ƚ•Ä¹‘Áµ½±‰»¯ˆ¿³‹Áµ¿³Œ·­ˆ²¨ƒ³¨‚º®‡À´ŒÀ´Œ²¦£™v¥œy¯¥¸­†µ«…±¨„²©„º°‰Ä¸‘Ê¿—Ë¿—ʾ–ÌÁ™Ë¿—ȼ”Ź‘ƺ’Ç»“ĸ‘ÁµŽÀ´Àµ¿´Œº¯ˆº®‡¹­†¶ª„±¥€¬¡|¥švŸ”q›o™o˜pš’x¡š†¯©›ÈŽàÞÛððîúúùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÿÿÿüüü÷÷÷îíëâàÛÔÑÈÊƸÉįÌÆ­ÓÌ­ÙѯÞÖ³ãÜ»èáÃêäÇêãÇíæÍïèÐíçËéâÄåÜ»à×µà׳âÙµâÙµÞÖ±ÚÑ«×ΧÕË¥ÔÊ¢ÕË£ÔÊ¢ÍÛ½³Ž°§ƒ¶¬†¿´ŒÃ¸¾²ŒÀ´ŽÇ»•Ä¸‘¾²‹¾²‹Ä¹’ÌÀ˜ÎÛÌÁ™Ê¿—ËÀ˜É¾–ĸº®ˆ»¯ŠÊ¿˜ÑÆ ÓÈ¢ÎÜǻ“÷ʾ–Æ»”½±Š¼°‰¼°‰º®†»¯‡À´É¾–ʾ–ɽ•É½•Ë¿—ʾ–¶Žº®†¶ªƒ´¨²¦€°¤€²¦€µ©‚µ©‚µ©‚³§¬¡}«¡}²¦¼°‰ÁµŽÁµŽÊ¿—ÑÆžËÀ˜Ã·»¯ˆ¸¬…¹­†¾²‹Å¹’ƺ’Áµ¿³Œ½±Š¼°ˆÁµÆº’·´©…¦{¨ }²©„¼°‰»¯‰½±‹ÁµŽÀµŽ½²‹º±‹À¶É¾–ÐÅžÎÛȼ•È½•Ç»“¶»¯‰»°ŠÆ»”Ì›ÎÄžËÀ™Ç»“ĸĸ¶¾²‹»¯ˆº®‡º®‡º®‡¿³ŒÉ¾–ÌÁ™Ë¿—Ç»“Ǽ”ɽ•Ä¹‘½±‰¶ªƒ²¦±¦€³¨ƒ´©ƒµ©‚µ©‚µ©‚³§¬¡}«¡}²¦¼°‰Ã·Ä¸È½•ËÀ˜Ê¾–÷¼°‰º®‡¹­†»¯ˆÃ¸Æº’¶ŽÂ¶ŽÀ´¼°‰À´ŒÅ¹‘ĸ‘µ«†§ž{ª }²¨‚¹­‡º¯ˆ¼±‹¿µ¿´Ž¾²‹½²ŠÀµŽÆº’ÌÁ™ÌÁ™Ê¾–ɾ–ɽ•Æº’»¯‰¸­‡Ã·ÍÂœÑǡʾ—ƺ’Ź‘ƺ’ƺ’·»±‹·­‡¹­†¸¬…»°‰È½•ÌÁ™Ë¿—Ç»“Ǽ”ɽ•Ä¹‘¿³‹º®†´¨‚²¦´ª…²¨ƒ±¦´¨µ©‚³¨‚­¤€ª¡}®£~»¯ˆÄ¸Ä¸Æ»“ɾ–ɾ–Ĺ‘¿³‹¼°ˆº®†»¯ˆÃ¸Æº’Á¶ŽÀ¶¾´Ž»°‰À´ŒÅ¹‘Æ»“¹­‡©žz§œy¯¤¹­‡¼±Š¾³¿¶ÀµŽ¿³‹¾²‹Â¶É¾–ÐÅžÐŞ͚͚͛Ƚ–¸­‡³§‚Á¶ÊÀ™ÍœĹ‘¼°‰·«„·«„µ©ƒ¯¤£˜u›o™n•Šj’ˆh’ˆi’‰m—w¥ ¸´¨ÏÍÆèçåøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüø÷÷òññèçåØÖÏÊÈ»ÈIJÐÉ°ÛÓ²àضâÙ·áÙ·ãÛºæß¿æßÀèáÂëãÆìåÈëåÈéáÂåÝ»áØ´ÛÑ«ÜÓ®áØ´âÙµßÖ²ÛÓ®ÛÓ®ÛÓ®ÚЪÚЪÙÏ©Ö̦ż–¶¬‡º¯ˆ¾²‹Á¶ŽÈ¼”ÎÃœÐƞǼ”¼°ˆ¶ª„»°ŠÄº”ÌšÏÄœÏÄœÐÆžÍÞƼšº°¼±‹Í›×ͦØΩÐŞƺ“ÀµÄ¹‘¿´·«„¹­†»¯ˆº®‡¾²ŠÂ·Å¹’ź’ƺ’Ǽ”ɽ–ɾ–Ź‘¿³Œ»¯ˆ¹­†´¨ƒ¯¤°¥´©ƒ·«…·«„´©ƒ±¦²§ƒ·«…º®‡»¯ˆ¼±‰Åº’Ê¿˜Å¹‘À´¼°‰¸¬…»¯ˆÂ·É¾–ʾ–Ç»“ɽ–ËÀ™ËÀ™ÌÁšÎÃœÎÄœÁ·‘³©…±§ƒµª…»°‰Ä¸ËÀ˜ÌÁ™Å¹’º¯ˆ±§‚¶¬‡Á¶Í›ÐÅžÏÄœÏÄœËÀ˜Ä¸¸¬‡º®ˆÊ¿˜ÓÉ¢ÔʤÎÛɽ•Å¹‘÷¿³‹º®‡¸¬…º®‡¼°‰¼°ˆ½²ŠÄ¸‘Ƚ•È½•Å¹‘ĸ‘ƺ’Ç»“÷¼°ˆ¹­…µª„²¨ƒ³¨ƒµªƒ¸¬…·«„´©ƒ±¦±§‚¶ª„»¯‡¾²Š¿³‹Å¹’Ƚ•Ä¸¿³‹»¯‡¹­†º®‡¾²‹Ç¼”ʾ–Ç»“Ê¿—Í›ËÀ™ÌÁšÎÃœÏ޹“´ª…±§ƒ´ª„¹®‡Ã·ËÀ˜ÌÁ™Å¹’¼°ˆµ©ƒ¸¬†¿³É½–ΚÏÛΚÌÀ˜È¼”º¯‰¸­‡Ç¼•ÒÇ¡Ö˦ÏÜɽ•Å¹‘÷Áµ½²Š¸­ˆ·­‡»°ˆ¹­†º®‡Ä¹‘Ƚ•Ç¼”ƺ’Ź‘ĸƺ’ĸ¾²Š¸¬…´©ƒ²¨ƒ±¦€±¦´¨‚µ©ƒ´©ƒ±§²§ƒ·¬…½±ŠÀ´Œ¿´ŒÅ¹’ȼ•Ä¸À´½±Š»¯ˆ¼°ˆ¿³ŒÇ¼”ʾ–Ç»“Ê¿—Í›ËÀ™ËÀ™Î›ÑÇ Æ»•¸¬†°¤€±¦€¹­†Ã·ËÀ˜ÍÁ™É¾–Áµ·«…¹®‡Á¶ËÁšÐÅžÑÇŸÒÈ¡ÒÇ ËÀ˜·¬‡²§‚ź“ÐÆŸÓʤÍÛĹ’½±‹¹­‡¶«„²¦€§›wŸ”rŸ•r™Žm”‰i’ˆg†fŽ„g‡m˜‘{©¥•Á¾¶ÞÜÙðïîøøøüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøø÷ïïíàÞÚÑÏÆÈĵÍȳÙÓ¸Þ׶áصãÛ¸åݼæÞ¿åݽãÚ¹àضâÛ¹èàÁæÞ¾ãÛ¹äÛ¹ãÚ·áسÛÓ®ÜÔ¯à׳áسÞÕ°ÛÓ®ÝÔ°àײà׳àײßÖ±ØЪË›ÀµŽÂ¶ŽÂ¶ŽÃ·ÌÁšÒÇ ÐÅËÀ˜Ã¸º®‡¶«†¹°‹É¿˜ÐÅÐÆžÓÈ¡ÏǥɦȿžÉ¾—Ë¿˜ÏÃœÒÈ¡ÔʤÎÄƺ“Àµ¼°‰»¯ˆÁµŽÂ¶Ž¼°‰À´ŒÁµŽº¯ˆ¼°‰À´Œ½±Š¾²‹ÀµÃ·Ã·ÁµÂ¶ŽÂ¶Ž¼°‰´ª…±§‚µª„µ©ƒ´¨µ©ƒµª„¶ª„µ©ƒ¸¬…½±Š½±Š¼±‰½±ŠÁµŽÄ¸À´ŒÁµŽÆº’ȼ”ʾ–ÌÁ™ÐÅžÕˤÚЫÙЫ×ΨÔʣʿ—¾´Œ¼±Š½±ŠÀµÈ¼”ΚÎÛ˿—¶µª„±§‚¶­ˆÅ»”ÍšÏÄœÏÄœÎÛÌÁ™Ç»”Ç»“ÍšÐÅÑÇŸÒÇ ÐÅÊ¿—¶¼°‰»¯ˆÁµÁµŽ¼°‰¼°‰¼°‰¹®‡½±ŠÁµ½±Š½±ŠÀ´Ã·Ä¸ÁµÂ¶ŽÂ¶Ž½±Š·«…´¨‚¶ª„µ©ƒ´¨µ©ƒ³¨‚±¦€¶ª„º¯‡»¯ˆ¾²ŠÀ´Œ½²Š¾²‹À´Ã·Å¹‘Æ»“ȼ”Ê¿—ÌÁ™ÎšÒÈ¡ÙϪÙЫØϪ×ΩËÁ›¿´»±Šº¯ˆ»°ˆÆº“ÎÛÎÛʿ—÷º®‡³§‚³¨ƒÃ¸‘ÌÁ™ÎÛÌÀ˜ËÀ˜ÌÀ™È¼•Ç»”ÌÁ™Í›ÎÛÒÇ ÐŞʿ—¶¼°‰¼°‰Á¶ŽÁ¶Ž¼°‰¼°ˆ½±‰½±Š½±Š½±Š¿³‹¾²Š½±ŠÁ¶ŽÁµŽ½±‰½±‰¾²‹¼±Š·«…²¦€²¦²¦€³§µªƒµªƒµ©ƒµ©ƒ·«„º®‡¾²ŠÀ´Œ¾²‹ÁµŽÄ¸‘ÁµÂ¶ŽÅ¹’ȼ”ʾ–ÌÁ™ÍšÒÈ¡ÙÏ©ØΨÖͦÛѬÒǡĹ‘½±Šº®‡¼°‰Åº’ΚÏÄœÎÛȽ•»°‰µª…µ¬‡Á·ÌÁšÓÈ¡ÒÇŸÏÅÍ›ǻ”Ź’ÌÁ™ÏÄÑÇŸÒÇ ÑÆŸÌÁšÀµŽ¸¬†´©‚³§¯¤§z –s˜Žl”‰i’ˆh…e„d„g’Šq ›ˆ»¸®ÒÐËåãáòñðùùøüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýøø÷ìëéÜÚÕÍʾÉÅ´ÔθàÙ¿çàÃæßÁäܺæß¾èáÃãÚºßÖ²ÞÔ°àضäݼäÜ»ÞÕ±ÜÒ®äÛºåܺà׳ØΨØÏ©ÜÓ®ÚЪØΨØÏ©ÚÑ«ÝÔ¯áØ´âÙµà׳ÙÏ©ÍݦŽÀ´ŒÀ´ŒÂ¶ËÀ™ÑÆŸÏÅÏÄËÀ˜Àµ¿µŽÄ»•ÏÅžÓÈ¡ÓÈ¡ÒÈ ÐÆ¢ÌÄ£ÍÄ Íšʾ–ÌÀ˜ÏÄÐÅŸÎÄœÌÀ™É¾—Ǽ”Æ»“ɾ–Æ»“¿³‹¾²‹¿³‹¾²‹¿³‹¾²Šº®‡·«…µ«†¸­‡¾²‹Ã·Ç»“ƺ’Áµ»°‰¶«…´©‚¶ªƒ¸¬„µ©‚±¥°¥·«…¾²‹¾²‹¹­†¸¬…¶Ƚ•É¾–÷ĸǻ“ȼ”ɽ•ËÀ˜ÍšÓÈ¢ÛÒ­ÜÓ¯ÙѬÕÌ¥ÌÁ™ÁµŽ½±Š½±ŠÁµÇ»“ÍÁ™ÏÄœÑÆŸËÁš½²‹»±ŠÁ·‘ËÁšÏÄÏÄœÏÄœÏÄœÏĜ͚ÌÀ˜ÌÀ˜ÍšÏÄœÎÜ͚ËÀ˜É¾–ź“÷Ǽ”Æ»“¿³‹¼°ˆ¼°‰½±ŠÁµÂ¶Ž»¯ˆ¸¬…¸¬…º®‡¾²‹Ã·Ç»“ƺ’Áµ¼°ˆ¸¬…µ©‚¶ªƒ¸¬…¸¬…¯£~©yµª„¿³Œ½±‰¹­†º¯ˆÂ·Æ»“Ǽ”Ź‘Ç»“Ê¿—ɾ–Ë¿—ΚÍÁ™ÐÅžÙÏ©ÝÔ¯ÝÕ°ÚѬÎÄžÁ¶Ž½±‰º®‡¼°ˆÆ»“ÏÄœÏÄœÏÄÌÁ™Ã·¾²Œ¿³È½•ÏÄœÑÆŸÎÛÌÀ˜ÌÀ™ÎÛÏÄÏĜΚ͚ÑÆžÏÄœËÀ˜É¾–ź“ĸʿ—ɾ–¿³Œ¼°ˆ½±‰À´Œ¿³‹½±‰¼°ˆº®‡¸¬†¸­‡»°ŠÀ´Ã·Ä¸Ã·¾²‹¸¬…²¦€´¨‚¸¬…¸¬…±¥ªŸz²¦€º®‡»¯ˆ¹­†º®‡À´Æ»“ɽ•Ã·Ä¸Ç»“ȼ”ɽ•Ë¿—ËÀ˜ÐÅžÙÏ©ÚÑ«ÙЫÛÒ­ÒǡĹ‘¾²‹¼°ˆ¾²‹Æº’ÍÁ™ÏÄœÑÆŸÎÜø‘½²Œ½´È¾—ÑÆžÔÊ¢ÒÇŸÏÄœÏĜ͚ÍÁ™ÏÛÏÄœÏÄœÎÃœÎÜ͛ʿ˜Ã¸‘¿´ŒÁµŽ¼±‹°¦¨y –t›‘p™n–Œk‘‡gŽ„eŒƒeˆm–¯ªœÃÀ·×ÕÑéèæóóòùùùüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýøø÷ëëé×ÖÎËȺÌȵÙÔ¼çáÇéãÇëåÊìåËçàÀéâÅëäÉâÚºÜÒ®ÛѬßÖ´áÙ¸ßÖ²ÚЫÚЭãÛºäܺßÖ±ÕË¥ÔʤÖ̦ÒÇ¡ÑÆžÔÊ£ÖÌ¥ÙϨÝÓ®ÞÕ°ÜÒ­Ôʣʿ˜Á¶Ž¾²‹¾³‹Á¶ŽÉ½•ÎÛÏÄœÑÆŸÏÄȽ•ËÁ™ÒÈ ÔÊ£ÔÊ£ÓÉ¡ÏĜ͛ÎÄÏÅžÎÛʾ—Ë¿—ÌÁ™ËÀ˜ÌÁ™ÐÄœÒÈ¡ÒÇ ÏÄœÏÅÌÀ™Å¹‘ÁµŽÂ¶ŽÆº“÷¾²Š·¬…³©ƒ±§ƒ²§¹­†ÁµÅ¹‘ĸÀ´ŒÀ´Œ¾²Š¶ªƒ¸¬…½±‰¸¬…±¥€¯£¸¬†¿³Œ½±Šº®‡¼±ŠÉ½–ΚÌÁ™Æ»“Ź‘ȼ”Ç»“ȼ”ʾ–ʾ–ÎÃœÖ̧ØϪ×ΨÓɢʿ˜Áµ½±Š¾²‹Â¶ŽÆº’Ë¿—ÏÄœÓÈ¢ÑǡȽ•Ç½•ÍšÑÇ ÒÇ ÏĜ͚ÍÁ™ÎÛÏÄœÎÛʾ—ÌÀ˜ÎšËÀ˜Ê¾–ÌÀ™ÑÆŸÐÆžÌÁ™ÎÄœÌšĹ‘ÁµÁµŽÅ¹‘ƺ’¶Ž¸­‡´©ƒ´¨‚³§¹­†ÁµÅ¹‘ĸÀ´Œ¿³‹½±‰·«„¹­†½±Š»¯‡°¥ªžzµª…¿³Œ¼°‰º®‡½±ŠÉ½–ΚÌÁ™Ç»“ȼ”ËÀ˜É½•É½•ÌÁ™ËÀ˜ÎÛÕʤÙϪÛÑ­×ΩÌÃœÁ¶Ž½±Š¼°ˆ¾²‹Åº’ÍšÏÄœÑÆŸÐŞ˿˜Ë¿˜ÍšÎÄœÑÆŸÒÈ ÏÃœËÀ˜ËÀ˜ÑÆžÒÈ¡ÎÛÍšÏĜΚÌÁ™ÌÁ™ÑÆŸÐƞ͚ÑÆŸÏÄŹ’¿´ŒÀ´Æº’ĸ¾²Š·«…·«„·¬…³¨ƒ¶¬†ÀµÅ¹’ƺ“ĸ¶Ž½±‰¶ª„¹­†½±Š»¯‡°¥©žz³§¼°ˆ»¯ˆ¹­†º®ˆÅ¹‘Ë¿˜ÌÁ™Æ»“ƺ’ȼ”Ç»“Ç»“ȼ”ɾ–ΛÔÊ£Öͦ×ͧÖͨÍܶŽ½±Š¾²‹ÁµŽÅ¹‘ɾ–ÎÛÑÆŸÐƞ˿—Ƚ•Ê¿—ÑÆŸÔÊ£ÓÉ¡ÏÄœÍÁ™ÎÛÐÅÏÅÍšÎÃœÏĜʾ—ɾ–ÌÁ™ÑÆŸÐÅžÌÁ™ÌÁšÇ¼•»°Š³¨ƒ­£©Ÿ}¥›yž”r•‹j‘‡g…eƒd„h”Œu šˆµ±¤ÍËÄÝÛ×êéçööõúúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüöööééæÖÔÍÊƸÑ͸àÚÂéãÉêäÈéãÅìåÊíçÍëäÇëãÆìåÉëäÈåÞ¿ÞÕ±Õ˦ÓÈ¢ØΩßÖ´âÙ¸ÜÓ¯ÞÔ°ßÕ°ØͧÓÉ¡ÑÆŸÍÁšÌÁ™ÐÅÓÈ¡ÔÊ£ÓÈ¡ÒÇ ÑÆŸÌÀ™Æº’÷Ǽ”Æ»“¶ź’Ë¿—ÍšÌÁ™ÍšÐÅžÑÆžÐÅÐÅÐÅÎÛǼ”ȼ”ÎÛÒÇ ÐŞʿ—Ƚ•Ê¾–ÍšÏÛÑÆžÔÊ¢ÓÉ¢ÑÇŸÓÈ¡ÒÈ ÎÛÎÃœÎÄœÌÀ™Ã·¹®‡²¨ƒ´ª…¹®ˆ¹­†·«„·«…¼°‰¾²Š»¯ˆ¿³ŒÂ¶Ž»¯‡»¯ˆ¿³ŒÂ¶Ž¿³‹¹­†±¦±¦€¹®‡Â·È¼•É¾–ÌÁ™ÎšÌÁ™Ê¿—ȼ”Ĺ‘Æ»“ÌÁ™ÍšÎÃœÐÆžÑÇŸÏÅËÀ˜Æº’¶ŽÃ·Å¹‘ƺ’Ç»“ʾ–ÍÁšÌÁšÍšÐŞ͛˿—ÎÛÏÄÍšǻ“ź’ʾ–ÐÅžÐŞ˿—ËÀ˜ÎÛΚÎÛÏÄÔÉ¢ÕˤÕˤÖͧÔˤÏÄœÎĜ͛ȼ”ÁµŽ¹®ˆ²¨ƒ´ª„º®‡¹­†·«„·«„¼°‰¾²Šº®‡¼°‰¾²‹¾²Š¿³‹À´Œ¾²‹½²Š»°Šµ«†²¨ƒ¶ª„¿´È¼•É¾–ÌÁ™ÎšÌÁ™Ë¿—ɽ•Å¹‘Ź‘ɽ•ËÀ˜ÏÄÓÉ¡ÑÆŸÎÃœÏÄɾ–·÷ĸĸĸǻ“ÌÁ™ÌÁ™ÌÀ˜ÍšÎÛÎÛÎÛÏÄœÎÛȼ”Ç»“ÍšÒÈ ÐƞǼ”ɾ–ÍÁ™Ë¿—ÌÀ˜ÏÄœÓÉ¢ÕˤÔÊ£ÕˤÓÉ¢ÎÃœÌÀ™ËÀ˜ËÀ˜Æ»“¼±‰°¤³§»¯ˆ¹®†¶«„¸¬†À´Â¶¼°Š½±‰¿³‹¾²Š¿³‹À´Œ¾²‹½²Š¼°Š·«…´¨‚¶ª„½±ŠÄ¸Ç»”ËÀ˜ÍšÌÁ™ÍÁ™ÌÁ™Æº’Ź‘ȼ”ËÀ˜ÏÄÓÉ¡ÐŞ͛ÎÄɾ–·÷Ź‘Ź‘÷ƺ’ÌÀ˜ÌÁ™ÌÀ˜ÍšÍšÍšÏÄœÐÅÎÛȼ”ź’ʾ—ÒÈ¡ÑȢȽ•ÌÁ™ÐÅžËÀ˜ËÀ˜ÏÃœÓÉ¢ÕˤÔÊ£ÔÊ£ÑÆŸËÀ™Ä¹“ÀµŽ¼°Š³§‚¦›w˜Žm•‹j•Šj’‡gƒdŒ‚cŒ„h—y¦ µ±¥ÇÄ»ÝÜ×ïïî÷÷÷ûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúööõççãÒÑÈÈŸÏ̸àÚÂéãÊéâÇåݾäÜ»æßÀêâÅëäÆëäÇêãÆæßÀáØ·ÜÒ­ÕË¥ÓÈ¢Ö̦ÜÓ¯ÞÕ±ØÏ©ÙÏ©ÚЪÕˤÓÈ¡ÑÇŸÎÛËÀ˜ÌÁ™ÎÛÎÃœÌÁ™ÌÀ˜ÌÀ˜Ë¿—ȼ”Ź‘Æ»“Æ»“ĸĸǻ“Ê¿—ɾ–Ë¿˜ÐŞ͛ɽ•È¼”ʾ–ɾ–ĸƺ’Í›ÑÆŸÐÅʾ–ȼ”ʾ–ÎÛÐÆžÓÈ¡ÕË£ÕÌ¥ÕˤÕÌ¥ÕË£ÓÈ¡Ñƞ͚ź’¾²‹¸­†¶«…¸­†¼°‰¾²‹¾²‹»¯‰¸­‡´©„±¥€¶ª„¼°‰¿³ŒÀ´Œ¿³Œ½±Š»¯ˆ¸¬…´¨‚µ©ƒ¼°‰Å¹‘ʾ–ɽ•Ê¾–ËÀ˜ÌÀ˜ÌÀ˜Ê¿—Ç»“ȼ”͚͚ÌÀ˜ÌÀ˜ÌÀ˜Ë¿—Ƚ•Æº’ĸÁµŽÂ¶ŽÄ¸Ä¸Åº’Ǽ”ȼ”Ë¿—ÐŞ͛ȼ•Åº’ɾ–ÌÀ™Å¹‘ĸ˿—ÐÅÏÄʾ–ȼ”ɾ–ÎÛÑÇ ÓÊ£ÓÉ¢ÖÌ¥ÚÑ«ÙЪ×ΧÔˤÑÇ ÌÁ™Ã·¼°‰¸­†¶«…¸­†»¯ˆ¼°ˆ¼°ˆ»¯ˆº®‡¶ª„±¥€´¨‚º®‡Â¶ŽÄ¸Â¶Ž¼°‰º®‡»¯ˆ·­†¶«…¹®‡Ã·Ê¾–ɽ•Ê¾–ËÀ˜ÌÀ˜ÌÀ˜Ê¿—Æ»“Ç»“ʾ–ɾ–Ê¿—ΛÌÀ˜É½•Ê¿—ȼ”Ź‘ĸĸĸ¶ŽÄ¸É¾–ɾ–ʾ–͚Κ˿—Æ»“ɾ–ÌÀ™Åº’ƺ’Í›ÑÆŸÎÜǻ“ƺ’Ƚ•ËÀ˜ÏÄœÒÇ ÓÈ¡ÖÌ¥ÚЪØΨ×ͦÖ̦ÑÆŸËÀ˜È¼”¶»¯ˆµ©ƒ¸¬†¾²‹½±Š¼°ˆ¼°ˆ¼°‰¸¬†²¦´¨‚º®‡Â¶ŽÄ¸Ã·¾²‹»°‰º¯‰¸­†¹­†¼°‰Ã·È¼”ȼ”ʾ–ËÀ˜ÌÀ˜ÍšÍšǼ”Ç»“Ê¿—ÌÀ˜ÍÁšÎÛÌÀ˜É½•Ê¿—ȼ”Ź‘ĸ÷ÁµÀ´ŒÃ·Ç»“ȼ”ʾ–͚Κ˿—Æ»“ɾ–ÌÀ™Å¹‘÷ɽ–ÒÇ ÒȡȽ•È¼•ËÀ˜ÌÀ˜ÏÄœÒÇ ÓÈ¡Õˤ×Χ×ͦ×ͦÕË¥ÌÁ›Ã·½²‹µª„«¡|¤™v •rœ‘o˜l•‹k’ˆhƒd‹‚e†m•xŸ™‡´°¤ÐÎÈçæãôôóúúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûôôôæåàÐÎÅÈĵÒκãßÈìæÍêåËäÝ¿ÞÖ³ÝÔ±àصåݼéáÂèáÃåÞ¾ÝÓ¯ØΧÖÌ¥Öͧ×ͧÖÌ¥ÕÌ¥ÕË¥ÖÌ¥ÖÌ¥ÕˤÒÈ ÓÈ¡ÔÉ¢ÐÅËÀ˜É¾–ȼ”ȼ”ȼ”ɽ•Ë¿—ÌÁ™Ê¿—Ç»“÷÷Ź‘ĸĸǻ“ȼ”ʾ–Íšɾ–ø¶ŽÄ¸Æº’÷ƺ’ÌÁ™ÏÅÎÛɽ–Ç»“ɽ•ÎÃœÑÇŸÔÉ¢ÖÌ¥ØϨØЪ×ΨÕˤÒÈ¡ÎÜȼ”À´¼°‰¼°‰½±Š¼°ˆ»¯ˆÂ¶ŽÅ¹‘¿´³ª…ª }¨z®¢}·«…¶ŽÂ¶Ž½±Š¶ª„³§´¨‚¹­‡¾²‹ÁµÄ¸Ç¼”ɽ•Ê¾–ʾ–ʾ–ÍÁ™ÎÛʾ—ʾ–ÌÁ™Ê¾–Ç»“ȼ”ɽ•Ê¾–ɽ•È¼”ĸ¾²‹½±ŠÀ´ŒÁµÂ¶ŽÄ¸Æº’ʾ–ÎÛÌÀ˜Æ»“À´Ã·È½•Å¹‘ƺ’ÌÁ™ÏÄœÎÛɽ•Å¹‘ƺ’ÎÛÓÉ¢ÕË¥ÓÉ¡×ͦÝÓ®ÚЪÖͦÕË¥ÐŞȽ•À´½±Š¼°‰½±Š¼°ˆº®‡¾²ŠÁµÀ´Œ·«…­¡|¨y¬¡|¶ª„÷Ź’ÁµŽ·«…³§µ©‚º®‡¿³‹ÁµÄ¸Ç»“ȼ”Ƚ•Ê¾–ʾ–ÍÁ™ÎÛʾ—ɾ–Ë¿—Æ»“ĸǻ“ɽ•É½•Ê¾–Ƚ•Æº’÷ÁµÁµÀ´ŒÃ·Ç»“Ç»“ɽ•ÍšÌÁ™È¼”ÀµÃ·È½•Å¹‘ƺ’ÌÁ™ÏÅÎÛȼ•Å¹‘ź’ÍÁ™ÑÆžÒÈ¡ÒÇ ×ͦÝÓ®ÙЪØΨÙϪÑƠȼ”ĸ‘À´½±Š½²Š¾²‹¾²‹¿³ŒÀ´À´Œ·«…®¢|¨y¬¡|¶ª„÷ƺ’¶»¯ˆ´©ƒ²¨ƒ¸­‡À´Å¹‘ƺ’Ç»“ȼ”Ƚ•Ê¾–ʾ–ÍÁ™ÎÛʾ—ɾ–ÌÀ˜Ê¾–Ǽ”ȼ”ɽ•É½•Ê¾–Ƚ•Æº’¶Ž¿³‹½±Š¾²‹ÁµÄ¸Æº’ɾ–ÌÁ™ÌÀ˜È¼”ÀµÃ·È½•Å¹‘ĸɽ•ÐÆŸÑǠʾ–Ź‘ź’ÍÁ™ÑÆžÒÈ¡ÒÇŸÕˤÙЫØϨÙϨÙЪÎܶ¾²‹·¬‡±§‚²§‚­¡}¥šv •r“qšo‘‡h‰a‡}`†}a‡e’Šu©¤•ÆúâáÜôôóúúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúóóòãâßÎËÁÉŵ×Ó½åáÉíéÑëåÌäÞ¾ßصÛÓ¯ÚѬà×µæÞ¾äܺà׳ÜÒ­×ΧÔÊ¢ÑÇŸÒÇ ÓÉ¢ÔÊ£ÐÅžÏÄœÔÉ¢ÔÉ¢ÒÈ ÓÉ¢ÕË£ÔÉ¢ÎÛɽ•Ç»“Ź‘÷ĸȽ•ÌÁ™Ë¿—ɽ•Æº’¶ŽÁµÃ·Ä¸Æº’Ç»“ȼ”ʾ–Íš˿—ź’¶ŽÁµÃ·Å¹‘Ç»“Ê¿—ÐÅÐŞɾ–Ź‘Ç»“ÐÅžÐÅžÏÄÕË¥ÙÑ«ÙЫ×ΨÒÈ¡ÍšÍÁ™ÌÁ™É¾–Æ»“øÁµ½±‰»¯ˆÂ¶Ž¿´Ž´ª…«¢~¦œy§œy±¥€»¯ˆ¿³Œ¾²Šº®‡·«„¶ªƒ·«„¼°‰Â¶ŽÄ¸Ä¸Å¹‘ËÀ˜ÍšÍšÍšÐÅžÑÇŸÌÁ™È¼”ɽ•Å¹‘÷ĸȽ•ÍšÌÁ™È¼”¶Ž¿³‹¿³‹À´ŒÀ´ŒÄ¸È½•É½•Ê¾–ÍšÌÀ˜È¼”ĸ‘Á¶ŽÀµÃ·Ç»“Ê¿—ÐÅÐŞʾ–Ç»“ɽ•ÑÆŸÐÆŸÏÅÒÈ¡×ͧÚѬØÏ©ÓÈ¡ÎĜ͚͚͛ɽ–ĸÁµ½±‰»¯ˆÀ´À´Œ·«…®¢~¨œy§œx®¢}¸¬…÷¿³Œ¸¬…¶ªƒ¶ªƒ·«„¼°‰Â¶ŽÄ¸Ä¸Ä¸Ç»“Ë¿—͚͚ÐÅžÑÇŸÌÁ™È¼”Ƚ•Ä¸ÁµÃ·È½•ÌÁ™ÍÁšÊ¿—Ç»“¶ŽÀ´ŒÀ´ŒÀ´ŒÃ·Æº’Ź‘ƺ’ÍÁ™ÎÛÌÁ™Åº’ÁµŽÀ´Ã·Ç»“Ê¿—ÐÅÐŞʾ–Ç»“Ç»“ÍšÎÛΛÒÈ ×ͧÚѬØÏ©ÓÉ¢ÏÄË¿˜É½•Ê¿—ʾ—Ǽ”¶¾²Š¼°ˆ¾²Š½±‰¶ª„®¢~¨œy§œx®¢}¸¬…֦Ž¼°ˆµ©ƒ´¨‚µª„¸¬†¿³‹Å¹‘Ź‘ĸǻ“Ë¿—͚͚ÐÅžÑÇŸÌÁ™È¼”ɽ•Æº’÷÷Ƚ•ÍšÍšʿ—Ç»“¶ŽÁµÂ¶ÁµÃ¸È½•É½•È½•Ê¿—ÌÀ˜ËÀ˜Åº’Á¶ŽÀµÃ·Æº’ɽ•ÐÅžÑÇŸË¿—Ç»“Ç»“͚͚ΛÒÈ ØÏ©ÝÓ¯ÙЪÕˤÓÈ¡ÌÁ™È¼•ËÁ™Ç¼•¿´Žº®‡³§­¢}ªžz¤™v›‘o‘‡gŒb‹‚c‰~`†|_‡}a‹„m˜‡½º°ÞÝÙððï÷÷÷üüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúóòòàßÚÌɽÊÅ´ÚÖÁéãÉìåËëæÌèâÅäܾãܼáÚ¸ÝÔ¯ÝÔ°ÝÔ²ÙΪÕˤÔÊ£ÖͦÓɢΚÌÁ™ÏÛÑÆŸÍšÌÀ™ÓÉ¢ÔÊ¢ÓÉ¡ÕË£ÕË£Ñǟʾ–ƺ’Ç»“Ź‘ź“ÊÀ™ÏÅŸÑǠʾ–Ź‘¶ŽÀ´ŒÀ´ŒÁµÅ¹‘ĸ‘ÁµÅº’ÌÁ™ÐÆžÐÅÌÀ™Ä¸ÁµÃ·Ä¸Æº’ȼ•ËÀ˜Ë¿˜Æº’ĸǻ“ÐÅÏÄÍ›ÓÈ¢Õ̦ÕË¥ÔÊ£ÏÄÊ¿—Ê¿—ÍÁ™ÏÛÍšɾ–¶¾²Š¼°‰¼±Š¸®‰´ª…³¨„²§‚±¥€²§´¨ƒ´©ƒ´¨ƒ¶ª„¼°ˆ¼°‰¹­†»¯‡À´Æº’øĸÌÁ™ÐÆžÑÇŸÏÅÑÆŸÑƞʾ–ƺ’Ç»“֦ŽÆ»“ÍÛÒÈ¡ÏĜȼ”ÁµÀ´ŒÀ´ŒÀ´ŒÂ¶ŽÂ·Á·Æ»”ÌÀ˜ÎÛÍš˿—ȼ”ĸÀ´Œ¾²‹ÁµÅ¹‘ʾ—ËÀ™È½•Æº’Ç»”ÎÛÏÄÏÄœÒÇ ÔÊ£ÕË¥ÔÊ£ÏÄÊ¿—Ê¿—ΚÑƟΛȼ”ĸÀ´Œ½±‰½±Šº®‡µ©‚³¨‚²§°¥€°¤²§¸®ˆ¶«…³§‚º®‡¼°‰¹­†»¯‡À´Æº’ø÷ɾ–ÎÛÑÆŸÏÅÑÆŸÑƞʾ–ƺ’Ç»“֦ŽÆ»“ÍÁšÑÆžÏĜʿ—Ź‘ÁµÀ´ŒÀ´ŒÂ¶ŽÂ¶Ž¿´ŒÂ·È½•ÍÛÐÆžÐŞʾ—¶¾²‹Â¶ŽÆº’ȼ•ËÀ˜ËÀ™È½•Æº’Ç»“ÍšÎÃœÏÄœÒÇ ÔÊ£ÕË¥ÔÊ£ÏÄʾ–ȼ”ɽ•ËÀ˜ÌÁ™Ê¿—Ź‘À´Œ¼°‰¼°‰¹­†µ©‚³¨‚²§°¥€°¤±¦·«†·«…¶ªƒ¸¬…»¯‡º®‡·«„»¯ˆÄ¸‘ø¶ŽÇ»“ÍšÑÇŸÒÇ ÒÈ ÑƟʾ–ƺ’Ç»“Ź‘÷Ź‘ÌÁšÒÈ¡ÐÅÊ¿—ĸ¿³‹À´ŒÃ·Â¶ŽÁµÃ·Ç¼”Ë¿—ËÀ˜ÍšÍšʾ–ĸÀ´Ã·Å¹‘ƺ’ʾ—ÌÁšÊ¿—ȼ”Ç»“Ë¿—ÍšÏÃœÒÇ ÖË¥ØΨÖË¥ÑÆŸÍÁ™Ê¾–Ë¿˜ÑÆžÏĜɾ–ÁµŽº®†³¨¯¤§yŸ”r™Žm–Œj•‹j„e‰`†|^‚x\ƒ{b•{´°¤ÎÌÆääáööõûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýùùùññðãâÞÎÌ¿ÌÇ´ÛØÅêçÒíèÑìæËèáÄæßÀèáÂêäÈéâÄâÙ¶ÚЪÓȢ͛ÍÁšÏÅÔʤÒÈ¡ËÀ˜É½•Ê¾—ÌÁ™Ê¾—Ë¿˜ÒÇ ÕÊ£ÕˤÕË£ÒÈ ÎÛǻ“Ź‘Ç»“ȼ”ÌÁšÔË¥×ΨÔ˥ɾ—ÁµŽ¼°‰½±‰¿³‹ÁµÄ¸Áµº®‡Â¶ÍšÓÉ¡ÔÊ¢ÑƟǼ”Ź‘ƺ’¶÷Ź‘ĸÁµŽÂ¶ŽÄ¸É½•ÎÛÏÄœÏÄœÐÆžÐÅžÏÄœÎÛÌÀ˜È¼”ȼ”ʾ–ÌÁ™ÌÁ™É¾–øÁµ¾²‹¶¬†µ«…»¯‰¿³ŒÀ´¼°‰³¨‚¬¡}« |®¢}³§‚¾²‹À´Œ»¯ˆº®‡¾²ŠÄ¸Ã·Å¹‘ÌÁ™ÒÇ ÔÉ¢ÑÇŸÏÄÍšǻ“ĸƺ’ĸŹ‘ÍšÓÉ£ÕË¥ÎĜǻ“Áµ¾²Š¿³‹ÁµÄ¸¿´·­ˆÀ¶ÌÁ™ÏÄÏĜΚʿ—Ç»“À´µ©ƒ³¨‚¼°‰ÁµÃ·Ä¹‘ĸĹ‘ɾ–ÏÄœÒÈ¡ÒÇŸÐÅžÏÄœÎÛÌÀ˜È¼”ȼ”ʾ–ÌÁ™Ê¾–Ç»“ƺ’ĸ¿³Œ¹­†¶ªƒ¸¬…½±ŠÀ´¼°‰²§« |®¥¯¥³§‚¾²‹À´Œ»¯ˆº®‡¾²ŠÄ¸Ã·Ä¹‘ËÀ˜ÑÇŸÔÉ¢ÑÇŸÐÅžÎÛǻ“ĸƺ’ĸŹ‘ÍÁšÒÇŸÒÈ¡ÎĜȼ”¶Ž¿³‹¿³‹ÁµÄ¸Áµº¯ˆÂ¶ËÀ˜ÏÄœÒÇ ÒÇ ÌÁ™Æº“¶ŽÁµÃ·Å¹‘ĸ÷ź’ĸŹ‘ÍÁ™ÑÆŸÓÈ¡ÒÇŸÐÅžÐÅÎÃœÌÀ˜È¼”ȼ”ȼ”Ƚ•È¼”Ç»“Ç»“Ź‘Áµ¼°‰¸¬†¸¬…¼°ŠÀ´Œ¼°‰³§‚« |¬¡}®£}³§½±ŠÁµ¿³‹¹­†»¯ˆÂ¶Ã·Â¶ŽÇ¼”ÎÃœÔÉ¢ÕË£ÓÈ¡ÎÛƺ’ĸǻ“Ç»“ȼ”ʾ—ÐÆ Õ̦ÐÅȽ•Áµº®‡»¯ˆÀ´ŒÀ´Œ½±‰º¯ˆÃ·ÌÀ™ÎÛÏÄœÏÄœÌÀ™È½•Æº’÷ÁµÁµÁµŽÄ¸‘Ƚ•Æ»“ĸɽ•ÎÃœÒÈ ÒÇŸÑÆžÐÅÏÄœÌÀ˜È½•Ç»“ɽ•ÍšÍÁšÉ¾–ƺ’À´¹®‡²¨ƒ«¡}§œy§œx¥šwž”q”‰i‹b‡~_ƒy\€wZ„{_‡q ›‹¼¹¯ââßôôóúúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøøøòòñáßÛÏËÁÌÇ´ÛÖ¾çåÐëìÝíìÛíéÐêãÇçß¿æÞ½æß¾æÞ½âÙ¶ÜÒ®ÕË¥ÎÜɾ–ȼ”ÌÁšÎÛÌÁ™É¾–ź’¶Ĺ‘ɽ•ÍšÑÇ ÕÊ£ÒÈ ÏÜ˿—Ê¿—ɽ•É½•Ë¿—ÐÅÖÌ¥ÕË¥ÐƟƺ“À´Œ½±‰¸¬…º®†¿³‹Â¶ŽÀ´Œ½±‰ÁµÈ½•ÐÄÒÇŸÑÆžÏÄËÀ™Æ»“À´Œ¾²ŠÁµ¾²‹½±‰À´ŒÄ¸É½•ÍšÏÄœÐÅÒÇ ÎÛǻ”ƺ’Ĺ‘ĸƺ’Ç»“ƺ’÷¶ĸŹ‘÷¼±Š·¬†·«„»¯‡¾²‹¿³‹»¯ˆ¶«„µªƒ³§³§º®‡À´ŒÁµ¿³‹¾²Š¾²‹Â¶ŽÆº’Ê¿—ÐÅžÕË£ÔÉ¢ÐÅË¿—Ç»“ƺ’ȼ”ƺ’ʾ–ÑÆŸÓÉ¢ÐƟȽ•Ã·¿³‹¹­†º®†¿³‹Â¶Ž¿³Œ»°Š¿µÈ½–ÐÆžÑÇŸÐÅÐÅÆ»”¶ª„¢–s¡–s²§€¹­†»¯ˆ¿³‹Ä¸‘ɾ–ÌÁ™ÏÄœÒÇŸÒÈ¡ÎÛǻ”ƺ’Ĺ‘ĸƺ’Ç»“ź’¶ŽÀ´Å¹’Ç»“ĸ¾²‹¹­†¹­†»¯ˆ¾²‹¾²Š¸¬…²¦²¨‚±¦€²§º®‡À´ŒÁµ¿³‹¾²Š¾²‹Â¶ŽÆº’Ê¿—ÐÅžÕË£ÔÉ¢ÑÇŸÎÛȽ•Æº’ȼ”ƺ’ʾ–ÑÆŸÒÈ ÐÅžÌÀ˜Åº’¿³‹¹­†º®†¿³‹Â¶ŽÂ¶ŽÀ´Â·È¼”Í›ÐÅžÑÆŸÑÆŸÎÛɽ•Ã·ÁµÂ¶Ž¾²‹½±ŠÂ¶ŽÄ¸Ç»“ÍšÐÅžÒÇŸÓÈ¡ÐÅË¿—Ǽ”Ĺ‘ĸƺ’ȼ”Ç»“÷À´Æº’ɽ•Ç¼”Á¶Ž¹­†µ©‚¶ª„»¯ˆ¾²‹»¯ˆ¶«„µªƒ³§²¦€¶ª„¾²ŠÃ·ÁµŽ¿³‹¾²‹¿³‹Â¶ŽÇ»“ÍÁšÒÇ ÕÊ£ÓÈ¡ÍšŹ‘÷ǻ“ȼ”Ë¿—ÐÅžÒÈ¡ÒÈ¡ÏĜȼ”¿³Œ·«„¸¬…¾²‹À´ŒÀ´ŒÀ´Â·È¼”ÍÛÑÇŸÓÉ¢ÓÉ£ÎÄȼ•Ã·À´Œ¿³Œ½±‰½±‰À´Ã·Æº’ËÀ˜ÏÄœÒÇŸÓÈ¡ÐÅË¿—Ǽ”Ĺ‘÷÷Ź‘ȼ•Ã·¾²‹Á¶ŽÅ¹‘Ĺ‘½²‹³©ƒ­¢}ªŸz¨y¤šx›‘p’ˆh†gŒ‚b‡}^…{]w[‚za‰u¶³¨ÔÓÏêéè÷÷÷üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüü÷÷÷ïîìÞÝ×ÍʾËƳÞØ¿êäÊìçÏìíÞíîÝíéÐêãÆçß¿åÝ»äÛ·áØ´ÞÕ°ÛÒ­ÖͧÎĜǻ“¶ŽÄ¸Æº’Ç»”Ǽ”Ź‘À´Â¶ŽÄ¸‘ĸȽ–͚͛ÍÛÏÄÑÆžÎÛʾ–Ë¿—ÎÛÐÅžÐÅžÌÁ™Ã·½±‰¹­†³§·«„¿³‹Ã¸Ä¸Á¶ŽÄ¹‘ɾ–ÎÛÎÛΛÐÅÎÜɽ–¶½±Š½±‰º®‡»¯ˆÂ¶ŽÇ»“ËÀ˜ÎÛÏÄœÏÄœÐŞʿ—¶ŽÀ´Œ¿³Œ¾²Š¿³‹À´Œ¿³Œ¼°‰»¯ˆÄ¸Æº’¶¿³‹º®‡·«…º®‡½±Š¾²Š¿³‹À´Œ½±Š¸¬…µ©‚¶ª„»¯ˆ¿³‹À´Œ¿³‹¾²‹À´Â¶ŽÃ·È½•ÍÛÎÃœÎÛÍšËÀ˜É¾–ȼ”ȼ”Ë¿—ÐÄÐÅÌÁ™Ã·½±‰¹­†²§µª„¿³‹Ã¸Ä¹‘÷ĸɽ–ÐÆžÐÅžÍÁšÊ¿˜¹®‰¤˜u˜ŽmŸ•r¯¤~¶ªƒ¸¬…¼°‰Æº“ÎÛÏÄœÏÄœÏÄœÐÅžËÀ™Ä¸¿³‹½±‰½±Š¿³‹À´Œ¿³Œ¼°‰»¯ˆÄ¸Ç»“ĸÀ´Œ¼°‰»¯ˆ½±‰¾²‹¿³‹¿³‹¼°‰·«„´¨‚³§µ©‚¹­‡¿³‹À´Œ¿³‹¿³‹Â¶ŽÄ¸‘÷Ǽ”ËÀ™ÎÃœÐÅžÐÅÍÁšÉ¾–ȼ”ȼ”Ë¿—ÐÄÐÅÍšƻ“À´¹®‡²§´©ƒ¼°‰ÁµÄ¸Å¹‘Ź‘ȼ”ÍšÎÛΛÐÅžÐŞΚǻ“¶Ž¿³‹¹­†¹­†ÁµÆº’ɽ•ÍšÎÛÎÛÑÇŸÏĜȽ•Ã·¿³Œ¾²Š¿³‹ÁµÃ·¿³‹¼°ˆÂ¶È½•É¾–¶º®‡·«„·«…º®ˆ¿³‹À´ŒÀ´Œ½±Š¸¬…´¨³§·¬†½²‹ÀµŽÁµ¿³‹¿³‹À´ŒÂ¶Ä¹‘ɽ–ÎÄœÐÅžÎÛɽ•Ç¼”ɾ–ɽ•Ë¿—ÐÄÐÅÎÛʿ—ĸ‘»°‰±¥€³§¼°‰ÁµÅ¹‘ƺ’Ź‘ƺ’ÍšÐÅžÑÇ ÓÉ¢ÐŞʿ—Ź‘÷Áµ»¯‡·«„»¯ˆÂ¶ŽÉ½•ÍšÎÛÎÛÑÆŸÎÛƺ’¶ŽÀ´Œ¿³Œ¼±Š¼±ŠÁ¶Ž¼°‰·«„½±ŠÅº’Ƚ•¿´¶«„³§°¤¯£­£¦œxŸ”r™Žm“ˆhŒƒc‡~`‚x[~uX€wZ‡g˜ˆ¼º²ÛÙÖïîíùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúõõôëëéÚØÑÉƹËÆ´Ü׿éãÊìåÌíçÍîêÔíéÑêãÆåݼäÜ»çß¿åܺßÖ²ÙЪ×ͦÓȢʿ—ø¿³‹À´Œ¿³‹¾²‹Ã¸Ç»“ƺ’¶Ž¿³‹½±‰¿´ŒÄ¸È¼”ÎÄœÔʤÔÊ£ÏĜɽ•É½•Ê¾—Ë¿—ÌÁ™ËÀ˜Áµ¹­†´¨³§€¸¬…À´Ç¼”ȼ”Ź‘ËÀ˜ÐƞΛ˿—ɽ•Ê¾–ËÀ˜ÌÀ˜È¼•ÁµŽ¼°ˆ¹­†½±ŠÅ¹’Ê¿—ÍÁ™ÏÄœÎÛÍšʿ—ƺ’¶ŽÁµ¾²Š»¯‡·«„·«…½±‰¼°ˆ¼°‰Ä¸Â¶Ž¼°ˆ¹­†º®‡¾²ŠÂ¶ŽÃ·½±Š½±Š½±Šº®†¶ªƒ´¨‚µ©ƒµ©ƒµ©ƒº®‡À´ŒÁµŽ½±Š¹­†¹®‡½±ŠÁµŽÂ¶È½–ÏÄÎÛ˿—ɽ•È½•É¾–Ë¿—ÌÁ™ËÀ˜Áµ¹­†³¨°¥µ«…À´Ç¼”ʾ–Ƚ•Ê¿—ÍšÎÛËÀ˜Æº’»°‰¦šw”Šj”s­£µª„¸¬†»¯ˆÀ´Ç¼”ÍšÎÛÎÛÍšʿ—Ƚ•Æº’¿³Œº®‡¹­†·«„·«…½±‰¼°ˆ¼°‰Ä¸Å¹‘À´Œ»¯ˆº®‡¾²ŠÃ·Ä¸Â¶ŽÃ·À´µ©ƒ³§´©‚³§³§¶ª„¼°‰Â¶ŽÄ¸Â¶¿³‹¼°ˆ¼°‰¾³‹Â¶Ê¿˜ÑÆŸÏĜ˿—ɽ•È½•É¾–Ë¿—ÌÁ™ËÀ˜Â·º®‡³¨¯¥€³¨ƒ»¯‰Â¶Å¹‘ĸȽ•ÍšÎšËÀ˜É½•Ê¾–ÌÀ˜ÍÁ™É¾–ĸ¿³Œ¸¬…¹­†Ä¸Ç»“ɽ•ÍšÌÁ™Ê¿—ÌÁ™ÌÀ™È¼•Ã·¾²‹»¯‡·«„¸¬…¾²Š¼°‰º®‡À´ŒÄ¸‘Ź‘¾²Šº®‡¾²ŠÂ¶ŽÃ·ÁµŽÀ´Œ¾²‹º®†·«„¶ªƒ¶ªƒ´©ƒ³©„¸­‡¿³ŒÄ¸Â¶Ž¾²Š»¯ˆ»¯ˆ¾³‹Æº“ËÀ˜ÍšÍšÌÁ™ÌÁ™Ê¿—ʾ–Ë¿—ÌÁ™ËÀ˜Ä¸½±Š·«„®£~±¥€º®ˆÂ¶Ç»“Ç»“ȼ”ʾ–ÍšÌÀ˜Ê¾–Ê¿—ÌÁ™ÌÁ™É¾–Ç»“ĸ»¯ˆ·«„¿³‹Å¹‘ɽ•ÍÁ™ÌÀ˜Ê¿—ÌÁ™É¾–ĸÁµÀ´Œ¾²‹¶¬†´ª…¼±Š¼°ˆ¹­†¿³‹Ã¸Ã¸·¬‡±§‚¶«„º®ˆ»¯ˆ·«…¯¥€§zœ’p–Œk“ˆgŽ…e‡~`xZ‚y[uYya•~°­£ÍÊÅåäâööõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøòòñçæã×ÕÍÈĵÎɶÞÙÁêäÌëåÌëåÊìæÊìæÌêãÆåݼßÖ±ßÖ²äܹäÛ¸ßÖ²ÙЪÓÉ¢ÌÁšÅ¹‘¾²Š¹­†º®‡¼°ˆ¾²ŠÄ¸È¼”ƺ’¾²‹¹­†¼°‰ÁµÄ¸Ä¸É¾–ÎÄÏÜʿ—ƺ’Ƚ•ÌÀ˜ÌÀ˜ËÀ˜Ç»”º¯ˆ¶ªƒ¶ªƒ¸¬…¾²‹Ã¸Åº’Ǽ”ɾ–ÎÛÏĜȽ•Å¹‘Ĺ‘Ç»“ɽ•Ê¿—ɽ•Ä¸¾²‹½±‰ÁµŽÉ¾–ɾ–ɽ•ÍšËÀ˜Ç»“ĸź’Ç»“÷¿³‹½±‰»¯‡º®‡»¯ˆ¼°ˆ¾²‹Å¹‘Áµ¹­†µ©ƒ¸¬…¿³ŒÅ¹‘ƺ’¶Ž¾²‹º®‡´¨‚¬¡|¨œx«Ÿ{­¢}®¤³¨‚¸¬…¸¬†³§®£~°¦³¨ƒ¶ª„µ«…¼±‹Ä¸‘ƺ“Ç»“ȼ”Ê¿—ÌÀ˜ÌÀ˜ËÀ˜Ç»”º¯ˆ¶ªƒµ©ƒ¶«…¼±‹Ã·Åº’Ç»“ɽ•ÌÀ˜Îš˿˜Å¹’¼°‰¯¤šnƒd¢˜u¶«…»°ˆ½±‰À´Æ»“Ǽ”Ǽ”ʾ–Ë¿—ʾ–ƺ’Ç»“ɽ•Â·½±‰¼°‰»¯‡º®‡»¯ˆ¼°ˆ¾²‹Å¹‘¶¼°ˆ¶ª„¶ª„¼°ˆÃ·Ç»“Ź‘¶Ž¼°‰³§°¥€±§´¨‚¶ª„º®‡À´Ä¸Ã·¿³‹»¯‡¹­…º®‡½±‰À´ŒÆº“ÌÀ™É¾–Ç»“ȼ”Ê¿—ÌÀ˜ÌÀ˜ËÀ˜È¼”¾²‹¶ªƒ²¦€µª„»°‰ÁµÅ¹’Ç»“ƺ’Ë¿—ΚËÀ˜Ç»“Ź‘Ç»“ɽ•Ê¿—ɽ•Å¹‘À´Œ¼°ˆ¾³ŒÈ½•Ç¼”ƺ’ÌÁ™ÌÀ˜Ç¼”ĸ‘ƺ“ɾ–Ĺ‘¿³‹½±‰»¯‡º®‡»¯‡º®†»¯‡ÁµŽÂ¶¾²Š·«„¸¬…¿³ŒÅ¹‘Ç»“Ź‘¶Ž¾²Š¶ªƒ²§±§³§´©ƒ¸­‡½²‹Ã·Æº’Áµ»¯ˆ¹­…º®‡½±ŠÂ¶ŽÇ»“Ê¿—Ë¿—ɾ–ȼ”ʾ–ÌÀ˜ÌÀ˜ËÀ˜È¼”¾²‹¸¬…µ©ƒ·¬…¼°‰ÁµŽÅ¹’ƺ’ź’Ê¿˜ÎÃœËÀ˜Ç»“Ź‘Ç»“ËÀ˜Íšʿ—ƺ’÷½±Š¾²ŠÆº’Ƚ•È½•Ê¿—ɾ–Ç»”ĸ‘Ź’Ǽ”ƺ’¶Ž¼°‰¸­‡¸­‡º®‡º®†»¯‡ÁµŽÂ¶½±Š´©ƒ²§¸¬…¿³ŒÂ¶Ž½±Š·¬†­£~ž“q™Žm˜l“‰iƒc‡~_†|^‚xZ|sW}t\‹…s¥¡•¿½¶ÞÝÚöööýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøøøîíëâáÜÔÑÈÉƶÐÌ·âÞÈìèÑïêÓîèÏëäÈéâÆêãÆèáÂãÛ¸ÜÒ¬ÚÑ«ßÖ±ßÖ²ÞÕ°ÙÑ«Òȡɾ–Áµ¸­†²§´¨‚º®‡¿³‹Â¶ŽÄ¸‘ĸ¼°‰¸¬…¾²ŠÃ·Ä¸À´ŒÁµÄ¸‘Ç»“Ç»“Æ»“ÌÀ™ÏĜ͚ʿ—Ź’º®ˆ¹­†¼°‰À´Ä¸Æº’ƺ’Ç»“ËÀ˜ÌÁ™É¾–ĸ÷Ź‘Ç»“Ç»“ƺ’ȼ”ƺ“ĸ¶ŽÄ¸Ç¼”ź’ź’ÌÀ˜É¾–øÁµÆº’ËÀ˜Ç»“¶ŽÀ´ŒÁµÀ´Œ¼°ˆ»¯ˆ¾²ŠÅ¹‘÷¼°‰¶ªƒ¸¬…¿³‹Å¹‘ȼ”ȼ•Â·»¯ˆ±¥ •r’‡g’‡h—mœ’qŸ•r •rŸ”r™m–Œl›’qž”sž”r›’q –tªŸ{´¨ƒ¾²‹Å¹‘ËÀ˜ÎÛÍÁ™Ê¿—Ź’º®ˆ¸¬…»¯ˆ¿³ŒÄ¸Æº’Ź‘Ź‘ɽ•É¾–ɾ–ɽ•ÁµŽµ©‚¡–t’ˆh‘‡g©žz½±ŠÂ·Â¶ŽÄ¸Ç»”ź’Ĺ‘Ƚ•É½•Ç»“ÁµŽÅ¹’ËÀ˜Ç»“ÁµÀ´ŒÁµÀ´Œ¼°ˆ»¯ˆ¾²ŠÄ¸‘¶»¯‡·«„·«„»¯ˆÂ¶È¼”ȼ•Â·¼°‰µ©ƒ¯¤¬¢~²§‚¸­†½²ŠÃ·Ã·¿³‹»¯‡¹­…¹­†¼°ˆ¿³‹¿³‹Â¶ŽÅ¹‘÷ĸɾ–ÏÃœÐŞ͚ɾ–Ź‘¿³Œ¹®‡·«…¿³‹Ä¸Æº’ȼ”ʾ–ʾ–ɾ–ɾ–ȼ”Ź‘ĸȼ”ȼ”Ç»“ƺ’Ź‘ĸ¶ŽÄ¸È½•Åº’ĸÌÀ˜ÌÀ˜Æº“¿³ŒÃ·Ë¿—Ç»“¶ŽÀ´ŒÁµÀ´Œ»¯ˆ¸¬…¹­†ÁµŽÁµ»¯‡·«„¸¬…¾²ŠÄ¸È¼”Ƚ•Æº’¿³Œ·«„¯¥«¢}­£~´©ƒ½±‰Â¶ŽÅ¹‘÷¾²‹º®‡¹­†¼°ˆ¿³‹À´ŒÂ¶ŽÄ¸Æº’Ź‘Ź‘ÌÀ™ÐŞ͚ʿ—Æ»“¿´Œ¹®‡¸­†Â·Ç»”ƺ’Ç»“Ç»“ƺ’ËÀ˜ÍÛɽ–Ź‘ĸƺ’ɾ–ʾ–Ǽ”Ź‘֦ŽÄ¸É½•È½•Ç»“ɽ•É½•Æº’¿³ŒÂ¶Ê¿—Ë¿—Ź‘½±Š¾²‹¿³Œ»¯ˆ¸¬…¹­†ÁµŽÁµ»¯‡¶«„µªƒ¹­†ÁµŽÅ¹‘¶¿³‹·«„¥švž“p™Žm•Ši’ˆg†fƒc‡}_€vYzqUyqY†n™•ˆ·µ­äãá÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý÷÷öëêèÝÛÖÏÌÁËÈ·ÓϺåáÊëçÏíéÒðëÔîéÑéãÆæÞ¾éâÄêãÆçàÁÞÔ°ÙÏ©ÚÒ¬ÙЪØϨØΩÒȢ˿˜Á¶Ž·­†¯¥±¦¸¬…¾²Š½±Š½±Š¿³Œ½±Š½±‰¿³‹ÁµÁµ¼°‰º®‡¼°‰Â¶È½•ÌÁšÑÆŸÑÆŸËÀ˜È½•Ç»”Ź‘ĸ‘ƺ’ƺ“Ç»“ȼ”ʾ—ËÀ˜É½•Åº’ĸƻ“ɾ–ËÀ˜É½•Å¹‘÷ƺ’ɾ–Ê¿—Ƚ•Ã¸¿³ŒÂ¶ŽÇ»“ÌÁ™Ê¿—ƺ’÷ƺ’ÌÁ™Ê¾–Ź‘÷ĸĸ¿³‹¸¬…·«…÷ǻ“ĸ‘½±Š»°ˆÁµÅ¹‘ɾ–ËÀ˜È¼•ÁµŽ²¦€™ŽluYtkRvnT~uYvZ€vZ~tYvmStkQ}sX€w[~uYwoU|sX‹bœ‘o­¢}º¯‰Æ»“ÌÀ˜Ê¾—Ƚ•Ç»“ĸÁ¶ŽÁµÅ¹‘Ç»“Ç»“ƺ’ɽ•Ê¿—ĸ‘ÁµŽÈ½•Â·°¥€‘‡g…f •s´¨ƒÄ¸‘ɾ–Ƚ•Ã¸¿³ŒÂ¶ŽÇ»“ËÀ˜Ê¿—ƺ“¿³‹Â·ÌÀ™Ê¾–Ź‘÷ĸĸ¿³‹¹­†·«…¶ŽÄ¸‘Áµ¿³Œ¿³‹ÁµÅ¹‘ɾ–ËÀ˜È½•Ã·¾²Š³¨‚« |¬£~³©ƒº®‡¿³‹¿³‹º®‡¸¬…·¬…¹­†½±‰¿³‹½±‰½±ŠÀ´Œ¿³‹Ä¹‘ÍÁšÓÉ£ÓÉ£ËÀ™Æº’Ź‘Ǽ”Ĺ‘¶ŽÈ¼”ȼ”ĸȽ•ÍÁ™ËÀ˜Ä¸‘À´Åº’Ç»“ȼ”ËÀ˜È¼”֦ŽÆº’ʾ–Ƚ•Å¹‘¶ŽÁµÃ·ËÀ˜ËÀ˜Ç»“ÁµŽÅº’ÌÁ™Ê¾–Ź‘÷ĸĸ¿³Œ¸¬…µ©‚¾²ŠÁµÀµ¿³Œ½±Š½±ŠÃ·É½–Ë¿—ɽ•Å¹‘¾²Š³¨‚ª |«¢~²§‚¹®‡¿³‹¿³‹¼°ˆ¼°ˆ»¯ˆº®†¼°‰À´ŒÀ´Œ¾²Š¼°‰¾²‹Â·È¼”ÐÆ ÓÉ£ÌÁ™È½•È¼•É¾–Ĺ‘ÁµŽÈ½•È½•Ã·Å¹‘ɾ–Ê¿—Ǽ”Ź’Ç»“Ç»“Ç»“ȼ”ƺ’֦ŽÄ¸Æº’Ç»“ź’·¶ŽÄ¸Ê¿—Ê¿—Ç»“ÁµŽÃ·É½•ÌÁ™É¾–÷ĸĸ¿³Œ¸¬…µ©‚½±ŠÁµÀ´¿³Œ½±Š¼°‰Â¶Ç»“ƺ’Ź‘Áµµ©ƒ¨œx’p™Žm˜l–‹j‘‡f‰`wZ{qUulRvnW~xd‘~»¸±æåãøø÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýõõóëêèÝÜÖÐÍÂÍÈ·ØÕÀæãÎïìØðíÙðì×ïêÑêäÈæß¾äܺéáÃìæÊëäÈâÚ¸ÛÒ­ÚÑ«ÖÌ¥ÒÈ¡ÐÆŸÌÁšÆ»“Áµ»°‰·¬†¸¬†»¯ˆ¿³‹¾²Š»¯‡¸¬…´©ƒµª„¾²ŠÂ¶ŽÃ·Àµ¹®ˆ´ª„¸­‡Ã·ÍšÑÆŸÏÄʾ—ʾ–ʾ–ƺ’ȼ”Ê¿—ɽ•Å¹‘¶ǻ”Ê¿—Ǽ”ĸ¶ŽÇ»“ÌÀ˜Íšʾ–ĸ¶ŽÅ¹‘ɽ•Ê¾–Ç»“¶Ž¾²‹Â¶Ç»“Ǽ”ȼ”Ç»“÷ƺ’͚͚ʿ—ȼ”ź’¶Ž½±‰¶ªƒµ©ƒÃ·ËÀ˜Íšȼ•Åº’Ǽ”ȼ”ȼ”Ç»“ø¿³Œ·¬…¦›w’ˆh‡}`‡~a„eŒƒd‰~a„z^vZ€vZ‰a†g’ˆh‹‚c‡~`‡}_‰a…f›p²§‚ĸ‘Ç»”ȼ”Ç»“Ź‘ź’Ǽ”ȼ”Ź‘¶ŽÅ¹‘ɽ•É¾–÷¿´ŒÄ¹‘Á¶Ž±¥€‰€bŒƒd§z»¯‰Ç»“ɾ–Ç»“¶Ž¾²‹Â¶Ç»“Ǽ”ȼ”ƺ’À´ŒÄ¸‘ÍÁ™ÍšÌÀ˜Ë¿˜Ç¼”÷¿´Œ·¬†²¨ƒ¾³ŒÇ¼”Ê¿—ɾ–ȼ”ȼ”ȼ”ȼ”Ǽ”ź’÷À´Œ»¯‰¶«…³¨ƒ¶«…»°ˆ¿³‹¼°‰¶ªƒ²¨´©ƒ»¯ˆÀ´ŒÃ·Áµ½±Š¸­†¶¬†½²ŒÊ¾—ÑÆ ÒÇ¡ÍÁšÉ¾–ȼ”Ǽ”Ǽ”Ƚ•Ê¿—Ç»“¶ŽÅ¹‘ɽ•É¾–÷¿³‹Ã·È¼”Ë¿—Ë¿—Æ»“¶ŽÃ·Ç»“ɾ–Ç»“¶Ž¾²ŠÀ´ŒÄ¸Ç»“ȼ”Ç»“÷ƺ’͚͚ÌÀ˜Ë¿˜Ç¼”ĸ¶·«…°¤¾²‹Ç¼”Ê¿—ɽ–Æ»“Ź’ƺ“Æ»“ĸ‘ĸ÷À´Œ»¯‰¶«…³¨ƒ¶«…»°ˆ¿³‹¼°‰¶ªƒ³§³¨‚¸¬…¾²‹Ã·Ã·½±‰¶ªƒ´ª„¼²‹Ç¼”ÏÅžÒÇ¡ÍÁšÉ¾–ȼ”Ǽ”ƺ’ƺ’ɽ•Å¹’¿³ŒÃ·É½•Ê¾–Ź‘ÁµÄ¸È¼”ËÀ˜ËÀ˜Æ»“¶ŽÃ·Æº’Ç»“ȼ”ĸ‘¿³‹À´ŒÄ¸Ç»“ȼ”Ç»“÷Ĺ‘Ë¿—ÎÛÎÛËÀ˜Ç¼”ĸ¶·«…°¤»¯ˆÅ¹’ɾ—ɽ–Æ»“Ź’ƺ“Ç»“ĸ¶Ž¿³‹¹­†²§«Ÿ{£—t •sž•r—k‹b€wZwnSriPqiQtmW{hš–‰ÂÀ¹çæåøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøø÷èçäÜÛÕÒÏÅÍȸ×Ó½æåÓííÞóñãõôæóðÝîéÏæßÀãÚ¸ãÚ¸èáÂëåÊêäÈäÜ»ÝÕ°ÙЫÔÉ£ÎÛʾ–Ź‘Áµ¾²Š½±Š¾²ŠÀ´ŒÁµÁµ¾²‹¹­†²¦€«Ÿ{­¡}¼°‰Ã·Å¹‘ƺ’»±Š¯¥¯¤º¯ˆÈ½–ÌÁ™ÌÁ™Ê¾–ËÀ˜ËÀ˜Æº’ȼ”ÌÀ˜É¾–¶Ž½±ŠÃ·È¼”Ǽ”ƺ’ƺ’ɽ•ÌÁ™Íšȼ”ĸ÷ƺ’Ç»“Ź‘¶Ž¿³‹¿³‹Â¶ŽÄ¸Â¶ŽÄ¸Å¹‘÷ƺ’ËÀ˜ÎšÏÄœÎÛȼ”Áµ¼°‰¶ªƒµ©ƒÃ·ÍÁšÐÆžÏÃœÌÁ™ÌÁ™Ê¾–ƺ’¶Ž½±‰º®‡»¯ˆµ©ƒ­¢}¨y¨ž{ª¡}¦œy ”ršn˜lšn£˜u­¡}³§¯¤~¢—t‘‡hx[xnT}sX–Œk²§‚Á¶ŽÇ»“Ç»“ƺ’Ƚ•ËÀ˜É½•Â¶Ž½±ŠÃ¸É½•È¼”ƺ’ĸ‘֦Ž²¦‡}`‹‚d© }¾³Ç»“Ź‘¶Ž¿³‹¿³‹ÁµÃ·Â¶ŽÄ¸Æº’÷ź’ËÀ˜ÍšÏÅÒÇ Ê¿—÷À´·­‡²¨„¾²ŒÉ¾–ÏÅÏÄœÌÁ™ÌÁ™Ë¿—Ç»“¶ŽÁµÀ´Œ¾²ŠÀ´ŒÁµ»°‰¼°‰¿³Œ¿³‹¹­†²¦€­£~¯¥»¯‰ÁµŽÄ¹‘ƺ“¾²‹²§­£µ«†Ä¸‘Ë¿—ÍšÎÛΚËÀ˜Æº’ȼ”ËÀ˜É¾–Ĺ‘À´Â¶ŽÅº’Ç»“ƺ’ĸŹ’ʾ—ÌÁ™È¼”ĸ÷Ź‘ȼ”ƺ’¶Ž½±Š»¯‡¾²‹Â·ÁµŽÄ¸Å¹‘¶ŽÅ¹‘ËÀ˜ÍšÏÄÑÆŸÊ¿˜Å¹‘Ź‘¸¬†°¤À´ÌÁ™ÑÆŸÏÄœÌÁ™ÌÁ™Ë¿—Ź’¾²‹¾²ŠÀ´Œ¾²ŠÀ´ŒÁµ»°‰¼±‰Àµ¿³‹¹­†±¦€« |« |µ©‚¾²ŠÄ¸‘Ç»“¿³‹³§­£´«†Â·É¾–͚ΛËÀ˜È¼”ƺ’ƺ“Ǽ”Ƚ•Ã·½±‰Â¶È¼”Æ»“Ĺ‘÷ź’ʾ—ÍšÌÁ™Ç¼”ĸŹ‘Ç»“Ç»“ƺ’¶Ž¼°‰¿³ŒÂ·ÁµŽÄ¸Å¹‘¶ŽÅ¹‘Ë¿—ÍšÏÅÑÆŸÊ¿˜Å¹‘Ź‘¹­‡°¤º®ˆÈ¼•ÐÆžÐÅÍšËÀ˜Ê¾–Ç»“÷¾²‹º®‡¸¬…¸¬†¶«…­¡|ªŸ{¨Ÿ|“q…eƒy\ulRlcLjbKnfOunZ‚|kœ—‹ÆýîîìüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúíìêÚØÒÑÍÂÑͼÛ×ÀèäÌíêÕðìØóñß÷õéõòâðêÒêãÅãÛºàصæßÀåÞ¾ß׶ÜÔ°ÚÑ«ÖͦÒÈ¡Íšȼ”÷¾²Š·«„·«„»¯ˆÂ¶Æº’÷»¯ˆ³§°¤ªŸ{¬¡}»¯‡À´ŒÂ¶ŽÅ¹‘½±‹±¦€« {²§À´Ä¸Æº’Ê¿—ËÀ˜Ê¿—Ë¿˜Ê¿—ɾ–Ǽ”ÁµŽ¼°‰Â¶È¼”ɽ–ÍšÐÅÎÛÎÛÍÁ™Åº’ĸƺ’Ç»“÷½±Š»¯‡º®‡º®‡»¯‡½±‰¿³‹À´ŒÂ¶ŽÅ¹‘Ź‘ƺ’Ë¿—ÐÆžÒÇ ÍÁšÇ»“÷»¯‰·«…÷ɽ–Ê¿—ʾ—ʾ–ɾ–Ƚ•Æº’Áµ¼°ˆ·«„µ©‚µ©‚·«…¼±Š¿´¾²Œµ©„­¡|¬ {©Ÿ{ª }²§¸¬†½±ŠÀ´Œµª…£šwŽ…f~tXwnT|sX’ˆi±¥À´È¼•ÎÛÍšʿ—Ǽ”ÁµŽ½±ŠÅº’ËÀ˜Ê¾—ÍšÏÄËÀ˜Å¹‘²¦‡}`ƒd­¢}À´Ã·¾²Š»¯ˆº®‡¹­†¸¬…¸¬†¿³‹Ã·Ç»“ƺ’Ź‘Ź‘Ç»“ÎÛÒÈ Í›ǻ”Ź’¾³‹º¯ˆÃ·È½•Ê¾—ʾ—ʾ–ʾ–ÌÀ˜É¾–·À´Œ½±‰¶ªƒ·«„»¯ˆ¾²ŠÁµÂ¶Žº®ˆ³§°¥« |¬¡}¶ª„º®‡¾²‹Ç¼”À´²§ªŸ{±¦¾²‹Â·Æ»“ÌÀ˜ÌÀ˜Ê¾–Ê¿—Ê¿—ɾ–Ǽ”¶¾²‹Å¹’Ê¿—ʾ–ÍšÐÆžÐÆžÏÅËÀ™Â¶ÁµŽÆº’ȼ”Ź‘¶Ž½±Šº®†¸¬…·«„¸¬†¾²ŠÁµÂ¶ŽÁµÂ¶ŽÄ¹‘Ç»“ÌÀ˜ÏÄœÎÛËÀ˜È¼”¾³Œ¹­†À´È½•ÍšÌÀ˜Ê¾–ʾ–ÌÀ˜É½•Áµ¿³‹½±‰¶ªƒ·«„»¯ˆ¾²ŠÃ¸Æº“½±Š³§°¥­£~¬¢±¦€·«„¾²ŠÇ¼”·¶ª„¬¡}®£º®ˆÀ´Æ»“ËÀ˜Ë¿—ʾ—ÎÄœÌÁšÉ¾–Ë¿—Ĺ‘¼±‰Â¶ŽÆº’ĸȼ”ÍšÏÄÏÅÍšǻ“Ź‘ƺ’ȼ”Ź‘¶Ž¾²‹¼°‰½±‰º®‡¸¬†¾²ŠÀ´ŒÂ¶ŽÁµÂ¶ŽÄ¹‘Ç»“ÌÀ˜ÏÄœÎÛËÀ˜È¼•Á¶Ž»¯‰¼°‰Ä¹‘Í›ÏĜ˿—Æ»“ɾ–Ë¿—Ç»“Á¶Ž¼°‰´¨³§€´¨´¨¶ª„µ©ƒ¤™u”‰i‚cuYqiOh`Hg_HjcLtmY‰ƒsª¦œ×ÕÒôôôüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóóñàßÛÏÍÃÐͽÝÙÃêçÓíëØïêÔðêÓðïÞòôìòòãðëÔîçÍèáÃãÛ»âÛºÜÓ°ÔË¥ÔˤÔʤÓÉ¡ÒÈ Í›÷½±‰¸¬…µ©‚¶ªƒº®‡ÁµÃ·À´»¯ˆ¸¬†¹­‡µ©ƒ³§‚·«…¹­†º®‡¿³‹½±Š·«…³§¶«…¾²‹À´ŒÀ´Â·È½•ÌÁ™Ç»”ȼ”ɽ–ø¿³‹¾²‹Åº’Ë¿—ÌÀ˜ÎÛÏÄÏĜΚËÀ˜È½•Ê¿—ÌÀ™Æº’¿³‹¼°ˆ¹­†·«„¶ªƒ¸¬…»¯ˆ¼°‰¼°‰¾²‹Å¹‘ƺ’Ź‘ɽ•ÎÛÑÇŸÐÅžÎÛ˿˜Æ»“ĸ‘Ƚ•Æ»“÷ƺ’ȼ”ȼ”ʾ–ȼ”Áµº®‡µ©‚´¨´¨¶ªƒ½±Š¿³Œ½±Šº®†¸¬…¹®‡·¬†´ª„´©ƒ·«„º®‡¾³‹»°Š²¨ƒ¦œy˜ŽmŒƒe…|_ˆ`˜m®¢~À´Ç¼•Ê¿—ɾ–ø¿³‹¾²‹Æº’ËÀ˜ÌÀ˜ÎÛÏÄœËÀ˜À´« |‹c–Œk¶ª„ÁµÁµ½±‰¼°ˆº®†¶ªƒ¶ªƒ¸¬…¼°ˆ¿³‹Â¶ŽÆº’ƺ’Ź‘ƺ’ÌÀ™ÑÆŸÐÅžÎÛËÀ˜Ç»“Ź’ɽ•Æ»“÷ƺ’ȼ”ɽ•ÌÁ™Ê¿—¶Ž¼°ˆ¸¬…²¦€²¦€¶ªƒ½±‰¿³Œ¼°‰·«„¶ª„¹­†µ©ƒ²¦€´¨´¨‚¶«„¾²‹½±Š·«…³§µ©ƒ»¯ˆ¼°‰¾²ŠÁµŽÅ¹‘Ç»”ź’Æ»“Ç»“Ź‘Áµ¿³‹Æº’ËÀ˜ÌÀ˜ÎÛÏÅÏÅÎÛʿ—ź’ȼ•ÌÁ™Ê¾–ĸ¾²Š¼°ˆº®†¶ªƒ¶ªƒ¹­…¾²Š¾²‹¾²ŠÂ¶ŽÄ¸Ä¸Æº’Ê¿—ÎÛÑÆŸÑÆŸÎÜȽ•Å¹’ȼ•Æ»“øƺ’ȼ”ɽ•ÌÁ™ÌÀ˜Ä¹‘¾²‹¸¬…²¦€²¦€¶ªƒ½±‰ÁµÀ´»¯ˆ·«„·«…·¬‡·¬†´©ƒ´¨‚¶«„¾²‹¿³Œº¯‡´¨‚µ©ƒº®‡¼°‰¿³‹Ã¸Æ»“Ƚ•ËÀ˜Ê¿—Ƚ•È¼”¶Ž¼°‰Â¶ŽÈ¼”ȼ”ËÀ˜ÏÄœÏÄÎÛËÀ˜È½•É½•Ê¿—ɽ•Ä¸¾²Š¼°ˆ»¯‡¹­†¸¬…¸¬…»¯ˆ¼°‰¾²ŠÂ¶ŽÄ¸Ä¸Æº’Ê¿—ÎÛÑÆŸÑÆŸÏÜ˿—Ǽ”ƺ“ø‘ø‘Ƚ•É½•Æº’Ƚ•Ê¿—Ç»”¿´¶¬…±¦€°¤~±¥¶ªƒ¸¬…´©ƒ©žzž“q˜lŽ„ex\tkQjcKf^HjbMzsb‹}±¯¦ÚÚÖððïûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøééæÔÒÊÍÊ»ÚÖÃèäÐìîßíïáñíÙòíØñðãîõðïñäðëÔïéÑìæËçàÁÜÔ±ÓʤÎÄÏÄÐÅÐÅÒÇ ÌÁš¾²‹¸¬…¶ªƒ¶ªƒ¶ª„·¬…½±Š¾²Š¼°‰¾²ŠÁµÂ¶Ž¿³Œ»¯ˆ¶ª„µ©‚µ©ƒ¹­†¼°‰¼°‰»¯ˆ¼±ŠÀ´ŒÁµ¿³‹»¯ˆÅº“ÌÁšÁµŽÄ¹‘ʾ—Àµ½±‰ÀµÈ¼”ÎÛÎÛËÀ˜Ê¾–ÍšÌÀ˜Ê¾–ÌÀ˜ÏÄœÍÛ¶»¯ˆ¼°‰º®‡¶ª„µ©‚¹­†½±‰º®‡º®‡½²ŠÅ¹’ɽ•É½•Ê¾–ÍšÐÅžÒÈ ÒÇ ÐÅÐÆžÑÆŸÍšź’À´Ä¹‘ȼ”ɾ–ÌÁ™Ë¿—·º®‡µ©ƒµ©‚³§±¦¶ªƒ·«„·«„»¯ˆÁµÂ¶¿´Œ»¯ˆ¶ªƒ´¨‚µ©ƒ¹­†¼°‰¼°‰¸¬†±¦¨Ÿ| –t’‡h…|^šn²§º®‡Ã·É¾–ÁµŽ¾²ŠÁµÅ¹‘ʾ–ÍšËÀ˜È¼”÷´¨ƒ¡–t’ˆh£˜v½±ŠÂ¶Ž¿³‹½±‰½±‰º®†µ©‚¹­†½±‰º®‡º®‡¾²‹Å¹‘ȼ”ȼ”ɽ•ÌÀ˜ÐÅÒÈ ÒÇ ÏÅ͚͚ËÀ˜Å¹’¿³ŒÄ¸È¼”ɽ•ËÀ˜Ê¾–Á¶Žº®†´¨‚±¥¯£~²¦¹­†º®‡¶ª„¸¬…½±ŠÁµ¿³Œº®‡µ©‚³§´¨´¨‚¸¬…¼°ˆº®‡¹­‡º®‡»¯ˆ»¯ˆº®‡À´Ã·¾²ŠÁµÅº’÷À´ŒÁµÄ¸Ê¾–Íš˿—ɽ•É¾–ɽ•É½•Ê¿—ÍšÎĜʾ—Áµº®‡»¯‡º®†´¨‚¸¬…½±‰¾²Š½±Š½²ŠÄ¸‘ȼ”ȼ”ɽ•ÌÀ™ÐÅžÓÈ¡ÔÊ¢ÓÉ¢ÐÅžÎÛÐŞƻ”½±ŠÃ·È¼”ɽ•ÌÁ™ÌÁ™Æº’½±Šµ©ƒ²¦€°¥²§¹­‡º®‡¸¬…¼°‰¿³‹¿³‹À´¿´»¯‡¶ª„´¨‚µ©ƒº®‡½±Š»¯ˆ»¯ˆ¾²‹½±Š¼±‰½±ŠÂ¶Å¹‘¶Ź‘Ǽ”ĸ¿³Œ½±ŠÂ¶É½•ÍšÎÛÍÁ™Ê¿—ɾ–ʾ—ÌÁ™ÍÁ™ËÀ˜È½•ÁµŽ»¯ˆ»¯ˆº®†µ©ƒ¹­†½±‰º®‡º®‡½±ŠÄ¸Ç¼”ȼ”ɽ•ÌÀ™ÐÅžÓÈ¡ÔÊ¢ÓÉ¢ÑÆŸÏÄÏÅź“¼°ŠÃ·È¼”Ƚ•È½•È½•Æº“¼±‹²¨ƒ±¦€°¤~¯¤~³§²¨‚¯¥¯¤«Ÿ{¤˜v’p’ˆi„z]umRkcKg`ImfR}wf’°®¤ÓÑÍïîíüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýôóóÞÝØÌɽ×ÓÀæáÌíêÔððâóóçõóæöôæ÷öìõ÷ððïßíçÍìæËëåÉåÞ¿Õ˧ÑÇ ÓÉ£ÑÆŸÏÄœÏĜ͚ȼ•Àµ¿³‹¾²Šµ©ƒ±¦±§‚·¬…¼°ˆ¾²ŠÂ¶ŽÃ·¾²‹¼°ˆ¼°‰¿³Œ½±Š»¯ˆ½±‰¼°‰¹®‡µª…·­‡À´ŒÆ»“Ǽ”¶ĸŹ‘À´Åº’Ë¿˜Â·¾²‹ÁµÆ»“ÍšÑÆŸÊ¿—Æ»“ÌÁ™ËÀ˜È½•É¾–ɽ•Åº’½²Š·«„¶ªƒ·«„·«…¶ª„»¯‡¾²Šº®‡½±ŠÃ·Ê¾—ÌÁ™ÍšÐÅÒÇ ÓÉ¡ÒÈ ÑÆžÐÅÒÈ Òȡɾ–Æ»“ȼ•È¼•Ê¾–ÌÁ™ÎÛÌÁ™Æº’÷¾²‹µ©ƒ¯¥€®¤±¦€¶ªƒ»¯ˆÂ¶ŽÃ·¾²‹¼°ˆ¼°‰¿³Œ½±Š»¯ˆ½±‰¼°‰¹­†²¦²§¸­†¸­‡¨zŒ‚c’‡g£—t°¤~½±ŠÆ»“Ĺ‘ĸŹ‘ĸɽ•ÏÄÊ¿—À´·«…¦›w™nž”s¬¢~»¯ˆ¿³‹¼°ˆ·«„µ©ƒµ©ƒ¶ªƒ»¯‡¾²Šº®‡½±ŠÃ·Ç»“ʾ–ÌÁ™ÍÁ™ÏÄœÒÈ¡ÒÈ ÑÆžÏÄÏĜ͚ȼ”ĸĸƺ“ȼ”ȼ”ɽ–Ǽ”Áµ½±‰¹­†²¦€¬¡|« {²¦€·«„»¯ˆÀ´ŒÁµ¾²Š¼°ˆº®‡»¯‡»¯‡º®†·«„¸¬…¸¬†²¦´¨‚½±ŠÃ¸Ç»”Ź’ø‘Áµ»¯ˆÀ´ŒÅ¹‘¶ŽÀ´ŒÀ´ŒÂ¶ŽÆ»“ÌÀ˜È¼”Ź‘Ç»“ȼ”Ç»“ƺ’ĸ··½±‰µ©‚´¨‚µ©ƒ¶ªƒ¸¬…º®‡»¯ˆ¿³‹Ä¸Ê¾—ÌÁ™ÍÁ™ÍÁ™ÐÅžÕˤÓÉ£ÒÇŸÑÆŸÐÅžÏĜ͚ɾ–Æ»“Ç»“ȼ”ɽ•ÌÁ™ËÀ˜Ä¹‘ÁµŽ¾²‹·«…±¦®¤€°§‚µ«…»¯ˆÁµŽÃ·À´Œ»¯ˆ»¯ˆÀ´¿³‹»¯ˆ»¯‡½±‰½±‰´¨ƒ´©ƒ¾³‹Ä¹‘ƺ“ĸ÷Áµ½±ŠÃ·É¾–Ǽ”ĸ‘÷¶ǻ“ÍÁ™ÌÁ™Ê¾–Ƚ•Ê¿—ÌÀ˜Ë¿—ȼ”ź’÷¿³‹¹­†¶ªƒµ©ƒ¶ªƒ»¯‡¾²Šº®‡½±ŠÃ·Ç»“ʾ–ÌÁ™ÍÁšÐÅžÕˤÓÉ£ÒÇŸÒÇŸÒÈ ÒȠΛǼ”÷Ź’ʾ–ËÀ˜Ê¾–ȼ”Ç»“÷½²Œ·«„¯£~ªžzªŸz®£~³¨ƒ¸¬†·«…¯£~¢—u˜m’ˆi„{^woSogNjbLngSysa‹}®¬¢ÑÐÌñðïýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúëêèÑÏÇÎÊ»åàÍðêÖðì×óðÝõòãöóåöôç÷õèöóäïéÒçßÀäÜ»ãÛºà×µÖ̧Õ̦ØϪÖ̦ÏŞʿ—Ź‘÷ƺ’Ƚ•Ç»“¼°‰µª„±§‚´¨ƒ¸¬…½±ŠÄ¸Ã·½±‰¹­†»¯ˆÂ¶ŽÁµ½±Š½±‰¾²Š¼±Š¸®ˆ»°ŠÃ¸ÌÁ™ÏĜɽ•Ä¸À´ŒÀ´ŒÁ¶ŽÃ¸Å¹‘øÁµÁµÇ»”Í›ɽ–Ĺ‘ź’ĸ‘·ĸ÷ÀµÀµ¼°‰¶ªƒ¸¬…¶«„°¤¶ª„À´ŒÃ¸‘ƺ“Ƚ•Ë¿—ÌÁ™Í›ÒÈ ÖÌ¥ÕˤÒÈ ÎÛËÀ˜ÍšÎÜɾ–ËÀ˜ÐÅžÐƞ͛ʾ—ȼ•Ç»”Ǽ”ȼ”Ź‘¹®‡µª„³©„³¨‚¶ªƒ»¯‡Ã·Ã·½±‰¹­†»¯ˆÂ¶ŽÁµ½±Š½±‰¾²Š½±Š¸­‡º®ˆÂ¶ŽÈ¼”»°Šœ’qŽ„eŒ‚c—Œk¦šwµ©„ÀµÅ¹‘ĸ¶ŽÄ¹’ɾ—Á¶³¨ƒ£˜u™Žl˜Žl©Ÿ{µª„»¯ˆÀ´Œ¼°‰³§€²¦²¦€²¦·«…½±‰¾²‹Ã·Ç»“ȼ”ʾ–ÌÁ™ÐÅÓÉ¡ÕÊ£ÐÆžÌÁ™Ê¾–Ë¿—Ê¿—ƺ’Ǽ”ÍÁšÎÃËÀ™Æº’÷¶÷÷À´¸¬†³§°¤²¦€¶ªƒ»¯‡Ã·Ã·½±‰¹­†º®‡¾²Š¾²‹½±‰¼°ˆ»¯ˆº®‡·«…º®ˆÂ·Ê¿—ÎÛÌÀ˜Æº’À´Œ¿³‹À´ŒÂ¶ŽÃ·Â¶ŽÀ´Œ¾²‹ÁµŽÇ»”ƺ’ĸŹ‘Ź‘ĸÁµ¾²Š½±‰À´Œ½±‰µ©ƒ³§²¦€±¦€´¨‚¹®†¿´ŒÄ¸‘ȼ•Ë¿—ÌÁ™ÍšÐÅÔÊ£ÖͧÓÉ¢ÏÄœÍÁ™ÎšÍšʾ–ÌÁ™ÑÆžÐÆžÌÁšÈ½–Ç»”ź’ĸǻ“Ǽ”¾²‹·¬†³©„°§‚³©ƒº®‡ÁµÄ¸Â¶Žº®‡¸¬…ÁµÁµ¾²Š¿³ŒÀ´Œ¾²‹¸­‡º®ˆÂ·Ê¿—Κʿ—Ź‘À´Œ¿³ŒÀµŽÃ¸Ä¸‘Ź‘ĸ¶ŽÃ·È½•Ê¾–ɽ•Æº’ź’ƺ“Ź‘÷ÁµÂ¶Ž¿³‹¹­†µ©ƒ²¦€²¦€µ©ƒº¯ˆÀ´Ä¸‘Ç»”ȼ”Ë¿—ÎÃœÐÆžÔÊ£ÖͧÓÉ¢ÏĜ͚ÏÃœÏĜ˿—Ë¿—ÍšÎÃÎÃœÌÁ™È¼”Ź‘Ź‘Ç»“ƺ’¿³Œ·«…¯¤­¡}¯¤~µ©ƒº®†»¯ˆ¶ªƒ©žzŸ”sž“q“‰i‡}^{qVqhOiaJibMvo]Š…v¢Ÿ”ÈÆÁòñðþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüööõáàÜËȽØÔÁîêØòîÜñí×ñíÖòîØóïÛóïÚòîØðëÔçáÃÞÕ²ÙϪØϪÚѬÜÓ®ÛÒ­ØЫÖΨÎĞĹ‘¾²‹À´É½•ÍÁ™ËÀ˜Å¹‘¿³Œ¹®‡µ©ƒ¶ªƒ»¯ˆÂ¶Ä¸¾²Šº®†¹­†¾²Š½±Šº®‡º®†¾²‹Ã·Ä¸‘Ź’ɽ•ÏÄœÏÄȽ•Â¶¾²‹½²Šº¯‡»¯‰Æ»“Ç»“¿³Œ¼°ˆ¿³ŒÆº“ź’ÁµŽ¼±‰º¯‡»¯ˆ¾²‹¿³‹À´ŒÅ¹’¶»¯ˆ¼°ˆµ©ƒ¨y²¦€Â¶ÌÁšÌÁ™É½•È¼”ɽ•ÌÀ™ÑÆŸÕË£ÔÉ¢ÏÄɾ–÷ƺ“ËÀ˜ÍšÐÅžÔÉ¢ÔË¥ÎÄĹ’¿³‹¿³ŒÅ¹‘Ǽ”ƺ“¿³Œ¾²Š½±Šº®ˆ·«„·«„À´Å¹‘¾²‹º®‡¹­†¾²‹½±Šº®‡¹­†¾²ŠÄ¸‘Ç»”ȼ•É½•ËÀ˜Â¸‘ª¡~‡h|sWypUˆ}`’q´¨ƒ¾²‹¾²‹½²Š¾³Œ½²‹°§‚ —u“‰i”‰i’p¯¤¹®‡½±ŠÁµŽ½±Šµ©‚µ©‚³§­¢}³§‚¼°‰Ä¸Ç»“ȼ”Ç»“ȼ”Ë¿—ÐÆžÔÊ¢ÓÈ¡Íšƺ’¶ŽÅº’ʾ–ʾ–Í›ÒÈ¡ÔʤÎÃø¾²Š¾²‹Ä¸Æº’Ź‘¿³Œ½±Š¼°‰º®‡¶ª„¶ªƒÀ´ŒÅ¹‘¿³Œº®‡¸¬…¼°‰¼°‰»¯ˆ½±‰¾²Š¿³‹Ä¸‘Ǽ”ɽ•ÌÁ™ÍšȽ•Ã·¿´Œ¿³Œ½²‹½±ŠÄ¸Ä¸¿³‹»¯‡¼°ˆÁµŽÃ·Â¶À´À´Œ¿³Œ¿³‹¾²‹¾²‹ÁµŽÀ´Œº®†·«„³¨‚­¢}²§¼°‰È½•É¾–Ç»”ȼ”ɽ•Ë¿—ÐÆžÔÊ£ÔÊ£ÏŞʿ—Ǽ”Ê¿—Íš˿—ÎÃœÔÊ£Õ̦ÐƠȽ•Áµ¿³ŒÄ¸‘ɾ–ʾ–¶Ž¾²‹¼±‰¹®‡¶ª„¶ªƒ¼°‰Ã·Ä¸¼°‰¸¬…½±‰½±Š¼°‰¾²Š¿³‹À´Å¹’Ǽ”ȼ”ÌÀ˜ÎÛÌÀ˜Æº’ÁµÁµ¼°‰¹­†¿³ŒÂ¶ŽÁµ¿³‹¿³‹Â¶ŽÆº“Æ»“Áµ½±Š¼°‰¿³‹À´ŒÀ´ŒÂ¶ŽÀ´»¯‡¸¬…³¨‚­¢}°¤¹­†Ç»“ʾ–ȼ•Ç»“Ê¿—ÏÄœÒÈ ÕˤÔˤÐÆžËÀ˜Ç¼”Ƚ•Ê¾–ʾ–ΛÓÈ¡ÕË¥ÑǠɾ–ĸÁµÂ¶ŽÅ¹‘Ç»“Ź‘Áµ½±‰¹­†µ©ƒ´¨‚¸¬…»¯‡·«…­£¥›y¡–t™Žm…fƒz\wnRlcKd]Gf_JqjWyi’‚ÇÅÀõõôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýùùùêéèÒÐÈÍÉ»ãàÍñíÛòîÛñí×ñìÕôðÛöóãóïÜðêÒëåÉÞÕ´ÒÇ¡ÏÄÕË¥ÜÒ­ÛÒ¬ØΨÓÉ¢ÍÜȽ–Ź‘À´Œ¿´ŒÅ¹’Ƚ•É½•Å¹‘Ĺ‘ø½²Š»¯ˆ¾²ŠÄ¸Â¶Ž¹­†µ©‚µ©ƒº®‡¼°ˆ¼°ˆº®†½±‰Â¶ŽÃ·Ç»“ËÀ˜Íšʿ˜Ä¸¼°‰·«…´ª„¸­‡ÀµÊ¾—ź’º®†·«„¼°ˆÀ´º®ˆ´©ƒ·«„¸¬…¸¬…º®‡¹­†¸¬…º¯ˆ¼±Š¼±‰¼°ˆ¸¬…³¨‚»¯ˆÅ¹‘ȼ•È½•Ç»“Ź‘Ƚ–ÏÄÑÆŸÐÅžÍÁšÄ¸‘¼°‰¹®‡Äº“ÐÆ ÐÅžÐÅžÐƞ͛Ƚ–Ź‘À´Œ¾²Š¿³ŒÆº“Ƚ•¿³ŒÀ´ŒÄ¸Â¶¾²‹¼°‰Ã·Ã·¼°‰µª„³©ƒ¹®‡¼°ˆ»¯ˆ¶ªƒº®‡Â¶ŽÅ¹‘Ƚ•ËÀ˜ËÀ˜Åº“¶¬†ž”r„z]ofMvmSŒ‚d¦œz±§‚°¥€±§‚³©„­¤€”m…}`”Šj“r¦œy²§¶«…´ª…·¬†º®‡¹­†¹­†·«„·«„¼°‰Â¶Ç»“ȼ”Ç»“Ź‘Ç»“ÌÁ™ÐÅÐŞ͚Ź’½±Šº®†Ä¸‘ÏÄœÐÆžÑÆŸÐÆŸÍ›Ƚ–Ź‘À´Œ¾²Š¿³ŒÃ·Æº’¶ŽÀ´ŒÀ´ŒÁµº®ˆµ©ƒ¿³ŒÅ¹‘¿³‹µ©ƒ¯£µ©ƒº®†¼°ˆ¼°ˆ»¯ˆ¼°‰¿³ŒÅº’ËÀ˜ÎÛÌÀ˜Ä¹‘¿³‹¸¬†¯£³§‚¾²‹Ç¼”ź’¼°‰¶ª„¹­†À´º¯‰µª„¹­†¹­†¸¬…º®†¹­†·«…¹­†»¯ˆ¼°‰º®†·«„·«„¼°‰Â·È½•Ç»“ĸ÷ǻ“ÌÁ™ÐÅÐÅžÍÁšÄ¸‘»°Š¹®‰Ã¸’͚͚ÐÆžÔÊ¢ÒÇ ÌÁšÈ¼”ÁµŽ¾²Š¿³ŒÅ¹’ȼ•Â¶ŽÀ´ŒÀ´ŒÁµ¼°‰¹­…¿³‹Ä¸ÁµŽ¶«„¯¤µ©ƒ¼°‰À´Œ½±‰»¯ˆ½±‰Â·Ç»“ɽ•ÌÁ™ÌÁ™Ç»“÷¾²Šµ©„¶ª„¼°ˆÄ¹‘ź’À´Œº®‡º®†¾²Šº¯ˆ·«†º®‡·«„µ©ƒ¹­†»¯ˆ»¯ˆº®‡»¯ˆ¼°‰º®†·«„¶ª„º®‡À´È½•É¾–Ç»“Ź‘ȼ”ÎÛÐÆžÒÇŸÐŞȽ–¿´º°ŠÁ·Ê¿˜ÌÁ™ÏÄœÑÆŸÐÆžËÀ˜Å¹‘ÁµÀ´ŒÁµÄ¸Æº’ĸ¶ŽÀ´ŒÁµ¼°‰¸¬…½±‰À´Œº¯ˆ«¡}Ÿ•sœ‘o™Žm’‡h…|^tlRe^G]VA\U@aZFjcPto]‹‡{ÌËÇõõôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûôóóÙØÓËǺÙÔÁìçÔñíÚòíÙñìÖñìÕòîÚòîÜîéÒêãÇæÞ¿ÛÒ®ÑÆŸÏÅžÕˤÚЪÕË¥ÐŞɾ–Áµ¾²‹Â¶ŽÄ¸Å¹‘Ź‘Ź‘ĸ¶ŽÆº’Ê¿—Æ»“ø¶÷¾²Šµ©ƒ³§€³§¶ªƒ¼°ˆÀ´Œ¼°‰¼°ˆ¾²ŠÁµÆ»“Ê¿—ɽ•Å¹‘ÁµŽ·«…¯¤³©„½²ŒÆº“Ǽ•Á¶º®‡»¯ˆ½±Š¼°ˆ³¨‚®£~´¨µªƒ´©ƒ²§³§µ©‚µ©ƒ·¬…º®‡¼°‰¿³ŒÃ·Æº’ƺ’ĸŹ‘ƺ’Ź‘ȼ”Í›ËÀ˜È½•Ç»“À´»¯‰½²ŒÈ¾˜ÑÈ¡ÎÄœÌÁ™È½•Áµ¾²ŠÀ´Â¶ŽÁµŽÁµŽÅº’Ç»”¾²‹ÁµÇ»“ɽ–Ç»“ĸĸÁµŽ¹®†³¨ƒ°§‚´©„»°‰¿³Œº®‡º®‡¾²ŠÁµÇ¼”ÌÁ™É¾–Ź‘¿³Œ­¡}•‹k~vZw[Šc”Œl˜Žn˜ŽmŸ–t¢™w™‘p„|_w[œ“q¨ž{«¢°¥€±¦°¦³¨‚·«„º®‡º®‡½±‰ÁµÅ¹‘Ç»“ƺ’ƺ’ĸ¶ŽÄ¹‘Ƚ•Ç¼”Æ»“Ç»“¶½²Š½²‹Åº”ÎÃœÏÄÌÁšÇ»”¿´»°Š½±‹À´À´¿³‹À´Áµ½±‰½±ŠÁµÅ¹‘À´Œ¹­†¾²‹À´¹®ˆ°¥ªžz­¡|µ©ƒ¼°ˆ»¯ˆ¸¬…¶ª„¸¬…À´É¾–Ê¿—Æ»“¶Ž·¬…­¡}¨y²§ÁµÆº“·»¯ˆ·«„º®‡¾²‹´¨ƒ­¡|³§²¦°¤±¥€±¥±¥´¨‚¸¬…¼°ˆº®‡»¯ˆÁµÅ¹‘Ç»“ƺ’ĸ÷ÁµÅº’Ê¿—ɽ–Æ»“Æ»“¿³Œ¹­‡¹°‹Â¹’ËÀ™ÍšÎÛÍ›ƺ“À´¾³ŒÀ´ÁµŽÀµÃ·Ä¸ÁµÀ´ŒÂ¶ŽÈ½•Æº’À´Ä¸Å¹‘½±Š³§‚­¡|°¤º®‡Áµ¾²‹»¯ˆº®‡¾²ŠÄ¸É½•Ê¿—ɽ•Å¹‘¿´·¬†¯¤·«…÷Ƚ•Æº’À´Œ¹­†¹­†¼°‰´¨‚¯£~µ©ƒ³¨‚°¥€³¨‚µªƒ¶ªƒ·«„º®‡¼°‰¼°ˆ½±‰ÁµÅ¹‘Ç»“ƺ’Ç»“Ç»“÷ź’Ë¿—ɽ–Ƚ–Ê¿—ĸ‘¼±‹º±ŒÂ¹’ËÀ˜ÍÁ™ÌÁ™Ê¾–ƺ’À´¼±Š¿³ŒÂ¶ŽÃ·Å¹‘ƺ’À´Œ¿³‹Â¶ŽÈ½•Æº’À´ŒÂ¶Â¶Ž¹­‡« {’p–‹j…fŠ`vYrjPg^H_XB^VA`YCb[Ff_KnhW…uÀ¿ºôóóýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüööõçæãÏÍÄÑÍ»åàÊïêÖôðàôðÞñíÖðëÓìæËæÞÀáÚ¸àصáÙ¶ßÖ²ÛѬÖͧÓÊ£ÒÇ ÐÅÊ¿—¶Ž¸¬…¶ªƒ¼°‰Ä¹‘ËÀ˜ËÀ˜Ç»“֦ŽÅ¹‘ɽ•ËÀ˜Ê¿—ƺ’À´º®‡¸¬…·«„¶ªƒµ©‚½±ŠÄ¸‘À´½±‰½±‰Ã·È½•É½•Æº’ĸ÷·«…°¤€¾³ŒÅº’ź’¿³Œ¿³ŒÂ¶Å¹‘ÁµŽº®‡·«„µ©‚±¥®¤«¢~©Ÿ{±¥€º®‡½±‰º®‡¸¬…¿³ŒÇ»“ɾ–ɾ–ȼ”Ç»“Ç»“ȼ”ƺ’Ź‘÷¿³ŒÁµŽÆ»“ɽ•Ë¿˜Ì›ÌšËÀ˜Ê¾–Ç»“Á¶Ž¸¬…³§¶ªƒ¿³‹Ç»“ɾ–Ç»“÷Á¶ŽÄ¸È½•ÌÀ˜Ê¿—Ç»“ĸ¿³‹¹­†·«…´©ƒ±¨ƒ»°ŠÅ¹‘ĸ¿³Œ½±ŠÂ¶Ê¾–ÍÁ™È¼”ĸ÷µ©„¦›x¢™w¡—u›oˆ~a{rW|sX‹c‘‡gŠ€bŒƒd–Œl¤œy© }© }¨žz­¢}µ©ƒ¹®‡¹­†¶ª„»¯ˆÁµÄ¸Æº’ƺ’֦ŽÁµÀ´ŒÀ´ŒÀ´Œ»¯‡¼°‰Å¹‘ƺ’Ç»“ÊÀ˜È½•Ä¹‘ĸÁµ»¯‰²¨ƒ¬¢~­¢~º®ˆÄ¸Ã·¿³Œº®‡¶ªƒº®†À´ŒÅ¹‘÷¾²Š¼°‰·¬†±§‚®¤­¡|ªŸz±¥€¹­‡½±‰¹­†´¨‚¶ª„¾²‹Å¹‘¶ŽÀ´Áµ±¦§œxµ©ƒ¿³‹Â¶¾²‹¼°‰½±‰¼°‰»¯ˆ¸­†³§¯£~°¤~­£~ª }¨žz«Ÿ{±¥¸¬…¼°ˆº®‡º®†½±‰Ã·Æº“ƺ’ĸĸŹ‘¶ŽÃ·Ä¹‘½±Š½±ŠÅ¹‘ƺ’Æ»“ËÀ™ËÀ˜É¾–ɽ•Ç»“÷º®‡±¥€¯¤»¯‰Ç»“ɾ–ƺ’÷ÁµÁµÄ¸Í›Í›ǻ“Ç»“÷¼°ˆ·«„´¨‚³§·«„½±ŠÃ·À´Œ»¯ˆ¾³‹Æ»“ËÀ˜È½•Ç»“Ƚ•½³Ž³ª…¶«…ÀµŽÈ½•Åº’¶ŽÀ´Œ¾²Š¾²Š¾²Š¹­†¶ªƒ¶ª„±¦¬¢«£®¤³¨¼°‰¿³Œ¼°‰½²ŠÂ¶ŽÅ¹‘Ç»“ƺ’ĸŹ‘Æ»“÷÷Ź‘½±‹½±ŠÆº’Ç»“Ǽ•ËÁšËÀ™É¾–ɾ–Ç»“÷½±Š¶«…²¨„¼±‹Å¹’ƺ’Ç»“ƺ’¿³‹¾²‹Ä¸Í›Í›ǻ“÷½±Šµªƒ®¢|£˜t’‡g„z]{rWypUypVyqUtlRnfMjbJd\FaZDd]IgaPtpd¾½¸óóòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùîíì×ÕÏÌɺÜ×ÀëæÎðìØõóæõñâñìÕïéÏçàÂà×´ÞÖ±ÞÖ±ÝÔ°ÚÑ«ÕË¥ÎÄžÎÃœÏÄœÎÛȽ•¿³‹µ©ƒ³§¹­†ÁµÈ¼”ʾ–ȼ”ź’Ǽ”ȼ”ɽ•ÍšÌÁ™È¼”÷¿³Œ½±‰º®†¸¬…º®‡Â¶È½•Â·¾²‹¿³ŒÇ»“ÍšÎÃœËÀ˜È½•Ç»“¿³Œ¼°‰Å¹‘ȼ”Ź‘½±Š»¯ˆÀ´ŒÅ¹‘ÁµŽ¸¬…¹­†·«…­¡}¨žz§z¨ž{®¤¶«„º®‡¼°‰¾²‹Ã·Æº“ĸ‘ź’ȼ”ȼ”ȼ”Ç»“Ź‘À´½±Š¿³‹Ã·Ç»“ʾ–ʾ—Ǽ•É¾–ËÀ˜ËÀ˜È½•Â¶Ž·«„°¤~²¦€¼°‰Åº’ɾ–ȼ”ź’Ǽ”ȼ”Ƚ•Ê¿—ʾ–ȼ”ƺ’À´º®‡¸¬…¸¬…¸­‡¿´Æº’ĸÀ´¿³‹Ä¸‘Ë¿—ÍšËÀ˜Ç»“÷½±‹¸­‡¹¯‰·¬‡¬¡}’ˆhypUnfMxoT…{^ƒdœ‘o§œx§z§z¦z¥›x«Ÿ{³§¶ªƒ¸¬…º®‡À´ŒÁµ½±ŠÀ´ŒÃ·Ä¸Â¶ŽÀ´ŒÀ´Œ¼°‰¹­…¸¬…¼°‰Â¶ŽÄ¸Ã·Â·ÁµŽÀ´ŒÀ´Œ¾²‹º®‡®£¥œy§œy²¦¼°‰¾²‹¾²Š¼°ˆº®‡¼°ˆÀ´ŒÂ¶ŽÀ´½±‰¼°‰¹®‡³¨ƒ°¥€°¤~°¤¶ª„»¯ˆ¼°ˆ¸¬…¶ª„º®†¿³‹Â¶Â¶ŽÀ´¾²‹µª„²¦€¼°‰À´Œ¾²Š·«„µ©ƒ·«„·«…µªƒ±§‚°¥€®£}«Ÿ{¨žz¦z¥›x©žz°¤~µ©ƒ¹­†¼°‰¿³‹À´À´ŒÂ¶ŽÄ¸Ä¸Æº’ƺ’¶Ž¾²‹¼°‰¼°‰ÁµÆº“ȼ”ȼ”Ç»”Ç»”ȼ”ȼ”ƺ’¶Žº®†°¤­¢~¸­ˆÅ¹’ɾ–ȼ”ź’Ǽ”Ƚ•É¾–ÌÁšÌÀ™É½•È¼”ĸ‘¾²Šº®†¹­†¼°‰¿³‹Â¶ŽÆº’÷¿³ŒÄ¹‘Ë¿—ÎÛÍ›ʿ˜Ç¼”¸‘¿µÀµŽÅº’Ƚ•Ã·À´Œ¿³Œ½±Š¼°ˆ»¯ˆº®†·«„´¨‚­¢~¨ž{§z« |±¥·«…¼°‰½²ŠÃ¸Æ»“ĸĸĸŹ‘ȼ”ɾ–øÁµÂ¶Ž½±Š¾²ŠÆº’ȼ”Ƚ•É¾—ɾ–Ƚ•Ê¿—Ƚ•Ã·¼°‰²¨ƒ¯¦‚¹¯‰Ã·Ä¸È¼”ʾ–Æ»“Æ»“ɽ–ÌÁšÌÀ™È¼”ƺ’À´¸¬…¬¡{œ‘oŠ€a…{^…{^†|^ˆ~aŠ€bˆ~`~uZulSjbJb[D`YC^WD`ZIxtiÊÉÅøø÷ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüôôôàßÛÌÊÀÔϺåßÆìçÎðëÕôñáóðÝïêÒëäÇãÛºÜÔ¯ÝÔ¯ÜÓ®Õ̧ÐÇŸÊ¿—øǻ“ÌÁ™ÍšȽ•Áµ¸¬†¶ªƒ¹­†¼°ˆÀ´ŒÄ¸Æº’ɾ–ÎĜ͛˿—ÌÁ™Ê¿—ƺ’ĸ÷ÁµŽ¿³‹¾²‹ÁµÇ»“Ê¿—Ĺ‘ÁµÂ¶ŽÉ¾–ÏÄÐÅžÎÃœÌÁ™Ë¿˜Ê¾–ɽ•Ç»“ƺ’÷¼°‰¹­†¼°ˆÁµ¿³‹¶ª„»°ˆ¼±Š°¤€ªŸ{©ž{«¡~®¤³§¹­…¿³ŒÄ¸Å¹‘¶Ž½±ŠÀ´Ä¸‘ƺ’ƺ’÷Áµ»¯ˆº®†¿³‹Ä¸Ã·Ã·Áµ»°ˆÂ¶Ë¿—Íš˿—Ź‘¹­†²¦€´¨‚º®‡ÁµÄ¸‘ƺ’ɾ–ÎÄœÎÛ˿—ɽ•È¼”ƺ’Ź‘ÁµŽ½±Š»¯ˆ½±‰À´Ä¸‘ƺ’¶Ž¿³Œ¿³ŒÅ¹‘ʾ–ËÀ˜ÍÁ™Ê¿—Æ»“Ǽ”ȼ•Åº’ÁµŽ·¬†¢˜uˆ~askQofN}tX–‹j« {µ©ƒ­¢}©žz¨y¨œx«Ÿ{°¤~³§·«…½±‰Áµ¾²‹¸¬…¹­†¾²ŠÁµŽÀ´Œ½±Š¼°‰¶«„±¦€¶«…º¯ˆº¯ˆ»¯‡¸¬†²§µª„»°‰¾²Š¾²Šº®‡­¢}¤šw¦œx« {°¤~²¦¸¬…¼°‰¿³‹¿³‹¾²‹½±Šº®‡¶ª„¶ª„¶ª„³¨‚±¥±¥´¨‚¸¬†º®‡¶ª„´¨‚µ©ƒ¹­†¼°ˆ¼°‰¿³ŒÀ´¼°‰¼°‰½±Š¼°‰¸­†´©‚°¤~¯£}°¤¯£~­¢~¬£°¥€°¤«Ÿ{§œy¥›x¤šw¨y®¢|²¦€¸¬…½±‰À´À´Œ»¯‡¼°ˆÀ´ŒÅ¹‘Ź’÷À´Œ¹­†µ©ƒ½±ŠÄ¸Ä¸Â¶¿³Œ¼°‰¿³ŒÅ¹‘Ç»“ȼ”Ź‘½±Š´©ƒ²¨ƒ¸­‡À´ŒÃ·Å¹‘ȼ”ÎÛÐÅÏĜ˿—ȼ”ƺ’Ź’ĸÁµŽ¾²Š¾²‹Å¹‘Ç»“Ç»“ƺ’÷·Ƚ•ÍÁ™ÍÁ™ÐÅÎÜȽ•Ê¿—ÌÁšÇ¼”Ź’ĸ¿³‹¿³‹¿³Œ»¯ˆ¸¬…º®†»¯‡º®‡¶ª„°¤ªŸ{¨y«Ÿ{°¤~´¨‚º®‡À´ŒÅº’Ç»”¶ŽÀ´ŒÂ¶ŽÅ¹‘ȼ”Ǽ”¶Ž¾²Š½±Š¾²ŠÀ´ŒÃ·Â¶ÀµÀ´Â¶Åº’ɾ–ʾ–ƺ’½±Šµª„²¨ƒ¸­‡¾²Š¾²‹Å¹‘ËÀ˜Í›ÎÄœÎĜ˿—ȼ”ȼ”ƺ’¶Ž¹­†¥šv‘‡h‹c’ˆiœ‘oœ‘ošn˜m–‹kƒdwZukQjbIc\E]VAYR?ZUD’‡àßÝø÷öýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùùéèæÑÏÇÌȹáÛÄêäÍíçÎíçÎíèÎíçÍëäÇåݽÞÕ±ØΩ×ͦÑǡȽ–Ź‘Á¶Ž¼°‰ÁµŽÈ¼”ɽ•È¼”ƺ’À´½±Š¼±‰·«…¶ªƒ¼°‰Â¶Ê¿—ÓʤÓÉ¢ÎÛʿ—ĸ½²Š¼°‰¿³ŒÆº’ɽ•É¾–Ç»“ȼ”ɽ•Æº’÷ĸʿ—ËÀ˜Ç»“ȼ”ÌÁ™ÑÇ ÒÈ¡ÏÅĸ‘¾²‹¼°ˆ¹­†º¯‡¼°‰»¯ˆ¹­†º®‡Ã·È½•ÁµŽº®ˆ´¨‚±¥€³§¸¬…¿³ŒÃ·Áµ¾²Š¼°‰¾²Š½±‰½±‰À´¿³‹¼°‰º®‡¶ª„´¨‚¸¬…¹­†·«„¶ª„µ©ƒ´¨‚º®‡Â·Æ»“ȼ”Ź’½±‰¹­†»¯ˆº®‡º®‡½±‰Â¶Ê¿—ÓʤÕÌ¥ÒÇ Ë¿˜Å¹‘ÁµŽ¾²Š¾²‹Ã·Å¹‘Ź‘ƺ’Ç»“ƺ’ÁµŽ½±Š¾²ŠÃ·Æº’Ĺ‘Ç»“ËÀ™ÐÅžÒÈ ÏÅĸ‘¾²Š¸¬†¬£¡—u‘ˆhvmSxoUœ‘p¶ª„ÁµŽ¼°ˆ·«„³§¯¤~¯£}²¦€¸¬…»¯‡¸¬†¶ªƒ·«„º®‡·«„³¨µ©‚´¨²§¯¥ª¡}§œzª¡}¬¢~ªŸ{©ž{¨z§œx©Ÿ|®¥€´©„¸¬…µ©ƒ«Ÿ{¤›x¦z¥œx£˜u •s¨y³§»¯ˆ¼°ˆ¸¬…´¨‚®¢}§œx¢—t¡–t§›x«Ÿ{­¢}¬¢~¬£€¬¢¨z§œx©y®¢~¯£}«Ÿ{¯£¶ª„¼°‰¾²‹»°‰°¦‚ª |§œy§›x©žz¬ {¨y§œy«¢~´ª„¹­‡´¨‚­¤¨Ÿ|¥›x¦›wªŸ{µ©ƒ»¯‡¸¬…¶ªƒµ©ƒ·«„¸¬…»¯‡¿³‹¾²‹¼°ˆº®†¶ªƒ²¦€·«„»¯ˆº®‡³§‚°¤¶ª„º®‡½±ŠÄ¸Ç»“Ź‘¾²Šº®‡º¯ˆº®‡¸¬…¸¬…¼°‰Å¹‘ÐÆŸÔÊ£ÒÇ ËÀ˜Å¹‘¶Ž¾²Š¿³ŒÅ¹‘ƺ’ƺ’Ç»“ȼ”Ç»“÷ÁµÂ¶ŽÆ»“Ç»“Ź‘ȼ”ÍšÐÆŸÓÉ¢ÑƟŹ‘¾²‹»¯‡·«„»¯ˆÁµ¹­†¶ªƒ½±ŠÂ¶ŽÄ¸‘¶¿³‹¹­†±¥€°¤~³§‚½±ŠÂ¶Ž¿´Œ½²Š½±Š¿´ŒÀ´ŒÀ´ŒÁµÀ´Œ½±Š»¯ˆ·«„¶ªƒ·«„º®‡º®‡³¨‚±¥€¸¬…»¯‡½±‰ÁµÅ¹‘Ź‘¾²‹º®‡º¯ˆº®‡¸¬…·«„¼°‰Å¹‘ÌÁ™ÑÇŸÒÇ ÌÀ™È¼”ƺ’À´¸¬†¯£~˜lŒƒd”t­£µªƒ²§«Ÿ{¤™v¡–s–‹kˆ~`~uXvmRlcKbZDYR>RM;kg[°¯©ëêéûûúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüöõõÝÜ×ËȽÒÍ»æáÊíèÒîêÓíèÏëåÊëäÇéâÃâÙ·ÙЫÔÉ¢ÑÆžÌÁšÈ½•Ç¼”ø¼°‰¾²‹Ã·Â¶ŽÅ¹’Ƚ•Ã¸¼±Š·¬†´©ƒ·«„¾²‹Ä¸Ê¿—ÒÈ¡ÒÈ¡ÎÛʾ–Ź‘À´½±ŠÀ´ŒÇ»“ÌÀ˜ËÀ˜Ä¸Ä¸Æº’÷øǼ”Ê¿—ɽ•Æº’Ƚ•ÎÃœÔÉ¢ÒÈ¡ËÀ™½±Šº®‡¼°ˆ¼°ˆ¹®‡¶«…´©ƒ·«„¼°‰Å¹‘Ƚ•Â¶Ž¼°‰¹­†¸¬…¹­†¼°‰¿³‹À´¿³‹»¯ˆº®‡¾²Š¾²Š½±‰¿³ŒÀ´Œ¾²‹º®‡¶ª„µ©‚¶ª„¹­†»¯ˆ»¯‰º®‡¶ªƒ¸¬…¼°ˆ½±‰Â¶ŽÅ¹’À´Œ¹®‡·¬†·¬…º®‡¿³ŒÄ¸É¾–ÏÅŸÒÈ¡ÑÆŸË¿˜Å¹‘À´Œ»¯ˆ½±ŠÆº’ȼ”ƺ’¶ĸŹ’¿³Œ¿³ŒÃ·Æº“Ź‘¶ŽÇ»“ÍšÑÇŸÑÆŸËÀ™½±Šº®‡º®ˆ¶«…«¡}˜ŽmvnSxpVŸ–u¹¯‰Ã·»¯‡¶ª„´¨±¥³§·«„¸¬…µª„±§‚­¢}¯£}µ©ƒ³¨‚¯¤°¤~°¤~®£~©Ÿ|¤™w •s –s¢˜v£™v¤™v£˜uŸ”rŸ•s¡˜u£™v©y« {£˜uœ’pšo™n™Žm™lž“q§›w°¤±¥€®£~« {¥švž“q—Œk—Œk’p¡–s¢—tŸ•sŸ–tŸ•t™ŽmšmŸ”q¦›w¤™u“p£˜u­¢}´©„µ«†±§‚¢˜v“qŸ”r¢—t£—t ”qœ‘ož”r§z±¦µ©ƒ°¤« |§z¥›x¨y®£~³¨ƒ³¨ƒ°¤¯£~±¥³§´¨‚¶ªƒº®‡º®‡¸¬…¸¬…µ©‚²¦³§€·«„º®‡¶ª„´¨‚¹­†¸¬…·«„¾²ŠÂ¶Ã·¿³‹º®‡¸¬…¶ªƒ¶ªƒ»¯ˆÀ´ŒÅº’Í›ÑÆŸÑƞ˿˜Æº’÷¼°‰½±ŠÆº’ʾ–ɾ–ƺ’ƺ’ƺ’¿³ŒÁµŽÆº“ȼ”Ź‘¶ŽÇ»“ÍšÒÇ ÕÊ£ÑÆŸÁµŽº®‡¹­†º®ˆ¼°‰»¯ˆµ©‚´¨‚¼°ˆÃ·Ç»“Ź‘¶Ž¾²Š·«„·«…¼°‰ÁµÁµ½±‰º®†º®‡¿³‹À´ŒÀ´ŒÀ´ŒÀ´Œ¾²‹º®‡¶ª„µ©‚¶ª„¹­†»¯‡¸¬†·¬†º®‡º®†¹­†¼°ˆÁµŽÆº’¶½±Š¹­†¶ªƒ¶ªƒ»¯ˆÀ´ŒÄ¸È¼”ÎÄœÒÈ¡ÌÁ™È¼”ƺ’¾²‹µ©ƒ« |•Šj„e¤œyµ«†¼±‰·«„±¥€­¢}¨ž{›’pƒd…{]}sWpgOe]FZS>OI8UQDŽŒ„ÔÔÑôôóüüûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúîíëÑÎÇÍȹÚÕ¿éäÍîêÓðëÖïêÑëäÈéâÃæß¿ÞÖ³ÖͧÐƞ͛ÌÁ™ÌÁ™ÌÁ™Ç¼”¼°‰»¯ˆ¼±Š¼°‰Â¶È½•Ã¸¹®ˆ³©„¶«…¾²ŠÅº’ȼ”ɾ–ÎÛÏÄœÍÁ™Ê¾–Ç»“ƺ’÷÷ǻ“Ë¿—ɾ–¿³ŒÀ´ŒÃ·À´Ä¹‘ËÀ˜É¾–ȼ•Ê¾–ÌÁ™ÎÃœÐŞ͛ƺ“¹­†¹­†½±‰¼±‰¶¬…°¦‚¯¥€µ©‚½±‰Ã·Ä¸½±Š¹­†¸¬…¸¬†»¯ˆ¾³‹¾²‹¿´ŒÁµ½±Š¼°‰À´ŒÁµÀ´Œ¿³‹À´ŒÁµ¼°‰¹­…¸¬…º®‡¾²‹Ã·Æº’¶º®‡·«…·«„µ©ƒ¼°‰Ä¸Áµ¸®‡³©„¶¬…¾²‹Å¹‘Ç»“ȼ”ɾ–ÌÁ™ÍÁ™É¾–Ź‘ÁµŽ½±Š¿³ŒÆº’Ç»“ĸ¾²‹À´ŒÁµŽ¿³‹Ã¸Ê¿—ɽ•Æº’ź’ɾ–ÌÁ™ÌÁ™Ê¿—Ź’¸¬…·«„º°ˆº¯ˆ­¢}”ŠjtlRwpUž•t¶¬‡¾²‹´¨‚°¥®£}«Ÿ{°¥·«„´¨‚°¥€­£¨ž{¨y­¢|¬¢~ª¡}ªŸzªžy¨œx£˜u’p˜l—l›oŸ”r –sž“q—Œk”‰i’‡g†f–Œk’p—ŒkŽ„d‰€aŠb…e“ˆh”Ši—Œkž“qŸ•rŸ”r’q™Žm”‰i…eŽ„d‘‡g“‰i’ˆgƒd…e†fŠ€a‚c”‰i›n™Žm“ˆh™Žm –t¢™w¤›y¡˜v“‰i†f”Šj™Žm–Œk…eƒd“‰h’q¦›w©y¤™u¡—t –tŸ•r¥šw­¢}­¤«¡~ªŸ{¬ {®£}°¤~°¥²¦€µªƒµª„µ©ƒ¶ªƒ´¨±¥²¦¶ªƒ¼°‰¾²Š½±Š¼°ˆ·«„³§€¶ª„¼°ˆÀ´Œ¿³‹º®‡µ©ƒ´¨¹­†Ä¸‘Ç»“ȼ”ʾ—ÌÁ™Íšʾ–ȼ”ƺ’À´Œ¿³ŒÆ»“Ê¿—ɾ–ĸĸ÷¿³‹Ã¸ËÀ˜Ê¾–ƺ’Ź‘Ê¿—ÎÛÍšÐÅžÏÄÀ´º®‡º®‡¿³‹¼°‰µ©‚²¦€³§¸¬…À´ŒÄ¸Áµ¿³‹½±‰·«…¹®ˆÀµÂ¶ŽÀ´Œ½±Š»¯ˆ¼°‰¿³‹ÁµÁµÀ´ŒÁµŽÁµ»¯ˆ¸¬…¹­†¹­†¼°‰À´ŒÂ¶Â¶À´Œ»¯ˆ·«„¸¬…¾²‹Å¹‘Ź‘¾²‹¶ªƒ´¨¹­†Ä¸‘Ç»“Æ»“Ź’ÌÁ™ÑÇŸË¿—Ç»“ƺ’¾²‹±§¤šx”‹j’‰i¨Ÿ|¶¬†»°ˆ¶ª„µ©ƒµªƒ¯¥€¡—u”Šiƒcƒy\sjPf^GYS>KF5JF9tqh¶µ°çæå÷÷öýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýöõõãâÞÊǼÒͺâÝÅëåÍîéÑðëÔîéÏæß¿âÚ·ß×´ÛÓ¯Õ̦ÑÇŸÓÈ¢ÑÇ ËÀ˜Ê¾–ź’º¯ˆµª„´ª„º¯ˆ¿´ÁµŽ½±Šº®‡»°‰À´ŒÆº’ËÀ˜Ê¿—ʾ–ÍšÌÁ™Ê¾–ȼ”ȼ”ȼ”ƺ’Ź‘ĸǻ“Æ»“À´Œ½±Š¾³‹Æº“ÌÀ™ÍÁšÇ¼”Ƚ•ÏÄÍšǼ”øȼ•É¾–¿³Œ»¯‡¹­†·«„´©ƒ³¨ƒ±¦€³§º®‡¿³‹Áµ½±Šº®‡´¨‚©žy¯¤~¾²‹Åº’ɽ–ɽ–÷ÁµÅ¹‘ƺ’¶¸¬†¶ªƒ¸¬…¼°‰»¯ˆ»¯‡¿³‹Ã·Ã·Å¹‘ĸº®ˆµ©ƒ´¨µ©ƒ»¯‡¿³‹¼°‰º®‡»°‰¿´ŒÄ¸Ç»“ȼ”ȼ”ȼ”Ƚ•É¾–ȼ”Ç»“ƺ’ĸ‘Ź‘Ç»“Ź‘¶¶½±Šº®‡ÁµÉ½•ÌÀ˜Ç»“ȼ”Í›ÌÁ™Æ»“ÁµŽÃ¸Ä¸‘¹­†³¨ƒ±§‚°¦‚¦œy’ˆitlQrjP‘ˆh¨y²§­£«¡~¦œz˜Žmœ‘p©žy®¢|°¥°¥€ªŸ{¥šv¦›x¦›x¢˜u™m”Ši’ˆh“ˆh’‡g‘‡f“‰i•Ši“‰h“ˆh‘†fŠ€a‚y\}tXwZ†}_‰aw[|sW~uY€wZƒz]‡}_†|^„{]†|_‡}`…|_w[€w[‚y\‚x[uY|sWvZ€wZzqVzpV{rW~uYwZƒz]†|_‡}`ˆ~`‹b‰€b„{^ˆbŒ‚c„z]‚y[‚y\€w[€vZx[x[ƒz\ˆ`†f•‹j“‰h“‰h‘‡g‹c…fšn¤›x¬¢¯¤« {¨žz«¢~®£~¯£~®¤€¬¢}« {°¤~±¥±¥³§·«„º®‡½±Š¼°‰¶ªƒ²¦€±¥³§€¸¬…½±Š¼°ˆº®‡»¯ˆ»¯ˆÀ´Ê¾–Ê¿—ɾ–ÌÀ˜ËÀ˜Ê¾–ȼ”ȼ”Ç»“Ź‘Ź‘Ç»“ƺ’ĸĹ‘ÁµŽ¾²‹Â¶ŽÉ½•Íš˿—ɽ•ÌÀ˜ÐÅžÎÛøƺ“ʾ–Ź‘¾²‹¹­†·«…·«„¶ªƒ¶ªƒ´©‚µ©‚»¯ˆÀ´Œ»¯ˆº®‡·«…®£~­£´«†¿´Æ»“Ǽ”ź’÷ÁµÃ·Ä¸Áµ¼°‰¸¬…¸¬…»¯‡½±‰¾²ŠÀ´Ä¸Ã·Â¶Ž¿³‹¹­†´¨³§¹­†¿³‹¾²Š¼°‰»¯ˆ»¯ˆÀ´Ê¾–Ê¿—ɽ•Ê¿—͛͛ǻ“Ź‘Ź‘½±Š¨y‘ˆh…eœ‘p³¨‚º®‡º®‡¼°ˆ½±‰¼°‰´©ƒ¨žz •sœ’p…fvmSf_GYR=HC3C@3ROFŽˆÍÌÉïïîúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûïîíÕÓÌdzØÓ¿æâÌíéÔñíÙñìÖìæÌäܺà׳ÝÔ°ÚÑ«ÔˤÑÆŸÓÉ¢ÎŞĹ‘ÁµŽ¿³‹¹®‡·¬†·­‡¸­†µ©ƒ±¥€³§¹­†¿³‹ÁµÅº’ÌÁ™Íš˿—ɾ–Ç»“ź’Ç»“ȼ”ȼ”ȼ”ƺ’ĸ¶ÁµÀ´Œ¼°ˆ½±ŠÉ¾–ÐÅžÐŞʿ—ËÀ˜ÏÅɽ–ÁµÁµÉ¾–ÎÛ÷¼°‰¸¬…·«„¹­…¹­†²§‚±¦·«„»¯‡»¯‡¶ªƒ²§­¡|¢—t©y¸­†Á¶ŽÇ»”ȼ•Åº’ƺ’ɽ•Æº“À´¹­†·«„¸¬…½±‰¾²‹½±ŠÁµÂ¶Ž¾²‹¿³Œ¿³‹º®‡·«„·«„·«„³§®£}±¦€¸¬…¼°ˆ¾²ŠÁµŽÆº“ɾ–ɾ–ƺ’÷÷ƺ’ȼ”ȼ”ƺ’ƺ’Ç»“¶Ž¾²‹¿³Œº®‡¸¬…÷ËÀ˜ÍÁ™Ç¼”ȼ•ÌÁšÅº“½±Šº®‡Â¶Æ»“º¯ˆ°¦€© }© }¢™w’ˆhtlQogMŠ€bž“q¦›xž•s›’q—Žm‰€aŒ‚c—ŒkŸ“q¤™u¥šv¢—tŸ”rž“q™Žm’ˆh‰a…{^‚y\‚x[‚x[ƒy\…{^ƒy\}tWzrVyqUvmRpgNmdLphOqiOnfMg`Hi`InfMldLldLqhOphNmfMmeLldLiaJe]Fh`IldLldKh`Hd]Fg_HhaIf^Gd\Ff^GmeLphNphNqhOsjPumRvmRqjPmeLtkQxnTrjPqhOpgNlcKogMulRtkQskQxoT~tX€vZ|sWuYuYwnSypU„{^’Šjž•s¤™v¢—t¢˜u¨Ÿ|¨žz¦›x§z¦œy¥›w©žy­¡|°¤~³§€µ©‚µ©‚µ©ƒ´¨‚´¨³§³§³§²¦€°¤°¤µ©ƒ»¯ˆ½±‰ÁµŽÉ¾–ʾ–ɽ•Ë¿—ɽ•Å¹‘Ź‘ƺ’ȼ”ȼ”ȼ”Ç»“¶Ž¿³‹Â¶¾²‹¼°‰Ä¸ËÀ˜ÎšÌÁ™ÍÁ™ÏÛÐÅÊ¿—À´Åº’ÌÀ™È¼”¿³Œ¶ªƒ´¨‚·«„¹­†¶«„³¨‚µ©‚º®‡½±‰¶ª„²¦®£}§œy§z¬¤€º¯‰Ä¸‘Ǽ”Ƚ•È¼”Æ»“ź’ĸÁµ¼°ˆ¸¬…º®‡¼°ˆ½±‰¿³‹Â¶ŽÃ·¾²‹»¯ˆ¾²Š»¯ˆ·«„¶ª„³§°¤°¤µ©ƒ»¯ˆ½±‰ÁµŽÉ¾–ËÀ˜ËÀ˜ËÀ˜É¾–ź’Á¶ŽÁµ¿³‹¶ª„Ÿ”rˆ~`†g¦›x¹­‡º®‡¸¬…À´ŒÄ¹‘ĸ‘¾²‹³§‚¨žz¢—u“‰izqVkcJ]VAKE4<8*:6,^\U¯®ªßßÝõõõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøøøçæäÎËÂÉıÛÖÁêçÒñïßôñâòíÙëåÉåÜ»âÚ¶àÖ²ÙÏ©ÓÈ¡ÐÅÎĜǼ”½±Šº®‡º®‡»¯ˆ¾²‹½²‹²§¨œx£˜u¬¡|·«„º®‡º®‡¿³ŒÊ¿—ÏÛÌÁ™Ä¸Â¶ŽÃ·Å¹‘Ç»“ȼ”Ç»“Ç»“Ç»“Áµ½±‰¾³‹½²Š¿³ŒÉ¾—ÐÆžÒÇ ÏĜ͚ÌÁ™Â·½±ŠÄ¸ÌÁšÏÄĸ‘½±Š»¯ˆ½±Š¿³‹¼°‰²¨ƒ°¦¶«„¹­†¶ªƒ¬ |¨y§œx¥šw©žz±¥€¶ªƒ¼°‰Â¶ŽÅ¹‘ɽ•ËÀ˜Å¹’¾²‹¾²‹¿³‹¿³‹¿³‹¿³‹¿³Œ¿³Œ½±‰¹­†¹­†¹­†º®†»¯‡º®‡µ©‚§œxŸ”r«Ÿz´¨‚´¨‚³§¹­†Å¹‘ËÀ˜ËÀ˜Ã·¿³Œ¿³ŒÃ·Æº“ƺ’÷÷Ź‘À´Œº®‡»¯‡º®‡¼°‰Å¹‘ʾ–Ê¿—Ǽ”ƺ’ĸ‘º®ˆ³§·¬…ÀµŽÅ¹’¹®‡®£~§y§ž{ —u…fqiOmeL‡~_˜Žl›‘oƒeˆ`…|^€vZw[†}_Š€aŒƒcŽ„e‘‡f“ˆh‘†f‰`vZ|rVzqUxoTtkQphOogNpgNldKe]FbZDaYCaZC`XB^WA]VAZS>VO;SM9VO;YR>UO;TM:XR=XR>XR=XQ=UO;RK9QJ8UN;XQ=UO;RK8RK8RK8SL:SM9RL9TM:ZS?]VA]VA^WA_XB`YC`YC^WA_WBe]Fg_HbZDaYC`YC_XBc\Ei`Id\Fd\FlcLpgOmeMg_HkbKnfMh`HkbJsjP|sW‡~_Ž„e’ˆh˜ŽmŸ–už”r›o •s¢—u¢—u¢—u¦›w¬ {®¢}¯£}­¡|©zªžz³§¶ªƒµ©ƒ²¦€©y¡–s¥šw®¢~´©‚¶ª„»¯ˆÅ¹‘ȼ”ɽ•È¼”Ź‘¶ŽÁµÄ¸Æº’ȼ”ȼ”ƺ“À´¼°‰¿³‹¾²Š½±ŠÅº’ËÀ˜ÍšÎšÎšÍšʾ—Ź‘Á¶ŽÈ½–ÏÄɾ–¾³Œ¶ªƒ¸¬…¼°ˆ¼±‰´©„°¦¶ª„¼°‰½±‰³§¬¡|¨y¦›x¨ž{«¢²§‚º®‡ÁµÅ¹‘ɽ•Ê¿—Ç»“øÁµÀ´Œ¾²‹¾²Š¼°‰¼°ˆ¾²Š¿³‹¾²Š¸¬…¶ªƒ½±‰¿³‹½²Š¹­†­¢}¢˜u¦›w®£~¶ª„¸¬…¼°‰Æº’Ë¿—ÌÀ˜É½•Ã·¾²‹¼°‰¸¬…±¥€§œy—lŒ‚dš‘p¯¥€»°‰º®†¸¬…¶ɽ•É¾–ƺ’º¯‰«¢~ –t†f~uYriPd]GQJ7=8+62(NKC’‘ŒÉÉÆîîíûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóòòÛÙÕƶÏɲáÜÅìçÐñíÙòïÛñìÖîèÎèáÃåÝ»àÖ²ÖÌ¥ÐÆžÎÛɾ–Áµº®‡¸¬…º®‡À´Œ½±Šµ©ƒ¦›w£˜t©y³¨‚¶ª„°¥€±¥€º®‡Ç¼”ÍšÌÁ™Ã·Â¶ŽÄ¸À´Â¶Æº’Ź‘ƺ’ɾ–ĸ¾²‹À´ŒÃ¸Ç»”ʾ–ÌÀ™ÌÁšËÀ˜Ë¿—Ƚ•¿´Œº®‡¾²‹Æº“Ë¿˜Æ»“Áµ¿³‹Ã·Áµº®ˆ°§‚¯¥¶«…»¯‡¹­†¯£~¬ {« {©Ÿ|ª }¬¢~¬¡}µª„¶ŽÇ»“ʾ–Íš˿˜Æ»“Á¶ŽÂ¶ŽÃ·¾²‹½±‰¾²‹½±‰¸¬…µ©‚¶ªƒ¹­†¼°ˆ¹­†³§§œx¢˜u¥›y´©„´©ƒ¨y«Ÿz·«„Ź‘ÌÀ˜ËÀ˜Ã·Ã·Å¹’ÀµÀ´ŒÂ¶ŽÁµÃ·Å¹‘¿³Œº®†¼°‰À´ŒÃ·Æº’Ĺ‘ÁµŽ¾³‹¾²‹»¯‰±¦€« |¯¥€´ª†¶¬ˆ³¨‚¬ {¦›x¥›x™nƒz]g`Hd]F~uXŽ„d†fƒz]|sWyoTwmSwnSwnSskQtlQypU|rW}sW|sWxoTrjPkcKh`Ig_He]F`XC[T@ZS>YR=UO;PJ7NH6QK8OI6KE3GA1F@0F@0E@/D?/C>.B=-B=-C>.C>-C=-D>.C>.C=-B=-D?/E@0D?.D>.D?.D?/D?.E@/F@/E@/GB0KE3NG6LF4MG5PJ7OH6LF4MG5RL9UN:TM:TM:SM9RL9TN:VP<RL8SL9ZS>`YC`YC[T?^WAb[C`YCb[Dd]Ee]EofM}tXƒz\ˆaŽ…e‘‡g’‡g•Ši˜Žl›n˜lšm •r¦šv¦šw¡•sž“p¡–s¯£}³§¯£~£˜tŸ“q¢—tªŸ{¯£~¬¡|« |²§À´È¼”Ê¿—Ź‘ĸĸ¶ŽÁµÄ¸Æº’ȼ”Ç»“¶Ž¾²‹À´ŒÁµÄ¸Ê¿—ÌÀ˜Ë¿—Ë¿—Ë¿—ɽ–÷½²Š¼°‰Â¶È½•Ê¿—ĸ‘½±‰À´ŒÁµ¾²‹µª„¯¤´¨‚½±Š¿³Œ³¨¬¡}©Ÿ|« {«¡}© }¦œx®¢}½±ŠÅ¹‘Ç»“Æ»“ȼ”Ƚ•Åº’÷À´Œ½±‰¼°ˆ½±Š¿³‹½±‰·«„³§€´¨‚½±‰À´Œ»¯ˆ¬¡|¤›w¥œy¬¢}²¦€³§€³§¸¬…ÁµÇ»“ɾ–ȼ”Ź‘¿³Œ³¨‚£˜u•‹jŽ„e‡h›’q«¡}¹®ˆ¾³‹½±‰½±‰Å¹‘Ç»“Ź‘À´¸­†­£~ –s†fvZtkQg_HTM:@;-73'GD;xuo¬«§ÛÛÙ÷÷÷ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûíìëÑÎÇÿ¯ÖзæáÈìçÏïéÓòîÙïêÓëäÉåÞ¿ß×µØΩÒÇ ÏĜΚǼ”À´Œ¼°‰¼°‰ÀµÇ»“Á¶Žµ©ƒ£˜u¥™v°¤º®‡¹­‡²¦¶ª„½±ŠÂ¶Å¹’Æ»“Æ»“ɽ•Ê¾—Ĺ‘Ĺ‘ȼ”ĸÀ´Á¶Ä¹’ȼ”Ƚ•Ê¿—Ê¿—Ź’ƺ“ȼ•Ã·ÁµÁµ¼°‰¹­†¼°ˆÃ·É¾–ȼ”Ç»“Æ»“Ƚ•Ä¸‘»°‰´©ƒ±§‚µ©ƒ¶ª„µ©ƒ³§³§²§°¦­¤€«¢«¡}µ©„¶ŽÃ·Ç»”ÎÜ͛ȼ•À´Œ¾²‹¿³‹¼°‰¿³ŒÂ·¾³‹º®‡¹­†º®‡¼°ˆ¾²‹¼°‰´¨‚£˜u¢˜v¬£€¼±‹¹­‡¬¡|²¦½±ŠÁµŽÃ¸Ä¸‘øȽ•ËÀ˜Ã·ÁµÄ¸Â¶Ž½±Š¹­‡»¯ˆ¿³ŒÄ¸Ä¸Â¶¾³»°‰¸¬…³§‚°¤¬ |¥™v¡–t£šw¦z¨ž{§œx¤˜uŸ”rœ‘p‰€apgN^WAaZDtkR|sW{rVtlRofMkcKjbJh`Id\E]V@\U?`YCaYC`YC`XC]V@YR=SM:NI7LG5NH5LF4GA1C>.B>.B=->9*<7)=8*;6(83&40#3/"3/"4/#2."0, 0, 0,!/+ .*.*/, 2."3/#40#51$61$61$40#51$61$51$61$83&73%51$73%;7(:5':5'<7(=7)=8)?9+C=-E?/E@0F@0F@/E@/F@0FA0D?.E?.ID2NH6OJ7NH6QJ8SL9SM:VO;VO;RL9\U@kcJqiOumR{rV€vY‚y\„z]ˆ~`‹a‹a…e–‹jšn›n˜l˜Žlœ‘o©y¯£~­¡{šm˜l¡–s®¢}²¦€¯£~®£~³¨‚¾²ŠÂ·Ã¸Â¶ŽÆº’Ê¿—ź’øź’Ç»“ĸ¾²ŒÀ´Ä¸‘Ƚ–ɽ–ɽ•É¾–ɽ•È¼”ƺ’÷¾´¼±Šº®‡¹­†¾²ŠÅ¹‘ÌÁ™Ê¿—Ç»“Ç»“ƺ’¶Ž»¯ˆ´¨‚²¦€·¬‡¹¯‰²§¯¤€°¦€²¦°¥€«¡}¤™v­¡|¿³‹Ä¸Å¹‘ƺ’Ê¿—ÌÁ™Å¹‘À´Œ½±‰º®†½²ŠÃ·Â¶Ž¾²Š¹­†µ©ƒ·«„À´ŒÄ¸¾³Œ©žz£™v© |²¨‚¸¬…¸¬†¸¬†»¯ˆÁµÁµÁµÄ¸Ä¸¼±‹¥›}•Œp‡h‡g—Žm¤šxµª…ĸ‘ʾ—Ǽ”ĸĸ÷À´Œ½±‰´¨©y •r”‰iƒz]xoTmeM\U@IC2;6)=9.VSL„‚}¹¹¶êêêùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöööãâÞÊȼƯÞØ¿èäËëçÏïêÓóïÞíçÐäÜ»ÞÕ²Ö̧ÏÄÏÄœÐÅÏĜ˿—ƺ’øŹ’ɾ–Í›ʿ—ÁµŽ­¢~«Ÿ{³§»¯‡¿³ŒÀ´ŒÅº’ƺ“¾²‹»¯ˆ½²‹Ç»”ÎÃœÑǟΛÌÁ™ÌÀ˜Æº’»¯ˆ´©„·‘ÐÅŸÑÇ ÎĜȽ–À´Â·Æº“¼°‰·«„º®‡º®‡º®‡¿³ŒÅº’ɾ–ȼ•È½•Ê¾–ËÀ˜Ç»“¿³Œº®‡¶ª„³§®£~®¢~³¨‚¶ª„·«„µªƒ±§‚®¤²§‚¹­†½±Š¾²ŠÃ·Í›ʾ—Á¶Ž»¯ˆ¸¬…¸¬…½±ŠÅ¹‘ɽ–Ĺ‘¶ŽÄ¸Ã·Â¶Ã·Ä¹‘À´­¢~¨ž{¯¦‚º¯‰¿³‹¾²‹Ä¹‘ź’½±Š·«…·¬…ÁµŽÈ½•ÌÀ™È¼”Ǽ”ɽ•Ä¸¶ª„©žzµ©„Ĺ‘Ƚ•Ã·º¯ˆ²¨ƒ±¦‚±¥€ªžz¢–t‘p™Žm—k˜lœ‘pž“q™Žm•Šj‘‡g‹btlR\U@YS>b[DkcKiaId\EaYC^XB]V@[T?UN;OI6KF4JD3JD3IC2IC2HB1C>-?:*=8):5'73%94'94&62%4/#2."1-!0, /+ -)+')&($&#%"&#&#%"#!" !!"#!&#(%(%)&*&+')%)%*'*'*&,(,(*&)&,)-*+(+'0, 4/#62%94&:6';6';6(;6(;6(:5'<7(<7(<7)>9*@;+@;,A<,C=-D?/FA0GB1IC2JD3RK8[T>_YCf^GldLqhOtkQwnSypU|sW€vZ‡}^„d†f‘‡g”Ši—Œl›n¤™v¬¡|®£}Ÿ”qšnž“p©y´¨‚º®‡¼°ˆ½±Š¾²‹º®‡¶«„¼±‰Ç»”ÎÜʿ—ɾ–ËÀ˜Ê¾–¿³Œ³¨ƒ¼°ŠÊ¾˜ÒÈ¢ÏŞɾ–Ź‘Ź‘Ź‘÷»°Šµ«†¹¯ˆ¼°‰»¯‡¿³ŒÆ»“ÌÁ™ÌÁ™Ê¾—Ǽ”Ç»“ƺ’Áµ¹­†³§‚±§‚±§‚°¥²§€µ©ƒ¶ªƒ³§¯¤~®¢}¶ª„ÁµŽÂ¶ŽÃ·É¾–ÌÁ™É¾–¿³Œ»¯‡º®‡º®‡ÁµŽÈ½•Æº’÷ĸ¿´Œ¾³ŒÇ»“ËÀ™È½•¶ª…¬ |« |³§½±ŠÄ¸Å¹‘ƺ’Ź‘½±Š·«„»¯ˆ¹­†¯¤‚›“|š“z©Ÿ|°¤« |¦›x¶ª…Ê¿˜Ö˦ÒƠɽ•Å¹‘¶ŽÀ´Œ¾²Š²¦£˜t¡–sšo‰auYvnSf^GSL:B=.:6*EB9ge_š™•ØØ×õõõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýííëÒÐÈÅ°Ð̵åàÇéäÉìçÍîèÏìçÎçàÃâÙ¶ÞÖ±ØΨÒÇ ÒÈ ÓÉ¡ÒÇ ÏĜ͛ÏÅžÑÇ¡ÓÉ£ÔˤÓÉ¢ËÀ™»°‰¶ª„º®†¾²ŠÃ·È½•ÌÁ™Ê¾—¿³Œ¸¬…µªƒº°‹Å»•ÏÄÍšÍÁ™ÍšȽ•ÁµŽ¼±‹Ä¹’ÎÃœÑÇŸÒÈ¡ÏŞŹ“À´¼±Š·¬…¹­†¾²‹¼°‰¼°ˆÂ¶ŽÀµŽ¿³ŒÂ¶ÀµŽ¿´Ä¸Ä¸À´¾²Š¼°ˆ¹­†¶ª„³¨ƒ±§‚´©„¶«„µ©‚³¨‚³¨ƒ¶ª„¸¬…¸¬…½±ŠÂ¶Ä¹’÷À´Œ½±Š»¯ˆ»¯ˆÁµŽÇ»“ɾ–Ç»“Ç»“ËÀ˜ÎÃœÏÅŸÏÅŸÏÅžËÀ™»°‰µª„¸­‡½²ŠÃ·È¼”ʾ–Ç»“¾²Š´©ƒ¯¤€´¨ƒ¿³È¼”ƺ’Ĺ‘ź’·¹­†¯¤~¶ª„¾³ŒÁµŽ¿³Œº®‡®¥¦œy •ršn—k–‹j‘‡gŒ‚c‰aˆ~`‡~`‡}`vZumSldL\U@OI5QK8XR=[T?XQ=SL9NG5KE3HB1D?/?9+:6(84&62%40$3/#41#2/#0, -)-)+')&(%)%(%'$%"$!# " ! # # # " !!   !"  "" !" )&0,!2.$2/#3/$62%62&51%50&62'72&40#3/#30#30#40#51$72%94'=8*@;+D?.HB1LF4PJ6UN;[T?`XBb[De]FjbJmeLqhOulR{qVx[…{]ˆ~`ƒc”‰išo –t§œyªŸ{¢—t •r¡–s¦›w°¤º®‡¾²‹À´Œ¾³‹¶«…®¤±¥€¼°‹È¼•ËÀ˜ÌÀ˜ËÀ˜ÌÀ˜Ä¸‘º®ˆÁ¶Í›ÒÈ¡ÒÈ ÏÄÊ¿—Ĺ‘À´À´Œ½±Š¹®ˆ¼±Š½²Šº®‡¾²‹Ã·Åº’Ĺ‘¶À´Ä¸‘Ƚ•Â¶Ž»¯‡¹®‡¸­†µ«„²¦€²¦³§³§²¦±¥³§¸¬†½±‰º®‡¼°ˆÃ¸Ä¸‘ÁµŽ¾²Š½±‰½±ŠÀ´Å¹’ɾ–ɾ–ʾ–ËÀ˜ËÁšÍÃÑÈ¡ÔʤÑǠ÷‘¹­‡¶ª„·«„¿´ŒÉ¾–ÌÁ™Ë¿—Ç»“¾²Š³§ªŸz •ršpŸ—z¯¥†¾³ŽÄ¸‘¿³¸­‡Á¶ÍÁšÒÇ ÒÇ ÐÅÍšź’½±Š»¯ˆ´©ƒ¬ |¨ž{Ÿ•tŽ„e…|^{rVf^GUN;E@085(>;1ZXP„ƒ¾¾½ìììúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøâàÛÈÅ·ÉÄ®ÛÖ¼èãÉéäÈìæÌìåÊæÞ¾åÝ»åÝ»âÙµÜÒ¬ÖˤÕˤÔÊ£ÒÇ ÏÄœÐÆŸÕ̦ÙЫÛÓ®ÛÓ­ØΨÐƟĹ‘¾²‹¾²Š¿³ŒÆº’ÌÁ™ÏÄœÌÁ™Åº’¼°Šµª„¶­‡Â¸’ÍÜ͚͛ÎÛÌÀ˜É½–ɽ•Ê¾–ËÀ˜ÏÃœÒÈ¡ÓÉ¢ÌÁ™Ã·½±Š½±ŠÁµŽÄ¹‘À´Œ½±ŠÁµŽ½±Šº®‡¿³‹»¯ˆ¶ªƒº®†½±Š¿³‹À´ŒÂ¶ŽÁµÀ´Œ¼°‰³©„³¨ƒµªƒ´¨‚´¨³§³§´¨‚¸¬…¿³ŒÁµº¯‡¾²‹Ã·Ã·Àµ¿³ŒÅ¹‘Ç»“ƺ’Ç»“ɾ–Í›ÔʤÙЬÛÒ¬ØÏ©ÒǠ÷½±‰½±Š¼°‰Â¶Ê¿—ʾ–Ç»“·¸­‡¯¥€®£¹®ˆÅ¹‘÷À´Œ¾²‹½±‰¹­†¶ªƒ´¨‚´¨‚´¨‚³¨‚°¦€¦z›‘p‘‡fŒ‚cŒƒcƒd„z]{rVvmSqiOofNneMe]FWP<LG4E?/C=,E@/IC2HB1E?/@:,94'51$2-"-))&'$%#$!" #!$!" !!       !!" #!$"%#&% '&!('")(#*($+)%-+'1/,:85BA=IHEIHCEC>@>999365/42-52-42-31-32-42-32-42-53.53.43.54/43/64/872><7DB<GE>FD>GD>KJBKHAHF?IH@LJBFD;;9186-86-75,86,:7.=9/A=2EA5E@3FA2HC3KF4LG5PI7SL9UN:VO;XQ<\T?_XAb[Df^GkcJphMtkPxoT~tX‡}`„e•‹lšo“qœ‘o’pž“qŸ”r¨y´¨‚»¯‡¿³‹À´Œ¸­‡¯¥€®£~¸¬†Å¹’͚͚ʾ–Ë¿—ʾ–Ź‘ɽ•ÍšÏÄÑÆžÑÆŸÎÛǼ”¶Á¶ŽÂ¶ŽÂ·Áµ¾²Šº®‡¼°‰À´ŒÂ¶Ž¾²‹¹®†¹­†½±ŠÁ¶¿³Œ¾²‹ÁµÁµŽ¾²Šµ©‚²¦€²¦€´¨³§²¦°¤³¨‚¸­†¸¬…¹­†»¯ˆ½±Š¾²‹Â¶ŽÂ¶ŽÁµÅ¹‘ȼ”ɽ•ÌÁ™ÎÛÎÛÓÉ£ØϪÙѬÛÒ­×Ω˿˜Â¶Ž½±Šº®†À´Ë¿—ÎÛÎÛʿ—¿´¯¤€šn‘‡g–Œk¯¤€Ã¸‘ÌÁ™Íš˿˜É¾–Ë¿—ÌÁ™ÌÀ˜ÎÃœÑÇ ÑƟɾ—Àµ½±Š¼°‰¹®‡²¨‚¤šw”Ši‹b€wZh_HVP<GB283'85+KH?ge`££¡ÖÖÖóóóüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýòñðÔÒÊÄÀ­ÑÍ´áÜÁæãÉëæÍíæÌêãÆæÞ½éâÃëåÈãÛ¹ÚЪÓÉ¡ÔÉ¢ÑÆŸÌÀ˜Ê¾—ÍÁšÒÇ¡ÙЪßÖ±ÞÕ°×ͧÎÛø¾²Š½±‰¾²‹Åº’ÍÁ™ÏÄœÏÅÏÅǼ”Á¶ŽÇ½•ÎÃœÓÉ¡ÓÉ¢ÑÆŸÏĜΚÎÛÎÛÎÛΚÎÛÍšÌÁšÍšÏÄœÏÄÌÁšÊ¿—ȼ•Ã·¿³Œ¾²ŠÁµÄ¸Ä¸‘¾²‹·«…µ©ƒ¶ªƒº®‡ÁµÅ¹’Ź‘¶Ž¿³‹¼±Š·¬…µ©ƒº®†µ©ƒ¬¡|ªŸ{²§‚¾²‹Áµ½±‰¸¬…ÀµŽÊ¿—ËÀ˜Ä¸‘¾²‹Ä¸Å¹‘ĸƹ’Ƚ•ËÀ™ÒÉ¢ÚÑ«ÝÔ¯ÚЪÐÆŸÀµŽº®‡¹­†¶ªƒ»°‰Æº’ȼ”Ƚ•È½•¿´¸¬†º®‡À´Ä¸Àµ»°ˆ·«„³¨±¥¯£~ªŸz¦›w¤™v’p–‹j’ˆh…eŠb‚y\~tX{rVnfMb[E`YC^WBZS>RK8ID2@<,73%3/#3/"50#51$40#0, *'%#" " # $"&$*($540@?;FEAKJGQPLWVR]\Yba_gfckkhonlrqoutrwwuyxw||zƒƒ‚šš™¯®­²²±¬¬«¥¥¤žž™™˜–•””“’“’’“’’““’“’’“’’““’““’”“’”“’”“’””“””“••”——–››šŸŸž¡ Ÿ  Ÿ££¡§¦¥££¡¡¡Ÿ¦¥¤¦¥¤–•“…„‚ƒ‚‚|zyurqlpninlgmlgkicb_V]ZO[WKWSETPAQL<NI8OI7PJ8QJ8RK9TM:VO;WP<ZS?]VAaZDf^FkcJsiOypU‚x\ˆ~`‹bŒbŽƒd†e’ˆg’pªŸz²§º®‡À´¼±Š·¬…º®ˆÃ·ÌÀ™ÑÆŸÎÜɽ•È½•Ê¿—ÌÁ™Ë¿—Ë¿—ΚÍÁ™Ê¿—ʾ—ÍšÎÄË¿˜É¾–Ë¿—ƺ’¿³Œ»°ˆ¾²ŠÂ¶ŽÄ¸¿³‹¸¬…¸¬…´¨ƒ²§‚»°‰Ä¸Æº’ƺ’¶Žº®‡·«„¹­…»¯ˆº®‡´¨‚¨y« {º®‡À´Œ¾²‹¸¬…½±ŠÆº’Ê¿—Ǽ”÷ƺ’ȼ”ȼ”ÌÀ˜ÍÁ™ÌÁ™ÑÇŸ×ͧÙЫÜÓ¯ÙЫɽ–¾²‹»¯ˆº®‡¿³ŒÇ¼”ÍÁ™ÐÅÎÃœ¼²Ž¦œz“Ši’p±¥Ã¸‘ÍÁšÎšËÀ˜ËÀ˜ÍšÌÀ˜Ë¿—ÌÁ™ÌÀ™Ë¿—Ë¿—ËÀ˜Ë¿˜È¼”ƺ’÷¹®‡ªŸz›n“ˆhˆ~`rjO^WAKE4:6'40&:7/FC<~yµµ²ããâøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùéèæÎËÀÆÁ«ÙÕ½æãÉèãÉèâÇêãÇëäÈêãÇìåÊëåÈäÛ¹ÜÒ­ÕË¥ÐÆŸÌÁ™É½•Ê¿—ÏÃÔÊ£×ͧØΨ×ͧÒÇ Ê¿—÷Á¶ŽÃ·ÁµŽÄ¸Ê¿—ΚÏÄœÎÃœËÀ˜É¾–ÎÛÐÆžÒÈ ÒÈ ÎÜʾ—ÌÁ™ÐÅžÑÇŸÎÃœÌÀ˜ËÀ˜ÌÀ˜ÌÁ™ÏÛÒÈ ÔÊ£ÒÇŸÏÄœÎÜ˿˜Ç»”Ź’ȼ•É½–ÁµŽ¹®ˆ´ª„¹®‡¹­†¶ª„»¯ˆÁµŽÃ·¿³Œ¾²‹Â¶Ž¾²‹º®‡¾²Š¼°‰·«…´¨ƒ´¨ƒ¶«…¹®‡½±ŠÀµŽÆº“Ë¿—Ë¿—ƺ“¶ƺ’ƺ’Ź‘Ç»“Ë¿—ÎÃœÐÅŸÒÈ¡ÓÉ£ÐŞɾ–À´Œ¼°‰»¯ˆº®†½±‰Â¶Ä¸Ä¸Â·½²Š¹­†¸¬…º®‡º¯ˆ¶¬†¯¥€¨y¥™v¦šv§›wž“q•Šj†g‹b…|]wZvY|sWrjPkcKg_H\U@PJ8KE4HB1D>.;7)51$0,!+((%'$&#%"!  $"&% *($/-)651A?;EC?HGDNLIUSQ]\Zwvt™˜—¢¡ ««©´´³½½¼ÅÅÄËËÊÒÒÑ××ÖÛÛÚßßÞâââäääææåééèöööúúúýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþüüüúúúúúúúúúøøøõõõöööôôôíííæææäääââáÚÚØÌÌËÌÌËÆÅĵµ³¤¤ ŸžšŸžšœ–”“Œˆ…}rnc_[NZVHXTEXSCXRCXQAUO=UO<VP=WP<XR=\U@_WAc[Dh`HpgNwnS|sWwZ…{^ˆ~`Œ‚b”‰i’p¦šw®£~µª…·¬†¸¬…»¯ˆÃ·Ê¿—ËÀ˜È½•Å¹‘ƺ’ÌÁ™ÑÈ¡ÍÛʿ—ÍšÌÀ˜É½•ËÀ˜ÐÅžÔÊ¢ÑÇŸÐÆžÑÆŸÌÁ™Ç»”Ź’ƺ“Ç»“øº®‡²§¸¬…¸¬…µ©ƒ¸¬†¾²‹Â¶Â¶Ž¿³Œ½±‰¼°‰½±‰¿³‹¾²‹º¯‡´¨ƒ³§‚·«…¸­ˆº¯‰½±ŠÂ¶É½•ÍšÌÀ˜È½•È¼”ƺ’Ź‘ɽ•ËÀ˜ÍÁ™ÑÇŸÕÊ£ÒÈ¢ÔʤÔɣƺ“À´ŒÀµÂ·Ä¸Å¹‘Ë¿—ÌÁ™Ä¹“¬¢—Žnš‘p­£·ÌÀ™ÎšËÀ˜É½•ÌÁšÑÈ¡ÍÛʿ—Íšɾ–ƺ’ʾ–ÏÄœÑÆŸÎÛÌÀ˜Ê¾–·¶«„ªžz •r“‰i{rWc[ENH6?:+40%40':7/fe_”“ÌÌËòòòüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷öàÞÛÇÄ´ÊÄ«áÝÅêçÏèâÇåßÁèáÄìæËîèÏìæÊèáÂâÚ¶ÝÔ¯×ΨÎĜʾ–ʾ–ÌÀ˜ÐÆžÔʤÒÈ¡ÏÄÎÃœÌÀ˜Ç¼”¶ŽÅ¹‘Ƚ•Ä¸Ã·Ç»“Ë¿—ÌÁ™ËÀ˜ÌÁ™ÍšÌÁ™ÌÁ™ÍšÎÛɾ–÷ɾ–ÐÆžÒÇ ÎÛɽ•È¼”ÌÀ˜ÏÄœÑÆžÓÈ¡ÕÊ£ÓÉ¢ÓÉ¢ÔÊ£ÒÈ ÏÄÌÁšËÀ˜Ç¼”»°‰³©„²¨ƒ½²‹½±Š¸¬…¹­†½±‰¼°‰¹­†¹­†À´Â¶ŽÁµÁµÁµÀ´½±Šµªƒ¯¤´¨‚¾²‹Ç¼”ɾ–ɽ•È¼”ȼ”Ç»“Ƚ•È½•Ç»“ȼ”ÌÀ˜ÐÅžÌÁšÈ½•È¼”ƺ’÷¿³‹½±Š½±‰¼°ˆ¼°‰¼°‰½±‰¼°ˆ¹­†·«„µ©‚®¢}ªŸz¨žy¦zŸ•t–Œk”‰i–Œk˜lŒ‚d€vZypUvnStlRmfMjbJe]F\T@TN:PJ7IC2=9+61$2-"/+)&&## ! 
+  )('765BA@IHGQPNWVT_^\jjg||z””’™˜—›š™Ÿžž§¦¥³²²ËËËÚÚÚààßååäéééíííðððòòòöööøøøûûûüüüþþýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÿÿÿÿÿÿþþþýýýþþþþþþþþþüüüúúúüüüúúúóóóííííííïïîïîîééèÝÝÛÆŬ«§–•Ž†„|~|sxtjmi]c^Qb\Nb\M^XF[UB\VB\U@]WA`YCd\FiaIofMvmR{rV€vZ…{^Š€b†g˜m –t§{®¤´¨‚¶«„»¯‰ÀµÂ¶ŽÀ´Œ¿³ŒÃ·ÌÁ™ÒÉ£ÎÃÊ¿—ÌÁ™ÌÀ˜Ë¿—ÎÛÒÇ ÔÊ£ÖÌ¥×̦ÕˤÓÉ¡ÐŞ͚ÌÀ™È½•¿³Œµ©ƒ¯¤¸¬†¾²‹½±Šº®‡º®‡½±‰º®‡·«…¼°ˆ¾²Š¿³‹ÁµÁµ¿³ŒÀ´»¯ˆ´©‚²¨ƒ¸­ˆÃ¸Ç»“ɽ–ÍÁ™ÎÛÍšʿ—ƺ’ĸǻ“Ë¿—ÍšÑÆžÑÆŸÌÀ˜ÌÁ™ÌÁ™Å¹‘÷ƺ’ȼ•Æ»“ĸǼ”ź“·«…›‘p„e¤›y¸¯‰Ç¼•ÌÁ™ÌÀ˜É½•È¼”ÍÛÓʤÏÄÊ¿—ÌÀ˜È¼”ƺ’ÍšÒÇ ÓÉ¢ÒÇ ÐÅÎÛËÀ˜Ä¸·«…ªŸ{šnx[iaJSM:C>/62&1-$52)TQJyxt·¶µçççúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóóòÙØÒþ«ÏÈ«âÜ¿çàÂéâÅìåËëåÊëäÉëäÈèàÁãÛ¸ÝÕ±ÚÑ«Ö̦Ñƞ͚͚˿—Ê¿—ËÀ˜Ê¿—ʾ–ʾ–ɽ•Ç»“¶ŽÂ¶ŽÃ·ÁµÀ´ŒÃ·Ç»“Ë¿—ÍÁ™ÎÛÌÁ™Æº’ĸƺ’Ë¿˜Ç»”À´Ç¼”ÏÄÐÅÌÀ™Ç»“Ź‘ÌÀ˜ÓÈ¡ÔÊ¢ÕË£×ͦÛÑ«ÚÑ«×ͦÖͧÓÉ£ËÀ˜Ä¸‘¾²‹¹®†·«…¶«…º®‡¿³‹ÁµŽÃ·½²‹´¨‚­¡}¬¡|µ©ƒ¾²‹Å¹‘Ź‘¾²‹·«„µ©‚¶ª„¹­†¼°‰¿´ŒÃ·Æº’ȼ”ȼ”ȼ”ɾ–ÌÀ˜ËÀ˜É½•È¼”ɽ•É¾–ź’¶ŽÂ¶ŽÄ¸Ã·¼°‰·«„´¨‚³§°¤¬¡}¯¤~²¦€°¤°¤~¬ {ž”q“ˆhŒ‚c†fŒ‚cƒz]x[vZzqVpgNd]E[S?XQ=WP<SL9MF4FA0@;,94&3/#.+ '$!    (('--,<;:YYXyyx••”¦¦¦­­¬±±±¶¶µ¾¾½ËËÊÞÞÝêêêìììììììììîîîõõõùùùûûûüüüýýýþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüúùùôóóæååÓÓÒ¿¾»¨¦¢›––”‰‡~|znwthnj]faPd_Md^Ka[Fb[Ee]FiaHnfLsjPxoTvY…|_‹c’ˆh›‘o¥šv« {¬¢}¬¢~°¤¹­†º®‡·«„¼°‰Åº’Ê¿˜Ê¾—ȼ”ɾ–ËÀ˜ÎÛÒÇ ÒÈ¡ÓÉ¡ÚѪÜÒ­ØΧÚЪ×ͧÍÁ™Ç»“¶Ž¸¬†·«…¹­‡º®‡½±‰À´Ä¹‘¶¹­†°¤¬ |³§º®‡ÁµÄ¸Ã·¿³‹¹­†¶ªƒ¸¬…½±ŠÂ·Ç»“ȼ”ȼ”Ê¿—ÌÁ™ÎÛΚʿ—ȼ”Ê¿—ÌÀ˜Ê¾—Ê¿—Ê¿—ɽ•É½•É½•Ç»“ĸ¶Ž¿³ŒÁµÄ¸Áµº®‡¯£}™m‘‡g¬¢}¹®‡¿³ŒÆº’Ƚ•È¼”ȼ”ËÀ˜ÏÅÌÁ™É½•É¾–ȼ”ɽ•ÑÆŸÒÈ¡ÒÈ Ö̦ÔË¥ÑÆžÑÆŸËÀ˜º®ˆ©y—Œk‚y\skQb[EKE3:5'2.#1-#<:3XVP™˜•ÖÕÔõõõüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýîîìÔÒÊþ©ÓÍ®äݾåÞ¼èáÃîèÏíçÍêãÅçßÀåܹáØ´ÛÓ®ØÏ©ÖÌ¥ÓÉ¡ÑÆŸÎÜ˿—Ç»“Ź‘ĸƺ’ʾ–ɾ–Ç»“Ź‘¶ŽÀ´Œ¾²Š¿³‹Ã·Æº’ɽ•ËÀ˜ÌÀ˜Ê¿—Ź‘¶ŽÂ¶ŽÆº’ƺ“Ĺ‘Ƚ•ÎÛÐÅžÌÁšÇ»“ƺ’ÌÀ˜ÑÇŸÑÆŸÔÉ¢ØÏ©ÜÓ®ÛÒ­ÖͦÑÈ¡ÎÃË¿˜Æ»“·¿´Œ½±Š»¯ˆ¹­†¾²‹Ä¸¾²‹´¨‚¬ |§œx©žzµ©ƒ¾²‹Â¶Ž¿³‹¹­†µ©‚´¨¸¬…¾²‹À´ŒÀ´ŒÁµÆº’Ë¿—ËÀ˜ËÀ˜ÌÀ˜ÎšÌÁ™É½•Æº’÷Áµ¾²‹½±ŠÀ´ŒÀ´¿³‹·«„°¤¬ {«Ÿz¨y¥šw¤™u£—tŸ“q’pšmŽ„d‚y\zqUxpTrjPjbJh`Ie^G`XCWP<MG5C>/A<-?:+;6(51$/+ +'$!    ,++433===VUUyxxŽÀÀÀçççðððóóóôôôôôôõõõöööúúúüüüýýýþþþþþþÿÿÿþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûïîîææåÝÜÛÈÈÅ·¶±®­¨œš“ƒ‰†{~{noiYjdRg`Lf^Ig_HjbInfMtkQ{rVƒy[Šb’ˆh˜lœ’o •t¢˜u¦œw¯¤´¨‚µ©‚¹­†ÁµŽÉ½•É¾–Ç»“ƺ’ȼ”ÌÁ™ÏÄœÑÆŸÔÉ¢ÚѬÛÒ­×ͧÖ̦ÓÉ¢ÍÁšË¿—Ǽ•ÀµŽ¿³‹¿³‹½±‰½±ŠÀ´Ã·¼°‰­¡}¦›w¨y²¦€½±ŠÄ¹‘¶Ž½±Š¹­†µ©ƒ·«„¼°ˆÁµÅ¹‘Ç»“ȼ”Ƚ•Ê¿—ËÀ˜ÍšÐÅžÎÛɾ–Ê¿—ɾ–ƺ’ĸƺ’ʾ–ɾ–ȼ”ȼ”ĸÀ´Œ½±Š¾²Š¿³Œ¼°ˆ°¥¡–s›n •s·¬†¿³ŒÀ´Ã·Æº’ȼ”ȼ”ËÀ˜ÐÅÎÛ˿—Ƚ•È¼”ʾ–ÎÛÑÆŸÔÉ¢ÚЫÙЪÓÉ¢Ñƞɾ–»¯ˆ®£} •rŠ€a{rWkcKRK8?:*41$.+!0-%@?9zzv¾½»ìììùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûéèæÊǼľ¥ÙÒ³æßÁæݽèàÁíçÍíçÌéáÃäܹãÚ¶áØ´ÝÔ¯ÙЪ×ͦÕˤÑÇŸÍšʿ—Ç»“÷÷ǻ“ÍšÌÀ™È¼”Ź‘÷À´½±‰¿³ŒÅ¹‘ƺ’ƺ“ʾ–Ë¿—Ê¿—ȼ•Ä¸ÁµÂ¶ŽÆº’ɾ–ɽ•ËÀ˜ÐÅžÌÁ™Ç»“ȼ”ÌÀ˜ÎÛÌÁ™ÐÆŸ×ͨØЫ×ΨÔÉ£ËÀ˜Ç»”ÌÀ˜ÍšÌÀ˜È½•Ä¸À´Œ»¯‡½±ŠÀ´µ©„¬ |ªŸ{©žz¬¡}¸¬†¼°‰»¯ˆ¶ªƒ¶ªƒ¸¬…·«„¹­†½±‰À´ŒÁµÁµÇ»“ÍšÏÄœÏÄœÎÛÎÛʿ—ƺ’÷¾²‹»¯‡º®†¼°ˆ¾²‹¼°‰·«„¯£~¨œx£˜u¡–s •sž“q—Œk…eŠa†|^ƒy\|sWskQjbJbZDWQ=PJ7MH6KE4GA1A;,94'1-!.*+(&#!"! ,,,665>>>QQQƒƒƒ•••ŸŸŸÁÁÁâââãããèèçüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþùùùìììèèçáàßÓÒÏÄÿ¯­¦˜•ŒŒˆ}|wism]leRibLjcLmeMriOxoT‚xZˆ~`Œ‚c…e•‹jšoŸ•r¥šw¬ {²§¶ª„½²‹Ç»“ɽ•Æº’¶ŽÄ¸É½•ËÀ˜ÐÄÔÊ£ØÏ©ØÏ©ÔʤÏÄœËÀ™ÍšÐÅžÑÇŸÍšǻ“¶Ž¿³Œ¾²‹½²Š»¯ˆ²§§›x¦›w« {³¨‚½²‹Ã¸‘»°‰¶ª„µ©ƒ·«„º®‡½±‰À´ŒÃ·Æº’Ç»“ɾ–ÎÛÍšÍÁšÑÇŸÏĜȽ•È¼”ƺ’¶ŽÂ¶ŽÅº’ÍšÍÁšÉ½–Ç»“÷À´Œ¿³Œ½±‰¸¬…²¦€¥™v—Œk¡–t´©ƒÄ¸‘Ç»“Ź‘¶÷ƺ’Ç»“Ê¿—ÏÄÏÅÍÁ™È¼”Ç»“ȼ”Ê¿—ÎÃœÔÊ£ÛÑ«ÚÑ«ÓɢΛŹ‘»¯ˆ¶ª„­¢|”Šix[ofMWP<C>.51%,)*'54-^]X¥¤¢åååøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúææãÆøÇÀ¦Þ׸çáÄåݽæÞ¾ëäÇëåÉéáÁãÛ¸âÙµâÙ´ß׳ÜÔ¯ØÏ©ÓÉ¢ÍÁšÇ¼”ʾ–Ê¿—ȼ”Ë¿˜ÏÅžÒÇ ÎÛǻ“À´ÁµÃ·À´ŒÁµŽÅ¹‘¾²Œ¿´Í›ÑÇŸÐŞ͚ǻ“·ĸŹ‘Ĺ‘÷ƺ“Ê¿—Ç»”ĸ‘Ç»“ÌÀ˜ÎÛΚÏÄÒÈ¡ÓÉ¡ÒÇ¡ÐŞʿ—Ç»“ʾ–ÍÁ™ÏÛÍÁ™É½–ĸ¼°‰¸¬…¸¬…·«…¸­†º¯ˆ¶ª…²§‚±§‚¯¥€¯£~´¨‚»¯ˆ¿³‹¸¬…´¨·«„¿³ŒÃ·Â¶ŽÅº’ËÀ˜ÒÇ ÑÇŸÏÛËÀ˜Å¹’¿³Œ¿³‹½±‰º®†»¯‡½±Š¾²‹¹­†°¤~£˜u›n•‹i‘‡g…fŒ‚c}uXvmS{rVtkQlcKf_G[T?OI6IC1A<,:6(51%1-"-)*&%" $$#442A@@ONNSSSTTT\[[xxx™™™£££ÅÅÅìììóóóôôôûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþûûûóóòííëÛÚ×ÅÄ¿´³¬¡ž•Œˆ{}mxranhSogPriQwnS|sW‚x[ˆ~_…f“‰h–‹jœ‘o£˜u©žz¯£~µ©ƒº®ˆÂ¶ŽÄ¸¾²ŠÁµŽÉ½•ÏÄÑÇŸÒÈ ÕÌ¥ÕˤÑÆŸÌÀ™È½•Ê¿—ÎÛÐÆžÎĜʿ—Ź‘¶Ž¼°ˆ·«„·«„¹®‡»°Š¹®ˆ´¨ƒ­¢}®£±¦‚°¦´©ƒº®‡½±‰»¯‡¸¬†¿³ŒÄ¸Ä¸Å¹‘ʾ—ÑÆŸÓÈ¡ÒÇŸÑÆŸËÀ˜Å¹‘ƺ’Ź‘¶ŽÃ·É¾—ÓÉ¢ÒÇ ËÀ™Å¹‘¿³‹¼°‰¾²‹»¯ˆ°¤~šmŽ„e›‘p³©„Ⱦ—ÏÄÊ¿˜Ä¸ÁµÁµÂ¶ŽÃ·Â·Ã¸‘ɾ–ËÀ˜Åº’Ź‘Ƚ•ÌÀ˜ÍÁšÎÛÓÈ¡ÒÇ Íšʾ–÷»¯ˆ¸¬…±¥šŽm‡}_tlR[T?D?062%,('$.,%GF@‘ŽÞÞÞ÷÷÷ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøøßÞÛÄÀ²ÍÆ©âÛ¼èáÄèáÃçàÀèàÀèàÀæÞ½ãÚ·âÙµâÙµâÙ´ÞÕ°×ΨÏÅȽ•Æº’ɽ•ÌÀ˜ÌÁ™ÑÆŸÕË£ÓÈ¡ÌÁ™Ä¸¾²Š½±Š¿³ŒÀ´ŒÂ¶ŽÃ·¼°‰½²‹ÊÀ˜ÒÈ ÔÊ£ÐÅÌÁ™É½–ȼ•Ä¸¿³‹ÁµÂ¶ŽÀ´Œ¿³ŒÂ¶ŽÇ»“ÍšÐÆžÏÅÐÅžÐÅžÌÁ™É¾–ɽ•Æ»“ƺ’ȼ”ɽ•É½–Ç»”Ç»”ƺ’Áµ»¯ˆ¸¬„¸¬…½±‰À´Œ¾²‹¹­†±§‚­£~­¢}³§»¯‡¿³Œ¼°‰¸¬…¸¬…½±ŠÂ¶Ã·Æº’ʾ—ÑÆŸÐÅžÌÀ˜Ç»“À´Œº®‡¹­†¸¬…¶ª„¸¬…¸­†µ©ƒ¬¡|¡–s”‰iˆ~`uY}tXypUpgNc[D]V@`YCYS>QK8KE4A<,51%/, )&$!  ! +**:::IIIZYYmllttu†††«««ÉÉÉÏÏÏÛÛÛðððüüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøøøððïààÞÌËȾ¼µ«¨Ÿ–’††rztawoYxpU|sVxZ‡~_Œ‚b…e–Œk›nŸ”q¤˜uªžy®¢}µ©ƒº¯ˆ¼°‰Â¶ŽÉ¾–ÐÆžÓÈ¡ÒÇŸÑÆŸÎÛʾ–Æ»“ƺ’ȼ”Ê¿—Ë¿—Ǽ”ƺ’Ź‘Ź‘¿´Œ¸¬…·«„¼°‰Á¶ŽÁ¶Ž¼°‰±¦­¢}¬¡|­¢³©ƒ»°‰¿³‹¾²Š»¯ˆ¾²‹ÁµÁµÄ¸Ë¿—ÓÉ¢ÖÌ¥ÕˤÑƞʿ—Ź‘ƺ’ƺ’Ź‘ɽ–ÏÅÔʤÒÉ¡Íšĸ¼°‰º®†»¯ˆ¸¬…ªŸz‹€b‚y\¡—v½²ÏÅžÔÊ£ÐŞɾ–Æ»“øÁµÀ´Œ¾²‹½±ŠÁ¶ŽÅ¹’ĸǻ“ËÀ˜ÎÛÎÛÍ›ÍÁšÉ¾–ƺ’÷¿³‹¹­‡¶ª„¯£~™Žm‰axpT`YCJD4:5'-)$!'$;95ƒ‚ÎÎÎòòòüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ööÖÔÐÀ»©ÐɪàÙºæÞÁéãÇéâÄæÞ½äܺãÚ·áØ´àײßÖ±ßÖ±ÛÑ«ÔÊ£ÎÛʾ–Ƚ•É½•Ë¿—ÍšÑÆŸÓÈ¡ÎÛƻ“¿´Œ¼±Š¸¬†µ©ƒ¼°‰ÁµÂ¶ŽÀ´ŒÀ´Åº’ÎÛÓÉ¡ÐÅÐÅÏÅË¿˜Ã·¾²‹ÁµŽ¿³Œ¸¬…»¯ˆÂ¶ŽÈ½•ÎÃœÒÈ¡ÐÅÐÆžÐƞȽ–֦ŽÁµÂ¶ŽÄ¸Ã·Áµ½±ŠÁµŽÆº’Ź‘¶Ž½±Š¸¬…·«„»¯ˆ½±Š¼±‰¸­†¶«„µ©‚²¦€µ©‚º®†¾³ŒÀ´¾²‹½±Š¾²‹Ä¸Å¹‘Ç»“ËÀ˜Ê¿—Ç»“÷½±‰·«„³§°¤~­¡|®¢|¬ {¤™v™ŽmŒ‚cƒz\tlQh`Hh`IbZDVO<PJ7KE4E@/@<,;6(40$-*&#    %$$666GFFUTTmml‰‰Š–––±±±ËËËÕÕÕâââóóóüüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúùòòñèèæàßÜÏÍÉ·µ­ œ‘‡x€xd|t[}tY€wZ†}^ƒc’‡g•Šj—Œkœ‘o¢—t§œx« {°¥€»¯ˆÃ·É½•ÍšÑÆŸÒÈ Í›ǻ“÷ÁµÂ¶ŽÄ¸Æ»“ƺ’¿³Œ¾²‹Â¶É½•Åº’¾²Šº®‡¸¬…¸¬…¼°‰¿³‹½±‰¹­†µ©ƒ²¦€´¨‚¹­†¼°‰À´ŒÂ¶Ž¿³‹½±ŠÀ´ŒÃ·È¼”ÐÆŸÔÉ¢ÓÉ¢ÑÆžÌÁ™É½•É½•È½•È¼”Í›ÒÇ ÑÆžÐÅËÀ˜Â¶Žº®‡·«„¸¬…¶ª„«Ÿz‹bƒz^¤›y¼²ŒË¿˜ÒÈ¡ÓÉ¡ÑÆŸÎÛȽ•Â·À´Œ¿³‹½±Š¼°‰¿³‹Å¹’Ë¿˜ÎÛÏÄœÐÆžÑÇŸÌÀ™Å¹‘Áµ¼°‰¸¬†¶ªƒ²§€ªžy•‹jˆ~`zrVg`HRL8>:*/+# " 540rqoº¹¸éééúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöööÕÔÐÀ»ªÑÊ«ßظáÙ¹äݽçàÂèâÅèáÃäܺÜÓ®Ö̦ÔÉ£ÕË¥ÓÈ¡ÏÄÑÇ ÐÆŸÍšÌÁ™Ê¿—ȼ”Ë¿—ÌÀ˜Æ»“½²Œ´ª…³©„®¤€®¢~»¯‰Å¹‘Ź‘Ź‘ƺ’ɾ–ÎÛÐÅÍÁ™ÌÁ™ÍšÌÁ™È¼•Â¶À´Œ»¯ˆ¸¬…¾²ŠÆº’ËÀ˜ÏÄœÐÅžÍÁ™ÌÁ™ÌÁ™Ç¼”÷À´Œ½±Š»¯ˆº®‡½±Š¾²Šº®‡À´ŒÅ¹‘ÁµŽ¿³Œ¿³‹¼°ˆ¼°‰À´Œ¾²Š¼°ˆ¼°‰º®‡·«„²¦€±¥³¨µ«…º¯‰¿³ŒÁµÁµ¾²‹¼°‰»¯ˆÀ´À´¿³Œ¿³‹»¯ˆ³§­¡|¥™vž“p›‘n™m’‡g‚y\rjPg_H^VAUN:QK7JD3C>/>9+94'3/".* *'#! 
+
+**+A@@NNN^^^€•••¦¦¦ÎÎÎáááèèèôôôüüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüûùùøïïíááÞÑÐ̺¸° ›Šz„}h~u[€w[†|_‹b…e“‰h™Žmœ‘oŸ•r§›w¯£~¸¬†Á¶ŽÉ¾–Ë¿—ΚÐÅËÀ˜Å¹‘À´½±Š»¯ˆ»¯‡¿³‹Áµ¾²‹¾²‹Á¶ŽÇ¼”·¹®‡º®‡½±Š¾²‹¿³ŒÀ´Œ¿³‹¼°ˆ¸¬…¶ªƒ¶ª„¸¬…·«„¹­†¾²ŠÀ´ÁµÀ´Œ¿³ŒÀ´ŒÄ¸‘Ƚ–ÍšÏÃœÎÛÍÁ™ÌÁ™Ë¿—ɽ•ËÀ˜ÎÛÏÛÍšǼ”»¯ˆ²¦¯£~´¨‚·«„­¢}Œ‚d†|_ª |ÀµŽËÀ˜Í›Î›ÎÛÎÛËÀ˜Å¹‘¶Ž½±‰¸¬…º®‡¿³ŒÇ»“ΛÑÆŸÍšÎÛÏĜȽ•Â¶Ž¿³‹¸¬…²¦€­¡|ªŸz¥™v–Œk‹b€vZpgNXQ=A;,0,!" #"]\Z¯®­æææùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþôôôÒÐËþ©ÔÍ®ß׶àØ·âÚºçßÁëåËìæÊäݽ×ͨÏÄÌÁ™ÎÛÌÁ™Ë¿˜ÐÆ ÑÇ¡ÍÛËÀ˜Ç¼”¶ŽÁµ¼±Š¯¤£™wž•t¥œzª¡}°¥€¿³ŒÈ¼”ȼ”ȼ”ɾ–ÌÀ˜ÍšËÀ˜Ç»“Ç»“ɽ•ËÀ˜Ë¿—Æ»“À´Œ»¯‡¼°ˆÂ¶ŽÈ¼”Ê¿—͚͚ʾ–Ç»“Ç»“ɽ•Æ»“À´½±‰¹­†·«„º®‡½±‰¼°‰ÁµÄ¸½±Šº®†»¯ˆ¾²ŠÂ¶ŽÅ¹‘¶Ž½±Š½±‰º®†µ©‚¯£~®¢}°¤±§‚·­‡ÀµÄ¸Áµ·¬…²§²¦µ©‚´¨‚³¨‚¶ª„²¦€©y •r–‹jŒ‚cˆ~_ƒz\{rViaIVP;JE4D>/@;+83&2-!/+ )&&"!
+
+
+,,.BBBQQR___wwxžžž½¼¼ÑÑÑëëëðððõõõüüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøøøóóóççåÙÙÔÇÅ¿¬¨”~‡€jx^„z]ˆ`Ž„e“‰h—Œj™Žm¡–sªŸ{±¦€º®ˆÂ·Æº“Ƚ•Ê¿—ʾ—Ç»“÷¾²Š¹­†·«„º®‡½±‰¾²ŠÀ´ŒÃ·Ä¸½±Šµ©ƒº®‡Â¶ŽÆº’Ź‘¶ŽÀ´Œ»¯‡¶ªƒµ©ƒ¶ªƒµ©‚´¨¶ª„½±ŠÃ·Å¹‘¾²‹»¯‡¹­†»¯ˆÀ´Æº’Ë¿—ÍšÍÁ™ÍÁ™Ë¿—ɽ•É¾–Ë¿—ÌÀ˜È½•ÁµŽµ©ƒ®¢}­¡|²¦€²§¨yŠ€b‡~`°¤€Ä¸‘Ê¿—Ç»”Ç»“ɽ•ËÀ˜Ë¿—Ǽ”Ź‘¾²‹¹­†¾²ŠÄ¸Æ»“ËÀ™ÏÄË¿—ȼ•È¼•Æº“ĸÁµ¹­†±¥€­¢}©ž{¤™v™Žm…e…{]rjPYR=A<,0-"" <;9¤¤£ãããùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþïïîÆûĿ§Õήß׶ãÛ¼æÞÀéáÄêãÅêãÆâÚ¹ÔÊ£ÏĜΚÎÛ˿—ȼ”ɾ–ɾ–Ç»“ø¿³‹»¯ˆ´©ƒ§œx‘ˆh†}`ˆbŸ•s±¦¼°‰Ä¸È¼”ȼ”ȼ”ȼ”Ƚ•É½•È¼”ĸŹ‘Ç»“Ƚ•È¼”Ç»“÷¿³‹À´ŒÄ¸Æº’Ź‘ɽ•ÌÁ™É¾–Ź‘÷ɾ–ɽ•Â·¿³Œ¿³‹½±Š¼°ˆ»¯ˆ½±‰Â¶ŽÄ¸½±Š·«„¶ªƒ»¯ˆÃ·Ç»“Ç»“ø¼°‰¶ª„°¤©žzªŸz±¥¸­†¿´Ã·Â¶Ž»°‰°¦­£~®£}¯£}ªŸz¦šw¤™v ”s—ŒlŽ„e…{^}uXvmSmeMaZDQK8@;,61$/+*&$!   ++,BBC[[[ƒƒ„¦¦§µµµÂÂÂßßßúúúûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýøø÷ññðäãáÍË맚‘‹w„|cƒz]ˆ~`Œ‚c‘‡g•‹jœ’p£˜u¨x¯£}·«…ÀµŽÃ·Ä¸Ê¿—ËÀ˜Ç¼”÷¿³Œ¾²Š¼°ˆº®‡º®‡¿³‹Ä¸Â¶Ž»¯‡µ©ƒº®‡Â¶ŽÇ»“Ǽ”ƺ’Á¶Žº®‡³§±¥±¥²¦€µ©‚¼°ˆÃ·Æº’¶¼°ˆ¹­…º®†½±ŠÀ´ŒÂ¶ŽÆº’ȼ”ɽ•É½•É¾–ʾ–ÌÀ˜ÌÁ™É½•Â·º¯ˆ²¦€°¤~°¤~­¡|¤™u–‹jw[ˆ~a²§Ä¸Ç»“ĸŹ‘ȼ”Ƚ•È¼”Ç»“Ç»“ĸÁµÅº’Ƚ•Ä¸Æº“ʾ–ȼ”·¿´ŒÇ»“ʾ–ź’¾²Š¹­†¹­†²¨ƒ§ž{šn’ˆg‡}_ogMUN:A<,1-"! /--••”ââáøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîíÃÀ·Ä¿§ÔÍ®ÜÕµßظåÝ¿çßÁåݽäÜ»ÜÔ±ÒÇ ÍšÌÀ˜Ë¿—ź’ÁµŽÂ¶Â¶Ž¿³‹º®‡°¤£˜ušn•Œk•Œl–lœ’q°¥€½±‹Ã·Ç»“ȼ”Ƚ•Ê¿—ɾ–ƺ’ƺ’Ç»“Ź‘ƺ’Ç»“Ź‘Ź‘Ç»“ƺ’ĸĸĸĸŹ‘ȼ”Ê¿—ȼ”÷À´ŒÉ½–ËÀ˜Å¹‘¶ŽÀ´ŒÀ´Œ¾²‹¼°ˆ¹­†½±ŠÂ¶ÁµŽ¼°ˆ·«„¼°ˆÃ·Ç»“ʾ–ɽ–Á¶Žº®‡²§€¨y©žz±¥€»¯‡¾²‹¼°‰»¯ˆ¶ª„« |©žz¨œx£˜u›‘o”Šj†gŠ€bƒy\}tYvmSldL_XBRL9GA1<7)0,!'#      &&&778VVWsst––—¶¶·ÝÝÝôôôõõõûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþûúúïîíÙØÓ¾¼²œ—‡†g‚y]…|^Š€b‘‡g–Œk›‘nŸ•q§œx±¥€º®ˆ¾²‹Â¶ŽÉ¾–ÎÛËÀ˜Ç¼”ĸĸÀ´Œ»¯ˆ¶ªƒ»¯ˆÂ¶ŽÁµ½±‰º®‡º®‡À´ŒÆ»“ʾ–Ë¿—ȼ”Àµ·«„­¢}¬¡|±¥µ©ƒ¼°‰Â¶ŽÁµŽ½±Š¹­†¸¬…º®‡¾²ŠÀ´ŒÀ´ŒÀ´ŒÁµŽÄ¸Æº’ËÀ™ÐÅŸÎĜ˿—ȼ”ĸ‘½±Š¯£~¤™vœ‘o“ˆh†|_{rVtkQ†|_­¢}À´ŒÆº’Ź‘ȼ”ʾ–ƺ’ĸĸƺ’Ç»“Ź‘ƺ’Ź‘¶ŽÆº’Ê¿—ȼ”Áµ¼±‰Å¹’ʾ–Ç»“ÁµŽ¼°‰»¯ˆ·¬…­¢~œ‘o“ˆh‰`sjP[T?GA040$! +**ŒääãøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîíÃÀ·Ä¿§ÕίÚÒ²ÜÔ³âÛ»åݾâÙ¶ÝÕ±ÖͧÎÃœËÀ˜Ë¿—ȼ”ÁµŽ¹­‡µª„±¦­¢}ªŸz¡•s”ŠiŽ„e”‹k¨Ÿ|²¨‚¸­‡Ã¸Ç¼”Ç»“ƺ’ƺ’ȼ”Ê¿—Ƚ•Ã·Ä¸È¼”Ƚ•È½•Ç»“÷ĸǻ“Ƚ•È¼”ƺ’֦ŽÆº’ȼ”ȼ”Ç»”¶Ž¿³‹È¼•ÍÁ™É½•Åº’÷ÁµÀ´Œ»¯ˆµ©‚º®‡Ã·È¼”Ĺ‘¿³‹ÀµÅ¹‘ȼ”ʾ–ɾ–ĸ‘¾²Š¶ª„­¢}­¡}³§º®‡º®‡´¨‚²¦€¬¡|£˜u¡–t •r˜lŽ„e„{]zqVphOjaJg_HaZDUO<GA184'/,!(%  
+  ---???oooŽŽŽ³³´ÎÎÎâââòòòüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþüüüõõõêéçÔÑ˱®¢˜“…}eƒz]‹c†f”Ši™m¢—t¬ {µ©ƒ»°‰ÀµŽÊ¿—ÑÆžÐÅÎÃœÌÀ˜È¼”Ź‘¿³Œ´©ƒ¸¬†ÁµÄ¸Ã¸Â¶Ž¿³ŒÁµÇ»“ʾ–ËÀ˜É¾–Ĺ‘¼°‰±¥€®£~²¦€·«„¼°‰¾²‹»¯‡·«„·«„·«…º®‡À´ŒÂ¶ŽÀ´Œ»¯ˆº®†¼°‰Ã·Í›ÓʤÏÄȼ”Ź‘¶º¯ˆ¦›x˜ŽmŽ…eƒy\tkQkcKrjP‹c¬¡|¾²‹Æº’ɽ•Ë¿—Ë¿—Ĺ‘ÁµÃ·Æº’ȼ”Ź‘÷ÁµÁµÆ»“Ë¿—Ƚ•Â¶Ž¾²ŠÃ·È½•È½•Åº’Àµ»¯ˆ¹­…±¥’p“ˆhŠ€b{rVe^GOI784(" '''‚‚ÙÙØôôóüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîíÃÀ·Ä¿§ÖбßØ·áÚºåÞ¿åݾàصÛÑ«ÐÆŸÇ»”Ê¿˜ÏÄȼ”¾²‹°¥šnƒd‹bŽ„d™Žl¦šv« {²§‚¾³ÁµŽÂ¶ŽÉ¾–Ë¿—Æ»“À´À´Æº’Ź‘֦ŽÅ¹‘ɾ–ÌÀ˜Ê¿—Ç»“¶ĸǼ”Ë¿—Ƚ•Ã·À´ŒÁµÆº’Ç»“ȼ”ȼ”ĸ¶ŽÉ¾–ÎÛΚ͚˿—Æ»“À´Œ¹­†³§½±ŠÊ¿˜ÐÆžÏÄÌÀ™ËÀ˜Ê¿—Ƚ•Å¹‘Áµ¼°‰¹­†¸¬…¹­†¹­†¸¬…¹­†¸¬…³§§›wšn”Ši•‹j–‹j…e†|_xoUaZDQJ8IC2E?.?;+73&-*%" ''&444IIHeeeˆˆˆ   ËËËáááñññùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüûúùòòðáàÛÆÄ»¦¡‘Ž‡pˆc‰€a“‰i›‘o¥›w³§‚»°ŠÂ·ÌÁšÔÊ£ÕˤÚЩ×ͧÌÁ™Ê¿—Å»”³ª…¸®ˆÆº’ÎÃœÏÄÍš˿˜É¾–ȼ”ƺ’¶Ž¾²‹½²Š¿³‹¿³Œ¼°‰¹­†¼±‰¿³Œ¾²Š·«„±¦€²¦€´¨‚º®‡Â·Æº’ĸ‘¼°‰²¦¯¤¼°ŠÊ¿—ÎÛËÀ˜Ã·¹­‡°¥€¥šw•‹j—ŽnŸ–t—mƒy]wnTˆa£™v¹­†À´Å¹‘ËÀ˜ÌÀ˜È¼”÷÷ƺ’Ç»“Ź‘¶ŽÀ´ŒÀ´ŒÀ´ŒÄ¸È½•Ç»“ĸÀ´Å¹‘ʾ–ÌÁ™ÍÁ™È½•Àµ»¯ˆ²¦€’p“‰hƒc„{]qiOYR>A<-*&
+%$#mmmÊÊÊòòñûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîíÃÀ¶Ä¿§ÖϲàÙ»ãܽæÞÁäܼÝÓ¯Õʤɾ—¾²‹ÁµŽÄ¹“»°‹¬¢~™n†|^~uX…{]“‰h¦›wµ©‚¼°‰ÁµŽÆº’ȼ”ȼ”Ê¿—ʾ–Æ»“À´ŒÀ´Æº’ƺ’ƺ’ʾ—ËÀ˜ÌÁ™ÎšȽ•Â¶Ã·Æº’Ç»“ź’Á¶Ž½±Š¼°‰½±ŠÀ´ŒÂ¶Å¹‘Ç»“ĸ¶ŽÅº’Ë¿—ÎÃœÑÆŸÏÄɽ•Â¶Žº®‡´¨½±ŠÊ¾—ÎÃœÎÛÌÁ™ÌÀ˜ÌÀ˜Ê¿—Ź‘¾³‹¹­†¶ª„¶ªƒº®‡¼°‰»¯ˆ¹­†´¨‚¬¡|ž“q‘‡fŒ‚bŠ€a‰`w[wnTh`IPJ7>9*4/"0, *&" (((766JJJeee›››µµµÍÍÍÜÜÜêêêðððöööüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýüüüúúùóóñÞÝÙÄÁ·ž˜†ˆeŽ…f˜Žn¥šw´©„¾³ŒÅ¹’Í›ÒÈ¡ÕË£ÜÒ¬ÜÓ­ÑÇ ÍšƼ”·­‡º¯‰Å¹’ÏÃœÑÆŸÎĜ˿—ɾ–ʾ–Ç»“ÁµŽº®‡¸¬…º®†¾²‹¾²‹¾²‹Ã¸Ã·¼°‰³¨ƒ¬¢~« |°¤~¶ªƒ¿³‹Åº’Ǽ”½±Š°¤ªŸ{¶ª…÷ƺ’Á¶µªƒ¡—t™Žm–Œl˜n¤šx®¤¥šw‚d}tX‘ˆh¯¥Â·É¾–ËÁ™ÐÅžÌÀ™Å¹‘ÁµÃ·Ç»“ƺ’¶Ž¾²Š¾²‹¾²Š»¯‡¾²‹Ã·Ä¸Â¶ŽÁµÃ·Ç»“ËÀ˜ÎšÌÀ˜Ä¹‘¾²Š´¨‚¢–t–‹jŽ„d‡}_umR\U@B=.*& #""gggÉÉÉòòòûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîíìÂÀ¶Å¿§ÔαÜÖ¹ßعâÚ¼áØ·ÙÏ©ÑÅžÁµ¯¤~¬¡|¬¡}¤šx–Œl‡~`€wZ…{^“‰h§›x·«…¾²ŠÂ¶ŽÅ¹‘ɽ•É¾–ɽ–ɾ–Ǽ”Ź‘ÁµŽÃ·È¼”ɽ•ËÀ˜ÑÆŸÐŞΚ͚ƻ“ÁµŽÆº“ȼ”Ź‘¿³Œ»¯‡¹­†·¬…·¬…»¯‡½±ŠÀ´ŒÃ·Ä¸Â¶ŽÂ¶ŽÇ»“ÍšÑÇ ÑÇŸÌÀ˜Æ»“Àµ¹­‡¿³ŒÇ¼”Ǽ”Ǽ”ȼ•É½•Ë¿—ÌÁ™Åº’½±Š¸¬…´¨‚³§¶ªƒº®‡¼°ˆ¸¬…¯¤~¦šwšn…e†}_vYxoTkcK_XBQJ8?:*.*#  
+
+ 111EEEeeeƒƒƒšššµµµÊÊÊÙÙÙäääêêêðððôôôøøøûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüûúöõóØÕУ‡m™s¦›z·¬‡Á·‘Ƚ—ÍÃœÑÇ ÓÉ¢ÙЪÝÔ®×ͧÑƟɾ—À´À´Å¹‘ɾ–ÌÁ™ÌÀ™Ç»“Ç»“ÌÁ™Ê¿—ĸ¹­†µ©‚´¨‚·«„»¯‡¿³‹Åº’øº¯ˆ³¨ƒ­£« |®¢}³§¸¬…À´Åº’½²Š²§­¢}´¨‚»°‰»°‰³¨‚£˜u†gŒ‚d”Šj¥›y³©„¸­†¬¡|‘‡g€w[–mµ¬‡É¾—ÐÅžÒÇ ÒÇ ÌÁ™Å¹‘÷Ź‘Ç»“÷¾²Š»¯ˆ¼°ˆ»¯‡µ©ƒ¹­†¾²‹ÁµÁµÁµÁµÃ·Ç»“ËÀ˜ÍÁšÉ½–·¹­†ªžzž“q”‰i‡}_skQ\U@A<-(% ! hhhÊÊÊóóóûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýíí쿵ÆÁ§ÕίÙѱÚÒ²ÞÖ´ßÖ³ÜÒ­ÔÉ¢º¯Š–‹kˆa†|_„{^‰b‘‡g›n§œx³§‚·«…»¯ˆ¿³‹¾²‹Â¶ÌÁšÅº“¾³ŒÈ¼•Æº“¿³Œ¿³‹Å¹‘ËÀ˜ÍšÎÛÐÅÍš˿—ʾ–ɾ–Ê¿—ÎĜɾ—¿³Œ½±Š»¯ˆ¸¬…²¨ƒ³©ƒ»¯ˆ¼°ˆ»¯ˆ½±‰ÁµÅ¹‘ƺ’ȼ”Ë¿—ÏÛÑÆŸÒÇ ÑÆŸÎÜɽ–ʾ—ʾ—¶Á¶ŽÇ»“ȼ”Ë¿—ÌÀ™Ã¸¹­†´¨‚´¨‚µ©‚³§µ©ƒ·«„¯¤~¨y¤™v •s•Šj‚x\riPb[DNH6?9+1."'$
+ 
+  111AAAUUUzzz–––¶¶¶ÏÏÎÛÛÛäääêêêðððõõõööö÷÷÷øøøùùùûûûýýýýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþýýýûûûööôååß²¬š£›ƒ©Ÿ€¸®ŠÆ»•ÍÃœÑÇ¢ÕˤÕÌ¥ØΧÛÒ¬ÝÓ®ÚЪÔʤÏÅžÏÄœÌÁšÀµŽÀ´ŽÇ¼”Ǽ”ɽ•Íš˿—÷·«„´¨‚µ©‚³§¶ªƒ¹­†¹­‡»¯ˆ½±Š»°‰¹®ˆ¸¬†·«…¶ªƒ³¨µªƒ¹®‡¼°‰»¯ˆ¹­†»¯ˆ¹®‡°¦ –t—lœ“r¡—u¨œyµª„½²Š»¯ˆ­¡}”Šj‡~` –t¿´ŽËÀ˜ÍšÌÁ™ÌÁ™ËÀ˜Ê¿—Ê¿—ËÀ˜Ê¿—ÁµŽ»¯ˆ¼°ˆ¸¬†µ©ƒ¶ªƒ¸¬…»¯ˆ¿³‹Ã·Ä¸Â¶ŽÁµÃ·Ç»“ÌÁ™ÐŞ͚Ź’·«„°¤~¤™u†|_meM\U@E@0-)
+kkkËËËóóóûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýææ佺­ËŪØÏ®ÙЭÙЭÙÑ­ÛÑ­ÙЪÌÂœ¬¢€…|_vZ†|_Œc˜Žm§›w®¢|¶ªƒ¼°‰¼°‰¿³ŒÄ¸Â¶ŽÂ·É¾–¶½±ŠÈ½•Æ»“¾³‹ÁµÇ»“ËÀ˜ÎÛÍšʿ—ʾ–Ê¿—Ƚ•Ê¾–ÌÀ˜ÌÁšÄ¹’»¯ˆ¹­†¹­†¸¬…µ«…µ«…º¯ˆº®‡º®†½²ŠÄ¸‘ɾ–ɽ•Ê¾—ÎÛÑÇ ÓÉ¢ÓÉ¢ÓÉ¡ÓÈ¡ÒÇŸÎÛɽ–ĸ‘ĸ‘Ǽ”ʾ–ËÀ˜Ê¿—÷»¯‡·«„¶ªƒ³§­¢}­¢|®¢}¨y¤™v¢—t›n‹culRb[EPK895'(%
+   ***JJJvvvŽŽŽ¥¥¥ÊÊÊÛÛÛååäêêêðððôôôõõõöööùùùúúúûûûûûûûûûúúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýûûúóòïàÞÖÆ°¶¯–º±È¾šÐÆ¡Õ˧ÚЫÜÓ¯ÝÔ±ß׳áØ´ÝÔ¯ØϪÖÌ¥ÕÊ£ÏŶÀ´Ç»“ʾ–ËÀ˜ËÀ˜Ê¾–Ź‘¼°‰¹­†·«„²¦€²¦€´¨´¨¹­†ÁµÁµ¿³Œ½±Š¾²Š¼°‰µ©ƒµ©‚¸¬…½±‰»¯‰·«…º®‡»°‰µ«†©ž{¤™w¯¥³¨ƒ·«…ĸ‘ĸ¹­ˆ¤š}“‹p•‹m­¤…ĺ™Ê¿™Ê¾–Ƚ•Ê¿—ËÀ˜ËÀ˜Ê¾–ɽ•Æ»“¾³‹¹­†¹­†¶ªƒµ©ƒº®†º®†º®‡¾²ŠÄ¸Ç»“Ç»“Æ»“Ǽ”Ë¿˜ÏÄÑÇ ÏÄɾ–¾²‹·¬…ªŸ{‰€bofM]V@HB11-! ```ÆÆÆóóóûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÞÝÚ·³¢ÑÊ®ÕίÓ˪ÐÆ£ÍÞÌÁœÉ¿š·®Šš’qw[Œ‚d¡–tªŸz³§¹­†µªƒµ©‚¸¬…½±ŠÅº’Ë¿˜É¾–Ź’÷À´ÁµÇ¼”Æ»“¶ŽÄ¸Ç»“Ƚ•ËÀ˜Ê¿—ƺ’ȼ”Ê¿—Ǽ”Ç»“ȼ”ĸ¿´Œº¯ˆµªƒ´¨‚¸¬…¹®‡¹®‡º®‡»¯ˆ¾²‹Ä¸Ê¾–ÍÁ™ËÀ˜ÍšÓÉ¢×ͧÕ̦ÐÆžÏÄœÐÅÑÇ ÌÁšÇ»”Ë¿˜ÌÁ™Ê¿—ËÀ˜Ê¿—Ç»“¶Ž¿³‹¾²‹¹­†²¦€ªžz§›x¦›w¤™v¢—tž”qŽ„eypUe]FTN:C>/.*
+  )))FFFeee“““¾¾¾ÏÏÏÛÛÛéééòòòôôóööõøøøùùùûûûûûûûûûûûûüüüýýýýýýýýýýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûø÷õïîêßÜÒÈÁ¯½´–ɾ›ÓȤÙÏ«ÞÕ²âÛºæÞ¿æÞ¾âÙ¶ÜÒ­×ͦÖÌ¥ÓÈ¡ÎÜʾ–ɽ–ËÀ˜ÍÁšËÀ˜É½•Ç»“ƺ“Ź‘¿³Œ¹­…³§±¥³§€µ©‚¼°‰Ã·Ã·¿³‹»¯ˆ¿³ŒÂ¶Ž»¯ˆº®‡½±‰¿³‹¸­†±¦µ©ƒ¾²‹Ã¸‘¿µ»±Œ¼±Š»¯ˆ½±‹È¾—ź“µª‡–~—y¥›|·®“Ž¡É¾šÈ½•È¼”ʾ–ɾ–Ç»“ĸ¶ŽÂ¶Ž½±Š·«„´¨‚´©‚·«…»¯ˆ¼°ˆ¼°‰À´Å¹‘ȼ”ËÀ˜ÍšÎÛÒÇ ÓÉ¡ÐÅÌÀ˜Æº’¿³‹µª…¦z†gwoTaZDJD33.#"RRR½½½ñññûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüÜÛØ·³¢ÓÍ°Ïɬ»¶­®¤ƒ¨|¤šx—Žnˆ€b‚x\™n³¨‚¹­†½±‰¿³ŒÀ´ŒÁµŽÄ¸‘Ǽ”ËÀ˜ÍšËÀ˜Æº’ÁµÀ´Œ¿³‹½±Š¿´Ä¸Ä¸Ã·Ä¸È¼”ɽ•Æº’Ź‘ĸÀ´Ã·Æº’¶·÷¸­†µ©‚¹­‡µ©ƒ³§»¯‰Ä¹‘ɾ—ɽ•ËÀ˜ÎÛΚÐÅžÕˤ×ͧÔʣ͚˿—Ë¿˜ÌÁšËÀ˜ÌÀ™ÑÆžÒÈ ÐÅɾ—÷¿³Œ¿³‹ÁµÃ·À´Œ¸¬…¯£}¨y¤™vŸ”rœ‘o—Œl†|^neMYR=FA040$! 555]]]ŠŠŠ±±±ÑÑÑéééðððñññõõõùùùúúúûûûüüüüüüýýýþþþþþþýýýýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûúúùöõóëéäÑͽ½µ˜Ç½œÔʧÜÒ¯âÙ¸åÞ¾éáÄèàÀâÚ·ÜÒ¬×ͦÕˤÑÆžÍÁšÏÄÔÉ£ÖË¥ÐŞȼ”ĸ÷ĸƺ’÷¼°‰·«„µ©‚µ©‚´¨¹­†ÁµÄ¸ÁµŽ»¯ˆ¾²ŠÁµ¾²Š¼°‰¼°‰¾²‹À´¿³¾²‹Ã¸‘ÌÂœÉÁ¡Ã»Á¶ÁµÁ¶Ž¿³»°‰¶ª…«¢‚¬¡‚µ©…º°ŽÃ¹—Ìœɾ—÷ÁµŽÂ¶ŽÂ¶ŽÁµÂ¶ŽÃ·À´Œº®‡¶ª„²§‚±§‚µªƒ¼°‰Ã·Ç¼”ɽ•É½•ÌÁ™ÏÄœÐÅÓÉ¡ÔÊ¢ÏĜɽ•Â¶Ž»¯ˆ±¦¥šw–Œk„z]mfMOI73/"!  GGG²²²îîîûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÚØÕ¸´£×ѳÓ̬Á¹›²ªŽ©¡…¢š€–z–p‘‡g“‰iªŸ{À´ŒÂ¶ŽÀ´Œ¿³‹Ã·È¼”ÌÀ˜ÎÛÎÛÌÁ™È½•Ä¸¾²‹º®‡·«…¹­†Á¶È¼•Áµ»¯ˆ¾²ŠÂ¶ŽÂ¶¾²‹½±Š¼°‰º®†½±ŠÀ´½±‰¿´ŒÃ·º¯ˆ¶ªƒº®‡µ©ƒ´¨‚À´Ê¿—ÎÜ˿—ɽ•Ê¿—ÍšÒÇŸÔÊ£ÓÉ¢ÌÁšÃ·À´ŒÃ·ÌÁ™ÎÄÐÅÔÉ¢ÓÈ¡ÎÜǼ”À´Œ¼°‰¼°‰À´ŒÆº’÷½±‰·«„°¤~§œx’o•ŠiŽƒd{qVbZEJE483&&" 334RRR|||³³³ßßßðððóóóõõõùùùûúúüüüýýüþþýþþþÿÿÿþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûúúúùùøóóðÞÜÐÇÁªÆ¾ŸÕ̪ÞÕ³åܽèáÂêãÄçß¿ÝÔ¯ÓÉ¢ÎÄÓÉ¢ÑÇ ÏÄœÓÉ¢×ͧÖ̦ÏÜŹ’ÁµÀ´ŒÂ¶ŽÆº’Ź‘¶Ž½±Š½±Š½²‹·«„¹­†ÁµÆº’ÁµŽ¶ª„¶ª„¼°‰À´¾²Šº®‡¾²ŠÄ¸Ç¼”Ź‘ɽ•ÐÆŸÌĤƽ Á¶¾²‹»¯‰¸¬…º®‡¾²‹¼°‰¹®‡¹®‡º®‡¾²‹Ã¸’Á¶¼°‰·«…¹­†½±‰½±Š¾²Š¿³‹¾²Š»¯ˆ¸¬…³¨ƒ²§‚¸¬†À´Ç¼”Ë¿—ɾ–Ç»“Ê¿—ΚÏÅÒÇ ÐŞȽ•¾³Œ¸¬…·«„²¦€©žzŸ”rƒdulRVP<62%!
+;;;¢¢¢ëëëûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÙ×Ó»¶¥ØÒ¶ßع×вÌÆ®ÇÁ¬Ã½¨À¹¢¸¯±¥€¯¤~¹®‡Ä¸Æº’Áµ¼°‰¿³‹Ä¸É½•ÍÁ™ÍÁ™É½•Å¹‘À´Œ¸¬†²¦²¦¿³Ê¾—ËÁš¾³Œ·«„º®‡¾²Šº®ˆ°¥€²§¸¬„·«„·¬…·«…µ©ƒ·«…»¯‡¹­†¸¬…»¯ˆ¼°‰¿³ŒÅ¹‘Ǽ”ɽ•È¼”ƺ’Ź‘Ê¿—ÐÅÑÇ ÎÛŹ‘º®ˆ·«…½²ŒÏÆ ÒÈ¡ÐÅÒÇ ÌšĹ‘ĸ÷À´Œ½±Š¾²‹Ä¸À´»¯ˆ¼°ˆ·«„­¡|Ÿ“q‘‡f…{]qhOWR=?;,/+!!&&'::;ffg””•ÄÄÄééé÷÷÷ùùùûûûüüüüüüýýýþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüûûûúúúôóòäâ×Öѽž¢ÕͬÞÖµåݾèàÁéâÃäܼÖ̦ʿ™Ç¼•ÒÈ¡ÕË£ÓÉ¢ÓÉ¢ÐŞ˿˜Ç»”ĸ¶ŽÁµÃ·Æº’Ç»“Ź‘ÁµÄ¹‘Ǽ”¿³Œ½±ŠÄ¸Æº“¾²‹¯£~®¢}µ©ƒÁµÀ´Œ¼°ˆ¾²ŠÀ´Ã·Åº’ʾ–ÍšËÀšÆ»–¾³Œ´©ƒ°¥€»¯ˆÄ¸‘Ǽ”÷¹®ˆ´ª…¹®ˆº®‡±¦´¨ƒ·«„³§´¨‚¸¬…¸¬…·«…·«„¸¬…¹­…¸¬…¸¬†¼°‰Ã·Æº“Ç»“Ƚ•Æº’÷ǻ“Ê¿—ÌÀ™Í›ɾ–¾³Œ´©ƒ°¤¶ª„·«„±¥€¤™vƒdqhOVP<:5'#  333•••çççûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÙ×Ò½¹¨ØÒ·èáÄæàÄáÛÂÞØÀÚÔºÖαÎŢǼ•Ã·À´ÁµŽÆº’÷½±Š¼°‰ÁµÈ¼”ÌÁ™ËÀ˜Åº’ĸ¿³Œ²§´©„½²ŒÅ¹’Ç»“Ĺ’À´¿³ŒÀ´Œ¾²Š¸¬…²¦€²¦€³§±¦®¤¯£~¶ªƒº®‡¼°ˆº®†»¯ˆÁµÅº’Ç»“ĸ÷ĸǻ“Ç»“Ź‘ƺ’Æ»“ƺ“Ç»“ƺ’øĹ’ǽ–ÍÃœÍÛËÀ˜Ê¾—·º®‡¼°‰ÁµÃ·Ã·Â¶ŽÂ¶¾²Šº®‡¾²Š»¯ˆ±¥€ •rŽ„d~uXg_HNH7;6),) " )))A@AffgžžžÕÕÕðððùùùûûûüüüþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüúúúôòïãàÖÖѾÈÁ¨×бß׸ãܼâÚ¹åݾåݾÝÓ¯×Í«ÕÌ©ÖÌ¥ÔÊ¢ÑÆŸËÁ™Åº’¿´Œ¼°‰¾²ŠÃ¸Ç»“Ǽ”ĸ÷÷ÁµÇ»“ËÀ˜Æº’¶ŽÂ¶Áµ»¯ˆ²¦€°¤~³§¼°‰À´ŒÀ´Œ½±Š½±ŠÁµÇ¼”Ê¿—ȼ”ʾ–Æ»”·­ˆ±§‚´¨ƒÂ·È¼”ƺ’¶Ž¾³Œ¼±‹¾²Œ»¯ˆ³§´¨‚µªƒ¯¥€°¥€²§²§¶«…»°‰º®‡¸¬…¹­†¿´ŒÆ»“Ê¿—ȼ”Ź‘ƺ’ĸ¶ŽÅ¹‘ĸÀ´Ã·Å¹‘¶Ž¿³Œ½±‹¼°‰·¬†­£~ž“q„z]g_HMF551$$! ,,-ŠŠŠãããûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÙ×Ó¿º«ÕϵéãÈìçÍìçÍêäÉçàÁãÚ¸ÛѬÓÉ¢ÎÛƺ“¶ȼ•Æº’À´Œ¾²ŠÁ¶ŽÉ½–ÎÛÍÁšÆ»“Ź‘À´´©„½±‹É½–Ƚ•Â¶Ž¼°‰À´ŒÄ¸Ä¸¾²Š¸¬…·«„²¦€­¢}ª }¨Ÿ{« {¶ªƒ¼°ˆ¼°ˆ¼°‰À´Æº’Ƚ•Ç¼”ĸ¶ŽÄ¸Æº’Ç»“Ź‘Áµ¾²‹¾²‹Ä¸É½•ÌÀ˜ÍšÌšËÀ˜É¾–Ç»“ĸ»¯ˆ²§´¨‚¼°ˆÄ¸Ç»“ƺ’÷¿³Œ½±Š¿³‹¼°ˆ±¥€ •r‹bvnS^WAF@151%+'#!%$"<;<```˜˜˜×××÷÷÷üüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûúóòîßÜÑÙÔÂÐɲÚÓ·àÙ¼ãܼàضãÛºåݽâÙ¶âÙ·ß×µ×̧ÒÇ ÎÛƻ“¿³‹¹­†´¨¸¬…÷ɾ–ʾ–ĸ÷ĸĸȼ”ÌÀ˜Ë¿—Ç»“¶Ž¾²Šº®†·«„¶ªƒ¶ªƒ»¯ˆÁµÃ·¾²Š½±ŠÃ·Ê¾–ÌÁ™È¼•É½–ź“·­ˆ¶¬†½²‹È½•Ç¼”¶ŽÀ´ŒÀ´ÁµÀ´½±Š¸¬†¶ª„³¨‚­¤€¬¢~­¢}­£´ª…¾²‹½±Šº®‡½±ŠÄ¹‘Ê¿—Ê¿—Ç»“ĸȼ”ƺ’÷Ź‘¿³‹·«„¼°‰Ä¸Æº“Ǽ•Æº“¿³‹µ«…¨Ÿ|˜ŽmvYc\EGB11-!$!
+
+ &&'ßßßûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûÛÚÖÀ¼®Ó̲èâÅìåÊíæÌëäÈéâÃæß¿ÞÕ±ÕˤÑƟΛ͚Ðƞ˿˜Ã·Ä¸È¼•ÎÛÑÇ ÑÇŸÌÁ™Ç»”÷÷Ź’Ǽ”ƺ’À´º®‡º®‡¾²Š¿³Œ¼°ˆ¹­†¸¬…°¥©žz§œy©Ÿz®¢}²¦€´¨‚·«„¿³‹Å¹‘ź’ÁµŽÀ´Ä¸Æº’ƺ’ƺ“ĸÀ´Œ¼°ˆ½±ŠÃ·Å¹‘ƺ“Ç»“¶ÁµŽÊ¾—Ë¿—Ƚ•Æº’»±Š°¦‚°¥€·«„¿³‹Ä¸Ç»“ƺ’ƺ“Ź‘Áµº®†®£}ž’p†|_ofNYR=A<-0,!(%'$,,*PPP‚‚ƒÁÀÀøøøýýýýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþýýýýýüúúøóñëèåÛÓλÔ͵ÜÖ»ãܾæÞ¿æÞ¿åÜ»ãÚ¶ßÖ²ÙϪÔÉ£ÐÆžÏÄÎÛɽ•Áµ¹­†´¨‚·«„À´ŒÅ¹‘Ç»“Ç»“ɾ–ÌÁ™ÍšËÀ˜Ê¾–ËÀ˜Ê¾–ƺ’Áµ½±Š»¯‡¼°‰¿³ŒÄ¸Ä¸Â¶Ž¿³‹Â¶ŽÇ»“ÌÀ˜ÏÄÏÅÊ¿—Ź’ĸ‘Ĺ‘ź’Ç»”ĸÀ´ŒÀ´Œ¼°‰·«…»¯ˆ½±‰¹­†³©„¯¦«£©Ÿ|©žz­¢}±¦€¶ªƒ»¯ˆÁµÃ·Ã·Ã·Ã·Ä¸Ç»“Ê¿—ɾ–Ź‘¶Ž½±‰º®‡¿³ŒÅ¹‘Ź‘À´¼°‰¸­†²§‚¨Ÿ|šo…{^kbKMG551$%"  ttuÛÛÛûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüßÝÙ¾°ÐʱæßÄêäÈêãÇçßÀãÛºâÚ¹ÞÖ³ÛÒ¬ÙΨÔÉ¢ÐÅžÑÆŸÌÀ™Å¹‘ĸȽ•ÎÛÏÄœÎÛÌÁ™ÌÁ›Í›ËÀ˜Åº’ÁµÀ´Œ¼°‰¹­†»¯‡¼°‰¼°ˆº®†»°ˆÀµº¯ˆ²§¯£~­£~®¤²§·«…¼°‰ÁµÃ·ÁµÀ´À´À´Â¶ŽÃ·Áµ¾²‹»¯ˆ·«„¸¬…¾²Š¾²Š½±Š¾²‹º®†¹­†Ç»“ʾ–ȼ”Ź‘½±Š´©ƒ³¨‚µ©ƒ¸¬…¼°‰Â¶ŽÇ»“ÌÀ˜ÌÁ™Ã·¹­†¬ {™k}tXg_HUN:@;,.+ '$*("21/^]^   âááýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüûøøöðîçßÛÎÚÕÀ×Ñ·àÙ½æÞÁæÞ¾æݽäÛ¸ÝÔ¯ÓÉ£ÎÃœÌÀ˜ÌÀ˜ÍšÏÛÌÁ™Ã¸»¯ˆ»¯ˆ¼°‰¼°‰¼°ˆ¾²ŠÄ¸ÌÀ˜ÒÇŸÒÈ ÎÛɽ•Ç¼”Ź‘ÁµŽÀ´ŒÀ´ŒÁµÄ¸‘Ǽ”ȼ”ƺ’÷¿³‹Â¶Ê¾–ËÀ˜ÍÁšÎÛÍšÌÁšÎÛÌÀ˜Ç»“¶Ž»°‰¸®ˆ¿³Œ¾²Š·«„¹­†¼°ˆ¼°‰»°‰¸®ˆ²¨ƒ®£~¬ {®£}³§¹­†À´ŒÃ·ÁµÀ´ŒÀ´ŒÀ´ŒÂ¶ŽÄ¸Ã¸Â¶¿³Œ»¯‡¸¬…¹­†½±‰½±Š·¬†µ©ƒ´¨‚±§­¢~¥›xšn„z]h`HMG561%&#
+ lll×××ûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýâáÞÄÀ²ÌÆ®âÛ¿éãÆèáÄãÜ»ÞÖ³ÜÔ±ßÖ²áØ´ßÖ±×̦ÏÄœÍÛʿ—ƺ’÷ǻ“ÌÀ˜Ë¿—ɽ•ËÀ˜ÑÈ¡ÔË¥ÎÛøº¯‡º®‡º®‡º®‡º¯ˆº®‡¸¬†¹­†À´È½•Å¹‘½²Š¸¬…³¨ƒ±§‚¶«…¾²‹Ã·Áµ½±Š¼°ˆÀ´Â¶Ž½±Š¾²Š¿³Œ¼°ˆº®†·«…´¨‚µ©‚·«…¶ªƒ·«„¹­…¶ªƒ·«„÷Ź‘ĸø¿³Œ¹­†¶ªƒ´¨³§·«„¾²ŠÆº“ΚÏÄĸ¸¬…ªžy•ŠizpUd\ESM:@;+0,")&,*#874ffe¯¯¯ëêêýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýüüüûøøöîìæÜ×ÇÚÕ¾ÛÕºãܾçßÁåݼãÚ·áصÛѬÍ›ɾ–ɽ•È¼”ɽ•ËÀ˜ÌÁ™Æº“¾²‹À´¿³Œ¹­†¶ªƒ¹­†ÁµÊ¿˜ÒÇ ÓÉ¢ÏĜȽ•Å¹‘¿³‹»¯ˆ¾²‹Ã·Ç»“ʾ–Ê¿—ɽ•Ç»“Ź‘¿³ŒÃ·Ê¿—ɾ–ȼ”Ë¿—ÏÄÔÉ¢ÔÊ¢ÎÛŹ’¼°‰µ«…´«†¼²‹¾²‹¹­†¸¬…»¯ˆÀ´ŒÃ·Â¶»¯ˆµ©ƒ²¦€³§‚¸¬…½±ŠÂ¶ŽÁµ»¯ˆ½±‰À´ŒÀ´ŒÀ´ŒÀ´Œ½±Š»¯ˆ¸¬†µ©‚´¨‚¶ªƒ¸¬…µ©ƒ®£~¯£~°¥€¬£¨ž{£˜ušn‚x\d]FLF451$%"
+ ``aÆÆÆøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþíìêÉŻſ«ÝÖºèáÃèáÃæßÀãÛ¹ÝÕ±ßÖ²âÙµàÖ²ÕˤËÀ˜É½•Æº’ĸŹ‘ȼ”ɽ•É½•Ê¿—ÍšÒÈ ÓÉ¢ËÀ˜ÁµŽ»¯‡¼°‰¾²Š»°ˆ´ª…°¦³¨‚½±‰Ä¹‘Ǽ”ĸ¿³‹º®‡¹­†º¯ˆ½±ŠÀ´ŒÁµ¾²Šº®†¹­†¾²ŠÁµ¿³‹¿³‹À´Œ½±Š»¯ˆ¹­†·«„·«„¹­†»¯ˆ¼°‰¾²Šº®‡¹­†¾²Š¼°ˆº¯ˆÅ¹’ź’½±Š±¦€®£~µ©ƒ»¯‡À´Ç»“ʾ–ɽ•Â¶Žµ©ƒ¦›w˜Žl‚x\jbJUN;B=-40%,( ,*#JIF‡†…ÈÈÈñññüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýüüüûûû÷öõìéâÚÕÃØÒºáÛ¿äÝ¿çàÂæß¿ãÚ¸âÙµàײÚЫÓÈ¢ËÀ˜Ä¸À´ŒÀ´Æº’Ç»”÷¿³Œ¹­†µ©ƒ¼°‰Ã·Æº’ɽ•ÌÁ™ÏĜ͚ɽ•Ç»“ÁµŽ¼°‰ÁµÈ¼”ËÀ˜È¼”Ź‘ƺ’Ź‘÷ĸƻ“ȼ”Ź‘ƺ’ÌÁ™ÏÄœÑÇŸÓÈ¡ÌÁ™Â¶Žº®‡»°‰½²Œ¶­ˆ´ª„·«…¸¬…¼°ˆÃ·Ä¸Áµ¾²Šº®†¸¬…¾²‹¿³‹¼°ˆ¼°‰»¯ˆº®‡½±‰À´ŒÀ´ŒÀ´ŒÁµÂ¶Ž¾²‹¹­†¶ª„µ©‚´¨¶ª„¹­†¹­‡¸¬…´©ƒ¬£§z¢—t™Žm…|^kcKOI740#" GGH¢¢¢òòòüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõôôÐÎÇþ«ÜÕ¹æßÁæßÁèáÃæß¿ãÛºâÙ·à׳ÜÓ­Óɢ˿—ƺ’ź’Ǽ”ʾ–ʾ–ɽ•ÌÀ™Í›ÌÁ™Ê¿˜É¾—ʾ–ø½±‰¼°‰»¯ˆ¸¬…³¨ƒ°¥€²¦º®‡ÁµŽÄ¸Â¶Ž¿³‹¹­†³¨‚²¦€»¯ˆÃ·Åº’ĸ‘¿³Œº¯‡¿³‹Ã·Ã·À´Œ¼°‰º®‡º®‡»¯‡¹­†»¯ˆ¾²‹À´ŒÁµÂ¶Ž½±Š¸¬…µ©ƒµ©ƒº®‡Ã·Ã¸¼°‰µ©ƒ´¨‚»¯ˆÀ´ŒÄ¸Ç»“ȼ”ƺ’¾²‹³¨‚¦œy›‘o‡}_nfMYS>F@073'/,"0.'SRO”“’ÔÔÓõõôüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýýüüûûûúúùôòïãàÕÓθÝؾæßÄæßÂèáÃèàÂæÞ½äÛ¸áÙ´ÝÕ°Ôʤʾ—¿³Œº®‡»¯‡ÁµÃ·Áµ½²Šº®‡º®‡Â·É¾–Ƚ•È¼”ɽ•ÍšÌÀ˜É½•Ê¾–Æ»“Á¶ŽÄ¸‘ȼ”ȼ”ƺ’֦ŽÂ¶Å¹‘ɽ•È½•Å¹‘ĸɽ•ÏÄœËÀ˜È½•Íšȼ•À´Œº®‡º®‡»¯‰µª…²§‚´¨‚´¨‚º®‡Ä¸Â¶Ž½±Š¼°ˆ¶ª„³§¹­‡¾²‹À´ŒÃ·Â¶½²Š¾²‹ÁµÃ·Â¶ŽÀ´Œ¾²‹»¯ˆ¹­†¸¬…¸¬…¸¬…¼°ˆÀ´Â¶Ž½±Šµª„ª |£™v’q–‹j…{^ofNUN;83'$!  889———ñññüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöööÔÒÍþ­ÚÔ¶åÞ¿æßÁèàÃèáÂçßÀäܺßÖ°×ΧÒÇ ÌÁ™Ä¸Ç¼”ÎÛÏÄœÍÁ™ËÀ˜ÐÅÏÄÇ»”ÁµŽÂ·Ë¿˜Ç»“¾²Š¹­†¶ªƒµ©‚¶ªƒ´¨‚²¦€¶ªƒ»¯ˆ¾²‹¾²Š»¯‡µ©ƒªžz¥švµ©ƒÃ¸É¾–ËÀ˜Æ»“¾²‹Â¶Ç»“Ź‘¿³Œ¹­†¶ªƒ¹­†½±Š¼°ˆ¾²ŠÃ·ÁµÁµÃ·¿³‹·«…¯£~´¨‚»¯ˆ¼°‰º®‡¹­†»¯ˆ¾²Š¿³‹Ã·Ç»“Ƚ•Ç»”÷»¯‡²§‚©Ÿ|œ’qˆ~`qiO\U@HB2:5(3/&31+VTR–•”ÕÕÔõõôüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýüüüûûùø÷õõóéçßÑͼÖѸäÞÃèáÄéâÅêâÄêâÄèáÂåܺÞÖ±ØϪÐÅŸÆ»“½±Šº®†º®‡¼°‰º®‡¸¬†¼°‰¿³‹¿³ŒÆ»“ËÀ˜Ê¾–Ƚ•É½•ËÀ˜Ê¿—Ƚ•ÌÀ˜ËÀ˜È¼”Ç»“ƺ’÷ĸ÷½±‰À´Ç»”ÍšËÀ˜Æº’Ç»“ÌÀ™ÏÄź“¿´ŒÈ¼”Ç»“Áµ¹­‡µ©ƒµ©ƒ·¬…¶ª„±¦€±¥¸¬…¶Ž¿³‹¸¬…µªƒ®£~©žz¯£~¹®‡Ä¸ÌÁšËÁ™Ã·Á¶ŽÃ·Ä¹‘÷¿³‹¸¬…·«„¹­†¹­†»¯ˆ¾²ŠÂ¶ŽÄ¸‘÷½±Š´¨‚©žz¡–s™Žm„dvYldLVO<;7)%" 445“““ñññüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ØÖÒ¾¯ØÒµåݾæßÁèáÃçßÁåÝ»äÛ·ÞÔ¯ÔÊ£ÐÅžÌÁ™Ä¸‘ɾ—ÒÇ ÓÉ¢ÐÆŸÎÛÐÅË¿˜ÁµŽÀ´Æ»“ÏÄȼ•»¯ˆµ©ƒ¶ªƒº®†¹­†µ©‚²¦€µ©‚¸¬…¹­†´¨‚­¢}«Ÿ{¦›w¥šw³§½±‰ÀµÆ»“Ǽ”Ĺ‘Ƚ•É½–À´½±Š½±‰»¯ˆ½±‰¿³‹¾²‹¿³‹Áµ¾²Š»¯ˆ½±‰½±Š¼°‰¸¬…¸¬†·«„« {ªŸz³§»¯ˆ¾²Š½±‰Â¶È½•Ë¿—Ź’½±‰µ©ƒ°¥« |ž”q‹cwoT`YDLE4>9+52'42+VTQ‘ŽÎÎÌóóòüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüùøöòñîéçáÒοÏʶßÚÁèáÆèâÄéâÄêãÅêâÅèáÃâÚ¹ÙЫÐÅŸË¿˜Ç»“¿³Œ½±‰º®ˆ²¦¬¡|®¢}¸¬…¾²Š½±ŠÃ¸Ê¿—ÌÀ˜Ê¿—ȼ”ƺ’ĸĹ‘Ë¿—ÌÁ™É½•È¼”ƺ’ÁµÁµÁµ»¯ˆÀ´ŒÉ½•ÐÅžÑÇ ÏÄÍšÍÁšË¿—ÁµŽ¿³ŒÌÁšÎÛƻ“¶«†²§‚·«„¾²‹º¯‰°¦±¦¹­†¿³‹º®‡²¦€¬¡|¨y¦›xª }³©ƒ½²‹Ç»“ʾ—Ç»“ȼ”Ƚ•Ä¸Áµ¿³‹¼°ˆ¼°ˆ½±‰½±Š¼°‰¼°‰¿³Œ¿³‹¹­†µ©ƒ²¦€­¡|¦›w›n…{^riOc[DNH550$  BBCžžŸôôôüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùßÞÛ¿²ÔδãݽäݾåݾäÜ»äÛ·äÛ¹àÖ´ÕʤÐŞ͚Ƚ•ÌÁšÒÇ ÑÇŸÏĜ͚ÌÁ™Æ»“¾²‹¿³‹Æº’Íšȼ•¾²‹¹­…¼°‰À´»¯ˆ³§¯£~µ©ƒ»¯‡¹­†±¥€ªžz©y©yªŸz®¢}°¥´¨‚¿³ŒÈ¼”ɽ•ÌÀ˜ËÀ˜Ã·ÀµÀµÂ¶ŽÀ´Œ¾²Š¿³‹À´Œ¿³‹¹­†¶ª„¹­†¾²ŠÁµ»¯ˆ³§«Ÿ{¤™u©žy³§¶ªƒµ©„·«„À´ŒÈ½•Ê¿—ĸ»¯ˆ·«„±¥ªŸz¡–s’‡huZg_GSM9E?/;7)53+NLI}|yº¹¸êêéüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûùôóðèæÜÖÔÅÐ̹ßÛÅéãËìåÊëäÇêãÅêãÅéâÄåÞ½ÝÔ±Òɢʿ—ɾ–ɽ•Ä¸º¯‡±¥€ªŸ{ªŸ{¯£~³§‚µ©ƒ·«„¾²ŠÇ»“ÍšÌÀ˜Ç»“ĸ¶ŽÂ¶ŽÆ»“ɽ•È¼”ȼ”ƺ’ÁµÀ´Œ¿³‹½±‰Â·Ê¿—ÏÄœÐÆŸÐÅžÎÛɽ–÷¾²‹ÀµÌšÏÜȽ–¹¯‰¹®ˆ¿´ÁµŽ¹®ˆ®¦¯¦·­†¿³‹¹­†¯¤~¨žz¨y©žzª }­£²§»¯ˆÄ¸Ç»“ɽ•È½•Æ»“Ĺ‘÷÷À´Œ¾²Š¿³‹¾²‹¼°ˆº®‡·«„²¦€²¦³§€¯£}¥™v”‰j|sWldLaYCKD2/+
+
+
+""#``a¿¿ÀúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüäãáÃÀµÏɲàÙ»áÚ¹âÙ¹ãÚ¸âÙ¶äÛºáÙ¸ÙЫÔÊ£Ñƞ͚͛ΛËÀ˜È½•Ç»“Ç»“ĸ¿³‹¼°‰¿³ŒÈ¼”ȼ”Ź‘¶ŽÃ·Å¹‘¾²‹³§­¡|´¨ƒ¼°‰»¯ˆ¶ªƒ±¥¯£~¯£~®¢}©žy¨y®¢}¼°ŠÇ»“Ç»”ÌÀ˜ÎÃœËÀ˜Ä¹’ÁµÂ¶ŽÀ´Œ¼°‰¾²‹Áµ¾²‹¸¬…µ©‚¹­†À´ŒÂ¶Ž·«…ªžz¢–s©x´¨‚º®‡²¦®¢}´¨‚¾²‹Å¹’Æ»“ĸÀ´Œ¾²‹µ©ƒ©žz¥šv™Žm†{^ngMZS>KF4A=-95+A?9ed`¡¡žâââüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüûööôêéâÛÙËÏ̹ßÚÅêåÏíçÎíçÍìæÉêãÅëäÆèáÂâÙ¶ØÏ©ÏÅÊ¿—ËÀ˜ÌÁ™Ç»”´©„¤™w¦œz±§‚¸¬†²¦¯£~´¨‚»¯ˆÃ·É¾–ɾ–ȼ”ȼ”Ź’¶ŽÃ·Åº’Ç»“Ź’÷ÁµŽÂ¶Â·ÁµŽÆº’ËÀ˜Ë¿—ʾ–ɾ–Ç»”Á¶¼°‰¼°ˆÀµÈ¼•Ê¿—ȼ”·Ĺ‘ȼ•ÁµŽ¶«…®¥¬¤€³©…¾³Œ¹­†°¥­£­£~­£}«¢~© }« |µ©ƒ¿³ŒÅ¹‘Ź‘ƺ’Ë¿—ɽ•Æº’Ź‘¿³Œ»¯‡¾²ŠÀ´Œ½±Š¹­†´¨‚³§µ©‚¶ªƒ±¦ •r‹€byoUpgNg_GNG5/+ 
+!]]^ÀÀÀýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþññðÉÇÀÈįÝ׺ãÛ¼äܽãÛºÞÖ²ÚЬÚЮà×µÞÕ²×ͨΛ˿—Ê¿—ȼ•Â¶¼°‰½±‰½±Š¼°ˆ¼°‰ÁµÉ¾–ʾ–Ƚ•É½•Ê¿—ɾ–¶Ž¸¬†²§´¨´¨‚±¦€µ©ƒ¸¬…¶ªƒµ©‚²¦€©žz« {µ©ƒ¾²ŠÁµŽÁµŽÊ¿˜ÏÅȼ•Àµ¼°ˆº®‡»¯ˆ¾²ŠÂ¶ŽÃ·À´Œ¼°ˆ»¯‡½±‰À´ŒÂ¶Ž¾²Š°¤¥™v¬ {¹­†¿³Œ¸¬…µ©ƒ¼°‰¾²‹¾²‹¿³ŒÂ¶ŽÄ¸Ä¸¼°‰±¦€¬¡|Ÿ”rŠbrjP`YCVO;LF5?:-<92TRM„ƒ€ÍÌËùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúùõõñèæàØÕÈÒϾÛØÃéãÌíçÎíçÎíçËêâÅèàÁìåÉèáÄßÖ³ØЪÑÈ¡ËÀ˜ÌÀ˜ÎÛ˿—¸®‰¦z¥œz±¦¼±‰¼°‰»¯‰¾²‹¿³Œ¿³‹¾²‹À´Å¹’ÌšËÀ˜Æ»“Ǽ”Ƚ•Æº’»¯‰¸­‡Ã·Ê¿™Íœǻ”ź’ƺ’ȼ”ȼ”ź’½²Œ·¬†·¬…·«„»°‰È½•ÌÁ™ÌÀ˜Ê¾–ʾ–ɽ–Ĺ‘¼°Š´©„°¥€±¦·«…µ©‚²¦€¶«„´©ƒ¯¥¬¢«¡}®£~¹­‡Â¶ŽÃ·Æ»“Ê¿—Íšǻ”À´Œ¾²‹º®†·«„¿³‹Áµ½±Š½±Š½±Š»¯‡»¯ˆ¼°ˆ¸¬…¦›wŽ„ezqVqhOiaIRL93/" UUWÀÀÁýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþøø÷ÏÍÈƯÛÕ¸åÞÀæßÁäݽÞÖ²Ö̧ØΩãÛºåܺÞÕ±ÓÈ¡ÌÁ™È¼”ĸ‘¾²‹¸¬…º®‡»¯ˆº®‡¾²ŠÂ·Å¹’ƺ“ź’Æ»“ɽ–Ê¿—ƺ’¿³‹º®‡·«„²¦­¢~²§‚¸­‡¸¬…·«„´¨‚®¢}²¦»¯‡¼°‰¼°‰¿³ŒÇ¼•ËÀ™Â·½±Šº®‡·«„»¯ˆÂ¶ŽÇ»“ȼ”ź’ź’Ç»”Ǽ•Ç½–ɾ–ɾ–¼°Š¯£~²¦€»¯‰Ã·ÁµŽÂ¶Æ»“ÁµŽº®‡·«…º®‡¿³ŒÅ¹‘¶Žº®‡´¨‚¦šv‘†f{rWjcKaZDWP<HB2=8-DA:ba\Ÿž›åäãûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýùùùòòîåãÛÑξÕѽÞÛÆèäÎìæÍìæËíæÌìåÉèáÂçßÀìåÉéâÆáÙ¸ÞÕ±ÙЪÒÇ¡ÑÆŸÒÈ¡Òȡĺ”³©…°¥µ©„½±ŠÄ¸È¼”Ƚ•Æº’¿³‹¶ª„·«„¾³‹Ê¿˜ÎÛÍšÎÛÍÁ™Ç¼”¹­‡¶ª…Æ»“ÐÆŸÓʤÍÛɽ•Å¹‘¶¶ŽÁµŽ¸®ˆµ«…º¯‡·«„¹­†Æ»“ɾ–Ƚ•È¼•Æº“Ĺ‘Ǽ”ĸ»¯ˆ·«„´¨‚³§³§€´¨‚·¬…¶ª„²¦®£®¤³¨»¯ˆ¿³‹¾²‹Åº’ËÀ˜È½•Á¶Ž¼°ˆ¹­†¸¬…¹­‡Â¶Ä¹‘ÁµŽÅº’Ƚ•Ç»“Ź’Ź’ø‘²¨ƒšoƒz]skQg_GTM:62% ZZ[ÐÐÑþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúùùÕÒÍÆÁ¯ØÒ¶åÞ¿æßÀåÞ¾âÙ·à×´à׳ãÚ¶ãÚ¶à׳ÜÓ®ÓȢɽ•Àµ½²Š¿´ŒÃ·Â¶Ž¼°‰À´ŒÁµŽº¯ˆ¼±‰¿³‹¹­‡½±‹Å¹’Ź’÷À´Œ¾²‹¼°ˆ¶«„²¨‚±§‚µª„µ©ƒ³§³§µ©ƒ¶ª„¶ªƒº®‡Â¶Ã¸Â¶Á¶ŽÁµÀ´Œ¾²‹ÁµŽÇ»“Ë¿—͚͚ÏÄÒÈ¢Õ̦ÖͨÖͧÓɢƺ”¹­‡»¯ˆ¿³‹Â¶ŽÇ¼”ÌÁ™ÌÁ™Æ»“½²Šµ©ƒ°¥²§‚¶Ź‘¿³‹º®‡« {™ŽmŠ€bypUibJ^XBTN:C>/@;2TQK€{ÅÄÁôôóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüûûûúôóñáßØÕÑÂÔлßÚÁèâÈëåÊëåÊìåÉìæÉëäÈêãÆêâÅëäÆéâÅæßÀãÚ¸ßÖ²ÞÔ°ÛÒ­ÚѬÜÒ­ÏÅžÀµŽÀ´¾²‹¼°‰Â¶Ê¾—ÍÁšË¿—Ĺ‘»¯ˆ¶ª„¸¬…Á¶ŽËÀ™ÑÇ ÑÆžÏÄœÌÁ™Ä¸Â¶ËÀ˜ÏÄÑÇŸÒÈ¡ÐŞɾ–½²‹¹­†¼°‰½²ŠÀµÂ¶½±‰º®‡À´À´½²Š¼°‰»°ˆ½±ŠÅº’Æ»“Áµ¾²‹¼°‰¹­†·«„µªƒ°¦²¨ƒµ©ƒ²§²¦´¨µ©‚µ©ƒ¶«„¿³ŒÄ¸¿³Œ¿³‹¿³‹»¯ˆ¾²ŠÄ¸Ç»“ɽ–Ë¿—ÌÁ™ÏÄœÑÇŸÐÅÏÄœÏľ´¥œz‡gxpTaZDOI772% ##%iijÛÛÜÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÙ×ÒÅÁ°ÕÏ´ãܽäݾåÞ¿åÞ¾æÞ¾åݼãÚ¶à׳ÝÔ¯ÙÏ©ÔÉ£ÎÜȼ•Æº“Ƚ•Ê¿—Æ»“¿³‹¾²‹¿³‹¾²‹ÁµÁµ¸¬†¶«…¸®ˆº¯‰¿³‹Ã·Ä¸Â¶Ž½±Š·¬…³¨‚´¨‚¶ªƒ¶ª„±¥­¢}¯¤·«…¿³‹ÁµŽ½±Š¼°‰Å¹‘Ƚ•Æ»“¶ŽÄ¸Ç¼”Ê¿—ËÀ˜ÌÀ˜ÍšÒÇ¡ØЫÜÔ¯ÜÓ¯Öͦʿ˜¾³‹¼°‰½±ŠÁµÇ»“ÎÛÑƞ͚ƺ“¾²Œº®ˆ»°ŠÇ»”Ƚ•Ä¸¿³‹²§‚¢™v–Œl†|^tkRi`I^WANG6@;/IE>jic©§£çæåþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿþþþþýýýýýýüüûùùø÷÷ôæåßÏ˾ÖѾáÝÆéãÉëäÉëäÈëåÊíæÌíçÌìåÉëäÇêãÆèàÁåݼâÚ¸ÞÕ²ÞÕ¯à׳ÞÕ±ÜÔ¯ßÕ±ÒȢø¶Ž¿³‹»¯ˆÂ¶ŽËÀ˜ÑÆŸÑÆŸÌÁ™Ã·¿³‹¿³ŒÆº“ÎÃœÓÉ¢ÒÇŸÏÄœÎÛËÀ˜É¾–ËÀ˜ÍšÏÄÑÇŸÏĜ˿—Æ»”÷¶ź’Æ»“÷½±Š»¯ˆÂ¶ŽÂ¶¿³Œº®‡º®†»¯ˆº®ˆ½±‹Ã·Ä¸Ã·À´¼°‰·«„°¦€´©ƒº®‡¹­†±¥€«Ÿz²¦€º®‡¼°‰¼°‰¼°‰½±ŠÄ¹‘Ƚ•ÁµÁµŽÇ»“ȼ”ɽ•Ë¿—ËÀ˜ÎÃœÔÊ¢ÕÊ£ÔÉ¢ÓÉ¢À¶‘¦œz‘‡gxoT_XBKE43/#
+ $$&iijÛÛÛÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùÝÛÖÅÁ°Ò̱àÙºãܾåÞÀèáÃéâÄèàÁãÚ·ÞÖ±ÙÑ«ÕË¥ÔÊ£ÔÊ£ÒÇ ÏÅÏÄœÏÅÌÀ™Ä¹‘ÁµÁµŽÅ¹‘ƺ’¶Žº®†´ª„²¨„±¦¸¬†Â¶Å¹’ĸ¿³‹¼°‰¹­‡¶ªƒ¹­†»¯ˆ²¦« |®¢~¸¬†¿³Œ¾²‹º¯ˆ½±ŠÉ½–ΚÌÀ˜Å¹‘ĸǻ“Ç»“ȼ”ʾ–Ë¿˜ÏÅÖͧÚѬÚЬÔɣʿ—Áµ½±Š¾²‹Â¶ŽÆº’ÌÀ™ÑÆŸÐÅÌÁ™É½•È¼”ɽ•ËÀ˜Ë¿—Æ»“À´Œ¶«…«¡}¡—u‡guZriPh`HXR>E@1B=2ROG}{u¾½ºóóòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýþþþüüüûûúúùøööôññïäãÞÇĸÉűÞØÂêãÊëåËìåÊìæÉíçÎðéÑðêÐìæÊêãÆèàÁãÛ¸ÞÕ±ÚÒ­ØÏ©ÙÏ©ÞÔ¯ÛÒ®ÚÑ«ÜÒ­ÐƟ·¶Ž¿³Œ½±ŠÂ¶ËÀ˜ÒÈ ÓÉ¡ÐŞɽ•Ç»“ȼ”ÌšÑÆŸÓÈ¡ÏÄœÍÁ™ÎÛÏÄÎÛʿ—ÍÁšÐÅÎÛÌÁ™ÌÁ™ÑÆŸÐÅžÌÁ™Í›ÌÀ™Ä¹‘¿´ŒÀ´Ç»“Ç»“¶¹­†¸¬†º®ˆ²¦´©ƒ¿´Å¹’ƺ“ĸ¾²‹¹­†µ©ƒ¹­†¾²‹¿³‹´©ƒªŸ{³§‚½±Š¾²‹º®ˆ¹®‡ÁµŽÊ¿˜ÎÜƻ“Ź‘ȼ”Ç»“Æ»“Ç»“ɽ•ÍšÔÉ¢ÔÉ¢ÑÇ ÏÅž¼²¤™v…eypUaYDJC21,! ##$ffgÚÚÚÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúàÞÛƲÐʯàغäܼãÛ¼çàÂéâÅèàÁâÚ·ÝÕ°ÛÒ­ÜÓ®ÚÑ«×Χ×ΨÔˤÑÇŸÓÈ¡ÒÈ ÎÃœÎÜ͛ȼ”Áµº®‡´¨‚¹­‡½²‹·«…µ©ƒ»¯ˆ¿³‹¾²‹»¯ˆ¿³‹Â¶Ž¿³‹¿³‹À´ŒÀ´¾²‹¸­†±¦±¦º®‡Â·È¼•É¾–ÌÁ™Íšȼ”Ç»“Ç»“ĸƺ’ÌÁ™ÐÅžÒÈ ÑÇŸÏÄÍÁšË¿—ƺ’¶ŽÃ·Å¹‘ƺ’Ç»“ɽ•Ê¿—ʾ—Ë¿—͚͚ÌÁ™Ê¾–Ƚ•Å¹‘º®‡²¦€¯¤ª }š’r†}_zqWqhOb[DQK8D?0E@6\YQ•“ÖÖÓýýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþûûûûûûúúùöõôññîêéäáß×ÛØÏÍʹÑ͵ÞÙÀåßÄèâÅéâÅëåÈîçÎðêÑñëÒðêÑìæÉçàÁâÚ·ÜÒ­×Χ×ͦÖÌ¥ÖÌ¥×̦ÔÊ£ÒÇ ÑÆŸÊ¿—÷ĸŹ’ĸ¶ƻ“͚͚˿—ɽ•È¼”ʾ–ÌÁ™ÏÄœÎÜȼ”ź’ʾ—ÒÇ¡ÒÉ£ÌÁ™ÎÛÑÆŸÌÀ˜ÌÀ˜ÏÄœÓÉ¢ÕˤÔÉ¢ÔÊ£ÒÈ ÎÛËÀ™ËÀ˜ËÀ˜Ç»“¾²Š°¥€±¥€¸¬†º®ˆ·¬†µ«†¾³Ã·¼°‰¼°‰¾²Š½±‰¾²ŠÀ´ŒÀ´ŒÁµŽÀµŽ¹®‡±¥€°¤¹®ˆÄ¸‘Ê¿—ËÀ˜ËÀ˜ËÀ˜Ê¿—ȼ”ĸ¶ŽÃ·È½•ÏÄœÓÈ¡ÍÁšÆº’÷µª„£˜u“‰hvYiaIMG50, 
+""#ddeÚÚÚÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúãáÝÈÄ´ÏÈ®ÝÖ·âÚ¹áÙ¸åÞÀéáÄçàÀà×´ÛÒ­ÚÑ«ÝÔ¯ÝÔ¯ÛÒ¬ÙЪÖͧÕÌ¥×ͧ×ͧÔʤÏŞɾ—Á¶Žº®‡µ©‚´¨‚¹­†¾²‹½±Š½±Š¾²‹»¯ˆ¶ª„²¦¸¬†À´Ã·Â¶ŽÀ´ŒÀ´¼±Š·¬†³¨‚¶ª„¿³ŒÆ»“Ê¿—ɽ•ÌÀ˜Íšʾ–ɾ–ʾ–Æ»“Ç»“ËÀ˜ÎÛÏÄÎÛËÀ˜È¼”ȼ”ƺ’ĸĸĸĸĸŹ‘Ç»“ȼ”ʾ–͚Κʾ—øŹ’Æ»“¹­‡³§µ©ƒ¯¦ ˜vƒd‚y\ypUjbJ^VANH6C>1IE;if^´³¯õõôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýüüüüúøø÷õôñîíèçæßáßÖÔÑÄÈñÄÀ­ÏʵßÚ¿æßÄçàÃèáÄéãÆíçËðêÑðëÒðêÑîèÎëåÈåÞ½ÞÖ²ÙÏ©ÕË£ÓÉ¡ÓÈ¡ÒÇ ÐÅžÏÄœÏÛÌÀ˜È¼”Ź‘ĸ÷ÁµÀ´ŒÃ·Ç»“ȼ”ɽ•Ë¿—ËÀ˜Ê¾–Æ»“ɾ–ÌÀ™Å¹‘÷Ƚ•ÏÅžÐÇ Ê¿—Ê¿—ËÀ™ÌÀ˜ÏÄœÒÇ ÓÈ¡Õˤ×Χ×ͦÕÌ¥ÔÊ£ÏÅžËÀ˜È¼”À´¹­†¶ª„¶ª„¹­†½±‰½²‹º¯Š½²‹»¯ˆ²¦´¨‚¹­†¿³‹À´ŒÀ´ŒÀ´ŒÀ´¿³Œ¸­†³§´¨ƒ¾²ŒÈ¼”Ë¿—ʾ–ʾ–͚Κ˿—ƺ’ĸĸƻ“Ê¿—Í›ɾ–÷½±‰´¨‚§›x•‹j~uYf^GLE3/+  !!"aabÙÙÚÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüæäáÊÆ·ÍÇ­ÚÓ³ß׶ß×·äܾèáÃæßÀÞÖ³ÙЫØÏ©ÛÒ®ÝÔ°ÞÔ¯ÚÑ«ÙЩÙÑ«ÙÑ«ØÏ©ÔË¥Ì›Ĺ‘¾²‹¹®‡·«…¸¬…¹­†»¯ˆÂ¶ŽÄ¸¿´Œ·«„­¡|©žz²¦¼°ŠÄ¸Ã·¾²Šº®‡´ª„²¨ƒ¸­†ÁµÅº’Ç»“ȼ”ɽ•ÌÀ˜ÌÁ™Ë¿—ÌÁ™ÎÛ˿—Ƚ•È¼•È¼”ɾ–ËÀ˜Ë¿—ɽ•È¼”Ç»“Ź‘¶ŽÁµÁµÂ¶ŽÄ¸Ç»“Ç»“ɽ•ÌÁ™ËÀ˜Ç»“¿´ŒÂ·Æº“¼°‰·«…º¯ˆ´ª„¥z•‹jŠ€avYriPhaIZS>KE4D?2MI>vtlÛÛÙüüûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþüüüúùøöõòéèäâáÙØÔÈÊÇ·ËȶÐ˳ÖеÛÖ¼ßÚÂãÞÃåÞÀæàÁéãÇìæÌïéÐïêÐïéÏìæÊêãÆèáÃãܺÜÔ¯ØÏ©ÓÉ¡ÏÄÎÛÌÁ™Ê¾–ËÀ˜ÍÁ™É¾–ȼ”ƺ’¶¾²‹¼°‰¾²ŠÁµÄ¸Åº’Ƚ•ÍšÎÛʿ—ÁµŽÃ·È½•Å¹‘ĸȼ”Í›ÎĜɽ–ź’ź’ËÀ˜ÐÆžÓÉ¢ÒÇ ÕˤÙЫØΨÖͦÖ̦ÐŞɽ•Ä¸½±Šº®‡À´¿³Œ¼°ˆ¾²ŠÁµÁµŽº®ˆ°¤©žz­¡|µ©ƒ¿³ŒÀµ¾³‹½±Š¹­†µªƒ·«„»¯ˆ¿³ŒÄ¸È¼”Ƚ•È½•Ê¾–ÍÁ™ÏÄœÎÛ˿—ȼ”Ç»“Ź‘ĸǻ“Ç»“÷»¯ˆ³§©y•‹j{rV`YCGB1-)  !``aØØÙÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþíìêÎÌ¿ËÅ­ØбàظáÚºáÚºèàÃéâÅáÙ¶ÜÓ®ÛÒ­ÞÕ°ÝÓ®ÛѬÝÓ®ÜÔ¯ÚѬØÏ©ÒÈ¡ËÀ™ÌÁšÎÛʾ—Ǽ”ź’¿³Œ»¯ˆ»¯ˆÂ¶Ž¾²Œ²¦« {§œy¨y´©„ÁµŽÁµŽ¾²‹º®‡µ©ƒ´¨‚µª„»°‰Â¶ŽÆº’Ź‘Ź‘Ë¿—ÌÀ˜ËÀ˜ÍÁ™ÐÅÒÇ ÏĜ˿—ȼ”Ź‘÷ź’ɾ–ÌÀ˜È½•Å¹‘÷À´ŒÀ´ŒÁµÃ·Æº’Ç»“Ź‘Ź‘ɽ•É½•Ç»“ĸÁµŽÀ´À´¾²‹»¯ˆ¹®‡²§¡–s’‡g…|]|sWqhOd]FXQ<JD3FB5_[Q¶µ±ððîþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþýýýüûúôôòëêäÜÚÐÕÓÅÖÓÁÏɱÓÍ´ÖѹÛÖ¾Þؽß×»ÞغàÙ¼ãÝ¿çàÂéãÇëåÉìæÊëäÇçàÀåݼäÛ¹àضß׳ÞÕ±ÙÏ©ÑÆŸÌÀ˜Ê¾–ȼ”ĸǻ“ɾ–ȼ”ȼ”Ç»“¶Ž¿³‹¾²‹¿³ŒÃ¸È½•Æº’ƺ’ÍÁ™ÍÁ™É¾–Ĺ‘ÁµŽÀµÃ·Æº’ɽ•ÏÄœÐŞʾ–Ç»“ƺ’ʾ–ÍšÑÆžÓÉ¢ØÏ©ÝÓ¯ÙЪÕˤÒÈ¡ÏÄÍÁšË¿—Ƚ•Æº“øÀ´Œ¾²‹¿³‹¿³‹º®‡¬¡|£˜u¦›w®¢}¸­†Å¹’·¹®ˆ³©„³¨ƒ¶«„º®‡À´ŒÅ¹‘Ç»“ȼ”ȼ•Ê¿—ÌÁ™ÌÀ˜ÎÃœÒÇ ÏĜ˿—Ƚ•Æº’Ź‘÷÷Áµ¹­†°¥£˜u…fwoS^WAD>/*& ""#ccdÙÙÚÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿññîÒÏÅËƯÖϯâÛºáÙ¹ß×µäܽæßÀàصÜÔ¯ÛÓ®ÝÕ°ÛѬØϨÜÓ®ÚѬÕË¥ÕˤÐŞǼ”Ê¿˜ÐÅÏÄœÏÄœÌÁ™Ä¸¼°‰º®‡¼°‰¹­‡²¦±¦±¥®£~³¨‚¸¬†¶ª„¶ª„¸¬…¹­†¹­†¹­†»¯‡¿³ŒÃ·Ä¸Æ»“ÍÁ™ÎÛÏÄœÑÆŸÑÆŸÐÅËÀ˜È½•Ç»“÷÷Ƚ•ÎÛÐÅɾ–ĸÁµÀ´ŒÀ´ŒÁµÅ¹‘Ź‘ÁµÅ¹‘ɾ–Ê¿—ɾ–ȼ”Ź‘Áµ¾²ŠÁµŽÀ´Œº®‡¹­†´©‚§z™nŽƒd„{]xoTldLc\ETM9HC3NJ=ˆ†~Ø×Õúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþýýýüüüûûûú÷öôëêå×ÕËÒξÊÅ°ËůÒÍ´ÙÒµÜÕ¸Ü׺Ü×¾Ý×¼ÝÕ¸Þ׸áÚ½äÜ¿âÛ½äݽèáÃçàÁäÜ»âÚ¶àسÞÖ±ÛÓ®ÛÓ®ÚÑ«ÒÈ¡ËÀ˜È¼•Æº’ĸŹ‘Ê¿—ÎÃœËÀ˜È¼”ĸ¿³‹¾²‹À´ŒÀ´ŒÂ¶Ä¹‘Ĺ‘Æ»“ÍÁ™ÎÛÌÁ™Æ»“Áµ¾²ŠÂ¶ŽÅ¹‘ƺ’ʾ—ÌÁšÊ¿—ȼ”ƺ’ȼ”ËÀ˜ÏÄœÒÇ ×ͦÚЫÕˤÐÅžÏĜΚÍÁ™ÏÛΚ˿—Ź‘À´½±Š½±‰»¯‡·«„°¥¬¡}¯£~°¤²§‚º¯‰¸­ˆ³©„³©„¶«†¹®‡¸­‡½²‹Åº’ƺ’Ź‘ȼ”ÍšÐÆžÏÄœÐÅžÑÇŸÍÁšÇ¼”Ź‘Ź‘ĸĸĹ‘ĸ‘¼°‰®¢}’pŠ€atlQ]VAB=-(%&&'gghÛÛÛÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿññïÓÑÇËÇ°ÔÍ®âÚºáÚ¸ß×µà×µà×µÜÔ¯ÚÒ­ÚÒ®ÜÓ®ÙЫØΨÙЪÔʤÍ›ÐÅžÏÄɽ–Ƚ•Ê¿—ÌÁ™ÍÁšÊ¿—Ĺ‘¿³‹º®‡·«„·«„»¯ˆ¿³‹¿³‹·«…°¥€« |« {°¥¸¬…À´ŒÀ´»¯ˆº®‡¼°‰À´ŒÄ¸È½•ÍšÒÇ ÕÊ£ÕˤÐŞʾ–Ź‘ĸƺ’ĸǼ”ÐÆŸÔÊ¢ÒǠɾ–ĸÁµ¿³Œ¿³ŒÁµÄ¸Áµº®ˆÄ¹’ÏÄÏÄœÌÁ™È½•Å¹‘¶ŽÁµÀ´Œ½±‰¸¬…´¨‚¯¤¨Ÿ| –t–ŒkŒ‚c€wZvmSmdL\V@NH6JE6if[²°«îíìþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýýüüûúù÷ø÷ôîîéÞÛÓËǸÊıÑÌ´ÖеÛÔ¹ÛÖ»ÛÕ¸ÛÓµÙѳ×гØгÚÓ´ÞØ»âÜÀâÛ½ÝÔ´ÝÔ²âÚºß×µÛÓ®ÝÔ°ÝÔ¯ÛÒ¬ÙЫ×ΨÓɢȽ–øŹ‘ĸ÷Ƚ•ÐÅžÓʤÎĜǼ”Áµº®‡»¯‡¾²ŠÀ´Œ¾³‹¾²ŠÂ¶ŽÈ¼”ÍšÑÇŸÑǟȽ•Ã·Á¶ŽÁµÁµÁµÁµŽÄ¹‘Ƚ•Æ»“ĸǻ“ÌÀ™ÏÄÑÆžÓÈ¡ÔÉ¢ÎÛ˿—ÌÁ™Ë¿—Ê¿—ÍÁ™Ê¿—Ç»”ƺ’¶Ž½±Š»¯ˆº®†¹­†¼°‰¾²‹»¯‰³§‚« |« |¬¢~¯¥¸­‡½²Š½±Š¶¬†¸®ˆÁ¶Ã·Ã·È¼”ÏÄœÔÊ£ÔÊ£ÒÈ ÎÛǻ“Á¶ŽÁµÂ¶ŽÄ¸Ç¼”Ê¿—ʾ–¿´®¢}™Žm„{^ogN[T?A<-'$**+oopÝÝÝÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóòðÖÔËËDZÑÊ«ßÖµâÙ¸áÙ¶ÞÕ±ÛÒ­ÚÒ­ÚÒ­ÛÓ®ÝÕ±ÜÓ®ÙЪØΨÑǠʾ—ȼ•È¼•È¼”ȼ”Ǽ”ƺ’÷·ǻ”Æ»“¶Ž½±‰¹­†·«„»¯‡½±Š¼°‰¶«„±¥€±¥²¦€µ©ƒ¾²‹Ã·ÁµŽ¿³‹¼°‰½±‰Â¶È¼”ËÀ˜ÒÈ ×ΨÖÌ¥ÐŞɽ•Æº’ĸĸǻ“ÍšÓÉ¢ÔÉ¢ÏĜƺ’¶Ž¿³Œ½±‰½±ŠÀ´ŒÂ¶ŽÀ´Œ½±ŠÂ¶Ê¿˜ÑÆŸÐÅ͚͛ʿ—Ź‘¾²‹º®†·«„±§«¡}§z¤›y¡˜v™Žmƒew[rjQc[EUO:LF5SOAwÎÍÊùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýüüûúúøøøõöõðéçáÏ̾ÊŲÎǯ×ѵÚÔ¹ÚÔ·ÙÒ¶ØÑ´ÖϳÕΰÕͯÖΰÖΰ×Ï°ÙÒ³ÚÓµÛÓ³ØϬÓʦÑÇ£ÏÄŸÏÄžÑÆ ÔÊ£ÖÌ¥ÓÊ£ÐÆŸËÀ˜ÁµŽ¾²‹Â¶ŽÁµÃ¸Ë¿—ÎÛÎÃœÊÀ˜Åº’¾³‹·«„¶ª„»¯‡¾²‹¿³‹¾²ŠÀ´ŒÅ¹‘Ê¿—ÐÅžÔÊ£ÑÈ¡ÍÜȾ–÷À´Œ¿³Œ½±Š½±ŠÀ´Ã·Å¹‘ȼ”Í›ÒÈ¡ÓÉ¢ÑƟΚʾ–Ç»“ƺ’Ç»“ȼ”ɾ–ĸ‘À´ŒÂ¶ŽÄ¹‘Ĺ‘À´»¯ˆ¹­†¸¬†»¯ˆ¾²‹º¯ˆµªƒ±¦€¯¤°¥€·«…½±Š¿³Œ¾³Œ¼±Šº®ˆ½±ŠÂ¶ŽÈ¼”ÏÄœÕˤÖÌ¥ÓÈ¡ÍšŹ‘À´ŒÁµÃ·Ç»“ËÀ˜ËÀ˜É½•À´±¥€›ow[h`ITM:?9*'$ 112||}àààÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõôÚØÐËdzÍƨÙÑ°áضÞÕ²ÛÒ¬ÚÑ«ÜÓ®ÝÕ°ÞÕ°àØ´ÞÕ°ÙЫ×ͦÐƞɽ•ÁµŽ¿³ŒÂ¶ŽÃ·Â¶ŽÀ´Œ¼°‰¼±‰Ç»”Ƚ•Â¶¿³‹º®‡·«…º®‡½±Š¾²Š½±Š¼°‰¸¬†´¨‚³§¹­†¾²‹À´ŒÀ´Œ¿³‹¿³‹Â¶ŽÅ¹‘ĸ‘Ê¿˜ÐÆŸÏÅžÎÛÍš˿˜È¼”Ĺ‘Ç»“ÍÁšÒÇ ÑÇŸÌÁ™Ã·½±Šº®‡´¨‚·«…¿³‹Â¶ŽÃ·Ã·Ä¸É½–ÐÆžÐÅžÎÛÐÅÎÜɽ–Á¶Žº®‡µªƒ°¥€¬¢~« |­¢~­£¥›x™Žn‹bypUkcK_XBSM8MG6^ZM‰‡ÈÆÄøø÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýüû÷÷ôèæÞÑ̾ÆÀ­Á¼¦ÆÀ©ÐʱØÒ·ÚÒµ×вÕΰÒÊ­ÐȬÏǬÏÇ«ÍÅ©ÌĨËÃ¥ÌĦÍŧÎŧÌãÊÁ Å¼™¾´¼°‹¹®‰¸¬‡»°Š¾³ŽÀµÂ¶Â·½±‰º®‡¼°‰½±ŠÀ´Åº’Æ»“ƺ’Ź‘À´¹­†±¥°¤~¶ªƒ¾²ŠÃ·Ã·Ã·Å¹‘ɾ–ÌÁšÏÅžÒÉ¢ÒǡΛǻ“¶Ž¿³‹¸­‡¶«…½±ŠÃ·È¼”Ê¿—ÌÁ™ÏÄÒÇ ÏĜɽ•Å¹‘Áµ¿³‹¿³‹ÁµÄ¸À´Œ½±‰¿³ŒÇ»“Ê¿—¶Ž»¯‡º®‡¹­†º®ˆ¿³‹À´Œ¿³‹»¯ˆ·«„´¨‚¶ª„¹­†»¯ˆ¿³Œ¿³Œ»¯ˆ½±‰À´ŒÃ·Ç¼”ÌÁšÐÅžÐÅžÎÛɽ•Ä¹‘ĸƺ’Ƚ•É¾–Ǽ”ĸ»¯ˆ­¡|˜Žl}sXc[EPJ7=8*&" 
+
+ <<=çççÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüáßÚÌȸÇÁ¥ÓË©ÞÕ²ØϪØϪÜÓ®à׳àسàØ´áسÜÓ®×ͦÕʤÐŞɽ•À´Œº®‡»¯ˆ»¯ˆ¼°‰¾²Š¼°ˆ¼°‰Ä¸Â·¼°‰¹­†º®‡¾²ŠÂ¶ŽÃ·½±ŠÀ´ŒÁµ¹­†³¨±¦€·«„¸¬…·«„¼°‰Â¶ŽÄ¸Â¶¿³‹½±‰À´Ä¸‘ĸ‘Ê¿—ÐÅžÏĜ˿—Ǽ”Ź‘ȼ”ÎÛÎĜʿ—Áµ¹­†²¦­¡}³§‚¿³‹Ä¸Æº’Ǽ”Ê¿—͚ΛËÀ˜É½•É¾–Ë¿˜ÌÀ˜È¼•¿³‹µ©ƒ±¦€³§µ©ƒµª„³¨ƒ«¡}Ÿ•s‘†gw[riPf^GZS>OJ6OJ:`\OŽŒ…ÐÏÍúúùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúîíéÐ̾¾¸ Á»¢¿¹ ¿¹ŸÃ¼¢ÆÀ¥ÉÁ¥ÇÀ£Æ¿£Å¾£Ä½£Âº À¸¿·œÁ¹ÂºžÃ» Âºž¿·›¼´—º²”¶¬Ž°¦…ªŸ}¤™wŸ“r •r¢—u¨z±¥€¸¬†¸¬…µ©ƒ¶ª„·«…¹­†»¯‰¾²Š¿³‹¾²Š¸¬†±¥ªŸz¬ {³§¾²‹Æº’ź’Æ»“ɽ•ËÀ˜È¼”ź’ɾ–ÌÁ™ÍÁšÉ¾–ĸÀ´Œ¶«†¶«†Â·Æº’Ƚ•ËÀ˜É¾–Ǽ”ËÀ˜ËÀ˜Ç»“À´»¯ˆ¹­†·«…¹­†¾²‹¿³‹¾²ŠÀ´Æº’Ǽ”»¯‰·«„¾²ŠÂ¶ŽÃ·ÁµÀ´ŒÀ´Œ½±Šº®†·«„·«„¶ªƒµ©‚¹­†¿³‹Ã·ÁµŽ¾²‹¼°ˆ¼°‰¿´ŒÇ»”ËÀ˜ÍšÍÁ™Ê¾–Ǽ”ȼ”Ç»“Ĺ‘¶Ž¾²Š²¦€¡–sŽ„dypUc[EOI7;7)#   EEF¢¢£íííÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêéæÓÐÄý¥ÎÅ£ÛÒ®ÚѬÛÓ­ßײáÙ´à׳ßÖ±à׳ÛÑ«ÓÈ¡ÏÄÏĜ͛ĸ‘½±‰½±‰½±‰¼°‰¼°ˆ¼°ˆ¾²ŠÂ¶ŽÀ´¼°‰·«„¸¬…¿³ŒÅ¹‘ƺ’¶ŽÀ´Œ½±‰µ©ƒ°¥€¯¥€µªƒ¸¬…º®‡À´Æº’ƺ’¾²‹¹­†¼°‰ÁµÃ·Â¶ŽÆ»“ÌÁ™ÌÁ™Ê¾–Ƚ•È½•Ê¿—Íš˿—ĸº®‡¶ªƒµ©‚´¨ƒ»¯ˆÂ¶Ä¸Å¹‘ȼ”ÌÀ˜Íšȼ”Ź‘ĸĸǻ“ʾ–ɽ•Â¶Ž»¯ˆ¹­†º®‡»¯ˆ¸¬…´¨‚±¦¤™w”Šj‡}_{rVnfMbZDVP;PI7QL<jg\¡ŸšÞÝÜüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýõõòäãÛÕÑÅËǸÅÀ°¿º¨µ¯š°¨“­¥­¥Œ¯§Ž¯¨Ž­¦­¦Œ®¦Œ°©²«“¯§¯¨³¬“·®•·°•´¬‘ª¡…Ÿ–w—Œo‘‡i…f†g”‰išn¡•s§œx« {«Ÿ|©žz­¢~²¨ƒ¶ª„·«„¶ªƒ²¦€®¢~ªŸz«Ÿz¯£~µ©ƒ¾²ŠÂ¶ŽÁµŽÆ»“Ê¿—Ç»“֦ŽÆº’ɽ•Ê¿—ɽ•Ç»“÷¼±Š¼±‹Å¹‘ƺ’Ź‘ɾ–ʾ–ȼ•Ä¹‘Ĺ‘ƺ“ĸ¾²‹º®‡»¯ˆ½±Š¼°ˆ¹­†º®‡ÁµŽÃ¸¿´¶ª„¶ª„¾²ŠÂ¶ŽÄ¸Ä¸Â¶Ž¿³‹¹­…µ©ƒ´¨´¨´¨¶ªƒ¼°‰Ã·Æº’Áµ»¯ˆ¹­…º®‡¾²‹Å¹’Ǽ”Ǽ”ɾ–ʾ–ȼ”ȼ”ȼ”Ǽ”ĸº¯ˆ¦›w–Œk‡~_wnSc[ENH672%  OOP³³´óóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿññï×ÕËý¨È¿ŸÕͨÜÔ¯ßÖ²à׳ßÖ±ÞÕ°ÞÕ°à׳ÚЪÑÇŸËÀ˜ÎÛÑǟɾ–ÁµÀ´ŒÁµÀ´Œ¼°‰¼°ˆ¾²ŠÀ´ŒÁµ¿³‹¸¬„¸¬…¿³‹Å¹‘ȼ”ȼ”·»¯ˆ²¦­¢~¬¢~³§‚º®†¿³‹Â¶ŽÄ¸‘ĸ»¯ˆ¶ªƒ¼°‰Â¶ŽÄ¸À´ŒÂ¶ŽÆº’ȼ”Ƚ•Ê¿—ΚÏĜ͚ȼ”Áµ¹­†¹­†¼°‰¿³ŒÄ¸Æº’ĸŹ‘ɽ•Ë¿—ɾ–ĸ÷ø÷ĸƺ’ƺ’ĸ¶ŽÀ´Œ¿³‹½±Š¸¬…´¨‚¶«„« |›‘oƒd„z\{qUldK_XBWP;PJ8WRC}zqº¸´îíìþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþýýýúúøõõñîíèèæàÛÙÑÏË¿»°®©›¨¢“¡šˆ›”™“}š”}›”|›“{›”{›”{¡š¨¡‰©£‹£œ‚ ™š’wˆl†}b€w\€w[ƒz]ˆ~`„d†g”Šj›ož“q’q£˜v«¢~°¥°¤~¬ {§œx¦œx©žy¯£~³§¶ª„½±‰¿³‹¾³‹Ä¸‘Ç»”¶ŽÀ´ŒÁµÆº’Ç»“ƺ’Ź‘Ź‘Ź‘÷÷Ź‘ĸĸɽ•ËÀ˜É¾–ÀµÀ´Æº“ȼ”÷½±ŠÀ´Ã·½±Š¶ª„µ©ƒÀ´Áµ»¯ˆ¶«„¸¬…½²ŠÁ¶ŽÅº’ȼ”ƺ’¿³Œ·«„²§€°¥°¤~³§¹­…À´Æº’ĸ‘¾²‹¹­†¹­…»¯‡¿³‹Ä¸Ã·ÁµÄ¸Æº’Ç»“ɽ–ÌÀ™ËÀ˜Å¹‘¹­†£˜t•Šiˆ~`wnTaZDJD31-" ZZZ¿¿¿öö÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøåäÞÉŵºžÏÅ¡ÚѬßÖ²ÞÕ°ÚÑ«ÜÓ®à׳áسÜÒ¬ÔÉ¢ÌÁ™ÎÛÒÈ¡ÍšŹ‘÷ĸĸ¿³‹¼°ˆ»¯ˆ¿³ŒÄ¸Ä¹‘½²Š»¯ˆÀ´ŒÅ¹‘ɽ•Ë¿—Ƚ•ÁµŽµ©ƒ­¡}ªŸ{¯£~¸¬…½±Š½±Š½±Š¾²‹º®‡·«„º®‡¾²‹À´Œ¼°‰¼°‰À´Ä¸É¾–ΚÒÇ ÑÇŸË¿—ȼ”ƺ’ĸĸ‘ź’ƺ“Ç»“Ç»“Ç»“ɽ•Ê¿—Ç»“ĸƻ“ɾ–Ê¿—Ǽ”ĸ¶ŽÂ¶ŽÄ¸Åº’÷¾²‹º®‡¸¬…¹­†¼°ˆ³©ƒ¥›y•Œkƒc‡}^zqUkdKbZCYR=SN;b^P‡…{À¾ºòòñþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþüýýúûûùøøõòòïèçäÞÛØÕÒÎÄÁºµ±¨¯¬¡¨¤—œ˜‡—’€”|’z‹wŽ‡o‡n‘Šp“ŒrŒ†l€y`slTngOohNtlQzqU~uYw[…|^‹c…f’ˆh˜Žmž”r¡–t¢—t¡–t¡—s£šw¨ž{±¦³¨³§¹­†À´ŒÂ¶Ž¿³Œ½±Š¿³‹À´ŒÂ¶ŽÅ¹‘ĸÁµ¾²Š¾²‹Â¶ŽÅ¹‘Ź‘¶ŽÄ¸Ç»“ËÀ˜ËÀ˜È¼”¶ŽÂ¶Ç¼”ɽ•Æº’ÁµŽÁµÂ¶Ã·º¯ˆ´¨‚¾²ŠÁµÀ´Œ¿³‹½±Š½±ŠÅº’ÌÀ˜ÌÁ™É¾–Ź‘¾²‹¶«…¯¥€¯¤³§¹­†¾²‹ÁµÀ´Œ»¯ˆ¸¬…¸¬…¹­†¼°ˆÀ´Œ¾²‹»¯ˆ½±ŠÀ´Ä¸ÌÁšÐÅʾ–Áµ¸¬…­¡| •r…fzpU]V@B=-,( ddeÆÆÆøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüñðíÕÑÇÁº¢Ç¾œÔË¥ÛÒ­ÚѬÚЫÛÒ­ÞÕ±ÞÕ°ÚÑ«ÕˤÏÄœÐÅÔÊ¢ÑÇ ËÀ™Æº’ƺ’Ź‘¾²Šº®†º®‡Á¶ŽÉ½–ÌÁšÇ¼•Ä¸Ä¸Ä¸Å¹‘Æ»“ź’÷½±Š·«…³§‚´¨‚¹­†¾²‹¾²Š»¯‡¸¬…²¦³§½±ŠÂ¶Â¶Ž¾²Š¸¬…µ©„»°‰Æº’ÎÛÓÉ¡ÑÇ Ë¿—ȼ”Ç»“Ź‘ȼ”Ê¿—ɽ•Æº’Ź‘ƺ’ȼ”Ç»“֦ŽÇ»“ɾ–ʾ–ƺ’¶ŽÁµÃ·Ç»“ɾ–Ĺ‘½±‰·«„º®‡¿³‹¼°‰µª„«¡|Ÿ•r—l’ˆhˆ~`{rVphNh`H\U@WR@hdV•’ŠÔÒÐöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýþþüýýûüüùúúøùø÷ôôòìëêæåâàßÝ×ÕÒÈÆÁ¾¼¶¶µ¬±¯¦«©Ÿ™•‡Š{ƒ~m{uauoZmfQd]Hb[Fd^HiaJmeMphPtlRxoU}tYx[…{^Šb…f‘‡g’ˆg”Ši—k›o¡–tª |¬¢}©žz¯¤€·¬‡º®ˆ·«…¶ª„»¯ˆÀ´ŒÃ·Ä¸À´½±Š¿³‹Â¶ŽÄ¸Æº’ĸ‘¿³‹À´ŒÄ¸Ç»“ȼ”Ç»“÷Ĺ‘Ê¿—ÌÀ˜ÌÀ˜Ê¿—Ź’¶ŽÅ¹‘»°Š³¨ƒ¿³ŒÇ¼”Ê¿—ɽ–Æ»“Ź’Ƚ•Ê¿—ȼ”ź’÷À´Œ»°‰µ«…²§€µ©‚»¯ˆ¿³‹½±‰¹­…¶ªƒ´¨‚µ©‚º®‡À´ŒÃ·¿³‹¸¬…´©‚¹­†Ã·ÍÁšÏÄȽ•À´Œ·«„®£~¡–s…eypU[T?>9*($ mmnËËËøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþúùøåäßÇÁ±Á¸šÎÄŸÖ̧ØϪÙЫÙѬÚѬÚѬØÏ©ÕˤÑÆžÑÆžÓÉ¢ÔÊ£ÑÇŸËÀ˜É½•Ä¸‘½±‰¸¬…º®†Ä¸ÌÁ™ÐÅžÏÜ˿—ɽ•Å¹‘¶ŽÁµÀ´ŒÀ´ŒÁµÀ´¾²Š¼°‰½±‰¿³‹¾²Š¹­†±¦€ªŸ{­¢~À´Æº’Ź‘Áµ¶ª„­¡}±¥€¾²ŒÊ¿—ÑÆŸÐƞ˿˜È½•Ç»“Ź‘ȼ”ÌÀ˜É¾–ĸ‘¶ŽÆº’Ç»“ĸĸƺ’ɽ–ʾ—Ƚ•Ã·ÁµÂ¶ŽÄ¸È¼”Ƚ•Ã¸»¯ˆ¶ªƒ»¯ˆÀ´Œº®‡µ©ƒ°¤~§y –tœ‘p•Šj‹€bwZvmRkcK]VA^XFsnb§¤žÝÜÛøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿþýþþüþþüþþýýýýüüüüüüûûú÷÷öññðëêêææåááàÙØÕÉÈý¼¶¥¤œ‹{noj[hcSd^Md^Kd]Id]If_Ih`JldMphPtkRvnT{rWvZx\x\ƒz]ˆ~`Ž…e–‹kŸ•s¡—tŸ•r¦›x¬¢~¯¤~°¤³§¹­†À´ŒÄ¸¿³Œ»¯ˆ»¯ˆÁµŽÅ¹’Ź‘Ź‘ÁµŽ»¯ˆ¼°‰¿³‹À´ŒÃ·Å¹‘¶ŽÅ¹‘Ë¿—ÍšÏÅÒÇ Ê¿—ĸŹ‘º°Š²¨ƒ¿´ËÀ˜ÐÆŸÏÄœÌÁ™Ë¿˜Ê¾–Ǽ”¶ŽÁµÀ´Œ¾²Š½±Š¼°‰·«„¹­†¿³‹À´Œº®‡²§¯¥°¥²¦€º®ˆÃ¸Ç»“Áµ¶ª„¬ |±¥€À´É¾–ËÀ˜Ç»”¿³‹µªƒ«¢~”rŒ‚cvmSYR=<7)#!  !ttuÎÎÎùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþòòðÐÌÁ¿·œÇ½›ÒÈ¢ÖͦÖͦ×Χ×Χ×Χ×ͦÕˤÑÆŸÎÛÍšÑÇ ÔÊ£ÒÇ Íšǻ“À´Œ¹­†¸¬…÷ɾ–Ê¿—ʾ—Ë¿—ËÀ˜É½•Ä¸À´½±‰¹­†·«„º®‡¿³‹Â¶ŽÂ¶Ž¿³‹¸¬…²§­£©ž{¬¡}¼±‰ÁµÂ¶ŽÄ¸»¯ˆ°¤~« {´¨‚ÁµŽÈ¼”Ë¿˜ÌÀ™Ê¿—ɽ•Ê¿—Ê¿—ɾ–Ǽ”¶¿³‹Æ»“Ê¿—ȼ”ÌÁ™ÐÆžÑÇŸÐÅËÀ˜Ã¸Ã·Å¹‘ĸÀ´¾²‹¼°‰¹­†¶«„¶ªƒ¶ª„¸¬…·«„´¨ƒ­£~¦z¡—tž”r˜Žm†f…{]zqUmdK`YD`ZI~zn²¯ªßÝÜøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþüüüøø÷òòñííìààÞÏÏÌ·¶±ž›”’†‚}rvrerm_ojZnhXicQhaOf`Kg`IibJldLogOphOphOriPypT€wZˆ~`…f“‰h–‹j’p¤™v¦›w« z±¦€¹­†½±‰¾²‹¸¬…¶ªƒ¹­†¿³‹¿³Œ¼°‰¼°‰»¯ˆ¸¬…¹­…º®†º®‡¾²ŠÁµÀ´ŒÂ¶ŽÄ¹‘Ç»“Í›ÒÈ Íšǻ”Ç»“¼±Š´©ƒ»¯ˆÅº’ÍšÌÀ˜Ç¼”ƺ’ʾ–ɾ–·À´Œ½±‰·«„·«„º®‡¿³ŒÃ·Ä¸¾²‹µª…®¤¬£­£±¥¶ª„¾²‹Ç¼”ÁµŽ³§ªžz« {¶ª„¾²‹Ä¸Å¹‘¼°‰²¦ª¡}œ“r‰€anfMRL894&! &&'}}~××ØûûüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúâàÚ»§Äº›ÏÅŸÒÈ¢ÒÈ¡ÓÉ£ÖÌ¥ÖÌ¥ÖÌ¥ÖˤÓÉ¡ÏÄÍÁ™ÎÛÒÇ ÔÊ¢ÐÅËÀ˜É¾–ĸ‘ÁµŽÇ¼”Æ»“÷ƺ’ɾ–ËÀ˜ËÀ˜Ç»“¾²‹¸¬…´¨‚±¥´¨‚º®†¿³‹¿³Œ¼°‰·«„µª„¶¬†´¨„³§‚·«…¹­†º®‡¿³‹½±Š·«„³§µ©ƒ»¯ˆ¿³ŒÂ¶Å¹’Ƚ•Ê¾–Æ»“ȼ•É½–ø¿³‹¿³‹È¼•ÌÁ™Ê¿—ÎÃœÒÇ ÐÅžÎÛ˿—ƺ’Ƚ•ËÀ˜Å¹‘½±‰¹­†º®‡¹­†´©ƒ³¨‚´©‚·«„¶ª„´©‚±§‚­¢~¨y¤šv –sšn…f†|^{rWmeMb[FhcR‰…y¶³®áàßûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúõõôæåä×ÖÔËÉƶ´°¤¢›ž›”˜•Œ‹‰}{o{wjrm^lfTgaNf_Kg_Je^He^Hf_HlcKqiOyoTvY„{]‰`…f•‹j™Žm –r¨œx®£}²§‚´©„³¨‚¶ª„º®‡¾²Šº®‡²¦´¨‚¶ª„³¨ƒ´¨‚µ©ƒ¸¬…¼°ˆ¿³‹À´ŒÁµÃ·Ä¸È½•ÎÛÏĜ͛˿˜Ä¹’À´Ã¸‘ø‘÷ƺ’ƺ’ź’Ê¿—ÌÀ˜Ä¹‘¾²‹¹­…µ©‚´¨·«„½±ŠÁµÀ´¾²Š¹­‡´ª…²¨ƒ²§ƒµªƒ¶ªƒ·«…¾²‹½±Š·«„°¤±¥€¶ª„º®‡½±‰¼°‰¶ª„¯¤~§z˜nƒz\iaIKF40,! 667–––êêêþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüêéäDZºœËÁœÐÆ ÑÆŸÓÉ¢ÖÌ¥ÕˤÖÌ¥×ͦ×ͦÔÊ¢ÐÅΛÏÅÔÊ£ÒÇ ÐÅÒÇ ÐÅžÎÛÌÁ™Åº’¿³ŒÄ¸È¼”ʾ–ÌÀ˜È½•½±Š·«„³§±¥±¥³§€¶ª„¹­†º®‡º®†½±ŠÁµŽÀ´Œ»¯ˆ¶ªƒ´¨‚µ©ƒ¹­†¼°‰½±‰»¯ˆ»¯‡º¯‡¼±‰¾²‹¾³‹Å¹’Ƚ•À´Ä¹‘ʾ—Àµ½±ŠÂ¶ŽÉ¾–ÌÁ™Ê¾—ÌÀ˜ÌÁ™Ê¿—ɾ–ɾ–ȼ”ËÀ™ÍÛƺ“½±‰¹­†»¯‡¹®‡²¨ƒ´©„·¬…·«„µ©ƒµ©‚¶ª„µ©ƒ±¥« {¦›w¡–t™m‘‡g‰`|rWnfNe^JpjZŽŠ½»¶ëêéüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûøøøòññèèçáàßÚÙØÏÎ̽¼·¯®¨¢ ˜ƒ‚rwrepk\kfUf`Nd^Jc\Hc\Fg_HmdLsjPxoS{rV€wZ†|^‹b“‰h™mž“p£™u¨žz­¡}²¦€·«…¹­‡³§«Ÿ{¯£~²§‚®¤€¯¥€³§¶ªƒ»¯ˆ¿³‹ÁµÄ¸Ç»“Ź‘ƺ’ËÀ˜ÐÆžÓÈ¡ÐÄ͚͛ÏÅÅ»“»¯‰Â¶ŽÈ¼”ȼ”ÌÀ˜ÍÁ™Ç»“½±Šµ©ƒ¶ªƒ´¨‚²¦¶ªƒ¹­†º®‡¾²ŠÀ´Œ½²Šº®‡¹­†¼°‰¸¬…³§µ©ƒ¹­†¼°ˆ·«„·«…¼°ˆ¼°‰¹­†µ©ƒ²¦€¬¢}¢—u‘‡g|sWd]FE@0'$ JJK®®®óóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòñïÍɼÁ¹ Æ½›ÑÇ ÔÊ£ÕˤÕˤÓÉ¡ÕˤÙЪÜÓ®ÚЪÕˤÔʤÕͧ×ΨÓÉ¢ÐÅžÑÇŸÔÊ£Óɣɾ—ĸĸƺ’ʾ–ÌÀ˜ËÀ˜È¼•Ã·¾²‹¹­†²¦€°¤~°¤~²¦€·«„½±‰À´Áµ¾²‹¿³‹¿³‹¼°ˆ»¯‡»¯ˆ½±‰¼°‰º®‡¸¬…¸¬†¾²‹Æ»“ɾ—Ź‘ĸ÷¿´ŒÅº’Ë¿˜Â·ÁµÅ¹‘Ƚ•Ë¿—ËÀ˜È½•Æº’ȼ”Ê¿—ËÀ˜É½–Ǽ”Æ»“·»¯ˆ¶ªƒ·«…º®‡¹®‡»¯‰»¯ˆµ©ƒ·«„º®‡½±‰¼°‰º®‡·«…±¦« |£˜u›o‘‡g†|^{rVpgNibLsm]‹¿½¸çæåûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýúúúööõïîîääãÖÖÓý©§ ™•‰†z{ntpbjeUf`Oa[GaZEd]Fh`HlcKpgNtkQypT~uX„z\Š€`„d”Šišnž“q£—t¨y«Ÿ{¨y¦›w©žz¬¡|®£~±¦´¨‚´¨‚¹­†À´ŒÄ¸È½•ËÀ˜Ë¿—ÍÁ™ÑÆŸÔÊ£ÔÊ£ÐÅÏÄœÏÄÐÅȼ•¿³ŒÄ¸È¼”ɽ•ÌÁ™ÌÁ™È¼”Áµ»¯ˆ¸¬…³¨‚®¤€±¦€µ©‚¹­†À´Ã·À´Œ¼°ˆº®‡¾²Š»¯‡·«„¹­†½±‰¼°‰²¦±¥€º®‡À´ŒÀ´Œ»¯ˆ³¨ƒ©Ÿ{™mŠ€axoT]VA?:,$" QQQ¼¼¼úúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûáßÙÇ°ºžÌÃÑÇ ÒÈ¢Ö̦ÙϪÚѬÛÓ®ßײÞÕ°ÙЪÙÑ«ÚÒ­ÙЫÔÊ£ÏĜ͚ÏÆžÑÇ¡ÌÁ™Ê¿˜ÍÁšÍšÌÀ™É¾–Ç»“ƺ’Ç»“Ź‘Áµ¹­†µ©‚³§³§·«„½±ŠÄ¸Ã·½±Š¼°‰¾²‹Â¶ŽÀ´Œ¾²Š¿³Œ¿³‹½±Š»¯ˆ½±‰Ä¸ÍšÐÅɾ–ĸÀ´ŒÀ´ŒÂ¶ŽÃ·Ã·Ä¸Å¹‘Ź‘ȼ”Ê¿—ɽ•Æº’ź’Ç»“ȼ”ƺ’÷ÁµÂ¶Ž¼°‰³§µ©‚·«„·«„¹­†½±Š¿³ŒÁµÃ·Ã·Â¶ŽÀµŒÂ¶Ž¿³‹·«…­¡}¡—t—kŽ„d‡}^zqVogNibLmgTˆ‚v¹¶°æåäüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúóòòäãáÓÒÐÀ½¹±®©ž›“ˆ„z{opk\c]K_YE_XC`YCc[Eg_GlcKpgNtkQypTuX…{]‹€a…e“ˆh—l›n’pŸ”q¡–s¢—t¤™u«Ÿ{±¥³§¹­†À´ŒÄ¸È¼”ÌÀ˜ÎÛÑÇŸÕË£ÕÊ£ÒÇ ÎÛΚÎÛ˿—ɾ–ɾ—Í›ÌÁšÈ½–Ç»”ƺ“Ź‘ź’ĸ¿³Œ·¬‡±§‚²§´¨·«„¿³‹Ä¸Â¶Ž¿²‹½±‰¾²‹¾²Š¼°‰¿³‹¿³‹¼°ˆµª„µª„»¯ˆÃ·Å¹‘¿´Œ³©ƒ¤›x”Šj†|^sjPTM:72& 
+jjjØØØþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþìëèÑÍÀü¤È¿œÍÃœÐÆ ÙЪáضß×µÜÔ¯ßÖ±ÞÕ°ÛÓ®ÛÓ­ÚÒ­×ϪÑÇ¡Ë¿˜Ç¼”ɾ–ÎÛÒÇ¡ÓÉ¢ÓÉ¢ÒÈ¡ÍšŹ‘¶ŽÃ·Æº’Ç»“Ź‘¾²‹»¯ˆ¹­†¹­†¹­†»¯ˆÂ¶Å¹‘¾²‹º®‡º®ˆÂ¶ŽÀ´Œ»¯ˆ½±ŠÁµÄ¸Ä¸‘ƺ’Ƚ•ÌÁ™ÍÁšÈ¼”÷À´Œ½±Šº®‡º¯ˆÃ·Ä¸‘À´À´ŒÃ·Ç»“ȼ•Æ»“¶ŽÀµÁµÀ´Œ¿³Œ¿³ŒÂ¶Ž¾²Šµ©‚µ©ƒ´¨‚®¢~³§‚¾²‹Ê¿˜ËÀ˜Ç»“ƺ’ĸ÷Ź‘ĸ¼°‰°¦¤šwšn“‰hƒd„z\zqUqiPjbKqjX‰„x¶³­ééèýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü÷÷öïïîããâÒÑÎý¶´¯š˜ƒtrm_gbQ`ZF^VC`XCbZDf]FjaIofLtkPyoT}tXƒy\ˆ}_‹b†f”‰h—Œkšn›n™m •sªŸ{³§¹­†¾²Š¿³‹Ã·É½•ÍÁ™ÑÆžÓÈ¡ÐÆžÌÀ™Ç»”ʾ–ÌÀ™È¼”ËÀ˜ÒÈ¡Õ̦ÑǠȽ•Áµ¾²ŠÀ´ŒÆ»“Ê¿—ƺ’¾³Œ¹­†¹­†·«„µ©‚¼°ˆÄ¸Å¹‘Áµ½±‰¾²Š¿³‹¿³‹¿³‹¼°‰»¯ˆ¿³ŒÁµŽÁµŽÅ¹’Ź’¾²Š±¥€¢˜u“ˆh‚x[kcKLF5/+ 
+$$$wwwäääþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõôóÛÙÐÆÁ¬Å½ÍÄŸÖ̦ÜÓ­ÞÕ°ÜÔ¯ÛÒ­ÛÒ¬ÜÓ®ÞÕ±ßÖ²ÛÒ¬ÓɣƼ•½±Š¼°‰Æ¼•ÒÈ¢×ΨÖÌ¥ÒÇ ÏÄÊ¿—Ź’¶ŽÁµÃ·Æº’Ź’¾²‹¾²‹ÁµÁµŽ¾²Š»¯ˆÂ¶ŽÃ·¼°‰³§±¥€»¯ˆ¾²Š¼°ˆ¸¬…º®‡¿³ŒÅ¹‘ɾ–ËÀ˜ËÀ˜É½•Ä¸Â¶Ž½±Š³¨‚¶ª…¿³ŒÇ¼”øº®‡¹­†¾²ŠÁµ¼°‰¸¬†º®‡»¯ˆ»¯ˆ»¯ˆ¹­†¸¬…¼°ˆ»¯ˆ¶ª„·«„¶ªƒ³§¹­‡Â¶Ç¼•È½•Æ»“¶ŽÃ·È½•ËÀ˜Æ»“»¯ˆ¬¢} –s™Žm˜Žl–ŒkŽƒd„{]|sWrjPibKngT‚}p¶´®îíìýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüûøø÷óóòééçÒÒϾ½¹§¥Ÿ”ˆ{vjniYjdS`YFaYEbZDf^FjbJofMsjOxoT{rV~uYƒy\‰_Žƒc“ˆh•‹k˜kŸ•s©ž{¯£~µ©ƒ¸¬…·«„½±‰Æº’ÌÁ™ÎÛÍÁšÇ»”¿³Œ·¬†¿³É¾–Í›ÑÇŸÕˤÔË£ÏÅȽ•ÁµŽ½±‰½±ŠÄ¸É½•Ä¸À´Œ¿³‹Â·¿³Œ¹­†¿³‹Æº’Ź’º¯ˆ²§¶ªƒ»¯ˆ¾²‹¼°‰º®†º®‡À´ŒÄ¸Å¹‘ɽ•Æº“¸¬†­¡}ž“r†|_tkQbZDHB1,( &&'|||êêêÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûçæàÍʺ¼¡ÊŸ×ͧÛÑ«ÙÏ©ÙЪÙѬØЩÚЪÜÒ­ÛѬÖ̦ÏÄĹ’½±‹½²ŒÈ¾˜ÓÉ£ÕË¥ÐÆ Ê¿˜Ä¹‘¶÷ĸĸ÷ĸ÷¾²ŠÂ¶ŽÈ¼”ȼ”÷¿³ŒÁµÀ´Œ¸¬†°¤®¢}µ©‚»¯ˆ¾²Š¹­‡¸¬…»¯ˆÃ·Ë¿—Íšɾ–Ź‘¶Ž½±Š·«…²§‚»¯ˆÅ¹’Ǽ•Á¶º®‡»¯‡½±Š¼°‰³¨‚®£~´¨‚µªƒ´©ƒ³§‚³§¶ªƒ¹­…º®†¸¬…¹­†»¯ˆ¾²‹Â¶Ä¸‘ĸŹ‘Ź’¿³‹ÁµŽÈ½•Æ¼•Á¶º®‡®£}¥™v¡—s¡—u –s—Œkƒd…{]{qUqgOiaJjbOzuf§¤œÛÚ×÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùùððïääãÕÔÒ¼»·®¬¦¡ž•|pysekeTe^Kc\Fe]GiaImeLpgNsjPwmS|sWw[†|_Œ‚c‘‡f™n¡—t¦›x¬ {¯£~¯£~µª„¿³ŒÂ¶Ä¸‘Ź‘À´Œº®ˆ¶«†¿´Ê¾—ÏÅÑÆŸÏÄËÀ˜Åº“Á¶Á¶ŽÁµÀ´Ã·Ä¸Â¶ŽÀ´ŒÂ¶ŽÊ¾–Ǽ”À´Â¶Ä¸À´Œ´©ƒ­¡}°¤¸¬…¾²Š½±Šº®‡¸¬…½±‰Ã¸È½•Ç¼•Á¶¶ªƒ§œx•ŠjyoUiaI[T?B=-($  ++-†††óóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþôôòÚØÐľ©Ä½œÑÈ¢×ͦØÏ©ÚÒ¬ÚÒ­ÙѬÖͦÒÈ ÏÄÎÃœÏÄÏÄÎÄÍÜ̚ËÀ˜ËÀ˜È¼•Â¶Ž¸­†¶ªƒ»¯ˆÄ¹‘ɾ–Ç»“ĸ¶ŽÁµÆ»“ÌÀ˜Ê¾–Ç»“Ź‘À´Œ»¯ˆ¹­†¶ª„´¨‚´¨‚º®‡À´Ã·¿³‹¼°‰Ã·Ë¿—ÍÁ™È¼”ĸ÷¸¬†²¦¾²‹Å¹‘ź’¿³Œ¿³ŒÂ¶Ä¸Áµº®‡·«„´¨‚±¥¯¤¬£©ž{°¥º®‡½±‰¼°‰»¯‡½±ŠÃ·Ç¼”Ź’÷ƺ’Ǽ”Ç»“¶ŽÀ´¿´Œ¸®ˆ·¬‡½±Š¼°‰¹­†µª„¯¥€¦y›‘o‘‡g‰€awZwnSogNiaJh`Luo^ž›‘ÒÑÌööõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøøøòòòìììÞÝÜÇÅÁ´²¬˜•Œ†‚vrm\jdRd^Jd]Ff^GiaImdKpgNtkQxpUuY†|^ƒd•ŠišmŸ”r¢—t§œx®£}³§¯¤³§‚½±Š¿´ŒÂ¶É¾˜ÌÁšÌÁ™Ê¾—Ǽ”ĸ¾²‹·¬†´ª…½²ŒÇ»“ɾ–ƺ’÷ÁµÁµÃ¸Ê¿—ËÀ˜Ç»“ĸ¾²Š·«„µ©ƒ´¨³§¹­†À´ŒÃ·½±Š·«„¼°‰Åº’ɽ–ÀµŽ¹­†·«…£˜tŠ€avmSh`IXQ=<7*!
+ 88:¡¡¢ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúçæáËǷ»žÌÞÕË¥ÛѬÝÔ¯ÝÔ¯ÙЫÓɢ͛ÎÛÑÆžÒÇ ÐÆžÎÛËÀ˜É¾–Ƚ•Ê¿—Ƚ•ÁµŽ³§­¡}´©‚¿´ŒÇ»“ȼ”ƺ’Ź‘ȼ”ËÀ˜Íšʾ–ɾ–ʾ–Ĺ‘¿³Œ¼°‰º®†¸¬…º®†À´Æ»“Ĺ‘À´¿³‹Ä¸‘Ë¿—ÍšËÀ˜Ç»“÷½±‹»¯‰Å¹‘ȼ”Ź‘½±Š»¯ˆ¿³ŒÂ¶À´Œº®†¸¬…µ©‚­¡|¬¡|¬¡}§œy­¡}¶ªƒ¸¬…»¯ˆÀ´Å¹‘Æ»“øÁ¶ŽÂ¶ŽÇ»“ɾ–Ê¿—ƺ’¿³Œ¹­†·¬…º°‰Á¶ŽÂ¶Ž¾²‹¶¬†²¨ƒ­£~¤™v›n‘‡g‡|_}sWvmRofMjaJiaMxrc¡ž”ÝÜÚùøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúôóóææåÓÒо¼· ”Œ€{vgkeRd]Ic]Ge]Gg`HkbJpgMumR{rV‚y[ˆ`Žƒd“‰h˜Žlœ’o¢—t§œx§œx¬¡}·¬…½±ŠÁµŽÅº“Ç»”Æ»“Ĺ‘ĸ¶Ž¹­†°¦®¥¹¯‰Åº’ɾ–ȼ”Ź‘ĸƺ’Ƚ•Ê¿—ËÀ˜ËÀ˜É¾–÷»¯‡¸¬…¸¬…¹­†¾²‹Ã·Ã·¿³‹»¯ˆÀ´Ç»“ɽ•Ã·¼°ˆµ©ƒ¢—t‚czqVh`IRK962%
+
+QQSÈÈÉþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþððíÑÍÁÀº Æ½šÓÈ£ÛÑ«ÜÓ®ÜÒ­×ͧÐÅžËÀ˜ÏÄÓÈ¡ÏÅËÀ˜Æº’Á¶ŽÄ¸È½•ÌÀ˜Ê¾–÷´¨‚®¢}´¨‚»¯‡ÁµÄ¸Æº’ɾ–ÎÄœÐÅÎÛʾ–Ƚ•È½•Æ»“ĸÁµ¾²Š½±‰À´Ç»“Ê¿—Ź‘ÁµÁµÆ»“Ë¿—͚͚˿˜Ç»”Æ»”Ç»”Ç»“ƺ’÷¼°‰¹­†»¯ˆ½±Š¼°‰º®†º¯‡¸¬†®¢}­¢|®¢|©žz¬ {²¦€µ©ƒ¼°ˆÄ¸È¼”ź’¾²‹½²ŠÁµÅ¹‘Ƚ•É½–ź’½±Šµ©‚¸­†¿³ŒÀµŽ¾³Œ¸­‡¯¦‚°¦²§®£|¥™v™m‹cw[|rVulQogMiaJibN}xiµ²«åäâüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüöõõééçÙØÕÇÅÁ­ª£Š|vhnhWhbNg`Kf_Hh`IleLrjOxoS~uXƒy\ˆ~_ƒd’‡f–‹jœ‘oŸ•s¦œy°¤´¨‚¶ª„·¬†º¯ˆ¾²‹ÁµŽÅ¹‘÷¸¬†°¥€±§‚¹¯ˆÁµŽÄ¸Å¹‘Æ»“ʾ—ÍšÎÛʿ—ʾ–ËÀ˜Ë¿˜Æ»“À´½±Š½±‰À´Ä¸Æº’¶Ž¿³Œ¿³ŒÅ¹‘ȼ”Ç»“ƺ’À´Œ³§¥™u”Ši}uXd]FIC3.+ 
+((*qqrèèèÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûúùáàÙÆÁ¯Á¹šÌÁœÔʤÔÉ¢ÔÉ¢ÒÇ ÎÛʾ—Íšʿ˜Â¶ÁµÀ´Œ½±‰ÁµÇ»“ȼ•Æº’¶Ž½±Š»¯ˆ»¯ˆº®‡º®‡½±‰Â¶Ê¿—ÓʤÓÉ£ÏĜʾ–¶Ž»¯ˆ½²ŠÃ·Æº’ƺ’Ź’ƺ’ȼ”ɽ•Æº’÷÷ɽ•ËÀ˜Ê¾–ʾ–Í›ÒÉ£ÑÇ ËÀ™Ã·¾²‹¼°ˆ¹­†º¯‡¼°‰»¯ˆ¹­†º®‡Â·Æº’½±Šµ©ƒ±¥°¤}²¦€¸¬…¿³ŒÂ¶ŽÁµ¿³‹½±Š¾²Š¿³ŒÀ´ŒÁµ¿³Œ½²Š»¯ˆ·«„³§¶ªƒ¶¬…²©„°§ƒ®¥¬£€®¤€±¦°¤~ªŸz¡–t•Šj‹a„z]{rVsjPlcKiaIjbN|m³°¨èçåýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúòòñåäâÑÏÌ¿½·£ —”†‰ƒwzscqjWleNldMogOulSypU}tXx[†|_‹€a„e•Šj’p¢—t •rŸ•s© |¯¥€µ©„ÁµÆº’ĸ¹­†µ©ƒº¯ˆ½²Š¼±‰¸¬†¼°‰Ä¸‘ÏÅÔÉ¢ÒÈ ÌÁ™Æº’÷¿³Œ¾²‹ÀµÃ·Å¹’ƺ’Ç»“ƺ’Áµ½±Š½±ŠÃ·Å¹‘¶ŽÁµ¾²Š¶ªƒ«Ÿz™ŽmypU[S?>:*$" <<=‘òòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþïîëÏ˾¿¸Æ¼˜ÓÉ¢ÓÊ£ÓÉ¢ÑÆŸÍšɾ–Ê¿—ɽ•Ä¹‘ø¶Ž¾²ŠÀ´ŒÃ·Â¶ŽÃ¸Åº’¶Ž»¯ˆ¶ª„¸¬†½±‰À´ŒÄ¸É¾–ÏÅŸÐÆŸÏÃœÌÁ™Å¹‘½±Š¼°‰À´Æ»“ʾ–ɾ–ƺ’ƺ’ƺ’¶¶ŽÅ¹‘ɽ•É½•Æº’Ƚ•ÏÅž×ΨÔˤÌÁ™À´¼°‰¼°ˆ¼°ˆ¹®‡¶«…µ©ƒ¸¬…¿³ŒÆ»“Ƚ•ÁµŽº®‡µ©ƒ·«„¹­†½±‰ÁµÁµ½±‰º®†º®‡¾²‹¾²‹½±Š¿³Œ¾²‹¼°ˆ¹­†¶ª„´¨‚´¨‚´©ƒ´ª„´ª…³ª„²§‚²§²¦€­¡|¬ {©žy’p’‡gŠ€a€wZxoTriPneMiaJleRˆƒv¾»µëêéþýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûúúõõõëëêÞÝÚÓÑÎÀ½¹«§ –’†…oyr`umYtmVtlSwnT{rW€vZ„z\ˆ~_Žƒc”Šišmšnœ‘p¤šw©žz®¢}¹­†À´ŒÂ¶Ž¼°‰¸¬…¸¬†·¬†·¬†¸­†¾²‹Åº’Í›ÒÈ¡ÔÉ¢ÎÜȼ”÷¼°‰¼°‰Ã·È¼”Ê¿—Ƚ•È¼”Ź‘½±‰¼°‰ÀµÇ»”ĸ‘»°ˆ»¯‡º®†´¨¨y•ŠjphORK873% 
+UUV···ùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùø÷ÞÜÓ½§Â¹—ÏÅžÔË¥ÕˤÒÇ¡ÎÛʿ—Ë¿—ÌÁ™ÌÁšËÀ˜Ç¼”Áµ¾²Š¼°‰¼°‰Â¶È¼•Ã··«…°¤¸¬†Â¶ŽÅ¹’Ç»“ȼ”Ê¿—ÌÁ™ÍšÍšʿ—ź’¿³ŒÀ´ŒÆ»“Ê¿—ɾ–÷÷÷¿³ŒÁ¶ŽÇ»“ȼ”ƺ’ƺ’ɾ–ÏÅÒɤÑÇ Ê¿—½²Š¼°ˆ¾²Š½±‰·¬…°¦‚¯¥€¶ª„ÁµÆº“ƺ“À´Œ»¯ˆ¸¬…¸¬…»¯ˆ¿³‹Â¶ŽÀµ½±Š»¯‡¼°ˆ¾²‹¾²Š¼°‰¾²Š¾²Š¼°‰º®‡¹­…·«„µ©ƒ¸¬…½±Š¿³Œ½±Š·«…µ©ƒ²¦€«Ÿ{®¢}°¥¤˜v—Œk…e‡}_wZ{rVulQofMiaKpiW‰„v¼¹³îíìýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüûúú÷÷öíìëàÞÜËÈÄ´±©™Ž‘‹~{ixr\xpYyqXzqV~uX‚y[‡}_ƒc’‡g—Œkœ‘o •s£˜u¥šv¬ |µ©ƒ¼°‰½±‰¹­…³¨‚°¦´ª„¾³ŒÄ¸‘Ǽ”ɽ–ÎÛÒÇ ÎÛʿ—Ç»“À´Œ¿³ŒÆº’ʾ–Ê¿—Ǽ”ƺ’¶¹­†¼±ŠÆº“Ê¿—ø¸¬…·«„µªƒ¬ {Ÿ”rŒcf_GJD32.!
+ ))*zz{ÛÛÛþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýìëæÊƵ¾¶˜È¾™ÐÆŸÒÇ ÓÈ¡ÑÆŸÏÄœÒÈ¡ÓÉ¢ÐÅžÐÅžÍݦ·«…±¦€º®‡À´Á¶Ž½±Š¹­‡º®‡À´ŒÆº’ȼ”ȼ”ɽ•ÌÀ˜ËÀ˜Ê¾–ʾ–ɾ–Ǽ”Ź‘Ź‘Ç»“ƺ’ĸÁµ¾²‹¾²‹Â¶È¼•Ê¿—Æ»“ȼ”Í›ÌÁ™Ç½•Ä¹“Æ»”Æ»“¼°‰¼°ˆ½±‰¸¬…´©ƒ³¨ƒ±¦€³§€¸¬…ÁµÄ¸½±‰¹­†´¨‚©žz°¤¾²‹Æ»“ʾ—Ǽ”¶¿³‹À´Â¶ŽÁµŽ»¯ˆ¸¬…·«„»¯ˆ»¯ˆº®‡¾²ŠÁµÀ´Ã·À´Œµ©ƒ®£}« {¬¡{±¥²§¨y •r›o“‰iŒ‚c„{]|sWulQneLjaKohT‰„u¿¼¶ìëéüûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüøøøòñðååâÕÓÏÃÁ»¨¤šŠz†€n~wbyqZzqW~tY‚x\‡}_‹‚b‘†f•Œkšnœ‘oœ‘oŸ”q¨œx²¦€´¨‚´©‚¶ªƒµªƒº¯‰Ç»”ɽ•È¼”ȼ”ʾ–Ë¿—Ç»“ȼ”Ë¿—Ç»”Ź‘Ç»“ƺ’ĸ¶Ž¿³Œ½±Š¼±‰Ã·Ê¿—Ǽ”Áµ½±‰½±‰²§œ’o‘†f€wZ\U@D>.-) @@Aœœíííÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷öÜÙÏÁº¢Â¸•ÌÁ›ÐÅŸÓÈ¡ÓÈ¡ÓÉ¡ÖͦÔˤÎÛÍšËÀ˜Ä¸»¯‰µª…º®‡·«…²¦µ©ƒ»¯ˆ¿³‹ÁµÄ¸‘ɾ–Ë¿—Ê¿—ɾ–Ç»“ź’Ç»“ȼ”ȼ”ȼ”ȼ”Ç»“ĸÀ´ŒÀ´Œ¾²Š¿³‹Ç¼”ÏÄÑÆŸÊÀ˜ËÀ˜ÐŞ˿—÷ÁµÇ»“ɽ–¼°‰¹­†¸¬…µ©ƒ¶ª„¹­†´¨‚²¦€·«„½±Š½²‹µª…²¨ƒ®¤£˜u©y¹­†Ä¸Ê¿—ËÀ˜É½•Æ»“ƺ’ĸÁµ¼°‰·«…¶ªƒ¼°‰¾²‹½±ŠÁµÂ¶Ž¾²Š¾²Š¼°ˆµ©‚°¤~­¢}¯£}¬ {§œx¥šw¥›x¤šwœ‘p•ŠjŽ„e…{]}sWukPneLkcKpiU‡‚t±®¦ÞÝÚøø÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúööõìëêØ×Ó¼º³«¨•€‰ƒpybw]vZ‚x[†|^‰aŽ„d“ˆh•Ši˜kœ‘p •r¢–s¥™u­¡|µªƒ¸¬…½±ŠÆ»“ʾ–Ê¿—ȼ”Ç»“ĸ¶ŽÅ¹‘ʾ–ɾ–ȼ”Ç»“ĸÀ´Œ¿³‹¼°ˆº®‡ÁµÈ½•ÌÁ™É¾–ĸÀ´Œ¼°ˆ¬¡|’ˆg†}^xpUVP<=8*&" XXY±±²óóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüûûçåßÉñ¾µ”Ⱦ˜ÏÅžÑÇŸÒÈ¡ÔÊ£ÕˤÑƟʾ–ƺ’Ź‘Ç»“ĸ‘¿³Œ¸¬†¬¡|¥šw°¤º®‡¼°ˆ»¯ˆ¿´ŒÊ¿—ÎÛÌÁ™Ä¸Â¶ŽÃ·Å¹‘Ç»“Ç»“ȼ”ȼ”Ç»“÷À´ŒÁµÁµÃ·Ê¿—ÑÇ ÔʤÏƞ͚͚ƺ’¶ŽÆº’ÌÁšÍ›¿´Œ¸¬…µ©ƒ¸­†¼°ˆ»¯ˆ´¨‚³§‚»¯ˆ¼°‰·¬†®¤€¬¢ª¡~¦œy©žz±¥€º®‡Â¶ŽÇ»“Ê¿—ÍÁ™ÌÁ™Ä¸‘½±Š¾²Š¼°‰º®‡¾²Š¿³‹¿³Œ¿³Œ½±‰¹­†¶ªƒµ©ƒ·«„·«„´¨‚®¢}£—t›n¡–s§œy¥›yž”ršn—ŒkŽ„d„z]xoTqhNldKjcLpjU„p¨¤›ÚÙÖöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýùùùòòñååâÕÔϾ»³«§œ—’‹„pƒ{c€w\‚x[…{]ˆ`Œ‚c†e•‹i›oœ‘o™Žlœ‘m¦šv±¥€µ©ƒ¹­†À´ŒÇ¼”ÌÀ˜È½•Å¹‘¶ŽÀ´ŒÃ·Æ»“ȼ”ȼ”Ç»“ĸÀ´Œ¿³Œ½±‰¼°‰Ä¸Ê¿—ÍšÌÁ™Æ»“¿³‹µ©ƒ¤™uŒ‚c€wZriPRK951%
+
+ eee¾¾¿÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþññíÑÍÀ½µ˜Ã¹•ÎÃÑÇ ÓÉ¢ÔÊ£ÑÇŸÌÀ˜É½•Æº’Ç»“ɾ–÷¸¬†¯£~ªžz«Ÿzµ©ƒ¸¬†²¦´¨‚½±ŠÈ½•ÍšÌÁ™Ã·Â¶ŽÄ¸Ä¸Ã·Ä¸Æº’ȼ”Ç»“Áµ¾²‹Ã·Å¹‘ƺ’ɾ–ÌšÎÃœÌÁ™Ë¿—ɽ•Á¶Ž¾²ŠÂ·È½•ËÀ™Ç»”Àµ½±ŠÂ·Â¶º®‡°¤¯£~¸¬†¼°‰¸¬†« }¨Ÿ|ª¡~« |ªŸzªžz­¡}¶ª„ÁµŽÈ¼”ÌÀ˜ÍšȽ•Â¶À´ŒÁµÁµ½±Š½±Š¿³‹½±‰¸¬…´¨‚´¨‚·«„»¯ˆº®‡´¨‚¦šwž“qŸ”rªžy¨y“q“q –tŸ•s–Œl‹bzqUogMi`He]Ff_HleQ|wf¨¥œÕÔÑññðýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýùùøòñðèæä×ÕÒÀ½¶©¤—–~‹„oƒz`ƒy^…{]ˆ~`Œ‚c†e–‹j˜k˜Žl’o¡–t§›wªžz°¥€º®‡Ã¸É¾–ȼ”ĸÁµÀ´ŒÁµÄ¸Æº’ȼ”Ç»“ĸÀ´ŒÀ´Œ¾²‹¿³ŒÆº’ɽ•É¾–Ǽ”Á¶Ž¹­‡« {™Žmˆ~_wnSd]FGB1+( ##%}}}áááþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøáß׼§À·•Ê¿™ÐÆŸÓÉ£ÕˤÑÆŸÍÁšË¿—Ê¿—ËÀ˜ÍÁ™Ä¸‘¶«„©žz©žz±¥€¼°‰º®‡°¥€·¬…À´Â·Å¹’Ç»”ƺ“Ǽ”ɽ•Æ»“Ź‘Ź‘ĸ¶ŽÀ´À´Ã·Ê¾—Ë¿—ȼ”ƺ’Ç»“Ç»“÷ÁµŽÁµ»¯‡¹­…¿³‹Åº’Ê¿—ÌÀ˜É½•Ç¼”ËÀ˜Åº’¹­†°¤®£~´¨‚·¬…¶«…°¥€®¤°¥€±¦€¬¡|§œxªŸ{´©ƒ¾²‹Ã·É½•ÎÃœËÀ˜Å¹‘ÁµÀ´Œ¿³‹º®‡½±ŠÂ·¾³‹¹­†·«„¸¬…¼°ˆ¿³‹¿³‹¸¬…¤™uŸ”r§›x²§®£~ •s¥šw© {¢™w™o„e}sXpgNg_G`XB^WAbZCf_Juo_—“ˆÌËÇððïüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüöõõèçåÔÒÍÁ½µ«§š’Œy‡~fƒz^„z]‡}_‹bŽ…e“‰i˜Žl’p¢—t¦šw¨œx­¢}¶ª„¼°‰ÁµŽÆº“Ǽ”Ǽ”ƺ“Ź‘ƺ’Ç»“ĸ¾²ŒÀ´Ä¸‘Ǽ•Åº“øŹ‘Ź‘ĸ¶Ž¹­†­¡|Ÿ“q„evYkcKUO;;6(  667«««üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüûûêéäËƵ¿¶˜Å»•ÎÄœÓÉ¢ÖÌ¥ÖÌ¥ÓÉ¢ÑÆžÐÅÐÅžÑÆŸÌÁšÁ¶¯£¬ {´¨‚¿³ŒÀ´¼°‰Ä¸‘Æ»“¾²‹»¯ˆ½²‹Ç»”ÌÀ˜ÎÛ͚͚ʿ—·º®‡¹­†Â¶ÍÁšÑÇŸÏĜɽ•Ä¸Ä¸Ä¸»¯ˆ·«„º®†¶ªƒ·«„¿³ŒÆ»“Ê¿—ɽ•É½•Ê¿—ÍÁšÆ»“¼°‰·«„µ©‚³§°¦²¨ƒ¸­†¸¬…¶ªƒµ©ƒ¯¤~« {´¨ƒ¼°‰¾²ŠÀ´ŒÆ»“ÎĜʾ—¶Ž¿³‹»¯ˆ·«„¹­†ÁµŽÈ½•Å¹‘À´À´ÁµÁµŽÃ·Å¹‘À´Ž­¡}¥šwªž{¶ª„¸¬†²¦€·«…´©ƒ¥šx™ŽmŽ„e‚y\umTjcLa[D`YBc[Db[De]Gtm]—“ˆÁÀºëêéûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúòòñçæäÍËı¬ ™“Š‚j…|b„{^‡~_‹b…e“Ši›n£˜u«Ÿz­¡|±¥¶ªƒµ©ƒ¶ª„¶ŽÊ¿—ÏÄÎÛÍšÌÁ™Ê¿—¿³Œ³¨ƒ»°‰É¾—ÑÈ¢ÎĞȽ•Ä¸ÁµÀ´Œ¾²Š²¦€ •r–‹jˆ~`tkQ`YCKE41-"SSTÆÆÆÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþòòðÔÐÃÁº Á·•Ê¿™ÓÊ£×ΨÚѬÛÒ¬ÚЫÚЪÛѬÝÔ±ØÏ«ÍÄž»°Š¶ª„º®‡À´Ä¸Æº“ËÀ˜Ê¾—¿³Œ¸¬…¶ªƒ½±ŠÆº“ÍšÏÄœÏĜ͚ƻ“¾²‹¼°‰Åº’ÏÄœÑÇŸÒÈ¡ÏĞĹ’¶ŽÁµº®†¹­†¾²Šº®†¹­†Â¶ŽÃ·Â·Ã·ÀµŽÀµŽÇ»”Ç»”Á¶Ž¾²‹»¯ˆ¹­†µª„³¨ƒ¶ªƒµ©ƒ´¨´¨´¨µ©ƒ¹­†º®†¹­†¼°‰Â·Ç¼”Ĺ‘ÀµÀ´Œ½±‰»¯‡¿³‹Å¹’ɾ–ɾ–Ê¿—ÌÁ™ÌÁšÍ›ÎÄžÏŞʿ˜·¬†±¦€´©ƒ¹­‡½²‹ÁµŽÃ·¼°‰¬¡}ž“r‘‡h„{^{rXrkSicKg_Hg_Ge]Fb[De]InhVŒ‡{¿½·âáà÷ööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøøøéèåÓÑ˹µª¡œŒ‘Šv†}d„{_†|_Š€a…e–Œjž“q§œx¬ |°¥´¨‚±¦€¯£~µ©„¾³É½–ÎÛÏÄœÏĜ͚ĸ‘¹®‡¿³Ê¿—ÑÈ ÒÈ ÏÄʾ–Áµ¹­†·«„®¢}¡•s˜l†}_ldKYR>E@0(% !!"ddeãããÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýèæàÌȶ¾¶›Äº–ÑÇ¡×ΨÜÒ®ßÖ±à׳áÙ¶åÝ»çàÁâÚ¹ÖͨǼ•À´ŒÀ´ŒÀ´ŒÆº’ÌÁšÏÅÍšź’¼°‰¶ªƒ¹­†Ã¸ÍšÏÄœÏÄœÎÛËÀ˜Ç»“Ź‘ɽ•ÎšÐÅÒÈ¡ÑǡȽ•Ä¸Ã·¾³‹ÀµÅ¹’¾³‹¼°ˆÁµÀ´¿³‹À´»¯ˆ·«„¾²‹Ã·Ã¸Â¶Â¶ŽÀ´½±Š¸¬…´¨±¥±¥³§·«„¸­‡¶ª„´¨¶ªƒ»¯ˆ¿³‹¾²ŠÀ´ŒÂ¶ŽÃ·Â¶ŽÁµÆ»“Ƚ•É½•Ë¿—ÏÄœÒÈ¡Õˤ×ΨÚÑ«ØÏ©ÑÆŸÀµ»¯ˆ¼°ˆº®‡À´É¾–Ë¿—Ź’¹­‡«Ÿ{œ‘p‚e…|a~w\ypWumTqiQkdMh`Hf^Gd]GjdPƒp©¦žÒÑÍñðïýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþûûûðïîßÞÙËÉï«Ÿ™“‚‹„m…}b…|_‰`†f—Œlž”q£˜vªŸy¯£~¯¤­¢}®£~·¬…÷ÌÀ˜ÏÄœÏÄœÏÄœËÀ˜Æº“Æ»“ʾ—ÐÅÑÇ ÑÆŸÍš÷¸¬…³§€­¡|¥šw™Žnƒy\e^GRK8=8*  556‡‡ˆùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùãáÙÆ¿«À·•ÊÀšÔÊ£ØÏ©ÛÒ­ÝÔ°ãÛ¹èáÂèáÃâÚ¹×ΩËÀ™Ä¸ÁµÁµÆº’ÍšÒÇ ÓÉ¢ÐŞǼ”¶ŽÇ¼•ÌÁ™ÏÄœÏÄœÏÄœÏÛÎÛÍ›ÍÁ™Ë¿—Ë¿—͚͛ÌÁšÌÁ™ÌÁ™ËÀ™È½•É½–Ê¿—¶»¯ˆ½±ŠÁµŽÄ¸‘Ź‘¾²‹·«„¶ªƒ¸¬…»¯ˆÁµŽÅ¹’Ź’¶Ž½±‰¸¬…´¨³§¹®‡·­†°¦‚¬¡}°¥º®‡¾²Š¼°‰¸¬…¾²‹Ç¼”Ë¿—Ç»“ĸɾ–Ë¿—Ƚ•É½•ÌÁ™ÐÅÕÌ¥ÚѬÝÔ¯ÚЫÒȠĸ‘½±‰»¯‡¹­†¿³‹Ç¼”ÌÀ˜ÌÁ™Æ»”»¯‰®£~£˜uœ‘p”Šl„gˆd€x^xpWqiPnfLjbJf^GhaMwraŒ€¿½·ççåøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûïïíÙØÔÂÀ·«¨š•}ˆi„{a…|_Œ‚c“‰h˜Žm •r¨x¬¡}®£~´¨ƒ»°‰Ä¹‘ÌÁ™ÏÄœÏÛÎÛÏÅÐÆžÌÁšËÀ˜ÑÆŸÏÄË¿—ɽ–Ç»“¶Ž·«…¯£~©x”‰iypU`YCFA1/+ HHI¤¤¤ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýïîêÒÎÀÀ¸Äº–ÏÅžÕË¥ÙЫÜÓ°áÙ·åݼâÛºÝÕ±Ö̦ÌÀ™Æº’ĸĸǻ“ËÀ˜ÐÅÑÇŸÏÄœËÀ˜É¾–ÍšÏÄœÏÄœÏĜΚÍÁ™ÎÛÐÅžÑÆŸÍÁšÉ½–Ë¿—ËÀ˜ÌÁ™ÏÛÐÆžÑÇŸÐÅžÏÄœÎÛȽ•Ä¸‘ĸ‘ƺ“ƺ’ÁµŽ¹®ˆ³©ƒ¶ª„¸¬…¹­†»¯ˆÀ´Å¹’ÁµŽ½±Š¾²‹º®‡·«„½±‰»°‰¶«†³¨‚³¨‚µ«…¹®‡¼°‰½±ŠÄ¸‘ËÀ˜ÎÛʾ–ƺ’ɾ–Ƚ•Æº’ɽ•ÍÁ™ÏÄœÒÈ¡ÔʤÔʤÒÇ¡ÍšĸÀ´Œ¿³Œ½±ŠÀ´Ç»“ʾ–Ê¿—Ǽ”Á¶Ž»°‰µ©„¯¤€©ž{ •u™qŽ†j…|a}tZxpVskQmeLjbJhbLoiV‰…x¯­¥×ÖÒôôóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýööõææâÐÎÈ´±§žšŠ‡r…}eƒ{_ˆ~`Ž„e•‹j’q£˜u©žz°¥¹­‡Â¶É¾–ÌÁ™ÌÀ˜ÌÀ˜ÏÄÓÉ¡ÎÛËÀ˜ÐÅÌÀ˜Æº’Ç»“ȼ”ƺ’½±Š³§§œx’‡gumSYR>>9+%!
+ %%&iijÓÓÓþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøâàØÆÀ«À·–ÊÀšÒÈ¢ØΩÜÓ¯ßÖ²à׳ÜÔ¯ÙЪÕˤÍÁšÈ½•Ç»“Ç»“ȼ”ȼ”ËÀ˜ÍšËÀ˜ÌÁ™ÎÛΚ͚͚ÎÛËÀ˜È¼”ËÀ˜ÐÆžÒÇ Í›Ƚ•É½•ÌÀ˜ÏÛÑÆžÒÈ¡ÔÊ£ÖÌ¥ÕÊ£ÑÆŸÐÅžÏÄœÌÁ™È½•Ã·º®‡³¨ƒ±§‚¹®‡½±‰º®‡¸¬…»¯ˆÀ´¼±‰º®ˆÁµ¿³Œ¼°‰¿³‹¿³‹½±Š»°‰¶«…±§ƒ¶«†¾²‹Å¹‘ʾ–͚͚ËÀ˜É½•É½•Ç»“Ź‘ɾ–ÍšÎÛÎÛÍšʾ–ɾ–ɽ•Ä¸Ã·Ä¸Â¶ŽÂ¶ŽÄ¸‘Æ»“ƺ’ĸĸ‘ĸ‘¾²Œº¯Šµ«‡¯¤¤™x•Œn„fŠd†}a|sYtlRqiOmdLibJlfRytdž›‘ÔÓÎööõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùííëØ×Ó¾¼³¨¥˜–‘†~gx]„z]Š€b‘‡g˜lŸ”r¨x±¥€»¯‰Ã¸‘ƺ“Æ»“Ç»”ÍšÒÈ¡ÎÛʿ—ÌÁ™È½•Ä¸Ç¼”Ƚ•Ç»“¶Ž´¨ƒ£˜u‘†ftkQQJ851%==>¤¤¤öööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýòñíÕÑÄÁ¹ŸÄº–ÎÄÕʤØÏ©ÜÓ­ÝÔ¯ÙЪØÏ©ÖΨÐŞ˿—Ƚ•È¼”ƺ’ĸǻ“Ë¿—ÌÁ™ÎÛΚʿ—Ç»“Æ»“ËÀ˜Ç¼”Á¶ŽÈ½•ÏÄÐÅÌÀ™È¼”ȼ”ÌÀ˜ÐÆžÕË¥ÔʤÓÉ¢ÚЪÛÑ«ÖÌ¥Õ̦Óɣ˿˜Ã·¼°ˆµ©‚´¨‚¶«„¹­†¾²‹Ã·Â¶½±Š¶«„±§±§ƒº®ˆÀ´Ã·À´½±Š¹­†¶ªƒ´©ƒ·«…¾²‹Å¹‘Ç»“ɽ•Ê¾–ʾ–ËÀ˜ÍÁ™Íšʿ—Ç»“ȼ”ʾ–ʾ–ʾ–ȼ”Ź‘ȼ”ËÀ˜Ç¼”ĸ¶ŽÀ´Œ¾²‹¾²ŠÀ´ŒÃ·Å¹‘Ç»“Ź‘¼±‰´ª…±¨ƒ²§‚§z™o–Œm•‹m‘‡j…|`{sXxoUtlQogMkcKibKpjW“‚ÊÉÃëêèúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüõôóæåãÐÏÊ·´«—‰…q„{b‚x\†}^Œ‚c’‰iœ’p¤™v« |µª…¼±Š¿´ŒÄ¸ÌÁ™ÒÈ¡ÎÜɽ•É¾–ȼ”ȼ”ËÀ˜Ë¿—Ç»“¶Ž²¦€‘pŒ‚cofMF@0+' !!#cceÎÎÏÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúøäâÚÈ®¿¶—Ƽ—ÑÇ ÔÊ¢Ö̦ØΨØÏ©ØÏ©ÖͧÑÆŸÌÀ˜É½•È¼”ƺ’Ź‘ƺ’ȼ”ɽ•ÌÁ™Íšɽ•Æº’Ĺ‘Ç»“ƺ“Ĺ‘Ƚ•ÎÛÐÅžÌÁšÈ¼”ƺ’ÌÀ˜ÑÇŸÒÈ¢ÓÉ£ÕÌ¥ÛÒ¬ÛÒ­×ͦÔÊ£ÑÆŸÌÀ˜Æ»“ÁµŽ¼°‰»¯ˆ»¯‡¹­†¾²‹Ä¸¾²Œ´¨ƒ­¡|©Ÿ{­¢~¹­‡Â¶ŽÅ¹’¿³‹¹­†µ©ƒ´¨¸¬…¿³‹Ä¸‘Ç»“ƺ’ȼ”Ë¿—ËÀ˜ËÀ˜ÌÁ™ÎÛÌÁ™É½•Æº’Ź‘Ź‘Ź‘Ź‘Æ»“ɾ–Ê¿—ƺ’Áµ½±Š½±‰¼°‰½±‰À´ŒÃ·Â¶ŽÃ·Â¶Žº®‡³¨‚­£®£§z –u’r™o’ˆiˆaƒz^€x\{rXvmSsjPmeLibKmfQ‘Œ~¾¼´ßÞÛõôôþþýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþýýùùùëëéÚØÔÀ¾¶©¤™—ˆ€hƒz^…|^Š€a‘‡g˜lŸ”s©žz´©‚»°ˆÃ·ÌÀ˜ÒÈ¡ÐÅË¿—Ƚ•È¼”Ƚ•Ë¿—ɽ•Ä¸¿³‹®£~—l‚x[bZC;6(" ::<‘ìììÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõôóÙÖËÁº£¿¶”ÌÁšÐÆžÒÇ ÕˤØЪØÏ©ÕˤÐÅÌÀ˜É½•È¼”ȼ”Ç»”Ç»“Ź’ƺ’Ê¿—Íšʿ—ȼ”Ź‘÷ź’ʾ–ɽ•ËÀ˜ÐŞ͚ǻ“Ź‘ÌÀ˜ÑÆŸÍšÐÆŸ×ΨØЪ×ΨÕˤÏÄœËÀ˜ÍÁ™ÍšÌÀ˜Ç¼”ĸÀ´Œ»¯‡½±ŠÀ´µ©„¬ |ªŸ{©žz­¡}¸¬†¿³ŒÀ´Ž»¯ˆ·«„µ©ƒ¶ªƒ»¯ˆÂ¶ŽÆº’ƺ’÷ȼ”Í›ÏÄœÍÁ™Ë¿—ÍÁ™ËÀ˜Ç»“ĸÁµÀ´ŒÁ¶ŽÆº’ÌÁ™ÌÀ˜È¼”ÁµŽ½±‰º®†¹­†»¯ˆ¿³‹ÁµÀ´½±Š¾²Š¾²Š¹­†²§€¬ {§œx¤šx¢™xœ’r–Œk’‡hŠc…|`x\{rYvnUriQmdMhaIg`IqkX‹‡x­ª¡ÕÔÐòòñýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿþþþþýþþýþþýþþýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùùòòñáàÝÌËŸ´«Ÿ™‰‡oˆc†}_Š€a†f–lŸ•t¬¡}¸¬…ÁµÉ½–ÏÅžÑƞ͚Ƚ•Ç»“Ç»“ȼ”Ź‘¿³Œ¹­†¨y…fskQQJ81-! 
+  YYZÐÐÐýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýîìéÏÊ»½µ™Äº•ÏÄÔÉ£ÙϪÛÒ­ÚЫÕʣ͚ËÀ˜Ë¿—ƺ’Ç»“ɾ–ø÷ËÁ™ÏÄœÏÄœÍÁ™È¼”øÁµÄ¸È¼”ƺ’ƺ“Ë¿˜Ê¾–ȼ”Ç»“ÌÀ˜ÏĜ˿˜ÏÄÔʤÑÇ ÑÆ ÓɢΛɽ•Ê¿—ÍÁ™ÏÛÍÁ™É½•Ä¸¼°ˆ¸¬…¸¬…·«…¸­†º®ˆ¶ª„±¥€¯£~¯¤²¦¶ª„»¯ˆ½±Š·«„µ©ƒ¹­‡Â¶ŽÅ¹‘÷ȼ”ÏÄÒÈ Ðƞ͚˿—Ç»“ĸĸ¶Ž¾²‹Ã¸ÌÀ™ÑÇŸÎÛƺ“¾²Šº®†¸¬…¸¬…»¯ˆ½±‰·«…¶ª…¿³Œ¾²‹»¯‡·«„¬¡}¡–t“q›o—m’ˆhƒdˆaƒy]}tYvmTohPleMhaKaZE\U@ZS?_YDicOytešÊÈÅçæåøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþýþþýþýüþýüýýüþýûþýüþþýÿÿýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýööõèèæ×ÖÓ¿·«¦˜š’}†jŒ‚dŽ„d’‡g™Žn¤™u°¥º®‡Â¶ŽÆ»“Í›ÏÄƺ’÷ĸƺ’¶º®‡°¤šnuYd]FD?0%#  889xxy÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøãâÛÅÀ­½´“ÌÁ›ÕË¥ÛÒ­ÛÒ­ØÏ©Ôʣ͛ËÀ˜ËÀ˜È¼”ȼ”ɾ–¶ÁµŽËÀ™ÐÅžÒÇŸÑÆŸÍ›Ƚ•Å¹‘÷÷¶¶ŽÀ´ŒÂ¶Å¹‘ȼ•ÍÁšÑÆžÐÅžÐÇŸÑÇŸÌÁ™Ê¿—Ìšʿ—ȼ”ȼ”ɽ•É¾–Ǽ”Ǽ”ƺ’Áµº®†µ©ƒ¸¬„½±‰À´Œ¾²‹¸¬…®£~« |­¢}³§»¯‡À´¾²‹º¯ˆº®‡½±ŠÀ´ŒÃ·È¼”Í›ÔÊ¢ÔÊ¢Ñƞ˿—ƺ’ĸĸĸ÷ʿ˜ÒÇŸÒÈ ÍÁ™Ä¸»¯ˆµª„´©ƒµ©‚·«„·«„­¢}ªŸ{³§ƒ´©„³©„°¥¥šx™Žn’ˆhŒ‚e‡}`€w[ypVsjRldNf_H^XDYS?TN;QL;KF6E@1@<.?:-FA1OJ9_ZLzwl¯®¨ããâúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýýýûýýúýüùýûøüû÷üû÷üûøýüûýýüþþýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúóóòççäØÖÑÄÀ·®¨˜›”x–Œn”‰j–ŒkŸ”rªžz´¨‚º®‡½±‰Â·Æ»”ƺ“ĸĸƺ’Áµµ©ƒ£˜u‡~`meMUO;84'
+**+RRSŽŽŽûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóóñÒÏû²”Ƽ–ÓÈ¡×ΨØÏ©ÖͦÓÉ¢ÎÛʿ—ȼ•Ê¿—ÌÀ™Ê¾–ĸ‘ÁµÅº’Í›ÓÉ¢ÓÉ¢ÓÈ¡ÑÆŸË¿—÷¾²‹Â¶Ž¿³Œ¸¬…¼°ˆÃ·Ç¼”ÎÃœÔÊ£Õ̦ÓÉ£ÏÅʾ—Ź’÷Ĺ‘ƺ’ƺ’ĸÀ´½±ŠÁ¶ŽÇ»“Ź‘¿³Œ¹­†µ©ƒ·«„»¯ˆ½±Š¼°‰¸¬†¶ª„µ©ƒ³§µ©ƒ»¯ˆÂ·Æº“÷»¯ˆº®‡Ã·Æº’ɾ–ÑÆŸÓÉ¡ÑÆŸÌÁ™É½•Ç»“ĸŹ‘ɾ–ÏÄœÑÇ ÏĜȼ”À´Œ¸¬…°¥€«¡}­£~°¤~¯£~©žz£˜v –u¤šy¦}£™yœ‘r’ˆj…|`|tYulSmfNc\GZT@RL:MG7ID5D?0?:,:5)62'1-#+)'%&#,):6)LH<wÈÇÅôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýýüúüûøûúõúøòù÷ðù÷ðù÷òúùôüû÷ýüùýýúþþüÿþýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúòòñèçå×Ôλµ¥«£‹Ÿ–xœ’p¢–t¨x°¤µ©ƒ·«…¶ª…»¯‰Ç¼”ʾ—ȼ•Æº’¿³Œ²¦™Žm{qVd\EKE40,!
+ @@Ammn¼¼¼ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøø÷ÝÛÔ¼¶¿¶“ÍÃœÔÊ¥×ΩÔʤΛȼ”÷ÁµŽÇ»”ÍšÎÜɾ–Æ»“ɽ–ÎÛÐÆžÏÄœÐÅÑƞ͚ȼ•Â¶À´Œ»¯ˆ¸¬…¾²ŠÅ¹‘ȼ”ÍšÑÆŸÐÆžÏĞ͚Ǽ”À´Œ½±‰½±Š¾²‹¾²‹½±‰»¯‡º®†Á¶ŽÈ½•Â¶¾²Š½±‰»¯‡¼°ˆÀ´Œ¾²Š½±ŠÀ´Œ½±‰¸¬…µ©ƒ´¨‚µ©‚¹®‡¿³ŒÁµŽ¾²Š»¯ˆ¾²‹¿³‹ÀµÇ¼”ɾ–Ê¿˜ÎÃœÏÃœÌÀ˜È¼”ĸ÷ƺ“ʾ–ʾ–÷º®‡¯¤¤™vž”r£™v¨y¦›w •sœ’q›q™q•ŒnŒƒg‰eƒz`vnVjcL`YDWQ>PL;HC4?:-83(50&1-#+(&#" )("74-MJAnležšáàßüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþýýüüúûú÷ø÷òöôìôñçóïäòïåóðçõóë÷õïöõðööòùøö÷÷õóóñôôòôóòèçåååâëëèòòñøø÷ûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúóòñáßÚËǺ³¬•¤›|¤šv§œx¬¡|°¤±¦³¨ƒº®ˆÅº“ÌÁšËÀ™¿³·«…­¢~”ŠkulR\U@D?0,( 222\\]‰‰ŠéééÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýñðîÌȹ»´–ǽ—ÒÈ¡ÕË¥ÐŞǼ”÷¿´ŒÁµŽÈ¼•ÎÛÐŞ͚ÌÁ™ÏÄœÎÛʿ—Ǽ”ɾ–ÌÁ™ÍÁ™Ë¿—Ç»“ÁµŽ¼°‰¼°ˆÂ¶ŽÇ»“ȼ•Ê¿—ÌÀ˜Ê¾–ɾ–ɾ–Ç»“Àµ¼°‰»¯‡»¯ˆ»¯‡¹­†¸¬…»¯‡Â¶Æ»“¾²‹º®‡¼°ˆ¾²ŠÂ¶ŽÅ¹‘ÁµŽ¿³‹Áµ¼°‰·«„´©ƒ²§±¥²¦€¸¬…¾²‹Áµ¾²‹¸¬…·«…º®‡¿³‹ÁµÄ¸ÍÁšÏĜ˿—Ǽ”÷¿³ŒÀ´Â¶ŽÁµº®ˆ°¤£˜t›n˜lšnœ‘o™Žm’ˆhƒfŽ…h‰€e‚y`tlUldNd]H`ZHUP>JE5@<.95*63).*!%#1/,<;6DC>OMG][Uljd†„€ÈÈÇøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúôóòëêåÓÐƾºª¼¶£Àº¥ÅÀ¬ÊųÌǸÊÆ·ÌɼÏÌÁÍÊÀÅ÷ÉƼÍ˺¶§º¶¥»¸¨ÈŸÞÜÓàÞ×àßÙçåâñðïööõ÷÷öúúúýýýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþø÷öçæáÍʽ²«“¦œ|¦œx« {®£}­£~³¨ƒ¼±ŠÁµŽÈ¼•È½–¹­‡­¡|¢—u„gtmWXR?@;-,(" HGG{{|¿¿¿úúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúùùÞÜÕÀº¤¿µ“Í›ÏÄËÀ˜Æº“÷ƺ“ÌÁ™ÑÆŸÑƟ͚͚ÐÅÑÇ ËÀ˜Ä¸Â¶ŽÅ¹‘ɽ•É½•È½•Ç»“ƺ’÷ÁµÄ¸Ç»“ȼ”Ƚ•É¾–Ǽ”Ź‘Ź‘ɽ•Ç¼”Áµ¿³‹¿³‹¾²Š¼°ˆº®‡½±ŠÀ´Áµ¼°‰·«„¶ªƒ»¯ˆÃ·Ç»“Ç»“ĸ½±Š·«„²¦€®¤­£±¥µ©‚º®‡¿³‹Ã·À´Œ¶ªƒµ©ƒ¹­†¾²Š¿³ŒÀµÆº“Ç»“÷ÁµŽÂ¶Å¹‘Ź‘Áµµ©ƒ­¢}¤™v˜l˜kšn”Ši‚c†}_vZwpUpgOiaJibNb\IUN>JD4@</>:/73).+!&$"  !! 764MLJcb_rqmsrmtsnzytŽ‰²±¯ßßÞûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýûûúùðî鸲œ¿¸Å¾£ÉÀ¥ËéÏÈ®Ò̵ÕϺÙÔÀÝØÅÝØÆÙÔÂÛ×ÆÝÙÉÎÉ´ÈìÅÀ¥Ã¼ ¸±–²«“²¬•Ä¿®ÃÀ²ÂÀ³ÇĹÑÎÆÞÜ×äãßéèæõõôýýüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷öõåãÞÉŶ±©¦œ|§œy¬¡|­¡|³§‚º®ˆº¯ˆ½²Š¾²‹¶«…¥šx†iƒzaohTPJ8?:+/,!!877vvw±±±áááýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýïîìÏ˾¼´—ź•ÍÛÍšÌÁ™Ê¾—ÍšÒÈ ÕË£ÓÉ¢ÑÆžÑÇŸÑÇŸÎÜɾ–Ź‘ĸƺ’ȼ”ȼ”ƺ’Ź‘ƺ’Ç»“Ź‘ĸŹ‘Ǽ”ʾ–ʾ–ƺ’¶ŽÂ¶ŽÇ¼”ɽ•Å¹‘¶ŽÀ´ŒÀ´Œ¾²Š¼°‰¼°‰¾²ŠÀ´ŒÀ´Œ»¯ˆ·«„¼°ˆÃ·Ç»“ʾ–ɽ–Á¶Žº®‡³§« |« |±¥¸¬…¼°‰½±‰Áµ¿³‹·«„¶ª„¹­†¾²Š»°‰¸­ˆ¿´Áµ½±Š¾²‹Ã·Æº’ÁµŽ¸¬†¬¡|§œx •r’ˆg†f†gŠ€a€vZxoTnfMc\EXQ=RL9MG6JF8B>263'-* '$$#$$$==<ZZY~›²²±ËËÊÎÎÍÍÌËÎÍÌÜÜÛðððûûúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüûûùõõñÙÖÊÌȸÎÊ»ÆÁ¯»³™Â¹žÈÁ§ÏÉ°Õ϶ÙÓ¼ÞÙÃâÜÈâÞËäàÍãÞËÜ×ÃÙÓ¼ÖÏ´ÏÈ«ÉÁ£ÈÀ¡Æ¿¡Ã½¢À» ¾·»µ¹´»¶£Â½®ÐÍÁÖÔÊàßÙêéæøø÷ýýýýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷öõâàÙÄÀ¯¯§Ž¥œ{¨œx« {®£³§‚¶ª„¸­†¸­‡±¦‚ž•tˆc{t\jcRKF6=9+0-"%"$"HHH••–ÒÒÒõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùø÷àÞ×Á»¦½³’ËÀ˜ÏÄœÐÅžÐÆžÓÈ¡ÕË£ÔÊ£ÔÊ£ÕÊ£ÔÊ¢ÐŞ˿—ɽ•É½•É½•È¼”Ç»“ƺ’Ź‘ĸǻ“ȼ”ƺ’¶ŽÁµŽÇ»“ʾ–Ê¿—ĸÁµÂ¶ŽÈ¼”Ê¿—ȼ•Åº’¶ŽÁµÀ´Œ¾²Š¹­†¼°ˆÂ¶ŽÇ¼”ĸ¾²Š¿³‹Ã·Æ»“ɾ–ɾ–Ź‘¿³‹·«…­¡}¬ |±¦€º®‡½±Š»¯ˆ¼°ˆ»¯‡¶ª„·«„»¯‡½²Š·­‡±§‚¶«„·«…¶ª„º®‡¿³‹¿³Œ¶ª„ªžz¢—tž“q˜Žm‹c…{]vYwnSnfMd]FYR>MG6B=-<8*73&1.#-*!%$.-.EEF^^_°°°ÐÐÐçççòòñúúúûûûûûûûûûýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýýýüûûúööôïíéïîéëéãÎʺ¸±™¿¹ ÇÀ§ËĪÏȯÔÏ·ÜÖ¿áÛÄäÞÇåàÉæáÌçáËåÝÄáÚ¾ßØ»ÝÔµÛÒ²Ùѱ×Ï­ÓÌ©ÏǤËáǿŸÃºœÀ¸¿¸žÃ½¨ÆÁ²ÎËÁÐÏÆÖÕÏçæãööõüüüýýýþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷öõßÝÖÁ¼«©¢†¢˜v¥šv©žy« |°¥€´¨‚´¨ƒ«¡~™‘r†~dvp[faQOJ?84*,) $")(&TTT££¤åååýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóòðÔÑÆ»´™Á·“ÌÁšÎÛÒÈ¢ÔˤÓÉ¢ÎÄœÏÄœÓÉ¢ÐÅË¿—ʾ–ËÀ˜ÍšÍšȼ”֦ŽÄ¸Ç»“Ê¿—Ƚ•Â¶Ž½±Š¾²ŠÅ¹‘Ź‘ĸź’ĸĸÌÁšÐÅžÎÛÍšɾ–÷À´Œ½±‰¶ªƒ»¯ˆÇ»“ÏÄÍ›ǻ“ƺ’Ź‘÷·Áµ½±Š¼°‰¼°ˆ·«„³§´¨‚»¯‡¿³‹½±‰·«„°¤¬ |³¨‚¼°‰¿³‹»¯ˆ²§¥šw¢—t§œx­¢}°¤®£}¤™u™Žm‘‡fŠ€aƒz]}tXskQg_GXR=NG6F@0<7)1.#+(%" %$%778KKL\\]}}~ªª«ÅÅÅééêõõõûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþþþþþþþýýýüüüûûûûööõððîîîìíìëêêççæãêéæèçääãßäâÝëéåîíëñðîúúùüüüþþýþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüûûúùùùø÷öôòðáàÚ×ÕÌÆÁ³½·£À»¥È¬ÎÇ­Ó̱Ö϶ÜÖ¾àÚÂãÜÂãÜÁãÝÂåÞÃàÚ¼ÞÖ¶Þ׶àØ·ßÖ¶ÛÑ®×Ï«ÖΩÓʦÎÅ¡È¿œÁ¸–»²“»´˜Â»¡ÊÄ®ÊıÍɸÒÎÁæãÛëêäîíêîîëöõôúùøüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýðïìÕÒÈ»¶¢§Ÿ„Ÿ–v –s¥šw©ž{¬ }¬ }¤šx•Œn„|cleQZUFPMD75,%#" :98mmnÁÁÂõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþùùøåãÞÅÀ­»±‘Ƽ–ÍÃœÐÆŸÒÇ¡ÑÆŸÌÀ™ÎÃœÕˤÒÈ¡ÏÄœÏÄœÐÆžÑÇŸÎĜȼ”¶ŽÃ·Å¹‘Ç»“ƺ“¶Ž½±Š¼°ˆ¾²ŠÂ¶ŽÂ¶ŽÂ¶ŽÆº’ĸ·Ƚ•Í›ÏÄÑÆŸÎÛƺ’¶Ž½±‰´¨‚»¯ˆÈ¼”ÐÄÐÅËÀ˜É½•Ç»“ĸÀ´Œ»¯ˆ¹­…¸¬…¹­†»¯‡»¯ˆ¼°‰¾²‹½±‰¸¬…°¤©y§œx¯£~¸¬…»¯ˆº®‡²§€ž“p•Ši˜lŸ”q¡–rœ’o”‰iŠ€a€wZwoTogNh`I]VAQJ8C>.95'0, &#%%&///EEEfffˆˆˆ©©©»»»ÔÔÔììí÷÷øþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýüüüüüûîíéëëæëëçìëçÖÔÌ×ÔÌÛÙÒ×ÕÌÓÑÈÑÏÅÑÎÄÆö»·©¸´¤µ± µ±ž·² ·²¡¯«˜´¯š¹³žº´Ÿºµ¢½¸§ÐÌÀÚØÏÞÜÔâàÚñðîõõóõõóööô÷÷öûûûþþþÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþýýýüüûúôôòóòðïîêâà×ÙÖÊÔÐÅÄ¿­¿¹¤Ä¾¨ÎÈ°ÖϳÜÖ¸ßØ»âÛ¿ãÜÀàغÞ×·áÙ¹ãÛ¼âÛ»àظß×·ß×·ßÖ´ÚÑ®ÕͨÓʤÏÅ¡ËÁȾš¿¶”·®·¯‘º ¿·¡Â½©Ï˹ÇÁ¯ÍÈ·ÕÑÃßÝÔñðîúúùýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûîíéÖÔʺµ¡¥‚“sŸ”r£˜v¥›x¤šxœ’r…h~w_c]KMH;B>6/,%" &$"MMM““”ãããüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýòòðÔÑƺ³—À¶’ÌÁšÎÄœÏÄÍ›ʾ—ÎÄ×ͨ×ͧÕˤÕˤÕˤÔÊ£ÐÅɽ•Ä¸Ç»”ȼ•Åº’¿´Œ»¯ˆº®‡º®ˆ¼°‰À´ŒÀ´ŒÀ´ŒÅ¹‘ĸ¶ŽÃ·Ç»“ÌšÒÇ ÒÇŸÊ¿—ƺ’ÁµŽ¹­‡¾³ŒÈ¼”ËÀ˜ÌÁ™ËÀ˜É¾–ȼ”Æ»“¿´Œ¹­†¶ª„µ©‚´¨‚»¯‡À´ŒÂ¶Ž¿³‹¹­†²¦€¬ |§œy¦œxªŸ{°¤²¦³§­¡|šnŽƒdŒ‚c…eŽ„d‡~_€vZvmRkcJbZDYR>QJ7GA0<7)1-!'#   -,,GGGccdvvv———ÄÄÄÞÞÞîîîôôôûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúòòðÓÒ;¼µ½»³¿¼±¸´£¹µ¢»µ¤½·¤°©²«¶®“¶®’¶¯’¹±”¼´—ú›ÉÀ ÍÄ£ÎƤÑȦÒɧÓÉ©ÓʨÑȤÍßȽšÄº˜Á¸–º±’¶®’µ­”µ®—Á»©Æ²ÿ²ÆÁ¶ÖÓÉàÞ×ÚÙÑàßÛåäáóóòþþþþþþÿÿÿÿÿÿÿÿÿþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýþþýýýüûûúöõóîìéìëæåãÜÙÖÎÕÒÈ¿º§Ã¼£ÉéÏɯ×гÜÔ¶ÜÓ³ÝÔ´àظáÙ¹âÚ¹ãܽåÞÀæßÁäܼß×´ÚÑ­ÛÑ­ÛѬ×ͨÒÈ£ÎĞɿšÇ¼—Àµ³©‡´ª‡»²¾´“º±¶­´¬À»¨ØÔÉäâÛïïëúùøûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûîíêÒÏŶ°›¢™|›‘pž“qŸ•t”t•‹mˆdwoZ`[KA>342*'% 210dcd®®¯óóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùæäßý¨º±‘ź”ÎÜ͛ɽ•È¼”ÏÅ×ΩØϨ×ͧØÏ©×ΧÕˤÐÅË¿—Ƚ•ÍÛËÀ™Ã·¿³‹½±Š¼°‰´¨ƒ²§¼°‰½±Š¼°‰ÁµÄ¸Å¹‘ƺ’ź’Ç»“ÏÄÓÉ¡ÎÃœÎÃœÍÛȽ–ɾ–ʾ—øÁ¶ŽÄ¹‘Ç»“ɾ–ʾ–Á¶Ž·¬…´¨´¨‚µ©ƒµ©‚¸¬…»¯‡·«„³§±¥±¥¯¤© }¨žz¦›w¢—t •sž“q–‹j‚c…{]~uXvmRlcKc\E[T?RL8IC2@;,:6(/+ %"
+ ##$BBB___rrržžžÀÀÀÔÔÔéééùùùýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþûûûúùùùùù÷öõóóñîíëÝÜ×±¬ž³®š·°š»´›Àº Å¾¤ÈÁ¥ËĦÍŦËãÌÄ£ÏƤÎÆ¢ÎÄ ÑǤÒɤÑÇ¢ÒÈ¢Õ˦Ö̧Õ˦Õ˦ÙϪÙÏ«ØΩ×Ψ×Χ×ͧÖ̦ÓÉ£ÑÇ ÏÅŸÊÀ›Ç½˜Æ¼™Å¼šÂ¹—Á¸—Á¸˜¿·™¾¶˜º±•¶¯–¸²œÀº¨¸³¡×ÕÍßÞÙïîêóóðø÷öûûúýýýþþýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüüüûüüûúúùõôñðïìæäßÑÎĽº­½¸¨Áº¢Ê£ÏǧÕ̬ÚÒ±ÜÔ²ÝÕ³áÙ·âÛ¹âÚºáÙ¶ÞÖ²ÝÔ±à×µß×´ÛÓ¯×ΧÖ˦Õ˦ÐÆ ÌÁ›É¿™Ç½—Æ»•Ã¸“·¿´Žº¯‰¶«ˆ¶¬µ®’º´ŸÉĵÓÐÅèæàðïìøøöúúùýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüûëêçÑÍñª•œ“ušošp˜Žo‘‡ix_mfQZVHDB:)'! ! FEEˆˆˆÑÑÑüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýñðíÐ;»´—À¶‘ÌÁšÍšȽ•ËÀ˜ÐÆŸÕÌ¥ÙÏ©ÚЪÖͧÔʤÓÉ¡ÒÇŸÏÃœÍÁ™ÎÜȽ–¿³‹»¯ˆ»¯‡»¯ˆµ©„´¨ƒ¼°‰º®‡¸¬…À´ŒÅ¹‘ȼ”ʾ–Ê¿—ËÀ˜ÒÈ¡ÔʤÏÄœÐÅÒÈ¡ÒÇŸÎÛȽ•Â¶ŽÀ´Ã·Æº’ɾ–Ê¿—Ĺ‘½±Š¸¬…´©ƒ±¦­¢}¯£~´¨´¨³§³§±¦€­¢~¨Ÿ{¥›y –s–Œj‘†fŒƒd†}_~tXtlQkcK^WATM9KD3B=-95&0, (%#
+
+ &&'989FFGXXY‘¾¾¿ÕÕÕñññøøøüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýøø÷ôóñîíêêêçåäßßÝÖÉǾÂÀ¶Á¿´®ª™«¥°ª“¸²—ƾŸÍÄ¢ÑǤÖÍ©ÛÓ¯ßÖ³âÙ¶âÚ¸à×µÝÔ±ÜÓ¯ÜÓ¯ÚÑ­ÙϪÚÑ­ÙЫÕ̦Õˤ×ͨ×ͨÕ˦Ö̦ÙϪØΩÖ̧ØͨÙЪÛÒ­ÛÒ­ÙÏ©Öͧ×Ω×ΩÔˤÔʤÓÉ£ÒÇ ÑÆŸÏÅžÌÁ›Ê¿˜É¾—Ⱦ˜È¾™Ä¹•»±Ž³ªŠ·°˜ËŲÉÄ°ÈijÐÍÀàÝÖìëæøø÷üüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþüûûûûúúúú÷öõòñîäâÜÒÏÄÀ»ªÀ»¦½·Å½žÍÅ£ÒɧÖÍ©ØÏ«ØϪÙϪÙϪÙϪÛÒ®ÜÓ°ÚÑ«Ö̦ÕË¥ÖÌ¥ÑÇ ÎÄžÑÆ ÏÄËÀšÈ¾–Ƚ•È½–Æ»“ø‘¾³Œ»°Š¸­‰µ«Š¶­¶¯–¼ªËǹÙ×ÍèçâõôóúúùýýýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøèæãÅÁ´£›€˜Žo˜m’‰jŒ‚f|t[f_KSM@>:4%".-+bbb­­­ëëëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùø÷ßÜÔÁº£»±È½—ÍšËÀ˜ÏÄÑÇŸÒÇ ÙÏ©ÛÑ«ÓÉ¢ÐÅžÐÅÑÇ ÐŞ͚ʿ—ĸ»¯ˆµ©ƒµ©‚¹­†¹­‡»¯ˆ¾²‹»¯‡¹­†Ã·È¼”ɾ–ÌÀ˜ÏÅÓÉ¢×ͧÔ˥͚ÍÁ™ÐÅÑÇ ËÁ™Å¹‘ƺ’ȼ”Ƚ•È¼”Ç»“Æ»“ƺ“ĸ¾³‹¶«…®¤©žz«Ÿ{¯£~³§µ©ƒ´¨‚­¡|¥šw¡—uŸ•sšnŒ‚c…{^}sXphOe]F]V@UO<JD2?:*51$-*$   ##$::;YYZ€€€–––¥¥¦ÚÚÚôôôüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûùùøõõóáàÜÏÍÃÄÁ´ÃÀ±Æ±¿¹£º³™¼µšÂ¼¡Å¿¢ËÄ¥ÐȦÒɦÕͪÛÒ°ÝÔ±ßÕ²ÞÕ±ÝÕ±ÞÕ²âÙ¶áÚ¸ÞÖ³ÝÔ°ÜÓ®ÛÓ­ÛÒ­ÙЫØϪØÏ©Ö̦ÔÊ£ÕʤÕË¥ÕË¥Ö̦ØΨ×̧Õ˧ÚЫÜÔ¯ÞÕ±ßÖ²ÞÕ°ÝÓ¯ÝÔ±ÜÔ°ÙϪÖ̦ÕˤÖ̦ÕʤÒÈ¡ÐÅžÏÄÏÅÏÅÏÄÎÃœËÀ™Ç¼–÷“º¯‹³¨„­¤ª¡‚´«‘½µŸÊÆ·ØÖÎçæáôôñûûúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüûùùùùø÷ôôòêêæáàÛËȼºµ ½¶ž¼´˜Ãº˜ÊÀšÌ›ÍÃÌÂÌÂœÎÄÑÇ¡ÓÉ¢ÑÆ ÑÅžÒÇ ÐÅžÏÄÑÇ ÏÄžÍÂœÎÄœÎÜ͛˿™É¾–Æ»“Ĺ’·¾²Œ¸­ˆ¶¬ˆµ«‰´¬·¯•½¸£ÍÉ»ÝÚÒïíêûûúþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóòðÛØÒµ¯žš’v•‹l‘‡i‹e{s[d]JLG:63," $# EECŠ‰‰ÕÔÕúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüëéåÎÉ»¹°”¿µÉ¾—͚Λ͚͛ÔÊ£ØΧÔÉ¢ÏĜ˿—ɾ–ʾ–Ê¿—Ƚ•Æº’À´·«„µ©‚¹­‡µ©ƒ³¨‚½±ŠÂ¶ŽÄ¸‘Ç»“ʾ–ÌÀ˜ËÀ˜ÏÄœÕÊ£×ͧÕˤÎÛËÀ˜ËÀ˜ÌÁ™É¾–Ç»“Ê¿—ÎÛÎÜȼ•ÁµŽÀ´ŒÄ¸Æº’Àµ¹®‡²§‚­¢}ªŸz©žyªŸ{®£}°¤©žyŸ”r—Œk‘‡gˆazqUsjPiaIYR=LF4D?.=8*2.")%  889XXY€¤¤¤ËËËÝÝÝêêêüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüúúúììêÙØÓÆù»µ¦¼·¢Ã½¢ÇÀ¥ÊæÏÇ©ÒɪÓË©×Ï­ÜÓ²ÜÔ³ÝÕ´ÞÕ²ÞÕ±ÝÔ°ÜÔ¯ÝÕ±à׳áØ´ßײÞÕ°à׳áÙ·áÙ·ßÖ´ÜÔ¯ÛÒ­ÚѬÙЫØΪØϪÙΩÔʤÓÉ£ÓÉ£ÐÆŸÎÅžÓÊ£Ö̦ØΩÜÓ®ÞÕ°ÞÕ°ßײà׳ßÖ±àÖ³ßÖ²ÜÓ®ÙϪ×ΨØΨÖÌ¥ÔÉ¢ÕˤÕË¥ÕʤÓÈ¡ÐÅžÎÄÎÄÎÛʿ—ƺ“¾²Œ·¬†´¨ƒ³§‚±¦‚­£ƒ±©Ž¹²›Á¼©ÍÈ»ÓÐÅÛÙÑ÷÷ôüûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýüüüûûúùøøõôòéèãäâÜþ±´­’¶¬‹¹®‹¹®ˆ¹®‰º¯Š¾²Ç¼•Í›ÌÁšÌÁ™ÎÃœËÀ˜Ê¿—ÏÄÒÈ¡ÔʤÕË¥ÔÊ¥ÒÈ¢ÏŞ͛ËÀ™Ê¿˜Æ¼•Ã¸À´¾³Œ»°Š¸®ˆ¶¬ˆ´ª‰³ªŒ·°—½¬ÐÌÀÜÚÒéèãööõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþûúúðïíÑÎŤ‡•‹m”‰k‹‚ezs[e`NHD80-&#!10-hgf»ººòòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùø÷ãàÚĽ«¶­Ž¿´ŽÉ¾—ɾ–ƺ’ȼ”ÎÛÑÇŸÍ›ʿ—Ç»“¶ŽÃ·Å¹‘÷÷Áµº®‡¸¬…º®‡³§‚±¦¿³ŒÇ¼”Ë¿—ɾ–ɽ•Ê¿—ÌÁ™ÐÅžÔÊ£ÓÉ¢ÎÜƻ”Á¶Á¶Ê¾—ÍÁšÎšÐÅÑÆŸÏÅȼ•¿³Œ»¯ˆ¾²‹Ã·ÁµŽ¼°ˆ¶ª„´¨‚¯¤~¨y¢—t¥™v¨œx •r‘‡g‚y\zqUogM]U@UN:LF4?:+3/#*'# 
+  ../UUVƒƒ„¶¶·ÙÙÙíííùùùýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúø÷÷ìëèÉÇÀ¹·ª°¬ž³®›À»£Å¾¢ÌÄ£ÒɧØЬÜÔ°ÞÖ´áÙ¸âÚ¹àØ·áÙ·âÚ¹áÙ·ß×´ÝÕ°ÜÓ¯ÛÒ­ÛÒ­ÞÕ±áÙ¶áصÝÔ°ÛÒ­ÞÕ°à׳ÝÔ±ÛÒ®ÚЬØÏ©ØΩ×ΨÖͦ×Χ×ͨÔÉ£ÒÈ¡ÒÈ¡ÎÜ͛ÓÈ¢ØΩÜÓ®ÞÕ°ÛÒ¬ÙЪÝÔ°áصâÙ¶áسÞÕ¯ÙЫÕË¥ÕË¥ØΨØΧ×ͧÚÑ«ÛѬØÏ©ÕˤÑÇŸÎÃœÏÄÐÅžÏÄÌÀ™Ä¹’¾²‹¼°‰¼°‰¹­†µª„µª…·¬‡²¨…¬¤„¯¨‹¶¯–ÅÁ³åãÝòñî÷öôûûùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþýýýýýýýýýüüüûûûôôóÐÎÃƲ±ª“¢˜x¤™v¨œx®£}·¬†¾³ŽÀµÃ¸Ç¼”Ĺ’Ź’ÏÄÖ̦ÙѬÚѬØϪ×ΨÖͧÔʤÑÇ¡ÎÃɾ—ź“¶ÀµŽÀ´¾³Œ¾²Œ½²‹¹®ˆ¶«‡³©‡¯¦†®¦‹¸²žÔÑÆîíéõôòø÷öýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýùø÷ãâݲ®Ÿ–s–ŒmŒƒfyrZf`NGC7.+$/-(NMI’àßßýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõôòÜØп·¢·­¾´Ä¸‘ÁµÃ·É¾–ɾ—¶÷Ź‘Áµ¿³Œ¾³Œ½±Š¼°ˆ»¯ˆ¼°‰¼°‰º®‡¸¬†»¯ˆÄ¸È¼”ɽ•È¼”ƺ’ƺ’Í›ÒÈ¡ÒÇ ÎÛŹ’º®ˆ´ª…¹¯ŠÌÂœÒÈ¡ÒÈ¡ÒÈ ÎÛɽ•Åº’Àµ¼°ˆº®‡½±ŠÂ¶Žº®‡³§¸­†µ©ƒ« {Ÿ”q›nœ‘p…f|sWjcKb[DXQ=E?/:5'1-!)&!
+
+ 
+&&'LLMuuvªª«ÔÔÔððñúúûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýððïÜÛ×ÑÏÉÉǾ¸³ ¿¸žÆ¿¢ÍŦÒÊ©ÖάÙÑ®ÛÓ¯ÝÔ°ÝÔ±ÝÔ°ÞÖ²àصáÙ¸âÚ¹ãÛºâÚ¹áضßÖ²ÛÒ®ØΪÖͨÝÔ¯âÚ·äܺßÖ²ÙЪØΨÜÒ®ÚЫÏÅŸÑÇ ÖˤÔʤÔË£ÔÊ£ÒÈ ÑÇ ÒÈ ÓÉ¢ÓÈ¡ÑÇŸÒÈ¡ÕË¥ØΨÙЫÚѬÚѬÖΧÕˤÛÒ­âÙ¶ãÚ¹áصÚѬÐÅŸËÀ™ÎÃœÚЫÝÓ®ÝÓ®ÝÔ®ÚЫÖÌ¥ÕˤÒÈ¡ÏÄÎÛÎÄœÐÄÍšȼ•Ã·Ã·Áµ¼°‰¹­‡»¯ˆº¯‡¶ª„®£°¦‚±¦…®¦‰¿¹¤ËŶÓÐÄãàÚõôóûûúýýüýýýþþýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþýýýþþþþþþßÞÙ°©”Ÿ–y›‘p¡—t§œx« }°¦¹®‡¾³ÀµŽÅº’ÐÆžÖ̦ØϪÙЫ×Ψ×ΧÛÒ¬ÛÒ­ØÏ©ÔÊ£ÍÜź“¿µŽ½³ÁµÃ·Ã¸Á¶¾³Œ½²‹»¯‰µª„®£€«¡°¨¸²À¼«ËȽððíüûûýýüþþýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüïîìÉƽ—„”Šm„fzrYg`MGB61/&A?9sqnÄÃÂø÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüñïíÔÏĺ³šµªˆ¾²‹Ã·Å¹‘ź’Ź‘¶¶¶Ž½±Š¸­‡·¬‡½²‹¿³Œ½±‰¼°ˆ½±ŠÀ´ÁµÃ·Ç»“ȼ”ȼ”ȼ”ƺ’ƺ’Ƚ•È½•Æ»”Ç»”Ź‘¿³Œ¾³Â¸’ËÀ™ÎÛÍšǼ•Á¶¼°‰»¯ˆ½±Š¿³Œ¾²‹¼°‰º®‡²¦¬¡}±§‚®¤€¥šw–ŒkŽ„d‰€b{rWhaIWP<LF4@:,0,!%"
+
+ 
+ ##$889bbcŸŸ ÍÍÎìììúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýþþþþþþýýýýüüôôóêêçÜÚÔÁ¾±¹´ ¿¹£Å¾¦ÐÈ«×Ï­ÚÑ®ÛÓ®ÝÔ°ÝÕ±ÝÔ±ÜÓ¯ÞÕ±ßÖ³ßÖ²ÞÖ²ßÖ³àضäÛºãܺàضáÙ·ß×´×ΩÕ̦ØÏ«àضãÚ¹àصÞÕ±ÜÒ­ÛѬÛѬ×ͧÐÅŸÒÇ ÓÉ¡ÍÁšÌÁ™ÎÛÏÄœÐÆžÒÈ ÒÈ ÑÆŸÑÆŸ×̦ÛÒ¬ÙЪØÏ©ØÏ©ØϨÖÌ¥ÕˤÚÑ«ÚѬÕ˧×Ω×ͧÒÇ ÒÈ¡ÔʤÙÏ©ÛÒ¬ÚÑ­ØΨÒÇ¡Í›ÍÁšÏÄœÐÆŸÑÇ ÑÆ ÐÅžÍÁ™É½•Ç»“Ƚ•È¼”Á¶Ž¾²‹½±Š»¯ˆ¸­†µªƒ´©ƒ²¦¯¥‚·­‘´¬“µ®™ÊŶØÕÊáßÖæäÞèåâóòðüüûûûûüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþúùùåäàÅÁµ§ŸŠ˜o’p¡–t¥šw¬¡}´©…¼±‹Ä¹’ËÀ˜ÎÃœÐÆŸÓÉ¢ÓÉ¢ÔÉ£ÙЫ×ΩÑÇ ÓÈ¡ÑÇ Ê¿˜È¾˜È¾™È½–Ǽ•Æ»“Á¶¾³Œ½²‹¼°‰·¬†´¨ƒ°¥€­¢~©Ÿ}§ž¬¥ŒÇ´ÔÑÈØÖÎììéüüüþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþý÷÷÷ÝÛק¢•Œ„jŽ…h}u\e^KD@396-^[TžœšäããýüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúèçáÊÆ·³¬‘³©…À´Æº’֦ŽÃ·Áµ½±Š¹­†³©ƒ²¨„½²‹ÁµŽ¿³‹½±‰ÀµÇ»“Ç»“ƺ’ȼ”ȼ”ȼ”ȼ”ȼ”ƺ’Áµ½±‰½±ŠÃ·Ç»”ȼ”Ƚ•É¾–ɽ•É½•Æº“¿³‹¶ª„°¤~®¢}µ©ƒ¾²‹À´Œ»¯‡³§€«Ÿ{¥›x¥œy¢˜všn‹c~uYskQd\ERL8D>.61$)%
+  ++-IIJhhiŽŽ»»¼ëëëúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþýøø÷úúù÷ööîíë×ÖÒ¿½´´±¤·³£½¸¤ÈÁ¤Ô̬ÛÓ³ß׸áÙ¸áÙ·àصÞÖ±ÞÕ±ßÖ³ÞÕ±ÝÔ°àØ´âÙ¶âÙ·àضàصâÚ¸åÞ¾äܼàصáÚ¹à׶Ö̦×ͨÝÔ±åÜ»áصÚÑ«ÛÒ¬ÝÔ®ÜÒ­ØΨÔÊ£ÒÇ ÑÆŸÍ›ź’÷Ź‘Ê¿—ÏÄœÐÅžÐÅÐÆžÒÈ¡ØΨÚÑ«Ö̦ÖÌ¥×ͦÖ̦ÖÌ¥ÖÌ¥Ö̦ÑÇ ËÀ™ÐÆžÖ̦×ͧÚЪÚÑ«ØΧØΨØΩÓɢʿ—÷÷Ƚ•ÑÆŸÕˤÕÊ£ÑƞΚÌÀ˜ÌÀ˜Î›ÎÛɽ•Å¹‘¶Ž¾³‹¼°‰»¯ˆ·¬…²§‚±¥¯¤©ž~¦À¹¡ÆÀ«ÅÀ«Ä¾ªÇ²×ÔÊàÞÖçåáòñïûûûþýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûúúììêÝÛÕ¼·¨¦ž…šo’p¡—uª |³©ƒ½±ŠÂ¶ŽÅ¹‘ȼ”Í›ÏÄœÏÄœÓÉ£Ðşɾ—ÏÄÔÊ£ÓÈ¡ÕˤÕÌ¥ÏÄÌÁ™É¾—·½²‹º¯ˆ·¬‡¶«…¸­†·¬…´©ƒ®£ªŸ|§{§~¨ „®¨’ÎÌÁìêçñðî÷ööüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúääᶲ©‹„p‡~c|t[`YFD?2LI>}{tÆÅÃööõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøøâàÛþ¬°¨‹µ«…¿´ŒÀ´¾²‹½±Š¼°ˆ»¯‡¸¬…·«…¶«…¹­†»¯‡¼°‰Á¶ŽÇ»”Ê¿—ƺ“ĸƺ’Ç»“Ç»“Ç»“Ç»“ĸº®‡·«„½±ŠÃ·Æº’ƺ’ĸĸƺ’ȼ”Ç»“À´µ©ƒªžz§œx«Ÿ{²¦€¶ªƒµ©ƒ®¢}¨œx¡–s™Žn’‡g‰`}tWldK[U@JE3:5'-) 
+
+
+  ++,>>?^^_{{|­­®ÐÐÐçççùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúîîëêéæææâÛÚÔÒÐÇËȽÀ¼­¼·¡ÇÁ¨ÒË®×гÜÕ·àÙºãÛºäܼäÜ»äݼäܽãÛºáÙ¶áØ´àØ´áØ´âÚ·æÞ¾åÝ»äÛ¹æÞ¾æßÀçàÁèáÃéàÂæÞ¾âÚ¸ßÖ³ÞÔ°ßÕ°à׳áÙµÝÓ®ÖÌ¥ÓÉ¢ÓÈ¡ÒÇ ÑÅžÎÃœËÀ˜Åº’Á¶ŽÃ·¾²‹º®‡Ã·Ç»”Ç»”ÌÀ™ÑÇ ÔË¥ÔÊ£ÒÇŸÑÆžÔÊ£×ΨÖÌ¥ÔÊ£ÓÈ¡ÎÜ͚ÑÆŸÓÉ¡ÕˤÖ̧ÔÊ£ÒÇ ÔÊ£ÖË¥ÖÌ¥Ôʣʿ˜¾²‹¾²‹Åº“ÎÛÒÇ ÓÈ¡ÐÅÒÇ ÓÉ¢ÓÈ¢ÒÇŸÏÄÏÅÎÛʾ—Ĺ‘À´Œ¿³‹½±Š¹®‡µ©„°¥€©žz¦œz¯¦†°§‡¬£„´¬Á¹ž¾¶¹²™·±›ÊǺäâÜëêæññðûûûýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿø÷÷ÓÑɵ¯ž¨¡Š¡˜z¢˜u§œx¬¡|´¨‚»¯ˆÁ¶É½–Ê¿—Ƚ•É¾–Ê¿˜ÌÁ™ÑÆŸÕË¥ÕÌ¥ÓÊ£ÑÆŸÏÄœÎÛΛËÀ™Â·¸­‡´ª…µ«†º¯ˆ½±‰»¯ˆµª„±¦¯¤¬ |¦œy¢™x¢™{§Ÿ†°ª–Êǽìëé÷÷öúúùýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüòññÎËÆ–‘ƒ|t]skTYS@LH9lh]«©¤ååäýüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóóñÚ×λ´ž¯¦„·¬…»¯ˆ½²ŠÃ·Ã·¿³Œ½±‰º®‡¸¬…¸¬…¼±‰Ã·Æº“Æ»“ĸ‘Á¶ŽÁµÃ·Ä¸Ã·ÁµŽÀ´¾²Šµ©ƒµ©‚º®‡¼°‰¼°‰¼°‰¼°‰¾²ŠÃ·Æº’ƺ’¿³Œµ©ƒ¬ |ªžzªžzªžz©y§›w¢—tž“p—ŒkŠ€b}tXqiOd]FSM9D?/51%&#
+  ((*::;VVWrrsŒŒ¿¿¿ÝÝÝôôôüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõôîîìèçâæäÚãá×ÍÊ»¿º¥Ã½¦ÇÁ§ÏÈ­ÙѲÞ׸âÛ»åÞ¿åàÄåáÇæàÄæßÀäݾãÛ»âÙ¹âÚ¸ãܺãÛ¹âÙµãÛ¹æß¿èáÃæÞ½âÚ·áÙ¶ãÚ¹åݼæÞ½æÞ¾æÞ½äݼãÛ¹âÙµßÖ±ÜÒ­ÙÏ©ÕÊ£ÑÆžÑÇŸÐÅÌÁ™É¾–Ê¿˜ÎÄÉ¿˜Ã¸‘À´¼°‰º®‡¾²‹Ä¹‘Ê¿˜Í›ÎÄœÍÃœÌÁšÌÀ˜ÌÁ™ÎÄœÐÆŸÍ›ËÀ™É¾—ĸ‘ƺ“ÍÁšÍšɿ˜Æ¼–Ĺ“Æ»“ÍšÑÆžÒÈ ÒǠʾ—À´ŒÁµÅ¹‘Ç»“ȼ•É¾—ÏÄœÕˤÛÑ«ÛѪ×ͦÒÇ ÏÄÍšʿ—Ç»“ź’ƺ“ź’Àµ»¯‰µª„¯£ªŸ{«¡}®¤­£±§†¸¯´«‹±§‰·¯’¹²™¿¹¥Ã¿®ÓÐÇêéäóóðø÷öüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööõäãßÍÊ¿¼µ¢¡—y’q¡–s¨œx¯¥€·¬†»°‰¼°Š½±Š½±ŠÀµŽÇ»”ÌÁ™Ì›ǽ—Ƽ•È½•ËÀ˜ÏÄœÑÆŸÏÄÆ»“½±Šº¯ˆ¹®ˆ»¯‰¼°‰»¯ˆº®ˆ¹®†¸­†³¨ƒ¬¡}¨z¨z¥šx¤š|¯§‘Á¼«Íʽ×ÕÎéèåüüüþþýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþöõõÙ×Óª¦œzhjcNZTA^YJŒ„ÔÓÐ÷ööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúéèãÉŶ°¨Œ°¦¶«„¾³‹È½–ȼ•Å¹‘ÁµŽ¾²‹¼°ˆ¼°‰Ã·É¾–ɽ•Â¶¼°‰¾²‹ÁµÀ´ŒÀ´Œ¿³Œ¼°‰º®‡¸¬…³§³§·«„¶ªƒµ©ƒµ©ƒ¶ªƒ¹­†¾²ŠÀ´À´¼°‰µ©‚®¢}©žz¦šv¡–s›n–‹j’‡hŽ„e†|_umSf^GWQ=JE3:5'-*"
+  !99:[[\‚‚ƒ¬¬­ÍÍÎââãøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýôóñèçàÔÒÊÁ¿°ÉųÍɵÔδÝÖ¶Þ×·ßØ·àØ·áÚºáÛ½äÞÀçàÃçãËçåÐèãÉèàÃæÞ¿áÙ·ÞÕ²ÝÕ²ãÛºæÞ¾äÛ¹åݼæßÀçàÁãܼÝÕ´ÛÒ­ÝÔ¯áصàضß׶áÙ¶åݼçß¾âÙ¶ÛÑ«ÔÉ¢ÐÅÍšÌÀ™ÎÜ͚ȼ”Ź‘É¿—ÓÉ£ÑǠɾ–¾³‹½±‰¾²‹¾²‹Åº“ÎÜ͚Ƚ•Ä¸‘ƺ’ȼ”Ç»“ȼ”ȼ”Ź‘÷Àµ¼°‰¾²‹Ä¸Ã¸¿³Œ¹­‡¹­‡½²ŠÅº’Ê¿—ÍšÎÛʾ–÷÷øÁµ¿³ŒÂ¶Íš×̦ÝÓ®ÞÕ¯ÚЪÔɢ͛ɽ•È¼”ȼ”Ë¿—Íšʿ˜Ç¼•Â·¼±‹¶«…±¥€±¥²§‚±¥±¦²§„±§„°¥ƒ´«Š³©‹­¥‡­¤‡¹³ÌȹÒÎÂÞÜÖóòñüüûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùøøññîÛØж¯œ –zœ’rŸ•t¤šwª |¬¢}®£²¦³§¶«„½²‹Ã·Á¶»¯ˆ½²ŠÃ·Ç»“ÌÁšÑÆŸÐÅʾ–÷¿´Œ¼±‰º®‡¹­†º®‡¼°‰À´ÁµŽ¼°‰³¨‚®£~­¢}¨žz¥›x¤šx¥›z§ž±ª•ÉŹåäßêêæóóòüüüþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúèèåÀ½¶’ŽpjX`ZHni[¼»·ïïîýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööõßÝ×½·¤¯¦‡³¨ƒ½±ŠÁ¶Ä¹‘Ĺ‘Ź‘ĸ‘ĸ‘Ç»”ɾ–ɽ•Æº’¿³Œ»¯ˆÀ´Ã·½±Š½±Š¿³‹¾²Š»¯ˆ¸¬„³§³§¸¬…º®‡¼°ˆ¼°ˆ·«„´¨‚·«„³¨‚±¦¸¬†´¨‚¦›x™Žl’‡g’‡gŽƒd‡}_vYwoTlcKYS>JD2<8)0,!"  %%&==?SST||}°°±ÛÛÛóóóûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýõôóæåãßÞÚßÝÔÕÑÂÎȳÓͱÙÒµÛÔ·áÚºåݽäݾâÛºáÙ¸âÛ»ãݾåÞÁèáÄèãÇèãÈèáÅèáÂçàÀäÛºßײÝÔ°àØ´ãÛºæÞ½ãÛ¹à×´áضÙÒ´Ó̲ÚÒ±àײÞÖ³ÕβÓ̱ÛÓ±àØ´âÚ·àײÔɣɽ•É½•Ë¿—Ê¿—Ĺ‘À´Â¶Æ»“ÌÁ™ÏŞ͛ȼ”À´¾²‹À´Æº“Ǽ”ź’¶Ž¿³ŒÀµÄ¸Æº’ĸŹ‘Ç»“Ź’÷À´Œ»¯ˆº®‡¼°‰¿³‹ÁµÂ¶ŽÀ´Œ¿³‹ÁµÂ¶Åº’ËÀ˜ËÀ˜Å¹’¿³Œ¾²ŠÀ´ŒÂ¶ŽÇ»“ÍšÑÆŸÔÊ£×ͦÕˤÑÆžÎÛɾ–Ź‘ɽ•ÏÄœÑÇŸÍšɽ–Ƚ•Á¶»°‰¼±Š½±Œ»¯Š¶ª…³§‚µ©„´©„²§‚®¤€¬¢€©Ÿ}¨ž~«¢ƒ©¡…¨ †´®œÜÙÑèçâïïìûûûÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýóòñæäàÅÁ´±ª”œ’t›‘pž“r¤˜v§œyªŸ{ªŸ{¬¡~°§‚·­†¾²ŠÁµŽÄ¸Å¹‘÷ƺ“Ê¿˜ÍšÍšɾ–Àµ¹­†·«…½±ŠÂ¶ŽÁµŽÁ¶ŽÂ¶ÁµŽ¼°‰¶«„²§¬¢}ªŸ{« |ªŸ{§z¤›y£š|®¨Ž·±žÇĸìëçõõóùùøûúúýüüþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþôôó×ÖÑ°­¤Œ}oiY“ˆæåäüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýññîÒÐŵ®–­£€·«„¼°‰¿³ŒÁµÂ¶¿³Œ½±‹Ç»”͚͚ʾ–÷¾²‹Â¶Å¹‘À´¾²Š½±‰½±‰¼°‰º®‡¶ª„¶ª„»¯‡¾²‹ÁµÁµ¹­†°¤~«Ÿ{¨žz©Ÿ{¯¥€©žzœ‘o‘†f‰`†|^uYvmRjcJ^XBQK8@;,1-!%"
+ !==>aac€€››œËËËõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüùùøòðïÙ×Ïŵ¾º©¾º¦È«ÔͱàظãÛ¹âÛ¹äݽçàÁæßÀãÛºáÙ¸äÛºæß¿èáÃéáÃéâÄéâÄéáÄçàÁæß¾åݽãÛ¸ß׳àسâÙ¶áÙ¶ÝÔ±ÙЫÙϪÕ̬ÓÌ°ÜÔ³ÝÔ¯×ΩÑʬÔͯÚÒ¯ØÏ©Õ˦×ͧÎÃƺ’Ç»“Æ»“ĸ‘¿³‹º®‡º¯ˆ¼²ŒÃ¸’ɾ–ȼ”ĸÀ´º®ˆ¸¬†ÀµÆº“ƺ“ĸ‘Á¶ŽÁµÃ·Ä¸Ä¸Ä¸Ä¸Â¶ŽÁµ¿³‹»¯ˆ»¯ˆ¿³‹Â¶ŽÆº’Ƚ•Ã¸½±‰º®‡»¯‡¿³‹Ç¼”Ǽ”¶Ž½²Š½±ŠÀ´Æº’Ë¿—ÌÁ™ÎšÏÅÒÇ ÐÅÍšÎÛÌÁ™È½•Ê¾–ÍšÏÃœÌÀ™È¼”Ç»”ĸ‘·ƻ”ź”Á¶½²‹¼±Š¼±Š¸­ˆ³§ƒ°¥¬¢~©Ÿ{§œz¦›y¢˜x’t£š€¹³¡¹´¥Â¿µéçåúúùÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýùøøóòðãáÛ¹³¢£š›‘rœ‘pž“r¡–s¡–t¥›w­¢~µª„¿³‹Æº’ƺ’÷¼°‰½±‰Â¶É½–Ë¿—Ǽ”À´»¯ˆ¼±‰Åº“ÌÀ™È½•Ç¼”Ç»”Æ»“¶Ž¼°‰¸¬†³¨‚¯¤¯¤­£~«¡|« |« |§œy¥œ}®¦ŽÀ»ªËȺÜÚÒìëèõôóûûúýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüììêËÉĹ·¯¦£›Ø×ÔýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúùùãâÜý­®¥ˆ¯£·«…»¯‰»¯ˆ»¯ˆµ©ƒ°¥€¿³ÌÁ™ÑÆŸÏÄɾ–ĸ‘ƺ’Ç»”Ĺ‘¿³Œ»¯‡¹­†»¯ˆ½±‰º®‡»¯‡¾²Š½±Š¾²‹¿³Œ¸¬…¬ { •s¡—u¤›y¡—u˜Žm…eŠ€ax[xnTneMc[DTN:GA095'*' --.RRR{{{³³´ÏÏÏàààùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõÙÙÔÈÇÀŸÄÀ¯ÎɱÙÒ·Þ×»Þ׸ÝÕ´ÞÖ²àصãÛºåݾåÝ¿äݼäÜ»ãÛ¹ãÛ¹èáÃìåÊêãÆéâÄéáÃéáÂæÞ½ãÛ¹æÞ¾åݼàØ´àسÞÕ±ÙЪÖ̦ÔÉ£ÒÇŸÓʤØЭßÖ²ÚЪÑÇ ÓÊ¥ØЬÚѬÏşɾ—ÏÄÌÁšÆ»“Ź‘À´¼°‰¾²Šº®‡´©‚²¨ƒ·­ˆÂ·Â¶Ž¿³‹¼°‰³§‚¬ |µ©ƒÀµÉ¾–ÌÀ™È½•Ä¸Ã·Ä¸Ä¸Ã·À´Œ¼°ˆ¼°ˆ½±Š»¯ˆ¾²‹Ä¸‘ƺ’Æ»“Ǽ”Á¶Ž¹­†µ©‚¶ª„»¯ˆÁµ¾³Œº®ˆ¼°‰¿³ŒÁ¶ŽÈ¼”ÍÁ™ËÀ˜ÌÀ˜Î›ÎÛÌÁ™Ê¿—ÍÁ™ÎÛÍš˿—ɽ•É¾–ȼ”ƺ’øƺ“ËÀ˜ÌÁšÉ¾–Ĺ’ź“Æ»“ù‘º¯‰µª„´ª„±¦« |§z¤™w –sœ’q›’rŸ–z•Œr–‘|ÊǾàßÜ÷÷õÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüõôóàÝ×Íɾ±ª–›’v˜nšnœ‘p£˜u¬¡|µª„¾²‹Â¶ÁµŽ½±Š¶ªƒ·«„½±‰Á¶Â·À´Œ¿³‹ÁµÅ¹‘ÍšÒÇ ÎĜ͚ÍÁ™ËÀ˜Æº’Áµ½±‹¹­‡¶ªƒ³§‚¯¥€­£~®£~®£~«Ÿ|¨žz¦œz§ž~­¦ŒÀ»ªÊȼÚØÒîîëõôóúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷÷÷åäáââßððïýýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýóòñ×Ô˶°™¬¢°¥²§°¤³§±¥°¤¼°ŠÆ»”ÌÁ™ÎÛÍš˿—ÌÀ˜É¾–À´½±Š¼°‰º®†¹­†»¯ˆ¼°‰¾²‹¾²Šµª„¯£¯¤¬¡|§›x¡–sŸ”r™n‹d‚x\~tXzqUofMaZDWQ<LF4<8)0, $! >>>iijŸŸ ÌÌÌóóóûûûýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüø÷÷òòðÙ×ÑÇòÅÁ«ÌÆ®ÔγÚÓ´ßØ·áÙ¸áÚ¸à×µà×´áÙ¶âÚ¸ÞÔ³ÜÒ±à×µåݽäܼàضæÞ¿ëåÉêãÆèàÁåݼåÝ»áÙ¶ß׳âÚ·áصÜÒ­ÜÓ®ÚÒ¬Ö̦ÑÆŸÍšÌÀ™ÑÆŸØΨÞÕ±ÜÓ®Ö̦ÓÉ£ÒÈ¡ÐŞʿ˜Ê¾—ÒÈ¡Ìݦ»¯ˆ¸¬†¹­†½±‰¼°‰·«„·¬…º¯ˆ¼°‰¹­†µª„²¨ƒ«¡}¨œy¯£~º®‡Ã¸È½•Ê¾–Ê¿—ʾ–Ç»“À´¿³‹¾²Šº®‡¹­†»¯ˆ¼°‰ÁµŽÅ¹’¶Ž½±Š»°‰¼°‰»¯ˆ·«„¹­†º®‡´©ƒ°¥±§‚¹®ˆÀ´ŒÂ¶ŽÈ½•ÎÛÍÁ™ÌÀ˜Ë¿—Ê¿—ɾ–ɽ•ÌÁ™ÏÄœÎÛ˿—ȼ”Ç»“Ź‘÷ÁµÇ»“ÎÃœÑÆŸÏÅžÍÛÍ›ɾ—ø»°Šº¯ˆ¾³Œ¹­‡°¥€¨y¤šv¡–t’qšo—m’‰j”‹o¦ £žª§ööõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüúúùöõôëé岬œ¡˜~™pœ‘p¢˜u§œy¬£~²§‚²§‚·«…º®‡·¬„»¯ˆ¿³Œ¸®ˆµª…·«„¼°ˆÁµÄ¸ËÀ˜ÐÆžÏÄœÍÁ™Ê¾–Æ»“Ź‘ĸ¶Ž¾²‹»¯ˆ·«…³§‚°¥€±¦€¯¤« |­¢}­¢}¨žz¢˜x —{›“z©¤“ÏÍÄàÞØîíìûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüûüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüîíëÏÌÀ²ª‘¬¡­¢}« {°¤~²¦²§€¹­†¾²ŠÁµŽÉ¾–ÏÄœÐÅÑÇŸÍĜ¶¿³‹¿³‹¾²‹»¯ˆº®†»¯ˆ¼°ˆ¸¬…­¢}¥›x¥œy¥›x£˜u’p“‰h‡}_wnTofNkcJc[DUN:HC1=8*2."$!  <<<cccÆÆÆìììýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüêéçÈÇÁµ²§°­ ¼·¤ÏÈ­ÛÔ¶ãܽäݽáÙ·ÞÕ±ÞÖ²áÙ¶äܺãÛ¹ß×´ÚÑ­ÓɤÕ˦ÜÓ°ÞÖ³ÜÓ±ÙЬàصçß¿çß¿âÚ·ÞÕ°ÝÔ¯ÚѬØΨÙЪÙÏ©×ͦ×ΨÖ̦ÐÅžÌÁ™Ë¿—ËÀ˜ÏÄœÔÉ¢×ͧÖ̧ÓÊ£ÑÆŸÌÁ™Æ»“Ź‘ɽ•ÐÆŸÌ›ĸº®‡º¯ˆ¿´ŒÀ´»¯‰µª…·«…»¯ˆ¼°‰¶ª„®¤ª¢¨Ÿ|¨ž{¬¡}±¦€·«…¿³ŒÇ¼”ÌÀ˜ÎÛÌÀ™Ã¸Â¶ŽÂ¶ŽÁµŽ¾²‹¼°‰¾²‹Â¶ŽÂ¶Ž¼°ˆµ©‚µ©‚º®‡¾²‹¼°ˆ¶ª„°¤ªŸ{ª |°¥µ«…¸®‡º¯‰Ä¸‘ÌÁ™ÎÛÌÀ˜É½•È¼”Ź’ĸǻ“Ë¿—ÌÁ™ËÀ˜È¼•Ã¸Ã·Ã·Ä¸É½•ÏÄœÒÇ ÒÈ ÐÅžÏÅÊ¿—÷¾²Š¾³‹Ã¸‘Àµ¹­†®£~ªŸ{§œx¢˜t›‘p—Œl”Ši“‰i‘ˆjŒ„jŒ…pµ²©éèæüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûÝÛ×¼·©¥ž‡›‘rŸ”r¡–t£™v¥›x¦šw¯£~¸¬…¹­†¹®‡¸­‡¯¦‚®¤€³§¸¬„º®‡¼°‰Ä¹‘ÍÁ™ÏÛÍÁ™Ê¾–Ź‘ĸŹ‘ĸ÷¶À´Œº®‡´¨±¦°¥€­¢}°¥²§« |£˜uœ’p•‹k“‹o¥Ÿ‹±¬ÊÈÀêéæôôòúúùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùäãÝÀº¨®¥ˆ­¢€®¢}³§´¨³§€¶ªƒ·«„¹­‡Åº’ÎÛÏÄÔˤÓʤȽ•Â¶ŽÀ´ŒÂ¶Ž¾²‹¹­†¹­…¶ªƒ²¦€ªžz¥›x¦z¤šxž“r‘†f‚y\vlRkbJc[E[T?NH6?;+30#(%  112VVW||}®®®×××÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýèèæÖÕÑÒÑËÁ¿´ÇòÐʲ×Ñ·ÜÖºß×¹áÙ¹âÛºãÛºáÚ¸àصáضäܺæÞ¾âÚ·ÙϪÐÅŸÐÄÖ̦ÜÒ­ÖË¥ÐÅŸÓÉ¢ÚѬàØ´àØ´ÜÓ®ÙϨØΨÖË¥ÒÈ ÒÈ ÓÉ¡ÔÉ¢ÓÉ¢ÎÄȼ•Ê¿—ÎÛÍšÎÛÎÜ͚ËÀ˜Ê¿—Ê¿˜Ç¼”¶ŽÁµÄ¸É¾—ÌÁ™Ê¿—øŹ’ɾ–÷¸®‡±§‚±¦¸¬…¾³Œ·­‡®¤€¬£«¢~ª¡~ª¡}© |­¡}¹­†Ä¸È¼”ÌÁ™Î›ËÀ˜È¼”ƺ’Ǽ”ĸ¿³ŒÀ´ŒÁµÀ´Œ¹­†µ©ƒ·«„¼°‰À´Œ¾²‹°¤£˜u¦œy¯¤€´©„²¨ƒ°¦‚²¨„½²ŒÈ½•ËÀ˜Ê¿—ɽ•É½•Ä¸¿³ŒÁµŽÅº’ȼ”ɾ–Æ»”À´Ã·È¼”ȼ”ʾ–ÍšÏĜ͛˿—ÊÀ˜Æ¼”À´¿³‹¿´ŒÂ¶Ã·À´¸­†´©ƒ¯¤¨žzŸ•s™n•‹j“‰i‘ˆiŒƒf‰g›•ƒ¶³¨ÞÞÚúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýéèåÈŤˆ£š~ž“r •s –s£˜u­¡|¶ª„¸¬…±¥€ªŸ{¨Ÿ|®¥€¶ª„¶ªƒµ©‚¶ª„À´É½–ÌÁ™ÍšÌÁ™É¾–ƺ’÷ƻ“ȼ”Ç»“ĸ‘¾²‹¶ªƒ´¨‚´¨ƒ³§´©‚³¨‚¬¡}¥švž“q–Œk‘‡h‡k‡oœ—„Ä·ÕÔÍééæúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõôóÚ×ξ¸¦°§Š®£€²§´¨‚³§´¨¸¬…¿³‹Æº’Ë¿—ÌÁšÓÊ£Ô˥Ǽ”¿³Œ¼°ˆº®‡¹­†¸¬…¸¬…µ©‚°¤~©žy£˜uŸ•s›‘o”‰hƒy\sjPf^F^WATM:IC1<7).* "
+''(HHIooo¤¤¤ÉÉÉìììúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýòòñÜÜØÄÁ´¾ºªÃ¿¬ÊƱÔγÝÕ¶âÚ»ãܼãÛºãÛºãÛºãÛ¹äÜ»ãÜ»âÚ¸åݼçÞ¾áÙ¶Õʤɾ–Ê¿—ÒÈ¢ÙЫÕË¥ÒÈ¡ÕË¥Öͦ×ͦ×ͦÖÌ¥×ͧÛѬÙϨÔÊ£ÓÉ¡ÑÆŸÍšź“÷‘Ƚ•ÏÃœÑÆŸÌÁ™Ë¿—ËÀ˜ËÀ˜È½•Ã·½²Œº°Š»°‰¾²ŠÂ·Ê¾–ΚÎÛ˿—ËÀ˜ÌÀ™Â¶¸­†´©ƒ´©‚µª„¶¬†´ª…²¨ƒ²¨‚°¦­¢~©ž{¨žz®¢~»¯ˆÄ¸Å¹‘ʾ–ÌÁ™Ç¼”·¿³Œ½±Š¼°‰½±‰Â¶ŽÃ·À´¿³Œ½±‰º®‡¿³‹Ä¸Ã·³§‚£˜u¥›x°¥€¹­‡¹®‡·­‡¸®ˆ¾²ŒÂ¶Â·Ä¹‘ɽ•ÎÛʾ—ĸ‘Æ»“Ç»“÷½³½³Å¹’ËÀ™ÎÜʾ–Ç»“ȼ”ÌÁ™ÌÁ™Ç¼”¾µ¸¯‰¸­†¼°ˆÁµÄ¸Å¹‘ĸ‘Áµ¼±‰¶«„­£¤›xž“q˜l•Šj‘‡hŒƒdŠ€c…k•Žzª¦™ßÞÚýýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüôóñãáܾ¹©¦ž¡–t¢˜u¡–s§œy°¦‚µª„­¡}¡–t –t«¡|¹®‡¾²Š¼°‰¼°ˆÂ¶ŽÆº’øƻ“ËÀ˜ÎÄœËÀ˜Ç¼”ÌÁšÍšǻ”½³¹¯‰¾²‹Ã·Ã¸‘¼°‰·«…³§‚¯¤~ªŸ{£˜v˜l†f„d‹‚eŽ†lœ–­¨˜ÊÈÀééæ÷÷öüüûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþöõóÛØп¸¥°¦‰®£€²¦€³§´¨‚»¯ˆÃ·Ä¸‘ƺ’Ê¿—ÑÆŸÏşø‘¼°‰¸¬…µ©‚µ©ƒ·«…¸¬…µ©‚°¤~«Ÿ{£˜u™Žm‘‡gˆ~`wnSe]FUN;KE4?:+3/")%
+ 
+777aaa»»»âââùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûòòñÊÈÀ³°¢»¸¦ÌÇ®ÚÔ¸âÛ¿äÝ¿äܽãÛºáÙ·âÚ·ãÛºæÞ¿çàÁæß¾èàÂéâÃæß¿èàÁéáÄåݽØΪʿ˜Ë¿˜ÐÆŸÖͦ×ΧØϪÚѬÕË¥ÏÃœËÀ˜ËÀ™ÐÅžÙÏ©ÙЩÖÌ¥ÕÊ£ÏÄȼ”½±Š½±ŠËÀ˜ÒÈ ÔÊ£ÐŞ˿˜Ç»”Ǽ”ź’¿´Œ·­‡´ª…º®‡½±ŠÁ¶ŽÇ¼”ʾ—Ê¿—ɽ–Ƚ•Ç¼”¶½±Š»¯ˆº®‡·¬…±§‚²¨‚µ©ƒµ©ƒ´¨‚±¥¬¡|®¢~µ©ƒ¼°‰À´ŒÀ´ŒÆ»“ɾ–¶Ž¼°‰¸¬…µ©‚¶ª„¼°ˆÃ·Æ»“ź’Ç»“Ç»“÷ź’ʾ–ɾ—¼°Š¬¡}ªŸ{²¦¼°‰ÁµŽÄ¹‘Ź’·¾²‹¹­†»°‰Â¸‘ÎÄÐÅžÍÁšÍšËÀ˜Ä¸‘¹¯‰º¯ŠÉ¾–ÐÅžÒÈ ÎÛȽ•Å¹‘Ç»“Ǽ”ø¹®‰³©„·«…»¯ˆ¿³ŒÄ¸Å¹’ĸĸ¿´Œ¹­‡³©„­¢~¥šwŸ“q˜Žm”‰i‘†f„e„fŠ‚gŽ‡q±­ ÝÛ×õôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþàÞÚ¼¸§¢š|£™w£˜u¦œy­¢~µ©ƒ°¥€¦šw£˜u­¢}¼°‰Å¹‘ȼ”Ç»“Ƚ•Å¹‘»¯ˆ¼°‰Ä¸‘ÍÛÏÄΛÑÆŸÐŞȽ•»±‹¸®‰Åº’ΛÏÄǼ”¿³¸¬…²§‚­£~¦zœ‘p”Ši‘‡gŽ…e…g†j’‹s£‹Á½²ÒÐÊèèæúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþôóñÛØÎÀº¦¯¥‡¯¤€²§¸¬„»¯‡¼±Š¾²ŠÂ¶Ê¿—ËÀ˜È¼•Â¶Ž½±‰º®‡·«…·«„·«„·«„³§®¢}¬ {¤˜u•Ši‰a}tWldKXQ=E?.61%(%
+ BBCyyy¯¯¯ØØØùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõôäãàÍÌÅ¿¼°Ä¾¥Ó̯ÜÕ¹âÛ¾äܾäܼãÛºãÜ»åݽäܺåÝ»çàÁêäÈìåÊìåÊíæËîèÌîèÍîèÎîèÏìæÌáÙ¸ÕË¥ÒÈ¡ÑÇ ÒÈ Ö̦ÛÒ­ÝÔ¯×ͧÌÁšÀµŽ¾²‹Â¶ÎÛÔÉ¢ÕÊ£ÒȠΛɽ•Ã·Ä¸ÌÁ™ÒÈ ÖÌ¥ÙϪÐşĸ‘¿³Œ¾³‹¿´Œ¿³Œ½²‹½±Š¿³‹¾³‹½±Š¿´ŒÁµ½²Š¼°‰¾²‹Ä¹‘Ź‘À´Œ¿³‹¼°‰¸¬…µ©ƒ³§²¦€´¨‚¶ª„µ©ƒ¶ª„¹­†¸¬…·«„»¯ˆÂ¶ŽÅ¹‘Áµ½±Šº®‡¸¬†»¯ˆÀ´Æº’ɾ–ËÀ˜ÍšÏÃœÑÇŸÑÆŸÑÆžÑÇ Æ»”¸¬†µ©‚·«„»¯ˆÅº’ÎÛÏÅɽ–¿³Œ¶ª„²¨‚¶­ˆÈ¾—ÑÇŸÓÈ¡ÐŞΚËÀ˜Ä¹‘Á¶È¼•ÍšÑÆŸÔʤÏŞǻ“ÁµŽ¿³ŒÀ´¿³Œ¿´ŒÁµŽ½±Š¼°‰À´ŒÁµÁµÀ´º¯ˆ¶«…º¯ˆ¶«†­¢~§œy –t™Žm•‹j“ˆiŽ…eŠ€b‰€eŽ†n ›Œ¹µ¬äâàþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþýýçæⶲ ©¡„©ž{ª {¯¤~¸¬†¸¬†´¨‚³§µ©ƒ»°ˆÆº“ÏÄœÑÆŸÐŞȽ–¹­†µ©ƒ¹®‡Æº“ÏÄœÒÈ ÑÆŸÏÄœÌÁ™Å¹’Á¶Ç»”ÌÁ™ÐÅÐŞ˿˜Â¶µ«†®¥«¢~¦œy •r›n•‹j‘‡gƒeŒƒh‰n”w£ŒÄ¹åäá÷÷÷üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüððì×Ôʸ°š®¤„°¥€²¦±¥€³§ƒ½±‹Æº“ɽ–Ĺ‘ÁµŽÃ·Â¶¿³Œº®‡¶ª„³§¯¤~§œx •qœ‘n”‰iˆ~_ypUhaIUO<C=.1-"$!
+ ))*MMNƒƒ„ÊÊÊðððþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÜÚÔËÈ¿ºµ¦¿º¥ÎȯÚÓ´âÛ»çáÂèáÃåÞ¾âÛ¹äÜ»çßÀéáÄèàÂèáÂéâÅëåÉëäÈéãÅëåÈîèÍðëÒðëÔðëÓíçÌãÛº×ͧÐƞ͛͛ÓÉ£ÙЪÛÑ«ØΨÐƟĹ‘À´Ã·ÌÁ™ÒÈ ÔÊ£ÒÇŸÏÄœÏĜ͛ËÀ™ÌÁ™ÏÄœÒÈ¡ÓÉ¢ÏÃȽ•Åº’·Á¶ŽÅ¹‘·»¯‡º®‡¼°ˆ¼°‰¾²‹¾²Šº®‡¸¬…¹­†¼±Š¿³ŒÀ´ŒÀ´Œ¿³‹¼°‰º®‡·«„°¦€´©ƒ¹®‡¶ªƒ°¤®¢}¶ª„¼°‰¼°‰¼°‰¾²ŠÃ·Ä¸‘øÁ¶ŽÄ¸Ç¼”ȼ”ɽ•Ë¿—ËÀ˜ÐÅžÙÏ©ÛÑ«ÙÏ©×ͨËÁš¾²‹¹­†¸¬…º¯‡Ä¸‘ΚÑÆžÏĜȽ–¿³Œ¹®ˆº¯‰Ç»”ÐÅžÓÉ¡ÏÄœÍÁ™ÎÛ˿—ɾ–ËÀ˜ÎšÏÄÐÆŸÏÄœËÀ˜Æ»“·Á¶ŽÅ¹‘Ź‘À´»¯ˆº®‡¿³‹À´ŒÀ´ŒÀ´Œ»¯ˆ¶ª„¶¬†¶«†³¨‚°¥ª {¢—t›o–‹k’ˆh†fƒeƒg…m˜’±­¢ãâÞýýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúùùäãݹ³¢°¦‰« |¯¤µ©„¶ª„´¨‚³§µ©ƒ¹­‡Ã¸ÎšÑÇ ÔÊ£ÐƟù’¾³ŒÀ´ŒÈ½•ÐÅžÓÉ¡ÏÄœÍÁ™ÎÛÍšʿ˜É½–ÌÀ˜ÎÛËÀ™É¾–ƺ“½³·¬‡³¨ƒ²¦‚¬¡|£˜u›‘o–Œk†f…e‡i‘‰n“Œu¢Œ¶³¦ËÉÃìëéýüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúêéäÉĶ´«‘­¢€®£~­¡}¯£»¯ŠÅ¹’ƺ’¶ŽÀ´Æº’Ç»“÷º®‡²¦€«Ÿz£˜u™ŽmŽ„e†|^~tXsjPc\EQK8=8)-)
+ 334ccc¢¢¢ÛÛÛúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöõõÔÔѼ»´·³¢Å¿©ÕϲÜÕ¶ßØ·à׶ãÛºçàÁçßÁåݽäܼçáÃëäÈíçÌëäÈéâÅéâÃéâÃçß¿åܺçß¿ëäÇíçÌíèÎìæËçàÂÞÕ²ÓÊ£ÍÁšÊ¾–Ë¿˜ÐÅžÔÊ£ÕˤÖ̦ÓÉ£ËÀ˜É½•Ê¾–ΚÑÇŸÓÈ¡ÐÅÐÅÒÇ ÓÉ¡ÐŞ˿—ËÀ˜ÌÁ™É¾–ɾ–ÌÁ™Î›ʿ—Æ»“Ë¿˜Æ¼–º¯‹¸®ˆ½±‰À´ŒÁµ¾²‹¸¬†¶«…·«„´¨‚¶ª„¼°ˆ¿³‹À´Œ¾²‹¿³‹»°‰²¨ƒµ«…»¯ˆ¶ª„¬¡|§œxµª„¿´Œ»°‰¸¬…¹­†Ä¹‘ʾ–Ë¿—Ǽ”ȼ”ɾ–Ç»“ƺ’ȼ”ɾ–ÐÄÚЫÝÓ®ÛÒ­×ΩÌ›Áµ¼°‰»¯ˆ½±ŠÃ¸Ë¿—ÏÄœÑÆŸÏÄɽ•Ä¸Ä¸É¾–ÏÄÒÇ Íšʿ—ÍšÏÄÐÄÎÛÏÛÎÛËÀ™ÌÁ™ÎÛÎÄœËÀ˜Ç¼”ËÀ˜É¾–À´½±Š¾²‹Á¶ŽÂ¶ŽÀ´½²Šº¯‡·«„±§°¦´©ƒ¶ªƒ²§« |£˜t’p—Œk–‹j“‰h…f‰€bŠgˆsª¥šÕÔÏ÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýçæὶ£­¥†«¡~°¥°¥€¯£~°¤³§¸¬†À´É½•ÏÄœÔʤÔˤÎÜʾ–ʾ–ÎÛÓÈ¡Óɢ͚ʿ—ΛÒÇ ÑÆŸË¿—ÌÀ˜ÌÁ™Ç»“Æ»“ɽ•È¼”÷¾²‹¿³Œ¸­†¬¡|£˜uœ‘p–‹j“‰h‘‡g„gŽ†m“Œu™“ž™ŠÄÁ¹òñðüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùáßÙÀº§¬¢„®£~´¨‚µª„±¦´©„¿³ŒÆ»“ɾ–Ç»”ĸ¾²‹´¨‚§œx›n‘†g‡}_~uXqhOc[EWP<HB283&&#
+
+  223VVV‹‹‹ÉÉÉõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøøøîîìàÞÙº´£Àº¦ÌÆ°ÖÏ´Þ׺äܽæÞ¿æÞ¾åݼáÙ¸àضâÚºçàÂëåÊíçÎîéÏïèÏìåÉèàÁäܺãÛ¸ãÚ¶âÙµãÚ¶äÛ¸ãÛºáÙ·ÞÖ³ÚѬÓÈ¢ÌÁšÌÁ™ÍšÌÁ™ËÀ˜ÌÁ™ÏÄœÎÛÍÁ™ÍšÍšÍšÎÛÎÄœÎĜ˿—ɽ–ËÀ˜ÎÛΛȼ•Ç¼”ƺ’ÁµÁµÆº’ÏÄÑÆŸÏÃœÑÇŸÎţž£ÃºšÄ¸’Ź‘¶Ž¼±‰²¨ƒ²§‚¶ªƒ³§²¦€µ©‚»¯‡½±Š»¯‡¼°‰¼°‰·¬†¸¬…¹­†»¯ˆ¹­‡¶«…³©„°§ƒ±§ƒ·¬†¿³‹Æº’ȼ”ȼ”ĸ·¶Ž¾²‹À´Ç»“Ë¿—ÎÛÑÆŸÏÅžÎÃœÏÄɾ–¶ŽÃ·Ä¸Ä¸Æº’ʾ–ÍšÌÁ™Ë¿—ɽ•Ê¾–ÌÁ™ÐÆžÑÇŸÏÄʾ—ȼ”Ë¿˜ÒÇ¡ÓÉ£ÌÁ™ÌÀ˜ÎÛΚÏÛÐÅžÓÈ¡ÓÉ¢ÒÈ¡ÓÉ¢ÒÇ ÌÁ™Ê¿—Ê¿—Ë¿—ȼ•Á¶µ«†´©ƒ¶«„³§¯¥€±§‚·¬†·¬…­£€¨Ÿ|¦›y –sœ‘o™l”Ši‘‡h†g„gŠƒkˆv½¹±ïïîþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûàÞÙ²¬˜¨Ÿ« }¬¡|¬¡|¯¤~³§·«„½±‰Ä¹‘ÌÀ˜ÐÅÐÅÌÀ™ÌÀ˜ÎÛÒÈ ÕÊ£ÔÉ¢ÍÁ™È¼”ËÀ˜ÑÆŸÑÇ Ë¿—ËÀ˜ÎÛÌÁ™ÍÁ™ÎÛÍ›ÌÁ™ËÀ˜ÌÁ™Ç»”¼±Š³§‚«Ÿ{¤™vŸ”q—l…f…g’Šn”t•Žz™”„¸µ«ÔÓÍêéçýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýîíêÒÏĵ­—ªŸ~¯¥€±§‚¯¤€²¦¼±ŠÆº’ɾ–Ź‘¾²‹·«„¬¡|ž“qŽ„dvYtkPkcK_XBOI7@;-1-#$"
+  ""$BBCyyy®®®ÛÛÛúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþìëçÍËö´§¸´ Æ¿¥×вãÛ½åݾæßÀæß¿åÞ¾åݽäܼãÛºâÚºäܼçàÁêãÆíæËìåÉêãÆëãÆçß¿âÙ¶ÞÕ°ÝÔ¯ÞÕ°ÝÔ¯ÜÓ®ÜÒ­ØÏ©ÕË¥ÓÈ¡ÎÛɽ•È¼”Ƚ•Ç¼”ź’Ç»“Ê¿—ɾ–ʾ–͚Κ˿—Æ»“ȼ”ɽ•Â¶ÁµŽÇ»“Ê¿—Ƚ•Á¶Ž¼°‰µ©„­¢}´¨‚ÁµËÀ˜ÑÆžÑÇŸÑÆžÏÅ¢ÍŦȿœÃ·¾²Š¸¬†³¨‚¯¥€²§¶«„µ©ƒµ©‚·«„·¬…´©„°¥€±¦€´©ƒº®‡º®†¸¬…¸¬…¶ª„³¨‚¯¥€®¤€±§‚¹®‡ÀµÃ·Ä¸Ä¸Ä¸Ä¸Ã·¾²‹À´Æº“ȼ”ɾ–Ê¿—ȼ”ƺ’ʾ–Æ»“ÁµÀ´ÁµÁµÁµÃ·Ç»“ȼ”Ƚ•Ë¿—ÌÀ˜ËÀ˜É¾—ËÀ™ÌÁ™Æº’÷Ƚ•ÏÅžÐşǼ”Æ»“ɽ•ËÀ˜ÏÄœÒÇ ÓÈ¡Õˤ×Χ×ͦÕÌ¥ÔÊ£ÏÄžËÀ˜È¼•Á¶¹¯‰³©„¶«…º®‡¹­†·¬†¸­ˆ¸­‡³¨‚«¡}©Ÿ|ªŸ|§œz¡—t’qšn˜m”Šiƒe„|_y_‹…r²¯§ìëéþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúùøÞÜÕ¾¸§ª €«¡~« }­¢~¯¤~±¥¶ª„¾²‹Ã¸Ê¿—ÎÃœÏÄœÏÄœÎÜ͛ÑÆžÒÈ Ê¿—Ç»“ËÀ˜ÒÇ ÑÇ Ë¿—ʾ–ÌÀ˜ÌÁ™ÏÄœÑÇŸÐÅžÐÅžÒÇ ÒÈ ÏÅÉ¿—·¹­‡­¢~¤™v›‘o”‰i†g†h‡m•Žx™“€¢œŒ®« ËÉÄîîìúúùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùæåàÆÁ²¬¢‡¨z¬¢}°¦€¶ª„¼°ŠÁµŽÃ·¿³‹¶ª„«Ÿ{¡–s“‰h‚x[phNaZDXQ=LF5=8*.* 
+
+   ;;<ccd“““ÐÐÐðððüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüäãáÅÅ¿¾»¬Á¼¦ÑÊ°ØѳÛÓ³áØ·åݽçàÁèàÂçß¿ãÛºáÙµàصåݽèáÃèàÁåݼäÜ»èáÂçß¾åܺçß¾åݼáØ´ÛÑ«ØΨØϪÖ̦ÓÉ£ÓÉ¢ÑÆŸÏÄœÎÛ˿˜Æº’¶ŽÀ´ŒÀ´ŒÀ´ŒÂ¶ŽÆº’ƺ“Ç»“Ë¿—ɾ–Ĺ‘½±Š¾³‹ÀµŽº®‡»¯ˆÄ¸Ç»“÷¶ª„ªŸz •s›‘oª {¾²‹Ç»“ÎÛÑÇŸÍ›ÌÀ™ÍÃǼ•¾²‹¶ª„¯£¬ |®£~²§€µªƒ¶ªƒ¸¬…·¬…¯¥§z¤™v¥™v« |º®‡º®‡µ©‚¯£~ªŸz©y­¢|³§¶«„º¯ˆ¾²ŠÀ´ŒÁµÁµÄ¸Æº’ƺ’¶ŽÂ¶ŽÄ¸Â¶Á¶ŽÄ¸Ã·Â¶Å¹‘÷¾²Šº®‡¹­†¹­†¹­†¼°‰Â¶ŽÄ¸‘Ç»“Ê¿—ʾ–ƺ’¿³ŒÃ·Ç¼”Á¶ŽÀ´Æ»“ÌÁ™ÌÀ™Ä¹‘Á¶ŽÃ·È½•ÎÛÒÈ ÒÇŸÔˤØϪ×ΨÖ̦ÕË¥ÏŞɽ•Ã¸‘º°Š´ª…·¬†»¯ˆ½±Š¾²‹¿´Œ¿³Œ¶ª„«Ÿ{¦›w¦›x©ž{¬£©žz¤™vŸ”r™n”ŠiŽƒe„z]~uZzrY~xeµ³«îíìþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùåãݳ­—¨Ÿ‚¨ž|«¡}«¡|« |±¦€¸¬…½±ŠÆº“ΛÒÈ ÑÇŸÍšǻ”Ê¿—ÏÄȽ–Ç»“ÍšÒÈ ÒÇ ËÀ˜È½•É½•Ê¿—ÏÄœÓÈ¡ÒÇŸÓÉ¡ÖÌ¥ÖÌ¥ÕË£ÒÇ Ê¿˜ÀµŽ²¨„§zŸ•r›n–Œj’ˆh…h‘‰p˜’|ž˜„œ—‰¢ž“ÅüêêèúúùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóóñÚØϹ²Ÿ¦›|©Ÿ{°¥€¶ª„º®‡¸­†·¬…¶ª„ªžz›nŽ„e‚y\tlRc\DQK9C>063&*'
+
+
+111YYYŒŒŒÅÅÅéééûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùôôòÕÒÉ»¶¤Ã¾©ÍÇ®ÖαÝÔ´ßÖ´à×µãÛºçàÀéâÅèàÂäܺßÕ²ÜÓ¯ÝÕ±äܼçàÁåÝ»àØ´ßÖ³ãÛ¸äÛ·áØ´ÞÕ°ßÖ±ßÖ±ÙЪÔÊ£ÑÇ ËÀ™Ç»“Ç»”ɽ•Ê¾–ʾ–ƺ’ÁµŽ¼°‰º®‡º®‡º®‡½±ŠÀ´Œ¿³Œ¿³ŒÃ·Áµ¼°‰¹­†µ«…´ª…¸­†»¯ˆ½±ŠÃ·¼°‰¤™v”‰i†gž•t°¦¾³‹Å¹’ËÀ˜ÏÜ˿˜Åº’¶À´¾²‹»¯ˆ¶ª„²¦€°¤¯¤¯¥€±¦€°¤«Ÿ{Ÿ–s—l—Œk’p¨y¸¬†µ©ƒªžz¢—s¡–s¥šw¯£~¶ªƒ·«„¶ªƒ·«„¾²ŠÀ´Œ¿³‹¾²‹Â¶ŽÅ¹‘¶Ž¾²‹½±‰»¯ˆ¹­†¸¬†¼°‰À´ŒÂ¶Ž¾²‹º®‡µ©ƒµ©‚·«„¸¬…¼°‰Â¶À´¿³ŒÃ·Ã¸Â¶Ž¿³‹¾²‹¿´ŒÁµŽÃ·Ã¸Ê¾–ÌÁ™Æº’÷·ʾ–ÌÁ™Î›ÒÇ ÖͦÙЪ×ΨÓÈ¡ÏÄÍšÌÁ™Ê¾—ź“ÀµŽ¾²‹¼°‰¼°ˆ¾²Š½±‰¶ª„©žzŸ“qž“p¥šu®£}¶ª…°¦§œyž“q•‹k’ˆh…f†}_|tWslRphQ}wg±¯¦ïîíþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüâáÛÈĶ¯§§{ªŸ|¬¡}°¤€·«…À´ŒÃ¸È¼”ÏÄœÐÅžÎÛȼ”ƺ’Ǽ”ɾ–Ê¿—ËÀ˜ÑÆŸÓɡΛʿ—ɾ–ÌÀ˜ÏÄœÑÇŸÓÉ¢ØΧÜÒ­ÙÏ©ÔÊ£Ðƞɽ•Â·¾³µª…­¢}¦œyž”r˜l’‰h†h‘‰n•Žyž˜ˆ¡š§¢˜¸¶¯åäâ÷÷öýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûííéÊƺª¡‰¤šz©ž{°¤€´©ƒ°¥€« {©yœ‘pŒ‚c}sXpiPc[EQK9>9,1-#%" 101VVV~~~···ãããúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþýýýýýûûûûéè佺°­ªœ¼· ÎǪÝÕ¶âÚ¹áÙ·áÙ¸áÙ·àضâÙ·ãÛ»äܽãÛ»áصà׳ÝÔ°ÚѬÜÓ°à×µáØ´ÝÔ¯ÚÑ«ÝÓ®àײßÖ²ÙÏ©ØΧØΧÐÅžËÀ˜Ê¾—ÁµŽ¼°ˆÀ´ŒÅº’Ƚ•Ã·½²‹¸­‡µª„´©‚³©ƒ¶ª„µ©ƒ²¦¶ª„»¯ˆ¼°‰º®‡·«„²¦€­£¬£€±¦‚³¨‚±¥€³§‚§œy„e…|^‹‚c¢˜v¯¥·­‡¼±ŠÀ´Â¶À´»¯‰µª„´¨ƒ¶ª„¸¬…·«„´¨­¡}§y£™w¢˜u¡–sž“qšn–‹j“‰h•‹i›‘o§œy¤™v’pœ‘p •r£˜v¦›w¬ {²¦€¯£~®£~µ«…º¯ˆ»¯ˆº®†¼°‰¿³‹¹­‡µ©ƒ´¨‚²¦€°¤²¦€º®‡Áµ¾²Š¸­†³¨‚¯¥€°¥€´¨‚µ©‚¶ª„¹­‡º¯ˆ½±ŠÂ¶ŽÂ¶Ž¿³‹»¯‡¹­†¹­†¼°‰¾²Š¾²ŠÂ·Æ»“Ç»“¶¿´ŒÆ»“Ç»“ȼ”ÏÄÔÊ£ÔË¥ÒȡΛʾ–Ƚ•Ê¿—Κ͚ʾ–Ź‘¾²‹¹­†¹­†·«„³§®£~¨œy£˜u¦›w­¡|³§¬¡|¤™uŸ”ršm”Šj†f†}_|sWriOkcKkdN}xi½»µøø÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýêéæÈĸ¦žƒ§|­¢~¯¥€´©ƒ»¯‰¿³ŒÅ¹‘ÌÁ™ÐÆžÐÅʾ—ƺ’Ź‘ɾ–Ë¿—ɽ–ËÀ˜ÎÛÎÛʾ–Ç»“Ë¿—ΚÏÅÒÈ ×ͧÚÑ«ÕˤÐÅžÎÛǻ“÷Ź’Áµº®‡±§§œyž“q—Œk’ˆhŽ„fŽ†l”Žyž™‡¦¡”ª¥š·µ­ÙØÕîîíûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõóÛØѹ³¢¥ƒ¡—w¨žz­¡~¨y¡—s›‘o†g€w[nfM^WCNI8=8+.+"%#'&'GGGrrr¦¦¦ÑÑÑòòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýýüüüüüûùùøöõóÙÙÔËÉÃÁ¼¬Æ¿¤ÖÏ´ÛÓ¶ÝÕ´ß×µâÚ¸äܼæß¿æÞ¾ãÛºßÖ³ÛÒ­ÚѬÜÓ®à׳ãÛºàصØÏ©ÔÉ£Ö̦ÛÒ¬ÙÏ©ÕË¥Ö̦ÛѬÞÔ¯×ͦÑÇ ÌÁšÂ¶¿³ŒÁ¶¹®‡¶ª„¿³‹Åº’Æ»“»¯‰³¨ƒ­£¬¡}«¡|«¡}°¥€¬ |¢—t¬¡|·«„·«„¶ªƒ³§ªŸ{¦œz¦z¤™w¡–tŸ”ršn‚d}sXx[…fŸ”r§z¬¢°¥°¥¯¤¯£~¬¡}¨ž{¦œy¦›x«Ÿ{¬ {©y£˜už“q˜l“ˆh’ˆg•Šj™m™n”‰iŽƒd‹b†f†f‘‡gšn •rŸ”r˜Žl›n¦›w¦›w¥šwª }±§·«„¶«„¶ª„´¨‚¬¡|©žz«Ÿ{©žy©žz°¤º®ˆ¿´¸­†±§«¢¨ |ª |®£~¯£~­¡|« |³¨‚½±‰Â¶ŽÂ¶Ž¾²Š·«„µ©ƒ¶ªƒ³¨‚´©‚·«…¸¬†»°‰Á¶Ž¾²‹»¯ˆÀ´ŒÂ¶ŽÅ¹‘ËÀ˜ÎÜ͚ʿ—ȼ”ƺ’ĸŹ‘ËÀ˜ÌÀ˜É¾–Æ»“Áµº®‡µ©ƒ´¨‚·«„»¯‰º®ˆ±¥«Ÿz¨y¨z£˜u ”r§œx¤™všn†f†|^~tXtkPkcKiaJmfRˆƒuÖÕÑûûúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþø÷õ¿»®¬¥Œ© ~°¦€³§‚³¨ƒº®ˆÃ·ÌÁ™ÒÇ ÓÈ¡Íšɾ–Ƚ•È½•È½•Ç¼”Ź‘Ź’ɾ–Ç»“Ź‘ɽ•ÍÁ™ÐÄÑÆžÓÈ¡ÔÉ¢ÎÛ˿—ËÀ˜Æ»“÷ƺ’÷½±Š·«…¯£~¦›wž“q˜l“‰i…gŒ„h“‹rž˜…ª¥—¦¢—¬© ÂÀ»áàÝûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüíìéÎÊÁ°©—ž–|¡–u£˜vŸ”r–Œk‹bvZqiP]VAJD5:7++( !! <;;fee‘‘‘ÇÇÇëëëûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýýýûûúøøø÷÷öòñðëêæÐÍÅ»¸¨Á¼ªÍÇ­ÚÓ´ãÛ½åÞ¿åÞ¿äܼãÛ¹äܺäÜ»åܼåݼà×µÙЫ×ΧÖ̦ØͧÛÒ®ÜÓ¯ØÏ©ÓÈ¡ÎÃœÍÜ͛ΚÏÃœÔÉ£ØͧÐŞȼ•À´¸¬…´©ƒµª…²§‚µ©ƒ½±‰¾²Šº®ˆ±§ƒ¬¡}¥›xž”qœ’pŸ”r¡—tŸ”ršn’p£˜uªžz¬ |ªŸ{¥šwŸ•s˜n‡g‰a„z]{rWtkQtkQ€wZ…ešm¡–t¦›y¨y£˜u’o›n™Žl•‹k•‹k–‹k–‹j“‰i‘‡g‘‡g’‡g…eˆ`…{]‡}_Š€bŒ‚c‹b†|^‚x[ƒz\ƒz]†|^ƒd“‰h•Ši‘‡f…e‘†f”Ši˜Žlž”r¨žy°¥°¦€ª |¥™v¤™v¡–sž“p¡–s§œx®£~³¨ƒ³©…­¢~©ž{¤šx“rŸ•s¦œx©y§œx¦›wªŸz±¥€¸¬†½±‰¾²‹»¯‡·«„²§®¤€¯¤€±¦€¯£~®¤´ª…·¬†¹®‡¿³‹Ä¹‘ɽ•Ê¾–Ç»“·¶ÁµŽ¿³Œ¿³‹ÁµÄ¸ÁµŽ¾²‹ÁµŽÂ¶À´¹­†´¨‚´¨‚·«„¹­†¸¬…²¦€¬ |¨ž{¥šw£˜v©Ÿ{©Ÿ|¢˜v™nŒ‚cwZwnSnfMjbJjbKpiU“Ž„ÔÒÎûûúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþññïÒÏĨ †­¢€³¨ƒµ©ƒ¸¬…¾³ŒÉ¾–ÑÆžÕÊ£ÔÊ£ÐÆŸÌÁ™É¾–ȼ”Ç»“÷¿³‹¾²‹Ã·É¾–ÌÁ™ÐÅÓÈ¡ÓÉ¡ÑƟΚʾ–Ç»“ƺ’ź’ź’Ç»“¶Ž¼°ˆ¸¬…¶ª„±¦¨œyž“q˜Žm’ˆhŽ…fŽ„g•Žu¡œ‹žš‹•ƒ°®§ââáúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøãâÞÆú£žŒ’Šn–Œl•Šk‰€bwoViaKYR?E@162(*'100WWWÅÅÅéééûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýüüüúùùôôóììêââßÊÈ¿²¯¢¸´¡ÍÇ­ßؼãܾäݼçàÂéâÅéâÅçßÁäÛºãÚ·ãÚ·äܺãÜ»áضÛÒ®ÕˤÐƞΛ̛ËœʜȾ˜Ä¹‘¿³Œ½±Š¼°Šº®ˆ¿´ŽÂ·’»°Š·«…´¨‚­¡|§œx¥›x¥šw¨x­¢}¬ {§œx —tšo’ˆi‰€a‰aƒd…eŽ„eŽ„dƒc…f—l™Žn˜l–Œl…fƒy\rjPf^GbZDaZDf^GphO|rW„{]Š€b„e“ˆi“‰i‹‚c‚x[vZ~tX{rV}tW~uX{qVwnTulSypU~uYw[ypUtkQtlQwnTypUzpUzpUxoTulRtkQtlRxoT|sWvY‚y\wZ|sW€vZ„{]†|_…e˜Žm˜n•‹k“‰i•‹k”‰i…f”‰i™nž“qŸ•sž•s›p—l’ˆh‹aƒd–Œkšoœ’p’pž“q£˜tªžz¯£~²¦€´¨ƒ²¦­¡|ªŸ|¨ž{§›w¡–s¡—t¨ž{°¤€¶ª„¼°‰ÁµŽÄ¹‘Ź’¿³‹¸¬…¶ª„µªƒ³§‚µ©ƒ¸¬…¹­‡µªƒ²§º®‡ÁµÂ¶Ž»¯‡³§²¦³§·«„¹­†¶ªƒ²§¯¥€¬¡}¨žz¨Ÿ{§Ÿ|¥œy¡–s“‰h†}^}tWtkQmeLiaIh`ImfT‹€ÒÑÎúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóñÿµ¨ …°¥€¸¬†º®‡½±ŠÆ»“ÍÁšÒÇ ÕË¥ÓÉ¢ÏÄœÌÁ™É¾–Ç»“¶Ž¼°‰»¯ˆÃ·ÌÁ™ÐÅžÐÅžÐÆžÔÉ¢Ðƞɽ•Å¹‘ÁµŽ¿³‹¿³‹ÁµÃ·¿³‹¹­†¸¬…¼°‰¼°Š®¢~¢—tž“pšm–‹j’ˆiŽ…gˆ€dx^~wcxrbzuh­ª¥ÙØÕööõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþôôòÙØÓ±­¡Œ…r…|c‰c€w\ibLTN<@=/0-#'$)('BAAqqq¬¬¬ßßßøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýûûûùùøôóòßÞÜÃÁ¼µ²©¨¤•º´žËÄ©ÕÍ®ÞÖµâÚºåß¿êãÆêãÆèáÂæÞ¾äܺãÚ·åÜ»äÜ»ÞÖ³ÝÔ°ÚѬÐŞɾ–ø¼°Šµ«†²©…µª…¸¬…µ©ƒ­¢}¥™vŸ“r¢—u¥šx ”r£˜u¨xŸ”q˜l–Œk”‰i“ˆg”‰i•Ši“ˆh‰€a€vZxoUulRxoT}tXuY~uYuYw[ƒy]„z]‚x\vZvZzqVmeLWO;GB1JD2UO;c\EldLqhOrjPtjQtlRvlSulRofMg`Hf^Fe]Fd]Ed]Ed]Fc\Eb[DaZDc[EiaImdLe]F`YDc\Eh`IiaIe^FiaIkcKc\EaZDb[Dc[Ed]Ef^GkcKofNnfMofNnfMibInfMulRwoT}tXƒy\ƒy\‚y[„z]ƒy]‚y\„{^†|_‡~`†|_€vZzpVwnSzqV€w[ˆ~`‚cŽƒd‘‡f–Œj’oœ‘o›n •s¢—t¡–t¡–tž“r™Žm”Ši–Œj¡–t¨y®¢}´¨‚´©ƒµ©„¹®‡·«…°¤«Ÿ|§œy§›x§œxªŸ{¯¤~­£~¬£~µª„»¯ˆ»¯ˆ´¨‚°¤~²¦€¸¬…º®‡µ©ƒ¶ªƒ¶ªƒ´©‚±¥€¬¡|§œy¥›x£™vž“q–‹k…f…|^zqUqhOjbJg_Gg_IrlZ–“‰×ÖÓýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÔÑÆ© ·«†¼°‰¿³ŒÄ¸Ç»”Ê¿—ÎÄœÐÅÏÄœÎÛÌÀ˜Ç¼”À´¾²ŠÄ¸Ç»“ËÀ˜ÑÆŸÍ›Ƚ•ÏÄÏĜȼ”À´»¯ˆ¹­†·«„¸¬…¾²Š¼°ˆ¸¬…¹­†¾²‹¾³Œ¯£¥šw¥šv¤™v¡•s˜Žl‘‡gŠ€b€vZvnUngRjcQvrdš˜ÎÍÉ÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûêêèÉÈš–Š{ubqjSrjR\VCC@10-$"210WVU€€½½½ìììüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýûúú÷÷÷òòñââß¹·¯ª¦˜¥¡®¨”ľ¥Ó̯ÚÒ³ßÖµãÛºçàÀêâÅèáÂäÜ»ßÖ³ÞÔ±áØ´à×´ÝÕ±ØϪÓɣ̛¾´Ž´ª…­¢}¨œx£˜u¡—t£˜u¦šw¤˜u›o’‡g‹b‹cƒd‹b…f”ŠiŽ„d†|_ƒy\„z]„{]ƒz]~uXvnSphNkcKh`Hg_HiaIkcKldKkcKldKmeMmdLh`Ie]Ge]GibJf^G[T>JD2@;+C>.NH6ZS>_WB`XC_XB`XB_XB_WB^WB\T?WQ=WP<WQ<WP;VO;VO;UO;RL9PJ8TN:XQ=XQ=QK7OI7TM:XP<XQ<UO;XQ=XQ<PJ7QK8TN:TN:TN:UO;YR=[T?ZS?[S@ZS>WP<YR=^VAc\EjbJogNogNogNphOqhOqiOtkRskQqiOqhOmeLjbJiaIkcJnfMulR{qV{rVvY…{]ˆ~`…{^ƒz]Š€aŒ‚cƒd†g†fŽƒdŒ‚bŽ„d–‹j˜l›n¢—u§›x¨y¦›w§›w¨y¦›w¢—tŸ”r¡–s¥šw¨œy¤šw¤šw®£~²¦¯£~§›x©y³§€¹­†»¯‡¹­†¸¬…¶ªƒ¯£~« {©y¦›w¥›x¦z¤™v –r™oŒ‚dvYvmSofMi`If^Gg`JqkZ—”ŠÚÙ×ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööô½·£®¤ƒ·¬…¼°‰¿³‹À´Â·È½•ÍšÏÄœÏÄœÎÛʿ—÷ÁµŽÉ½•Ê¾–ʾ—ÐÅÍÛɽ–Æ»”Ç»”Ç»“ĸ¾²Š¹­†¸¬…º®†º®‡¸¬…¶ª„½±Š¾²‹¸¬†¬ |©žz®¢}­¡|¨yŸ”r—ŒkŽ„dwZulRlcLf_Ig`Nsobœ™‘ÕÔÑ÷÷öþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûìì껹²zn_YH\UCNJ:74*'$$#!<:9ggfŸŸžÐÐÐöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýüûûûõõôèçæÍÌÇ´²ª®«œ»¸¥Â½¨ÊÅ®×Ò»ßÙ¿åßÃæÞÀæß¿èàÀèàÁåݼÞÖ²ÕË¥ÓÈ¢×ͨÕË¥ÑÇ ÎÜĹ’·­‡§ž{š‘p’‡h…f†g’‡g†gŽ„e‹b„z]}tXxoUxoTwnTulRxpT|rWwoSphOmeLriPumSqiPe]G[T?ZT?ZS>XQ=WQ<YR=ZS>YR=VP<WQ<WP<TM:OI6MG5OI6SM:PJ8HC2A<,?:*A<,HB1MG5OI6OI7OI7OI6MG5KF4JE4KF4KE4JD3ID3IC2HC2HB2GB1D>.A<,E?/FA0E?/?:+>9+B=-C>.D?/E?0FA0E?/?:+A<,E@0E@0E@/FA0HB2IC2HC1IC2IC2IC2IC3LF5SM9WQ=YS>ZT?\U@]UA_WBbZDd\EbZC_WB_XA_WA^V@]U@]VA_WAd\Fg`Hg_HkcJpgNqiOofMofLtkQwnSzqU|rV|sW}tX€vZ„z]ˆ~_†|^‡}^„e•Šj—l‘‡f”‰iœ‘ož“qœ‘o—Œkšnž”rž”ršnšm¥šv¨x¤™v‘p¡–s®¢}´¨‚¹­†¾²Š»¯ˆµ©ƒ©ž{¤™v£˜u£˜u¦œy¨Ÿ|ªŸ{¨x¡—u’‰i…{]|sWtlRmeLg_Hd\Fd]HmhX¨¦Ÿìëëþþýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþäãݽ·£°¦„¹­†¼°‰¼°‰¿³ŒÆº’Ê¿—ÍÁ™ÌÁ™ÌÁ™ÌÁ™Ç»“ƺ’ËÀ˜Ê¿—ʾ–ÎÛÎÛʿ—ÁµŽÁµÆº“Ƚ•Ä¸½±‰½±Š¾²Š»¯‡·«„·«…Áµ½±Š³§‚­¢}®£~²§‚³¨‚°¤¨z –s•‹j„z\xnTpgNhaId\Gd^Ltpa¤¡™ÓÒÏ÷÷öþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúØÖÓ•’‹[WJID6C>2-*#/.,LKJ{zy¾¾½ëëëüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýûûûùùøëëêØØÔ»º±­ª›´¯Ã¿®ÓÓÆÝÜÊéåÑìçÐìæÍëåÊéâÅåÞ½âÚ·áÙ¶ßÖ³ØϪÎÜƻ“ĸ’¶¾²Œ¸­‡®£¢—t…f‚x\xoTvmSypU|sXypUqhOiaIe^Gc\Fb\Eb[E`YCYR>\T?_YBZR>TN:UO;\U@\V@TN;JD3E?/JD3HB2D>.B=-FA0IC2D?/@;,A<,A;+?:*>9*>9*>9*?:*<7)83&51%94&=8)=8)=9+A<-B<-A<,@;,>9*<7(:5'<7)>9*:6(83&94&83&72%72%62$4/$2.#2/#3/#0,!/* /+ 0,!2-"40$61$51$2."3/#40#40#40$73%84&83&83&95':6':6';7)=8)@;+C>-E@.GB0JC2KD2MG5PJ7QJ6NH6OI6PJ7PI6OH6PI7PJ7QJ7TN:VO<SM9VO;ZS>\U@[T?]V@aYCe]FiaIh_Gf^Gh`IneMsjPvnSulRulR|sWvY€wZ€vZƒz\‰aŽ„dƒd‹€aƒc†e‘†f„e…e—Œj’pŸ”q™Žn™ŽmŸ“q¨x³§º®‡¹®†´©ƒª¡}¢˜v’q¡–s¤šw¦›x§œx¥šw –s•‹kŠ€a‚y\zqVrjQkcJe]Fb[Ec]HƒrÍÌÈ÷÷öýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüçåຳž²§ƒº®‡¼°‰À´Å¹‘ȼ”ȼ”ź’ƺ’ɾ–ËÀ˜ËÀ˜É½•È¼”ʾ–ÍšÌÁ™È¼”¶ŽÂ¶È½•ÌÀ˜É¾–¶À´À´Œ¿³Œ½±Š½±‰¿³Œ¾²Šº®‡º®ˆ¶¬†²¨ƒ·¬†º®‡´¨‚¬¡}Ÿ–uŽ„d€wZvmRmeLg_Hd]GgaMxsf›™ÏÎÊõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîí±°¬d`WC?495+%#"!542[ZZŠŠ‰ÃÃÂõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýüüüûûûø÷÷âáÝ¿½³²¯¢¹¶¦ÈıÏÊ´ÙÕÃââÓéç×îêÖïéÓìäÊçàÁãÛ»ÚÒ¯ÔʤÖ̦ÕË¥ÏŞø‘¸¬†±¥€©žzŸ”r–‹l…g‰~a}tXsjPh`Ic[Ec[Ee]Fb[DZS?QK7NH6OI6OI6NH6LG5HB1GA1FA1B=.A<-D?/HC1FA1?:,:5'83&<7(:6(72%51$73&83&3/#1,"1-"1,!0,!0,!1-!0,!0,!/+ .* .* 1-!3/#2."1.!4/#40#4/"2."2."1-!/+0, 2-!/+ -).+-)+(,),(+'*'+(.* ,) -* .*!.*!.*!/+!0,"/,!.*!.* .* -* .* /,!/,!/+!/+!0,!0,!0,!1-"3/"51$72%94&;7(@:+@;,@;+A<-A<,@;,A;,C>-C=-B=-C>.D>.C>.E@/FA0D?.E?/HB0IC2KE3NH6PI6TM:ZS>ZS>ZS>]VA`XC`YCc[Ed]Fg_HkcJldKmeLphNtlQzqU|sWuY€wZ€wZ€wZ„z\‚x[‚x[Š€b“ˆh˜l”‰i•Ši›o •r¤™u§œx«Ÿ{¬¡}¨ž{£˜vž“qž“q¢—t¨y¨žz¤šw’q”ŠiŽ„dˆ`‚y[{qUphOhaId\Fc\EgaN‰~ÜÚØ÷÷÷ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûÚØÏ´¬“²§ƒº®ˆ¿³‹Â¶ŽÃ¸Ä¸Ä¹‘ȼ•Í›ÏÄœÌÁ™Æº’ƺ’ɽ•ÍšÌÀ˜Ç»“÷Ĺ‘Ë¿—ΚÎÛʿ˜Ä¹’¶ŽÄ¹‘½±‹¶«…½±ŠÃ·Æº“Ź’ÀµŽ»°Š»°‰º®†µ©ƒ®¥€¦z™nƒd€wZulRnfMjbJf_IgaOupb›’ÔÓÏúúùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøÙØÖ‡„HD;0-&*($885ccbœÑÑÐôôôÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýüüüûúúñðð×ÖÒ¼¹­»¶¢È­ÔнÝÚÇâÝÇèäÎíéÕïë×ñì×ðêÓèàÃÞÕ³Õ̩Ⱦ™¿´ŽÃ¸’ø‘»¯Š®¢}¡–s˜lŒc}tXriPneMlbKh_HaZDYR>PK8LG5MG5LE4E@0>9*<7(<7(<6(;6':5'84&40$0, /*0,!40#61$30"/, -*-).* .* ,)+'*')%'#&#&#&"%"$"%"%"$"$"%"&#)%,(/,"0-$0-$0-#1.%1.%2/%2/&2/&2/'41)31)31(41)30)30(41)42*41*74-<92@=7B@:FC>GE?FC>DB<DB;CA;B?9B@9A?8?=6><5><5=;4=:3<93;92:82:81970:70:80<90=90<8-84(94'<7);6(94'73&84'83&84'83&94&94&94&94&94&:5'95&:5&;6'<7(>9*B<,C>.FA0LG5OI7OI6RL9SM:QK8QK8UO;XR=YR=\T?^WA`YCd]FiaIlcJofNrjPriOqhOulRskQsjP{rW„{^‹cŠ€aŽ„e–Œk—Œk“ˆh‘†g˜lŸ”rž”rž”rž“q›n •rªžz©Ÿ{¡˜u˜l‘‡fƒcŒ‚cŠ€a„z\wnTmeLf^Hc[D_YDe_OŽ‹‚ÞÞÝ÷÷÷ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþöõôÖÓȯ§Š´©…½±‰¾²ŠÀ´ŒÂ¶ŽÅ¹‘ÌÀ˜ÐÅžÏĜʾ–ĸĸǼ”Ë¿—Ê¿—Ç»“÷Ź‘Ë¿—ÍšÐÅžÑÇ Ê¿˜Æº’Ǽ”º¯‰¯£º®ˆÈ¼”ÏÄËÀ˜Ç»“ĸÀ´º®‡³§®¤©Ÿ| –s—lŽ„dxZxoTriOjbJc\Gd^Lxtf¤¢˜×ÖÔøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóóó½»¹][TB@;XWUxxx³³³çççûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýûûûõõõåäáù·³¤Ä¿«ÓͶÛÕ½äàÊêçÓìçÑíèÐíçÏíæÍëåÌéâÇÞÕ´ÎÄž¼²­¢~¢˜u¢—uœ’p’ˆh…{^xnTnfNiaI`YCWP<PI7JD3D>/C>.B=-<7)84'83&40$.* *&)&)%*')%'$&#" !""""# # %"&#%"$"&#+(!,*$+(",)#,*$)(!(& (& ('!'%&$'%+)#42+HF@VTOPNHMKEVTN^]X\ZU\ZUba\feafeaihdmlhmlimlhomiqpntspwvr~{‹‹ˆ—–”¢¡Ÿ¬¬ª­¬«©¨§¤¤¢¢¡  Ÿœœ™™˜––•””“‘‘‘ŽŽŒŒ‹Š‹Šˆ‰ˆ†‡†„„ƒ‚ƒ‚€€~~{}|zzxuvuqljeWUNGD<A>4?;2;8/:6-96,85+52)62(62'41&51&62&63'62&51&73&85(84(95(<8*=9+>9+A=-E?0C>.C>.E@0E@/D?.FA0HB1HB1LF4PJ8QK8SL9WP<[T?]WA_XB`YBaZDd\Ed\Fd\Fg`HphNxpU{qV}tX‚y\…{]†|^ƒy\‡}_‹bˆaŒ‚c’ˆg•‹jœ‘o¢—uŸ•r˜Žl‘‡fŒ‚b‰`‰`‹b‰€a€vZtlQjbKd\F[UAYSAidW‘ˆÝÝÜøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýöõóÎʽ®¥…¸­‡¼°ˆ½±ŠÁµŽÅº’ɽ•Ê¾–Ç»“Ĺ‘Ź‘ĸ¶ŽÄ¸Æº’ƺ’֦ŽÄ¹‘Ǽ”ÎÛÓÈ¡ÐÅÊ¿—ĸ‘¹®‡²¦¹­†Ä¹‘Íš˿˜Æº’ĸƻ“ø‘¹­†²§« |ž“q˜Žl•ŠjŽ„d†|^}tWqiNg`Ic\FhbPzvi¡ž—ÒÐÍõôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùØ×Õ‘Œ„ƒ€®®®ÌÌÍóóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýýýýûúúêêèÍÌƶ³§¼¸¥ÍǯÚÕ½ãßÈæàÆéäÊëæÍëäÉèàÃâÙ»ÛÓ³ÖÍ­ÑȨĺ—´©…¥™w“‰h„{^€v[xoTldL`YBVO:OI6JD3E@0?9,:5'40$.* .*/++()&)%'##  &$.,'.-(31,>=8FD@ED@KIE[ZWhgcca_ba^gfcba]]\Y]\Y^][ZYVWVTYYV`_\onkšš™»»¹¥¥¢œš±±¯ÇÇŽ¼º»»¸ÌËÊÕÕÔÔÓÒÙØ×ããâäãâãâáçææííìîííîííòòñööõööööööøøøùùùùùùúúúúúúûûûûûûüüüüüüüüüüüüüüüüüüüüüýýýüüüýýýýýýýýýüüüûûû÷÷÷ñññääãÒÒÑš™–lkfca\a^Za^Y\ZTXVQWUPWUPTRLRPJSQLRPKTRKTRLRQKTRLVTMVTMWUMTRJKI?IE;MJ@NJ?C?4=9-?:-A</>:,=9*>9+?:+A<,D>.D>.F@/HC1LE4MG5OH6QK7SM9WP<YR>YR=\U?`YCd]Fg`HjbJmfMtkQxoTwnTwnSwnSxoT}sW‚y\‰a„e’ˆh‘‡g…eŽ„d‹bŠ€a‰€a‰a‡}_vZvmSneLd\FZT?TN<UPAspf««§êééõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîí鼩°¥ƒ¸¬†¾²ŠÂ¶ŽÅ¹‘Ç»“Ź‘ĸ÷¶ŽÁµÁµÃ·Ä¸Ä¸Ä¸Ã·Ä¸Ä¸È½•ÎÃœÏÄÎÛʾ—ø‘¿´ÁµŽÃ¸Åº’Ç»”ƺ’Ź‘Ƚ•È¼•¿´¶«…¬¡}¤˜uŸ”q›o–‹k…e‡|^ypUogNjbJe^Hd]JmiZ“‘‡ÉÈÅñððüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýòòñÜÛÛàààïïïùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýüüü÷÷÷ÛÙÖ¿µ½¹¨ÍÈ´ÙÓ¼ÜÖ»ãÝÃçâÉåÞÀãܽâÛ»ß×·ØÏ­ÍßÀ¶”·­‹°¥ƒ£˜w–ŒmŒ‚dyqUh`IbZEYS>NH6C>.=8):5'4/$/+!,(*&'$"!! " ! #!'% &% &%!,+'53/54032/541752542985JIHlljsrpyyw‘¥¥£§§¦¯¯®ÅÅÄÏÏÏÌÌËÎÎÍÑÑÐÍÍÌËËÊÍÍÌÍÍÍÊÊÊÊÊÊÌÌÌÐÐÐÛÛÚóóóøøøããâÖÖÕääãíííäääàààëëêïïïìëëîîíóóóóóòññðôôó÷÷ö÷÷÷öööùùøúúúûûúüüüüüüýýýýýýþþþýýýþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿùùøÝÜÜÇÇƽ¼»À¿¾ÂÂÁ¾¾½»º¹¾½¼À¿¾½¼»¼»º¾½¼½½¼¾½¼¿¾½¾¾½¿¿¾ÀÀ¿ÁÁ¿ÂÁÀ­¬ª}zwup|{v|{va_XNLEPMEROGKH?FB8GC8EA5A=1@;.>9+>8*>9*@;+A;,D?.FA0HB1NH5RL9QK8TN:WP<UO;WQ=\U@_XBd\EiaIkcKhaIg`GldKofNqhOxoT}tX€vZ„z]ˆ~`‹b‹b‹aŠ€a†|_€vZypUulRofNaZDWQ>RL;NJ:^[P‰ÕÔÓêééþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùâàص®–²§ƒ¼±ŠÁµÃ·Ã·Â¶ŽÃ·Ã·¾²‹¿³ŒÃ·Å¹‘ĸ÷ƺ’ȼ”ȼ”ƺ’Æ»“Ë¿˜ÎÛÐÆžÑÇ ÐŞ͛ÌÁ™Åº’¿³ŒÃ¸È¼”Ç»“ɽ•È¼•Ä¸‘¸®ˆ®¤€¬¡}§œx •s˜m“ˆhŒ‚b‚x[ypUtjQkcKc\Fd^Ksn^ŽŒÃ¾ïîîýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýýýýúúúòñðÔÒλ¸«ÆÁ¬Ó̳ßÚÁåàÆäÝ¿äÝ¿âÛ½ÙÒ°ÖÍ©ÓÉ¥ËÀž¾´‘¯¥ƒ£›€š‘x’ˆk…|_xpWnfN`XCRL:HC3?:,72&0,!+((%$"# # " )(%<;8CB?A@=EECUUS\\Z]\[ihg€€ˆ‡†‡‡…ŒŒ‹ŽŽŽŽ•••¹¹¹ÚÚÙÞÞÞßßßëëêòòñôôôøøøýýýýýýýýýþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúûûûýýýüüüûûûüüüýýýýýýüüüýýýþþýýýýýýýþþþþþþþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýûûúûûûüüüýýýüüûüüüýýýýýýýýýýýýþþþýýýýýýþþþþþþþþþþþþþþþøøøÔÓÒÅÅı±°¬¬ª”“‘‡‡„‚‚~{zvtrnqojjica_YVTMJG<@=2>:/@<0A=/C?1C>2C>/HB2MG5LF4MG5NH5NG5OI6SM9TN;UO;ZS>^WA\U@YS>]U@^WB`XBf^GneMsjQypUvYx[‚y\ƒz\‚y\€w[}tXvnSskQmeM_XCUO=QM<NI;UPDjg_¦¤¡ÙØ×üüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúùøàÞÖª¢…·¬†½±Š¿³‹À´Œ¾²‹¾²ŠÀ´ŒÂ¶ŽÆ»“Ƚ•Ä¸Ä¸Æº’Ê¿—ÌÁ™ÍšÎÛÏÄÑÆŸÓÈ ÓÉ¡ÒÇ ÒÈ ÒÈ¡ÏÅǼ”ÀµÅ¹‘ȼ”Ƚ•Ë¿—ɾ–÷»°ˆ³¨ƒ­£¤šwœ‘p˜l•‹j’ˆg‹b‚x[zqUqhOiaIf^He_LjeU†„zÿóòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýüüüóóòÑÏÉ·´©¹µ¤Ñ̶ßؽÞ×¹ãÛ½âÚ¾ÚѱÔ̪Ðǥż˜½³µ«ˆ¨ž}™pŒƒf‚{fxr^ngPd]GZS@OI9E@1=8*2/#+(%#! %$87398320,874KJHQPNKJHQPOZZXYYWffe——–´´´²²±¹¹¹ÑÑÑÙÙÙÝÝÝèèèôôôõõõöööûûûüüüüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúõõõôôôôôôññïììëççæàßßØ×ÖÁÁÀ††‚ljehgafe]b`Xb`Xgd^b`WdaXkh]c`UMI<FA2HC3KE4LF4KE3JD3NH6QK8QK8OI7RL8SM:SM9VP<\U@aZCg_InfMphNskQwnSxoTxoUxoTulRrjPmeNa[EYS@TN>PJ<QM?WSIqoi¡ ææåûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùÈĶ®¤…¶ª…½±ŠÀ´Œ¾²Š¼°ˆ¼°‰ÁµŽÆº’Ƚ•Ç»“ɾ–ÍšÎÃœÐÅžÒÈ ÕÊ£ÖÌ¥ÖÌ¥ÖÌ¥ÔÊ¢ÎÃœÐÅÑÇŸÌÀ™É½–ɾ–ÌšÌÁšÈ½–Ǽ”Ź’ÁµŽÀ´¾²Œ´ª„ªŸ{¢–sž”r›‘o˜l•‹jŽ„f„{]zpUsjPldKe]F_XDe`P~s»¹µïïîýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýýýýüüüööõääáÉÇÀ¿»ªÌÆ®ÖжàÚÁáÚ¿ÜÔ³ÚÒ°Òʨú˜¼²·®‹­¤„¡˜x•‹l†}`xpVqiQibL]WCQL:LF5F@1=8+84(51'/,$/-&10*11,10,11.320FECuts‚‚yxw‡††ªªª²²±¬¬¬···ÃÃÂÀÀ¿ËËËëëëñññðððóóóùùùúúúüüüýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýþþýþþþþþþþþýýýüüüüøøøííìééèìëëôôôüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüûûûùùùääãÅÅÄÄÿ¿½¹¸¶¶¶´ºº¸ÁÀ¾ÆÅÃÍÌʵ´±ljdURI`]Q]YLLG:GB4HC4KE5LF5KE3JD2MG5NH6NH6OI6QK8SM:XQ=]V@`YCd]FjbKmeLogNpgOpgOogNldLd]H]VDXRBQL=MI<QMB^ZRusn·¶´õõõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýñðíÁ»ª®¤„¹®‡À´Œ¾²‹¼±‰»°ˆ¼°‰À´ŒÅº’ÌÁ™ÐÆžÒÇ ÐÅÐÆžÔÉ¢Ö̤Ö̤ÕˤÔÊ£ÐƟʾ–Ë¿—ÍÁšÈ¼•ËÀ˜ÒÈ¡Õ̦ÑǠȽ–Áµ½±Š¿´ŒÅº’ȼ”¿´Œ¶ª„¯£~«¡~¤™wœ‘pž“q›o‘†fw[wnTqhOiaHc[Eb[GgbQ|xmÀ¾»öõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýýüüüüüüüôôòÍËÁ¾»«Á¼ªÕиÞ׺ÜÕ·ÜÕ»×дÏƤȿœ»²‘«¡¡˜w›’r…g€y]vmSg_I]VBZS?VO=LG6C>0>9-;7-:7.A>6KICRPL\[Xrqo€††„‹‹ŠŸŸžÐÐÏÒÒÒÏÏÏÜÜÜõõõöööôôôúúúýýýüüüüüüþþþÿÿÿþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüûûúúùøßÝÙ¾º­ÄÀ´ÒÎÅÞÜÖÎÌÃÿ³½¹«ÓÑÉ¿µ²® ®ªœ©¥š™–™–©§Ÿº¸³ÝÝÚððïòññõõõúúúûûûþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþûûûûûûüüüüûûûûûûûûòòò·¶µŒ‰›š–¢¢|ztge]gdZb_U]YNLG9HC4ID4JE4JD3JD3LF4NH6PI6SL9VP<XQ=[T?_XBc[De]Ff^Gf^Fd]FaZF`ZG_ZIXSCPK>NJ?ZWNrpj£¢ òòñûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûíìè¼·¤°¦„º®‡¼°‰½±‰¼°ˆ»¯ˆÁµŽÊ¾—ÑÇŸÓÈ¡Ñƞ͚ÎÛÒÇŸÕÊ£ÕÊ£ÒÇŸÍšƺ“¾²‹Â·Ê¿—ÍšÑÆŸÕˤÔË£ÏÅȽ•ÁµŽ½±‰½±ŠÄ¸È¼”ÁµŽ»¯‡·«„¹®ˆ°¥£™v¤šw£˜všn‡}`zpUulRogMjbJbZD]VCa[LŠ‡Ø×Õúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýýüüûûúúúùùùù÷÷õêéçÿ¶¼·¡ÊèÔÌ°ÛÔ¸×вÑȨËæÁ¹œ¶­‹­¤ƒŸ–x‡j†}a~v[piQe^H_YD^XHZUFWRDXSFZWKVSHTQI[YTihdzzv§¦¤¿¿¾ÑÑÑêêêòòòôôôõõõöööøøøüüüüüüüüüýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùõôñßÞص²©«¨ž«© «©ž«¨™©¢‹£›~¦«¢‡ª£ˆ£›£š~£š}¡™~›’w˜r—Žp…i€x_zc‹…r‹…u‹~®¬£¾»µÁ¿ºÖÕÒæåãâáàãâáóóò÷÷÷úúúúúúüûûýýýýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùôôôööõõõôÞÝÝÍÍÌÏÏÍÆÅ몧…„}mjafcZ`]SVRERN@MH9ID4JD3LF4NH6NH6OI5SM9VP<YR=YR=ZT>ZT>ZTA`[JhbSa\MUQCOK?QMDqoh›˜ÛÛÚ÷÷÷üüüÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüéè㶯š¯¤€¸¬†½±Š¾²‹ÀµŽÇ¼•ÏÄœÓÈ¡ÓÈ¡ÐÅË¿˜ÌÀ™ÐÅÑÆžÐÅžÎÛǻ“À´Œ¼°‰Ã·ÌÁ™ÑÇ ÒÈ ÏÅžËÀ™Æ»“֦ŽÁµÀ´Ã·Ä¸Áµ¼°‰»¯ˆÃ¸½±‹¯¤«¡}§z“qƒcvZypUvmRphNd\F[T@YSAfaT¢ ™ÞÝÛúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýûûúùùù÷÷÷ööôïîìØÖѼ¹«½¹£ÎÈ­ÏÇ©Ìäǿ¢À¸™¹°°¨Š¢š|—Žp†j‡e{s[skTohTvq`mhYlh\ˆ†~“’‹Ž‹…“‘‹¤£Ÿª©¦®­«½½¼ÍÍÌäããøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿññðÞÝÛßÞÛŵ­¤‰»²’ÉÀ¡ÒË®×Ñ·ÖϵÓ̯ÓʪÑȧÐȦÒÉ©ÏǨÌãÊÁ ÊÀÅ»™Â¸–Á¸”¿´¶¬Š© ¡˜y’‰j‰€d„{b‹„m†r‰ƒoˆq™ŒžšŽš½»µÓÑÍÒÑÎÚØÖÞÝÛáàÞìëêööõûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùîîîççæÎÎÍÁÀ¾¹¸µ­­©œ›•trj\YOYUISOALH9JE5KE5JD4NH5QJ7PJ7RL8SM:QK9VPBd_RgbV[WJSOCMI>URJ}|w§¦£äããùùùýýüÿþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüæäÞ®¦‹³¨„¼°‰¿´ŒÇ¼•ÍÛÐÅžÐÅÓÈ¡ÓÈ¡ÍÁšÍšÐŞʿ—ȼ•ÌÁ™Ç¼”ĸȽ•ÎÛÑÇŸÐÅË¿—Ĺ‘¾²‹¸¬†·«„¾³‹Ç»“ɾ–ƺ’÷À´Œ½±Š½²ŠÇ»”Æ»“¼±‰µªƒ©žzœ’p’ˆh‰`~uYzqVulQh`I_XBZS?[UCupeµ³®éèçýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýûûúøø÷ôóóððïéèæËɶ± »µÄ¾¥Æ¿¤À¹›·¯‘­¤ˆ¤›}•v™’v†k‚zbxcž™Š™‹–’…Ÿœ“±¯ª­«§·¶´ÙØ×ãâáààÞåäãñññõõõøøøüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóòðÓÐľ®³¯¸´£Â»¢ÍäØÏ­àضçßÀëäÉêãÆæÞ¾âÚ¸ßÖ´ÞÕ³ß׶ß׶ÜÔ³ÚÑ®×ΪÔʦÒɤÏÆ¡ËÁ›Äº–½²³¨„¨z¡—u’rš‘r”‹l‘ˆj†k‰pŠƒk…~i‰w ›˜“…™•ˆ¢ž“°­£¹·¯ÖÕÑëêéôôôúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü÷÷öôôóèèçÌÌʤ£ œ›—Ž‹†spinlca^SOK=LG8PJ8LF5KE3LF4HC3ID5UQCidXa]PWSGPLAOLCtrl“‘ŽØ×ÖöööúúúüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøÑÍÁ³ª¸­‡À´Æ»“ËÀ˜ÏÄœÑÆŸÖÌ¥ÙϨÑÆŸÍšÌÁšÆº’Ź‘ÌÁ™ËÀ˜È¼”ȼ”ËÀ˜Î›ÌÀ™È¼”÷¹­†±¦°¦º¯‰Æº’ɾ–ȼ”Ź‘ĸ¶·ȼ•È½•Ä¸¿³Œ³¨ƒ£šw™n†f‡}_‚x[{qVmeLc[EZS?VO>hbUš—×ÖÓøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûøø÷òòñëêéØ×Ôº¸¯­¨—¸±˜º³™·°—±ªŽ¨ „¡™}¥Ÿ‡‘ŠqŠ‚k‘‹x˜”‚—’„³°§ÚØÔææãìëéññðòòòòòñöööýýýýýýüüüýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿððïÂÁ¼´²¬²®ž³ªÆ¾œÚÓ±àÙ»âÚ»ãÛ¼çß¿èàÁêâÅíçÍìæËèáÃáÚ¸ÝÔ±ÜÔ±ÞÕ´ß×µÝÕ³ÛÒ¯ÙЫ×ΪÕ̧ÑÇ¡ÊÀšÅ»”Á·¼°‹µª…±¦®£ª |¨z¥›x£™wŸ”tšo–m–Žq”ŒqŒ„i‰‚h‹ƒm•Žz—’£ ”±¯©ÕÔÒííìùùøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûñññïîîééèÕÕÓÉÈƸ·´ywplj`jg[WSFJF7FA1D?0HC3TOAlh[e`TVRFSNCTPG‚€z›š•ÖÕÓððïõõõùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîìéÁ¼©´¬‹¼±ŒÃ¸‘ȼ•ÍÁšÒÇ ×ͦÙÏ©ÒÇ Ë¿—Ç»“ĸŹ‘Ê¿—É¿—ź“ÁµŽÃ·Æº’ȼ”Ƚ•Åº’º®‡°¦€±§‚¸­‡À´ŒÃ·Å¹‘Æ»“ɽ–ʾ–ʾ–ɽ•Ç»“Ź‘÷»°‰­¤¢˜ušm“‰iŒƒc‚y\tjPf^GYR>QL;b^PŒ‰€¸¶²îíìüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüùùøòòñääãÂÀº ¤ŸŠ«¥Ž«¤Œª£‰¦Ÿ…ž—~—‘y”Žx·²¥¾»±ÇŽØÖÒîìëùùøýýýÿþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüòñðìëèÝÚЮ¦ŠÂºÇÀ¢ËãÐȤÙѬß׳ÞÕ±ÙѬÚЫáÙ¶äÛ¹åݼéâÃêãÆçàÂâÚ¸ÜÓ¯ÙЫØϪ×Í©Ö̧Õ˦ÕͦÖͨÔʦÏşɾ—Á¶»±Œ¸­ˆ¸¬†¸­‡¸­‡·¬†¶«…µª„´©„±¥€®£~« |ªŸ{¦›x£˜u¡–tž“r˜Žp‰€czs[up`›˜ÍÌÈèèçöööüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýêêéØ×Öããⶵ²oleXTKQMAJD6OK=b_Rc`RYTGVSFSOD^[S“‘ÉÉÆççæîîîöõõüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüéèä½·£²¨ˆÂ·‘ȼ–ÌÀ™ÐÅÐÅÎÜ˿˜Ç»“ĸĸŹ‘¶º°Š¶¬‡¹®‡»¯ˆ¾²ŠÅ¹‘ʾ–ɾ–¾³‹¸¬†º¯ˆº®‡¸¬…·«„¼°‰Ä¸‘ÏÅÒÈ¡ÑÆŸËÀ˜Ã·¼°‰¸¬…µª„µ©ƒ°¥ªŸ{¤›xš‘pƒe|sWh_HVP<LG7VRDxtiš”ÊÉÅõõôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûöõõêêéÂÁ¸¡œ‹£ˆ¥žˆ¤žˆ¥Ÿ‹¨¢¬§”µ°¡¿¼±ÅûâáÝòñïûûúþýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùÓÏÄ»¸¨¯«—¼´—ÎŤÜÓ²ÞÖ²ÞÕ±ÞÕ±ÞÖ±ÞÖ±ÝÔ°ÚÑ«ÚÑ«àײâÙµâÙµâÙ·ãÛ¹äÛºß×´×ͨÐÅŸÍÂœÌÁšËÁ™ÌÁšÌÂœÎÄžÍÃÉ¿˜Å¹’¾²Œ·­‡µ«†¸­‡¾³‹¿´¼±Šº¯ˆ¼±Š½±‹¹®ˆ¶¬†·¬†·«…´©ƒ±¦±¦€¬¡}¢—u–Œk†|`qjTvqc™–¯­¨ÎÎÌêêêùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøøÊÉÈš˜•ˆ†fc[XTJPL?]XLZUHZUIVRFOK@^[TŽ‰ËËÉééèóóòûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýàÝÕ°©À¶’ɾ™ÌÁšÐÅžÐÅžÏÜ˿—ƺ’ĸĸ÷À´Œ»°Šº¯‰½²‹¼°ˆ»¯‡Â¶ŽÈ¼”Ƚ•ÁµŽ¼°ˆ»¯ˆ¸¬…µ©ƒ¸¬…¼°ˆÃ·ÍšÑÆŸÑÇŸÍšŹ‘¼°‰´¨‚´¨º®†¹­†µ©ƒª¢~Ÿ–t’‡h€vYkcKZR>NH6PL?hdZ‹‚±°ªãâáýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúôôóâáà·³¢·±›µ¯š¸²ž¼·¨ÍÉ¿ÔÑÈÜÙÑéèãôóðø÷öûûúýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÙÖÃÀ´¹±’Ëá×аàغåݾæÞ¾ãÛ¸áØ´àØ´ÞÖ±ÞÖ²áÙµâÙµàײßÖ±ÝÔ¯ÚѬÖͦÙÏ©ÛÒ­×ΩÌœ·¾³Œ¾³Œ¿´¿´¾³Œ¾³Œ¾³Œ¾²Œ¼±‰¹­‡µ«…²¨„¶¬†¾³ŒÂ·ÀµŽ¾²‹Á¶ŽÂ·¼±Š½²‹Áµ¿´º°‰·­‡¹­ˆ¶ª„¬¡} –t’‡i{rWlfQlgWyvk˜—‘ÄÃÀêêéûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûëëëãâ⹸µ”“sqib^TWSGTOCTOCMI>JF<_]U˜—”ååãððïùùùýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõôóµ°¿µ•ÊÀšÎÞÑÇ¡ÒÈ¡ÒÇ¡ÍÁšÉ½•Ç»“Ź‘÷ĸŹ’ƺ“ĸ‘¾²Š¹­†¼±‰Â·Æº’¶Ž½±‰¹­†µ©‚¶ª„¾³‹ÁµÃ·È¼”ÌÁ™ÎÜ͚ȼ”ÁµŽ¹­†¸¬…¾²Š¾²‹¹­‡¬£¡—u”Šj„z]sjPbZDRL9ID6VRG}zp˜–ŽÅÄÁóóòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûööõóóñâàÛÍËÁáßØãâÛæäÝìëåïïëôòïùø÷üûúýýüÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûåãÞ³¬—¾·žÊ¦×Í«âÚºèáÄæÞ½åÜ»äܹãÚ¶âÙµâÙ´àسâÚ·æÞ½äÛ¹ÞÕ°Õ˥̛ƻ”ƺ“ʾ—ËÀ™Äº“º°‹²¨ƒ­£~­¢~¯¥®¤« {¦›w¨y«Ÿ{§›x¨žz­£¬¤€±§ƒ¹®‡½±‰½±Š¾²ŒÁµŽÂ¶ÁµŽÄ¹‘Æ»“÷¿´¿µŽÀµ»°Š±¦§y™m‡}_woTmfOkeTzvk˜•Ž¾¼·áàßêêéùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿø÷÷ééèÑÐΔ“Žxvo]ZPRNCNK?JF;WTJ…ƒ~âáßîîí÷÷öüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÓÑÈ»²”É¿šÑÈ¢ÑÇ¡ÐÅžÏÄÎÃœÌÀ˜É½•É¾–ÌÁ™ÎÃœÎÛʿ—÷»¯‡³¨‚²¨ƒ»±‹Ä¸‘¶Ž½±‰¹­†·«„»°‰Ç»“ȼ”ƺ’ȼ”ËÀ˜ÌÁ™È¼”Ç»“Ƚ•Ä¸‘Áµ¿³Œ½±‰¸¬…¯¤¦›xœ‘oŒ‚d|rXjbJWQ=IE4QM>mi\‚~t›˜’ÓÒÐùùøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüûúùùø÷ööóõõòõôòöõóùø÷ûúùüûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýìêæÇĺ´®™ÉÀ£ÜÔ´çàÁéáÃëåÉìåÉäܺâÙµâÙµâÙµâÙµáØ´ßÖ±ÝÔ°ÛÒ°ÔʨÊÁ¸‘·«…­¢}®¢}« |¥šxŸ”rš‘p˜o“Šj’‰i—Žn–m’ˆhŒcŒ‚c„fŽ„e’ˆh˜o›“r¢˜vªž{¬ {®£}´©‚·¬†º°‰Ã¸É¾—ËÀ™Ç¼•Ç¼”ɾ—Æ»”¾´µª…¯¤€¥šx•‹jŠ€aw\umTmgTrm^}zn›•´³°ÝÝÜ÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúúïïîÖÖÔ¥¤ xvp`^WROFIF<fd]ÁÀ¾íìì÷÷öüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóï¹²šÃº˜ÐÅ ÐÅŸÍ›ËÀ˜ÎÃœÎÛÌÁ™ÎšÐÆžÑÆŸÊ¿˜Â·À´Œº®†´¨‚³©„¶«†¹­ˆ¸­ˆ¸®‡»¯ˆ»¯ˆÀ´É¾–ËÀ˜Ê¿—Ƚ•È½•È½•Å¹‘Ç»“Ê¿—ɾ–ƺ’÷½±‰·«…³§« {¢–t—lŠ€aypUe]ETN;SN>b]Ppl_}t£¡œÜÜÚýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýüüüüûüûûüûûüüûýýüýýýþþþÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøø÷Î˳¬”À¸™ÜÕ·æàÆíçÎïéÑïéÐîèÍëäÇäÛ¹âÙµáØ´ßÖ²ÞÕ°ÛÒ®ÖͧÍÃĹ”·­Š­¤ªŸ{¡–s—Œk“ˆh‡}_zqVvmSwnTypUtlRtkR{rW|sXzqVsjQriPtkQxpU|sWwZ…{^ƒd”Šj—Œkšm¢—t§y®¤€¾³Ç¼•ËÀšÌÁ›ÌÁšÌšƻ“¿³Œ¼±Šº¯‰³¨„¤™v—Œlƒdƒz\wnTqiSrl[}ymŠ‡~¨¦¡ÓÒÑÛÚÚñññþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþüüüúúúø÷÷êêéËËÉ®­«|zvPMFQNE‡…êêêøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷õÆÁ¯Ã»ÐÆ¢ÒÇ¢ÏÄžÌÁ›ÎÃœÐÅÏÛÏÅÏÄÌÁ™ÀµŽº®‡¾²‹½±Šº®‡¹­†²§« |¬¢~³©„º¯ˆ½±‰À´ŒÇ»“ËÀ˜ÍÁ™É½•Å¹‘÷ĸƺ’Ǽ”ȼ”ȼ”Ź’¿³‹¹­†¶ª„¯£~¥šw •r—l‰€btlR`YCWQ?VQBb]Psod‚w©§¢ççæþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþýþþýþþþÿþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¿º©¶®’ú˜ÒɤâÙ·ëåÉðêÑñìÕñìÔðêÒìæÊäܺâÙµßÖ²Ö̦ÎÃȽ—À¶’²¨…¢˜v™n’ˆiŠc„z^|sWofNd\F]VA\T?YR>VO;SL9UO;^VA`YC_XB]U@\T@\U@_XBd]FkcKskQ{rW~uYvZ„z]…e•‹k”r¯¥º¯‰¾³ŒÀµÅº“Ƚ•Ä¸¾²‹¿³‹¿³Œ¼°‰²¦¥švšn“ˆh‰~aw\woWrkXsn_xui”’Œ¡ŸœÅÅÄòòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüûûûúúúùùùôôôÍÍ̆…‚trmÎÎËôôôúúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøÍɼü ÑǤÖ̧Õ̦ÓÉ£ÑÇ ÐÅžÏÅÒÇ ÏĜǻ“¿³‹½±ŠÃ·Ã·¿³Œ³¨‚ªŸ{§œx« |°¥€²¨ƒµª„º®‡Â¶ŽÉ¾–Íšɽ•Ä¸À´Œ¿³‹À´Ã·Æº’ȼ”ƺ’¿³Œ¹­†·«…´¨‚¯£~©x¡•r“‰i~uYjbJ]WBVP?ZTEidXsod€}uÂÁ¾øø÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýëêç»·©À·˜ÓɤÛÓ®ÜÒ­áÙ·ëäÈîèÏïéÑïéÐìçÌæàÂÜÓ°Ô˦̾³Ž³§‚©Ÿ{œ’rŠ‚e}tXtkQldKc\E_WBYQ=IC2A<-@;,C>.@;,;6(83&:5(@<-D>/E?0E@0GA1IC2JD3PJ7YS>bZDf^Gg_HiaJqiOvY„{]‰€b™o¢˜u¦›w«Ÿ{°¥€´©„µª…¸¬†¼°ˆ¿³‹À´Œ¾³Œ·¬†¯¤¥šw›n†f„{^ypVskUtn[ytg„w•“ÃÂÀìëëúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýýüüüûûûøøøøøøýýýüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþìëçÅÀ¬Å½ÑÇ£ÓɤÒÉ£ÑÇ ÑÇŸÒÈ¡ÓÉ¢ÐŞɽ–Ź‘Ź‘ɽ•É½•Á¶Ž­¢~¢—t¤˜u®¢}´©ƒ³¨ƒ´©ƒ¸¬…¿³‹Ä¸‘Ǽ”ȼ•Ç¼”ź’À´À´ŒÃ·Æº’ĸ‘¾²Œ½±Š½²Š¾³‹½±Š¹­†°¤~§œy›‘pˆ`tkQd]FZT@YSCc^PidWqla“‘‹ßÞÞûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÝÜØÅÁ±ÌŧÙЭÝÔ°ÞÕ±à׳æÞ¾ëåÊëåÉêãÆèâÄâÚº×ϫɾ˜¸®‰¨ž|’q•ŠjŠbvnSf^G_XBRK8FA0B=-=8*62&.* )&(%-*0,!.* +')&+(.+ 1-"2."62%;6(<7(B=-JD3OI6QK8SL9YR>e]FvmSyoUypUƒz]Œ‚c‘†f–Œk™Žm™Žm •s« |µª„¾²‹Ã·Ä¹’÷‘½²‹´¨‚¨yž”q–‹jŒc„{_~v]xq\rm]pl`‰‡±±¯ááà÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõôòØÕÊÇÁªÉ¿Íœ̛ÏÄÔÊ£ÖͧÔʤÓÈ¡ÓÈ¡ÎÛËÀ˜Í›ÍÁšÄ¹’¯¤€£˜u£—t²¦½²Š¾³‹¿³Œ¿´ŒÀ´Œ½²Š½±ŠÄ¸‘Ë¿˜ÎÜʿ—Ç»”Ǽ”ȼ”¿³Œ³§‚º¯‰Æº“ɾ–ƺ’¾²‹´¨‚«¡}¡˜w”Šj|sWh`I_XBZTAZTEa\MjeXqndž—ßÞÝúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÍɼ¼·£ÍƬàظâÚ·ãÚ¸äÜ»æÞ¾åݽâÛºáØ·ß×´ÝÕ²Óɥø“­¢~™nˆ~a|sXsjQh`IXQ=JD3D?/95(1-!-)*&%" !&#'$*'/,!84'@;,D?/IC2TM9g_HnfMqhOqiOvnS~uX…{^‹b…e—Œk¡–t« |´©ƒ»¯ˆ¿´Œ¿³½±‹¹­†´©ƒ®£¦›w›‘o’ˆhˆ~`|sXpiRjdRql`…ƒ{¦¤¡ÞÝÝ÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷õßÝÔÕϿǾœÎÃÎÂœÑÆŸÕÌ¥ÙЪÙЫÛÑ«ÜÒ¬ÙϪÖ̦Õ˦Õ̦ÐÆ¡¿´Ž³¨‚±¥€·«„À´Ç»“Ƚ•Ç»“ø»¯ˆ¶ªƒº®ˆÂ¶Ê¾—ÎÛÎÃœÌÀ™É¾–ÁµŽ¹­‡¿³ŒÉ½•ÍšÌÀ˜Æº’¼°‰°¥€¥›x’p‰aulRjbJ`YDXR@[VFf`QfaVrofš˜“ÚÚÙÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÜÚÕ´¯¹±”×ήäܼçß¿åݼåݼåÞ¾ãÛ»ÞÔ²ØΩÔÊ£ÏŞƼ—·­ˆ¤™v‹‚bxoTg_HZS?OI7F@0:6(1-",)'%"$*///8BDCBBCEE=5%$<1/@63<739=98OI:ZS?_WB_WBd]FnfMwnSx[Š€aŽ„d”‰iž“q¦šw­¡|´©ƒ¶«„·«„¸¬…º®‡º®ˆ³§‚©žz •r—kŽ„d‚y]xpXrkWmhYli` Ÿ›×ÖÖñññüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüíìèÙÖÉÀ¸šÌžÑÆ¡ÔÉ£×ΨÚÒ¬ÞÕ°ßÖ²à׳áÙ¶áÙ¶ß×´àصÝÔ±Íݦ½±Š»¯ˆÂ¶ÌÀ™ÏÅÎÛɽ•¿³Œ·«…·«…¼°‰Å¹’ÐÅžÒÈ Í›˿—Ç»“ĸƺ’ʾ–͚͚ɾ–··«…¬ |¥šw—Œl†|^xoTg_IYS@ZTDc]N`[Mb]Rwtm®®«ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÛØа¨ŽËĨàÚ¿çàÃçß¿åݼèàÁäݼÜÔ°ÐÆ¢ÌÂœÎÄǼ•´©„œ’q‰€bypUg_HUO:C>.51%+($" (G^!%p$‰°Ì$Ï"*Ï#,Ï&Ï$Ï#Ïͱ’"”$)'*v#&i#%W/.:410:62HC;TNB^XGiaKwnTwZ~tXw[Ž„e—Œkž”q¨Ÿ{®£~±¥µ©ƒ¶ª„µªƒ·¬†µª„¯¤§œxŸ”q“‰h†|_ypVleNa[Kd`U‹†ÅÅÄëëëüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùèçáÐ˺À¸›ÏÅ¡ÓÉ£ØΨÜÓ®ÝÔ°ÜÔ¯ÝÕ±ãÛºèàÁçàÁçàÁãÚºÏ𶽱‰½±ŠÄ¹‘ÍšÒÇ ÒÈ ÎÛȽ•Ä¸Ä¸Å¹‘ʾ–ÑÇŸÑÆŸÌÀ˜ËÀ˜ÍšÌÁ™Ê¾—ʾ–Íšɾ–Ź‘ź’¶Ž¹®ˆ¯¤€¤šx˜Žm„z]leL^WBYSAZTD[VGYUH`]T’‘ŽåååüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýÞÜÔ³¬•ÏǪãÛ¿íçÍíçÍêãÆèàÁéâÄåÞ½ÛÓ°ÌĤ¿¶–µ«ˆ¥›y†g{rVkcK[U@HB273')&
+  $?W$o%,†'0ž-7®1<»-9Ì$-Ñ"Ñå"ù$-ú(3û)5û&1û#,û (û$ù$ç'Ñ"+Ñ(1Ë+5»)3²)3¥2:Ž05x-/i00f54^=;PJEA^WApgNxoT€vZ‰`‘†f˜lŸ•s¢˜u¦›w­£~°¦€±¦€¶ª„¹­†·¬…°¤€¨yž“q’ˆh‡}_zqWnfOc]K`\P‡†ÎÍÍôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüðïìÛ×Í¿¹¡ÍàÓÉ£ÖͦÚЫÜÓ®ÞÕ±ßÖ²ãÛ¹åݽãÜ»ãÛºÞÖ³ÎÃĸ‘ÁµÀ´ŒÄ¹‘Ë¿—ÐÅÑÇŸÏÄœËÀ˜È¼”ȼ”ËÀ˜ÏÄœÑÇŸÐÅÌÀ˜É¾–ËÀ™ÐÅÍÁšÊ¾–Íšɾ–ź’Ç»“ƺ’¶¹®ˆ°¥€¦›w‘‡gzqUjaI^WCXRAXSCVRDTQFge_§¦¤èèèÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÚÙÔ¹³ÑɪåßÄêãÇêãÇíæÌìæÊêãÅçàÂâÙ¹Øϭž£«¤‹“Šm~uZjcK[T@OI7A<.*'
+
+$ 4X!ƒ+4­4@Ï9Hç?PîCTðCTò<Mõ/<õ"*õ"÷%ú(2û+6û+7û*5û%/û!)û (û#-ø(3õ+7õ0=ô5Dò7Fñ:Jï@Pè9FÑ-5¶#¦‘ v**R?<BTOIhaOypU‚x[‹b’‡g’ˆh”Šišn¥›x¬¢~°¥´¨‚¹­†¹­†³¨ƒ­£§yž“q“ˆg…|_ypVkbKZTAYUJ‡†‚ÆÆÅóóôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýõôòäâÛËűǾžÒɤ×ͧØΨÝÓ¯áØ´âÙµâÙ¶áØ´ÜÔ¯ÛÒ®ØÏ©ÎÜɽ•Æº’¶ŽÃ·Ç»“Ë¿—ÍšÎÛÌÁ™Ê¾–ʾ–ÍšÐÅžÏĜΚËÀ˜Æº’ɽ•Ðƞ͛ʾ–ÌÁ™Ê¿—ȼ”ɽ•É½•Ç»”÷»¯ˆ²¦€ •rŠ€bwnTf_HZTAXRBUPBNJ>OLCwupÌÌËþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúØ×Ñ»¸«ÔιæàÅêâÆäݽáÙ·åݼèàÂçàÁÝÔ²ÒÇ¢Á¶’¥›}…}cngO^WBLF584'+(
+
+ "
+D dŒ²È$-Ø9Hç@QóBTûEXüJ]üM`üFYü5Dü$.û&û!*û)4û+7û+7û*6û&0û!*û (û$.û+7û1?ü6Eü8Iü=OüBUüDVû=Nó1=é$âÚÊ#¥$(|*,a:7HRLBmeQ{qXvZ}sX…{^’ˆgŸ•s©žz°¥º¯‡¼°‰´©‚®£~«¡}«¡|¦›x“p†f‚y[sjPaYDNI;SPHƒ‚ÔÔÔðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüòñïáÞÔÁ»¦ÉÁ¡×ͨØЪÝÔ¯âÙ´âÙµâÙµßÖ²ÙЩ×ΧÖͦÓȡΛȼ”÷ÁµÂ¶ŽÃ¸È¼”ÍšÎÛÍšÌÁ™É¾–Ǽ”Ƚ•Ç»“Ź‘ź’ʾ–ÏÄœÌÀ™È½•É¾–ɽ•É½•ÌÀ˜ÍšÌÁ™É½•Ã·»¯ˆ®¢}œ‘o…|^meM\VBWQ?RM=LG:IE:`^W´³±öööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ×ÕÍ»¶¤ÖÒ½åàÇèáÃãÚ¹ÝÔ°ÛÒ­áسåܺáØ·Ì´ª…›‘p~uYaZCMG5>:+-*  (
+= g•´Õñ ù%.û:IüBUüFYüJ^üOcüQeüJ]ü9Hü(3û (û!)û)3û+7û+7û+6û(3û$-û'û"+û+7û3Bü8Hü9Jü?QüFYüH[ü=Mü,7û#úùó"Þ&À&¦$(Ž22zEBmQLU\VDneMuYŽ„d—k¡–s«Ÿ{³¨‚²§¨y¦›w©y®¢}®£~¨y™m‰ayoTg`HRL:D@5JGBœ›šÜÜÛýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøøöîìçÀ½°Å¾¡ØÏ«ÚѬÞÕ°ßײßײßÖ²ÝÔ¯ÙЪØϨÖͦÒÇ ÍÁšÈ¼”÷À´ŒÁµÄ¸Ç»“ɽ•ÌÁ™ÎÛÌÀ˜Æ»“¶ŽÃ·Ä¸Ä¸Æº’ËÀ˜ÐÅÌÁ™È¼•È¼”ȼ”ɽ•ÍšÏÄœÏÄœÎÛʾ—¶·«…¦švŒƒdwnTf^HYS?QK:LG8HD6PMD€{ÎÎÍúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿéèä·±ŸÕÏ´èâÈèáÅãÚ¸ÝÔ±ÚÑ«ÙЪÛÒ­ÚÑ­ÑÇ£´©…“‰iulR\U@D?/2.#"   < eŠ¸ßìò÷ù'ú3Aû>PüGYüOcüSgüRfüK_ü=Mü-9û (ú%ú(3û+7û+7û+7û*6û'2û&ú!)ú+6û3Bü9Iü;LüASüI\üK^ü9Hü$-û úùø&õ%.ð(3ë%.ç!'Ð #£&&n84J[UOskWƒz^Œ‚c–Œj •s¥™v£˜u •r£˜t©žz²§µª„°¥Ÿ”rŽ„e~uYmdLWP=F@3EB9pnjº¹¸êêêûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùðïìÊǼž£ØÏ«ÚѬÝÔ¯ÝÕ°ÜÓ®ÛÓ®ÛÓ¯ÜÓ¯ÜÓ®ØÏ©ÎÜɽ•Æº’÷ÁµÁµÆ»“Ƚ•Å¹‘ɾ–ΚËÀ˜Æº’ÁµÂ¶ŽÄ¸Æº’ȼ”ËÀ˜ÐŞ͚ɽ•Ç»“Ç»“ɽ•ÍÁ™ÏÛÐÅÒÇ ÎÜŹ‘»¯‰©žy…ewZsjQaZDTN;MH8HD6EA7WUNŒðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿíìèÍʾĿ©âÜÀëåÉêãÆèáÂæßÁâÙ¸ÙϪʿ™¼±¬¡†gskQZS?E?0.*   W»Ñåõùùùù$ú,9û:JüFYüPdüThüSgüPdüDVü4Bû",ú%ú(2ú+7û+7û+7û+7û)4û!*û#,û+7û3Bü:Kü@RüI[üMaüH[ü5Cü!*úúù%ú$-û,8û0=ü(3û%ñÚÀ!#ž22kKGRe^LzrV‹b”Šišm¡–sªžz¬ |¬¡}®¥€°§‚®¤£™v˜Žm‰€aumS^WBNH7IE7XUMxws²²±çççþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüõôòâàÙÁº¡ËßÖ̧ÚѬÛÓ®ÚÒ®ÚÒ­ÝÕ±ãÛºâÚ¸ÜÒ­Í›ƺ’ĸĸ÷¶ŽÃ·Å¹‘ƺ’Ê¿—ÏÄœÐŞɾ–÷÷ĸĸƺ’ȼ•È½•Ê¿—ʾ–Ź‘Ź‘ȼ”Ê¿—ÍÁ™ÏÄœÐƞʿ—À´Œº®‡­¡|—ŒkŠ€a}sWhaIXR>OJ9HC5?;0EB:mlgççæþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöõôÏÌÂÅÀ«ÙÖ¾éæÎëåÉêãÄéâÄêãÅäÜ»ÓÉ¥¶«†’p„z]g_HPI7<7*)%  ! Am®Úôùùùùùùù!ú&0ú6EüFXüPdüThüUiüVküL_ü9Hü&0û (ú)4û-:û.<û,8û+7û)4û$-û%.û,8û6Eü@QüFXüMaüPdüEWü1>û&úù!ú"*û+6û1?û1>ü(3û%úúùæ©%'|<9\VPKqiO…|^’‡gž“qªžz°¤~±¦€­£¬¢«¡}§›x¢˜u—mƒz]ldK[T?QK9KF:KIAhgb¨¨¦ñññýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùòòïÌǺ»³—ÑȤÙЪÜÔ¯ÝÕ°ß׳âÛºéáÂæÞ¾ßÖ²ÑǠƺ“À´Ä¸‘Ź‘ÁµÀ´ŒÂ¶ŽÅ¹‘Ê¿—ÐÅÔÊ¢ÐÅɾ–ȼ”Ź‘¶ŽÃ·Â¶Ž¿³ŒÂ·Åº’ĸŹ‘ɽ•Í›ÏÄÏĜ͚ƺ’½±Š¶«…¬¢}Ÿ”q”‰h…{]qhO`XCSM;GB4@;.@<2XVO¸·¶ïïîýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÚÒÁ¼©ÔϸååÓêé×êåÊçß¿äÛ¸áÙ¶ÙЬǽ˜§z‰€bkcKJD33/#! ) [ž"Ö%ê&ô%ù úùùùùùùù!*ú2@üDWüQeüUiüVküZoüPcü;Kü)5û#,û)4û0>ü3Bü-:û+7û)5û%.û&0û.;û;KüDWüH[üOcüPdüDVü.:ú"ùù#ú#-û/<ü3Aü-8û%.û$úùùõäÀ!#20ZRLMrk[ˆ~d–‹jž“qªŸz³§±¥€°¥¯¤~ªŸz§œy –t‡f|sWkcK[T?NH8KG:YWMxvp³³²æææüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüûûõõóâàÙ¶°šÒɧÛÒ®ÞÕ±à׳äÛºèàÁêâÄæÞ¾ßÖ²ÕˤǼ•½±ŠÂ¶ŽÅ¹‘¶ŽÁ¶ŽÁ¶ŽÃ·É½•ÐÅÔÉ¢ÔÊ¢ÑÇŸËÀ˜Æº’¶ŽÁµ¾²Šº®‡º®‡¿³‹Å¹‘ȼ”Ë¿˜ÑÇ¡ÓÈ¢ÏĜ˿—ĸ¼±Š³©ƒ©Ÿ|¢—t—l‰avmRf_GWQ=JD5@;.=8.HG?‰ˆ„ÎÎÌøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿãâÞÊƵÏÊ´ßÛÂëèÓìèÓêäÈæÞ½àØ´ÚÒ­É¿›°¥‚‘‡hphOOH60,!  8t­#Û '÷ (û (û'û$û#ú"úùùùùù#ú,8û@QüSgüZoüZpü\rüSgü@Qü-9û"+û%/û/<ü5Cü-:û+7û*6û(3û+7û4Bü>OüH[üMaüUiüRgü@Qü*5ú!ù"ú!)û(3û2@ü3Bü+6û"*û ùùùù÷ç"Í$(­55ŠLJole`Š€b›‘o¦›w®¢}´¨·«„¸¬…µªƒ°¥€¨žz›‘pŠ€byqUiaIZS?TN=UPC[WNrqm©¨§êêêþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü÷öõèçâ·²ÏÇ¥ÚѬÞÕ°à׳áÙ¶ãÜ»èáÃäݼÜÓ®ÑƟ·¸¬†¾²ŠÄ¸Å¹‘Ç»“Ǽ”ƺ’Ê¿—ÏÄœÑÇŸÒÇ ÑÆŸÍšɽ•Å¹‘¶Ž¼°ˆ¶ªƒ¹­†¿³ŒÆº“ʾ–ÌÀ™ËÁšÏÄÐŞɽ•¿³‹¶«„­¢~¤šwž“p•Ši‰`ypUkdK\V@MG6A<.95*><4nmg¸¸¶óóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðïíËȼÏʲÞØ¿çáÉìçÎëäÉçßÁäܹÛÒ®Ìß²¨…’ˆiqiPPJ81-"
+  K…!Â&ë (ù'û&û&û'û&û&û&ú úùùùùù&0ú:JüThü^tü^tüawüYnüGZü0=û"+û$.û.;ü5Dü0=û,7û)4û*6û0=û8Hü@RüJ^üTiüZpüThü:Jü&0ú!ú&ú&0û.;û5Dü1?ü&0ú$ùùùùùù!ù'÷ (ó#*Ð/2œJHrpia…jŸ•sªŸ{³§·¬…¹®ˆº¯ˆ·«„¯£§›x™ŽmŠ€bzrVibJ^XBVO>NI<RPHrqn§§¦ëëëüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúòñîÄ¿°Ã»Ǫ̃ÝÔ°ßÖ²ß×´áÚ¸æÞ¾àصÖ̦ʾ—¿´Œº®‡¿³‹Å¹‘Ç»“Ƚ•É¾–ËÀ˜ÌÁ™ÍšÌÀ˜ÌÁ™ÍšÍš˿—Ǽ”ĸ½±‰¶ªƒ»¯ˆÂ¶ŽÆº’ɾ–ËÀ˜Ç¼”Ê¿—Í›ǻ“½±Šµ©ƒ­¡|¥šv“q•ŠjŠbzqWogNaZCQK8B=.95*=:2gf`­¬ªæææúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷öõÓÐÄÆÀ«áÜÄéåÎëæÎìæËæÞ¿ßÖ´ÝÔ±ÐÆ¡µª†—lskQLG5/,!
+ 
+
+`"¼#,à%.ï!*ø (û&û!ú#ú&û"ú#ú&û!úùùùùù"*ú3AûQeü^tü`vüh}ücwüPcü5Bû$.û)4û1?ü7Gü6Eü-9ü&0û)4û1>û9IüASüNaüYoü]süRfü4Aû"*ú ú'ú*6û4Cü7Gü-9û%úùùùùùù#ú (û!*ú$.ò*3Ù.3¢GEpnha‡k¦œz¯£~¯¥€¯¥±¦€´¨‚µ©‚¯£~¦œyœ’q‹‚dzrVjbK[T@PK:OK>XVNtsq­­­÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýø÷÷ÞÜÔ¸±˜ÏƤÝÔ°áØ´äÜ»åÞ¾ãÛ¸ÛÒ­ÑǠǼ”ĸŹ‘ƺ’Ç»“ȼ”·Ĺ‘ÎÜΛȼ”Ź‘ƺ’ɽ•É½•È½•È¼”ƺ’ÁµŽ¼°‰À´ŒÅ¹‘÷ƺ’ɽ•Ë¿˜È¼•Ä¹‘ƺ’÷½±Šµ©‚­¢}¦zž“q†g}tYqhOe^FUO;C>.62':7.ca[šÑÑÏîîîýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûú×ÕËÌƳÕϸçâËëæÏëæÌëäÈãÛ»ØÏ«ÎÄŸ¹®Šœ‘o|sWXR=1-" 
+ ] '³%/ì)4û(2û"+û (û'û$û%û'û$û%û'û$û ùùùùù&ú.9ûM_ü]rüdyük€üi}üZmü=Kû)3û,8û5Dü<Mü8Hü/=ü(3û*5û3Aû>PüHZüSgü\qü^tüPcü/:û&ú!ú#,ú.:û6Fü8Hü,8û"úùùùùù"ú )û%/û&0û(3û)4ó%-Ó/2ŸJHqoie‘‰l§žz«¢ª¡~ªŸ|°¤¶ª„µ©‚®£~¦›x˜Žl†|^rjQb[EVQ=PJ;KH=TQL~}ÚÚÚùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúùùêè侺©ÈÁ¢ÝÕ±ãÛ»åݽäܺâÙµÝÔ¯×ͨÐÆ ÎÄÎÜ˿—Ë¿—Íšɽ–Ǽ”ÌÁšËÀ˜È¼”Ź‘ƺ’ȼ”ȼ”ȼ”Ç»“Ź‘ĸĸ‘ĸĸŹ‘ȼ”Ê¿—ȼ”·¿³‹Ä¸Ç»“÷»¯‡²§ª¡~ –t”Ši†|^yoTjcJYR=E@/62&53*[YSŒ‹‡··´ääãûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêêçÉIJÓ̵àÚÂêäËìåËëåÉëäÈâÛ»ÓÉ£½²Œž“q€vZ`XB>9*  D!(«*5ò*6ù+7û(3û$-û"+û!*û (û (û (û (û (û (û (û$ûùùùù"ú)3ûGXü\püh|ünƒüm‚übvüETû-9û,8û7Gü@Rü9Jü2@ü,8û+7û5DûCVüObüYnü_tü^tüM`ü*4û"ú$ú(3û2@û6Fü5Dü)4û!úùùùù ú )û&0û*5û*6û*5û(2ú#-ö#)Ñ-0—KIpqkc–Žq¦{«¢~ªŸ{¯£~¶ªƒº®‡·¬…®£¢—t…f{rVlcL_WBQK:GC5EA9\ZWžžäääûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüûôôòÉƼ¿ºŸÜÔ²åÝ¿åݾãÛ¹ãÛ¸ãÚ¶ßÖ²ÙЫ×ΨÕˤÍšÌÀ™ÑÆŸÐÅÌÁ™È¼”Ç»“Ç»“ȼ”Ƚ•È¼”Ç»“ƺ’ƺ’ĸƻ“ɾ–Ź‘ÁµÅ¹‘ʾ–Ê¿—ø¾²Š½±ŠÄ¸‘Ƚ•Æº’À´·¬†®¤€¥šwšnŒ‚cvZphN^VAHC295(63*TRK|{u  œÚÚØ÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøÍÊÂÌdzáÝÆéãÍèáÆêãÆíçÍíçÍâÚ»ËÁœ­£„{]]VA=8*"
+ =j!™&/×+7û+7û+7û+7û)4û(4û'1û"+û!)û )û (û (û (û (û'û%û úùù"ú&0û@PüXlüküt‰üt‰üi}üM^ü1?ü(3û4CüASü:Kü2@ü,9û,8û6EûFXüTiüawüg|ü_tüGXû%-ú#ú#,û0>û7Fü5Dü+7û'ûùùùù"ú )û'1û*6û+7û+7û(3û$-û!*û (ò#)Ø,/£DCrqjc–Œn®¤³¨‚³§¶ªƒÂ·Å¹’º¯‰­£›’q†}_wnTjbIXR=LG6E@4GD<cb^¢¢¢èèèýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýûûú×ÕϽ¸¢ÚÓ³äݽçßÀèàÁèàÁæݼà׳×ͦØΧÚЫÐÄɽ•ËÀ˜ÍšËÀ˜Ä¹‘÷Ź‘ËÀ˜Ë¿—Ç»“ĸ¶ŽÃ·È¼”Ê¿—ȼ”Áµ½±‰ÁµÅ¹‘Ç»“¶ŽÀ´ŒÁµÈ¼”Ë¿—Ƚ•Æº’Àµ·¬†³§§œy‹cvZwnTd\FPJ7@<,84)FC<hf`‹‡ÈÇÆëëëùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøø÷Ù×ÑÈijÚÕ¿èâÊêåÌéáÄêâÅëåÉæßÁÕÍ«º±–Œmh`IA=.$"  |¶'Ó'2í+7û,8û.<û/<û,8û+7û*5û&1û%/û$.û"*û (û (û (û (û'û$û úùù"*ú9GüTgülüwüzüq†üUhü6Eü(3û4BüBTü?Pü5Dü.:û0=û<LüL_üZoüh}ülüZnü>Nû$,ú (û)4û7Gü;Lü4Cü%/û ùùùù"ú )û&0û*6û.;û/=û,9û)4û%/û"+û (û 'ô%Ò*,¢KHquniœ’s±¦€¸¬…»¯ˆÇ¼”Ƚ•¼±Š°¥Ÿ•sŽ„e€v[rjO`YCSM:IC3A=2FC=a`^«««õõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüâáÞ»¶¥ÕÍ­äܼèáÃéáÄçßÀæÞ¾äÛºÛÒ­ØΨ×̦ÎÜɽ•Ë¿—ÌÀ˜Ê¿—ȼ•É½–ËÀ˜ÎÛÌÀ˜Ç»“¶ŽÁµÄ¸Æ»“ź’ÁµŽ¾²Š½±‰¿³ŒÀ´ÁµŽÃ·Â¶ŽÂ¶ŽÅº’ȼ”ȼ”ʾ–Ç»“¾²Š¸¬…ªŸ{Œ‚bwZzqUkcKWQ<E@084(<:1USMywr¨§¤ØØØõôôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþåäàÇ´×ѺäßÉêæÏìæÍêãÇêãÅæÞ¿×Ϋ¿µ’ ˜wxpVKE5+( ?¸ î (ô&0ù*5û,8û0?ü2Aü.;û-:û,9û+6û*6û(3û#,û (û (û!*û!*û (û'û$úùù$ú0=ûO`ül€üzü€–üyü]rü=Mü*6û4CüCUüCUü9Iü1>û5DüCTüTgübvüoƒüp…üUgü5Cü%.û&0û0=û?Pü>Oü2@û!*úùùù!ú )û&0û*6û-9û1>û2Aü,9û)4û'2û#,û'û&ù!ó!Õ+-˜PMu|ti¤™y·«„¾³‹Ç¼”Æ»“¼°‰²§¥šw–Œk‰`zrViaJ[S?MG6B=/:7.EC?utsÞÞÞúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýìëé¾®ÍÄ¥áÙ¹çßÁçàÁäÜ»æÞ¾èàÁáصÙÏ©ÑÇŸË¿—ɾ–ÍÁ™Ë¿—ʾ–ÍšÐÆžÒÇ ÏÅÌÀ˜È¼”ĸŹ‘ƺ’ø¿³Œ¼°‰¼°ˆ½±‰½±Š½±Š¾²‹Ã·Ã·ÁµÂ¶ŽÄ¸Ç»“Ê¿—ɾ–ÁµŽº®‡¬¡|“ˆh‡}_vYqiO^VAJE3;6*:6,LJBjibŽˆÂÂÀñððýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöõôÎÌÁÈîãàËéêÛîíÞñíÚíæËèàÁÝÔ³À¶“Ÿ•tv\XQ>1-"
+
+  
+:×!ú 'û"+û&1û*6û-:û0>û3Bü4Cü2Aü-9û+7û)5û$-û (û!*û%.û%/û!*û (û%úúù ú&0ûFVûj~ü{üƒ™ü•ügzüEWü0=û7FüDVüDWü=Nü6Fü8HüGYü[oüjüvŒüt‰üQcû/:û$.û*6û8GüGYü>Mü)3û#úùù!ú )û'1û*5û,9û2@ü2@ü-:û'1û$-û#,û!*û%û úùï"Ò34¡VSvˆ€o¨y¸­†Á¶ŽÄ¸Ã·Â·º¯‰¨œx–Œk„{^qiOaYCTM9GA1:6*;:4dc`ÅÅÄìììþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþüüüÈĵĻœÙЮàضáÙ·âÚ·æÞ¾çßÁÞÕ±×ͧÒȠɽ•Ç¼”ÌÁ™Ë¿—Ê¿—ÎÛÐÅžÐÆžÏÄœÌÀ˜É½•É¾–ɾ–Ç»“÷¿³Œ½±‰¹­†µ©ƒ¶ª„¼°‰Áµ¿³‹¾²‹ÁµÃ·Ä¸Ä¸Ç»“ɽ•Æº’À´·«…§œxšm‰€aqiP^V@NH6@;,:6+FC;_\U~yµ´²êêêùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøÒÐÈÁ¼©ÙÔ¿ìêØîïåððåóïÝîçÏãÜÀÎǪ©Ÿ€‚y]aZD<8*
+
+=€Áëù#ú&û"+û&0û)5û-:û2@ü6Eü6Fü2?û0>û.;û(2û#,û"+û'1û'2û"+û"+û"+û#úùú!(ú>Kûbvü{‘ü‰Ÿü‡›üq†üQcü6Dû<LüH[üFXü?Pü:Jü<NüM`ücxüs‰üzüq†üKZû)4û'1û1>ü>PüH[ü8Fû!)úùù!ú%û%.û.:û0>û2?û6Eü2@ü*6û#,û (û (û (û$úúùùô $Ò66 e_i‘‡g°¤¼°‰Ä¸É¾–ÌÀ˜Æº“·¬…¦œx’‰izqVh`HZR=KF4=9*85,KJF~ÕÕÕøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ¾°Å½ŸÜÓ³âÙ¹âÛºãÚ¸ãÛ¹ãÛ»à×´ÝÓ¯ØΨÍ›Ƚ•ËÀ˜ËÀ˜ÌÁ™ÎÛΚÌÁ™ÌÁ™Ê¿—ʾ–ÍÁ™ËÀ˜Å¹‘À´Œ¼°ˆº®‡¸¬…¶ª„·«„º®‡½±Š¼°‰¿³‹Ã·Æº’Ç»“Ç»“Ë¿—ÌÁšÊ¿—Ź‘¿³‹·«„ªžz•ŠjvmSbZDTN;E@0;6*?<2ROIpni¥¤¡ÙÙ×òòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþåä༸©ÚÕÀéæÓòðáôòæóðßðìÕìæÍÛÕ½¾¸ ˜spgNMG6*( 
+.‚Á"ê÷ú ú%û!)û"+û&0û*6û-:û3Aü7Gü7Fü7Fü5Dü.;û'2û$-û&1û'1û$-û&0û'1û )û!úù'ú7DûXküzüŽ¥üŒ¢ü}’ü\oü9Gû@PüNaüI[ü@Rü;LüBTüVjülü{ü{’üj~üCRû'1û-8û9IüCVüBTü1=û#ùù ú&ú!*û(3û4Bü7Fü7Fü6Eü0>ü)4û#,û (û (û'û#úùùùø ò&*ÎGDswp`¥™x¸¬†Ä¹‘ÌÀ˜ÌÁ™Ç¼”¿³Œ³©„ —u„{^phO_WBNH5@:,62(640[ZY´´³÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ½¹¬É¨ãÛ¿éâÄéãÅåݽàضß×´ãÛºâÚ¸ÝÓ¯ÓÈ¢ÌÀ˜Ê¾–ËÀ˜ÎšÎÛÌÀ˜É½•É½•È¼”ȼ”ËÀ˜É½•Ã·½±‰·«„´¨‚¸¬…¼°ˆ»¯ˆ¹­†¸­†¾²‹Ä¸Æº’Ƚ•Ë¿—ÍšÑÆŸÒÇ ÎÛǻ“À´Œ¼°‰°¤œ‘o€v[ldK]VALF4<8*:7,HE=`^X‡†ƒºº¸ççæüûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþ÷÷öÕÔËÄÀ¯æãÒñðâõôé÷õêôñàïéÑãܾÌĦ¬¤‡ˆd^WB84(
+
+ Yºç!÷#ú#ú$ú&û (û!)û#+û&1û+7û2@ü7Gü8Hü8Hü7Gü4Cü.;û(2û%/û%/û'1û)4û(3û"*û"úù"ù0<ûPbüxŽü‘§ü’§ü‰ühyü<JûAQüQdüNbüDVü=NüI[ü^rüs‰ü…šü€–üdxü>Lû)4û7FüEWüI[ü:Iû(2û ùù ú!)ú)4û1?ü6Fü8Hü7Fü1?û+6û%.û!*û (û'û#úùùùù#ú (ú%-ä14[Wv„o­¢}·ÍÁšÐŞ͛ź“½²Œ®¤‘‡g{qUg^GUN:E?062&,)#KIG¥¥¥òòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÐÐÊÄ¿«âÜ¿éâÅêãÈéáÃäÜ»ßÖ²ÛÒ®ÚѬÙÏ©ÓÈ¡ÌÁ™É½•É¾–ÌÁ™ÎšËÀ˜È¼”ȼ”ƺ’ĸź’Ǽ”Æ»“¾³‹µ©ƒ²¦€³§¶ªƒ·«„º®‡À´Ç»“ɽ•É½•Ë¿—ΚÏÄœÐÆžÑÆŸÎÛǼ”À´Œ»¯‡¬¡|›‘o‚dzqVg_GQJ8>8+85)@<4QOHnmhœœšÚÚÚûúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüø÷öÜÚÓ¾¹©ÔÑÀîìßôóçôñãòïÝìçÐäÝ¿×Ϊ¼²Ž™nqhOFA1#! 
+Nä ù!ú&û&û%û'û (û (û (û#-û*5û/=û4Cü7Gü:Jü;Mü<Mü7Fü/<û(3û&1û*5û+7û)4û$.û&û ùù(2úEVûs‡ü”©üœ®üš¬üy‰üCRûDVüUjüXlüL_üDUüSfüi~ü”ü¥ü„™ü[oü8Eû,7ûCTüObüJ]ü0<û'úù"ù (ú&0û2@ü:Kü9Iü8Hü6Eü-9û&0û!*û (û&û$úùùù ú"ú'û#-û%/ñ$+Ï?@›keq™w½±‹ÌÁ™ÒÇ ÏĜƺ’¶º¯ˆŸ–s‡~`qhN]U@KE3;6(/+"<:6mmm½¼½øøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÖÕÐÀ»©áÚ¾èáÄêãÅèáÃãÚ¹ÛÒ­ÖÌ¥ÖÌ¥ØΨÔÊ£ÌÁ™Åº’ƺ’Ç»“ź’ĸ÷Ź‘¶Ž¾²Š¾²ŠÂ¶ŽÄ¹‘¿´Œ¸¬…´¨±¥±¥¶ªƒ¾²‹Ç¼”Ë¿—ɾ–Ç»“Ê¿—ÎÛÑÆžÑÇŸÏĜȽ•¿³Œ¸¬†·«„®¢}¢–s™Žm†|^neLUN;@;,73'85+DA9[XT…„‚ÈÈÇöööþýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷öæåàÉƺÒλèåÒòðâóñàïêÒçàÃÞÕ´Õ˧Ì›°¦‚†}_WP<.*  %†Þ#ö%ú%ú&û$ú!ú%û (û (û (û#,û(3û+8û/<û7Fü<NüASüBUü>Pü7Gü/<û+6û+7û+7û*6û)4û%.û'ú ú!)ú9Fûl}ü—©ü¨¹ü«¼üŠ›üO`üM`ü^sücxüWjüM`ü_rüxŒü¢ü›±üƒ™üQdü3Aû1=ûK]üSgüHYû'1úù!ù#+ú*5û.:û9Iü?Qü9Jü7Gü5Cü,8û%/û!)û'û#úùù ú%ú'ú (û!)û"*û"*ù"*î/3¾LK‰‚{y³¨ƒÉ½–ÏĜʾ—À´Áµ¿´«¢~“Šj{sWf^FRL8B<-62&41*GFEzz{íííÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓÑÌÀ»§âÛÀêãÆéâÄäÜ»ÛÒ®Ö̦ØϪÜÔ¯ÝÔ¯ØΧËÀ™À´Ã·Â¶Ž¹­†¸¬…¼°ˆ½±‹¼°‰¹­†¸­†º®‡¼°‰¾²Š¼°ˆ·«…µ©‚¶ª„½±ŠÃ·Ç»“Ƚ•Æº’÷ǻ“ÌÁ™ÑÆŸÒÈ¡Ì›¿³Œ´¨‚¯¤¶ª„¶ªƒ®¢}’p†|_pfNZS>C>/62&1.$85.LKEpom°°¯îîîüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿððîåäÝÌɾÛØÇïìØñîÛñíØîèÏçàÁà×´Õ˦÷‘ž”sogNA;,
+  [³"ô"ú!ú!ú!ú"ú#ú&û (û (û (û"*û%.û(3û-:û6Eü;Kü?PüCUüCUü>Pü7Fü0=û,8û+7û+7û+6û(4û$-ú"ú$ú1<ûbsü•§ü¯ÁüºËü¯üauü[oüi~üp†ücwüXlüo‚üŠü±ü¦¼ü†›üM_ü9Hü@PüXlüTgü?Nû"*úù%ú&0û1>û9Iü@RüASü9Jü4Cü/<û'2û#,û(û#úùù ù$û (û#-û&0û&0û#,û"*û%.ù*3á=B¸ok„¥šxø‘ËÀ˜È¼•Â¶À´Œ¾²‹µ«…¡–t†}_leLXR=KE3>9+1.%/.*YXXÑÑÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÑÐÊÀ¼¨áÚ¿êâÅéâÄáصØϪ×ͧß×´áÙ¶ÝÔ¯ÖÌ¥ÌÀ™Ã¸Â¶¾²Š´¨‚·«„¹­‡³§‚²¦³§²§µ«…¼°‰¿³‹½±‰º®‡½±ŠÂ·Ç»“ƺ’Ź‘Ç»“ĸ¶ŽÅ¹‘Ç»”Ç»”Ƚ–Æ»“¾²‹º®ˆ¹­‡»¯ˆ·¬†­£~šn„{]pgMYR=C=.51$.*!1/(DB=db_ ŸççæüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüãâßáàØÓÑÅÞÛËïêÕîéÒðêÒïéÐêãÆâÙ¸ÒȤ²§ƒ†}`WP<.*  ;˜ ×%ø úúúú#ú'û (û (û (û (û (û!*û%.û*6û3Bü7Fü:KüBTüFYüFYüASü8Hü0=û,9û,8û-:û-:û*6û (ú%ú,6ûXiü¤ü·ÊüÉÛü±ÃüwŒüküu‹ü~”üp…üfzü€”ü°ü®Àü±Äü†™üJ[üDUüUiüdxüQcü3Aû (ú$ú#-û,8û9IûDVüDWü>Pü6Fü/<û(3û"+û'û%ú!úú ú&û"+û#,û&0û(3û)5û'1û%/û+6û/<ø;Eà]^–’‰uº¯‹Ç»“ȼ”ȼ”÷¿´Œ¿³Œ¯£”ŠjvmSaYCSM9E?03/$,)"DB@³²²îîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÝÜÙ½¹¨ßÙ¼èàÂèáÃáØ·ÜÒ­ÜÒ®åÞ¾ãÜ»ÚÒ®ÓÉ¢ÌÀ™Æ»“ĸ‘¾²‹´¨‚¶ª„·¬…¬¡|«Ÿ{­¢}­£~³¨ƒº¯ˆ¾²Š¾²Š¿³ŒÄ¹’Ê¿—ÌÁ™Ç¼”ĸȼ”ƺ’÷Ź‘ÁµŽ¼°‰¿³ŒÂ·Ã·Ä¸Ã·¾²‹µ«…¨Ÿ|˜Žmƒz]ogMTM9@;+50$,(-*#<:5ZYU“’‘ääãúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööôØ×ÑÖÒÄØÒ»çáÈîèÐïéÐïêÑíçÍæßÁÕÌ©»°Œ“‰ijbJ@;,
+ 
+
+ WÉ#ó'ú&û&ú&ú%ú&û (û (û (û (û (û (û (û"*û%/û+7û2@û8HüASüI\üNbüPcüGYü:Jü1?û/<û4Cü6Fü4Cû,8û%/û+6ûL^üŠŸüÂÕüÛëüÆ×üŽ£ü~”üƒ™üŽ¤ü‚–üxü’¨ü±ÄüÀÑü·Èüƒ“üIWûTfüm‚üi}üIXü)3û!*û%/û.:û;JüGZüL_üCUü7Gü/;û'2û"+û (û#ú!ú%ú'ú )û%/û)4û(3û%0û%/û*6û,8û.:û5Dü<MüCRëMT°xt‡¬¢‡Â¶Ê¿—ÍÁšÍšÌÁ™ËÀ˜»±Œ¢šx†}_nfM\U@KE4;6)40&<:5ˆ‡…ÔÔÔüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿààݹµ¥àÙ¿éâÅêâÅçáÂäÜ»ãÚ·çßÀâÛºÙЬÓÉ¡Ê¿—Ĺ‘Ǽ”ø‘¶ªƒ±§°¦‚®£~«Ÿz©žz­¢}±¦€µ©‚¸¬…¿´ŒÆ»“ƺ“Ĺ‘Ç»“Ç»“Ç»“Ê¿—ɾ–ź’¶Ž½±Š»¯‡À´Ç»“Ƚ•Å¹‘¿³Œº®‡²¨ƒ¨Ÿ|›‘p‡}`ofNTM9@:+50$*''%31,OMJˆˆ†ÚÚÙøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüòñïÑÐÉËÆ·âÛÁéâÇíçÍîèÏëäÉåݾÙϮ·“£™v{rWUN;1-"1‡%á )û (û (û (û'û$û%û'û (û (û (û (û (û!)û#,û%/û&0û+7û3Aü;LüDWüM`üTiüSfüGYü>Nü8Hü8Hü;Lü=Nü8Hü0=û.:ûDUü‚–üÅ×üåñúÙäú©»ü”¨ü‘§ü²ü’¨ü‹¡ü§¼üÈØûÔàú¸Èû‘üUeûhzü|üdxüAOü'0û*5û4Bû@PûK^üOdüK^ü@Rü5Dü,8û%/û (û#ú"ú$ú",û%/û&0û)4û+7û*6û(3û)4û0=û8Gû@PûHZüK^üL^óN[Õkn£—º¯ŠÏÄœÒÇ ÓÉ¢ÔˤÓɣż–¯¥‡humSb[DPJ8A<-84(53,MLJ°°°ôôôÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþààܹµ¥áÚÁëäÉëåÊëåÊéâÄæÞ¾ãÛºÛÓ¯ÓÊ£ÒÈ ÌÀ™Ã·Â·Á¶½±Šº¯‰·¬‡±¦€­¡|« {®¢}³§¸¬…½±‰ÁµŽÃ·Á¶ŽÁµÃ·Ä¸Ä¸Ä¸‘·¿³Œ»¯‡¸¬…¹­†¿³ŒÁµŽ¼°Š¹®‡¸¬…´©‚°¥€«¡}¡–t‹criO[T?GA172%*'$!-,'HGC|{yÍÍÌôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúùøêéæÑÎÇÏ̼äßÅéãÆëäÈëäÈæßÁÜÔ°ËÀš¯¤€„fe]GC>/%" e#½%0í$.û!)û!*û!)û'û!ú#ú'û (û (û (û (û (û!)û%/û(2û#-û&0û-9û4Cü=NüGZüUiü[püVjüObüGYü@QüATüFYüFYü=Mü5Bû>Oüx‹üÁÒûèñøçíøÃÓû¨½üŸ´ü­Ãü¤ºüŸ´ü½ÏüÞéùäê÷µÄú~“üj~ü}’ü„˜üZnü;Iü,7û8GüHZüUiü[püTiüEXü;Lü3Aü*6û$.û'û!ú$ú",û)4û+7û+6û+7û-9û/<û1?û6Dû?NüI[üSgüZoüYnüUiûTgõ`jÀ|zƒ­¤‹ÒÈ¡×ͦØÏ©ÙЫØЫÍ·¬†šo~uYiaIUN;E@0:5(-*!862€äääüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþâáݸµ¥ßÙ¿ëäÉíèÏîèÐëåÉçßÀß×´ÖͧÐÅžÑÇ ÌÁšÂ¶Ž½±Š¿³‹Ä¸‘ƺ’··«…²¦±¥³§¸¬…½±ŠÁµŽÀ´¼°‰½±ŠÀ´Œ¿³ŒÀ´ŒÀ´Œ¾²Š¼°ˆ¹­†´¨‚³§·«„¼°ˆ¹­†¯¤¯£~²¦±¥°¤~¬¡}¤™v…evmSc[EMG594'*&# *(#B@=onlÁÁÀññðüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷öõãâÝÆôÔϹåÞÅçàÃåÝ»ãÜ»åݾÞԳȽ—§œy€vZQJ80-"  '!‘&1è)4÷%/û#,û&0û$.û )û&û'û (û (û (û (û (û (û!)û&0û(3û#,û%/û+6û.;û7FûEXüTiüavüf{üdxü\püReüPcüRfüVjüMaüBSü?PünüµÅûãêøîô÷Õæû¸Íü«ÁüÀÕüºÍü´ÅüÒàüìôùçì÷­ºù‚—ü‰ü”ªü†›üPaü:Iü;JüObüauüküh|üUhü?Pü4Bû+7û%.û"*û (û'û#-û)5û1?ü0?ü-9û,9û3Aû?OüJ\üSfüZmü\pü]rübwü`uü[püVjûQ`Ø]b©˜“šÍžÛѬÛÒ¬ÙЪÜÓ®ÎÄŸº¯‰¨ž{‡hvmS[T?GA1<7*.+!10+tsrÓÓÓóóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþçç嶲¤ÞؾéãÈîèÑñìÙìçÎäÝ»áØ´ÞÔ¯ÙϪÑşȼ”Áµ¾²‹À´Ç»“ȼ”ƺ“¶¼°‰¸¬…½±Š¾²‹»¯ˆ¼°‰»¯ˆº®‡¼°‰¾²‹¼°ˆ½±ŠÀ´ŒÂ¶ŽÁµ¼°‰µ©‚±¥³§·«„¸¬…µ©ƒµ©ƒ´¨‚±¥®£~©Ÿ{Ÿ”r†f}tXc\EHC273%*&!#!540`_]²²°îîíûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøàÞÙÉijÕγãÝ¿çßÀäܼãÛºäÜ»ÝԱǻ– •ttkQC>.$! F!)®+7ù*6û'2û'1û)5û(3û%/û%.û%.û$-û"*û (û!)û#,û#,û!*û#-û&0û%/û(2û*6û+7û1?û<LüJ]ü^rüo„üv‹üt‰üj~üezüeyüg|ücwüYlüM_ük}ü§¸ûÛâøôøöæñùÈÙûºÍü×äúÑàûÉÙüâíúòùùãëù¨¸ûŽ£ü¦»ü ¶ü€•üNaüFXüUhüm‚üyŽüwŒüi}üQcü;Kü-:û%/û"*û"+û&/û)5û-:û0>û2@ü4Cü7Fû=LûHYûUiü_tüf{üi~üf{übwü`tü]rüYmüRfüGXìLV΃£½³’×ΩÛÒ­ÙЪÛÑ«Ñǡø’µª†šp{rWb[ELF5>9+.+ .,&hgeÉÉÈòòòüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿççåµ²¥àÚÂëåÊíçÎïêÔêãÈãÛ¸âÙµÞÕ°ØΩÐŞƺ’¾²‹¹®‡½²‹Ç»”ȼ”Ź‘÷»¯ˆ³¨‚¸­‡¼±‹¾³ŒÀµÀ´½±‰¼°‰½±Š¾²‹¿³ŒÀ´ŒÁµ¿³Œ¼°‰¶ª„³§µ©‚º®‡¿³ŒÀµ¼±‰¶ª„­¢|§œy¢˜vž“q“ˆi‚x[f_GKF384&+'+*'WVT­¬«ëëëûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõôÖÕÏÁ¼©ÚÒ¶ãÛ½æÞÀçàÁæÞ¾áÙ·Ǫ̈¾³Ž–Œlh`I84' /u!*Æ*5ú+7û+7û,8û,9û,8û,8û+8û+8û*5û%/û"*û"+û%/û&0û#,û!*û#,û'1û)5û+7û+7û-9û2@û?PüWjüp…ü‚—ü‰Ÿüƒšü~”ü{üzüyŽüt‰ücwüpƒü›­ûÓÛøøùõóööÙäùÍÚúêð÷åïùÛéúíôøóùøàìû¬¿üž´üºÏü¡·üu‹üWkü_rüvŠü‹ ü‹ üzübwüI[ü8Gü*5û"+û$-û)4û/;û4Cü7Fü7Gü6Dû<LûI\üVjübxük€ünƒünƒünƒüjücwüXlüSgüQeüI]ü?QùCPænn§¥œ†ÍÄ¡ÙЫÙЪØΧÖÌ¥ÑÆ Á¶ –tuZkbJSL:?:+/,!.+%ZYW¶¶µòòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþææä·µ©âÜÆìåÌìæÌìæÌèáÄãÚ¸ßÖ±ØΩÒÇ ÏĜƻ“»¯‰´©„¸¯‰Å»”Ź‘À´Œ½±Š³¨‚ªŸ{«£¶­‡Ã·É¾–Ƚ•Â¶Ž¾²‹¾²‹Ã·Ã·¿³‹º®‡¹­†º®‡¹­†¸¬…º®†¿³ŒÅ¹‘Æ»“¿´¶ª„ªžz¢—tž“qž“p”‰i‚y\kcKSL9?9+-)('%WVV®­¬ëëëúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýþþýþþýþþýþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýððîÑÏÊÆÀ¬ÛÔ·âÛ¼æßÀçàÃäܾÜүƼ—¦›y‚y\[T@+( 
+ R´'æ&1û+6û/=û3Bü3Bü3Bü3Bü3Bü3Bü2@ü+7û'2û'1û%/û%/û&0û#,û!*û$-û'2û*6û+7û.;û5Dü>PüSfük€üƒ™ü•«üœ³ü™°ü“©ü¤ü¥ü£ü|’üyü“¦ûÍÕøøùõøùöéñùáíúó÷÷ïöøçôúóø÷óùøâïû»Îü²ÈüÃÙüš°ün„üjü•ü˜®ü¢¸ü”ªüxŽü[oü@Rü2?û'1û%.û.;ü6Eü:Kü9Iü<MüBSüI\üWjüeyün…üvŒüyŽüwüt‰üo„üh}ü_tüPdüJ^üH[üASü8Hü9EìUX°ŠƒˆÀ¶˜ÓÉ£×ͧ×ͦÚЪÚЫÏÄŸ±¦ƒŽƒerjPVO;B<-40$/-%IHE’’çççþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþåäã¹·«âÝÇìæÍîèÏðìØíçÐäܽ×ͨÐÅžÏÄœÏĜƻ“¼°‰»°‰¾³¿´½²Šº®‡¶ªƒ­¢}§œx¨ }²©ƒ¾²‹È½•ÌÀ˜Ç»“ƺ“ź’ĸÁµ¾²Š·«„·«„¼°‰½±‰½±‰½±Š½±Š½±Š»°ˆº®‡¶ªƒ®¢}ªžy¤˜u—ŒkŠ€a~tXkdKVO;C=./+&%#UUT¯¯®íííûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýýýýýüûùø÷øøöùøöùù÷øøöùù÷ûûûýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüîîìÊÉÀÊůÝÖ¹ãÛ¼åÞÀæÞÀáØ·Òɤµ«†‡gqhONI6!
+
+
+ gÜ!ú'ú#-ú(3û-:û2@ü3Bü4Cü7Gü8Hü7Gü5Dû3Aû/=û+7û)5û*5û'2û$.û$.û'2û*6û+7û0>û8Hü@RüOcüdyü“ü™­ü®ÃüµËü³ÉüªÀü¨¿ü¨Àüžµü‘¨ü—«üÉÕùôø÷ùûõõú÷óùøøúööú÷óùø÷úöð÷øàïûÏâüÇÛüÀÖü—®ü}’ü’§üªÀü¸Îü«Áü¥üq†üTgü=Nü3Aû4Aû8Fû<MüASüFXüJ\üSeü`süm‚üxŽü•üƒ˜ü‚˜ü}“üu‹üm‚üfzü]rüRgüEXü@Rü>Pü8Gü0>ü0:î=A»lh’²©’ÏÅ×ΧÚÑ«ÞÕ°ßÖ±×ͦ½²Žœ‘q|sW\V@ID2;6)0,#:95|{zÙÙÙüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûùáàÛ¾º¬äÞÈìæÌìæÍðìØðëÕèáÄØÏ«ÓÉ¢ÕʤÓȡȽ•¼°‰»°‰½²‹½±Š¸­†²¨‚®¤ª |¨ž{«¡}®¤³§‚½±‹Æº“ʾ–ÌÀ˜Ë¿—Æ»“ĸÁ¶Ž½±‹½±ŠÀ´ŒÀ´ŒÀ´Œ¿³‹¹­†µ©‚´¨‚·«„º®‡¸¬…°¥£˜u‘‡g„{]{qVjbJUO;A<--)#"!SSS²²²ðððüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþüüûùø÷÷÷õôòïïíèëéåéèâëêåïíéóòïøø÷ýýüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýððîËÉ¿ÍÇ°ßÙ¼ãݾåÞÁåݾÝÔ±ËÀš­¢}‰ag_HE@0
+  nÞùú!ú"ú'ú(3û+7û.:û3Bü6Eü8Hü>Oü>Oü9Iü8Gü5Dü/<û-9û,8û+7û+7û+7û,9û1?û9IüASüOcüavüyü•¨ü²ÆüÅÚüÎãüÄÚü¿Öü¾Õü¼Óü¯Åü©½üÊÚüìöùøúöúûõùúöúûõúûõùúöúûõíôøÝíûßîüÔäü¸Îü¡·üŸ³ü¼ÎüÌßüÈÝü¦»ü…™üi~üTgüEWüBTüM`üRfüL_üL_üSfüexüw‰ü…˜ü¡üŽ£ü‹¡ü‰ü•üv‹üiü^süWküObüEXü<Mü8Hü7Fü1>û+8û+6ñ.4ÉYX ª¡“ÎÄžÚÒ­ßÖ²áسßÖ±Õˤ¿´Ž¢˜u„z^d]FNI5@;,2.#65/rqpÔÔÔûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüìêåàÝÒÄÀ°äÞÆêãÈéâÆìæÊîèÏìæËäÜ»à׳ßÕ±ØΨʿ˜»°‰³©„¶«†¾³Œ·¬‡®¥­¤€«£«¢~­£~« |ªŸ{±¥€¾³ŒÉ½–Ê¿—ʾ–ÌÀ˜É½•Æº“Æ»“ĸÀ´ŒÀ´ŒÀ´Œ¾²‹¸¬…´¨¶ªƒ»¯‡À´ŒÀ´°¥€œ‘n…e†|_}tWldLVO<@;,,($$#\[[¿¾¾õõõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþýýýüüûûúø÷õîìéêèâåâÚØÖ˽º­«§™¥¡“ÃÀµóñíúúøþþüÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüçæäÄÁ´ÐʲàÙ¼äݾçàÃåÞÀÝÔ±ËÀšªŸ{€vZYR>62&
+ /‰ äùù!úùù&ú"+û&/û)4û-9û3Aû>OüCUüBSüEWüDVü<Mü:Jü9Hü3Bü/<û-9û0>ü5Dü:KüFXüUiüdyüwŒü¤ü¯ÄüËßüßïüáîùÝëúØêü×éüÎáüÄÙüÏâüäðúöùöûûõûûõûûõûûõûûõúûõð÷øåóûìöúÝèù»Ïü¶ÌüÅ×ûÞéùÞìúÊÞü¡·ü~“üf{ü]qü\püauüezüf{üeyül€üzüŒžü˜©ü¯üš­ü”¨üŒ ü‚–üu‰üi~ü[oüPdüK_üDWü<Mü4Bû0>û/=û-9û)4û&/ö%,äNO¾ ™–ÍÅ¢àØ·ß׳à׳ßÖ±×ͦ¸’¨œy…|_c[EOI6C>-73'970nmlÐÐÐúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõæäßçäÙÈÅ´ãÝÄéâÅéâÅëäÈîçÍïéÐìåÊéâÄåÜ»ÙϪʿ—¿³‹·¬…µª„¸¬†³¨ƒ°¥µª„³¨ƒ®¤­£~©Ÿ{©z´©ƒÀµÅº’Ç»“ʾ–ÌÁ™Ç»”À´Œ½²Š¼±‰¼°‰¾²‹À´Œ¿³‹¹­†µ©‚µ©‚º®‡À´ŒÀ´¯£~˜lŠ€a…|^„z\xoT`YCD@0.*%%$cccÄÄÄ÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþüüûø÷öóñîðîêäâÛ×ÔÊÉƸ¼¸§¶¯¦ ‹œ•€’Œy¸µ©÷öóýüúþþýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûáàÜÄÀ²Ñ˱àÙ»åÞÀèáÆçßÂÞÕ²Îì¡}|sWQJ8+(
+
+X!¬ )ë&ú&ú!*û%ú ú ú#ú&û (û#,û(3û4Bû<Mü?PüFXüJ]üI\üH[üGZüBTü<Lü8Fû:Jü=NüASüL_üZoüi}üyü¤ü©ÀüÉÜüäòûôù÷ôù÷î÷úí÷úèôúáñúßîúæðùöùöûûõûûõûûõûûõûûõûûõöú÷ðøùòùøãíùÊÜûÒäûäñùîöøáîúÅÙü³ü‚˜üuŠüuŠü{‘ü‚˜ü„šü‡ü¥üš¯ü¤·üª¼üª¼ü¤¶ü˜«ü‹Ÿü”ür†ücxüXmüL_üBTü>Pü:Jü4Cü-:û+7û+7û+7û(3û$.û"*ùEHÓ‹’Ç¿ äÝ¿ãÛºáÙ·àÖ²×ͧƻ”®¢}‹‚ciaJVP;JC2;7)95/edb¼»»øøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõéèäêèßÉŵãÞÄéãÆéãÄëåÊíæËíæÊìæËçàÃáØ·ØϪÎÜŹ’¿³Œº®†´¨‚²¦€´¨‚¹­†·«„±¦­£«¢~¯£º¯ˆÀµ¾³‹Ä¸‘ʾ–Ê¿—÷º®‡µ©ƒ¶ª„»¯ˆÀµÄ¸Ã·Àµ½±Š¼°‰¿´Ä¸‘ĸ‘´©„Ÿ”r…fŠ€b‹bx[h`IJD31-"###___¹¹¹ôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõòñïôóññðìâß×Á½¯Ã¾­¿¹¥´®˜¨¢Œ¥žˆ ™‚©£®©–¾²òïêüûøþýûþþýÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûàßÛÆ´ÓͳâÛ¾æàÄêãÇçßÂÞÕ±ÏÅž¯¥€w[RL9*'
+ { )Ë'1ò'2û(2û(2û$-û (ú'ú$ú"ú'û'û%ú#,û)4û/;û6Eü@QüK^üObüQdüUjüThüObüK]üM_üSfüVjü_tüo„ü€–ü’©ü¥¼üÀ×üÝïûóø÷ùûõøúöøúö÷úööùöôøööøöúûõûûõûûõûûõûûõûûõûûõúûõ÷ú÷òùùéõûåñûíõøòøøëöú×éü½Ôü ·ü—®üš±üœ²üœ±üŸ³ü«Àû»ÐüÅÛüÅÙü¾Ñü°Åü£¸ü—ªü‡œüxükü^rüReüI\ü@Rü8Hü1?û.;û-9û,8û+7û+7û+7û*6û)3û%/û=AÏzu„¹±—åÞÁëåÉèàÂáصÖ̦Ǽ•µ©ƒ›n|tWc\EQK8?:,42*RRO¬¬¬õõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùøøìëèèæÞÇôäßÇéãÆèàÃìåËêãÆæÞ½äܺÛÒ®ÓÉ£ØΨÖ̦Íšȼ”¶Žº¯‡¸¬„·«„³§µ©‚µ©ƒ²§³¨‚·¬…º®‡¹­†·¬…Á¶É½–øÀµŽ¾³‹º®‡»¯‡À´ŒÈ¼•ÌÁ™ÌÁ™ËÀ˜ÌÁšÏÄÏÄÏÄÐŞø’²¦£˜u—lŽ„d‚x\iaIKE42."!! VVV®®®ëëëþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøøõõóòñïìêåáàØÔÑÈÑÎÂÔÐÁÉò¸²ž·±š³¬•¨¡Š¢›ƒ›”}œ–‚±¬ÖÓÈ÷õîúùõüûùýýûþþýÿþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùøøÞÝØƲ×зãÝÁçáÆêäÉåÞÁÙЬƽ—¦œz{rXOI7'$
+ 'š'å$-÷%/û'2û)5û(3û&0û%/û$-û#+û%.û$-û"*û!)û"+û%/û)4û1>û<KûCSüJ]üZoübwüf{üi|ümüo‚üm‚üo…üyŽü‡ü—®ü©¿üÁ×üÚíüì÷ùöú÷úûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúûõöú÷òùøóùø÷úööú÷êöû×èüÄÙü¹Ïü¹Ðü½Ôü¾ÕüÃÕûË×ùÖáøÞìúÞïüÑãü½Ðü£·ü‘¦ü•üp…übvüVjüL^üCUü?Pü;Kü5Dü-:û+7û+7û+7û+7û+7û+7û+7û+7û,8û<CÔdc¨¢›àØ»éáÃéâÅçßÀÝÔ°ÍÂœ»°Š¨žzˆ€bjbKVO<C>/63*ONK¤¤£óóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþööõèçãçåÝŲäÞÆéâÄçßÀëäÇêãÅæÞ½ãÚ¶ÚЪÒÇ ÓÈ¡ÏĞɾ–ʾ–Ƚ•Â¶Ž¾²‹º®‡³§€´¨·«„¸¬…³§¯£~¶ªƒ»¯‡º®‡¾³‹ÁµŽ¾²‹Â¶Åº’¶À´ŒÂ¶ŽÊ¿—ΚÌÀ˜ËÀ˜ÎÃœÕÊ£×ΧÙÏ©Öͧɾ˜·¬…©žz›‘o„dx\kdLPJ862&  TTT¬¬¬êêêþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü÷÷÷ðïíÙ×ÑÒÐÉÉǼ¿±ËǵÖпÍÇ´Á»¦Ä¼¦¼µŸ¯©‘¦ ‰ ™‚›”–ƒ£Ÿ°¬žÔÑÇöôîúùôûú÷üûùýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõôôÔÒËÅÀ­ÙÓ¸åÞÂèâÇêäÈãܽÔ˦½³›’qrjQHB2# 
+ 7´"÷ 'ú!)û#-û'2û(3û)4û*5û*6û*6û*6û+7û+6û'2û%.û%/û$.û'1û-9û3Aü<LüNaü]qülüzü†˜ü‹žüŠ üŠ¡ü£ü–¬ü£¹ü´ÊüÉÞüÜïüêöûôùøúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúûõúûõúûõûûõöú÷ëöûÞìüÖæûÙêúÜíúÜîúÜîúåñùòõöô÷öîõøßíûÈÙü­¿ü¡ü{Žükü[oüNaüEWü>Oü9Jü9Iü8Hü6Fü1?û/<û.;û0<û0=û0=û0=û0=û1>û4Bü;GÝSW¥š—¤ÛÓµåÜ»êâÅìæËæß¿×Ϊƻ•µ«†“ŠkogNZS>HB296,JIE‘ïïïýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüòòñéèãêéâÈŵäÞÄéâÄçàÁëäÇëåÈéáÂáصÚÑ«ÔÊ£ÍÁšÅ¹‘øȽ•Ê¿—Ź’¶Ž¾²Š·«„·«„º®‡¼°‰³§¨y³¨½±Š»°‰»¯ˆ»¯ˆ¾²‹Æº“ËÀ˜É½•Å¹‘ĸɽ•Ë¿—ɽ•É¾–ÍšÔÉ¢ÙÏ©ÜÒ­×Ψɿ˜·¬†ªŸ{“q’ˆg„z^pgNVP<<7)#  RRR¦¦¦âââýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüúúùõõôëêèÞÜÖÕÓÌËɽ´®šÁº¤ËĮǿ¦½¶›Ã»¡ÈÁ¨Å¿¨¿¹¤¶¯šª¢œ•€–z‡r‘Œz²®£áàØôóîø÷òùøôúøöûúøüüúýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòñðÍÊÂÈîÝ×»æàÄéãÇçßÂßÖ³ÒÈ¢¸®‰’ˆig_H?:+  !
+ [Å!ú'û (û!)û"+û#+û$.û)4û*6û*6û+7û/<û3Bü3Aü2@ü1?ü-9û*6û,8û.;û0<û1=û;IûK\üdwü€•ü˜­ü§¾ü¯Çü±ÉüµÌü½ÓüÊßüÙëüçõûóùøùúöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõ÷ú÷îøúíöùñõ÷óø÷óø÷óø÷óø÷öùöøúöñøøàìûÅÖü«¼ü¢üv‰üeyüYmüMaüDVü=Nü;Kü:Jü:Jü:Jü<Lü>Pü;Lü9Iü>Oü?Qü?Qü?Qü?Qü>Pü<Lü;IäLT¹•”¯ÚÒ¶èàÀëäÆíæÊíçÌæßÀÙЬƼ–£˜vvYf_GQK8<8,A?:}||ÒÒÒûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüôôóêêæÔÓÈÒϼèãËíçÍíèÎîèÏíæËæßÀÙϪÔÊ£Òȡɾ–¶ŽÂ¶ŽÅº’Ź‘½²‹½²ŠÀ´ŒÂ¶ŽÀ´Œ¿³‹¿´Œ¼°‰¸¬…¸¬…¶«…³©„¸­‡ÁµÈ½•ÌÁ™Íšʾ–ȼ”ƺ“Ĺ‘Ź‘ȼ”Ë¿—ÎÛÐÅÒÇŸÒÈ¡ÐƞŻ“¸­†­£¥›x›‘o‰aqiOWQ=<7)# JJJ“““ÌÌÌòòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüööõíìêâáÛÞÜÕÐÍ»·¦µ¯š¾¸¢Áº À·˜Å¼œÇ¾žÄ»šÃ»œÄ¼¡Ã¼£½¶ ¬¦Ÿ™„’Œw‘Šw‘Œ{¦¢–¼¹±âàÜöõñúøöùøõùøöúù÷ûûúýüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîíìËȾÍȳáÛÂéãÉêäÉæßÀÛÒ®ËÁ›®£ƒz]WP<3/# ) hÊ$û'û (û (û (û (û"*û%/û&0û&0û&1û+7û1?ü2@ü2@ü2@ü1?û3Aû6Eû:Jû<Kû9Gû;JüBSüRdüj~üƒ™ü›²ü²ÉüÁ×üÌàüÖçüâîùëôùòùøùúöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõùúöôùøöú÷úûõûûõûûõûûõûûõøúöð÷øáíûÈÙü«¿ü”¨ü’üi}ü\qüThüNbüI\üFXüHZüI\üI\üI\üJ]üK^üH[üFYüJ]üI\üFYüEXüEXüDWüASü>MçJT¾ŽŽ¬ÒÉ­çßÁìæÊîèÎðêÒíæËãÛºÐÆ¡±¦‚†gtkQYS>@;.<:3jihÃÃÃùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýõõôáàÛÎ˾ÚÕÁìèÓñíÙñíÙîéÐéâÅàÙ·ÔʤÐÆžÐÆžËÀ˜Ç»“Æ»“ź’¿´Œ¶«…¸¬†½±ŠÃ·Â¶ŽÀ´ŒÀ´Œ½±‰¹­†¶ªƒ´©ƒµ«…½±‹Ä¸È¼”Ê¿—ÌÁ™Î›Íšʿ—ƺ’Ź‘ȼ”Ê¿—ÌÀ˜ÌÀ˜ÌÀ˜ÌÀ˜Ë¿—Ĺ‘º¯ˆ¯¦¥œy›‘o‰aqhOYR>>9*%"AA@†††ÁÁÂîîïÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþøø÷ëëèØ×Ñ¿¼¯¼¸§Â½«À¸žÇ¾ ÌÄ¥ÍŤÊÁžÇ¾šÄº˜¿µ”º°µ¬²«­¦Ž£œˆ’‹vˆl{iŠ†x°®¦ÝÛ×óòïúú÷ûú÷úú÷úúøûúùüûúýüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýåäáÇ÷Ñ˶äßÆêåÌëåÊæÞÀØΩĹ“¡—utlRHC1*' ) iË&û (û (û (û (û (û!)û"+û"+û"*û#,û&0û*5û+8û,8û-:û1?ü7Gü>OüDVüJ\üL_üJ]üJ]üPcü]qüo…ü‡žü¥»ü¿ÓüÒãüâïûñ÷ø÷úöùûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúûõúûõûûõûûõûûõûûõûûõôù÷åñûÎßü´Çüœ±ü‹ ü|ükübwü]qüZnüYmüYmü\qü^sü]sü\rüZoüUjüShüSgüRfüNaüH[üFYüEXüEXüCVü@PêHQÅ…„¨Ç¾¡åÝ¿îèÍðêÑñìÓïéÏèáÃØϬ½² •svZ`YCD?1<:3`_]¶¶¶öööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýüüòòðÞÝ×ÌʼÞÙÃîêÖòïÞóïÝîèÎæÞ¿ÝÕ²Ö̧ÒÈ¡ÐÆžÎĜ͚ʿ—÷¸­†¯¥²¨‚º®‡ÁµÂ¶ŽÀ´Œ½²Š¸­†´¨³§·«…¾²‹Ã·Å¹‘ĸƺ’ʾ–ÐÅžÑÇŸÏĜʾ—ȼ”ɽ•È¼”Ç»“ƺ“ȼ”ɽ•È¼”ĸ¼°‰°¦‚£šw—Œk‡}_qiO[U@B=-)%;;;€€¾¾¾íííÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüûàßÜÐÏÉ¿¼°Â¼¨ÌŬÏÈ®ÑɬÒÉ©Ô˨ÓÊ©ÎŤƼ™¾´¶«Š¬¢€ –w—Žr’‹q’Šs‰‚l†€l€{iŠ†zÇžîíë÷÷õüûùüüúüûûüüúüüûýüüþþýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÞÝØÅÀ±Ó͵äßÅêäËêåÊåÞ¾Ö̦¾³›onfME?.(% * iÊ#ú'û (û (û (û (û"+û%/û$-û"+û%/û&0û%/û(3û+7û,8û-:û0>û3Aû5Dû;JûGYüOdüYnüg}üwŒü…›ü“ªü¢¹ü¯Åü¾ÑüÒáüéóúõú÷úûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõïõøÚêûÃ×ü±Åü¦¹üš­üŽ¢üƒ™ü~’üzüuŠürˆürˆüp†ünƒüiüg|übwü\qü[püYnüUiüQeüMaüH[üEWüDVü@Qü8Hõ>Há{z´¿µåÞÂîèÎîèÍðêÒðëÓíæÌáظȾ™©ž{‡}_g_HLG5>:1TTP£¢¢òòñýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúññïâáÜÍÌÁâßËîêÓðëÖñì×ïéÐêäÈæß¿ãÚºÜÓ¯ÔÊ£ÐÆžËÀ˜Ä¸·«…¬¡}©ž{¯¤º¯ˆÅº’Ź‘¾³‹¶«†³¨ƒ¶ª„¹­†¾²‹Ä¸Ä¸Ã·Å¹‘Ç»“ɽ•ÌÀ˜ÐÅÑÇŸÌÁ™É¾–Ë¿—Ç»“ÁµŽ¿³ŒÃ·È¼”Ç»”¶Žº®‡±¦€¥šv–Œk‡}_rjP\V@C=.*&332rrr°°°èèèþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýùùøñðïØ×Ó¿»­Ã¾ªÌƯÖѶàÙ½àغÜÕµØаÓ˪ÍģĻ™·¬Š©Ÿ~“tŽ†hw^xpYvoYxq]~xf„rƒÄÿññðüüûýýüþþýþþþþþþÿþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüÜÚÕųÖѺåàÆêäÊêãÈáÙ¸ÏÄž·«†“‰ig_H@;,&# 6}Ñù#ú&û&û%û&û!*û%/û#-û"*û%.û$-û"+û'2û+7û+7û+7û,9û/=û0>û4CûBTüOcü]rüo„ü€–üŽ¤ü›±ü¨¿ü´Éü¿ÔüÎáüäòûòùøúûöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõñööâíùÒâûÇØüÃÓü¸Éüª½üž²ü–ªü¢ü…›ü•ü|’üv‹üm‚üf{übvü]qüVküRfüMaüFXüDUüCTü>Nü9Iü6Eü2?ü-9ü4=ñqp»·¯™åÞÄîèÎìæÊðêÑðëÓíæÌâÛºÍ𥎄eofMTN;>:/HGB––”êêêûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüôôòÛÙÔËɾèäÒðìØðìÕðëÔðëÔïêÐíæËèàÁÝÔ±ÒÇ¡ÎÛƻ“½±Šµ©ƒ®£~­¢}±¥·«…¿´½±Š¶«„´©„¸­‡¼°‰¹­†¼°ŠÇ»“Ĺ‘÷ɽ•Ë¿—Ë¿—ËÀ˜ÐÅÒÈ Ë¿˜È¼”ʾ–Ź‘¿³‹¾²ŠÅ¹’ÌÁ™Ê¿—¶·«…¯£}¥švšm‰`sjP\UAA<.(%((']]]šš›ÞÞÞýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýççåÐÎÉļ¿¼°ÕкâÛÁäÞÂâÝÁáÛ¾ßعÚÓ´ÕÍ­ËãÀ·–³©‡¢—w†j~v\ngPb\H\VD\VFd_P‚~t¶´®ÓÒÏòòðýýûýýüÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÙØÓųÙÔ¿çâÊêäËéâÆÜӱƻ”®£~ŒcbZD;6)$!
+ F–Ûùù#ú$úù#ú'ú (ú 'ú'û!)û!)û"*û%0û)4û)5û)5û,9û2@ü4Cü7Gü@RüI\üThücwüsˆüƒ™ü”«ü­ÄüÄÚüÐæüÚíüèöûóùøúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõøúõò÷÷çóúÞíüØçüÊÛü¹Ëü¥·ü˜«üŒ ü”üu‹üp…üi}ü_rüViüRfüObüFYü@Qü:Jü2@û0=û0=û/<û+7û'1û%/û$-û/6ðlk¹²ª—ãÝÄïéÏíçÌðêÑïèÏéâÄÞÕ²ËÀš³§ƒ•ŠjvmS[U@B>2CA<Ž‹áááúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýüüóóñÖÔÎËȸéåÑòïÞñîÚñëÕñëÔðêÑìæËäܼÙϪÏÜʾ—÷¼°‰º®‡º®‡·¬…µ©‚³§€³§¯£~­¢}·«…À´Áµµª…·«†Æº“Ź’ø˿—ÎÃœÏÅÐÅÒÇ ÒǠȽ•Ä¸Ç»“ĸÁµÂ·ËÀ˜ÑÆŸÎÛĸ‘·«…«Ÿ{£˜uœ‘oŠ€brjP[T@B=.*' PPP’’’ÛÛÛýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüìëéÔÓ̾»¯Ã¾­ÌɸÛØÅãÞÆçàÄæÞÀãܽáÚ¼Þ×¹ÙѲÍÅ¥¼³’© €™q…|`rkS^XEOI9GB4D?4MIA|ytÄÿóòðýýüþþýþþþÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûúúÐÎÆÁ½­ÛÖÀèãËêãÉåÞÀØϫ¶‘¨y‡~`bZD?9+&#
+ JÝùùùùùù ú!ú!ú"ú&û (û (û'ú!)ú$-û$.û&0û)4û-9û1>û5Cû<LüFXüUiüh}ü{‘üŒ£ü¦½üÀØüÑçüßñûðøøøúöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõ÷úöïøùãòûÕæüÆÖü´Äü ±ü‰›üyümüauüXküQdüM_üHZüCUü?Oü:Iû6Dû3Aû/=û,9û+7û+7û+7û)5û'2û'1û'1û2;ðmm¹±ª–ãÞÄðëÒïéÑðëÓìæËåݼÜҭɾ—°¦—l|sW\VBC>3DB=ƒ‚€×××÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúëêæÍÊ¿ÑμéåÑðëÕðëÕðëÔðëÓìæËæßÀß×´ÛѬÖ˦Í›ĸ¾²Š¹­†º®‡¿³Œ»¯ˆµ©‚±¥~®¢}®¢}·«„¾²‹Áµ½²‹½±ŠÀ´ÀµÂ·É¾–ÐÆŸÕË¥Õ̦ÔÊ£ÐÅƺ“÷ǻ“ƺ’ƺ’ɾ–ÎÛÑÆŸÎÜĹ‘·«„©žzŸ”r•Šj‡}_ogNWP<B=--)HHH‹‹‹ØØØüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýõõôÜÛ×À½µ¶³¦º·¥Ð̶àÚÀæáÈçäËçáÅåÝ¿áÙ¸ÞÖ´ÚÑ°ÓʪǿŸ´ªŠ›“t‡ctlTaZFQL<C>184*85.HF?kjf´´³õõôýýüþþýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúùøÉżÀ»¨ÛÕ»æàÃçàÂâÚºÖͨ½³¡–tw[^VB>9*&#
+ JÝùùùùù úùùù ú$ú&û&û#ú#ú'û (û (û!)û$.û(3û+7û2?û;LüJ\ü]qüp…ü—ü˜¯ü¯ÇüÄÚüØëûï÷øøúöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõ÷ú÷î÷ùßïûÎáü¼Îü­¾üœ®üˆ›ü{Žüqƒüi{übtü[müXjüWhüUfüP`ûKZûIXûHVûFUûEUûESûCRûBPû@Nû>Mû>Lû=LûERðvy¹±¬™áàÍïíÙïêÒðëÓëäÈâÙ¶ØΨĹ“«¡}“ŠjwoTXP>>:.@=8yyxÌÌÌóóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùù×ÖÐÎÊ»ÙÕÂìçÒíçÌìæËíçÌíçÍçßÀßÖ²ÚÒ¬ÜÓ®ÛÒ­ÎÜ÷À´Œº®†º®‡Â¶Ž¿³Œº®‡¶ªƒµ©ƒµ©‚¶ªƒ¹­†½±ŠÀ´À´Œ¼°‰¾²ŠÀ´Ä¸ËÀ™ÑÈ¢ÓʤÒÈ¡ÎÛǻ“Ź‘ɽ•È½•É½•Ê¿—ÍšÏĜ͚Á¶±¦¤™v™ŽmŽ„d…|^phNWP<B=.+( DCD„„…ÔÔÔûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùéèçààÝÍÊÀ½«ÅÀªÑ˳ÛÖ½âÞÃäÞÂäÞÀäÞÀåݾâÚ¹ÜÔ²Ô˧Ƽ™¹¯Œ¨ž}†ixpWf_JTN<D?1<7,63+74/GEAonk¹¹¸þþýÿþþÿþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýùùøÎÌÃýªÙÒµáÛ»äܽãÚºÕ˦º®ˆšnypUVP=84'#  
+ JÞ!ú$ú ú ú%ú&ú$ú ù#ú&ú"ú$ú (û (û )û"*û"+û#+û#-û%/û(3û/<û7Fû@QüK^üZoük€ü}“ü’¨ü¤ºü¸ÎüÏãüçôúôú÷úûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõùúõ÷ùöñö÷âðúÒçüÊÝüÂÔü¹Ëü­¿ü£µüœ­ü™ªü“¦ü¢üˆœü…˜ü„—ü”ü{üx‹üt‡üp…üo„ülüh|üdwü`sü]pü]oüZmü]nñ‚‡º²¯œÞãØëíßíèÏîèÏêäÇáÙ¶ÓÉ¢¾³¦y‹cmeLNI795+@>:uuuÌÌÌõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþññðÃÀ·ØÕÃãÞÊîéÓíçÎéâÅçàÀéáÃâÙ·ÙÏ©ØΧØÏ©Ö̧Ƚ—À´ŒÀ´Œ¿³‹À´ŒÁ¶ŽÁµ¿³‹¼°‰¼°ˆº®‡´¨‚µ©‚¹­†»¯ˆ½±ŠÀ´ŒÀ´Œ¿³‹¼°‰¿´ŒÅ¹’ɾ—ÌÁšÍšʾ–ʾ–ÌÁ™Ê¿—Ç»“ƺ’ɾ–Íš˿˜»¯Š¨zž“q–‹j…d‡~_umR\U@D>/+' BABƒƒ„ÔÔÔûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøÞÝ×Ŷ¾º¬Ã¾«ÏʱÜÖ¹àÚ¼âݾäÞÀåÞ¿ãÜ»åÞ½åݽÞÕ³ÒÉ¥Á¸”®£€šp…|`meNYS@JE6=:,30&30)@>8\[Wutr²²±óóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùù÷Ù×ν¨ÕÍ°ÞÖ·àØ·ÞÕ³ÔÉ£º®‰™n{rW[T@<7)#  
+ J Þ%û'û%û$û'û (û!)û"+û$-û%/û#,û$-û&0û&0û)4û,8ü-9ü/<ü4Bü9Gü?NüJZüUgüatümü|‘ü‹¡ü™±ü­ÃüÁÓüÎàüÜìûîöù÷úöúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõøúõï÷÷æñùßêùÓâûÆÙü¾Ñü´Çü©¾ü¢µü™¬ü‘¤ü ü‰žü†›ü–ü~’ü}’ü{üxütˆüp…ün„üm„üiüdyüavü_sü]rü]qüZnü[lñ‚†º´®˜ßÞÌìëØíèÎêäÆèáÁãÛºÓɤº°‰¢˜v…|_f^HE@253+DB@}}|ËËÌõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÞÞÜĶàÜÉëæÒïêÓíçÎéãÆçàÀåݼÞÕ±ØΧ×ΨÕË¥ÍÃœ¿´Ž¼°‰Ã·Ä¸Åº’Ç»“ĸ¿³‹¹­†·«„¶ª„²¦€³§¸¬…½±ŠÃ·Æ»“ĸ¾²Šº®‡¼°ˆÁµÆº’ɾ–Ë¿—ÌÀ˜ÍšÎÛ˿—ȼ”Ƚ•Ê¾–Ƚ•¿´²§‚¦›x¤™u’p“ˆg‡}_tlR\U@B<-($ ???†††×××üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùùêêèËÊÃÄÀ°ÍȯØÒ¹ßÙ¿ãÝÂâܽàÙ¹ÞضáÙ·ãÛ¹âÚ¸âÛºÞÕµÑÈ¥¿´‘¨{…gxoVb[FNH7>:-41&/,#/-&=;6fea¼¼¹ÞÞÝòòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõóÒÎÿ¸¢ÒÉ©ÛÑ°ÜÓ¯ÙЫÑÇ º®‰›o‚x[d\EB<-$!  M¡&à"+û#,û$-û$-û#,û$-û&1û*5û,8û-9û-:û.;û0<û.;û1>û6Eü7Fü9Jü@QüFXüNaüXkücwüoƒü|‘üŒ¡üš±ü©Àü¾ÔüÔæüÞïüèõúöú÷ûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõöùöäòùÒåüÇØü¹Ëü«½ü¯üŽ¢ü–üzŒür„üj}üexücvübtü^oü\mü\oü[müXküTfüReüReüQeüOaüK]üJ\üJ[üJ[üJ[üFXüJXñ{}º·®•áÚ¾îèÏíçÌæß¾åÝ»äÛ»Óɤ¹­‡ž’q~uZ]UA<7,31,LKJ‡‡‡ËËËôôôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøø÷×ÕÐÌʽèäÔïìÙïêÒîèÍìåÊéáÃãÛ¸ÝÓ®ØΨ×Ï©ÑÇ¡Æ»“¼°‰»¯ˆÂ¶ŽÇ»“Ë¿—Λɾ–Áµµ©ƒ°¤¯£}°¤~³§¹­†À´Ç»“Ǽ”÷½±Šº®†»¯ˆ¿³‹Ä¸Æº’ƺ“Ê¿—ÍšÌÀ˜ËÀ˜ÌÀ˜ÌÁ™Ê¿—Ź‘¸¬†¯£«Ÿ{®¢|¦›w—‹k‡~`rjQZT??:+%# ==>†††ØØØüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýý÷÷÷ççäÀ½¯ºµ¢Ä¾©ÑÌ´àÚÁæàÅæàÃåßÀãÛ»ÞÕ²ÙЬÛÒ®ÞÖ²ÝÔ°Õ˦Ż—´©†œ’r‚y^jbKTN<B=/30%)'&$+)#A@;pnl¾½¼ííìûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷öÏ˿ü¤ÏÆ£×ΩØϪÕ̧ËÁ›¶ª…œ‘o‡}_jbJC>.'$ P!¦$.ã(3û*5û/;ü/<ü+6û.:ü0=ü,8û/<û3Bü4Cü8Hü;Kü7Gü5Dü6Fü7Fü8Gü9Jü;Lü>OüCTüGYüN_üYküg{üyŽü¥ü©¾ü½ÒüÑäüäóúöùöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõõøöâïùÊÝü·Èü ´ü‡œüpƒüatüTgüETû?Mû<Iû:Gû8Fû7Dû1=û0<û4@û1=û-8û,7û,6û,6û,6û+5û*4û*4û*4û*4û*4û)3û3<ñsq»º°šåÞÃîèÏëäÇåÝ»ãÚ·à×´ÑÆ µª„“ˆisjPQJ840'42/XWV•••ÒÒÓöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøßÞØÈŶÝÜÐëíáðîÜðëÔïéÑíçÍéâÄãÛ¸ÝÕ°ØЪÖͦÎĜź’ĸ¿³Œ»¯ˆÃ¸ÎÛÑÇ ÏÄȼ•º¯‡°¤«Ÿ{®¢|³§¸¬…¾²ŠÀ´Œ½±Š»¯ˆº®†¸¬…¹­†¼°ˆÀ´Œ¿³‹½²ŠÃ·Æº’Æ»“ÍšÐÅË¿˜È½•Æº’¿³‹¹­†µ©ƒµ©ƒªžz˜l‹€bumRZS?>9+$!
+?>?„„…××ØûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúååáÊÈý»¯ÈíÔγÞؽäßÄçâÆçáÅçàÃæßÀåÞ½ß×´ØΩÔÊ¥ÓÈ£Ïğ·’­¢•‹k|sXb[EMG6;6*-) #  &% :84ljh¶µ´ääãöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúÖÔ˼¥Ì Ǫ̃Õ˧ÏƠƼ•¶«…£˜uƒdkcKE?/+' @Œ!)Ù&0û'1û*5û*6û(2û*5û*5û$-û'1û+6û)4û+6û.:û-9û,9ü,9ü,9ü.;ü1?ü5Dü;LüH[üWjüi{ü}ü‘£ü£´ü·ÅúÉÕùÔàùàìùíõøøúõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõøùõíô÷ÛèúÊÚü¸ËüŸ¶ü†›üv‹ühzüQbûBRû8Hû3Aû.<û*6û$.û"+û$.û#+û (û (û (û (û (û (û (û (û (û (û (û&û*/ðnk¼º±›æßÅðêÑìæÊæݼäÛ¸âÙ·ÑÇ¢°¥Œ‚cjbJHC30-&874bba  ¡ÛÛÛúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿññðÇžÔÐÀèæ×ïïãòñâóïÜñìÕíèÍêãÆæÞ½ÜÓ¯ÓÉ£ÒÈ¡ÑÇ ÐÅŸÍšǻ”¶Ĺ‘ɽ–Ê¿˜É¾—Æ»“Áµ¹­‡²§±¥³§¸¬…½±‰½±‰¹­†¸¬…¸¬…¹­†¼°‰À´ŒÂ¶¿³‹¹®‡¹®ˆ¿´Ç»”ÎÃœÏÄʾ–ȼ”Ç»“ĸ¼°‰·«…»¯ˆ­¢}–‹jˆ~`tkQZS?>9+$!
+
+ =<=ƒƒ„ØØØüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüææåÇÇÀ¼¹«À½¬ÕÒÀáÜÅçáÇéãÉéãÇèâÅçáÃæßÁåÞ¿äܼß×µØΪÎÃŹ’»¯Š« }‡hvmT]VAHB252&(%"!752]\Y²²±ìììùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýåãÞ¾¸¤Ç½œÒȤÒɤËÁœÂ¸’·«†ªžz’‡gnfLGA1/+ 
+ -nÍ 'ú 'ú (ú (ú (ú (ú'ú"ú'ú"+û&ú&ú!*ú(1û,7û.9û0;û5Aû=KûETüPbüg{ü•üœ°ü·ÊüÎßüÝëûéñùðô÷òö÷ôø÷öú÷øúöúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúûõõøöñõöîóöíó÷çðùÛêûÑäüÀÕü©¿ü™®ü‰üp„ü\oüK^üCTü;Kü4Aû-9û(3û'1û%/û$-û#+û"+û"*û!)û (û (û'û&ú&û'û%ú'+ðnk¿¼³ŸåÞÃïêÑîèÎæÞ¾ãÛ¹áØ·ÏÄ «Ÿ{‡}^c[DB<.-+%>=;mmm§§¨áááüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýëëéÆļÛØÇïìÚóðáõóäöòãòîÚîéÏêäÇçßÀÙÏ«ÌÀ™ÍšÕʤÚЪÓÈ¡ÌÁ™ËÀ˜Ç¼”Ź‘÷ÁµŽÁµÂ¶ŽÀ´½±‰·«…·«„º®‡½±Š»¯ˆ¶ª„µ©‚µ©‚¶ªƒ½±ŠÅ¹‘Ç»“Áµ·«…¯¥¶­ˆÆ»”͚Κʿ—Ƚ•È¼”Ź‘¾²Š¸¬†¾²Š®£~”Ši…{]phOXQ==8*#
+ ;;<………ÙÙÚýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööõÒÑÌ¿½³ÉųÕкßÜÈææÓêçÐëæÌëæÌëåÊëäÉèâÄåݽáصÙϪÖ̧Óɣʿ™¹­ˆ£™vŠ‚dogOVP=B=/1."# 876ffd°°¯ïïïþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþëéæÀº©Á¹˜ÑÇ£ÒÈ£ÊÀœ¿¶‘²¨„¦›x“ˆhskQPJ762&"
+
+, hÊ ú ú ú ú ú!ú"ú'ú$.û)3û)3û,7û4Aû@OüM^üUfü\nühyüw‰ü€“üŠžü°ü­Àü¾ÐüÍáüÛîüåóüéõûëöúëöúìöúìöúîøúôù÷úûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõõøöäïùÓâúÈÙúÊÛúÇÚû¾Òü¹Ìü°Âü ´ü•¨üŠüxül€üdxü`tüYmüPcüJ[üBSü<Lü6Eü0>ü+6û)4û'2û#,û!)û (û#ú ú!ú%û$ù',ñrqËÀº®àغëäÉíçÍæÞ¾ÞÔ°Ôʤĸ’¢—t|rWYR>:6*-,'GFE|||®®¯åååýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõôÚ×ÐÇòâÞËñíØñì×òîÚôðßõòãðìÖêãÆäÛºÔɥǻ”ɾ–ÑÆŸÕˤÏĜʾ–Ê¿—͛͛ǻ“¿³Œº®‡¸¬…»¯ˆ¿³‹ÁµÂ¶Â¶Ž¾²Šµ©ƒ­¡}ªŸ{ªŸ{¬¡|¶ª„¶ŽÉ½•Á¶Ž´¨‚« |­¢~¹­‡Åº’ÍšÌÁ™Ê¾—Ç»“ĸ¶Ž¿³Œ¹­†©y•Šj†|^meLRK873& 
+
+<<=†††ÙÙÙüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýññðÍËĺ¸ªÓоäáËêæÎëçÑéèÔëçÐíçÎíèÎìçÎëåÊäݾà×µÚЫÏÄǼ–Á¶‘¸­ˆ£˜wˆ~anfNUN;@<./,!!;;:qqqº¹¹éèèÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþñðîÊƸÀ·šÐÆ¡ÓÉ¥ÎŠĺ•µ«†§z’ˆhtlRSM:;7)($ . iÊ!ú"ú%ú!*ú$.ú%/ú)3ú4@û;JûAQûFVûM^üTfü^qüi~ür‡ü{ü…™ü¤ü–ªü›°ü¦ºü¯Âü·Êü¿ÔüÄØüÆØüÄÖüÃÕüÄÖüÈÙüÐáüÞíûíõøùúöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõùûõöú÷÷úöõù÷âïúËßü·Îü¨¿ü™±ü¦ü¡ü‰œü‚–ü~’üyül€ücxü_tüavü]rüUjüThüOcüGYüASü<Mü7Fû6Eû4Bû-9û*5û)3û#,ú'ú'ú (û&ò*/ÜwvÀÆ¿°âÛ½éâÅêãÅæß¿ÞÔ±ÎÄ·¬†“‰ipgNNH730&1/,TSSŒŒ¼¼½ñññþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüæåâÈĶÕмèæÔïì×ïêÒïêÒòíÙôñàðëÕêãÆåݼØÏ«ÎÄÎÄÏÄÌšɾ–ȼ”ɾ–ÏÃœÐÅȽ•¾²Šµ©ƒ´¨‚¶ªƒº®‡¿³‹Ã·Ã·½±‰¶ª„³§‚¯¤®¢}°¤µ©ƒ»¯ˆÂ¶¿³Œ·«…²§±¥€´©ƒ¼°‰Ã·Åº’Ç»”Ç»“ĸÁµ¼°‰³§£˜t‘‡gƒz]kcKNI662%
+
+ @@Aˆˆ‰ÚÚÚüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüëëéÉÈ¿²ÞÜÊêçÕìéÕìèÑìçÍêåËíçÎîéÐïéÐîèÏéãÆß×µÙЪÒȡƺ“µª…¦›y›p†|`ldMVO<A<.0.##!#"!???~~~ÅÅÅíííýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõÒÏž¶›ÌÂÓɤÒɣɿ˜¼²Œ­£€–ŒmvmSVO<?:+,(*b"È#,û%/û+6û2?û7Fü9Iü?OüK^üTgüZoücxüj~ünƒüq†üv‹üzü€”ü†™üˆ›üˆ›ü‰œü‹¡ü¥ü•©ü™®ü™®ü–ªü“¨ü•ªüœ±ü§½ü»ÏüÕæûëóøùúõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõøúöñùùñøøñö÷æóûÖèüÀÔûŸ´ü€–üo…üg|übvü_süatü`süUhüN`üK^üOcüNaüI\üL`üL_üEXüCUüBTüASü@Rü>Pü8Hü5Dü4Bü.;û*6û*5û&0û#,è17Â~|­ÍĬçàÃéâÄæß¾èàÁáØ·ÎÄž®¤€‡}_f^FGA2.+$653aaašššÍÍÎ÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüÛÚ×ÿ±äßËîëØñíÚòíØñìÕñìÕñìÖïéÏëåÈèáÂáÙ·ÚѬ×ΩÎĞŹ’Æ»“Ƚ•É½•ÍšÎÛǻ”½±Šµ©‚µ©ƒ´¨‚³§·«„¼°ˆ¾²Š¼°ˆ½±ŠÀ´¼°‰¹­†»¯ˆ·«…´¨‚¸­…¼°‰½±Š¼°ˆº®‡¸¬…·¬…¸¬…¼°‰Á¶ŽÆº’ĸ‘½±Šµ©ƒ±¥¡•r‚c€x[kcKOI673&
+  >>?ŠŠ‹ÜÜÜüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþððïÂÀ¸ÄÁ³ÙÙËéëÝîîÞïíÚíèÏëåÊëåÉîèÍïêÒïéÑíçÍèáÃß×´Ö˥ɽ—µ©„Ÿ•sŒ‚d|sXg_HQK:A<//,## $##EEE€€×××ôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûÙ×м´›É¿›ÑÇ¡ÐÆ É¿˜Á¶¹®‰¦œy…|_`XCC>.-)F&/¾2Aü8Hü@QüGXüJ\üNaüQeüThüYnü`uüh}ülünƒüq†üq‡ür†üs‡üuˆütˆüq†ünƒüjüj€ük€üh|üeyüeyük€ü|’ü”©ü°ÆüÍàûæðøó÷öúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúûõôù÷éñøÞêúÛëüßíúÝèùÃÓûš¯üwŽü]rüJ]üAQû?Oû?Nû;Jû;Kü=Nü@Rü@Qü>Oü@Qü@Rü=Oü=Nü=Nü=Nü=Nü<Mü9Iü8Hü7Gü5Dü3Bü3Aü1?ü0<æ@H¾Œ‹¯ÔÌ°åݼçàÀèáÂéâÄßֵɾ™¨{€wZ^WBA=.,*#<<:onn¤¤¥ÔÔÕúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷÷öĸÐ̺ëæÑñí×óïÜõñâóïÛñìÕñìÔðêÒíæËçß¿âÚ·ÞÖ²ÚÑ­ÌÃœÁµŽÆ»“Ë¿—ʾ—ÏÄœÐŞɽ•Áµº®†´¨‚²¦°¤~²¦€¶ª„º®‡¼°‰¿³‹ÁµÀ´Œ¾²Š¿³‹¸¬…³§¶ªƒ¼°ˆ¾²Š¹­†¸¬†½±‰¾²‹¿³‹¾²ŠÀ´ŒÁµŽ¿³‹¼°‰¹­†²¦€¤˜t‘†fvZg_HMG640$ <<=ŒŒŒÞÞÞýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùùÖ×ØÈÊÆÄöãáÑìíßìíßíìÛïë×íèÏîéÏïêÓïêÓîèÏêãÈæÞÀáØ·ÚѬÎÃœ¼±‹¡–tˆaqhO[T?FA173',) " ++)TTTââãýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûÞÜÖ¼´Æ¼™ÐÇ¡ÑÇ¢ÌÁœÇ¼”¶¶ª„™mphONH62.".-7¤>NìEWùK^üPdüThüXlüYnüVjüWlü[pü_tüauüauüdxübvü]qü[oüZnüWiüQcüK]üGXüFWüEVüBTüFYüRfüj~üŽ¡ü°ÃüÉÝüÛîûèðøïõøôùøõú÷øúöúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõùúõìñ÷ÚæúËÜüÍÛúÕÞùÒáû¼Ñü²üzüXkü?Oû2?û+7û(3û+7û/<ü/=ü/=ü0=ü2@ü5Dü7Gü6Eü4Bü4Bü4Bü4Bü4Bü3Bü3Bü3Bü3Bü3Bü3Bü9EâQW´›š°ÝÖ»çàÀêãÆìåÉéáÃÛѮĸ’£˜vypUVP<;7+,*&FFE~~®®¯ÚÚÛûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÑÐËÆÁ¯àÜÉîëØñí×ôðÞöõçôñàñìÕñìÔðêÒìåÉäÛ¹àײÜÒ­ÓʤËÁ›È½–ÍÛÏÄœÌÀ˜ÍšÌÀ™Ç»“Ź‘¶Ž¹­†´¨‚³§€±¥~²¦€¶ª„¾²ŠÃ·Â¶ŽÀ´Œ¾²‹¿³‹»¯‡¸¬…º®†½±Š¾²Š¹­†¸¬†½±ŠÄ¸Æº’ĸĸ÷»¯ˆ¸­†¶«…®£~¢–s‘‡gzqV^WBGB10,!
+  @@A’’’âââýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùÚÚÙÃÅÄËÍÈÙÛÒìíáðïßîêÕíéÑîèÐïëÔñîÜôñâòíÙëäÉäÛºÜÓ®ÕË¥Ï÷°¤’ˆhwoS\U@A=./,!%",,+SSS––•àààýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýäâÝÀ¹¥Ãº—ÐÆ¡Ô˦ÒÉ£Ì›Ĺ’¼±Š¥šw~uYYR>:5($!(.5‹?M×DVõFYüK^üPcüReüRfüReüReüRfüSgüTgüTgüSgüObüI[üGZüDVü=Mü6Dû1?û0=û1>û4Bû<LüM`üf{üŠžü³ÄüÍÝüÓæüÑæüÒãûÛéûåòûëöûòùøùûöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúúõøúö÷úöùúõúûõûûõúûõøúõöøöêï÷ÉÕú²Ãü­¾û·Éü¾Òü¸Íü¡µü~’ü[nüBRû1=û&0û#,û#,û#,û#,û$-û(2û.;û3Aü0=û,8û,9û-9û-9û-9û-9û-9û-9û,9û,8û,9û:CÛ_`¢§£ªãÝÅîèÎïêÑíçÍåݽÖ̦¾³šoogNNH752(/.)RQPŽ¿¿Àììíüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõô»¹±×Ò¿íê×óðàòîÙóïÝõôçõòàñí×ðêÓíæËçàÁà×´ÛѬÔʤËÀ™ÍÃœÓʤÕË¥ÒÈ Íšȼ”ĸ¶ŽÇ»“ɽ•Áµ»¯ˆ·¬…µ©‚³§€µ©‚¾²‹Æº’Ź‘¾²‹º¯‡¾²Š¾²‹¾²Š¿³‹¿³‹¿³‹½±‰¼°ˆ¼°‰Ã·È¼”Ç»“ɽ•Æ»“º¯ˆ³¨ƒ­¤€§zœ’pŒ‚csjPWP<A<,,(EEF  ¡éééýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûÜÜÚÅŽÌËÂááÖêêÞïïàïìØìæÍïéÑòïÞïðåðñäòðÞðêÓçàÂÞÕ²Ôʤ˿˜Á¶²§ž“qw[e]FIC20,!-,+SSS‡‡ˆâââþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýéèãÁ¼ª¿¶•ÍÞÔË¥ÖͧÔʤЊǼ–®£„z]`YCC>.)&'*0…;HÑCUôEXüEWüDVüDVüDVüDVüDVüDVüDVüDVüCTü?Oû:Iû7Fû6Eû3@û,8û'2û%/û%/û+7û7FüK]üh|ü…›ü µü³Æü¸Êü¶Êü·ÍüÁ×üÆÚüÎàüâðüñùùùûöûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõóøöêõøèôùîöøøúõûûõöùöíöøñø÷ôöõàæ÷ÀÍú ´üŽ¢ü‘¥üž´ü ¶ü“¨üyŽüatüIXü.9û#-û!)û (û%û#ú%ú#,ú(3û'2û'1û*5û+7û+7û+7û+7û+7û+7û)4û&1û(3û@G×qq™´°©èãÌñëÓðêÑëäÈà×´Í󨃅fd\FE@00-$10,[ZZšš›ÏÏÐóóóýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùØÖξ¬åâÏòïÞóïÝðìÖñì×ôñßöóäôðÞíçÎåÞ¿ÜÒ¯ÒÇ¢ÐÅŸÑÇ ÐÆ ÓÉ£×ͧÖ̦ÒÇ ÌÀ™Ç»“֦ŽÆº’ɽ•Å¹‘Áµ¾²‹Àµ¼±Š¸¬…¾²ŠÅ¹‘Ź‘º¯Š´©„º®‡¾²ŠÀ´ŒÀ´Œ¾²Š»¯ˆ¸¬…¹­†¾²ŠÆº’Ê¿—ȼ•Ä¹‘¿´Œ´©„¯¥€¬¢}¦œx›‘oŠ€bqhNUO:@;+*&HHIªª«îîîýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûÐÑÏÉÉÄÏÍÁàßÑîíÞïíÚïëÖíèÏêäÈðêÕôóåíòéêìÝêåÍåßÅÝÖ¸Ǫ̈Íݦµª„ –tˆ~`mdLRL973&  $##OOO‡†‡ßßßþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüèæâ¾­½³”ÌÂÓɤÖͧØΪ×Í©ÍÂœ²¦Š€bg_HID3/+!&"'w1<Å<Lñ@Rü>Pü:Kü9Iü8Hü6Eü6Eü6Eü6Eü4Cü2?ü-8û)3û(2û(3û&1û"+û"+û$.û*5û6DûIZüdwü€•ü“ªü™°ü˜­ü”©ü—«üŸ´ü«Âü´ÊüÁÕüâîûôùøúûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõûûõúûõéòøÕçûÐåüÚêúìô÷öùõò÷÷àðúâïùëò÷ïõ÷Øäù°Ãü‡šüoƒür‡ü}’ü„šü—üv‹ücvüDTû4Aû*5û$.û'û!ú ú"ú%ú&ú (ú%.ú'1û(3û(3û(3û(3û(3û%/û"+û%/ûIOÚ¡ÈðìçÐñìÔîèÏèáÃÚѭĹ“¦›xxZWQ=95))'!32/```   ÓÓÓöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýáàÝ»·§ØÒ¹îê×òïÝñì×ïêÒïêÑñìÖñïÜïë×èáÄßÖ²Ôʣ˿˜ÍÁšÒÈ¡Õ̦ÕË¥ÓÉ¡ÑÆŸËÀ™Å¹‘Ź’ƺ’ĸĸƺ’Ź‘÷÷ɾ–ƺ“½²Š¿³‹Ã·Á¶Ž·¬†¯¥µ©ƒ»¯ˆ¿³‹À´Œ»¯‰³¨‚©žz¦›x­¢~º°ŠÅ»”Æ»“¿³‹µ©„¬¢~¬¢~­¢}§œxšn‰`pgNSM:;7($" RRSºº»óóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõõÐÐÎÅľÔÔÉßÝÏêè×ïëØðëÖðëÔðêÑïéÐðëÓðìÖìçÏåàÃÜÖ¶Ñ˱Êçɿ™Ä¹‘º¯‰ª }†gsjQYR>A<-)&
+@@A††‡ÛÛÛýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüæåàÈö¾¶—ËÂÓÊ£Ö̧×ΩÕ̧ɿ˜²§”ŠjphONH651$'$#T!)¥.:ê6Eü8Hü7Fü7Fü5Cü.;û,9û,9û,8û)4û$.û"+û'û$ú (û"+û#,û(2û0=û@PüPbücvüx‹ü•ü~”ütŠüsˆü}’üŠžü‘¦ü“©ü«ÀüÌÜûêñøöùöøúöøúöøùö÷ùõùúõûûõúûõúûõûûõûûõûûõûûõùúõßèø¾ÒûµÌü¿ÔüÒâûèðøïõ÷ÜëúÎâûÍàûÝìûàîüÒãü³Äü’üWiüK]üSfüeyüm‚üm‚ücwüReüAQü2@û(3û"*û (ú%ú úúú!ú%ú!)û!*û!*û!*û"*û!*û!)ú"+øUYß´°·àÚ¿ïêÒñìÔîèÎçßÁÖͨ¼±ŒšorjPHB2/+!$#432``a››œÐÐÐöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõóÍÌÆÀ½¯æáÍîéÓðìÕñíÖðëÔðêÓîéÐæàÃáÙ¹áÙ¶ÜÓ­ÖÌ¥ÓÉ¡ÔʤÕ̦ÒÇ ÎÛʾ—ź’½±‹¸¬…¿³ŒÇ»“Ç»“ĸ¶ŽÁµÁµÃ·Ê¿—ɽ•Â¶ŽÄ¸Ã·»¯ˆµ©ƒ°¥€³§€¹­†¿³‹À´Œ¸®‡ª }•Œk…{^†|_”s·­ˆÂ·¼°‰±¥€ªž{« |®¢}¦›w˜l…{]ldKOI740$
+ gghÊÊËøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòòËÍÌÂþÔÓÇäâÒêçÕîëÖïêÔðëÔðëÔðëÓïéÏîèÍìæËçàÁáÙ¶×ΫŽž¼³“¾³¹¯ˆ¯¥Ÿ•tƒy]f_GMG562%
+ ../wwxÎÎÎ÷÷÷üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîêÖÓȽµšÈ¾šÒÉ£×ΩÙЫØΩÐÅŸ¼±ŒŸ”s}sX[T?>9*/, %" 2!…)4ä/<û/=û-:û/<û.;û(2û%/û%/û%/û#,û (û$û"ú$ú"+û(2û-:ü9IüHYüXkücwükünügzü_rü`tüh}üq‡üwŒü€•ü’¨ü¶Éü×æüáìúæðùéôùéõùäðùáìøîóöøúöôùø÷úöûûõûûõûûõûûõùúõÚãø±Åû£ºü¢¹ü­ÂüÍÝúæòùäîùËÜúµËü¹ÍüÅØüÍáüÄÖü ±üs†üN`ü>NüHWûQbüZlücwü_tüUhüJ[ü;Jü.;ü(3û",û$úùùùù!ú"ú"ú#ú&û (û"*÷)1åbfÏÆÂÁêäÉðëÔñìÔîèÎæßÀÓɤ²§‚‹‚db\E=8*&$ 444__`™™™ÒÒÒøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôóòÐÎƾ°×Ò¿êåÏíèÏñìØôðÞðëÔîèÎëåÉàÙ·ÚѬÜÔ¯ÛÒ­×ΧÔÉ¢ÒÈ ÐÆŸÌšʾ–Æ»“À´Œµ©ƒ¯£¹­‡Æº’ʾ–ȼ”ĸÁµÂ¶ŽÅº’ÌÀ˜Ë¿—Æ»“ɽ•Å¹’º¯‡¶ªƒ´¨‚µ©‚º®‡À´ŒÂ¶¼±Š¯¤œ‘p…{^}sX—mµ«…À´¾²Š·«…±¥±¥€°¤£˜u’ˆhuYf^FHC20,!
+ 
+
+ %%&sstÔÔÕûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷÷÷ÄÄÁÃÅÀÕ×ÎãâÓìéÕíéÒîéÒîéÑîèÏîèÏìæËéâÄèáÃèàÂäÛ¹ÞÕ°Óɤ¿µ´©„´©„­£¡—u†gvnS\U@B=-,( EEF½½½ïïïøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøø÷ÞÜÔ»´šÃ¹–ÏÆ¡ÖͨÜÒ®ÝÔ¯ÙϪȿ™­¢~ƒeldLIC283&+'h$.Ò(4ô'1û$-û%/û&/ú!)ú'ú'ú'ú'û'û"ú$ú$-û+6û3@û=MüL_ü\püezüfzüauüVhüJ\üHYüUhübvüeyüf{üvŒüž´üÁÔüÔåüÌÞüÍáûÔéûÓçûÊàûÈÜûßëøï÷øêöúñøøúûõûûõûûõûûõ÷ùöÕàù©¾û’©ü…œüˆŸü«ÁüÔåûéñøÑÞú¬Áü–­üžµü²Èü»Ðü²Æü–¬üj|üCSü6Cû5Cü=MüPcüYlü\oüZmüM`ü>Nü4Bû,7û$.û%úúúùùùùù#ú&ú#*ñ6=Éux²ÐËÁíçÍðêÒðêÒìåÊâÚºËÁ¥šx{rXUO;2/#223__`šššÝÝÝüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÍÌɼ¹«Ü×ÁéäÊìæÌíèÏòîÛôñáíèÏéâÄæß¿ÝÔ±ØΨØЫÖͨÑÈ¢ÍÛʿ—ȼ”Ƚ•È½•Æ»“¾²‹²¦­¢}¶ª„¶ŽÈ½•É½–Ç»“Ź’Ç»”ʾ—ÍÁšÊ¿—ȼ”ʾ–ƺ“¾²Šº®‡¹­†»¯ˆ¿³‹Ã·Æº’À´¶ª„«Ÿ{’‡h€v[›o¹­‡ÁµÃ·À´Œ¹­†µ©ƒ¯£~’p‹€bwoT^VA@;-+'//0€€ßßßüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûììë¿ÆÅ»ÜÚÌäâÑêçÒíèÐìæÌìæËëäÇçàÀæÞ¾ãÛ¸ÝÔ°ßÖ²ãÚ¶áØ´ØΨËÀ™¾²‹³¨‚«¡}ž•rŒƒd{sVg_GPJ751%  **,hhißßßððñüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÜÚÒ¼µÁ¸•ÎÅžÕ̦ÜÓ¯ß×µÜÔ°ÑÈ¢Àµ£˜v€wZVO;>:+.+ O¤&Ý!*ú (û$ú!úúúú ú#ú'û(û'1û2@ü;KüDVüL`üUjü[püXlüOaüCTü:Iû?OûJ\üL_üJ\üK]ü`sü‚˜ü«Âü¸Ïü·Íü°ÅüµÌü½Ôü´Ëü¯Æü¸ÎüÍáûÛíûÚëûéòøøúöúûõûûõùúöðøùÏÞû£¹ü}”üg~ükü„šü¬ÀüÙçûÙéü»Ïü‰žü{ü‡ü—¬ü µü›±ü‰ügxüBQü0<û+6û3Aû;JûDTüObüQeüL_üDWü;Lü3Aü(3û (ú&ú!úùùùùùú#(êNM§“ŽŒØѹìåÉìæÊëåÈäܼǪ̃º°‘ˆjh`JD>/%"001___žæææýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûû×ÖÒº·ªÙÔ¿êäËíçÍîèÏïêÒïéÑíçÌçßÀâÙ¶ÝÕ±ØϪÖÌ¥ÓɣǼ–¾²ŒÁ¶ŽÂ¶Ã·Æº’Ê¿—ʾ–¿´Œ·«„µ©ƒ·«„º®‡¾²‹Ã·É½–ÏÄÒÇ ÑÇŸÌÁ™Ç»“÷·ĸĸÁµŽÁµÄ¸È¼”ʾ–ȼ”ÁµŽº®‡µ©ƒ›o‚y\›o»°‰È½•ÌÁ™È½•»¯ˆ°¤¤™v’‡gwZnfMSM:62%! 
+
+ ??@œœìììþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüææåÉÊÆÈȾÞÜÍêæÓìèÑìçÎìæËëåÉéâÅèàÁæÞ¾äÛ¹ßÖ²ÙϨÙÏ©ÛѬ×ͧÑǠɾ—¾²‹¯¤¢˜v”Šj‚x[nfM]V@IC3-)
+ @@B™™šääåùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýéèäÁ¼©À¶•ÎÄž×ͨÛÒ®ÛÑ®ÙЬÕ̧ËÀš²§‚Ž„eaZDFA150$$!>Ê"ù"úùùùù!ú"ú'û%/û)4û2@ü=NüFYüNaüRfüPdüK^üCTü:Jü4Cü5Eû=NüDUü?Oü=NüJ[üj}üŽ£ü¨¿ü¦½ü³ü³ü£¹ü¤¼ü˜¯ü³ü³ÈüÂ×üÉÝüÈÜüØèúëõøòùø÷úöùúöòøøÑßú¡¶üp†üVjü[oüezüƒ˜üºÌüÓäüËÝü—«ütˆüi}üt‰ü‚˜ü‰žüˆü{üarüFTü0=û&/û'2û0<û<KüFXüK^üH[üCUü=Nü3Aü*6û&/û (û"ú!úùùùù'+êjf¬µ¬“áÚ¿ìæÊëäÇêãÅß×µÍí£€x\XR>62&445ffg¦¦§ìììþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýàßÜ¿±ÓηèâÈìæÌíçÍíèÎíçÍëåÊêâÄäܺÞÕ°ØÏ©ÓÈ¢ÐÅÍݦº®‡¾²Š¾²‹¾²‹Ã·É½•ÌÀ˜Å¹‘½±‰¹­†¶ªƒ·«„»¯ˆÀ´Æº“ÎÛÒÈ¡ÔÉ¢ÎÛȼ”ĸ¿³‹À´Æº’Ǽ”Ç»“ȼ”ȼ”Ǽ”Ź‘¶¿³Œ¼°‰ •s‚x\–‹k·«†Ê¿—ÐÆžÌÁš¹­‡ªžz’p„e|sWf^GLF41,!
+ ""$SST¦¦¦õõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþééèÅýËɽÜÚÉèæÑíéÔîéÑìæÌëäÈéâÅçß¿æß¿èáÂæݼßÖ±Ö̦ÓÉ¢ÑÇŸËÀ™Ê¿—ɽ•½²‹« {›nŽ„d}tWg_GUN;A<-$! 
+##$gghÀÀÀõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõóÉÅ·¼³”ÊÀšÔ˦ØϪ×ͨØϪ×ΩÎÄž¹®‰™nkdLPJ7=8*-*!0_¹øùùùù$ú )û"*û&1û.:û5Cü<MüDVüK_üOcüL_üBSü8Gü2@û1>û3@û:Kü<Mü8Hü4Bû>NûWjüxŒü‘¦ü—­üŽ¥ü‡ü¥ü’§üŒ¢ü€–ü‘¦ü±Åü·Ëü´ÈüµÊüÅÚüØëûåóûï÷ùöú÷õù÷Õáù¡µüi}üJ]üNaüL_ü]pü’§ü½ÐüÎßü®Âü~“üZmüWlübwümüvŒü}’üzücuüEUû*4ú#+ú$-û)4û4Bû>OüBTüCVüCUü=Nü6Eü/<û)3û#,û (û#úúù ó25ↂ¼ÓË°êäÊîèÎìåÉéáÃÜӱƻ•¡–tqjPID2)&""#DDEƒƒƒÈÈÈõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþëêé¾»¯ÎȲäÞÃëåÊíçÎíçÍìæÊêãÇéãÅèáÂãÛ¸ÜÓ®ÕˤÎÜ˿—ʾ–Ź‘ÁµÀ´Œ¼°ˆº®†½±ŠÅ¹‘ʾ–ȼ”À´¹­†µ©‚¶«„¿³ŒÂ¶ŽÃ·È½•ÏÄœÒÈ¡ÏÜʿ—Ç»“À´À´ŒÆ»“Ê¿—Ê¿—Ç»“ĸ÷ÁµÃ¸Åº’ÁµŽ¥šw‡}`’ˆi­¢~ø’ÍÃœËÀ™¶ª„¥šv˜lŽƒdzqU`XCFA0,(
+
+ ../aab°°±øøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõÀÀ¹ËɸàÝÌççÕëçÐìçÍìæÌëäÊèáÄæÞ¾çß¿éâÃéâÄæݼÝÔ¯ÏÄǼ”··÷ÁµŽµ«†¦›x˜l‚c{rVaZCJD33.#
+  ==>”””æææþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúù×ÕË·¯’ĺ•ÎÄžÕ˧ÛÓ¯ÞÕ±ØΩɾ—¹­ˆ¡–twmT[T@GB150%  >§ö"ú ùù$ú#,û'1û(3û1>û;Lü?QüCUüEXüG[üDVü9Hû/<û+7û2@ü8Hü:Jü6Dû2?û1?û8HüM_üh}ü{‘ü—üwütŠüvŒü~“ü~“üvŒümƒü‡ü¬Ãü£¹ü™®ü¥»ü¶ËüÇÚüÖèüãñûí÷úí÷úÓãû¥¹üfyü>Pü?Oü9HûAQûh{ü–¨ü¹ÊüºÍü”§übuüGXûDTûReü_tül‚ütˆüoƒüatüGWû2>û#,û&ú#,ú,8û6Dü?PüCUüBUü@Qü<Mü6Fü/;ü$-û'û%ú$ù(-ÞJM» »æßÇïêÑðëÒíçÌåݽÕ˧»°Š‘‡h`YD:6(0/0]]^®®®éééüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýíìêÂÀ¶ÊŲäßÉíçÎîçÎïêÑïéÐíçÍëäÇèàÁäܺÞÖ²ØΩÒÇ ÎÛÍÁ™ÌÁ™ËÀ˜Ç¼”Áµ¹­†´¨‚¶ªƒ¼°‰Â·Â·¿³‹¹­†¶ª„»°‰Æ»“ȼ”ƺ’ȼ”ÌÁ™ÏÜɽ–ȼ”Ê¿—Æ»“Ź‘Ç»“ɽ•Ç»”À´ÁµŽÄ¸Â¶ŽÆº’ʾ–Ĺ‘°¤›o™Žm¡–t¯¤€¼±‹Áµ³§¤˜u–‹jˆ~_tkQ[S??:+#   AABƒÒÒÒüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûúúóóñµ´¬ÛÙÇéèÕêéÖìçÍëåÈëäÈëäÇéáÃçß¿éáÃçàÁáØ·ÜÒ®Õɤʾ—¶Ž½±‰¾²‹¹­†°¥€ª |¡˜u—Œk‹€bxoS]VAA<-'$ 
+
+ &&'llmÌÌÍúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýâáÛ¸²›¾´‘ËÁšÔʦÝÔ²ßÕ²ØͨÌÁ›Á·•­¤ˆƒ|ge_LMH6<7))&*zÎ%ñ$û$ú#-û*6û/<û1>û9IüBTüBTü@Rü?Pü:Jü2@ü*5û(3û,8û5Dü7Gü4Bü+7û+6û3AûCUü]rürˆüq†üf|ü^süawüh}üi~üezü`tü_tü~•ü¡¹ü¦ü—ü’¨ü¤¹ü´ÈüÂ×üÑãüÜíüàñüÎâü¦»üexü6Eü0=ü-9û0=ûBQügxü’¤ü®Âü¡µüyüJZû4Cû<MüJ]üXmücwüj~üj€ü_süJ[ü4Aû%.ú%ú&ú&0û/<û5Dü9Iü<Mü>Pü<Mü6Eü-9û'2û$.û"+úBFÔ}|¨Á½ºîéÓñìÔðêÒëåÉÞֲǽ˜§œy{rWMG5+( ==>ppqÁÁÂùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýïïíÈÆ»ÈíåàÈíëØïì×ðëÔòíØðêÔíçÎëäÇäÛºÜÒ­ÙЪÖ̦ÒÈ ÐÅžÎÛÌÀ˜Ç¼”·À´Œº®†µ©ƒ¸¬…¸¬…¶ª„µ©ƒ·«…º®‡»¯ˆÁµŽËÀ˜ËÀ˜È¼”ȼ”ʾ–Ê¿—ƺ’ź’Ƚ•È½•È¼”ȼ”ƺ’ĸ¿³Œ¾²‹¿³ŒÃ·Ê¾–ÏÄœËÀ™ÀµŽ³¨ƒ¦œy›‘p–Œk¥›x³¨ƒ¬¡|’pŒ‚c~tXjbJRL962&
+  &&'[[\¯¯¯ëëëýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý÷÷öéé涶®ÜÝÎêèÕìçÎëåËëåÉëåÈëäÇêãÅéâÃéâÃáÙ¸ÔÊ¥ÎÃœÌÀ˜É½•Ä¸¿³Œ¼°‰¯¤~¢—t¢˜uŸ”r”‰i†|^qiOWP<:6(  ==>¡¡¡ñññýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîíê¿»ªµ¬ŽÈ¾™Ô˦ÚÑ®ÚѬÖ̦ÓÊ¥ÌĦº´‘Œ|ojYTN<D?/51$&#&F”$ä (û#,û*5û1>û6Eü7Gü<Mü@Rü;Kü7Fü5Cü-9û&/û%/û-9ü4Cü4Cü-:ü&0û%/û-9û<LüPdüf|üo…ü^süNbüSfüXmü[püXlüPcüL`üXmüxŽü§ü”üq†ü—ü’©ü¢¹ü®Åü½ÑüËÝüÓçüÇÝü£¹üdwü2@ü'1û(2û*4û+5ûDRûi|ü‘¦ü³ü¢ü]oü8Gü3Aû<LüI\üRfüYnü_uüezü\püK]ü7Dû&0ú$ú!ú%ú#-û)4û/<û6Eü7Gü6Fü5Dü1>ü,7ù*3òbcѳ­±ÞØÁñìÖñìÕîèÎèáÃØϪº¯Œ”Šjh`I=8*!,,-PPQˆˆ‰ÉÉÊûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóòñÉƽľ¨Ý×½êçÐëëÛíëÙñíØôñáñì×íæÊéâÄà׶×ͧÕË¥ÕˤÓÈ¡ÐÆžÌÀ˜Æ»“½±Š¹­†¾²Š½±Š»¯ˆ¾²‹¶ª…« |©žz±¥€º®‡½±‰Â¶ŽÊ¿—ËÀ˜Ê¾–ȼ”Ǽ”Ç»“ƺ’ĸ‘ĸƺ’ȼ”Ç»“ĸÁµŽÂ¶½±Šº®‡Ä¸ÍÁ™ÒÇ ÑÇ ËÁ™Â·´ª…›’q‚y]Ž…g —uœ’qŽ„e}tXsjPbZDJD3/+! //0jjk¾¾¿òòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþùùøååáÛÛÓÈŹäãÒïíÛñíØïêÒîèÏîèÎìåÉéáÃæݽãÛ¹ÙЬÎÃœÌÀ˜ÌÁ™ËÀ˜Æº’¾²‹²§‚¨y¡–t¢—tœ‘o‚c~tXiaJNH63.# &&'bbbÖÖÖùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõÍÊ­¦½³’ÎÞÔʦÕ̦ÓÈ¢ÐÅŸÍĠļœ¨ „…}ef^HVO;F@02.&&n%Û$-û)5û1?ü6Eü8Hü8Hü:Kü:Jü0=û)5û)4û(2û'1û(3û0=ü4Cü,8û%/û#,û+7ü9HüK]ü`tüh}ü\püK]üBTüI\üMaüNbüK_üASü?OûWkürˆü{ül€üeyüt‰ü‚™ü¦ü›²üª¾ü¹ÌüÄÙü»Óüœ³übtü1>ü%.û&0û'1û (ú-8ûHXûq„üŒ¡ü¥üs‡üL\ü3@û1?û9HûBSüI\üQeü[pü\qüWküJ[ü7Dû%/ú"ùù!ú (û'1û.;û0>û2?û6Eü6Eü7DóBJÕ½ÎɽíéÔõòâòí×îèÎçàÁǪ̃´ª†Š€bZS?0-"""#@@Auuv²²³ëëìýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõóØÖϼ·¤ÙÒ·æàÄéäËëèÓíêÕñì×óîÛñìÖíçÍçßÀãÛ¹ÞÕ³Ö̦ÐÅžÎÛÌÀ™Æ»“¿³Œ¹­†¹­†Â¶ŽÅº’··«†®£ªŸ|ªŸ{¯¤~µ©‚¶ª„»¯ˆÄ¹‘ËÀ™ÎÜɽ•Ã·¿³Œ¾²‹ÁµÄ¸‘Ç»“ȼ”Ç»“Áµ¼°‰¾²Š¾²‹À´Æº’Ë¿—ÌÁ™Ê¿˜È½•Åº’»°Š“rulSrkQ{sXzrWskQkcKg_HZS?E?0*& ==>€€ÑÑÒûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýëëéÍÌÄÐͽÞÚÇíêØóðßóïÝïêÓîèÍìæÊéâÄæݼáصÛÒ­ÓÉ¢ÌÁšÌÀ˜ÌÁ™Ê¾–·¶«…¥šw¡–s¤™v¦›x›oˆ~`zqVe^GID3.*! LLMªªªóóóüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýïîìÆö²ªÁ·’ËÀ›ÏÅ ÐÅŸÎÛÏÃÌÁš»°‰Ÿ”r€w[kcKVO;@;,&#P$µ'1ç1>ù6Fü8Hü7Gü5Dü3Aü/<ü&0û )û"+û)4û-:û,8û.;û-:ü$-û"+û'2û5DüHZüXlücwü[oüGYü?Pü>Oü@RüASüASü=Oü6Dü8FûZlülücwüWküWküezüt‰ü–üŠ¡ü—¬ü¥¹ü°Çü¬Äü”ªüatü3@ü#,û"*ú!*ú!ù&ù.9ûO`üpƒü…™ü‚—üdvü?Nû/;û,8û4Bü;LüCVüNaüSgüUjüSgüHZü8Fû*4ú%úù!ú (û&0û(2û*5û1?û5Cò@LÝhlµ¨§²ÞÜÑñïàõñáñìÖìæÊãÚºËÁœ¤šxxoUIC3$"--/VVW’’“áááúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúííéÜÚн¬Ñ˲âÝÁãÞÂæáÅíèÐîéÒïéÑñìÔðëÒìæËãÛ¹à×´ÝÓ±ÒÈ¢ÌÀ™Ê¾–ȼ”¶Ž¼°‰¸¬…º®‡Å¹‘ɽ•Â·ªŸ|¡—t¤›x®¤~µ©ƒµ©‚²¦€¶ªƒÁµÈ½•ËÀ™É½•Å¹’¶¿³ŒÂ¶ŽÇ»“ȼ”Ź’¶ŽÀ´¿´ŒÀ´Â¶Å¹‘ȼ”ȼ”Ç»“Ź‘ÁµŽ½±Š¸¬†£˜uvZumStlRrjPmeMg_H^WANH694(  
+
+ WWW¤¤¥éééþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûÑÐÌÉǺÙÕÀçâÌïëØðì×íèÎìåÉèáÂåÝ»äÛ¸ãÚ¶à׳ØΨÑÇŸÏÄœÌÁ™É½•Äº’»±‹­¤œ’pœ‘p¥šwªŸzŸ”qŒcuZiaJID3/,!$$$bbc¶¶¶öööüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúùÝÛÖ«¥¶¬‰Å»•ÌÁœÏÄžÑÆŸÓÈ¡ÏÄÁ¶Ž®¢~—Œl{rWbZDMG652%!!9t&1¼3Bò6Fû6Fü4Cü.;û(3û#-û"*û!)û#,û,8ü0>ü+7û&1û#,û"+û&0û/;û>OüQeü\püTgüEWü=Nü>Pü?Qü;Lü9Jü7Gü1>û-:û8Eû\nüezüPcüH[üK^üWküg|üvŒü•üˆŸü“©üŸµüŸµüŽ£ücvü6Dû'ú ú ùùù (ú7DûTfüp„ü—ütŠüTfü7Eû(3û,8û3@ü:JüCVüGZüI]üOcüPcüJ\ü>Nü-8û%úù!ú(û!)û#,û)4ø1;ÞKP»Œ¥ÌʺäèàììÜîéÑîéÐéáÃÙϬ¶«‡Šc^WB83&99:eefŸŸŸéééüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýööõîîíçåàÜÚÎÈijÓÍ´ãÜÀåßÁãÝ¿èãÉñíÛïëÔíçÌïéÑîèÍèáÃÝÔ±ÔÊ¥ÎÜ˿˜Ë¿—ÌÁ™Ç»“¶Ž¿´Œº®‡º®‡Å¹‘Ç»“¾³Œ§›x›o“q°¥½²Š½±Š¸¬…¹­†Â¶ÀµŽ¾³ŒÅ¹‘Ë¿˜ÎÜʾ–ȼ”ɽ•É½•Â¶Žº®‡ÁµŽÊ¿—ËÀ˜È¼•Åº’Ç»“Ç»“ƺ’ƺ’¼°Š°¥€°¥¬ |ž”ršo˜m…f„z]skQZS?A<,+( %%'hhi···ðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýððïÇƽÏ̺ßÚÄìæÎïêÔîéÐëåÈëãÆçß¾ãÚ·âÙµâÙµà׳ÚÑ«ÕÌ¥ÔˤÒÈ¡ÐÅžÍÄÈ¿™½³Ž©žz§›w­¡|« {¢—t–Œkˆ~`meNLF53/#))(ccc««¬õõöûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüûûèç帳¥«£„À·’ÊÀ›ÍÞÏÄÐÅžÎÛ¶°¤šn‚y\ofM_WBJD4/,.D 'Ž+6×/=ô.;û*6û&0û!)û%ú"+û&0û'1û)4û)4û%/û (û%ú%/û/<û<LüK_üWküWjüEWü8Gü8Iü;Lü<Mü9Iü5Cü/<û(3û+6û:IüZmü]püDVü>OüBTüL_üYmüf{üq†üzü„šü‘¥ü”¨üˆ›übtü8Gû"*úùù!úù!ú(2û?NüZmüt‰üzüi}üK\ü1>ü(3û(3û.;û:Jü>Oü@RüH[üL_üK_üI\ü=Mû,7û&úù ú!ú#ú!)õ;?Çkh˜±ª¢àÜÂèèÖëèÑìåÊëåÉâÚ¹ÍÞ£™vxpUNH7*'((*MMN‚¾¾¿ðððýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõôóåäßÜÚÒÛØÌÏÊ·Ñ˲âÜÀéâÅèâÃèâÅêäÉìæÍéâÅèáÂìåÉéâÅãÛ¹×ΨÎĜɽ•È¼”Ë¿—Íš˿—Ƚ•È¼•Æ»”Ç»”Ë¿˜Í›ɿ˜¸­ˆ®£~­¢}µª„À´Æº’ĸ‘÷Ź‘»°Š´©„º¯ˆÄ¹‘ÍšÏÄÐÅÏĜ˿—¶Žº®‡ÁµŽÌÁ™ÑÆŸÐÆŸÎÜɾ–¶¾²ŠÁµ¼°‰³¨‚·«…·«…«¡}©ž{§›x™Žm‹bvmSUN:84'#  112wwxÆÆÇöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùø÷àßÜÈĵÛÕÁæàÊíèÏíçÎíæÌìæÊëåÉèáÂäܺãÚ¶áÙ´ß׳ÜÓ®ÙÑ«ÙÑ«ÙϪÙЪÛÒ®ØΩÍÃœ¹­‡²¦€³§€ªŸz¤™vŸ”r…ftkQRL::5('$.-+^^^ŸŸ ðððøøøûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøøøØÖϪ£‹º°ŽÄº•É¾˜ËÀšÌœ͛ĸ‘±¦œ‘o‰aypUjbJZS?@;.'&+ ^%¦%.è#,ú (û (û&û&ú%0û)5û(2û$-û!*û (û%ú 'ú+7û8GûEXüQfüThüK^ü9Hû0>û6Fü8Hü8Hü5Dü0>û*6û%.û-9û@QüWjüSeü<Mü7Gü;LüCUüM`üXlücwümüxŒüƒ—ü‰œü”üatü:Iü#,û ùù#ú ùù&ú.:ûEVübuüv‹üu‹ü`tüAQü*4û"+û%/û2@ü6Eü8Hü?QüCUüEWüK^üHZü9Jû*5ú%ú úù÷!&éRQ·•Ž‹ÊÂ¥çáÃëåÊëåÉéâÅäܼÕÌ©¼²‘ˆhiaJA;. ! "99:ggh¯¯°ääåøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüûûôôóëêæßÝÓÎʹÎÊ·Ó϶áÚ¼èáÄêäÈêãÇéâÇæàÃåݾäÜ»åݼæݾâÙ¸ÜÓ®ÔÊ£ÎÜʾ—ʾ–ÌÀ˜ÎÛΚΚÏÄœÒÈ¡ÔʤÔÉ¢×ͧÖ̧ɾ—ÁµŽ¾²Šº®‡À´Ê¾—͚͚ɾ–½³³©…µªƒ¾²‹É½•ÑÇ ÔÊ£ÒÇ ÎÛƺ“À´Ã·ËÀ˜ÓÉ¢ÔË¥ÒÈ¢ÍÁšÂ¶º®‡½±Š¾²‹¼°‰¾²‹¹¯‰­£« |¨œx˜l‰`rjQOH62-"
+
+EEF˜˜™ààáüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúçæãŵÖÑ»åàÉêåÏëåÌéáÄëåÉðêÑðêÒìæÊèàÁãÛ¸ßÖ²ÜÓ®ØÏ©ØϨÚѬÜÔ¯à×´äÛ»Ûү͛½±Š´¨‚°¥©žy¤™v¡–t’ˆhzqU]VAFA040$*' /-)KJI‹ŠŠäääðððúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýðð¦®¥…¹¯Š¿µÇ¼–ÍÂœÐÆŸÌÁ™½±‹ªžz™Žm€wZiaI`YCUN;C>1(&-[Í õ!ù&û#,û'1û)4û'2û",û!)û (û!)û$.û+6û4Cû=NüEWüH[üDVü<Lü1?û/<û5Eü7Gü5Dü/<û,8û)4û%/û5BûK]üSgüGXü4Bû4Bü9Iü<MüGZüRfüXlü`uük€üw‹ü~“ü{ücxü>Nû!)úùùùùùù"+ú2@ûK]üeyür‡ünƒüViü4Aû%/û#,û*5û-9û/<û6Fü:Jü<MüBTüEXüASü9Iü.;û"+û"ú#ï39ÎyxµÃ¼ªØÏ«âÛºëåÊìåÊäܼÔʦ¾´£˜v{sWUO;0-"%%&EEFzz{ÀÀÁñññüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøîíêæåáÞÜÓÑϾÙÔ¼áÝÆäáÊæáÄéãÅëäÈèàÂÜÓ²ÛÒ°åݾèàÁãÛºÜÓ®×ͧÕˤÖͧÓÉ£ÏĜ͚ΚΚËÀ˜ÌÀ˜ÐÅÕË¥ÚÑ«ÝÔ¯ÞÕ±ÚЬɾ—Áµ¿³‹»¯ˆ¿³ŒÈ¼•ÍšÐÅžÑÆŸÊ¿˜Â·¿³ŒÃ·Ê¾–ÑÇ ÑÆŸÍšÐÅÐÆžÌÁ™É¾–ÌÀ˜ÒÈ ÎÜɾ—ÏÄÌÁ™Å¹’¶÷÷¹¯‰®¥¨žz§œx¢—t“ˆgw[iaJIC2,) ''(ccd¿¿¿ôôôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý÷ööÑÏÊÅ°Ý×¾æáÆéäÊëåÊëäÈðêÔôïÝïéÒêäÇåݽßÖ²ÛѬØÏ©×ͧ×ͦØΩÙÏ©ÛѬÞÕ²Ö̧ɾ—¼±‰¶ª„³§«¡}§z¤šx—ŽmwZd\FOI6>9*0-#,)"862ppp×××êêê÷÷÷üüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøÑÎÅ©¡‡²¨†¿µÅ»•ËÀšÏÄŸÎÛÀµŽ°¤¢–sŠ€brjPjbJbZDSM:62&;•Ò"õ'û%/û)4û'2û"+û$ú"ú$û!)û)4û3Aû<MüBTüDVüARü9Jü2Aü-:û-:û1?ü2@ü0>ü,8û(3û&0û'2û:HûM`üK^ü<Lü0=û3Aü8Hü:JüCUüM`üSgü[püeyüo„üwüv‹ücxüAQû#,úùùùùùù"ù&/ú:IûThüg|ünƒüauüDTû.:û"+û!*û&0û+7û0>û5Cü8Hü<Mü?Pü?Pü>Pü:Jü.:û#-û.4ìkkÁ­ª·ÝÖÀãÛºäÜ»çàÁåݼÛÒ®ËÀš³§ƒ“‰ih`HA=-! ))+NNOŠŠŠÍÍÍóóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýúùùõôòïíèàÞÓÐ̼ÓηäÞÂìçÎíéÒëåËëäÇëäÇèáÃß׶ÜÔ²àØ·ÞÕ³ÙЬ×ͧ×ͦØΩÙЫÕË¥ÐÅÍÁ™Ê¿—ɽ•Ê¾–ÎÛÒÈ ÖÌ¥ÙЪÛÒ¬ÛÑ«Õ˥ɽ–¶ŽÀ´ŒÀ´ŒÃ·È¼•ÎÃœÑÇŸÏÄÌÀ˜È¼”Ź‘Ǽ”ÌÁ™ÐÅžÎÜʿ—ÍÁšÐÅžÑÆŸÍÁšË¿˜ÐŞ͚ɾ–͛ΛÌÀ˜ËÀ˜ÌÁšËÀ™¿µ³¨ƒ®£~©žy –s†exoU\T@?:+$! 224vvwÌÌÌ÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüððîÌÉÁÌÇ´âÛÀæÞÁèáÅìæËïéÑóïÞõñáíçÎèàÁãÚ¸ÛÒ­ÖͦÕˤÔÊ£ÔÊ£ÕÊ£ÒÈ¡ÒÇ ÔÉ£ÏŞȼ”½±Š¹­…¶ªƒ¯¥€ª¡~¦{œ’q‡}_kcJWP<GA073&+(.,&]]ZÆÆÆààáòòòùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûÝÛÖ«¦”©¡ƒ½³Äº“Ⱦ—ËÀšÉ¿—¿´³§ªžz˜Žm„z]xoTmeL^WBFA1,)1Y¡$ã!*÷%/û'1û",û$ú úú"ú"+û-:ü8HüATüDVüASü9Iü1?ü-:û-9û-9û,8û,8û+7û)4û%/û#-û)4û<LûL^üASü3Bü.;û1@ü6Fü9Iü@QüH[üPdüWlü_tüi~üq†üq‡übwüDUü(2û"úùùùùùù$ú,8ûDUüWküf{üfzüTgü<Jû&0û$ú!*ú(3û*6û/<û5Dü7Fü8Gü9Jü>Oü>Pü8Gú7AñRUÝ«¦½ÜÖ¾ëåÌëäÇæÞ½âÙ¶ÜÓ­ÒÈ¡Á¶¥šwv[RL9.+!
+445iij¶¶·ãããùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøø÷ððîîíêãâÚÌÉ·ÔиàÜÁèâÆîèÎðêÓîèÐëåÊëäÇêãÅçàÁáÙ¸ÚÑ­ÓÉ£ÑÆŸÖˤÚЪÜÒ­ÙЪÔˤÐÅÌÀ˜Æ»“ĸɾ–ÐÅÒÈ¡ÓÉ¢ÔÊ£ÔÊ£ÒÇ ÎÛɾ–ĸ¶ŽÃ·Æº’ȼ”ÎÛÐÆžÌÀ˜Ê¾–ɽ•É½•Ê¿—ÌÁ™ÎÛÌÁ™È¼”Ç»“ÌÁšÒÈ Íšɽ–͚͚ÌÁ™Ê¿—ÌÀ™ÐÅÓÈ¡ÔÊ¢ÒǠȽ–¿³Œ·«…¬¡|ž”q‹bneMNH651$ BBDÙÙÙûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøèçâÈƸÑÌ´åßÂèáÅëäÉïèÏðëÓðëÔïéÒìåÉéâÅæÞ¾ÝÕ±ÖͦÑÇŸÎÛÍ›ÏÅÏÄÎÛÌÁ™ÌÁ™Ê¿—ÁµŽ»¯ˆ·«„²¦€« |¤šw™mŠ€awnSc[EOI7=8*0-"/,%PNJ®®­ÏÏÏèèèõõõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýííë¾¼±¦ ‰³ª‰¼²Á¶Ã¸’À¶½±‹¹­‡·«…¬¡|šnŠ€bzpVkcKWP=?:1&%6n ´#,ç%/ù"+û#ú!ú$ú%ú!*û(3û1?ü:JüBTü@Rü9Hü-9û(4û,8û0?ü1?ü,9û+7û)4û$.û"*û#+û*6û=MûJ\ü;Jû-9û,8û-:û1?û8Gü?PüEXüI\üOcüWlü_uüi~üm‚üdyüJ\ü.:û&úùùùùùùú!*û1>ûCTüYlüfzü`tüN`ü8Fû$-û )û#,û#-û(2û-9û.;û2?û7Fü9Jü:Kû@NóbgΖ’°ÓÍÀíçÍîèÏèáÂáÙ¶ÜÔ¯ØΨɾ™¬¢ˆ€aaYD73'
+
+ EEF~~ÓÓÔôôôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýúùùóóðïîèãâÚËɹØÓºæáÇèãÉèáÄëåÈìæËìåÊêäÇëäÆéáÃâÛ¹ÚÑ­ÔˤÔʤÕË¥ÕˤÕÊ£ÔÊ£ÒÈ¡ÓÈ¡ÒÈ¡ÏĜȼ”ĸɾ–ÎÛÌÁ™ÌÀ˜ÌÀ˜ÌÀ˜Ë¿˜É¾–ȼ”ĸÁµÁµŽÂ¶ŽÃ·È¼•ÌÀ™ÍÁšÍšÍšÌÁ™É½•Ç»“ËÀ˜Ê¾–ĸ¶ŽÉ¾–ÑÆŸËÀ˜Å¹‘ɽ•Ê¾–ɾ–ɽ•Í›ÓÈ¡ÖˤÔÊ¢ÑÆŸÍšǻ”¼°‰ªŸ{–‹j|sX_XBC>.-) ##$]]^¶¶·õõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷öÜÛÔÉIJ×дçàÂëåÉíçÌïèÏïéÏîèÎíçÌëäÈèáÂãÛ»ÝÕ±×ΩÓÉ¢ÌÁšÈ½•È½•É½•È½•È½•Ê¾–ʾ–·»¯ˆµ©‚²¦« {£˜u™mƒcvYldKWQ=E@/95'3/%@>8zyw¶¶¶ÝÝÜññòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷÷öÞÜعµ¦§ ƒ°¥‚¹®‰¾³ÀµÂ·Â·À´¸¬…ªŸ{™Žmx[mdL^WBPJ8@;2+)Gr%¹'ä#öù ú 'ú#,û(3û0=û7Gü=Nü>Pü7Gü.;ü(2û'2û+7û/=û0>ü+8û(3û%/û!*û (û$-û1?û@QüEWü3Aû(3û*6û+7û/<û7Gü?PüDWüFYüL_üTiü\qüdyüh}ücyüM`ü1=û (úùùùùùùú$ú'1û5CüJ[ü\oü`tüWküEWü,7û"+û )û (û#,û&0û)5û-:û1@ü3Aü;HïYbÍ“¼ÇƺæãÌíçÎèáÄãܺàسÛÒ­ÎÄž´©…Ž†ghbJB>.!
+ ''(QQRåååýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþûûû÷÷õôóòîíéÕÓÉƱÕϸäÞÂèáÅçßÂåݽéâÅìæÊìæËëäÇæÞ¿ß×µÛÒ­×ͧÕË¥ÖͧÖ̦ÑÇ ÐÅÏÄœÏÄœÐÅÐÆžÑÆŸÍ›ɽ–ÌÁ™ÌÁ™É½•Æº’Ź‘ȼ”ȼ”ȼ”ȼ”ĸÀ´¾²Š¾²ŠÁµÅ¹‘ȼ”ɾ–ÌÁ™ÎÛÌÁ™È¼”Ź‘Ǽ”Æ»“ĸ÷ɽ•ÏÅÌÁ™Ç¼”ȼ”ȼ”ȼ”Ê¿—ÎÃœÓÉ¡ÖͦÔʤÏÄËÀ˜Á¶±¥€ •rŽ„eulRXR==9*&#  ../vvvÒÒÒüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿööõÊȾƿ§ÛÔ¶èáÃìæËíçÌìæÉìåÉîèÍîèÏëåÈäݽÝÖ²ÚÒ­ØЪÕ˦ÍÛƺ’÷øƺ’ɽ•É¾–Ǽ”ÁµŽº®‡´¨‚±¥¬¡|¦›w’p†f„z]tkQbZEOH6A<-62&2/'LKG’‘‘ÎÎÎñññÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøèçåÁ¾´¡šƒ£šz¯¦‚¸­ˆ¿´ŽÄº”Æ»”¶»¯ˆ³§£˜uˆ~aogNd\E^WAVP=?:3%$<|¹åõ"ú"*û'2û/;û6Eü<Nü?Qü9Hü.:ü&0û(2û*6û+7û,8û+7û)4û%/û!*û (û (û&0û:JüCVü?Pü-9û%/û*5û+7û.;û5Eü=NüCUüDWüJ]üRfüZoü`uüdyüavüM`ü2?û!)úùùùùùùù#ú#-û-9û<LüL`üWmüWküL_ü5Cû)4û"+û (û (û"+û&1û*5û,7ù2=îKRÑ€¤µ¸¹ÞãÛëéÔèâÆáÚ¹áÙ¶ßÖ²Õ̧½²Ž™ŽmpgOKE4*& %%&CCDttt´´´÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü÷÷õôóðãâÝÎÌÂÉųÜ×ÀçáÉçáÅâÛ¼àضáÙ·çàÂëåÉìåÊèáÃßÖµ×ͨÖÌ¥ÖÌ¥Õ˦ÖÌ¥Óȡ͚͚ÏÄœÏĜ͚͚ÒÈ ÒÇ Í›ÍÁ™Ë¿—Ç»“ĸĸȽ•Ê¾–ɽ•Ç»“ĸÀ´Œ½±‰½±ŠÀ´ŒÄ¸Æº’Ź‘ɾ–Κ˿—ȼ”ƺ’ĸĸƺ’Ç»“ʾ–ΚÎÛÌÁ™É½•Ç»“ȼ”ÍÁ™ÏÄœÑÆŸÖ̦ÕˤÍ›ƺ’¶«„¡•s”Šiˆ~`qiOTN;84&!
+889‚‚ƒÚÚÚýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóóò½¹­ËæÜÔ´åÞ¾êãÆíæÌíçÌëåÈìæÊìæËêäÇåÞ½ßÖ²ÙЫÔʤÎÄÊ¿˜Å¹‘÷Ƚ•ÎÃœÐÅžÍÁ™Ç»“¶Ž½±Š¹­†³§°¤­¢}¡–t•Šjƒc€vZohN\U?KF4<7)1,"85/srq¼¼¼éééýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýðïîÓÑÌ®ª›š’y£™z®£¶¬ˆ¼±Œ¿´Ž¾³Œ»¯ˆ¶ª„« }˜o…{^ulRiaI^XBNH6840Ax¹ å )û'2û.;ü5Cü8Hü:Kü:Jü2?û)3û#,û(2û+7û+7û+7û)4û%/û"*û (û (û (û&1û<LüBTü9Iü*5û$.û)5û+7û,9û0=û7Fü<Mü=OüCUüK_üThüYnü[pü]rüPcü7Eû#-úùùùùùùùù%ú&0û3AüASüK_üQeüPdüFXü7Eû'2û%ú#ú (û"+û$.û*2ðEHÀsq™®©Ð͵âàÈçáÄèáÃèáÄäܺÕ˧¾³Ž –tyqVPJ8/,! !!"EEFllm¢¢£ááâýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûùùøõôòàÞÖÅÁ±ÈíÚÕºèâÇêãÈçàÂåݾãÚ¸áÙµäÛºäܼáÙ¹ÛÒ°ÚЬÚÑ«ØΧÐşɾ˜ÏÄžÓÉ¡ÎÛÎÛÏÄœÏÄœÐÅÑÇ ÔÊ£ÑÇŸËÀ˜Ç¼”Ĺ‘÷ÁµÅ¹’ÏÅŸÐÆŸËÀ˜Å¹‘¶ŽÁµÁµŽÁµŽÁµÂ¶ŽÃ·Åº’Ê¿—ÎÛÍÁ™È¼”ĸĸĸĸƺ’Ƚ•Ê¿—͚͚ɽ•Å¹‘ź’ÌÁ™ÏÄœÐÅžÔʤÑÆŸÇ»”¿³Œ±¥€œo…eƒy\i`IKE40,!
+ JJL¢¢£èèèýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööõÉǼÇÁ¦ÙѱäݼçàÁêâÆëãÇëäÆëäÇëäÈìæÊéâÄãÚ¹ØΩÐÅžËÀ˜É½•Ç»“ȼ”ÐÅžÖÌ¥ÓÉ¢ÎÛǼ”¶Ž¿³‹¼°‰¸¬…µ©ƒ²¦€£˜t˜l–‹jƒduYiaJVO;E?/61%2.%MKF••”ÞÞÞüüüüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþééçÂÀ¹Ÿ™‰™’yŸ•wª }³¨„¸­‰¼±Œ¼±Š¹­‡³©ƒ© |”rŽ…f}tXjbJ`XCRL941(>s!¹#-ê+7÷3Aü8Hü8Hü6Eü2?ü)4û$-û#,û(2û)5û(3û)5û'2û"*û (û'û%û )û)4û<Mü=Nü3@ü'1û$.û)5û+7û,9û/=û4Cü8Gü9Iü>PüFXüL`üQeüThüXmüObü:Iü%/úùùùùùùùùù&ú*6û7Fü?QüH[üOcüQeüCTü/<û )ú"ú#ú$ú).çFHÄyvŸ°©“ÖέãÚ¹äܺäÛ·æß¾èáÃÞÖ³Á¶’ž“r|tWTO;0,! 778ggh–––×××üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúø÷öòòïÙØÐÄÀ®×ÒºãßÆçâÈçáÄåÞ¾åݽéáÃéáÄåÝ¿àصÜÓ®×ΨÒÇ ÕÊ£ÙЩØΧÎÜŹ’Ƚ–ÍÁšËÀ˜ËÀ˜ÍšÑÆžÔÊ£ÖͦÔÊ£ÏĜȽ•Å¹‘øź’Ç»”ËÀ™ÓÉ£ÔÊ£ÏÄƺ’¿³Œ½±ŠÂ¶ŽÃ·Áµ¾²‹À´ŒÅ¹‘Ê¿—ÏÄœÐƞ͚Ƚ–Ǽ”Ź‘¶ŽÃ·Ä¸‘÷Ź’Æ»“Ź‘÷ĸÎÄœÑÇŸÏÄÎĜǻ”¼°‰µ©ƒ¨y–‹k…{^riOUO<;7($! 
+''(qqrËËËöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþ÷ööÔÒÊÊÄ°ÖϱæÞ¿çàÁæß¿æÞ¾éâÄêãÅêäÇìæÌëäÈäܼ×ͨÐÅÎÛʿ—ɽ•ÌÁ™ÓÉ£ÖͧÑÇŸËÀ˜Æº’À´Œ»¯ˆ¹­†»¯ˆ¹­†±¥€¤˜ušn˜Žl“‰hˆ~`tkQaZDQJ8@;-51%95,ec^ÍÌËøøøøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùØ×Ôª¦›œ–ƒœ”z£›z­¢€µ«‰½²À´½±‹¹­†²§‚ª¡}£™v“‰i{qWqiQhaKQK:62."!=#€#+Ä*5æ2@ö7Gü5Dü1>û*5û$-û"*û#,û(3û'2û$-û'1û&1û"*û (û&û"ú"+ú.:û=Nü9Iü-8û$-û$-û)4û*6û-;û3Bü7Fü8Hü9Iü=OüCVüGYüM`üSgüUiüL^ü9Iü&0úùùùùùùùùù ù#,ú/;û7Gü?QüGZüNbüFXü6Eü(2û&ú!÷$ï@BÄxs’´®£ÞØ¿çàÃéâÄèáÁãÚ¸áصÜӰ̪Ÿ~ƒy]\V@62&   889ZZ[‡‡‡ÄÄÄøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüøøöèçãÑÎÅÁ½¨ÖзçáÉééÖéçÒèâÅæÞ½æÞ½êãÅíæÊéâÆß׳ÚЫÖÌ¥ÑÆŸÐÅÑÆŸÓÈ¡ÐÅžËÀ˜Æ»“ĸ÷Ź‘ʾ–ÑÆŸÕÌ¥ÖͧÒÈ¡Íšɽ•Ç¼”ɾ–ÌÁ™ÏÄÑÆŸÑÆŸÒÇ ÑƟȼ”¼°‰µ©ƒ»¯ˆÁµÀ´Œ½±Š½±ŠÂ¶ŽÉ½•ÏÄœÓÈ¡ÓÈ¡ÑÆŸËÀ˜Æº’¶ŽÁµ¾²‹»¯ˆ»¯ˆ½±ŠÁµÂ¶ŽÆ»“ÐÇ ÒÉ¢ÎĜǻ”»°‰±¥€©yž“qŒ‚cumR]V@B<-,(
+  778‰‰ŠÚÚÚúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøø÷ÒÐÉÆÀªÖίåݽçàÁçàÀçàÀéâÄæß¾âÛºãܼâÚ¹ÝÕ±ÖͦÓÉ¡ÒÇŸÌÁ™È¼”ɽ•ÐÆŸÕˤÏÄÇ»”¿³‹¸¬…²¦°¤¶«„º®‡·«…­¢|¥šv¡˜uš‘o…fuYofN^VALG5@;,=9,NI@–•ææåòòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþññðÍËDZ®£¡›ˆŸ—{¥›{¯¥ƒ·­‰½²Œ½±‹º®‡·¬…µª…¬¢}Ÿ•s‘‡i…}fysag`LSM:?;6-,L%({)/­1=Ý4Bú,8û(2û$.û!*û#,û'1û)5û&1û"+û#,û#,û!)û (û'û&û'2û3Aû:Jü3Aü'1û"*û"*û%/û(3û,9û0>û5Cü8Gü8Hü:Kü>PüCVüK^üRfüThüK]ü9Iü(3û#úùùùùùùùùù#ù%.ú/<û7Gü@QüH[üFXü>Oü2@ü'1û%+î>>Àtpœ±ªžØѶëåÊëåÈëäÇèáÃàصÖͧȽ—¯¤‡~bbZD>9+   668aab……†µµµìììþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýüüüøøöÞÛÔËǺÈïÙÓ¹äÞÂéäÉëçÒêçÑêäÇèáÂèáÂêãÅêâÅæÞ¿àØ´ÛÓ®×ΨÑÆŸÍšËÀ˜Ê¿—Ƚ•Ç»“ź’÷ÁµÂ¶ŽÅ¹‘ɽ–ÎÃÒÈ¡ÐÆžÌÁ™É¾–Ê¿—ÌÀ˜ÌÀ˜ÍÁšÎÛÏÄœÎÃœËÀ˜Â¶µª„®¢~µ©ƒ¿³‹Ã·Ã·Â¶Å¹‘Ê¿—ÎÛÎÃœÐÅÑƞ͚ɽ•Ä¸¿³‹º®‡¸¬…¸¬…»¯ˆÃ·É½–ËÀ™È¾˜Ì›ÎĜø²¦€¤˜uœn†f~tXf^GNG62.# 
+
+ KKL¢¢£æææûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööôÊǽÆÀ¨ÖήãÚ¸æß¿èáÃéâÄçàÁáÙ·ÛÓ¯ÚÒ®ØÏ©ÖË¥Ö̤ÖÌ¥Ôʣ͚ǻ“Ç»“ÍÛÒÇ ÌÀ™ÁµŽ·«„²¦®¢}­¡}µ©ƒ¼°‰½±Š·«„±¦€­¤€¤šw˜l‰~`ypUjbJ[S>OJ7ID3LG9b^SŸž™àßßûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþññðÏÍÈ«§šœ•€ž–y¦œy®¤€µ«†¸®‰º¯‹¼±½²‹µ©ƒ«Ÿ{£™w•Žu…lwoXmdL_XDHC642C-/m-5¨*6Ý#,õ!)û (û!)û%/û)5û)4û%.û!)û (û (û (û&û&û!)û,8û6Eü7Gü.;ü#,û (û!*û$-û(3û+7û,8û0>ü5Dü7Gü8Hü:KüBTüJ]üObüPdüI\ü;Lü,8û&úúùùùùùùùùù$ú'1ú/<ü8GüBUüEXüCUù<Lî<FãLOÎxt ²«—Ý×¼ëåÉìæÊëäÇèáÃãÛºÖͩ唫 }Šb`ZD?:,$" ''(QQR††‡···êêêýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþüüûñðïÔÒÉÆ°ËÆ®ßÚÀèãÊéãÉêãÈëåÊéãÇçàÁéáÄëäÇêãÅæÞ¾âÙµßÖ±ÚÑ«ÔʤÍ›ȼ”ĸ‘¶ŽÁµÃ·Ç»“ƺ’À´Œ¿³ŒÀ´ŒÁ¶ŽÇ»“ÌÁ™ÍšÌÀ˜Ë¿—ÌÀ˜ËÀ˜É½•É¾–Ë¿—ÌÁ™É½–¶º®†±¥€­¢}µ©ƒÀ´ŒÆº’ƺ’Ç»“ɾ–ÍÁ™Íšȼ”ʾ–ÍšÎÛÌÀ˜Ç¼”¶Ž¼°‰¸¬…¸¬…½±ŠÄ¹‘ËÀ™Í›Ĺ‘ĺ“Ƚ–¿³¬ {›n†f‚y\meLUN;=8*"   ...llmÈÈÈõõõþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõôÌɾÈÀ¤ÖͪáÙ·åÞ¾çàÂçßÀãÛ¸ÞÕ±ÚÒ­ÙѬÕÌ¥ÑÇ ÔÉ¢ÕˤÓÉ¡ÍÁšÊ¾–ÌšÏÄœÍÁšÄ¹‘»¯ˆ´¨²¦³§¶ª„¼°‰¿³Œ¿³‹»¯ˆ¹­†¸­†®£~ •s†fƒz\vnSkcJb[D[T?VO<ZTCkfZ¨¦¡ïîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýìëêÂÀ¹ž™‰œ•}Ÿ—y¦œ{®¤‚³©†¸¯¿¶–¸’Àµ¹®‡¬£”t„h€w\zqWvnUkdMWPD?<D,.a &š 'Ù (ð (ö!)ú%.û(3û$.û!*û (û (û (û&û"ú!ú!*û,9û6Fü6Fü-9û"+û (û#,û'2û*5û+7û+7û,8û/<û6Eü8Hü:JüASüFXüGZüH[üFYü?Qü/<û (úúùùùùùùùùù ú!)ú(2û1>û?QüEWùGWìITÍfh­“ŽžÀº­âÜÅíèÒðìÕïéÑêäÇâÙ¸Ǫ̈Ĺ“¬¡~Œƒef^H=9+#! ''(FFG||}§§§àààüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöööäãàÞÝÙÌɽÿ©ÑË°àÙ½çáÅçâÆéãÈìæÌëåÉåݽßÖ´äܼéâÅéâÄæݼà׳ÙЩÒÇ Ê¿˜Ä¸¿³‹¼°‰¾²ŠÂ¶ŽÆº’ʾ–Ç»”½±Š½±‰À´ŒÀ´ŒÃ¸È¼”ɽ•Ë¿—ÌÁ™Ê¿—ɽ•É¾–ÌÀ˜ÌÁ™É½•Â·»°ˆµ©ƒ´¨‚·«…¼°ˆÂ¶Æ»“Ź‘ƺ’ËÀ˜ÎÛÌÁ™Å¹‘Ź‘ʾ–ÍšÌÁ™È½•É½–·¸¬…º®‡¿³ŒÂ¶ŽÆº“ʾ–ɽ–Á¶¹­†·«…« {™Žm‰aulR_XBC>.+' 
+113PPQ›››èèèûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ÑÎÄÇ¿¤Ó˨ßÖ³àضãÛ¹âÚ¸ÝÔ¯ÚÑ«ÙЪÙÑ«ÓÊ£ÎÛÐÅžÏÅËÀ™É½–ËÀ™ÑÆžÐÆžÍÁ™Å¹’¾²‹¹­†¸¬…º®‡½±‰ÁµÃ·ÁµÀ´Œ¾²‹¸¬…¯¤¥œxšn…eƒz\zpUpgNg_HaZD^WDc]Mwsh­«§òòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøø÷ÞÞÛ¹¶¬©¤“¢›„Ÿ–y§ž|®¤´ª‡º¯ŒÁ·‘Ç»”Ĺ’¸­ˆ©Ÿ|™oˆaya€zg}wfpjW]WHHEK44b')‡!&² &Ø (ó#+û$-û"*û (û (û (û&û"úù!ú$.ú/<û6Eü2@û(2û&ú&û"+û%/û)4û+7û+7û+7û-:û6Eü8Hü9Iü<NüASüDWüEXüCUü=Nü0>û#,ú úùùùùùùùùùù#ú$-û-9û7EùESåZdÉz}±¢ž¤Å½¥ÝÕ¶êçÐíðãòóçòîÜèáÃÜÓ°ÌÁ›®¤€‘‡hpiPJE4&$ %%&GGIuuv¥¥¥ÎÎÎöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûèèæÍËý¹¨ÄÀ°ÌÇ°ÛÕ¹æàÃéäÉêäÉèáÄéãÆìæÊëäÈåݽÞÕ±ßÖ²âÚ¸åݼäÛ¹àײÙϪÐşƺ“¼°ˆ¸¬…¹­…»¯‡¿³‹Ã·Æº’÷»¯ˆ¼°‰¿³‹½±ŠÀ´ŒÃ·Ä¸Ç»“ɾ–Ç»“ɽ–ÏÄžÎÜ˿—ȼ”ĸÀ´½±Š¾²‹À´ŒÀ´ŒÄ¹‘ʾ–ɾ–ɽ•Ë¿—ËÀ˜Ê¾–ƺ’ƺ’ɽ•ÍÁ™Ë¿—ź’ƺ’ø¾³ŒÁµÄ¸Ä¸Æº’Ç»“ĸ‘»¯ˆ²§€²¦€©y—Œkƒz]lcKRL983& --/VVW‡‡ˆÇÇÇðððþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüßÝÖ¿¹¡ÏÆ¥ÛÒ®ÛÒ­ÞÕ±ÞÔ¯ØΧ×ͦÙÏ©ÙЫÒÉ¢ÌÀ˜Ê¿—ȼ”Ź‘Ǽ”ΛÒÈ Ðƞ͚ɽ•Ä¸À´ŒÀ´ŒÁµÂ·Ä¸Ä¸Â¶Ä¸¿³Œ´¨‚®¤«¡~¥šwšn…e‡}^|rVriOkcJe^G`YE_ZIuqfº¹¶üüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýúúùßÝÚ·´ª¡›‰•| –w¨ž{®£€³¨ƒ¼±ŒÄ¹“Æ»”Á¶·­‡© }”‹lŠƒkˆƒs‰„u„~j{sYleOUOD:7@,-k$)¥!(Ö!(î!)ù (û (û (û (û$úúù$ú(3û1?ü5Dü-9û"+û"ú%û (û"+û'1û+7û+7û+7û-:û4Cü7Fü8Hü9Iü>OüDVüEXüBTü;Kü0>û%.ú úùùùùùùùùùùø"+ó/9ì@Hà\aǃ„°¶²­ØÑ·äÝÀæß¿çåÎëðçðóêðìÚâÙ¹Ôʤ¿´™oumSTM;2.# ::;jjjœœœÍÍÍöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóñÀ½²»¸©ÈįÛÕ¼àÛÃãßÅçâÈêåÉìæÍíæÍéâÄèáÃëãÇëåÉèàÂâÚ¸ÝÔ¯ÜÓ®àײàײÝÔ¯×ΨÐÆŸÆ»“¹®‡µ©‚·«„¹­†½±‰¿³ŒÀ´Œ½±Šº®†»¯ˆ¾²Š¼°‰¾²ŠÀ´Œ¿³‹ÁµÄ¸Ä¸Ê¿˜ÓÉ£ÐŞʾ—ȼ”Ç»“Ç»“ĸ‘Æ»“Ƚ•Ã·Ã¸Ê¿—ÍšËÀ˜Ç»“ƺ’Æ»“ȼ•È½•É½•Ê¿—Ǽ”¶ŽÂ¶ŽÄ¸Å¹’Ź‘Ź‘Ź‘ƺ’ĸ‘¼°‰´¨‚¯£}®¢}¥™v“‰i|sX`XCE?0+'
+
+ FFG‚‚ƒ¾¾¾çççûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõôóÇõƿ ÙЪÚѬÝÔ¯ÛѬÔÊ£ØΨÝÔ¯ÚÒ­ÔË¥ÌÁ™Â¶À´Æº’Í›ÒÇŸÐŞ͚˿—ËÀ˜Ç»“÷Ź‘Ƚ•È½•ÁµŽÀ´ŒÄ¸‘ĸ½±Š´¨‚³¨‚´¨ƒ¯£~¦›w’p’‡gˆ}_€vYzqUphNe]F^WBhbR‚ØÖÒûúúýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôôóÎÍȧ£—ž—„ ˜~¢˜y§|­£€²¨ƒ·¬ˆ»°ŠÂ¶Â·»°‹© }œ”u˜Žr›’u—o‹‚cƒy\ulRb[GLGH86Y*-‹%*À")ê (ô '÷ (ú (û$úú!ú!*û*5û2?û3Aü'2û!)û'û'û (û!*û&1û+7û+7û+7û,8û.;û3Aû7Fü8Hü=NüCUüDWüDVü?Qü0>û!*úúùùùùùùùùöô"î)0ÚCH½vtœ¥Ÿ¤ÌÈ¿æãÖðìÛðêÓîèÏíèÏêçÐèãÉâÚºÓɤ·‘©ž{w[YQ>30$ 889gghœœÊÊÊûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüòñï×ÖÑ·±žÆ½¡ÔͱàÝÇçåÑëèÑëëÛêëÛëçÌíçÌëåÊáÙ¸âÚºêãÅíçÎíæËèàÁâÚ·ÞÕ°ÛÓ®×ΧÒÇ Í›ÌÁ™É¾–À´¸¬…µ©ƒº®‡¿³Œ¿³‹¼°ˆ¹­…·«„¸¬…»¯ˆÂ¶ŽÃ·¿³‹¸¬„¶ªƒ¼°‰Ä¹‘ÍšÐÆžÏÄÌÁ™É½•È¼”ƺ’À´Ç¼–ÎĞø’½²ŠÄ¸Ê¿—ɾ–À´½±ŠÀ´Ê¿—Ë¿—ȼ”Ź‘¶ŽÂ¶ŽÄ¸Æº’ƺ’ÁµŽ¼°‰¼°‰¾²‹¿³Œ¹­†°¥¨y¦šwœ’oŠ€bphNPJ72."
+ 445bbc  ¡ØØØúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùÇĹÀ¸šÔʤÖ̦Ö̦ÔÉ£ÐÅžÕʤÜÒ­ÝÔ¯ØÏ©ÍÃœ¹®ˆµ©ƒ¾²‹É¾–ÏÄÏĜ͚˿—ɾ–ɾ–ɾ—Ƚ•È¼”Æ»“À´À´Å¹’÷¿³‹¼°‰½±Š½±Š¸¬…®£~¤™v“r—Œl…f†|^ypUpgOjbJmeP‚|k²­¢ÜÛÕáàÜëëéýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüèèæĽ¬©œ¢œ‡•zŸ•v¦œzª¡}®£€²§‚º®ˆ½±‹º°Šµ«†¯¤€« {¬ |£˜u”Ši‹b‚x[wnTicP[WSNKgAA„25¡"'³"Ò#ò&û$úú#ú$-û.;û1?û/<ü$.û (û (û (û (û!*û&1û+7û+7û+7û+7û+7û.;û3Aü7Fü;Lü>Pü?QüASüASü3Aû#,úúùùùùùùùôà#&ÇBA¶ba±„‚©­¥”ÏƦèãÊñóéòôêñíØðêÑíçÌéáÄÞÖ´ÐÆ ¼²¤™w‡}`b\E?:,! 445eefœœœÊÊÊôôôþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýôôóâàÚÅÀ±Á»¦ÔͲÝÕ¶ãܽåâÈçåÎìéÒïðâïñäíéÒíçÍéãÆÜÔ°ÝÔ±äݽëäÉëäÈæÞ¾àØ´ÜÓ®ÙЫÔÊ£ÎÛɽ•Å¹‘¶·¾²‹º®‡¿³ŒÂ¶Ž¾²‹¶ª„¯¤°¤²¦€¸¬…ĸ‘Ǽ”÷¶«„­¡|®¢}º¯ˆÈ½•ÎÛÑÆŸÏĜǻ“ƺ’Æ»“ĸ‘Ƚ–ÊÀ™Â¶¿³‹Ä¸È½•É½•Ä¸‘·Ź’ÌÁ™ÌÀ˜Ç»“¶ŽÁµÃ·Ä¸Ã·Áµ¾²Š¼°ˆ»¯ˆ¹®‡·¬†·«„­¡} •r™Žm„e{rVbZDC>.%" &&'QQSŠŠ‹ÀÀÀìììþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýÍÊÀ»´™ÎÄ ÑÇ ÐÅŸÎœ͚ÑÇŸØΨÜÓ­ÙÏ©Îø­ˆ°¥¶ª„ÁµŽÉ¾–ËÀ˜ËÀ˜Ê¿—ȼ•Ë¿˜Í›ʾ—Ź‘Áµ¿³‹Â¶ŽÇ»“ĸ÷ƺ’Ç»”ƺ’¿³‹´©ƒ« |©Ÿ|¤›xœ’q„e‚x[}tXxoTtlRxpVŠ‚kª¤“º¶«ÍÌÅôôòúúùýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüííìÀ¾¸˜‰—y—r“r¤™v§œy©Ÿ{®¤±§ƒ²¨„·­‡º¯ˆº®‡¸¬…« {œ‘o’‡g‰aƒ{_‚|g{lyqahaXPKW23j#&›!%Ð 'ã$í÷#ú%/û2@ü1>ü*4û"*û'û (û (û (û!*û%/û*5û+7û+7û+7û+7û,8û.:û3Bü7Gü9Iü9Jü<Nü?Qü5Cû&0ú!úùùùù÷ð$é(+ß/2ÂKK~x†¬¥›ÌƳÖϱáÚºêæÎëðæìðåîêÒìåÉçàÂß׸ÎÄ¡¹­‰ž”s€w[aZEC>.(& ++,LLMŒŒÈÈÈñññýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùäãßĹ½«ËÄ©ÚÓµãÞÃåßÂåÞ¿åßÁèãÆíèÏñîÝóðâðëÔíçÍéáÄÜÓ¯ÛÒ®ß×µåݽåܼà×´ÛѬØϨØϪÓÉ¢ÌÁ™Æº’½±Š¸¬†ÁµÁµŽ¿³ŒÃ·Ä¸¿³‹´¨‚« {©žz®¢}¶ª„ÁµŽÇ»“ź“¹­†« {¦›w°¥€¿´É¾–ÏÄœÎÜƺ’ƺ’ɽ•Ê¿—ȼ”øÀ´ŒÁµŽÆº’Ç»“ɽ•ÌÁ™ÍšÍšÎÛÌÀ˜Ç»“ĸ÷ĸ¶Ž¾²Š¼°ˆ¼°ˆ¼°ˆ¹­†´©„°¦±¦€§›w—Œl‹b|rWiaIQK840$
+ 
+
+ ;;<uuv¼¼¼çççûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþèç侬ÈÀÒÈ¡ÒÉ¢ÓÉ£ÒÈ¡ÔÊ¢ÕˤÕˤÑÆŸÌÀ™Ä¹’¾³Œ½±‰À´ŒÂ¶ŽÀ´À´Åº“ÑÆ¡Ê¿™Á¶È½•Å¹‘½±‰»¯ˆÂ¶ŽÉ¾–Ƚ•È¼”ËÀ˜ÌÁ™Ê¾–¶¼°‰·¬…´©ƒ¬¢}¢—t—Œk„fŠ€b€wZ{rV‚y[‰b’ˆmŸ˜€¬¦“ÐÍÃéèåôôòúúùüüûþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþûûûÜÜÚŸœ’‰w“Œs”‹m™nœ’qŸ•s£™w¨Ÿ|¬¢±§ƒ¶¬†¹®‡¸¬…²¦€©žy£™v“s™o™r˜s†hˆ~`{s[e_\OLf><x-0‘ %¾ ë$ø&0ù2@ú.:ú#-ú#ú#ú'û (û (û!)û"+û&0û*5û+7û+7û+7û+7û,8û.;û3Aû7Gü8Hü9Jü:Jü2Aû'1ú!úøøøøï#&Ð>?³cc©‹‰°®ª³Æ¿¬ÝØÂíéÖëæÍìçÌíéÑëéÕèåÍæßÀãÛ¹ÙЭɾœ°¥ƒ“‰itlRYR>?;,'$  !@@Bzz{¼¼¼òòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõôóàÞÙÄÀ°ÉªÕγÝÖ¹äݾåßÂçàÃèáÄèáÆêäÈëåÉíèÏîéÑíèÍîèÍëåÉâÚ·âÙ·ãÛºÜÓ°ÙϪÙÏ©×ͧÖ̦ÖÌ¥ÐƞǼ”¿³Œ¹­†¸¬…»¯ˆ¼°‰¼°‰À´ŒÂ¶ŽÀ´Œ¾²‹¸¬†°¥´¨‚¹­†¹­†»°ˆ¾²‹¼°‰·¬…´©ƒ¶ª„¹­†»°‰Á¶Æ»“ƺ’ɽ•Ë¿—Ç»“Ź‘ĸ¾²‹À´ŒÅ¹’Ź‘Æ»“ÍšÏÄœÏÄœÎÛÌÀ˜È¼”ƺ’ĸ¶Ž½±Š»¯ˆ¼°ˆ¹­†±¦€¨y¬¡|¯¤¥šwšn…e€vZjbJUN;<8*#  ../RRS‘ÚÚÛúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿññðÓÐÿ·—ÏÅŸÔˤÖͧÖÌ¥ÕÊ£ÓÈ¡ÏÅÎÛÍšʿ—ź’ÁµÂ¶ŽÂ¶ÁµŽ¾²‹Â¶ÏÞǼ–¿³É¾–ź’»¯ˆ¼°‰Ã¸Ê¿—ËÀ˜Ê¿—ɾ–ɾ–Ƚ•Ä¸Â¶Ž¿³Œ¼°‰´¨‚¨y’p˜m˜Žm…fŠ€b†f‘ˆg’ˆh•‹k›‘p¢šÅÀ³ÝÙÓæåàíìêóòñûûúýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýôôôËÉÆž›ˆv‰€gŠc†g•ŠjšpŸ•s¢˜v¨ž{­¢~²¨‚¶«…¸¬…µª„²§ƒ®¤€¬¡|¨y£˜už“qœ‘o™m†f~uYkcRZUcKJŒBB±8:µ38¶4=Å+4Ô&âó!ú'û (û (û (û (û#,û)4û+7û+7û+7û+7û,8û.<û4Bû7Gü8Hü8Hü7Fü1>û(2û%÷ à#Ì(,Í>?ÏWVÉjhµ‰†¤®«¥ÖÒÀîêÔïéÑóîÛöôæõòâòíØíçÍæÞ¿ßÖ³ØÏ«ÏÆ¡¼²Ž¤™x…{_e]GFA11-"  !99:kkk¬¬¬íííúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùøåäßÿ´º´¡ÍÆ«àÙ¹äÝÀæßÁçßÁæßÁèáÅëåÊíçÍíæÌìæÊìæËíçÌíçÌìæÊêãÆæß¾åݼàØ·ÔɤÐÅžÔÊ£ÒÈ¡ÒÈ¡ÔÊ£ÐÅÆ»“»¯ˆ¶ª„µ©‚µ©‚¶ª„¹­…»¯ˆ¾²‹À´Ã·Áµ¹­†º®‡»¯ˆµ©‚µ©ƒ¹­†¾²Š½±Š»¯‡º®‡º®‡»¯‡¿³‹Ã·Å¹‘ź’Æ»“Ƚ•È½•Æ»“¶ŽÂ¶ŽÆº’Ç»“ɽ•ÍšÎšÌÁ™ÌÁ™Ê¿—Ƚ•È¼”Ź‘À´Œ¹­†·«„¸¬…¶ªƒ¯£~¥™v¦šv¦›w™ŽmŽ„d„{]sjQYR=@;,)&
+
+ %%&KKLxxy±±±îîîþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùàÝÔ¶®’ËÁÔÊ£Õ˦ÕˤÓÉ¢ÑÇŸÐÅžÒÇ ÑƟȽ•Ã·Â¶ŽÄ¸É½•Ê¿—ź’¶ŽÄ¸‘ĸ‘Ź‘ɽ–Ĺ‘½±ŠÁµÅº’ȼ”ÌÀ˜Ë¿—Ź‘÷÷Ź‘÷Áµ¿³‹¹­†¯£~¢–s“q¢™wž•s›o™n—l–Œk˜Žmœ’qž”sž”v§Ÿ…°©”ÉÆ»àÞÚñðîööõøø÷ýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüûûîíìÂÁ¼Œ€|vc}u]‚y^Š€c‘‡h–ŒkšoŸ•s¤šx«¡~²§ƒ¹­‡¼°Šº®ˆ·«…´©‚¯£~¨z¦›w¥šv¤™v¢—u›o“ˆjƒl†~q}uthbgSPfFFƒ9<ž.2¹$(Ø#(ç&,ë$+ì")í!)ï!)ð$-ñ*4ò+7ó+7ô*6ù*6÷-9ó2@ó7Fñ9Hï:Hî;Iî;Ií9Eë6>ê4:æ69¾>@™RTž}z£«¤¦Ã¼°ÕϽãÞËðìÞõòäñíØñìÕóîÚôñãðêÖæÞÀÚÑ®ÑÇ¡Å»–²¨…–ŒmypV\U@@:,'$112XXY“““ÚÚÚ÷÷÷ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþúúúãâàÕÓÌÀ»¨ÇÀ¤ÔͱßغåÞ¿åÞÀåÞ¿æÞÀèáÃêäÈíçÍîèÐïéÐïêÑðêÑðêÒïéÐéâÄåݼæß¿áÚ¸ÙЬÐÅžÐÅžÓÉ¢ÏÜ͚ÑÇŸÐŞɽ–½²‹·«„´¨²¦€µ©‚·«…¸¬…¼°ˆÀ´ŒÂ¶ŽÀ´¾²Š¼°ˆ»¯‡¸¬…¸¬†º®‡¾²‹¼°ˆ·«„º®‡ÁµÅ¹‘Ç»“ƺ’÷¿³ŒÀ´Ê¿˜ËÀ™È¼”ƺ’ƺ’Ç»“Ê¿—ÌÁ™ÍšËÀ˜É½•È¼”Ǽ”Ç»“Ç»“Ź‘À´¸¬…²¦€±¥³§²¦€¬ {£˜tšm‘‡g‡~_zqVg_HKE42."
+888kkl¨¨©äääýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïï뿹§Æ¾ÔʤÔÊ£ÔʤÕÌ¥ÕÌ¥ÔÊ¢ÕÊ£Ôɢ͚Ǽ”ź’Ç»“Ê¿—Íšɾ–Ź‘ĸ‘¶Ž¿³ŒÀµÁ¶ŽÁµŽÀ´ŒÀ´Ä¸Ê¿—ÌÁ™Æ»“Ź‘Ź‘֦ŽÀ´ŒÀ´Œ½±Š·«„©z£™v¦zŸ–tœ‘pŸ”s •r •r •t¡–t¡–tŸ”sŸ”rž”u¤œƒ­¦³­›ÇĺÖÕÏëêéùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþúúúããâ´²®„tup_unY}u[‡}_ƒd’ˆh—lœ’q¢˜v¨žz±§‚¼±Š¾²‹»¯ˆ¹­†¹­‡¸¬†²¦°¤°¤°¤®¢~ªžz£˜u¤™v©ž{ž”sŽ…m|vvtn‚hd‹MKBBœ?A¯47¯+/µ',Á'+Ä)/È-5Ï-6Ñ,5Ù'0ñ)2ç-7Õ1;Ñ9BÇ?H»AI¸EL·MR³[]©lj¦}z²Œˆªš•£ª§±Ã¾¸ÛÓºæàÃíçÍñìÕôðÝôðÞòíÖïéÐìæÌèãÉáÚ¼ØάÎÄ ¿µªŸ}„fjdLMG641%!##%334QQR‚‚ƒÊÊÊðððýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúùùÍË¿¾º©Á»¨ÍƪÝÕ´áÚºäݼåÞ¾åݾæÞ¿èàÃìåÉíçÍîéÐðêÒðëÓðëÓïéÏíçÍìæÊçàÀâÚ·àضÙЫÑÇ¡ÒÈ¢Õ̦Ö̦ÎÜȽ•É½–ʾ—ʾ–ƺ“À´¹®†¶ª„¶ª„·«„µ©‚º®‡Â¶ŽÅ¹‘¶Ž½±Š¿³‹À´¾²Š½±‰¾²ŠÂ¶ŽÀ´»¯ˆº®‡ÁµŽÊ¾–ÌÁ™Ê¿—ƺ’Áµ¾²‹¿³ŒÁµŽÃ·Ã·Ã·Ä¸È¼”Ë¿—Ë¿—ɽ•Ç»“ĸ÷÷÷ź’ƺ’¼±‰±¥«Ÿ{ªŸz« {¨x •r—Œj…eƒy\qhO[T?<7)#   !!"HHIƒƒ„ÐÐÑúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùÅÁµÇÀ¢ÑÇ¡ÑÇ ÑÇ Õˤ×ΩÖÌ¥ÔÊ£ÑÆŸÎÛÌÁ™ÌÁšÍ›ÏÄœÐÅË¿—ƺ’ĸ‘¿³‹º®†»¯‡Á¶ŽÅº’½±Š¹­†¾³‹Ç»“ɽ•Ã·Â¶ŽÂ¶Ž¿³‹¾²Š½±Š¼°ˆ¼°‰º®‡°¤ªŸ{«¡}¢˜tž“q§y­¢}®¢~© |¦œy¤šw£˜v¢—u •r’q“qœ’q¦Ÿˆ²¬œÒÎÆãáÝèçä÷öõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúææå°¯ªŠˆ{vitn[woX~uZ…|_ƒd“‰i˜Žm›‘p£˜w°¦¶«†¶«…¶ª„¼°‰ÁµŽº®‡·«„¶ªƒ¹­†»¯ˆ»¯ˆµª„¹­ˆÄ¹‘·¹­‡¬ }¥›zœ“t…|e}vsyt‰he„XV†RQ“TS™VUžTU£VW¥WX±SUÍVWÃZ\®[]©dd¡nm–rr–xw—ƒ““Œ…¨žÂ¸–Ô˪áÙºçáÆêäÊìæËïéÑñìÕñìÕñìÕïéÑéãÈãܽÜÔ³ÕÌ©ËÁ¿µ‘°¦„™o|sX_XB?:,(% 001GGHccd……†ÓÓÓòòòýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîíêÉÇÀ¹¶ªÀ¹ŸÓË­ÝÖ¹áÚ»äܼäݼãÜ»äÛºåÞ¾èáÃëåÉíçÍìæËêåÊìçÍïéÐïéÏíæËéâÄãÛ»ÝÔ±ØΩ×ΨÔʤÒÈ¡×ΨÙѬ×ͨÎÃƺ’¶ŽÃ·Ç¼”ÌÁ™È½•Â¶¾²‹½±Š»¯ˆ¶ªƒº®†Ã·Ç»“¶Ž·«…»¯ˆÁµŽÀ´Œ¿³‹¿³‹ÁµŽÂ¶ŽÀ´Œ¿³ŒÅº’ÎÛÏÄœËÀ˜Æº’À´»¯ˆ·«„»¯ˆÁµÃ·À´Œ¾²ŠÃ·Æº’ĸ¶Ž¿³Œ½±‰»¯ˆ»¯ˆ½±ŠÂ¶ŽÄ¹‘¼±Š±¥©z£˜u¡–s •r›o”‰iˆ~`tlQ]WAFA0+'  667hhj¢¢¢æææþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùÒÎÄļ¡ËÁÎÃœËÀ™ÏÄÕÊ£ÕˤÑÆŸÌÁ™Ê¾—Í›ÒÈ ÕË¥Õ̦Òȡʾ–¶Ž¿³‹»¯ˆº®‡¾²‹Æº’Ǽ”¼°‰¶ªƒº®‡Â¶ŽÁµŽ¸¬…·«„¹­†¸¬…¸¬…·«…µ©ƒ¶ªƒ¸¬…³§²¦€´¨‚¬¡}ªžz³§·¬…·¬…®¥€¨ž{¦›x¨y§œx¢˜uŸ”r’pšn˜p“Šl™tœ•}˜‡ÊÈÀøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþüüüìëêÅÄÁ±°ª•’‰qk\oiTwoV‚y[Š€b„e‘‡g–ŒlŸ–t¥œy¨žz¬¡}´©ƒ¼°‰¹­‡¶ª„µ©ƒ»¯ˆÁµÄ¸‘Ǽ•Ê¿—ËÀ˜Æ»“¿³‹µª„¯¥€­£€±§‚¹¯¼³˜¯¦ŽŸ–„™ƒ¡—Š£™Œ™‘†”‰¤›‘¦š¨Ÿ˜© ”ª¡”±¨—º±œ¿¸£Æ¿©ÊªÉÀ¡ÍÞÚÑ­ãÛºçßÀæÞ½åÝ»æÞ¾ìæËðêÒïéÑîéÐèâÆÛÓ±ÍĠĹ•½±Ž¯¥‚ž“s‡~ajcLPJ983'!&&'::;WWYyyz››œÖÖÖøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþõõôååãÝÝÙ¹³Â»¡ÍÆ­ÚÒ´âÚºåݾæݽåݼæÞ¾ãܼãܼèáÃìåÊîçÍëäÉæß¿âÚ¹çàÁêäÆéãÅéâÅãÚºÕ˧ÍÁ›Ê¿—ÐÆŸ×ͦÚѬÙѬ×ΨÓÉ¢ÌÀ™Å¹‘ÁµŽÂ¶ŽÅ¹‘ÌÀ˜Ê¾–ƺ’Ź‘Ź‘ĸ½±‰»¯ˆÁµÅ¹‘¾²‹¯£~²¦€º®‡¾²‹½±Š»¯‡»¯ˆ½±ŠÁµÇ»“Í›ÑÆŸÍ›ǻ“À´¹­†¶ªƒ¼°ˆÂ¶ŽÅ¹‘ƺ’À´Œ¸¬†¿³‹Â¶Ž»¯ˆ·«„µ©‚²¦€²¦€³§¶«„¹®‡º®‡µ©ƒ°¤~¬ {£˜t›o™Žm–‹kŽ„dyoU_WBF@01-! (()TTUœœÝÝÝûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüçåßý¨ÃºšÌÁ›Ê¿˜ËÁ™ÏÄœÑÇŸÑÆŸÏÄ͚͚ÏÄÔʤÓÊ£ÌÁ™Ç»“À´Œµ©ƒ´©ƒ»¯ˆÄ¹‘ȼ”ź’À´»¯ˆ¹­†º®‡¸¬…²¦€²¦²¦€¯£~®¤±§´¨‚¸¬…º®‡·«„·«„»¯‡º®‡¹­‡»¯ˆ¼°ˆ¹®†³¨‚®¤®¢~±¥€­£~§œy¢—tœ‘o•Šj‘‡g”‰išo•‹k„h¨¡¾º¯ËÉÁÞÞÚþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüððïààÞÌËÈ’ˆuqeqkZulV|sY‚y\ˆ`Ž„e”‰j–Œl™o¡—u©žz±¦€·«…¹­†º®†»¯ˆ¿³‹Å¹‘Í›ÏĜɽ–ȼ”·µ«…³©„¹¯‰Ç¼•ÏÄœÐÆžÌÁ™Ã¸’¾³ÁµŽÀ´»¯‰¿³ŒÂ¶¾²‹À´ŒÄ¸Ç¼”ÍÛÔˤØϪÛÓ®ÝÕ°ÞÕ²àضæݽæÞ¾æÞ¾çÞ¾åܺäܹêãÅêãÆäܽàعÙѯÊÀœ¸®‰ªŸ|›’qˆ€crjR[T@C>0/+!--.CCDhhi‘···áááúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþêéæÇĹ¾º¬¼¹§ÉÁ£×έàÙ¸ãÛºäܼæß¿æÞ¿åݽæÞ½çàÁèâÅêãÇìæÊìåÉçàÁãÛ¸àصãÛ¹ãÚ¸ÞÕ²ÞÕ³ÚЬÎÜʾ–ËÀ˜ÒÉ¢ÖͦÖ̦ÒÈ¡ÌÁ›Æ»”¶ÁµŽÄ¸Ä¸Æº’ɽ–ź’ÁµÃ·Ç»“Ƚ•Â¶Ž¿³ŒÃ·ÁµŽ¹­‡¯£~¯£~¶ªƒ½±Š¾²‹½±‰¼°‰¾²ŠÁµÇ»“Ë¿—Ê¿—ɽ–ĸº®‡´¨´¨‚¿³ŒÄ¸Ä¸Æº’¶Ž»¯ˆº®‡¹­†µ©ƒ´¨‚²¦€¬ |­¡|¯¤~°¦³©ƒ¶ª„³§®¢}ªžz¥šxŸ•s˜l‚c~tYf^HMG672&#  
+
+ @@AttuÕÕÕúúúþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõóÓÑÆü¡ËÁ›ÌÀ™Ë¿˜ÍÁ™ÑÆŸÔÉ¢ÓÉ¢ÑÆŸÎÜΛÒÈ¡ÐƞǼ”ƺ’ÁµŽ²¦´¨ƒ¿³ŒÊ¿—ȼ•Á¶ŽÂ¶ŽÀ´¼°‰·«„³§±¥°¤~®£}©žz¨ž{«¢~´©ƒ¹­†¼°ˆº®‡¼°‰Á¶ŽÃ¸Ã·Àµ¾³‹¼±Š¹®‡¸¬†·«…¶ª…°¦‚©Ÿ|¤šw“q’‰h…e’‡g˜n•‹k’ˆh”Šl”‹o‘Šs¼¹®òòðýýüüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûöõôîîí×ÕÓ«©¤“‡qk\mfRskS}sX…{^‰a‹b…e•Œlšp —v®£µ©ƒ·«…¸¬…»¯ˆÃ·ÌšÍÃƼ—ɾ˜Ç¼•¸­‰¹¯‰Å¹’ÑÆŸÓÉ¡ÐÆžÑÆŸÐŞ͚ËÀ˜Ê¾–Ç»”ɽ•È¼•ÀµÀµÅ¹’ËÀ˜ÒÈ¡ÖͧÙЪÚÑ­ÝÕ°ãÛ¹èàÀèàÁæݼäÛ¹çß¿äÜ»áصáØ·ÚѯÐÆ¡ÊÀšÀµ‘®£šo†}_phP]VBID462&&# 334MMOvvwŸŸ ÒÒÓòòóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþùùùìëéÎÌȵ´­¹¶¨Ã½¤ÖϳßÙ¼ÞÕµßÖ´áÙ¶àصãÚ¹æß¿çß¿æß¿æÞ¿êãÇíçÌêãÅéâÃèàÁäÛ¹áÙµà׳ßÖ±ØΩÑÆŸÒÈ¡Òȡ͚͚ÐÅÔʤÒÉ¢ÎÛʿ—¶¹­‡¶ª„»¯ˆÅ¹‘Ƚ•É½•Ç»“¶¾²‹ÁµŽÈ¼”ËÀ˜Æº’ĸƻ“¿³Œ·«„³§€²¦€µ©‚¿³‹ÁµÀ´ŒÀ´ŒÀ´ŒÃ·Æº’Ç»“Ź’Æ»“÷¸¬…µ©‚¹­†Ä¸Å¹‘¶ŽÄ¸Ã·¾²Š¹­†´¨‚²¦²¦€±¥ªŸzªŸz¬¡}¬¢~¯¦³¨‚°¥«Ÿz¦›x¥›x —u“‰iw[lcLSL:>8*+'556bbc§§¨ïïïþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøÝÚÔĽ¥É¿šËÀ˜Ë¿˜Í›ØΨ×ͧÓÈ ÓÉ¡ÔÊ¢ÔÊ£ÕˤÓÉ¢ÍÛʿ—Ź’¿³ŒÃ·Ê¿—ÌÀ™Å¹’»°ˆ»¯‡¿³‹Â¶Ž¿³‹¹­†³§®¤¬¢~­¢}©Ÿz©žz²§¶ªƒ¶ªƒ»¯‡Â·È½•Åº’ÁµŽÁµÅ¹’ȼ•Åº’ÁµŽ»°ˆ²¨ƒ¯¥¯¥ª |ž”s‘ˆhŠ€aˆ~`Œƒd‹b„d—l–Œl‘‡h¡˜~¬¤ŽÁ»©Â½¬ãàÚòñîõôò÷÷öþþýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüøø÷ììëÍËÉ—•rodniYngTskSzqUwZ†|^ˆ~`‰€d…jœ’s¢—u¦šx¬ |¶ªƒÀµÆº“Ƚ™Æ¿¡ÊÁ ËÀ™Åº“Ǽ”ΛÕË¥ÔÊ£ÏÄœÌÁ™ÍšÏÄœÑÇŸÐŞ˿—Ç»“ƺ’ȼ•Ã¸ÀµÉ¾–ÐÅÒÇ ÕˤÙЪÞÕ°àØ´âÙ¶âÙ¶áØ´á׳à׳ÛÑ­ÓȣȾ˜»±Œ¯¥€¤›y•‹l}tYf_GRL9@:,3.$)%%%';;<bbc••–¹¹ºÔÔÕýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷÷öæåâ×ÖÑÙ×ÐËǺÁ»£Ð˲ÙÓ¹ÝÖ¸ß×·ßÖ¶áصÞÕ²ÜÒ¯ßÖ³âÙ·ãÛ¹äÜ»æÞ¾éáÁêãÅéáÃäÜ»ãÛ¸ãÚ·áØ´ÞÕ±ÚÑ«ÔˤÍÁšÇ»”Ë¿˜ÐÅžÑÆŸÏÄÍ›ËÀ˜Ê¿—ɾ–ȼ”¿³Œ´¨­¡|´¨‚÷ʾ–Ë¿—Ƚ•Ç»“ƺ“ȼ”Ê¿—Íšɽ•É½•É¾–ÁµŽ¹­†·«„·«„º®‡Ã·Ä¸ÁµÀ´ŒÂ¶Æº’ȼ”ʾ–ËÀ˜Ê¾–ƺ’À´ŒÀ´Ä¹‘ʾ–Ç»“ÁµÁµ¿³‹¼°‰¿³‹½±Š³§­¡|« {¬¡|ªŸz§y©Ÿ|«£«¢~©žz¥šw¢—t’q“‰i‚x\pgNZS?>:,*'
+++,hhi­­®éééþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûìêæÇÁ­Â·•É¾—ÌÁ™ÏÄÕ̦ÕÌ¥ÒÈ¡ÐÆžÓÈ¢×ΧØÏ©ÖͦÒÈ¡ÎÛ˿—ȼ”ȼ”Ǽ”Ĺ‘¿³Œº®†»¯‡¾²Š¿³‹¼°ˆ¹­†º®‡³©ƒ­£~« {ªŸz« {±¥·«„»¯ˆ¾²‹ÁµŽÂ·À´Œ½±ŠÀ´ŒÄ¸Ç»“Ĺ‘¿³Œ¸¬…°¦­¢~ªŸ{“r“‰j‘‡gƒdƒd•‹k—lšmž”s“qœ‘o •sªŸ}±§†³©‹µ­’»§ÇÁ°Íʼãà×çæßððíùø÷þþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúííìÎÍ˨¦¢’ˆtobe_MjcMtkRzrV|rV}tZ€w]ˆbƒf’ˆj›‘p§œx²§‚º®ˆÀ´Ã¹˜Ç½™É¾—ʾ–Ê¿—ËÁ™ÏÅÍ›ɾ—ÌÁšÐÅÑÆŸÐÆžÑÆŸÓÈ¡ÏÄÊ¿˜È½•Ä¹‘¶ƺ’ÌÀ™ÐÆŸÓÈ¡ÓÉ£ÓÉ£ÔÉ£ÔʤÔʤÓÈ¢ÏÅŸÌÁœÂ¸“·¬ˆªŸ|›o‹‚dzrWf_HPJ8>9,2.#&# ,,->>?ffg©©©ÚÚÚóóóþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûúóòñìëéÔÒÈÉųÀ»§À¼¨ÌÆ­ØѲáÙºæÞÀçßÁåݽáØ·ÞÕ²ÝÓ®ÜÒ­ÜÓ®àײãÚ·åݼæÞ¿æÞ¾ãÛºà×µÞÔ¯ÝÔ¯ÝÔ°ÚЪÔʤÎÄÉ¿—Æ»“Ź‘Ƚ•É¾–ƺ“Ĺ’øÁ¶ŽÄ¸È¼”ʾ–¶Ž¶ª„²¦¶«…¾³‹Â·Å¹’ȼ”ÌÀ˜ÎÃœÏĜ͛˿˜Ç»“ź’Æ»“÷¿³‹½±‰¾²ŠÁµŽÆº’ƺ’÷¿³‹ÁµÇ»“ʾ–ÍÁ™ÎÛÍšʿ—ȼ”ź’Ź‘Æ»“ÁµŽ»¯ˆ½±‰½±‰º®‡»¯ˆ»¯ˆ¸¬…´©‚±¦€®£©ž{¥›x¦œy§ž{§z¥›x¡–s™ŽmŽƒd€vZofMZS?C>/-*  LLLœœææçýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ÷öôÎʽ¼´˜Æ¼—ÌÁ™ÎÄÑÇ ÒÈ¡ÑÇŸÎÃœÒÇ ×Ω×Ï©ÖͧÕˤÓÉ¢ÑÆŸÍ›ǻ”À´Œ¼°‰º®‡º®‡¼°‰¼°ˆ¸¬…¶ªƒ»¯ˆÂ¶¼°‰±¦€«Ÿ{¬¡|°¤~³§º®ˆÂ¶ŽÁµ½±Š»¯‡»¯ˆ¼°‰¾²‹À´ŒÁµÀ´Œº®‡³§®¢}§›x’qŽ„e‹c™Žm’pŸ•r¨ž|­¢}­¢|ªŸ{§œx§x« |°¦´©„·¬†·¬‡·¬‰µ«ˆµ¬‹º²–º³š½·£ØÕËêèãëéåíìè÷öõýýýþýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýôôôããâÆÅ×”jg]faRhaNkcLneMriPskQvmR{rW€x]‰€c“‰j”r§œx°¥¸­‡½±ŒÂ¶Ä¹’÷Á¶Ã¸Ã·Ä¸‘Ê¿˜ÎÃœÎÃœÌÁšÏÄÖ̧ÕË¥ÐŞǼ”ƺ“Ź’øź“ÊÀ™ËÀšÆ¼–Á¶ÁµŽÁµŽ¾³º¯‰¶«†¯¥€¤™v•‹kˆ}`ulRc\FPJ8>9*.+!$!''(668JJKhhh®®®èèèþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýùø÷ÜÛÖÃÁ·¾»¯¾¸¡ÍŧÙѲàØ»ãÛ½ãÛ»âÚ¹äÛ»èàÂéáÃåݾÝÔ°ÝÓ®ßÖ±ÜÓ­ÝÕ¯âÙ¶åݼäÜ»à׳ÜÒ­ØΨÖË¥Ö̦ÖͧÑǟɾ—øÀµÁµÃ·Æº’¶Ž¸¬…¸¬…»¯‡º®‡À´È¼”ÌÁ™Æº“¼°‰»¯ˆ»¯ˆº®‡º®‡½±ŠÅ¹’ΚÓÈ¡ÓÉ¢ÏÄʾ–Ź‘À´À´ŒÃ·Å¹‘÷ĸ‘Ç»“ȼ”ƺ’÷¾²‹Â¶ŽÉ½•Ë¿—ÌÀ˜ÎÛÏÄœÐÅÏĜȽ•Â¶Ž¿´Œ»¯‡¶ª„º®‡»¯‡·«„µ©‚·«…¾³‹¿³Œ»¯ˆ°¦ªŸ|¦›x¦›x¦›x¤šv¢—ušnƒd|sXkcKZS>C>/.*  <<>wwwÁÁÁùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûéçâ¹³žÀµ’Æ»”ɾ–Í›ÎÜ͛ÑÇ¡Ö̦ÕË¥ÑÆ ÑÆŸÖˤÙЩÙÏ©ÐŞŹ’¼±‰½±‰¾²Š½±‰»¯ˆ·«„µ©‚»¯ˆÄ¸É¾–ø»¯ˆ´¨‚´¨‚¶ª„º®‡¾²‹À´¾²Šº®†¹­†¾²‹Áµ¼°‰½±Š¿³ŒÀ´Œ¼°ˆ³§¥šv•‹jƒe’ˆhž”q¬ {°¤~±¦€¶«…µª„µ©ƒ·¬†·«…³¨‚±¨‚²©„µ«†º¯ˆ¾²‹¿³Œ¿´¿´»°Š¶«‡²¨…±¨‰·°—¹²šº´ŸÕÐÃØÔÈÚÖÎãáÚõõòüüûýýüÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûòòñÖÖÔ©¨¥“‘‹ola]XI`YFd]Hf_Ig_HldLqiPxpU€w[†~a„e—m¢—vªŸ|±¥€´¨„²¦‚°¤€µ©„º®‰¼±‹¾²‹¿³ŒÀµŽÃ¸‘Ƚ—ËÀšÍ›ËÀšÈ½–ź“¶¾²‹º®‰¶«†³¨ƒ¬¡~§œy§œx¤šwŸ“r˜m”Ši‹c€vZriPc[ENH7=8*.+!$!!! +++212CCD€€••–¾¾¿çççýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööõëêéáàÝÎÌÄ¿¹¤É§Ñ˯ÚÒ´ßظãÛ»ãÛ»åݼåݽæÞ¿çßÀéâÅéãÆçàÁáصà׳à×´ßÖ²à׳à׳ÞÕ±ÙЫÖË¥×ͧÖÌ¥ÎÃœÌÁšÌÁšÊ¿—ź’À´Œ¼°‰¹­†¹­†¾²Š¿³‹¹­†º®‡¼°‰º®†¿³ŒÇ»“ÌÁ™È½•¿³Œ¼°ˆº®†¸¬…¸¬…»¯ˆÂ¶ŽÊ¾–ÐÅÑÆžÏÄœÌÁ™È¼”À´Œ¹­‡À´È½•Ê¾–ɽ•È¼”Ç»“÷¿³ŒÂ¶ŽÉ¾–Í›ƻ“÷ʾ–ÐÅÔÊ£ÔË¥ËÁšÀ´¼°ˆ»¯‡º®‡·«„´¨³§´¨‚»°ˆÆ»“Ź‘¾²‹µª…¯¤€ª }« {©y¢—ušnƒd€vZneMYQ>C>./+  224qqrµµ¶ôôôÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýòñîÑο¸¯‘¾³ŽÄ¹‘Ǽ•Ê¿˜ÍšÒÈ¡ÔʤÒÇ ÒÇ ÔÉ£ÕË¥Ö̦ÕÊ¥ÏÄź’¾²Š¿³‹¿³‹¼°ˆ·«„³§€³§€º®ˆÄ¸‘ɾ–ĸ½±‰¹­…µª„µª„¼°‰ÁµÂ¶À´¼°‰º®‡¿³ŒÃ·¿³Œ¾²Š½±Š¿³‹»¯ˆ¯£~—Œk‰€a‡g£™v¶«…¿³Œ¼±‰¹­†¸¬…·«„¸¬†Áµ¿³Œ¹®ˆ¶«†¶¬‡¹®ˆ¿´Â¶ÁµÁ¶Ã¸Â·¾³Œ¾²Œ¼±Š·¬‡´©…²¨„°¦…¹±–¿¸ŸÆÀ«ÏË»ÓÐÄÚ×ÎìëçüüüýýüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþùùùìììÓÓÑ¡ œuslnk`b]Q]XI\VDaZEe^HibIogNtlRzrVƒz]Œ‚d’ˆi—m“rŸ”sž”r¢—v§œy©ž|©ž{©ž{¬ }¯¤€²¨ƒ¶¬‡·­ˆ¸­‡¸­ˆ´©„­¢~§zž”t—m’ˆh‹‚d…|`„{^y[zqVtkRphNhaI]VARL9E@/2/#&#%$$,,,//0;;;OOP``a{{{ÇÇÇöööûûûýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþýúúúíìëÇŽ·´¥¶² À»¥ÔÍ°ÝÖµáÙ¸äÜ»æÞ¾çÞ¿åܼãÛ¹âÚ¸ãÛºæÞ¾éâÆèáÃæÞ½ãÚ·ÝÕ´ØѲÛÒ°ÞÕ°ÞÕ°ÚѬÕˤÑÆŸÑÆ ÑÇ ÌÁ™É¾–ȼ”ȼ”ĸÀ´Œ»¯‡·«„¸¬…¾²‹Ã·Â¶Àµ¾²Š·«„¹­†À´ŒÈ¼”Ç»“Àµ»¯ˆ¸¬…¹­†½²ŠÂ¶Ä¸È¼”ÌÀ˜ÎÛÌÁ™Ê¾–ʾ–Ź‘¾²‹Â¶É½•Ë¿—ȼ”Ź‘ĸÀ´¾²‹Ä¸‘ʾ—Ê¿˜Ä¸‘ĸ‘ÌÀ™Í›ÎÄÐƟȽ–¾²‹¼°ˆº®‡¹­…µ©ƒ±¥€¯¤°¦º¯‰Æ»“¶¹­†µ©‚¬¢}¤›x¥šv£—tœ‘p…f~uYnfLZS>D>.-)  --/hhi±±²óóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúåãÜÀ¹£»±ÀµÃ·È½•Í›ÑÆ ÑÇ ÐÅž×ͧÛÑ«ÕˤÏÄΚÎÛǼ”¿³Œ¾²Š¼°ˆ¸¬…´¨‚²¦²¦€¶ª„½±ŠÃ·¿³‹¹­…¶ª„°¦­¤€¹®‡Â¶Æº’Ç»”÷½±Š¿³‹Â¶Ä¸¿³Œ»¯‡¼°‰·«…©xŠ€b‡~` •sµ©„øǻ”ÁµŽ¹­†µ©‚¶ªƒº®‡Àµ¿³Œ»¯ˆº¯ˆ½±‹ÀµŽÆ»“ȼ”Ĺ‘ĸŹ‘ĸ¶ŽÁµÀµŽ¾²‹¼±Š½²‹»°Š·¬‡µ«†µ«ˆ¯¥ƒª ‚«¢†º´žÉÅ·ÎËÀÞÜÖöõóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý÷÷÷ãâ῾¼«ª¦|zsfcZa]Qc]N`ZI_YEc\Fg_ImeMulQyqV}tY‚y\‰b‹c‹‚cŒ‚d†f’‡h‘‡h‘‡h“‰i•‹k—Žm›‘pœ’r’q’q™n†h‡~a}tZvnTqhPkcLf_Hd\E`YD[T@WP=SM:KF5C>/:5)0,!$!$##'&&+++;;;VVVWWX^^_€€€··¸ËËËæææûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîîíÜÛÙÐÐÌÉÇ¿¼²ÅÀ¬ÓͲÙÒ´ÞÖ¸äÝÁåÞÀäÜ»äܼäÜ»ãÛ¹ãÛ¹áÙ·ßÖ³ÝÔ°à×´åÞ¾äÜ»áØ´ÞÕ±ÔÌ®ËŪÑȦ×ͧÙѬÚÒ¬ÖͧÑÆŸÎÛÌÁ™ÌÀ˜Ê¾–Ǽ”ƺ’÷¿³Œ¼°ˆ»¯ˆ¾²‹Ã·Æº“Ǽ”ĸ½±Šµ©‚³§·«„¿³ŒÁµŽ¾²Š»¯‡¹­†»¯ˆÃ¸Ê¿—ɽ•È½•É¾–ÌÁ™É¾–Ź‘ɾ–ɾ–Ç»“Ç»“ȼ”Ç»“Ź‘¶ŽÀ´ŒÀµÂ¶È¼”ȼ•Æ»“ƺ“Ë¿˜ÐŞʿ—ź’ɾ–ĸ¼°‰»¯ˆ·«„³§´¨‚²§‚­¤€­¤€µ«†ÀµŽ»¯ˆ²¦€­¡|£˜t˜Žm–Œk•‹j‘‡g…{^ogNYR>E?//+!
+((*jjk­­®ææçýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþóòïÑÎÁ¸°“º°ŠÀ´Åº“ÊÀ™ÐÆ ÔÉ£Ôʤ×Ϫ×ΨÐÅÍÁšÎÛÐƟȼ•¼°ˆ·«„·«„¸¬…¶ª„µ©‚µ©ƒ·«„º®‡¼°‰¸¬…³§¯¥€§z¤šw³¨‚À´Ç»”Ë¿—ɾ–ĸ‘ĸĸ‘÷½±Š¸¬…¶ªƒ°¤~£˜t‰€aŽ„e«Ÿ{¹­†¾²‹À´¿³‹½±‰»¯ˆ»¯ˆ¼°‰¸­ˆ·¬†º®ˆ¿³ŒÄ¸‘ƺ’Ê¿—ÌÀ™É¾–Ƚ•È¼”ƺ“Ź’ĸ‘ĸ‘¶À´Àµ¾³Œ»¯‰»°‰¼±Šº¯‰¶ª…´©„³©†¯¥…¬¤†µ­”¶°œ»µ£ºµ¤ÎÌÂÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûòññääãÁÁ¿–”‘‘Šspg`\PYTF]WF_ZFb[Gg_HibJmfMskQxoTxpTxpUypU{rV{rV{rWzqV|sW}tXvY€w[x\ƒy\‚y\|sXskQh`J]VCWQ=SM:OI7LG6ID3F@1B=/?:,;7)51$/,!(&"&&%777DDEHHIffgƒƒ„‘‘’¡¡¢ÒÒÒïïïøøøúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüûûüüüééçÍËÄÄÁ¶Á½­ÆÁ®ÎȳÛÕºâܾãÛºãݽæäÌæãÉåݾß×µÝÕ²ÞÖ²àØ´à×µÝÕ±ÝÔ°ÞÕ°ÝÔ±ÜÓ®ÙϪÒǡȾ›Á·–Å»–ÏÄÖͦÙÑ«ØÏ©ÔÊ£ÒÇ ÎÜǼ”Ç»“Ź‘½±Š¼°‰¿³‹¾²‹¾²‹À´ŒÂ¶ŽÀµ½±Š¾²Š¾²Š·«„·«…¸¬†´¨ƒ³§‚¶ª„º®‡½±‰¾²‹Å¹‘Ë¿—ÌÀ˜Ê¿—Ƚ•Ê¾–ȼ”ź’Ź‘Æ»“ȼ”ȼ”ƺ’ĸĸ÷¾²ŠÂ¶É¾–ÏÄœÐÅÍÛʿ—ËÀ˜ÏĜȼ•Å¹‘Í›ʾ—À´³¨‚¯£~°¤~²¦±¥€¯¤±¦µª„·«…´¨‚­¢|¢—s—Œk‚cˆ~`‡}_ƒy\xoU`XCE?01-!  $$&jjl¯¯°êêêûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüìêæǯµ­Žº°ŠÁ¶Åº”ÊÀ™ÎÅžÐÇ¡ÓË¥ÒȢ˿˜É½•ÍšÒÈ¡ËÀ™¿´Œ¶«„·«…¼°ˆº®‡µ©ƒ³§·«„»¯ˆ¼°‰´¨‚¬¡}ª¡}¤œy¢™v®£~¸¬†½±ŠÄ¹‘ɽ•É½•Ë¿—Ê¿—ĸ‘À´¼°‰´¨‚¤šv”ŠjŽ„eœ‘o²¦€¶ª„·«„»¯ˆ¿³‹Â¶ŽÀ´Œ½±Š¶¬†­¤€°¥€º®‡¿³ŒÁµŽÄ¸ËÀ˜ÐÅžÏÄœÌÀ˜È½•Æº’ƺ“ȼ•É½–ƺ“Ź’ƺ“÷¾²‹¾³‹¿´¼°Š»°Š¾³Œ¿µŽ»±‹¶«…³©ƒ±¦‚­£€«¡}§ ƒ¹µ§ÒÐÇÛÙÑíìèòðíóòð÷÷õø÷öýýýýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüùùùôôóææåÏÏÍ££ ‚€{xvnrodb]QZUG\VD]WC_YDd\Ff^Hf_Ig`Ih`Ig_Ig_Hf_Hg`Hg_Hg`HhaIjaIiaJjcKibJd]F[T@QK9F@1>9+:7):6)84(40%0-#.+!,) (%$" "!---;:;aaaŒŒŒŽŽŽ¤¤£ËËËñññóóóõõõüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüùùøññïäãàÚÙÓÈƾ®«Ÿ©¦™©¦™µ²£Ç¯×ѺâÜÂæàÄçàÃèâÇèâÅåݾäݾæäÌçãËåݾÝÔ°ÛÓ¯ß×´áصÝÔ³ÖϱÖϱÙѱÙÏ«Ôʣ͛ǻ“¿³Œº®‡¼°‰Á¶Ç¾—ÍÄžÑÇ¡ÑÇ ÓÈ ÑƟʾ—Ç»“÷½²‹¼°‰½±Š¿³ŒÁµÂ¶Ž¿³Œº®‡¶ªƒº®‡¿³‹¾²Šº®‡´¨‚ªžz©žy°¤~·«„º®‡»¯ˆÁµÈ¼”ÏÄœÍÁšÈ¼”ĸĸŹ‘ĸŹ‘Ç»“ȼ”Ź‘À´ŒÁµŽÃ·¾²‹Ã·ÌÁ™ÐÅÑÆŸÐÅžÍÁšÊ¿—ɽ–֦ŽËÀ˜ËÀ˜Ã·³§°¤µ©ƒ¸¬…´¨‚®¢}¯£~²¦€´¨®¢|¤™u—ŒkŒ‚cƒz\|sWtlRkcK_XCHB2/+  ''(SST¡¡¡ôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûúùãáÚÁ¼¨·­Œ½²ŒÀ´ŽÄ¹’Ç»”ȼ•Ì›ÎÄȼ•Ä¸‘ȼ•ÒÇ ÑÇŸÊ¿—À´À´Ã·¼°‰±¥€­¡}µ©ƒ¿³‹¿´µ©„« |«¡~ª¡~© |®£}®¢}¯¤º®ˆÄ¸È¼”ÎÛÐÅȽ•Å¹’¶·«„šo„{^“ˆi©žzµ©‚µ©ƒ¶ªƒ½±‰Â¶ŽÄ¸¾³Œµ«…¬£¨ž{±¥»°‰¸­†·«…½±ŠÉ¾–ÒÈ¡ÒÈ¡ÏĜɾ–Æ»“ƺ“Ƚ•ÍÁ™ËÀ˜È½•ËÀ™È¾–À´Â·Åº’¿´À´Á¶¿´Ž»°Š¸­†¹®‡·­‡³©ƒ±¦³¨„¸¯½´“½µ—º´œÅÀ¬ÇÁ¯ËǸÕÒÉéçâìëçðïìõõóúúùüüûýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýý÷÷÷èèçÙÙØÂÁÀº¹·–•uslgd\gbW_[M[WG^XG`ZGaZHa[Gb[Ga[G_YE]XD_XD`YE_XE^XD`XC`YD`YE_XC[T@SM<LG7C>2:6+41'41(2/'-+$+(!)& '$$#$""!"!%$#888SSSiii  Ÿ···ÊÊÊàààøøøøøøùùùûûûýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýüüûûûùùøïïíÜÚ×ÑÏÉËÉÀÇŸ³ ¸²™Â»ŸËæÑʬÖеÜÖ»âÜÁçàÅèâÆèâÄèáÃèâÇçáÅåݽãÛºæßÂèáÅçßÀãÚ¸ãÛ¹æÞ¾ãÚ¸ØбÍÇ®ÊÅ®ÐɯØϬÐşŹ’·¾²‹¹­†¸­…µ«…´«†¾´Ç¼”ɾ–ÍšÐÅÐŞʾ–øƺ“Á¶Ž¼°ˆ¾²‹Ã·Ä¸¿³Œ¹­†·«„¼°ˆÁµÂ¶·«…©žz¤™v©y°¤~²¦€³§µ©‚»¯ˆÅ¹’ÏÄÍ›ǻ“À´¿´ŒÂ¶Å¹‘Ç»“ȼ”Ç»“¶¾²Š¿³ŒÂ¶ŽÀ´ŒÄ¸È¼•Ê¾–ʾ–ʾ—Ê¿—Ǽ”ÁµŽ¼°‰¼°‰Â¶ŽÆº’ź’¼°Š»¯‰À´ŒÁµŽ¸¬‡ªŸ{¦œx­¡|µ©ƒ©žz™Žm‘†f‡}_}tXtkQe]FTM:F@02-"  **+YYZ““”æææýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþôóñ×ÔÌ·¯“·­‰»°ŠÀµÃ·ÁµŽÃ¸Åº’ÁµŽÂ¶É½–ÓÈ¡ÕÊ£ÒÈ ÍÄËÁšÈ½•¼°‰°¤®¢}µ©ƒº¯ˆ·­ˆµ«…´¨ƒ²§‚°¦­£~« {¬ {²¦€½±ŠÄ¸Å¹‘ÌÀ™ÎÛƺ’÷¿³Œ°¤’ˆi€vZ˜l±¥€º®‡º®‡º®‡¼°ˆÀ´ŒÀ´µ«†ª }¢™v¦œzµ«†Á¶·­‡´©„¿³ŒÆº“ËÀ™ÐÆžÑÆŸÐÆžÏÅŸÌÁšÊ¿—ÏÄΛǼ”ɾ—ÌÁ™É¾—ɾ—ɾ–Ź’Ź’ź“·¾²‹º¯ˆ¸­‡µ«…³©ƒ·¬…¾²ŠÄ¹‘Ź“¿´Ž»²º±‘¸®Ž±¨‰·¯”¹²š¹³½·£Â½¬ËǺÒÏÄÜÚÒêèåôóòøøøüüûüüüýýüýýýþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþøøøööõòòòëëêÇÇÆ  ž—–‘ŽŒ†{yqvsiqoblhZjeVlhXkeUgaQc]Mb]Ma\Ka[J`ZJ`[J`[I`ZHa[Ia[I_XFZTCWRBRNBHE<?<5;82:82983972751531763<;8FDCKKJRQQkkk………¯¯¯ÑÑÒðððûûûýýýüüüüüüýýýýýýþþþþþþÿÿÿþþþýýýüüüúúùôóòæåãÚÙÕÀ½±À¼¬ºµ¢º´ÀºŸÇÀ¤ÐǨÖήÝÕµáظãÛºæßÀéâÄêãÆêäÇéâÆæßÀãÛ»áÙ¹áÙ¸áØ·ãÛ¹çßÁéâÄéâÄèàÁèáÂçàÂà×µÕÌ©ÍÅ¥ËÃ¥ÍĤÑÆ¡ËÀ™Æº“Ç»”÷¼°‰¶ªƒ°¥€°§ƒÀ¶É¾—ƺ’ʾ–ÎÛÍšǻ”Á¶ŽÁµŽ½²Š»¯‡À´Ä¸Ã·¿³Œº®‡¶ªƒ½±‰Ã·Â¶Ž±¦ •s’p¨œyµ©ƒ¶ª„µ©‚¶ªƒ»¯ˆÂ¶Ç¼•È½–Ƚ•É¾–Ǽ”ź’Ç»“ȼ”ƺ“À´½±ŠÁµÅ¹’Æ»“¶ŽÄ¸Ç»“ȼ”ȼ”Ç»“Á¶Ž»°ˆ¸¬…¸¬…º®‡¿³‹Æº’ʾ–Ǽ”ɽ–Ê¿—ø¶«…ª }¥›x¨y« | •r“ˆhŽƒcƒy\ulRe^GUO:D?.4/#! ""#TTU˜˜™âââüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóóñÅÀ®¸¯’¶­‰»°Š¾³Œ¼°Š½²‹¿³Œ½²‹Ã·Ê¿—ÏÅÑÇŸÒÇ ÑÇ¡ÎÅžÊÀ˜ÀµŽ·¬†µ©ƒ¶ªƒµªƒ°¦´ª„¹­†¶«„³§°¤~­¢}±¥€¹­†¾²ŒÀµŽÂ¶ŽÉ½•ËÀ˜Ã·¾²‹·¬…¦›xŽƒe‚x\ž”q¹­†À´ŒÂ·Â¶ŽÀ´Ã·Ã¸¹°‹«¢£˜u«¡~º±‹Äº“¼³»²Æ¼”ź’·Ż”ËÀ™ÑÇ ÖͦÓÉ£ÏÄÓÈ¡ÏĜƻ“Æ»“Ë¿˜ÑÆŸÑÆŸÐŞ͛ʾ—ȼ•È¼•Å¹’¿´Œº¯‰·¬†·«…½±ŠÄ¸Ç»“Æ»“ĸ‘Á¶¾³¼±‹º®‰µ«…³¨ƒ³¨„±§„¯¦ƒ¯¥…¯¦‡·¯”¸±›Æ³ÕÓÉåäÝâàÚÝÛÖìëèîíêëêçëëè÷÷öúúùúúúüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþýýýýýýøøøòòòëëêææåÔÔÒ¿¾¼¹¸³Ÿ—†„}‚v‡„z~sxtjtpfvrgtpdqmcspewthtobuqdtpcrm`ql^tqcqmahe\ge^ca][YVYXU`_\ihfpnnoontsrƒƒ‚Ž«ªª¾½½ÊÊÊÞÞÞððð÷÷øþþþÿÿÿþþþþþþÿÿÿþþþþþþýýýûûúùùøóóòÛÚÕÁ¿·¶´§ÄÁ³Æ±¿¹¤Â»ŸÌŦÕÍ­ÚÒ±Þ×µàÙ¸àضâÚ¸çßÁèáÃçáÂéâÄêâÄéáÂèàÂçàÁäÜ»ßÖ³ÝÓ®ÞÔ°ÞÕ±áÙµçß¾éáÂèàÂæÞ¿äݽâÚ¹ÝÓ°ÖÌ¥ÑÇ ÎÄœËÀ˜Æº“Ź’ƺ“Ǽ”ø½±Š¶ªƒ²§‚µ¬‡Â¸’Ǽ•Â¶ŽÇ»“ËÀ˜È½•Ã·½±Šº®‡º®‡¾²ŠÅ¹’Ǽ”Ź‘ĸÀµ¼°‰Á¶ŽÈ¼•Åº“¶ª…¥šw¢—t­¡}º®‡¾²Š¾²‹¾²‹À´À´Œ¼°‰¾²‹Ä¸‘ÍÛÎÛ˿—ËÀ˜Ê¿—ƺ’¼°‰º®‡Å¹‘ÌÁ™ÎÜȽ–Æ»”ƺ’ĸ‘ƺ’ĸº®‡³§¶ªƒ¶ªƒ¹­†À´ŒÆ»“Ê¿—Ê¿—Ê¿—Ǽ–ÀµŽ·¬†®¥€¨žz£˜už”q”Ši‹a†|^xoTf^GTM9C=-3/##  ''(MMNááâüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýïîëÉĵº±–¶¬ˆ¹­ˆº¯ˆ¾²‹¿³Œ¿³ŒÅº’Ê¿—Æ»“Ǽ”ȼ•Â·Ã¸‘Ƚ•ËÁ™Ç¼•¿³Œ»¯ˆ¶ª„²§€²¦€³§€±¥±¥²¦€·«„»¯ˆ»¯ˆ¶«†¶¬†¿´ŒÇ¼”ɾ–Á¶Ž¸®ˆ¬£œ’pŒƒdŠb©zÁµŽÆº’ʾ–ÌÁšÍ›ÐÅžÒÉ¢ÐÇ¢Á·‘³§‚·¬†¾³ŒÂ·Æ»”ÌÁšÐƞɾ–¾³Œ¶­ˆ»±‹Æ»“ÒÈ¡×ͧ×ͧÖ̦Ñƞɽ–ź’Ǽ”ÏÄ×ͦÛÒ¬ÙϪÎÜĹ’Ê¿—ʾ–ƺ’Æ»“Ĺ’¶÷ø÷ƺ’ƺ’ÀµŽÀ´ŽÂ¶Ã·ÀµŽ¼±Š»°‰º®ˆ¶¬†¸¬†¸¬†·¬‡·¬‡³¨†°§‡¸°’²©‹¨ „·°˜»´œ¨¡Š¥ŸÙÖÌÓÑÆÎËÂÙ×Ñçæâééåéèåòñðûûúýýüüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþýýýýýýûûûúúúøøøóóóïïïíííää㻺¸·¶´¼»ºÂÁ¾º¹·¶µ³¹¸¶À¿½ÀÀ½¿¿½À¿½ÄÃÁÅĪ©¥•”›™–º¹µªª¦—–“›š—££¢   ¤¤¤¬¬«ÃÃÃÈÈÈÏÏÏÔÔÔÖÖÖàààòòòõõõöööýýüûûûùùùúúúûûúõôóííìëëéêéçêéçååâÖÕÎÊÈ¿ÃÀ±¿º¤Ä½£ÈÁ£ËãÑÉ©ØаàعåÝÀæßÀåÞ¾æàÁçàÂäܼãÛ¹çàÀéâÅëäÈëäÉéáÃåݼäܹäÜ»æݽãÛ¸âÚ·ãÛ»ÞÕ²ÛÑ­áØ´ãÚ·áØ´ÜÒ­×ͨÖ̦ÛÑ«ÚЪÔÊ£ÎÛƺ“¿´Œ¿³‹¿³Œ¼°Š»¯ˆ¹­†¸¬…º¯ˆ½²‹»¯‰¹­‡¼°‰Â¶Ç¼”ƺ“ÁµŽ¼°ˆº®‡¾²‹Å¹’Ë¿—ÍšÌÁ™ÌÁ™ÌÁ™ËÀ˜Í›ÐÅŸÓɣȾ˜¼°Š¹­†¹­†¼°ˆÄ¸‘Ê¿—ËÀ˜É¾–ÁµŽ²¦°¤€¸­†Å¹’ÌÁ™ÏÄœÑÆŸÏĜɽ•¿³Œ½±ŠÇ»“ÏÄœÔÊ£ÔʤÌ›ø¾²‹À´Ã·º®‡·«…¾²‹¹­†·«„¶ŽÄ¸Ã·ÁµŽ¹®‡³¨ƒ¼°Š½±Š³¨‚ªŸ{Ÿ”r”‰iˆ~`~uXtkQd\ERL8A<,0+   **+YYZ””•äääüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûçæàÆÁ¯¶­´©…·«†»¯‰¼±Šº®ˆÁµŽÆ»“·ĸƺ’¶¶ŽÄ¸‘ƺ“ƺ“ø¿³Œ»¯ˆ¸¬…´¨‚°¤~°¤~²¦´¨‚´ª„³©„³¨‚´ª„¹®ˆ¾³‹¾´½³¿³Œ»°‰®¤€”‹kŽ…fš‘p´©„ƺ’ȼ”ÌÁ™ÒÇ ØͧÛÑ«ÛÒ¬×ΨËÁš¿³Œ¼°‰¾²ŠÁµÇ»“ÏÄœÓÉ¡ÎÛŹ’¼²Œ¼±‹Ä¸ÐÆŸ×ͧ×Ψ×ͦÓÉ¢ÏÅÍšÍÛÒÈ ×ͧÛѬÚЫÔʤÎÞÎÜʾ–Æ»“͛̚ĸ‘Ź’Ç»“Ź‘ȼ”Ƚ–ĸ‘ĸź’ƺ“ź’Ĺ‘·¿³Œ½²Œ½²‹¼°‰º¯ˆ»°‰½²‹½±‹½²‹¼±Œº¯Š½³ŽÂ¸”º¯µ«‹Æ¿£¾·›·¯”½¶ŸÀº¤¹´ µ°ÊƹÖÓÉÓÐÈÑÏÈððíòñïññîôóòþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþýýýýýýýüûûúúúúúúúúùóóóííìïîîóóòññðìììîîíïïïîîíïïïððïìììêêêîîîßß߯¯¯ÀÀÀèèèãããÙÙÙßßÞêêêïïïôôôöööøøøúúúûûûûûûûûûûûûùùùôôôóòñððîëêèççäåäáÙØÓËÉÃÈƾÃÁ·¼¹¬¸µ¦¹µ¤¼·¡À¹¡Ê¦ÕÍ®ÜÔµàعß׸áÙ¸âÛ¹åÞ¿éâÆêãÇçßÁæáÅçäÍæàÅåݾçàÁêãÆëäÉéáÄèáÃèáÁäܺáصáضäܺâÛ½ÚÔ¹×ϯØΨÛÑ«ÜÒ­ÚѪÕÊ£ÒÈ ÓÈ¡ÔÊ£ÓÈ¡ÏÄÍšɾ–Ĺ‘À´Œ»¯‡¶ªƒ¶ªƒ¸¬…¸¬…´©ƒ±¦µ©ƒ»¯‡¿³‹À´ŒÁµÃ·Ä¸Ã·ÁµŽÄ¸Ç¼”Ê¿—ËÀ˜ÌÀ˜ÎšÑÆžÔʤ×ͧØÏ©ØЪÐƟŹ‘¾²‹º®‡»¯ˆÄ¸‘ÎÛÑÆŸÑƞɾ—»¯Š·«…»¯ˆÅ¹‘ÍÁšÑÆžÎÛÌÁšÍ›Ƚ–ź’Ƚ•ÏÄÔÊ£ÒÇ¡ÏÄÊ¿—øÀ´¿³Œ¾²Š½±Š¾²Š·«…µ©ƒÀ´ŒÂ¶ŽÀ´Œ¼°‰¶ª„²¦·«…´¨‚©žz¥šwŸ”r“ˆh„z]tkQbZDRK8A<,0+  
+
+ !!#TTU———ÛÛÛüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúùãáÛÆÁ­¶­Ž´ª†¸­‡º®ˆ¶«…¼°ŠÁ¶Â·Å¹‘ƺ“ĸÀ´¾²Š»¯ˆ¿³‹Ä¸Ã·Áµ¾²Š¹­‡µ©‚³§¶ªƒ¶«„±§‚­£®£~µª„¼°‰¼±Š¶¬†¶¬‡ÀµŽÁµ²§Ž„e†h¨Ÿ|¼²ŒÈ¼”ʾ–ΚÔÉ¢ÛѬßÕ°ÝÓ®ÕË¥ÍšĹ‘½±Š½±ŠÂ¶ŽÇ»“ÍšÓÈ¡ÑÆŸÌÁ™Ç¼”Ĺ‘Æ»“ÑÇ ÖÌ¥ÖÌ¥ÕˤÔÊ£ÔÊ¢ÕÊ£ÕˤÕˤÖÌ¥×Í¥ÖÌ¥ØΨÙϪÔÊ£ÌÁšÉ¾—ÑÇ¡ÏşĹ’Ǽ•ÌÁ™Ê¿—Ë¿˜Ê¿—ƺ“Ź‘ź’ĸź’Ƚ•È½•Ç»“Æ»”ĸ‘¿´½±Š¾³ŒÁ¶ŽÁµŽ¿´¿´Â·Ç¼”Ƚ•Å»”ø’Ƽ•É¿™É¿™Æ¼—ĺ–Á·”¿¶•¿·š¹±•­¦¶²žÁ½­½¸©»·§º·¨ÉȾØ×ÒÞÜÙçæäììëèèæïïíüüüüüüûûûûûúûûûûûûúúùùùøùùøùùø÷÷ö÷÷õ÷÷÷ööõôôóööõ÷÷öôôóúùùþþþþþýýýýýýýýüüüüûüüûüüûúúùùù÷úúùúúúúúúûûúûûûüüüûûûüüüüüüûûûùùùüüüýýüëëëòòòüüüúúùöööøøøúúúûûûûûú÷÷öôôóóóòññðàÞÜÖÕÒÑÐËÍÌÆÉÈÀÆļ¿½³½º­Á¾°Â¾¯Á»©Å¾¨ÍÈ°ÎÈ®ÌĨÊÃ¥ÎǨ×аÞÖ¶âÚ¼åÝÀçßÂçßÁæßÀåÞ¿äÜ»åݽèâÇêäÊçàÂæâÈèèÖéåÏèâÄéâÄêäÈëäÉæÞ¿çàÂêäÇæß¾áصß×´åݾáÚ¿ÓÍ´ÒË«Ö̦×ͦ×ͦÕÊ£ÎÄœÎÛÎÜɾ–ƺ’ȼ”Ë¿˜ÌÁ™Ê¾–÷»¯ˆµ©ƒ·«„º®‡¹­†¯¤~§œx³¨‚À´ŒÁµŽ¾²‹½±ŠÂ·È½•ËÀ˜É½•Ç»“ȼ”Ç»“ȼ”Ê¿—ÍÁ™ÒÇ ×ΨÛÒ­ÜÓ®ÙЫÑÇ Æ»”¾²‹º®‡½±‰Ã¸ÌÁ™ÒÈ¡ÔÊ£ÐŞȼ•Ã·Ã·È½•ÏÄœÑǟʾ—ɾ—ÐÆžÐŞ͚ËÀ˜ÏÄÒÇ ÌÁ™Î›ÏÅË¿˜Ä¹‘ÁµŽÅ¹’Ź‘½±Š¸¬…·«…¿³‹À´Œ½±‰·«…´¨‚²¦­¢}¤™u›nœ‘o™Žmƒd{qVf]GNH6?:+0+   !!"LLM——˜ÝÝÝúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýüÚ×ÎÈÁ®¶­´©†¸¬‡»°‰½²‹ÁµÅº“ȼ”ĸ‘¹­‡µ©ƒµ©ƒ·«„¼°ˆÁµÄ¸Ã·ÁµÁµÀ´¾²Š½±Š½±‰¸­†·«…·¬…³©„³©„¹­‡»¯ˆÀµŽËÀ™Åº“¯¤ˆ~aŒƒf© ~½³Ê¾–ÍšÑÇŸÔÉ¢ÔÉ¢ÖÌ¥Ö˥Λǻ”¶¿³‹ÁµÆº’Ê¿—ÎÛÐÅÏÅÍšʾ–ʾ–ÍšÓÈ¡ÕˤÕÊ£ÒÇ ÐÅÑÇŸÔÉ¢ÖˤÕˤÕˤÕÊ£ÒÈ ÒÈ ÔÊ£ÖͧÙϪÙϪØΨÔÊ£ÑÆŸÐÅÐÅžÑÆŸÍšǻ”À´¾²Š¿³ŒÁµÃ·Æº’ɾ–ËÀ˜Ê¾–ɾ–Ƚ•Å¹’ƺ“Ǽ•Ä¹’¶·Ĺ’Æ»”Ǽ•É¾—ËÁšÎÄÏÅÎÄœÌÁ™ËÁ™ÌÁ™Ê¿˜É¾™È½˜Åº–¹•Ã¹–¹–Á¸–½³”¼³”¼³”»´—¾·ž¾¶Ÿ¼¶ ÉijÏʼÅÁ´Å¸êèãèæáèæáèçáçåÞåãÜäâÛäâÚâàÖßÜÒÝÚÐÞÛÏÝÙÍÚÖÊÚ×ËÝÛÐßÝÖàßÛéèçïïîððîðïîððîñðïññïòñðòòñôôóôôóóòððïîðïîðïîñðîññîòòðóòñòòðññïðïíïïîïîíïïíñðîïïíëëèããßßÞØØ×ÐÓÑÉÁ½°½º¨½¸¦¾º¦¿»¦¿º¤Á»¢Æ¿¦ËÄ©ÏÇ«ÓˬÖί×Ï®ÙЮÛÒ°ÞÔ²ÞÔ±ßÖ²áØ·äÛ»æßÀèàÂèáÃèàÃçàÂèáÅçàÃæÞ¿èâÅêäÊëåÉéâÄçâÆêåÌìçÎìåËêãÅêãÅêãÅéáÂçß¿æß½èàÀéâÅêãÇêäÇæÞÀÝÕµÙЬÖͦÖÌ¥ÕˤÑƟ÷¾²‹¾³‹¹­‡»¯ˆÁµŽÆº’Ç»“ĸ÷¶Ž¾²ŠÀ´ŒÂ¶À´Œ¸­†´¨‚º®‡¼°‰¸¬†»¯ˆÁ¶ŽÉ¾–͚͚ʾ–ȼ”Ç»“ĸƺ’ÌÀ˜ÎÛÑÆŸÕˤÕʤÔÉ¢ÕˤÐŞȼ”ÁµŽÁµÄ¸Æº’Ê¿—ÏÄœÐÆžÏĜʾ–Ç»“Ƚ•ÏÄÑÇŸÐŞ͚ËÀ˜ÌÁ™ÐÆžÑÇ ÎÛÏÄœÏĜɾ–ʾ–ÌÀ˜ÍšÎÃœÐÅžÒÇ ÎÜǻ”ĸ¶À´Œ¼°‰·«„¬¡|¨y¦›wœ‘o“‰h†eƒc…{]vmSb[ENH683')%
+(()XXYœœèèéüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþñðíØÔʽ¶ ²©ˆµª…»°Š½²‹¿³ŒÁ¶ŽÀµŽº°Š³¨‚µ©‚º®‡»¯ˆ½±Š¿³ŒÁµ¿³‹»¯‡½±ŠÀ´À´ŒÀ´Œ¿³Œ½±‰¹®‡¶¬†²¨„µª…½²‹Â¶ŽÆ»“ÌÁ™Åº“±¦Œ‚d†h© ~¼±ŠÇ»“ÌÀ˜ÐÅžÑÇŸÏÅÏÄÏÄœÌÀ™È¼”ĸÁµÂ¶ŽÄ¹‘Ç»“ʾ–ÌÀ˜ÎšÏÄœÎÜ͚ÌÁ™ÍÁšÏÄÐŞʿ—Ê¿—ÑÆžÓÈ¡ÒÇ ÐÅžÐÅÐÅžÒÇ ÒÈ ÔÊ£ÚѬÞÕ±ÞÕ±ÝÓ®ÛÒ¬ÛÑ«×ͧÔÊ£ÒÇ Ê¿—Áµ»¯ˆ½²ŠÂ·Åº’Ç»“Ǽ”ʾ–ʾ–Ç»“ɽ•Ë¿—ËÀ˜ËÀ˜ÌÁ™É¾–ź“÷ø‘ƺ“ɾ—ÎÃœÑÇ ÒÈ¡ÒÈ¡ÑÆŸÎÄœÎÃœÍÛÌÁšÌšÍÛÍÛÎÃœÎÃœÌÁšÊ¿˜ÊÀ™ËÀ™Ê¾—ɾ™Äº—¿µ“½´•À¸·°–±«’¿¹¥µ°œ²¬˜¶±»µ¡·²œµ°šº´Ÿ¼¶Ÿ¹²›¸±™¸±˜¼µœ½¶œ¾¶œº³™¶°—±«•®¨•²®ž°¬±­ž²¯Ÿ´¯ ¶±¢¶²£¹µ¦¼¸©¿»­À¼®»·¨³¯Ÿ²®ž²®ž´° µ±¢·³¤¹µ¦¸´¥µ±¡±­°¬œ±­²®Ÿ·³¥¿¼®Á½®¸´¢¹´ž¼¶ Àº¡Â» Ê¤ÑÉ©ÓˬÖÏ°ØбØЯÛÒ°ÜÓ²ÝÔ±ÞÕ³à×µÞÕ³ÝÓ±ßÖ´áÙ·áصâÙ¶ãÚ¸äÜ»æÞ¾æßÀçàÂèàÃéãÅëåÊéâÇçàÁèáÃêâÆêâÅåݾäÜ»çß¿ëäÈêäÇæÞ¾åݽæÞ¾çß¾åܺäÛ·æݼèáÂéâÅèáÂåÝ»âÙµÞÕ°ÙÏ©ÑÇ ÌÁšÅº”¸­ˆ·¬†¼±‰º®‡¼°‰ÁµŽÂ¶Ž¿³‹»¯‡½±ŠÀ´À´ŒÂ¶ŽÄ¸Ä¸¿³‹¹­†¹­†¸¬…¹­†À´ŒÇ¼”ËÀ˜ÌÀ˜ÌÀ˜ËÀ˜ËÀ˜É¾–øĹ‘Ê¿—ÌÀ˜ÎÛÑÆŸÏĜ͚ÏÃœÌÁ™Ç»“¶ŽÂ¶ŽÄ¸Ä¸Ç»“Ë¿—ÌÀ˜ÌÀ˜ËÀ˜ËÀ˜ËÀ˜ÌÁšÍÛÎÛ˿—Ƚ•É¾–ÎÃœÐƞ͚ÌÀ˜Ê¿—ƺ’ȼ”ÌÀ˜ÐÅžÔÉ¢ÖˤÖÌ¥ÔÊ£ÑÆŸÍÛȽ•Áµ¸¬…­¢}¢—u¡–s •s–‹j‹b…{]|rWmeL^WAKE483'&"
+))*YYZŸŸ æææüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîíéÖÒÆ¿¸¡³©ˆ¸­ˆ¼°Š½²‹¼°Š¸­ˆµ«†µª„»¯ˆÁµŽÁµŽ¿³Œ½±Šº®‡¶ª„²¦€¶ªƒ»¯ˆÁµÁµ¿³Œ¼°‰¶«…±¨ƒ¶«…¾²‹Ä¸Å¹‘Æ»“ɽ•Åº’·«…—l•Œk¦z·¬‡Ä¸È¼”ËÀ˜ÍšÌÁ™Ë¿—Ê¿—ÌÁ™Ê¾–Ź‘ÁµÀ´ŒÂ¶ŽÁ¶ŽÄ¸È¼”Ë¿—ÎÛÑƟΛȼ”Ź‘ȼ”Ê¿—øƻ“ÐÅžÒÇ ÏĜ˿—ʾ–ÌÀ˜ÓÉ¡Õˤ×ͦÝÓ¯ÞÕ±ÜÔ¯ßÖ±ßÖ²ÝÔ¯ÙЫÖ̦ÏÄƺ“¾²‹½²ŠÂ·É¾–ÍÁšÍš˿˜Ç¼”÷ÀµŽÄ¸É½–ÎÛÎÛÍšʿ—Æ»”¶Ĺ‘ɾ˜ÏÄœÒÇ ÓÈ¡ÓÉ¢ÔÊ£ÔÊ£ÓÊ£ÓÉ£ÒÈ¡ÎÄÍšÎÛÎÃœÎÃœÎÃœÌÁ™ËÀ˜Í›Í›ÌÁ™ËÀ™Ì›Ì›ËÀ™ÊÀ›ÍßÌÞËÁœÎÄ¡ÎÅ¡ÌßÊÀœËÁÍÄ ÌžËÁœÌÂÎÄ ÎàÌÂËÁœÌÂÍÃÐÆ¢ÒɦÓʧÑɧÐȧÏÆ¥ÍÅ£ÌáËŸÊÀžÇ¾šÇ¾šÆ¼™Æ½™È¿œÊÁžËÁŸÊÁžÊÁŸËŸÊÁŸÊÁŸÌáÎÅ¢ÐȧÑɨÑɨÏǦË£ÉÀ ÊÁ¢ÌĤÑɨ×Ï­ÚÑ°ÛÓ±ÝÕ³ÞÕ³ß×µáظàØ·ÞÖ³ßÖ³ßÖ´ßÖ²ßÖ³à×µß×´ßÖ³àضáصáØ´áÙµâÙ¶âÚ¸äܹäÜ»åݽçß¿êãÅìåÊëäÇèàÁåÝ»æÞ½æÞ¾ßÖ³ÝÔ¯âÙ¶çàÀçàÀß×´ßÖ²áÙµâÚ¶ãÚ¶âÙµãÚ¶ãÚ·ãÛ¸ãÚ·âÙµà׳ÞÕ°ØÏ©ÍšĹ‘½²‹µ«†º¯ŠÂ¶ÁµÁµŽÃ·½±Šµ©ƒ±¦€´¨‚º®‡À´Â¶ŽÂ¶ŽÂ¶Ž½±Š¸¬…¶ªƒ¸¬†¿³‹Åº’Ê¿—ʾ–ɽ•Ê¾–ÌÁ™ÎÛÍšǻ”Ź‘Ƚ•É½•É¾–ÌÁ™ÌÀ˜Ê¾–ɽ•É½•Ç»“¶ŽÀ´ŒÀ´ŒÀ´Ã·È¼”ɽ•Ê¾–ÍšÎÛËÀ˜Åº’Ç»“Ê¿—ƺ’Ź‘ȼ”ÍÁ™Íšɽ•È¼”Æ»“ĸȽ•ÎÛÒÈ¡ÕˤÖÍ¥Ö̦ÖͦÕ̦ÐƟȽ•¿´Œ³§‚§œxž“p’pœ‘o‘‡gƒz\wnSg_HVO;FA040$$!
+ '')YYZžáááüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýíìèÔÒżµš³©†·¬‡»¯‰º¯ˆ¼°Š¾³ÁµŽÀ´Œ¿³‹Ã·¿³Œ¶«„±§‚­£~« |³§‚¾³‹Ç»”Ź’¾²‹³¨‚°¥€µ«…ÀµŽÅº’÷À´ŒÁµŽÉ¾–ɽ•¿³Œ¥šv–l™o°¥€Ã·Ç»“ƺ’Ź‘ź’Ç»“ȼ”ɾ–Ç»“¶Ž½±Š¿³ŒÃ·Â¶ŽÃ·Æº’Æ»“Ç»“ËÀ˜Ë¿—ȼ”ƺ’Ź‘ź’Ç»”ɾ–ÍšÑÆŸÐŞʾ—ȼ”Ë¿—ÓÉ¢ÖÌ¥×ͧÚÒ¬ÜÓ®ÛÓ®ßÖ²ÜÓ­ÓÉ¢ÒÇ ÑÆŸÌÀ™É½–ɾ–ËÀ˜É¾–Ǽ”ËÀ˜ËÀ˜Ä¹‘»°Š´«†´«†¾³ŒÉ¾–ÑÆžÏÄɾ–ĸ‘÷ƺ“ËÀ˜ÏÅžÐÅžÏÄÐÆžÕË¥ÖͦÕÌ¥ÔÊ£×ͦÙЪ×̧ÔʤÓÈ¢ÐÅžÏÅÏÄÏĜΛÍÛÍšÌÀ˜Ê¿—ËÀ™ÍÛÏÄÒÇ ÓÉ£ÓÉ¢ÓÈ¡ÔÊ£ÕˤÔÊ£ÓÈ ÒÇ ÓÉ¢ÔÊ£ÓÈ¢ÓÈ¢ÕˤÕˤÒÈ¡ÑÇ ÒÈ¡ÕʤØϪÛÒ­ÜÓ¯ÝÓ¯ÜÓ¯ÛÓ¯ÙЭ×ΩÕË¥ÔʤÒÉ£ÑÇ¡ÑÇ ÒÈ¢ÑÇ¡ÐÆ ÒÇ¡ÒÈ¢ÒÇ¡ÑÆ ÑÇ ÒÇ¢ÓɤÖ̧ÜÒ¯ÜÓ°ÛÒ­ÙÏ«×Í©ØΪÛÒ®ÞÕ²ßÖ³ÞÕ²ÞÖ²áÙ¸âÚ¹áضàضâÛ¹ãܺâÚ¸áÙ¸ãÚ¹áÙ¶ßÕ²àÖ³âÙ·ãÚ¹áصàÖ²à׳ßÖ²ÞÕ²ÞÖ³áÙ¶âÛ·ãÛ¸äÛ¹åÝ»æÞ¾æÞ½åܺãÚ¶áصß×µÞÖ²ÝÔ¯ßÖ²åÞ½æß¾ÝÔ±ÚÑ«ÛÒ¬à׳âÙµâÙµâÙµâÙµâÙµâÙµßÖ±ÚЫÔʤÐŞ͚ʿ—Ǽ•Ä¹“ø‘¶ÁµÁµÀ´Œ´©ƒªŸ{ªžz®¢}¶ª„ź’Ǽ”¶¶«…±¦€´¨‚»¯ˆÀ´À´Ã·Ç»“ËÀ˜Ê¿—Ƚ•Ê¿—ÎÃœÑǟΛ˿—ËÀ˜Ç»“÷ź’ɾ–ËÀ˜É½•È¼”Ç»“¶Ž¾²Š¼°‰¾²‹Ã·Ç»“ȼ”ʾ–ÍšÍÁ™É½•Â·Â¶ŽÄ¹‘Ź‘ƺ’ɽ•ÌÁ™ËÀ˜Å¹‘÷ĸɾ–ÌÁ™ÏÄœÑÆŸÔË£×Ψ×ͧÕˤÑǠȼ–¿³Œ»¯‡³§«Ÿ{¢—s˜lŽ„d„{]ulRc[EPJ7>9*-)++,[[\ŸŸ áááüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþíìèËƸ¶­’²¨…¶«†º¯‰¾²ŒÁµŽÁµŽ½±Š¹­†¾²Š¼°‰µ©ƒ±§®£« {²¦€º¯ˆ¿µ½³Œ¹­‡´¨ƒ³¨‚·«„À´Æº“ź’¶ŽÂ¶Ê¿—Íšȼ•´©„’p‘‡g§y¾³ŒÅ¹‘֦ŽÆº’ʾ—ÌÀ™É½•Æº’¶Ž¾²Š¿³ŒÄ¸Åº’Ĺ‘÷ź’ɽ–Ê¿—ɾ–ȼ”Ź‘÷·ȼ”Ë¿—ʾ—ÏÄœÑÆžËÀ˜È¼”ȼ”ÑÆžÒÈ ÒÈ¡×Ï©ØЪ×ΨÚѬ×ͧÎÛÍšÎÛÎÛÎÛÎÃœÍÛǻ”ÀµÅ¹’ƺ’À´Œ¸®ˆ²¨ƒ²¨ƒ»°ŠÅ¹’ɾ—Ç»”÷ø‘ƺ“ȼ•ËÀ™ÏÄÑÆŸÐÅžÑÇ ØϪÚѬÚЪ×ͧÚЫÝÔ¯ÛѬ×ΨÖ̦ÒÈ¡ÑÆžÒÇ¡ÔÊ£ÔʤÑÇ ÏÄÏÜ͛ÌÁ™ÎÃœÑÆžÓÉ¢ÓÊ£ÖÌ¥Ö̦ÖÌ¥×ͧ×ͧÔÉ£ÑÇ ÓÉ¢ÖͦÖͧÕË¥×ͧØΩÖͦÓÊ£ÕʤÙЪÛÒ­ÚÒ­ÝÔ°ßÖ³ßÖ´ÞÕ²ÝÔ°ÚÑ­×Ψ×ͧÖ̧ÔË¥Ö̦Õ˦ÑÇ ÎÄÐÆŸÐÆ ÏÅžÎÄžÐÅŸÎÄžÐÅ ÓÉ¥ÚÒ®ÛÑ®ÙϪÙÏ«ÙЫÚЫÚѬÞÕ²áصà×´ßÖ³ãÛºåݼäÛºãÛºäݽæÞ¾ãÛºâÙ¸ãÛ¹áÙ·ßÖ²á×´åݼçàÂäÜ»ãÚ·à׳ÜÔ¯ÛÓ®ÜÔ¯ßÖ²à׳ßÖ°àײâÙµâÙµâÙµáسÜÓ®ÚѬÛÒ­ÜÓ®ÜÒ­ÚÒ¬ß×´àضÛÓ®×ͧÕˤÙϪÛѬÜÒ­àײà׳ÞÔ¯ÜÒ¬ØΨÓɢ͚˿˜ÐÅÐÆžÎÛʿ—ĸ‘¾²‹½±‰½±‰»¯ˆ³§¬¡|¬¡|®¢}´¨‚Á¶Â·¼±‹µª„´¨‚·«„»¯ˆÀ´ŒÂ¶ŽÃ·Å¹‘Ë¿—͚͚ÌÀ™ÐÅÓÈ¡ÍÛ˿—Ë¿—Ź‘À´ŒÁ¶ŽÉ¾—ÏÅÌÀ˜È¼”Ź‘¶Ž¿³‹¿³‹¿³‹Â¶ŽÄ¸Ç»“ʾ–͚͚ɾ–·ÁµÃ·Ä¸Å¹‘ƺ’ɾ–Ê¿—Æ»“ĸŹ‘Ê¿—ÌÁ™ÍÁ™ÏÄœÓÉ¢ÖͦÒÈ¡ÌÁšÈ½•¾²‹¶ª„·«„²¦€©y›o‡~`vmSjbJ[T?ID362%%!
+334eef«««ñññþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýèæáËǸ¸±—´©‡¹­‡¼°Š½²‹»¯‰¸¬†¶ª„¸¬…¸¬…·«„·«„µ©ƒ²¦€±¥±¦€°§‚±§‚µªƒ¾²‹½±‰·«„¹­†ÁµŽÈ¼•È¼”Ç»“ʾ—ÏÄÐ޶¨y–Œl¤›x¹¯ŠÄ¸‘ĸŹ’ÌšÑÆŸÑÆŸÊ¿—Ç»“ĸÁµÀ´ŒÂ¶ŽÇ¼”ź’¿³ŒÇ¼•ÐÅžÏÄœÌÁ™É½•Å¹‘¶ŽÂ¶ŽÅº’ȼ”ȼ•Ê¿—ÌÁ™ËÀ˜Æ»“ź’ÍšÎÛÎÛÔÌ¥Õ̦ÒÈ¡ÔÊ£ÓÉ¢ÎÛÎÛÏÄÑÆŸÐŞ͚ǻ“Áµ½²Š¿´ŒÀ´Œ¿³‹¿³‹¼±Šº®‡¼°‰¾²‹¼°‰»¯ˆ¾²‹Ê¿˜Í›ɽ–ƺ“ɾ—ÑÇŸÓÉ¡ÕˤÙЫÝÔ¯àÖ±ßÖ±ßÖ±ÜÓ®×̦ÔÉ¢ÕˤÓÈ¡ÒÇ ÖÌ¥ÙϪÚЫÖÌ¥ÓÉ¢ÓÈ¡ÒÇ ÑÆžÐÅžÓÉ¢ÓÉ¢ÑÇ ×̧ÛÒ¬ÜÒ­ÜÒ®ÛѬÖË¥ÓÉ¢ÕˤÖ̦Ö̦Ö̦ØÏ©ÙЫ×ΩÕÌ¥ÖͦÜÒ®ÜÓ®ÛÒ®ÞÕ±àײßÖ³ÞÕ±ÝÔ¯ÛÒ­ÚÑ«ÙЪÙЫØϪÙϨÖË¥ÑÇ ÏÄÐÅžÐÅžÏÅÐÆžÑÆŸÐÅžÏÄÑÆ ÕË¥ÔÊ¥ÕʤÚѬÜÓ¯ÚÑ«×ͨÚЫà×´áÙµáÙ¶ãÛ¹æÞ½çß¿æßÀçßÁæÞ¿àضßÖ²áصß׳ÞÕ±áÙ·çßÀêäÇçàÁäܺßÖ²ÛÒ­ÙÑ«ÚÒ­ÞÕ±ÝÓ®ÙÏ©ÜÒ­áسâÙµâÙµßÖ±×ͧÖ̦ØÏ©×ͧÖÌ¥ÖÌ¥Ö̦ÖͧÖͧÓÉ¢ÐÅÑÆŸÓÈ¡ÕˤÜÒ­ÜÓ­×ͦÓÉ¢ÐÅžÎÛËÀ˜ÌÀ™ÑÆŸÐÆžÌÁ™Å¹‘À´Œ¼°‰º®‡¹­†¹­†¸¬…·«„·«„³§²§€·«…µª…³©„½²‹À´¾²Š¹­†»¯ˆÃ·Æº’Ç»“ʾ–ÏÄœÓÈ¡ÑÆŸÑÇ Ñǟɽ–ź’Ç»“Ź‘¶Ĺ‘ÌÁšÒÈ¡ÏĜȽ•Â¶Ž¿³ŒÁµÃ·Â¶ŽÀ´ŒÁµÄ¸É½•ÎÛÏÄœÍÁ™Åº’ĸŹ‘÷ÁµÂ¶ŽÅ¹‘ȼ”Ê¿—Ƚ•Ç»“ɽ•Ê¾–Ë¿˜ÍšÐÆžÑǠɾ–Á¶Ž¾³‹·«„±¥±¥€©žz’pŠ€aulR`YCQJ7A<-2."!
+  889ppq¯¯°ìììÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüûèçãÍɺ³ªŽ´©„¸­‡º¯‰»¯‰º®ˆ·¬†´©„²¨‚´©‚¹­†¼°ˆ¹­†³¨‚­¤®£±¦€¶«„¿³‹Áµ¿³‹½±Š¾²‹ÁµŽÅ¹’Ƚ•ÌÁ™ÒÈ¡ÕË¥ÌÀ™¹®ˆ« |´©„ÀµÆº“ƺ’ʾ—ÓÈ¢ÔÉ£ÐŞɾ–÷¿³ŒÀ´ŒÀ´ŒÁµÄ¸Á¶Ž¼°‰Ä¹‘ÎÃœÒÈ ÒÇ ÐÄË¿—Ç»“Ź‘ĸŹ‘ƺ’ÁµŽ¾³‹ÁµŽÃ·Æ»“ÍšÐÅÑÆŸÒÉ¡ÒÈ ÐÅÐÆžÎÛɽ–ËÀ˜Íšʿ—ʾ—Ê¿—ɾ–ȼ•Ä¹‘¿³Œ»¯ˆ¼°‰ÁµÄ¸ÁµŽ¼°‰·«„¸¬…¸¬…¼°‰È¼”ÍšÌÁ™Ê¿—Ê¿—Í›ÐÅžÓÉ¡×ΨÝÔ¯áØ´âÙ´ÝÓ®×ͧÔÊ£ÕÊ£ÖˤÕÊ£ÖÌ¥ÛÒ¬ÞÕ°ÞÕ±ÛÒ­ÖͦÒÇ ÏÄœÐÅÒÇ ÕË£ÒÉ¢ÏÃœÓÉ£ÚÑ«ÞÕ°ßÖ±ÞÔ¯ÚÑ«×ΧÖˤÓÉ¢ÓÉ¢ÔÊ£ÓÉ¢ÒÈ¢ÓÉ£ÕÌ¥ÙЪÞÕ°àØ´áÙ¶àصáسà׳ßÖ²ÞÕ¯ÛÒ¬ÛÒ­ÝÔ°ÞÕ¯ÛÒ¬ÙϪÚЪØΨÕ˦ÓÈ¡ÐÆŸÐÆŸÓÉ¢Ö̦×̧ÒÇ¡ÏÄÒÇ¡ÑÇ ÑÇŸØͨÜÓ­ÛÒ­ÚѬÛÒ­ÝÓ¯ÝÕ±àصæÞ½èàÂéáÃèáÃæßÀäÜ»áصàسáÙ´àسáÙµåݼæÞ¾æÞ¾åÜ»à׳ÚÑ«ÖÌ¥ÕÌ¥ØΨÙЪ×̦ÑÆŸÕʤÜÓ­áسâÙµáسÜÒ­×ΧÓÊ¢ÐÅÏÄÐÅžÌÁšÉ¾—Ê¿™Ë¿˜ÌÀ˜ÏÄœÕÊ£ÙÏ©ØͧÕÊ£ÒÇ ÐÅžÌÁ™È¼”ɾ–ÌÁ™ÍÁšÊ¾—Æ»“Ź‘ź’ĸ‘¼±‰¸¬…¹­…»¯‡¾²‹¿³Œ¸¬†±¥²¦€°¥€±§½±ŠÂ¶ŽÀ´Œ¿³Œ¾²‹¿³‹ÁµŽÅ¹‘ËÀ˜ÑÆŸÕ̤Õ̦ÒÈ¡Í›ȼ•Æº’ȼ”Ƚ•Ê¿—Í›ÐÅÒÇ ÒÇ Ê¿˜Áµ½±‰¾²‹Â¶ŽÁµ¾²‹½±‰À´ŒÆº’ÍšÑÆŸÑÇŸÌÀ™Æ»“÷ÁµÀ´ŒÀ´Œ¿³ŒÁµÄ¹‘Ĺ‘ĸǻ“ÌÁ™ÏÄœÌÁ™Ê¿—ȼ”Áµº®†¶ªƒ¯£}§›xŸ”r”Šjˆ~`ypTg_HTM:>9+*&  <<=ƒƒ„¿¿ÀðððþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüèæáÄÀ®¯¦ˆ³¨…·¬†º®‰º®ˆ·«…²§ƒ¯¥€±¦¹­‡¾²Š»¯ˆ¶«…²¨ƒ´©ƒµ©ƒ·«„º®†¾²ŠÁµÀ´Œ¼°ˆ»¯‡À´ŒÆº’Ƚ•ÎÄÒÉ¢ÎÜƻ“ÁµŽÄ¹‘ȼ”ȼ”ƺ’Ê¿˜ÓÉ£ÔÊ£ÏÄÇ»“¾²‹¸¬…¸­‡»°‰¾²ŠÁµÀ´¿³ŒÃ·Ë¿—ÒÇ ÔÉ¢ÓÉ¢ÑÆŸÍšȼ”֦ŽÃ·»¯‡¶ª„½±‰Ä¸‘Ê¿—ÎÛÐÅžÑÇŸÑÆŸÎÄœËÀ˜É¾–Ź‘ÁµÅ¹’Ç»”ÁµÁµÄ¸‘Ê¿—ÌÀ˜È½•Á¶Ž»¯ˆ»¯ˆÁµŽÆº’÷¾²‹º®ˆº®‡¹­†º®‡À´Åº’ȼ•Ê¾–ɽ•Ç¼”ËÀ˜ÐÅÒÈ ×ͧÜÒ­ÜÓ­ØϨÔÊ£ÔÉ¢ÕÊ£Ö̤ÕÊ£×ͦÜÓ­ÞÕ°ÞÕ°ÛÒ¬ÕʤÍšǻ”ʾ—ÑÆŸÕˤÔÊ£ÐÅžÒÈ¡ÙÏ©ßÖ±ßײßÖ±ßÖ±ÝÔ®ØϨÔÉ¢ÒÈ ÒÇ ÎÛÌÀ™ÐÆŸÕ̦ÚÒ­àײâÙ¶âÚ¸áصàײÞÔ¯ÝÓ­ÙϪÖ̦ØΩÛÒ¬ÛѬØΨÖ̦ÛÒ­ÞÕ°ÞÔ¯×ͦÑÇ ÑÆŸÕʤÙЪÚЫÕË¥ÑÆ ÓÉ£ÑÇ ÐÅŸÔÉ¢×ͦØÏ©ÛÒ®ÜÓ­ÙЩÙЪÜÔ°ãÛ¹åݼåݼåÞ½åÞ½äܹà×´àײáØ´àײáÙµæÞ½åÜ»âÙµßÖ±ÙÏ©ÒÇ ÌÀ™ÌÁšÑÇ ÔÊ£ÓÈ¡ÏÄœÑÆŸ×ͦÝÔ¯ÞÕ°ÝÔ¯ÞÕ°ÙϪÒÇŸËÀ˜É½–ɽ–øÀ´ŒÃ·Ç»“ËÀ˜ÐÅžÕˤØΨÕˤÑÆŸÍšʿ—Ĺ‘ÁµÃ¸Ç¼”ƺ’¶ŽÀ´ŒÄ¸É¾–Ë¿˜Á¶Žº®†¹­†½±‰ÁµÁµŽ»¯ˆ¶ªƒµ©‚´¨´¨‚¹­†¼°‰¾²ŠÁµÀ´Œ¼°‰¾²ŠÂ¶ŽÇ¼”ÌÁ™ÐÆžÓÉ£ÑÇ ÍÁšÊ¾–ȼ”ȼ”ɾ–ÌÁ™ÐÅžÐÅžÐÆžÑǠȽ–¼°‰µ©ƒ·«…½±ŠÁµÀ´¿³‹À´Åº’ÍšÐÆžÑÆŸÏĜʿ—ź’÷Áµ½±Š»¯‡º®‡½±ŠÀ´ŒÄ¸Ç»“Ê¿—ÌÁšÊ¾–ĸ‘½±Š´©‚¬ {§›w •r–Œkˆ~`yqUldK^WAQJ8@;,*'
+ 001RRS‹‹ŒÇÇÈúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüêêåÁ»©µ«µª…¶ª…µª„³¨‚°¥€®¤¯¥·¬†»¯ˆ¶ªƒ¸¬…»°‰»¯ˆ¶ª„²¦€³§€¶ªƒº®†»¯ˆ»¯‡º®‡¾²Š¿³‹¾²‹Ã¸É¾–ɾ–Ê¿—Ë¿—ɾ–Ƚ•Ç»“Ź‘Ç»”ÏÄÒÇ ÏÄ÷¹­†²§°¦³©„»¯‰Â¶ŽÆº’Ź’Ç»”Ë¿—ÏÄœÏÄœÐÅÒÇ ÏĜɽ•Ã·ÁµÀ´Œ¼°ˆ¼°ˆÃ·É¾–ÍšÏĜ͚ÌÁ™Ðƞ͚ĸ‘¿³Œ¼°‰»¯ˆ¾²‹¿´Œ»¯‡º®‡½±ŠÅ¹’ƺ’÷÷À´Œ¼°‰Â¶ŽÄ¸¿³ŒÃ·Æ»“¿³Œº®‡¸¬…º®‡»¯ˆ¼±‰À´Ã·Ä¸É½•ÌÁ™Ê¿—Í›ÑÆŸÒÇ ÔˤÖͧÓÉ¢ÓÈ ÔÊ£ÓÈ¡ÓÈ¡×ͦÙЪØϪÒÈ ÌÁ™Æ»“¿³ŒÂ¶ËÀ˜ÔÉ£ÖͧÔÊ£ÕˤÙÏ©ÞÕ°ÝÕ¯ÜÓ®ßÖ±àײÝÔ¯ØϨÓÉ¢ÑÆžÌÀ™ÌÁ™ÒÈ¡×ͧÚÒ­ßÖ²ÞÕ°ÜÓ­ÞÕ°ÝÔ®ÙϨÔÊ£ÒÇŸÑÆžÑÆŸÒÇ ÒÇ ÑÆŸÒÇ ØϪÝÔ¯ÝÔ¯ØΧÒÈ ÑÇŸÔÊ£ÕË¥ÔÊ¢ÕË¥ÖͧÖͧÕË¥ÓÉ¡ÑÆŸÐÅžÑÇ ÕË¥ØΧ×ͦÖ̦×ͧØÏ©ØϪÙЫÜÓ¯áÚ¸åݼÞÕ±ÛÒ­ßÖ±ÜÓ­ÛÒ­àØ´âÙµßÖ±×ΧÐŞȼ•ÁµŽÂ·Ê¿—ÑÆŸÔÊ£ÓÈ¡ÒÇ ÔÉ¢ØϪÖ̦ÔÉ¢×Ω×ΨÓÈ¢ÌÁ™Æº’÷½²Š½±ŠÅ¹‘Ê¿—ÎÛÒÇ ÐÆžÏÄÓÉ£ÑǠɾ–¶¼°‰»¯ˆ»¯ˆ¾²ŠÀ´Œ½±Š»¯ˆÀµÇ¼”Ê¿—÷¼°ˆº®‡½±Š¿³‹½±Š½±Š½±‰¼°ˆ¹­†¶ªƒ´¨‚¶ªƒ¸¬…»¯‡½±Š¿³‹À´Œ¿³Œ¾²ŠÀ´Ä¹‘ʾ–ÎÃœÐÅžÌÀ™É½•È¼”Ź‘ƺ’ʾ–ÍÁ™ÎÛÌš¶´¨‚¬¡|°¤º®‡Â¶ŽÆº’Ź’ƺ“ɽ•ÍšËÀ˜Ê¾—͚͚ËÀ˜È½•Â¶Ž¼°‰¹­…¸¬…»¯‡À´ŒÅ¹‘Ç»“÷À´Â¶¿³Œµªƒ¦šw˜Žl’ˆgŒ‚cƒy\tkQb[EQK8A<-4/#&#
+   99:oop°°±ÒÒÓùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûúßÜÕ½¶Ÿ°¦„°¥€®¢~« |¨zªŸz­¢~´¨ƒ¸¬†¶ªƒ¸¬…¹­†³§°¥°¤~°¤~³§¹­†À´Ã·Àµ¾²Š¼°‰½±‰À´ŒÄ¸Ç»“ËÀ˜ÎÛÍÁ™Ê¿—Ƚ•È¼”Ê¿—Í›ÌÁšÇ¼”º¯ˆ´¨‚±¥±¦·­‡À´Å¹‘ƺ’ź’Ê¿—ÎÛÌÀ™É¾–ɽ•ÍÁšÍ›˿˜Ç»“÷À´Œ¾²ŠÀ´ŒÆº“ɾ–ÌÀ˜ÎÛΚÌÀ˜Ê¿˜È¼•Ä¸¿³Œ¼°‰¼°‰¼°ˆ»¯‡¹­…¸¬…»¯ˆÄ¸Ã·½±‰»¯ˆ½±ŠÀ´Â¶Ã·Â¶ŽÄ¸Ã¸º®‡¶ªƒµ©‚·«„¸¬…º®†À´ŒÅº’Ǽ”Ǽ”ź’¶ŽÅº’Ê¿—ÌÀ˜ÑÇŸÖͦÕË£ÓÈ¡ÒÈ ÓÈ¡ÔÉ¢ÖˤÕˤÑȡɾ–øÀ´Œ¾²ŠÃ·ËÀ˜ÑÆ ÓÉ£ÓÉ¢ØΧÛÑ«ØΨÖ̦Ö̦ÚЫÜÓ®ÜÔ®ÙÏ©ÕË£ÒÇ ÌÁ™ÍÁ™ÓÉ£×ͧÚЫßÖ²ÝÔ°ÚÑ«ÚÑ«ÚÑ«×ΨÓÈ¡ÏÄœÏÄœÏÄœÏÄœÏĜ͚ÎÛÕË¥ØΨ×̦ÒÇ ÑÇŸÔˤÕÌ¥ÖÌ¥ÕÌ¥ÔˤÒÉ¢ÍÄÍÛÎÛÌÁ™ËÀ˜ÍÁšÒÇ ÖÌ¥Ö̤ÔÊ¢ÒÈ ÒÈ ÒÈ ÓÉ¢×ΧÜÔ°ß×µÛÓ®ÙЪÛÒ¬ÚÑ«ÙЪÛÒ¬ÜÒ¬ØΨÍ›ź’ÀµÀ´Ä¸È½•ÎÃœÑÆŸÐÅÒÈ¡ÔË¥ÔÊ£ÐŞ͚ÏÅžÑÇ ÑÆžËÀ˜È¼”Æ»“¿³‹½±ŠÆº’ɾ–ÌÀ™ÎÛÍšÌÁ™ÌÁšËÀ˜È¼”÷¿³Œ½±‰¼°‰½±Š¿³‹¼°ˆ»¯‡ÁµŽÅº’Ĺ‘½±‰¹­†½±‰ÁµÃ·ÁµŽÀ´Œ¾²Š¹­†¶ªƒ´¨‚´¨‚´¨‚µ©ƒ¼°‰Â¶ŽÃ·Â¶Ž¿³Œ½±Š¾²‹ÁµÆº’Ë¿—Í›ÍÁšÌÀ˜Ë¿—Ǽ”Ç»“Ê¿—ËÀ˜Ê¾–ĸ‘¼°‰µ©‚±¥´©ƒ¼°‰Ä¸Æº’Ź‘Ƚ•ËÀ˜Ê¿—ź’·Ƚ•ËÀ˜Ë¿—ɽ•Å¹‘À´¹­†¶ª„»¯ˆ¾²ŠÀ´Â¶À´Œ¼°‰·«…²¦ªŸ{œ‘oŽ„d…{]zqUmeL_XBQJ7A<-.*
+ 668LLNlllÂÂÂôôõýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷öõÔÑűª¨ž|¦œy¤™vŸ”s –s¨œx¯£~µ©‚¸¬…¸¬…´¨‚ªŸ{ªŸz­¢|¯£~³§¹­†Ã·È¼”Ź‘½±Š¹­†¾²ŠÀ´ŒÁµÃ·È¼”ÌÁ™ÌÁ™Ê¿—ɽ•ÌÀ˜ÎÛÎÛɽ•Àµ·«…´¨‚µ©‚·¬…¿³ŒÅ¹’ȼ”ƺ’ƺ’ËÀ˜ÎĜɽ–Ź‘ĸǻ“Ë¿—ËÀ˜È½•Ã·ÁµÁµÃ·Ç»“ȼ”ʾ–͚͚ʿ—Ĺ‘ĸǻ“ĸÁµ¿³‹½±Š¼°ˆº®‡º®‡¼°‰Ã·Áµº®‡µ©ƒ¹­‡Â¶ŽÄ¸Å¹’Ç»“Ĺ‘¾²‹µ©ƒ°¤°¤~µ©ƒ¹­…»¯ˆÁµŽÇ¼”ɽ–Ĺ‘¾²‹»¯ˆÁµÇ»“Ç»“ÌÀ™ÒÇ ÓÉ¢ÑÆŸÐÅÓÉ¢ÖÌ¥ÔÊ£ÑÇŸÌÁ™Å¹‘À´¿³ŒÁµÇ»“ÍšÏÄœÐÅžÒÇ ØΨÚЪÓÈ¡ÐÅÐÆžÔÉ£×ΧØЪÖͦÔÊ£ÓÉ¡ÏĜΛÓÉ¡Ôʤ×ͧÝÕ°ÛÓ®×ͨÔˤ×ͧÙЪÕʤÐÅžÏÄœÏÄœÏÄœÏÛÍÁ™ÌÀ™ÑÆŸÑÆŸÎÛʾ–Í›ÔË¥×ͧØÏ©ÚÑ«Õ˥͛ĸ‘·ĸƺ’ȼ”Ë¿—ÑÆžÔÊ£ÔÊ¢ÐŞ͚ÎÛÎÛÎÄœÑÇ ÕË¥ØÏ©×ΨÕÌ¥ÕˤÙÏ©ÙЫÖ̦ÕÊ£ÐƟź“À´Œ¿³‹Ä¸È¼”ɾ—ÌÂœÌÂÌÁšÑÇ ÓʤÏÅÌÁ™Ê¿—ɽ•ÌÀ˜Íšɾ–Ƚ•È½•Â¶¿³ŒÆº’ȼ”ȼ•É½•Ë¿—Ë¿—ź’Ĺ‘Ƚ•È¼”Ź‘ÁµÀ´ŒÀ´Œ¿³Œ½±‰¼°‰Ã·Ã·¾²Š¸¬…·«„½±‰Ã·Ç»”ȼ”Ź‘¿³‹µ©‚°¤¯£~´¨µ©‚¶ª„¿³ŒÅ¹’Ź‘¶Ž¿³‹¾²Š¾²ŠÀ´ŒÄ¸Ç»“ȼ”ʾ–ËÀ˜ÌÀ™ËÀ™ÌÁ™ÌÁ™Ë¿—ƺ’¾²Šº®‡¹­†º®‡¼°‰À´ŒÅ¹‘ƺ’ĸȽ•ËÀ˜È½•Â¶¿³ŒÅ¹’ȼ”ȼ”ƺ’ĸ¶º®‡¸¬„½±‰»¯ˆ¹­†½±‰¼°‰¶ª„§œy •s“q“‰h…{]xoTg_HVP<GB2<7)/+  
+99;^^_wwyºººøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþöõóÕÒȵ®˜¤š{“r˜Žm˜l“p¥šv®£}µ©‚µ©‚°¥«¡~¨ž{¨y­¡|³§·¬„º¯‡¾²‹¿³‹¸¬…¶ªƒ½±ŠÀ´Œ¾²Š¹­†¾²ŠÅ¹‘Ĺ‘Ź‘ɽ•ÍÁ™ÏÄœÎÛʿ—ƺ’¾²‹½±‰½±Š¿³‹Â¶Æ»“ȼ”ʾ–Ê¿—Ǽ”Ź’Ǽ”Ç»“Ç»“ȼ”ȼ”ȼ”ĸ¶ŽÂ¶ŽÄ¸Æº’Ç»“ȼ”ɾ–ÌÁ™É¾–ĸÁµÆº’ËÀ˜É¾–ĸ¶ŽÃ·Ã·À´Œ¾²Š¾²‹ÁµÁµ¿³‹º®‡¹­†½²ŠÅº’ÌÀ˜ÌÁ™Æ»“¿³‹¸¬…°¤« {³§º®‡¾²ŠÀ´ŒÂ¶ŽÁ¶Ž½±Šº®†º®‡À´Å¹‘¿³ŒÂ¶ŽÈ¼”ʾ–Ê¿—ÌÀ™ÓÉ¢ÖͦÑÆŸÍÁ™Ê¾–Ç»“Ƚ•É¾–ȼ”ʾ–ÍšÏÄœÑÆžÓÉ¢ÓÈ¡ÑÆŸÏÄœÏÄœÏÄÐÆžÓÉ¡ÔˤÒÈ ÐÅÑÆžÒÈ ÒÈ ÐÅžÐÅÓÈ ØϪÔʤÍ›ÌÀ™ÔÉ¢ÜÒ­ØÏ©ÓÈ¡ÐÅÏÄœÏÄœÏÄœÎÛÍÁ™ÌÀ™ËÀ˜É¾–ź’Ç»“ÌÁšÓÊ£ÚѬÜÓ®Ö̦Íšø¼°‰¸¬†¾²ŠÆº’ÌÁ™ÏÄœÐÅÎÛȽ•Ä¹‘ȼ”ɽ•É½•Ç»“ʾ—ÎÜ͚ËÀ™Î›ØͨÛѬÓǠΛ˿—Ǽ”ƺ’Ź’ȼ”Ê¿—ËÀ›ÊÁ¤ÊÂ¥ÍÂÌÁ™Ë¿—ɾ–ËÀ˜ÌÀ˜É¾–Ë¿—ÌÀ˜Æº’¶ĸŹ‘ƺ’Ç»“ȼ”ȼ”ȼ”Ƚ•Ç¼”÷ź’ËÀ˜Ê¿—ƺ’¶ŽÁµÀ´ŒÀ´Œ¿³‹¾²ŠÁµ¿³‹¼°‰½±‰º®‡¸¬…À´ŒÉ½•ËÀ˜É¾–ĸ¹­†°¤«Ÿ{®£~¶ªƒ½±‰À´ŒÁµÀ´Œ½±‰º®‡º®‡º®‡¼°‰À´ŒÁµÁµÂ¶ŽÃ·Æº“ÏÄžÓÉ¢ÌÁ™È½•Æº’À´¾²ŠÀ´ŒÃ·Ã·ÁµÅ¹‘ȼ”Ç»“ȼ”ȼ•Ç»“ƺ’ƺ’Ç»“ȼ”Ź‘¿³Œ»¯ˆ¼°‰¼°‰½±‰½±‰·«…³§¶ª„±¥€¥šw“‰iƒc„d…{]ulQc\EQK7?:+/+!#   **,@@Ahhi••–ÕÕÕùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýññîØÔʶ¯š›’v’‰j‘‡g•Šj™Žm •r¨y¬ {­¡}­£~©ž{¦›w©y°¤~¶ª„¸¬…¹­†º®‡³©ƒ²¨‚½±ŠÀ´Œ¾²Šº®†º®‡½±Š¿³ŒÄ¸Ë¿—ÏÅÐÅžÍÁ™ËÀ˜É¾–¶ŽÂ¶ŽÄ¸Æº’Ĺ‘·Ǽ”ËÀ˜Ê¿—÷À´ŒÆº’ɾ–ʾ–ƺ’ĸĸĸǻ“ɾ–Ç»“֦ŽÄ¸‘ȼ”Ê¿—ȼ”ĸÁ¶ŽÇ¼•ÏÄœÌÀ™Ç»“Ź‘ƺ’Ç»“ĸ¼±‹º¯‰Ã¸‘ɽ–Ƚ–øÁµŽÃ¸Æº“ɽ•Ê¿—ź’Àµ¿³‹·«…°¥±¦·¬†¾²‹À´Œ¿³‹¼°ˆ¸¬…·«…¾²‹Ä¸Å¹’¿³‹¼°‰¾²ŠÂ¶ŽÈ¼•ÎÃœÒÈ¡ÒÈ¡ÍšËÀ˜Ë¿—Ƚ•É¾–ËÀ˜ËÀ˜Ê¾–ɾ–ÌÁ™ÐÅžÑÆŸÊ¿˜Æ»“Ë¿—ΚÏÄœÏÄœÏÄœÏĜ͚ÎÛÒÇŸÓÈ¡ÐÅÊ¿—ÌÀ˜ÐÅÓÉ£ÐÆŸËÀ˜É¾–ÐÅžÙÏ©ÖÌ¥ÑÇŸÏÅÏÄœÏÄœÎÛʾ—Ç»”ÌÁšÏÅžÏŞ͛ËÀ˜ÌÁ™ÏÅÓÉ¢ÔʤÐÅŸÌÁ™É¾—Á¶¹­†¹­†À´É½–ɾ–ȼ”Ç»“Á¶Ž¿³‹Ã·Æº’Ç»“Ź‘ĸĸ‘ĸ‘ȼ•ÏÄ×̦ØΨÑƞ͚ÌÀ˜Ë¿—ȼ”Æ»“ËÀ™Ê¿˜Æ»•Æ½œÊÀ Íœɽ•Å¹‘Ź‘ȼ”Ê¿—ɽ•È¼”Ç»“÷ĸ‘ɽ–ɽ–ƺ’¶ĸ‘ȼ”Ê¿—ʾ–Ç»“÷ƺ’ÍšÍÁ™Ê¾–Ǽ”Ź‘ĸ÷»¯ˆ·«…À´ŒÃ¸Ã¸Ä¸Áµ¾²‹Ã·È¼”Ǽ”ƺ’ø¿³Œ·«…¯£­£~µª„¾²‹À´Œ¿³‹¼°‰º®†¸¬…¹­†¼°‰¿³ŒÀ´Œ¾²‹½±‰¼°‰À´È¼•ÑÇ ÔʤÍšɾ–Ç»“ĸÀ´Œ¿³ŒÇ»“Ź’À´ŒÄ¸È¼”Ç»“ĸ¶ŽÄ¸Æº’ȼ”ȼ”Ź‘À´Œ»¯ˆ»¯ˆ¾²‹¾²Šº®‡´¨‚®£~¬ {­¡|¥šv—Œk…{]~tX|sWphN]VANH6?:+.+ 
+  //0NNOlllžßßßûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýòñîÚ×β¬šš“x‡i†g‘†g“‰išn¢—s§›w« {©y§œx¨y¯£~¶ª„¶«„µ©ƒ²§¬¢~®¤€»°‰ÁµÁµÀ´Œ¹­†³§¸¬…¶˿˜ÑÆŸÑÆŸËÀ˜Ë¿—Ê¿—Ź‘Ź‘ȼ”Ë¿—Ź’¾³‹Æº“ËÀ˜È¼”ÁµŽ¿´ŒÇ»”ÌÀ˜ËÀ˜Ä¸ÁµÃ·Å¹‘Ë¿˜ÍÛǻ“¾²‹½±‰ÁµÆº’ƺ“Ç»“ƺ’÷ȼ•ÐÅžÎÛ˿—ʾ–ɽ•Ç»“÷¸­ˆ´ª…ĺ“ÏÄœÑÆŸËÀ™É¾–Ê¿—Ç»”Ź‘ƺ’÷ÁµÂ¶Ž¾²‹¸­‡³©„¶¬†¾²‹¿³‹»¯ˆ¶ª„±¦€´¨‚À´Æº’Ç»“÷º®‡´¨‚¸¬†Ä¸’ÎÄœÐÆžÎÃœÌÀ™ÌÁ™ÌÁ™Ê¾–ɾ–Ë¿—ÌÁ™È½•Ä¹‘ɽ•ÎÛÎÛź“¶ȼ”ÌÁ™ÏÛΚÌÀ˜É¾–ɽ•ÌÀ™ÐÅžÏÄʾ—Ĺ‘ȼ”͚ΚÎÛÍšʿ—ÍšÓÈ¡ÒÇ ÑÆŸÑÆŸÏÄÍšʿ—¶¿³ŒËÁšÔˤ×ͧÔˤÑÇŸÏĜ͚˿˜É¾–ȼ”ɽ•ÌÁšÇ¼•À´Œ¹­†½±ŠÅ¹’÷À´Œ¾²‹º®‡¹­‡¾²‹Ä¸Ç»“Ǽ”Á¶Žº®ˆ»¯ˆÄ¸’ÏÄÔÊ£ÔÊ£ÑÆžÎÛÍÁ™Íšɾ–Ç»“ÍÛɾ–À´Ã·‘É¿˜ÌÀ™Ç¼”÷Ź‘Ç»“ɾ–ȼ”ƺ’֦ŽÇ¼•ÎÄœËÀ˜Ã¸¾²‹Â¶ŽÇ¼”Ê¿—ɾ–Ç»“÷Ź‘ËÀ˜ÎšÎÃœÎÛ˿˜È¼”ĸ·«†¯¤€¿³ŒÉ½•ÌÀ˜Ê¿—Ǽ”ƺ’ȼ”Ç»“¶ŽÁµÁµÂ¶Ž¾²Š·¬…±§‚¶¬†¿³ŒÀ´Œ»¯ˆ·«„µ©‚µ©ƒ·«…¿³‹Ä¸Â¶½±‰¸¬…µ©ƒ¼°‰È½•ÑÆŸÓÈ¡ÏĜʿ—Ç»“Ź‘¶ŽÀ´È½•Åº’¾²‹Â¶È¼”Ç»“ÁµŽ¾²ŠÁµŽÅ¹‘Ç»“ƺ’Áµ»¯‡¹­†¼°‰À´Œ¹­‡¯£~¦›x£˜u¡–s’q”Šjˆ~`vmRmdKg_HXQ=F@183&,( //1YYZ……†¼¼¼çççÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýõôóáàÛËȽ¥Ÿˆ“ŠmƒdŽ„d’ˆh–ŒjšnŸ”r¥™u« {°¥´¨‚µª„±§‚ª |£˜uŸ”r¦›xº®‡Â¶ŽÅ¹‘ĸ¸¬‡¬ |« |µª„·ËÀ™ÏÄœÌÁ™È½•Æ»“ɾ–ɾ–ȼ•È½•Â·¼°‰Ã¸É¾–ȼ”ƺ’ƺ“ÌÀ˜ÎÛÌÁ™Ä¸Ã·Å¹‘Ç»“Ç»”Ź’¿³Œ»¯ˆ½±‰À´ŒÀ´¿³‹Â¶ŽÆº’÷Ź‘ËÀ˜ÏÅÑÇ ÑÆŸÍÁ™Å¹‘º®ˆ³¨‚³¨ƒÀ´Ê¿—ÏÄœÎÛËÀ˜Ë¿—Ê¿—Ƚ•Ã·Áµ¾²‹¹­‡½±ŠÁµŽÀµŽ¿´¿³Œ½±‰µ©ƒ¬¡|©y­¡}º®‡Â¶Ç»“Ƚ•»°Š¬¡}« |¶ª…ĸ‘ËÀ˜ÏÄœÐƞΛ˿˜ÌÁ™ÍÁ™ÌÁ™Ê¿—ź’¶ŽÆ»“ÌÀ˜ÎšÌÀ™Ê¿—ÌÁ™ÎÛÎÛËÀ˜É½•È¼”ȼ”Ǽ”Æ»“Ź’÷ÁµÅ¹‘ȼ”ƺ“ɾ–ÌÁ™Ê¾–ʾ–ÍÁšÑÆžÔʤÕË¥ÏŞȼ•ÀµŽ¹­†·«„÷ÎÃœÔʤÒÉ¡ÐÅžÏÄÑÆžÍÛŹ‘¶ŽÁµ½±ŠÀ´Ä¸Ã·Ä¸Å¹’À´Œ¸¬…µªƒ±¦²§‚¹®‡ÁµŽÇ¼”ʾ—¿µ±¨ƒ®£~¶ª…ĸ‘ÌÁ™ÑÆžÑÇ ÌÀ™È¼”ÌÁ™ÍšËÀ˜ËÀ˜Æº“ÀµÄ¸‘Ƚ•É¾–ȼ”ɽ•ÎÃœÏÄœÍÁ™É¾–Ç»“ƺ’ƺ’ȼ•Ê¾—ƺ“Áµ¿³‹Ã·Å¹’ÁµŽÃ·Æº’֦ŽÅº’ËÀ˜ÐÆžÒÇ Íšǻ“¶¶«†°¥½±‹È¼”͚Κ˿—ɾ–Ë¿—ɽ•Â·À´Œ¾²‹¹­†º®‡¼°‰»°‰¾³ŒÃ·¿³‹µ©ƒ­¡}ªŸ{¬¡|³§½±ŠÆº’Ź‘½±Š²¦€§œx¬¡|¼±ŠÉ¾–ÏÄΛȽ•Ã·Ã·Å¹’ȼ•É½–Ź‘À´Ä¸È¼”Ç»“ƺ’ĸ‘ƺ’Ç»“Ç»“÷¾²Š¹­†¸¬…·«…³§‚©žyŸ”qšn–Œk…f‚y\zqVriPbZDTM:JE3?:+1-"# 
+""$<<=eefªª«ÝÝÝõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüü÷öö×Õͦ Œ†kƒeŽƒd„e’ˆh—Œk‘o£™u¬ |°¤¯¤¬£¨Ÿ|¥šw¡—t¦›xµ©ƒ½±ŠÀ´¾²‹¸¬†°¤€« |°¤€»¯ˆÀ´Ã¸Åº’Ǽ”Ƚ•Æ»“Ƚ•É½–ĸ‘¾²Š»°ˆÄ¸‘ʾ–ɽ•ÌÀ˜ÎÛÏÄœÏĜ͚ƻ“Ź‘Ç»“ƺ’¶Ž¾²Š¼°ˆ¹­‡¶ª„¹­†¼°ˆ¼°‰À´ŒÃ·Â¶ŽÃ·È¼”ËÀ˜ÏÄÑÆŸÍšǻ”·‘¼±‹º®‡Ã·Ç¼”Ƚ•É½•È½•É½•ÌÁ™Ê¾—À´Œ½±‰»¯ˆ¶ªƒ¸¬…¾²‹Ã·Ã·À´Œ»¯ˆ¶ª„³§‚­¢}®¢}¸¬†¾²‹Â¶ŽÄ¸‘½²‹´¨ƒ¯£²§¼°ˆÂ¶È¼•ÌÁ™ÌÁ™Ê¿—ɾ–Ê¿—Ê¿—ĸ‘¿³Œ¿³ŒÆº’ËÀ˜ÌÁ™ÏÄÑÆŸÏÄÏÄœÎÛʾ–ȼ”ȼ”ȼ”Ź‘ÁµÀ´Œ¾²‹º¯ˆ½²ŠÁµŽÃ·Ä¹‘ƺ“Ç»”ɽ•Ë¿—ÌÁšÐÅžÓÉ£ÎÜȼ•Å»”ÀµŽ½±ŠÃ¸É¾–ÌÁšÌÁ™ÌÁ™ÍšÐÅžÏÜƺ’À´Œ»¯ˆ¶ªƒº®‡ÁµÄ¸Å¹‘÷¿³‹º®†¶«„±¦°¦¹­‡¾²‹Â¶ŽÄ¸‘¿µŽ¶¬‡°¥€²§»¯ˆÀ´Åº“ÊÀ˜É¾—Ǽ”Ƚ•Ê¿—Ê¿—Ç»“ÁµŽÀ´ŒÆº’ʾ–ɽ•ÌÀ˜ÏÄœÒÈ ÒÈ ÐŞʿ—ȼ”ȼ”ȼ”ƺ’¶ŽÁµ¾²‹¹®ˆ»¯‰¾²‹¿³‹ÁµŽÄ¸Ä¸Ã·Ä¸Ç»“ÍÁšÑƞ͚ɾ–ɾ—¿µ¸®‰Â·Ç¼”ɾ–ËÀ˜Ê¿—ɾ–ÌÁ™ÌÀ˜Ä¹‘À´Œ»¯ˆ¶ªƒ¸¬…¼°ˆ½±‰À´ŒÂ¶Ž½±‰µ©ƒ°¥€¬¡|¬¡|µ©‚¼°‰ÁµÁµ¾²‹·¬…¬ {¬ {¶ª„»°‰ÀµÇ»”ƺ’ĸź’ƺ“Æ»“Ç»”¶Ž½±‰Ã·Ç»“ƺ’ȼ”ʾ–ȼ”ȼ”ƺ’¿³Œ»¯‡¸¬…´©ƒ­£~¥šv›n†fˆ~`€w[xnTlcKbZDXR>LF4?:+3/#)% 
+
+ //1YYZ}}~ºººöö÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþñðîËÈ¿°«š™‘wŽ„g‚cŽ„d‘‡g”‰i˜lŸ•r¤™v¥šw¨ž{¬¢¯¤¬¢~«¡}¯¤´¨‚·«…µ©ƒ·«„¸¬…³§³§¹­†¸­†¸­†½±ŠÇ¼•ËÀ™Á¶Å¹’ɾ–À´º¯‡½²ŠÆº“ËÀ˜Ê¿—ÎÛÐÅžÎÛΚÍÁ™É½•È¼”Ǽ”ø¾²Šº®‡¼°‰¹­‡°¤³§¹­‡¼°‰¾³‹ÁµÂ¶ŽÅ¹‘Ç»“ƺ’ɾ–ÏÄœÍÁšÌÁšÑÇ¡ËÀšÄ¹‘Ƚ•Ç¼”÷÷Ź‘ȼ”ÌÁ™É¾–¾²‹º®‡¸¬†¶ª„´¨‚µ©‚¼°ˆÀ´Œ¿³‹»¯ˆ¼°‰¿³Œ¹­†´¨‚»¯‡»¯ˆ¹­†»¯ˆ¾²‹¿³Œº®‡¸¬…»¯ˆ¼°‰¿³ŒÃ·È½•É¾–ĸƺ’Ǽ”¿´Œ¼°ˆ¾²‹Ç»”ÌÁ™ËÀ˜ÏÄÒÇ ÏÄœÎÛÍšʾ–ɽ•È¼•Ç»“÷¿³‹¿³‹º¯‰³©„¶«…¼°‰Â¶ŽÀ´¿³‹Ä¹‘Ê¿—ËÀ˜È¼”ɾ–ÏÅ͚̚ÒÈ¢ÎĞɾ—ËÀ˜È¼”ĸǻ“ɾ–ʾ–͚͚ǻ“À´Œ¹­†¶«„·«„º®†¾²ŠÀ´ŒÀ´ŒÀ´Œ¿³‹½±‰·«…µ©ƒ¼°ˆ¼°ˆº®‡»¯ˆ¾²‹À´º®ˆ¸¬…º®‡¹­†»¯‰Â·È½•Ê¾–Ĺ‘ƺ’ɽ•Ä¸‘¿³Œ¾²‹Æ»“ÌÀ˜Ë¿—ÎÃœÑÇŸÐÅÑÆŸÑÆŸËÀ˜É½•É½•È¼”¶Ž»¯ˆ¼°‰º¯ˆ³©„²¨‚·¬…¿´ÁµŽÁµŽÆº’Ǽ”Ç»“Ź‘Ƚ•ÎÜ͚͚ÒÈ¢ËÁ›Ä¹’Ê¿—ȼ•Ã·Æº’Ƚ•É½•ÌÁ™ÍÁ™Ç»“À´Œ¹­†¶ª„·«„¸¬…¹­†¼°ˆ¾²Š¼°ˆº®‡»¯ˆ¶ª„´¨‚»¯‡»¯ˆ¹­†º®‡¾²Š¿´Œ·«…µ©ƒ¸¬…³§‚´¨ƒ¿³ŒÄ¸Æ»“ɽ•Å¹’ÁµŽÄ¸‘¿³Œ¸¬†À´ŒÄ¸Ã·Ç¼”Ê¿—Ç»“Ź’¶»¯ˆ·«„³¨‚¬¢~¡—u–Œk…e„{]ulRiaJ`YCXR=LG4@;+95&.*!  667oop´´´ÖÖ×öö÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüôóñæåàÀ»­‘‰oŠ€c‹bŽ„d…e’‡h–‹kšmž“q£˜v¨žz« {­¢}­¢}ªŸ{¬¡}°¦´©‚µ©ƒµ©ƒ²¦€·«…¿³ŒÀ´¿³‹¾²‹Ã·Æ»“ĸ‘Ƚ•Ê¿—¿³Œ¾²‹Å¹’ƺ“ȼ”ËÀ˜Ê¿—ȼ•Æ»“ȼ”ʾ–Ƚ•Ê¾–ʾ–ĸ»¯ˆ¶ªƒ»¯‡½±Š¸¬†º®‡º¯ˆµ«…¹®ˆÁµÆ»“ɽ•É½•É½•ÍÃœÓÉ£ÑÆŸÎÃœÒÇ ÐÆŸÍšǼ”֦ŽÃ·Æº’ɽ•ÌÁ™ËÀ˜Ä¸½±‰·«…±§‚¯¥€±¦€¸¬…½±Š¾²‹»¯ˆ¼°ˆÀ´¾²‹¹­†·«„´¨‚µ©‚»¯ˆ½±Š½±Šº®‡¼°‰ÁµÂ¶ŽÃ·Å¹‘Ź‘Ĺ‘¶ŽÈ¼•ÌÁšÃ¸ÁµÆº“ɾ–ËÀ˜ÌÁ™ÍÁšÌÁšË¿˜Ë¿—Ë¿—ÌÁ™ÌÁ™Ê¿—·»¯ˆ¸¬…¹­†º®‡¹®‡º¯ˆ¼°‰º®‡»¯ˆ¾²‹Å¹‘ɽ•Ê¾–Ê¿—ÍÃœÓʤÓÉ¢ÑÇ ÓÉ¢ÔÊ£ÒÈ¢ÌÁ™Ä¸¿³ŒÆ»“Ë¿—ɾ–ÌÁ™Íšȼ”À´Œ·«…±§‚±§´¨‚¹­†»¯ˆ¼°ˆ¾²‹À´Œ¿³‹½±‰»¯‡º®‡¹­†¸¬…¸¬…»¯‡¼°‰º®‡¼°‰ÁµÃ·Ä¹‘Ź’ȼ”Ƚ•Ã·È¼•Í›Ƚ•Ä¸Ã¸Ç¼”ËÀ˜ÌÁ™ÍÁšÌÁšË¿˜ÌÀ™ÍÁšÍÁšÌÁ™ËÀ˜Æº’½±‰¶ªƒ¸¬…º®‡¸®‡¹®‡¹­‡¶¬‡¸­‡½²‹Ç¼”Ê¿—ɽ•É½•ÍšÒÇ ÒÇ ÑÇ ÒÈ¡ÐÆŸÎÄœÎÛƻ“¿³ŒÃ·È¼”ɽ•ÌÁ™Íšȼ”À´Œ·«…±§‚±§´¨¶ª„¹­†»¯ˆ¼°‰¾²‹¿³‹½±‰»¯‡º®‡·«„µ©‚·«„»¯‡º®ˆ²¦´¨‚¾²‹¾²‹¼°Š¿³ŒÂ¶ŽÂ¶ŽÂ¶Åº“Ⱦ–ź’¿³Œ½±‰À´ŒÂ¶ŽÁµÃ·Ä¸¿³Œ»¯ˆ¸¬†´¨‚°¤~©žzŸ•r†f‚x\}sXtkQf^GZR>NG5A<-62$,($!
+ $$&GGHwwxËËËóóóýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûåäß±¬™‘y‘ˆlƒfƒeŽƒd…f’‡g—ŒkŸ”q£˜u¢—t§›wªŸz§žz© |­£³§´¨‚³§³§¸¬†Á¶ŽÇ»”ȼ”ĸÁµÁµÂ¶Ä¹‘Ź’ÀµÀ´Ã·Â¶ŽÅ¹‘ËÀ˜È½•Ä¸Å¹‘Ç»“ȼ”ȼ”ɽ•È½•Ã·º®‡²§‚·«…»°‰¹®ˆ»¯‰»°‰·­ˆ¼²‹Æº’ÌÁ™ÍšÌÁ™ÏÄœÓÉ¢ÕË¥ÓÉ£ÑÆŸÏÄÐÅžÎĜƻ“Ź‘Ƚ•Ë¿˜Ë¿˜É½•É½•É¾–Ç»“¶¼±‰´ª…±¦±¦´¨¹­…½±‰¿³ŒÀ´À´ŒÀ´Œ¾²‹¹­‡¸¬†¹­‡¾²Š¾²Š»¯ˆ»¯ˆ½±ŠÃ·É½•ËÀ˜É½•Ç»“ĸ¿´ŒÄ¹‘ɾ–ź’Ĺ‘Æ»“Ǽ”Ê¿—ÍšËÀ˜È¼”ȼ”ȼ”ɽ•ËÀ˜ËÀ˜É½•Ã¸»¯ˆµ©‚¶ªƒ¹­†º®‡¼°ˆ¼°‰º®‡¾³‹Åº’Ë¿—ÌÁ™ÌÀ™ÐÅžÕˤ×ϨØÏ©ÕË¥ÑÆŸÒÇ ÑÇ¡Ê¿˜Æ»”Ƽ•Í›ÎÛɾ–ɽ•É¾–ȼ”ø½²Œ´ª…±§±¦´¨¶ª„º®‡À´Ä¹‘÷Áµ¿³‹¾²‹¾²Š½±Š»¯ˆ¼°‰½±‰¼°ˆ½±ŠÃ¸ËÀ™ÎÜɾ–ɾ–ȼ”ÁµÄ¹‘É¿—Ç»”Ź‘Ź‘Ź‘ȼ”Ë¿—ʾ–ȼ”ȼ”ȼ”ɽ•ËÀ˜Ê¿—Ǽ”ƺ“¾³‹µ©ƒ´¨‚·«„¹­†º®‡¹®‡¶¬‡º°‰Â¶Ë¿˜ÍšÌÁ™ÏÄœÓÉ¡ÕˤÖÌ¥ÔÊ£ÑÆžÐÅžÏÅʾ—ź’Ĺ’ɾ–Ë¿˜É½•É½•È½•Åº’·½²Œ´ª…±§±¦´¨¶ª„¹­†¿³‹Â¶ŽÀ´Œ¾²‹½±‰»¯ˆ¸¬…¶ªƒ¸¬…º®‡»¯ˆ³¨‚µª„ÀµÇ»”ȼ”ĸ÷Áµ»¯ˆÀµŽÆ»”·¾²Š»¯ˆ¼°‰½±‰½±‰½±‰º®‡³§‚¯£}«Ÿ{¦švž”q–ŒkŒƒc}tXmdLb[DWP=LG5A<-62$(%
+ 
+556llm¶¶·æææûûüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøø÷ãáÝÌɾª¤Ž…h‹cŒ‚cŽƒdŽ„d‘†fšnŸ”r›n’p£™v¨ž{ª¡|¬¡|®¢}²¦€µ©ƒ·«„¹­†½±ŠÆ»“Ê¿—ƺ’¶Ž¾²Š»¯ˆ»¯ˆ½²ŠÃ·À´Œ¹­†¼°ˆÄ¸ËÀ˜È½•Åº“Ƚ•È¼”Ç»“ƺ’ĸ¶ŽÀµ¹®‡°¦‚´©„µ«…°¦‚´©„»°‰Ã·È¼•ËÀ˜ÍšÎÛÏÄœÒÈ¡ÔÉ¢ÑÇŸÑÇ ÑÆŸÍšËÀ˜Ë¿˜Ê¿—ΛÒÇ ÓÉ¡ÏÄɽ•Ä¸Ã·Ç»“Ç»“ĸ¾³‹¸¬†³§´¨¶ª„»¯ˆÄ¹‘Ç»”Áµ¾²Š¾²‹Ã·Ã·Â¶Ž¿³Œ¿³‹¿³‹¿³‹¿³‹À´ËÀ˜ÐŞʾ–ɾ–Ǽ”½±Š»¯ˆ¿³‹Ã¸Â¶¾²‹Â¶É¾–ÍÁšÊ¾–ƺ’ƺ’Ç»“Ç»“Ç»”Ź‘øƻ“·º®‡¸¬†·«„´¨¶ª„¼°‰Ã·È¼•ÌÁ™ÐÅžÐÅžÐÅžÔʤ×Ψ×ͦÖͧÓʤÎÃœËÀ™Ê¿˜Ê¿˜ÏÄÓʤÕˤÐŞɽ•Å¹‘ĸǻ”ɾ–ȼ•¿´Œ¸¬†³§´¨µªƒ¹­‡Ä¸‘ɾ–ƺ’Áµ¿³ŒÄ¸Ä¸‘÷À´ŒÁµÂ¶ÁµŽ¿³‹À´ËÀ™ÐÆŸÊ¿—ʾ–ȼ”½±Š»¯ˆ¾²‹ÀµÂ¶ŽÁµÁµÄ¸È¼”Ç»“ƺ’Ź’ƺ’ƺ’Ç»“¶¿³ŒÅº’÷¹­†´¨‚³§€²§€³§·«…Á¶Ç¼”Ê¿—ÌÀ™ÎšÏÄœÒÈ¡ÕˤÖ̤ÔÊ£ÑÇ ÎÛËÀ˜È½•Ã·Ç¼•ÐÆžÓÈ¡ÏÄɽ•Å¹‘¶ŽÂ¶ŽÆ»“ȼ”¿´Œ¸¬†³§´¨µ©‚¹­†À´Ä¸À´Œ»¯ˆ¹­†½±‰¾²Š½±‰º®‡½±ŠÁµŽ¿³‹¼°‰¾²‹Ç¼”ËÀ˜È¼”ƺ’¶º®‡¶ª„·¬…¼°‰º®†µ©‚´¨‚¶ª„·«„¶ª„±¥€¦›x¢—tž“q“‰hˆ~`~uYypUmeL\U@LF4=9*3/#)% 
+ !EEF„„…ËËËðððýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüñðîÏÌÖy„hŽ…fŽ…f‚d‹b‘‡g•Šj‘†f…f”‹j¢˜v¤™w¢—t¢—t©žz²¦€¶ª„»¯ˆÁµŽÇ»”Ç»”Àµ½±Šº®‡¶ªƒ¸¬…¾²‹Ç»“·¸¬…¹­†ÁµÇ»”Àµ¹¯Š¼±Š¾²‹¿³‹¿³‹½±Š½±‰¾²‹º¯ˆ´ª„µª„³©„®¥´ª„¿³‹É½•É¾–Ç»“Ç»“Ê¿—ÏÄœÓÉ¢ÓÉ¢ÏĜɾ—ĸ‘À´Å¹’ÍšÔÊ£Ö̦ÖˤÓÉ¡ÎÜȼ•Áµ¿³ŒÆº’ȼ”ƺ’ÁµŽ¿³Œ¾²‹¾²Š»¯ˆ»¯ˆÄ¸‘ƺ’½±Šµ©ƒµ©ƒÀ´ŒÁµŽ¾²Š¹­†»¯‡À´ŒÃ·Å¹‘Ǽ”ÏÄÐƞǻ“Ź‘ø»¯ˆº®‡¾²‹Ä¸‘¶Ž»¯ˆ¼°‰Ä¹‘Ê¿—ø‘¼°‰¾²‹ÁµŽÂ¶À´Œ½±Š½±‰À´À´½±Š½±‰¸¬†°¦µª„¿³‹É½•É¾–Ǽ”ɾ–ÌÁ™ÐÅÔʤ×ͧÕˤÎÃƼ•Ã¸‘Ź’ɾ—ÐÅŸÕË¥×ͧÖ̦ÐƟɽ•Ã·Â¶ŽÇ»“ɾ–ɽ•Â¶Ž¿³Œ¾³‹À´¼°‰·¬…¿´ŒÅº’¶Ž¹­†¶ª„À´ŒÁµŽ¿³‹¼°‰½±‰¿³ŒÃ·Å¹‘Ǽ”ÏÄÑǠʾ–Ź’Àµº®‡º®‡½±ŠÂ¶ŽÃ·À´Œ½±ŠÁµŽÈ¼”¶»¯ˆ»¯ˆ½±‰¿³‹¿³‹¼°‰º®‡¾³‹¾²‹¹®†¹­†¶ª„°¦€³©‚¼°‰È½•É¾–Æ»“ĸ‘Ǽ”ÏÄœÓÉ¢ÖÌ¥Ôʣ̛ź’÷Ź’ɽ–ÎÞÒÈ¢ÕˤÓÉ¡ÎÜȽ•Ã·À´ŒÁµÆº’Ƚ•Â¶Ž¿³Œ¾²‹½±Š¹­†·«„½±ŠÂ¶Ž¾²‹µ©ƒ±¥€¹­†¾²Š¾²Šº®‡»¯ˆ¾²‹À´ŒÂ¶Æº“ËÀ˜ÍÁ™É½•Ã·½±Šµ©ƒ²¦²¦€¸¬…·«„°¤~©žy¨œyªŸ{¦›wž“p•Šiƒd†|_uYriPe]F_WBSL9C>/62%*' 
+
+  778ZZZœœßßßùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýüððíÄÁ·±¬šœ”z†hŠ€b‡}^‰`‰`…{]ƒy[‡}_•‹k˜m–‹jšm¢–sªžy°¤¹­‡ÁµŽÂ¶¿´»¯ˆµ©ƒ±¥±¥¸¬†Â¶ŽÆ»“÷¼°ˆ¹­…»¯ˆ¿³Œ¶«‡¯¥²¦³§´¨‚¶ªƒ¶ªƒ¸¬…½±‰½±‰¹­†¹­†¸­‡¶¬‡»°ŠÂ·É½•Æ»“¶ŽÁµÇ»“Í›ÐÅžÐÅÌÁ™Ã·»°ˆ»¯‰Ä¹’ÐÆŸØΨÖ̦ÑÆŸÌÁ™È½•Æº’À´¿³ŒÅ¹‘Ç»“ƺ’À´Â¶Æº“Ç»“¶Ž½±ŠÂ¶ŽÁµŽ¹­†¯¤~®¢~º®‡¼°‰º®†·«„¹­†¾²ŠÃ·É½•ÍšÏÄœËÀ™Ã¸¾²Š¹­‡·«…»¯ˆÂ¶ŽÆº’÷½±Šº®‡¾²‹Ä¹‘»°‰´¨‚·«„¹­†¹­†·«„¶ªƒ·«„¹­†½±‰¿³‹¾²‹»°‰¶­ˆ¼²ŒÄ¹‘Ë¿—Ƚ•Ä¸Ã·È¼”ΛÐÆžÑÇŸÐƞź“¼°‰¾²ŠÄ¹’Í›ÒÉ£ÓÊ£ÑÇŸÏÄË¿˜Æº’÷÷Ź‘Ç»“Ç»“¶ŽÂ¶Æº’ɾ–·¹­†½±ŠÁµ½±‰²¦®¢}¹­†»¯ˆ»¯‡º®‡º®‡¼°‰ÁµÈ¼”ÍšÏĜ͛ȼ”¾²Œ¶«…µ«…»°‰Â¶Å¹‘ĸÁµ¼°ˆ¾²‹Ä¹‘»°‰³§´¨‚´¨‚´¨‚·«…¸¬…·«„¹­†º¯‡º¯‡¼°ˆº¯ˆ¶­ˆ¼²‹Ä¸‘ɾ–Ç»“¶¿³ŒÄ¹‘ÍšÐÅžÑÆŸÐƞź“¼°‰¾²ŠÄ¹’ÎÃœ×̦ÖÌ¥ÑÆŸÍ›ɽ•Å¹‘֦ŽÁµÃ·Ä¸À´ŒÀ´Ã·Æº’¿³Œ¸¬…¼°ˆÀ´Œ¼°‰²¦¬ |´¨‚»¯ˆ¾²Šº®‡¸¬…º®†¼°‰Ã¸Ê¿—Ê¿—Ƚ•Å¹‘¼°‰³§¬ {®¢|²¦€µ©‚³§€«Ÿ{ •r™Žm˜Žm‘‡g‡~`w[vmSkcKg_H[T?LF4D?/83&,("
+ 
+
+ --.001HHI™™šÎÎÏíííüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûùéçãÄÀ²‘‰p†}aƒz^x[}tXzqUypU}sX†}^Š€aŽ„e™n’p’p£˜u®£~¶ª„³©„´ª…¸­‡­¡}£˜u®¢}»¯ˆÂ¶¾³Œ¼°‰¼°‰º®‡¸¬…µ©ƒ±¦€°¥€³§¯£~ªŸ{¯£}±¥´¨º®‡¼°‰º®‡¼°‰ÁµŽÆ»”Ç»”ƺ’ĸ¶ŽÁµÁµÅº’Ê¿—Ç»”ƺ’ȼ”ĸ¶Ƚ•ÎÄœÒÇ ÎÛɽ–ĸ¾²‹½±ŠÀ´ŒÃ·Ä¸Ã·Å¹‘ĸ‘¾²ŠÁµÇ»“ȼ”Ź‘ÁµÁµ¾²‹¸¬…³§±¥€¸¬…¼°‰¿³‹½±Š¼°ˆ»¯ˆ¿³ŒÇ¼”ÌÀ˜Åº“Á¶ŽÂ¶¸¬†®£~³§½±‰Å¹‘Ç»“ƺ’÷½±Šº®‡»¯ˆµªƒ²¦€´¨‚°¥¬ |¯£~±¥´¨º®‡¾²‹¿³‹½±‰¾³ŒÆ»“É¿—ËÀ˜É½•È¼”Ç»“Ç»“ɾ–ËÀ˜Ç»”ƺ“ȼ•Ä¹‘¶ŽÅ¹’ÍÃœÒÉ£ÍÛȽ•Ä¸‘¿´Œ¼°‰¼°‰ÁµŽÅ¹‘ĸŹ‘ƺ’¶ŽÁµÄ¸Ç»”Ź‘À´Ã·Â¶Žº®‡³§°¤~³§¹­†¾²Š¿³‹¿³‹¾²Š½±ŠÃ·Ê¿—ź“¶Ĺ‘º°Š°¦‚°§‚½²ŒÈ½•Å¹‘÷÷¾²Šº®‡»¯ˆ¶ª„´¨¸¬…²¦¬¡|³§´¨‚´¨º®‡¾²Š¾²Š¼°‰¾³ŒÆ»“Ê¿—Ê¿—Ź‘Ź‘Ç»“Ź’Ƚ•ËÀ˜Ç»”ƺ“ȼ•Ä¹‘¶ŽÅ¹’ÍÃœÓÉ£ÎÄɽ–Ź’·¿³‹¼°‰ÁµÄ¸Â¶ŽÁµÀ´Œ¼°‰»¯ˆ¾²‹Å¹‘ĸ¿³‹À´Œ¾²‹º®†³§°¤~²¦€¹­†½±Šº®‡¸¬…¸¬…º®†À´ŒÅ¹‘¶Ž¾²‹¾²Š³¨‚§œx •r¨œx²¦€°¥ªžz£˜ušn„e„{]zqVtjQnfMaYCSM:MH5A<-4/$+'" 
+ ##%../KKLxxzˆˆ‰···ïïïøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùøâàÛ¯«œž—‚‰rw]wnStkQvmSxoU{rV€wZˆ~`†f“‰h•‹j“q§œy¬¡}¬¢­¤±¨ƒª }¥œx±¦€¼°ˆÀ´Œ·¬†´©ƒ¸¬…º®‡»¯‡¸¬…²§®£®¢}¬ {ªŸzªŸz®¢}´¨·«„¸¬…¹­†¿³ŒÄ¹‘Ç»“ȼ”Ç»“Ź‘ź’ƺ’¶ŽÁ¶ŽÂ¶¿³‹À´Æº“ȼ”ɽ•ËÀ˜ÍšÍšƻ“ĸÁµµª„²¦€¸¬†¿³ŒÄ¹‘Ç»“ź’÷ÁµŽÄ¸È¼”Ê¿—ʾ–Ç»“÷½±Š¹­†¶ªƒ´¨‚µ©ƒ¾²‹Å¹‘¶Ž¾²‹¾²ŠÁµŽÈ½•ÍÁ™È½•Ä¸‘¶º®ˆ¶ª„¾²‹Ä¸Æº’¶À´Œ¿³Œ¾²Š¼°‰»¯ˆµ©ƒ°¤~®¢}¬ {ªŸz«Ÿz°¤·«„¸¬…¹­†¼°ˆ¾²‹Â¶Æ»“Ǽ”Ǽ”ȼ”ȼ”ȼ”ȼ”ƺ“÷¿³‹À´Æº“ȼ”ȼ”ɽ•ÌÁšÎÄʾ—ƺ’¶Ž¹­†³¨´©ƒ¼±ŠÄ¹‘Ç»“ź’ĸĸź’ȼ”Ê¿—Ƚ•Å¹‘Ç»“÷º®‡¶ªƒ´¨‚µ©ƒ¼°‰Â¶ŽÁµÀ´ŒÀ´ŒÀ´Ä¹‘ɽ–Ç»”Ź’ź’¾³·­‡º¯ŠÃ¹’Ê¿˜Å¹‘¶ŽÂ¶Ž¼°‰»¯ˆ¾²Š¹­†´¨²¦®¢~« {­¢}±¥µ©‚¹­†¼°ˆ¼°‰¾²‹Â¶Æ»“ʾ–ʾ–ƺ’ȼ”ʾ–ƺ’ĸ·¿³‹À´Æº“ȼ”ȼ”ɽ•ÌÁšÎÄʾ—ƺ’÷¼°‰´¨‚²¦»¯ˆÃ·Ä¸Â¶ŽÀ´ŒÀ´À´Â¶È¼•È½•Å¹‘ĸÀ´Œ¹­†¶ªƒ³§²¦¸¬…¾²‹½±‰º®‡¹­†»¯‡¿³‹Â¶Ž¿³Œ»¯ˆ·«„­¢}¤™v •r¥šwªžz£˜t™Žm†fˆ~`uYvmRiaJ^WAUO;JD2>9*61$+(" 
+
+ 88:TTUbbc““”ÏÏÏÞÞßöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùêéæÓÑɱ­ …jrkSogOriOskPtjPxoSuYƒz]†|^‹b–‹kŸ”r£˜v¦z¨ }ª¡~ª¡~«¢²§‚·¬…¸­†¯¥­£~²¦€¸¬…¼°ˆ¹®‡´©„­¤€©ž{ªŸz« {¨žy¬¢}³¨‚´¨‚·«„»¯ˆÂ¶ŽÄ¸ÁµÃ·Æº’ƺ’Ƚ•É½•Â·¼°‰º®‡º®†¾²ŠÄ¸Ç»“Ǽ”Ź‘ƺ’Æ»“ĸĸÁµŽ²¦¬ |²¦º®‡Â¶ŽÇ¼”Æ»“Ź‘ɽ•É¾–ʾ–ÌÁ™ÌÁ™É¾–Ź‘¿³Œ¼°ˆº®‡¸¬…·«…ÁµŽÉ¾–ĸ¿³Œ¿³‹Ä¹‘ËÀ˜ÎÛÎÛʿ—Ź‘¶ŽÃ·È½•È½•Ä¹‘½±Šº®†»¯ˆ¾²Š¾²Š¼°‰¹­†³§‚¬ |« z¬ {©žz°¥¸­†·«„·«„»¯ˆÂ¶ŽÄ¸ÁµÀ´Â¶ŽÇ»“Ç»“Ç»“Ź’À´»¯ˆº®†¾²‹Å¹‘Ǽ”Ǽ”ƺ’ƺ“ȼ”ɽ•È¼”÷¹­†°¦€±§‚¸­‡Â¶ŽÇ¼”Æ»“Ź‘ɽ•ÌÁ™ÎšÎÛʿ—ƺ’Ç»“ĸ½±Šº®‡¹­†»¯ˆÁµÅ¹‘÷À´ŒÀ´ŒÅ¹‘ɽ–ËÀ˜ÌÁ™ÌÁ™É¾–Ź’·Ĺ‘Ǽ”ȼ•Á¶Ž¾²Š¿³Œ¼°‰¼±‰¿´½²Š·«„®¢~¬ |¬ {©žz­¢}´©ƒ·«…º®‡¼°‰Â¶ŽÄ¸Ã·Ä¸Æº’Æ»“ɽ•É½–·½±‰º®‡º®†¾²‹Å¹‘Ǽ”Ƽ•Åº’ƺ’Æ»“ȼ”Ç»“÷¸¬…®¢|¬ |¶«„ÁµÄ¸Ã·Ã·È¼”ɽ–ɽ–ËÀ˜Ê¾—Ź’ƺ’¶Ž»¯ˆ¸¬…·«„µ©ƒº®‡¿³‹¿³‹»¯‡·«…»¯ˆ¿³‹À´Œ¿³‹º®‡²¦€ªŸz¤™v •s •r›‘oŽ„dƒy\{rVriPkbJe\FVP<IC2=8*3/#*&!   ++,667ggg²²²ÉÉÊãããñññúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþýõõôÞÝÙ¹·®…€qqkWngRmfOnfMqiOvmSwnTxoT{rV…|]‘‡gšnŸ”r¢—u¤™v¦z¨Ÿ}¨z©y©žz§œy©žz®£}±¥°¥®£~´©ƒ·¬…¯¤~ªŸz¨y©Ÿ|«¢¯¦·¬†¿³‹Â¶ŽÂ¶¿³Œ¼°‰¾²‹ÁµÂ¶ŽÂ¶ŽÁ¶Ž¼°‰¹­†¸­…»¯ˆ½±‰»¯ˆº®‡·¬…·«…¼°ˆÂ¶È½•Ç¼”À´´¨‚±¥µ©ƒ¸¬…»¯ˆ¾²‹Å¹’ÌÀ™ÑÆŸÐŞ͚˿—Ź‘ÁµŽÃ·Å¹‘ĸÁµŽÀ´ŒÂ¶ŽÆº’ɽ•Æº’¾²‹º®ˆÅº’ΚÎÛÎÛÎÛÌÁ™ÌÁ™Ê¿—Ź‘·Áµ»¯ˆ»¯‡½±Š¿³‹¼°ˆ¸¬…¿´Â··«…®¢}ªžz­¡|¯¤²¨ƒ¸­‡¿³‹Â¶Â¶À´Œ¼°‰½±ŠÁµÆº’Ź‘ÁµŽ¾²Šº®‡¹­†»¯ˆ¿³‹À´Œ¼°‰¹­†¼°ˆ¿³‹Ã·É¾–Ƚ•Â¶Žº®‡¶ªƒ¶«„¸¬…»¯ˆ¾²‹Å¹’ÌÀ™ÑÆŸÑÆŸÏÄœÏĜǼ”À´Ã·Æº’ĸÁµŽÁµÃ·Æº’ȼ”Ź‘Áµ¿³ŒÇ¼”ÏÄœÐÅžÐÅÏĜΚÍÁ™Ê¿—÷À´Œ¼±‰·«…¹­†¾²Š¾²‹º¯ˆ¶¬‡¼±‹ÁµŽº¯ˆ±¥€ªŸ{¬¡|®£~¯¦µª„½±‰Â¶ŽÂ¶ÁµŽÀ´ŒÁµÂ¶ŽÂ¶ŽÂ·Â¶Ž¼°‰¹­†¹­…»¯ˆ¿³‹¿´Œ¹¯‰µ¬‡º¯ˆ¼°‰¾²‹Ä¸‘Ź‘Áµ¶ª„¯£~°¤~¸¬†¾²Š½±ŠÁµÈ¼”ÏÄÐŞ͚˿—ĸ‘¿³‹¿³ŒÀ´Œ¾²Š»¯ˆ»¯ˆÀ´ŒÁµÀ´Œ¾²Šµªƒ®£~´©ƒ»¯ˆ¼°‰»¯ˆ¶ªƒ¯£~©y –s•ŠjŽ„d…{^rjPkcKjbJ\UAOH6F@0=8*4/#(%  $$&LLMsstƒƒ„ÃÃÃèèèøøøýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýóóñåäâÐÏÉ­«£š–Š~yingSmeNogNogNqiOtkQzqVwZ‡}_‚c”Šjœ’pŸ•sž•s™n›nž“pž“q¡–s¤™u¥™v¨œx­¢}¶ªƒº®‡´¨‚®¢}ªŸ{¬¢~®¤€²¨‚¹­‡½±‰½±Š½±‰¼°‰¼°ˆ¼°‰¼°‰¼°‰¼°‰¼°ˆ¹­†µª„³©ƒ¶«„¹­†¸¬…·«„¶ªƒµ©‚º®‡ÁµÆ»“ȼ”ĸ‘º®‡µ©ƒ·«…¸¬…¸¬…¹­†ÁµÊ¾—ÑÆžÑÆŸÎÛʾ–ĸ‘À´À´Ã·Ç»“ɽ–ɾ–Ƚ•È¼”Ç»“÷À´ÁµŽÉ¾–Ê¿—Ź’ɾ–ÏÅÑÇŸÒÈ ÎÛÁµŽ¾²‹¿³‹½±‰¼°ˆ¼°ˆº®‡¹­†¼°‰Ä¹‘Ƚ•À´¸¬†²¦³§³¨ƒ¶«†¼±ŠÀ´ŒÀ´¾²‹½±Š¾²‹¾²Š¾²‹Â¶ŽÁµ¼°‰¹­†·«„¶ªƒ¹­†¼°‰¼°ˆ·«„µ©‚¸¬…¼°ˆÁµÆ»“Æ»“÷¾²‹º®‡¸¬…¸¬…¸¬…¹­†ÁµÊ¾—ÑÆžÑÆŸÏÄÏĜǼ”¾³‹¿³‹Ã·Ç»“Ç»“Ç»“ȼ”ȼ”Ç»“÷Á¶ŽÄ¸‘Ë¿˜ËÀ™Ç¼•É¾–ÍšÑÆŸÒÈ ÏĜ÷¾²Š»¯ˆ¹­†¹­†»¯ˆº®‡·¬…·¬‡¿´ŽÆº’÷º®‡²¦³§³¨ƒµª…¹­‡¾²ŠÀ´Œ¾²‹¾²Š¿³Œ¾²‹½±Š¿³ŒÀ´Œ¿³‹º®‡·«„µ©ƒ·«„º®‡º¯‡³©ƒ°¦€¶«„¸¬…º®‡ÁµŽÅº’ĸ¼°‰¶ªƒµ©‚¹­†º®‡·«„½±‰Æº’Í›ÏÄÎÛʾ–ĸ‘¿³Œ»¯ˆ»¯ˆ¿³‹¿³ŒÀ´ŒÀ´¿³‹»¯ˆµªƒ±¥€¯£~²¦€°¥« {ªžz¨x¥™vŸ”q•‹j„z]ypUnfM]VAUN;PJ8D?083&/+ '$
+
+
+
+ 001?>@OOP’’’ÒÒÒéééðððùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþüüüôôóÙØÕ²¯¨Š‡z}xhuo]ngRmeNphOsjPulQwmS|rW…|^†f“ˆi†fŒ‚c„e•Ši–Œk—Œk—Œk—Œk ”r®¢}´©‚¶ª„µ©‚±¥­¢}®¢}±¥€µªƒ¹­†¸¬…µ©ƒ¶ªƒ¹­†½±‰¼°ˆº®‡¹­†¹­†º®†¸¬…³©ƒ¯¥±¦¶ªƒº®‡½±Š½±‰¸¬…¹­‡½±ŠÀ´ŒÆº’ȼ•¾³‹·«…·«„¸¬…º®‡¼°‰¿³ŒÅ¹‘ÌÁ™ÏÄœÎÛʾ–Ç»“Ź‘¿³ŒÀ´ŒÇ»“ÌšÎÜɽ•Æº’ĸ¿³ŒÃ·Ê¿—ÌÁ™Åº’¾³ŒÆ»“ÐÅÓÈ¡ÓÉ¢ÎÃœ¿³Œ¼°‰¿³‹¾²‹»¯ˆ·«…³¨‚¶«„À´Æº’ȼ•Ä¹‘À´¼°‰·¬…¹­‡½²ŠÀ´Œ¿³Œ½±‰º®‡½±‰Â¶À´Œ½±Š¿³‹¾²Š»¯‡¸¬…µ©ƒ´¨‚·«„º®‡»¯ˆº®‡¹­†¹­†»¯ˆ½±Š¿³‹Â·Å¹‘Áµ¼°ˆ¹­†¸¬…¹­†»¯ˆ¿³ŒÅ¹‘ÌÁ™ÏÄœÏĜ͚Ƚ•Â¶Ž½±Š¿³ŒÆ»“Ê¿—Ë¿—ȼ”Ç»“Ź‘¿³ŒÃ·Ê¿—ÍÁ™Åº’½²‹Ã·ËÀ™ÑÆŸÓÉ¢ÐŞ÷¿³‹¿³‹½±Š»¯ˆ¸¬…´¨‚µ©ƒ»°‰Ã·Ç¼”Ź‘À´¼°‰·¬…¹­‡½±ŠÀ´Œ¾²‹»¯ˆ¹­†»¯‡½±Š¼°‰»¯ˆ¾²Š¿³‹½±Šº®†µ©‚²¦€³§¶ªƒ¸¬…¶«„µª„¸¬…¸¬…¸¬…½±ŠÄ¸È¼•Â¶Žº®‡·«…¸¬…¸¬…¶ª„¼°ˆÂ¶Ç¼”Ë¿—ÌÁ™È¼•Å¹’÷º®‡·«„½±ŠÁµÀ´Œ¹­†¶ª„²§©žzªŸ{¯£~¬ |¡–s–‹j•‹j–‹j‘‡fŒ‚cƒy\ofNb[DVP;JD3>9+51$,($ 
+   556ooo   ®®®ÕÕÕðððýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþøøøññïååãØÖÓ²°©‚rpjXngRnfOneMqhOulRzqU~uYwZ‚x[ƒz[‡}_‚b…e…eƒcŒ‚c“ˆh •r«Ÿz°¤~« {©žy¨x¨y¬ |³§º®‡º®‡¶ªƒ´¨µ©ƒº®†¼°‰¼°ˆº®†º®‡¼°ˆº®†¶ª„µª„¸¬†½±ŠÂ¶ŽÄ¸‘Áµ¶ªƒ²§‚³©„¹­‡ÁµŽÆº’¾²‹¶ªƒµ©‚¹­†À´ŒÅº’Æ»“Ç»“ʾ–ÍÁ™Íšʾ–ȼ”Ç»“ÁµŽÁµŽÆ»“Ǽ”Æ»“÷À´Œ¿³‹Â¶ŽÈ½•ÌÁ™É½•Ç»”É¿—ÌšÎÛÍšÍÁ™É½•½±Š¼°ˆ¾²‹¼°ˆ·«…³§®¤€°¦¸­†Ã¸È½•À´Œ¼°ˆ¹­†²¨ƒ¶«…¿³ŒÃ·Å¹‘¶Ž¼°‰»¯ˆÁµÃ·Â¶ŽÀ´Œ¿³‹¼°‰º®†·«„·«„º®‡¿³ŒÂ¶ŽÃ·À´Œº®‡·«„¶ªƒ¶ª„½±ŠÄ¸¿³‹º®†¸¬…¸¬…¼±‰Å¹’Æ»“Ç»“ʾ–ÍÁ™ÍšȽ•Ç¼”ȼ•Â·ÁµŽÇ»“ɾ–Ƚ•Ä¸Ã·Â¶Ã·Æº“ɽ•Ç»“Ź’Æ»“ʾ—ËÀ˜É¾–ÌšÌÁšÀ´Œ½±Š¾²‹¼°‰º®†·«„³§²¦€·«…·Ƚ•À´Œ¼°ˆ¹­†²¨ƒ¶«…¿³ŒÃ·Â¶Ž¾²Šº®‡¹­†»¯‡¼°‰½±‰»¯ˆ»¯‡º®‡¸¬…µ©‚³§€·«„»¯ˆ¾²ŠÁ¶ŽÂ·¾²‹¸¬…´¨¶ªƒ¼°‰Á¶Ž¾²‹¸¬…µ©‚¶ªƒº®‡¿³ŒÃ·Ä¸Ä¸Æº’Ç»”ÁµŽ¿³ŒÀ´Œº®‡·«„¹­†¹­†µ©ƒ­¢}ªŸ{§œyŸ”rž“qŸ”r˜Žl…eŠ€aŠ€a„z]tlRnfMf^HWP<HC2;7(3/#)% 
+ 
+
+ ..0JJKXXYwww¾¾¾èèèöööùùùþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýòññÎÍÉ·µ®¤¡–†srkYngPogOriOsjPtkQwnTzrU|rW~uX‚x\†|^…|^„z]ˆ~`†f™ŽlŸ“qœ‘pšn˜Žm—Œl’p¨œyµªƒ»¯ˆ¸¬…µ©ƒµ©ƒº®†º®‡¹­†¶ªƒµ©ƒ¶ª„·«„¹­†¼°ˆ¾²‹ÁµÂ¶ŽÂ¶Ž¾²‹µ©ƒ¯¥€¯¥€µªƒ¹­‡¹­‡·«…¶ªƒ·«„¼°ˆÃ¸Ê¿—ËÀ˜Ê¿—Ƚ•Ê¾–Ë¿—Ç»“ƺ’Ç»“Ź‘ĸĸ¶ŽÀ´Œ¿³‹º®‡º®‡Æº’ÍÁ™Íšɾ–ËÀ˜ÐƞΛȽ•Æº’ȼ”Ǽ”¾²‹¹®‡·¬†¶ª„´¨‚³§±¦±¦µ©‚¾²‹Â·º®‡µª„°¦¨ž{­¢~º®‡Ã·É½•É½•Ã·À´ŒÂ¶Ä¸Ä¸Áµ¼±Š¹®ˆº®‡»¯ˆ¼°‰À´ŒÄ¸Ä¸‘÷Áµ¼°ˆ·«„´¨³§¸¬…¼°‰¸¬†¸¬†¼°‰¼°‰ÁµŽËÀ˜ËÀ˜É½•Ê¿—ËÀ˜Ê¿—ƺ’Ç»“ʾ–Ç»“Ź‘Ç»“ƺ’ĸÁµ¾²‹À´ŒÇ¼”ÌÀ™ÌÁ™É½•Ê¿—ÐÄÎÜɽ•Ã¸É¾—ÌÁš¿´Œ¹®‡·¬†¶ª„¶ª„·«„µ©‚³§µ©‚¼°ŠÀ´º®‡µª„°¦§žz«¡}¶ª„À´ŒÅº’Ź‘ÁµŽ¾²‹¾²‹¿³‹¿³‹¼°ˆ¸¬…¶ªƒ¹­†¹­†¹­†¾²‹Áµ¾²‹ÀµŽÁ¶½±Š¶ª„±¥³§€´¨‚µ©ƒµ©ƒ´¨‚´¨‚¸¬…¿³‹Æº’ƺ’ĸÁµÂ¶ŽÂ¶¼°ˆ¹­†¹­†·«„³§°¥«Ÿz¥šv •ršn–‹k”‰i’ˆgŽ„d„z]|rVxoTvmSkcKXQ=PJ8ID3<6).* # 
+
+
+ ++,<<=DDEkkk²²²ÕÕÕÚÚÚíííþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüøø÷ííìÄÿ”†‚|mwq^qjUogOpgNsjPtkQsjPrjPvnS}sXvZ~uY€vY†|^‰`‹b‹bŠ€aˆ~`„{^Œ‚cšnªžz´¨µ©ƒ¶ª„¸¬…½±‰¸¬…³§€±¥®¢}­¢}³¨‚¹­†¼°‰¾²Š¼°‰¹­†¸¬†¹­†¸¬…´¨‚²¦€´¨‚°¤« |®£}µ©ƒº¯‡½±ŠÁµÈ¼”ÌÀ˜ÌÁ™È½•Ç»“ƺ’÷ĸƺ’Ç»“Ź‘¶À´Œ¿³‹¿³Œº®‡¹­†Ç¼”ÎÛÎÛÌÁ™ÍšÎ›Ǽ”ÁµÁµÇ¼”Ê¿—¶Ž·¬‡°¦‚²§¶ªƒ·«„µªƒµ©ƒ·«„º®‡º®‡µªƒ°¦© } –t¥šv³§¾²‹Ç»”Ê¿—Ƚ•Æº“Ç»“Ź‘¶Ž¿³Œ¹¯‰µ«†º¯ˆ¾²‹À´ŒÃ·Ä¸¿³Œ¼°‰»¯ˆ¾²Š»¯ˆ¸¬…¶ªƒ´¨‚²¦€±¥€¸¬…À´ŒÀ´ŒÂ¶ËÀ˜ÌÀ™Ê¿—ËÀ˜Ê¾–Ç»“ƺ’Ç»“ȼ”ȼ”Ç»“Ç»“÷À´ŒÀ´Œ½±Š¾²‹É¾–ÐÅžÑÆŸÏÄœÏÄÒÇ Íšƺ’¶ŽÊ¿—ÎĜ÷¸­‡±§‚²§¶ªƒ¸¬…¶ª„µ©ƒµªƒ¶«„·«„µ©ƒ°¦© |Ÿ•s¡–t«Ÿ{·«…·Ƚ•È¼”ƺ’ƺ’ĸÁµ¾²‹º®‡·«„»¯ˆ¾²Š¾²‹Â¶À´º®†¶ªƒµ©ƒ¸­…¶ªƒ³§´¨‚¯£~©žz¬¡|±¦€µ©‚¹­†¾²‹Ã·Ã·Áµ¾²Š½±Š»¯ˆ¶ª„²¦€°¤~®¢}«Ÿ{¥švœ’o–‹j“ˆh‹b„z]‡}_†|^€vZumRjaJbZD^WASM9B=-:5'2."&# 
+$$%112AACHHIhhi™™š§§¨ÃÃÃèèèûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýôôóàßÝÓÑÍ´²«†uohUmeOogOqhOpgNofMrjPwnTxoTtkQskPypUvZ€wZxoT{rVvYuY„z]Œ‚c’ˆhž“qªŸz°¥·«„¼°‰¸¬…±¥°¤~²¦€³¨‚±§‚²¨‚µªƒ¶ª„³§®£~°¤µ©‚»¯‡¹­†´¨‚®¢}©žy§œx¬ {±¦€³©ƒµª„»°ˆÆº’ÌÀ˜ÌÁ™Åº’Áµ¿³ŒÀ´ŒÁµÄ¸Æº’Ç»“ĸ½±Šº®ˆÂ¶Ž¿³Œ¾²‹Ê¾–Íšʿ—ȼ”ʾ–ÌÀ™Ã¸¼°ˆ½±ŠÆº“ÌÁ™Åº’º®ˆ²§‚¹®‡¾²Š»¯‡²§¯£~´¨»¯ˆº®ˆªŸz§z¨Ÿ|¢˜u§›w¯£}²¦º®ˆÄ¸Ç»“ɽ•Ë¿—Ƚ•Ä¸ÁµÀµŽ¿µ½±Š½±ŠÀ´ŒÂ¶Ž¿³Œ¹­†·«„º®‡¾²Š¾²‹»¯ˆ³¨ƒ­¢~«Ÿ{®¢|´¨¸¬…¸¬…¼±ŠÈ¼•ÎÛÎÜǼ”÷¿³Œ¿³‹Â¶Ç»“ȼ”ȼ”ƺ’¾²‹º®ˆÂ¶ŽÁµÀµË¿˜ÎÛÍ›ÌÀ™ÎšÏÄɾ–Áµ¾²‹Å¹’Ë¿˜Åº’¼±Šµª…·¬…»¯ˆº®‡²§­¢~±§‚¸­‡¹®‡¯¤©Ÿ{¥œx¡–t¤™uªŸ{®£~¶ª„À´Å¹’ɽ•Ë¿—Ƚ•Ä¸ÁµÁµŽÁµŽ½²Š»¯ˆ¼°ˆ½±Š»¯‡µ©‚±¥³§º®‡»¯ˆ¸¬…±§‚§y •r¥™vªŸz¬ |®¢~²¦¸¬†½±Š¾²Š·¬„¯¤~¨y¥šv£˜t¡–s¡–sŸ”qšnŒƒdx[vZ{rVvmSrjPldLf^G_XBUN;KE3D?/:6(.*%"
+ !!"??@TTUaabwwx„„………†¶¶¶ëëëööö÷÷÷üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýûûûððïÇÆÁ¡ž•‘€„owp\leNldMpgNphOnfMiaIiaImeLsjPskQnfLriOxpU{rV}tX€wZwZ‹b›n£˜t« {µª„°¥€«Ÿz¬ {°¤±¥€¬¢~«¢}¯¤~¯¤~¬¡}¨žzªŸz°¤~¸¬…·«„®£~¡–sŸ•r¦›w¯£~°¥€«¢~¯¤·«…ÁµŽÇ¼”Ƚ•Â¶ŽÁµÁµŽÁµÁµÂ¶Ã·Ä¸Ä¸¾²Š¼°‰Å¹‘ĸ·ʾ–Ë¿—Ǽ”÷·ø¼±Š¸¬…»¯ˆÄ¹‘ËÀ˜Ê¾–¶½±‹Ä¹‘øº¯ˆ±¥­¡|±¥¹­†¹­‡©Ÿz©Ÿ{¬¢~©žz©žz« {¨žz°¥€¾²‹Ã·È¼”ËÀ˜Ê¿—ƺ“À´Â·Ã¸‘»¯ˆ»¯ˆÀ´ŒÀ´Œº®‡µ©‚´¨‚¸¬…¾²Š¾²Š·¬…¨Ÿ{£™w§œx¯£~³§°¥€±¥€·«…¶ŽÉ¾—ÌÁšÅ¹‘¶À´½±ŠÀ´Æº“ƺ’Ź‘¶½±Š¼°‰Å¹‘ĸ÷ʾ–Ë¿—Ƚ•Æº’Ź‘·½²Œº¯ˆ¼°ˆÂ¶ŽÇ»”Ǽ”øÀµÂ¶ÁµŽ»°‰°¤« {°¥º¯‰¼°Š¯£~ªŸ{ªŸ{ªŸz«Ÿz« {¨žz¯¤»¯‰Â¶È¼”Ë¿—ɽ•Ä¸À´ŒÁµŽÂ·º®ˆ¹­†»¯ˆº®‡¶ª„³§¯£~±¥€º®‡»°‰µ«…§žz›’p—l¢—t§œx¢—t¡–s¤™v¬ {±¥³§­¡|¥švœ‘o—Œk”‰i’‡g„eŠ€b…{^xoTmeMldKh`Hc[D[T?RL9JD3E@0=9*40#,("  ))*::;UUW||}œœ¥¥¦ÃÃÃêêêïïïöööþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýùùùòòòçæäÂÀº”‘…{uevo[skUkdLg_Hd\Eb[Eb[Db[Df^FjaIldKpgNsjOskQvmRzqUƒz\‹b…f˜Žm£šw¡—uœ‘o¡•s ”rž“q¢—t¨y­¢}­£~«¢~© }¨žzªŸz°¤®¢~¥šw•‹j˜l¦›x´¨‚´©ƒ¬¡}±¦€¸¬…º®‡½±‰¿³‹À´ŒÇ»”ÌÁšÆº’ĸĸ‘¿´Œ½±‰¿³ŒÂ¶ŽÅ¹’ȼ”ƺ’÷ƺ’Ç»“ƺ’¶Ž¼°ˆ·«…´¨‚¶ªƒ½±ŠÄ¸É½•ËÀ˜Ë¿˜É¾–Ë¿˜Ã¸¸¬†µ©ƒ´¨²¦€²¦€´©ƒ·«…·«…µ©ƒ°¤~« {©žzª }²¨ƒ¼±‰À´ŒÄ¸È½•È½•Ä¸‘½±‰»¯ˆº®‡¶ªƒ»¯ˆÃ·¿³Œº®‡¸­…¶ª„·«…½²Š»°ˆ±¦€Ÿ”r“q§yµ©ƒ·­†²¨ƒ´ª„¹®‡»¯ˆ¾³‹Â¶ŽÅ¹’Ê¿˜ÍÛŹ’øǻ“Ź‘¿³Œ¼°‰¿³ŒÅ¹‘ȼ”ƺ’øƻ“Ǽ”ƺ’÷º®‡±¥¯¥´ª…¼°‰Ã·Ç»“Ç»”Ƚ•Ê¾—Ê¿—Ĺ‘¼°‰´¨‚²¦€µ©ƒ·¬…¸¬…µ©ƒ´¨‚´¨‚´¨®£}©žzª }´ª…À´ÁµŽÃ·Ç»“Ź‘À´Œº®‡¶«„´¨ƒ³§¹­‡Áµ½±Š¹­†¶ª„¯£~­¡}µ©ƒ´ª„¬£~›‘p†f‘‡g¤™v©žzž“qšn’p¡–sŸ“qœ‘o •s •sœ‘o’ˆg‹€b…{]{rVogNg`Hc[D`XB^WASM9IC2E?/>9+72%/+ (% 
+ ""$;;<eef‚‚ƒ¡¡¢ÅÅÅÎÎÏÖÖ×òòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüòòðÒÐÌ¿¹«¨Ÿ”‚nfSe^H`XC]U@ZS>YR=[T?^WAaYCd]Fh_Hh`IldKrjOvmRwnT}tY‡~`‡g‡hŽ„e…f…e‘†f™Žm¢—t¨yª }«¢¬¢~«¡|­¡|²¦€´¨‚®¢~ž“qž“r¨ž{²§¶ª„µªƒ»¯ˆ½±‰µ©ƒ¯£~­¢}¶ª„÷ËÀ™Ê¿—ȼ”Ç»“Áµ¹®‡·­‡ÀµŽÉ½–ÎÛÎÛɾ–À´Œ¿³‹Â¶Ž¾²‹º®‡¹­†¹­…º®†¼°ˆÀ´ŒÄ¸Æ»“Ź’ĸ‘ƺ“Ĺ‘ÁµŽ¾²‹º®†µ©‚°¥€°¥€¶ª„¸¬…·«„²¦€¯£~°¤´¨ƒ·¬…¸­…½±‰Ã·É½•Ç¼”¶Žº®‡¸¬…¸¬…¹­†¿³‹Å¹‘÷¶ø·¶ø‘ź”À¶­¢~©žy°¤·«…¼±Š¾´ŽÂ·Â¶½±Š¶ª„´©ƒ¾²‹È½•ÏÄËÀ˜Ê¾–Ê¿—Ç»“¾³Œ¶«†½²ŒÉ½•ÎÛÎÛʿ—·ÁµŽÃ·Áµ»¯ˆ¶ª„·¬‡¹®ˆ¹­‡À´ŒÆº’Ź‘Ź‘ƺ“ĸ‘ø·½±Š¸¬…·«„²¦¯¤~³§€´¨´¨³§°¤~­¡}²§‚¸­†º®‡¹­†¼°‰Å¹‘ĸ¾²Š¶ªƒ°¥€®¤€²§»¯‡Áµ¿³‹¾²Š¾²‹·«…²¦€¶«„¹®‡´ª„¡—t•‹j”‰iž“q¥™w¢˜uŸ•s›n”Ši‹b…{^ˆ~`Œ‚c‹‚c‚y\|rWvmSi`IYS>RK8OI6NH6LF4C=.:5'40#-)%"
+ $#%::;PPQxxy£££¼¼¼ÝÝÞöööýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúù÷öõééçÄý™•Šrm]d^M]WDXR@TO<SM:UN:WP<YR>\U?^VAaYCf^Fh`Hh`HphNxoU|sW~uYw[x[ƒy\ˆ~_…f˜mž”r¢™v¨žz¬¡|®£}±¥€¸¬…º®‡·«…©žz¤šw§žz¬¡}³§º¯ˆÁµŽÀ´µ©ƒ©y¤™v¯£}»¯ˆÅ¹‘ɾ–Ƚ•Å¹‘÷¼²‹µ«†¼²‹È½•ÐÅžÒÈ¡ÍÃœ¾³Œ¼°ˆ¾²Š¹®‡º¯ˆÀ´Œ½±Šº®†¹­†¼°ˆ¾²‹À´Œ½±Š»¯ˆ¿³‹Ã¸Åº’·½±Š¹®†´ª„±§‚±¦€²¦€³§²¦€³§µ©‚¶ª„µªƒ¶ªƒ»¯‡Â¶ŽÆ»“ø¿³‹¼°‰»¯ˆ¼°‰¿³ŒÄ¸Ç»“Ç»“ɾ–ÍšÐÅžÐÅžÎÃœÒÈ¢ÑÈ¢¿´Ž¸¬…¹­…¸¬…¿´Ê¾—ÎÛÌÀ™Ã··«…°¥€¹­†Ä¸‘ÌÁ™ÏÛÎÛÍšÌÀ˜Â¸‘¸¯Š¿µŽËÀ˜ÒÇ ÒÈ¡ÍÛøÀ´ŒÀ´Œ¾²Š¿³‹ÁµŽÁµ¼±Š¶ª„¼°‰Ã·ÁµÀ´Œ¾²‹¼°ˆÀ´Æº“¶Ž¼°‰¹­†±¥€­¡|¯£~¯£~¯£}°¤~°¤~°¥~´¨‚µ©ƒ³§´¨¸¬†¿´¿³Œ»¯ˆ´¨‚°¥€¯¥€´©ƒº®†½±Š¼±Š¾³ŒÂ¶Ž½±Š¹­†º®‡¾²‹¼°Š§œxšm”Ši“ˆi˜Žnž•tž”s–‹k†|_ypUpgNmeMqhOrjPldKf^G_XBUN;HB2@;+<7(;5'73&1-"+'$ 
+
+  ""#112JJJttu‘ÇÇÈèèèñññûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüñññäãáÏÎʵ³®¥¢›‹‚pk_\WHWRATO>RM:QK9SL9UN;WP<YS=]VAc[Ef^Gf^GkbJriOvnSzqU}tX„z]‰`‹b…f—l¡–s¨x¯¤}·«…µªƒ¯£~¦šwŸ”r’p¡–t¨ž{¯¥¸®ˆ¾²‹»¯ˆµ©ƒ°¥°¥µ©ƒ»¯ˆÀ´ŒÀ´Œ¾²‹Ä¹’ź’¿³Œ¿³ŒÃ·É½•Ë¿—ʾ–Ƚ•Ä¹‘¾³Œµ«…º°ŠÄ¹’¸­‡¯¤¶ª„¹­†»¯ˆ¾²Š»¯ˆ¹­†¼°‰»¯ˆ¸¬†¼°ˆ¿³‹¾²‹À´½²‹³§­¡|¬¡|´¨µ©‚°¤¦›w«Ÿ{¸­†½²Š¼°‰¸¬†¹­†¼°‰Ã·Å¹‘ĸ‘ƺ’ƺ’ȼ”ȼ”Ë¿—ÏÄ×ͦÜÓ®ÜÒ­ÚÒ­Ô˦ź“¾²Š½±‰»¯‡¿³‹È½•ÐÅÑÇŸÌÁ™Æº“ÁµŽ¿³ŒÄ¸Ê¾–ΚÍÁ™ËÀ˜ÏÄœÎÄÊ¿˜ËÀ™ÎÛÏĜʿ—ȼ•Ìšɾ—Áµ¹­†¾²‹Åº“¼²Œ´©„¶«„¹­†¼°‰¿³‹½±‰¹®†·¬…¹­†º¯ˆº®‡»¯ˆ½±‰¼°ˆ¸¬…±¥¬ {©žz®¢}°¤~­¡|¥šv¨œx³§¸¬†·¬†²¨ƒ±§‚´¨‚¶ªƒ¶ªƒ´©‚²¦€´¨‚µª„±§‚²¨ƒ¸¬†»¯ˆ¼°ˆ¼°ˆº®‡²¦šnƒdˆ}_ƒz\‚x\„{^†}_x[tkQiaI_XBVO;TM:SL9OI7F@0=8):6'51$.**&&#"
+
+
+
+
+
+ ""#==>[[\xxy™™š°°±ÔÔÔøøøþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúññðàßÞÏÎ˹¸³š˜„wwtidaSWRBSN=RL;QK9RK9TM:WP<YR=ZS>_XBf^GiaHkbJogMumRypU{rW€wZ‡}_„d•Šjœ‘o¢—s¡–sž“q˜l“ˆh‘‡g–ŒkŸ•r§z®£³§²¦­¢}ªŸz­£}²¨¸¬…»¯‡º®‡º®†½²‹ÀµÀ´ŒÀ´ŒÁµÃ·Ä¸Ä¸Ä¹‘ĸ‘÷¾´ŽÂ·‘Ç»”¼°Š´¨‚·«„º®‡¼°ˆ»¯ˆ¶ª„°¥€±¦€°¦€¯¥€´©ƒº®‡¼°‰¿³‹¾²‹¸¬†²¦±¥€¸¬†¸¬…²¦€©yªŸ{³©ƒ¶¬†µª„µªƒ¼°‰Ã·Ç»“ƺ’Ź‘ĸĸŹ‘ɽ•ËÀ˜ÍšÓÈ¢ØΩØÏ©ÕË¥ÏĞĸ‘¾²‹½±‰¼°‰À´Ç»”ÍÁ™ÎÃœÌÀ™È¼”ĸÁ¶ŽÅº’ËÀ˜ÎÛÌÁ™É¾–Ê¿—ÍšÎÛÍšÌÀ˜ËÀ˜É¾–ɽ•ÍšÌÁ™Ç¼”ĸ‘ź“ȼ•¾³¶¬†¸­†¼°‰¿³Œ¿³‹¹®‡³¨ƒ±§‚°¦€°¤²¦€¸¬…¾²Š¼°ˆ¸¬…´¨‚¯£~¬ |±¥±¥€«¡}¢˜u¤˜u¬¡|­¢}« |©Ÿ|®£~´¨‚·«„´¨‚¯£~« {ªžz¨y¨z¨z©žy«Ÿ{¬ {©žy¦›xž“qˆ`~uYzqVskPogMnfMnfMiaI^WBUN;LF5C=.>9+;6(73&0, *'($$!
+
+
+ ++,;;<UUV{{{««¬ÏÏÏêêê÷÷÷þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýùùùööõññðåäãÎÍË¿¾¹«©£‰†~uqgkf[_ZMVPASM>SM<RL:RL9UO;YS>ZS>\T?`YCf^GiaIkcKogMtkQwoT~uX„y\…|^‡~`ˆa†|_…{]†|^Š€a“‰iœ’pŸ•r –s¡—tž“q’q¥œy­¢~²¦€´¨‚³§°¥±¥´©ƒº¯ˆ»¯ˆº®‡¼°‰¼±Š¼±Š»¯ˆ¿³‹Ä¸‘Ç»”ȼ•Ç»“¶¾²‹¼°ˆ¼°‰»¯‡´¨‚¬ |¦šw§œx©Ÿ|¬¢~¯¥´¨¶ª„·«„·«…º®‡¸¬†·«…º®‡º®‡¶ª„°¤~¬¡}¬¢­¤€±§‚¸­†Â·É½•Ç»”ĸ¶ŽÁµÀ´ŒÀ´ŒÆº“ɾ–ɽ•ÌÀ™ÏÄœÎÛÌÀ™È¼•ÁµŽ½±‰»¯ˆ½±‰ÁµÄ¸‘ƺ’Ç»“ȼ”Ź‘¶ŽÂ¶ŽÆº’Ê¿—Íšʾ–Ź‘·ƺ“ËÀ˜É¾–ƺ’ƺ’ȼ•É¾–ɾ–ËÀ˜ÎÛÐÅÎÜɾ–Ĺ‘¿´½²ŠÀ´Â¶Ž¼°‰²¨‚«¡~¬¢«¡}©žz¬¡}´©ƒº®‡´¨‚¯£~³§€±¥®£}²¦€¯¥€© |¤™w¡–t¡–sž“q’q¤™v« {°¤°¥«Ÿ{¤™v¢—tœ‘o–‹k™Žmšn–Œk•Šj’‡hŒ‚c‰€b„z]tkQmdLiaJ_XCXR>VP<UN;NH6E?/>9*73%/, ,((%#   
+ **+FFGxxy““”µµµÕÕÕííîøøøýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúúõõõðððàßÝÊÉǼ»·©§¢‰†|xopmbd`SZVGVQATN=RL:RL9UN;WQ<XQ=YQ=\U@aYCe]FibJldKkcKpgNukQulRvmSyoT}tXƒy]‡}_ˆ~`‹c‘‡g•Ši—Œk›o’q¡•s¦šw •s™Žm •r©Ÿ{­£¨žz¥švªŸz­£±§ƒ¶«„º®‡¼°‰½²ŠÀ´Â¶ŽÄ¸Ä¸‘ÁµŽ»¯ˆ±¥€¤™vž“qŸ“q§œx­¢}®£~¯£~°¤~°¤~­¡|¬ |²¦€³§²¦±§‚´©ƒ´¨‚¬¡|§œx¨z®¤¶«…¼±‰ÀµÃ¸Â¶ŽÄ¸Ä¸Â¶Ž¼°ˆ·«…»¯ˆÀ´Â¶ŽÆº’ȼ”ź’ƺ’Ź‘¾²Š»¯ˆ¼°‰»¯ˆ»¯‡¼°‰½±‰À´Æº’ƺ’ƺ’Ź‘¶ÁµŽÆº’¶Žº®‡½±‰Ã·Ç»”·½±Š¼°‰½²ŠÀ´Æº’Ë¿—͚͚ÌÁ™ÌÁ™ËÀ˜Ê¾—Ç»”Á¶Žº®‡®£~¥šw¢˜u¬¢~¯¥€ª }ª¡}®¤°¥§œw¡–s§œx¨y¨œx¨y§œy£™wž“q˜l•‹j•‹jšn •sž“qšm™m™m™Žl•ŠjŠ€auY~tY€w[‚x\~uYwnSmeMjbJe^GZS?UN:PI7C>/<7):5'73%1-",(($#     &&'778HHIZZ[oop¨¨¨ÍÍÎäääôôôýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýúúú÷÷÷ððïÝÜÛÊÉÆÁÀ¼¬ª¥”‘Š‚wqnc`\NVQBSM=SM;PJ8OH6PI7RL9UN:XQ=YS>ZS?^XBd\Ec[Ee^GjbJogNqhOsjPvlRzqV€vY„z]†|_ˆ}`ˆ~`Ša†gŽ„eŠ€a‘†gšoœ“q˜Žm•Šj˜Žl •t¨ž{®£~±¦²¨‚´©‚·«„¹­†¹­‡¹®ˆ¸¬†²¦ªžz¡—uŸ•s¡—u¨œx«Ÿ{ªŸz¨œx¤˜tŸ”q›n›‘o¤™u­¡|±¥€®£ªŸ{¦›w¢—t¤™v« {±¦€µ©‚µ©ƒ¹­†¼°‰½±‰½±Š¿³‹ÁµŽ¾²‹¹­†¹­†»¯‡º®‡¼°‰¾²Š½±Š¿³Œ¿³‹¸¬…µª„¶«…µª„µ©‚µ©ƒ¹­†¼°‰¾²‹Â¶ŽÄ¸ÁµŽ»¯ˆ·«…»¯ˆº®‡¶ªƒ¹­†À´Å¹‘¿³Œ¸¬…¶ª„º®‡¿³‹Ã¸Æ»“ɽ•Ê¿—ʾ–ɾ–ɽ•Æº“¾³·­‡±¦‚¨Ÿ{¤™v£˜t¨œx©Ÿ{§ž{¤›y¡—u“p”Ši…f—Œkž“q¢—t •r˜m‘†gƒdŒ‚b‹bŒ‚bƒdŽ„e‹b†}^ƒy\„z]…{^‚x[wnSldKiaJiaJh`IaYDYR=RK8MG4GA1@;,;6(50$,(%"#      %$$/..;;:JIIUUU_^_srs››œ¹¹ºÎÎÎààáóóóüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüöööòòòìëëÛÛÙÍÌʹ·´˜•ƒ€xtpghdX]YKTPBSM>QL<PJ9PJ9QK9RL9UN:XQ<WP<YR=]VA`YCbZDc[Eh`HldLnfMpgNqiOsjPsjQulR{rVuYwZ„z]‰aŒ‚cŒ‚cŠ€a‰`’ˆh“q¡–s¤šw¨ž{ªŸ{¬ {« z¨œx¤šw¤™v£˜u£˜u¤›y£›y£™x¡—u¡–s •s›o”‰hŒ‚c‰aŒ‚c–‹k¤™u­¢}ªŸ{¡–s˜l—Œk •s¬ {¯£~­¡|ªž{¯¤~¶ª„·«…µ©ƒ¶ªƒ¿³‹¿³Œº®‡º®‡·«„±¥°¤~³§·«…¸¬…¶ªƒ±¥­¢~«¢~­£~¯£~°¤¶ªƒ·«…´©ƒ¹­†¼°‰¹­†³¨¯£~°¤²¦€³§µ©ƒ»¯ˆÀ´¼°‰´©ƒ°¥¸¬…À´Œ¾²‹¾³‹Â¶ŽÇ¼”ƺ“À´Œ¾²‹·¬†« }©Ÿ|ª¡~© }¨žz¥šv’oœ‘ož”ršn’ˆhŠ€bƒz\w[‡}_’ˆhšn“ˆi†{^zqVzrV~uY€wZ~tYyqUvmSvmSvmSogNneMmeMldKe]F]V@ZS>UO<NH6FA0@:+;6(61$/+ *&&"!    &&%332CCCWWWkkk‹‹‹³³³ÃÃÃËËË×××çççòòó÷÷÷ûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþüüüøøøóóòÝÝÜËÊÈÀ¿¼´²¯¢ ›Š‡€yvmroeeaU[VHXSDSN=RL;RL9RL9RL8SL9UN:UO;VP;YR=[T@^WAaYCb[Dd[Ed\Ff^GiaIkcKnfMsjPxoTzqV{rV{qVzqU~uY„z^‰€b‡g–Œl–Œk•‹j•Šj“ˆh‘‡g’‡g”Ši–Œk˜Žm–l’‰jŽ„eŽ„e…fŽ„dŠ€a†|^ƒy\„z\‹b’ˆh—k—Œj˜mšn•Šj”‰išm¢—t§œx¥šw¨y¬¡|±¥²¦²¦¶ªƒ±¦€ªžz¬ {ªžz¤˜u¥™v¬ {´¨‚²¦€¬ |©y¤™v¡–t¥šw¨y¨y§›x¨y¬¢~¯¦±¨ƒ¯¥¨žz£˜u¦šw¦›w¥™v©y­¢~°¥€°¦«¢}¤™v©žz¯¤€°¤´¨‚¹®‡»¯‰·«…°¥€®£~©žz •r¢—u¦œy¥›xž”r–‹j…eŽ„d…e‹€b„{^€wZzqUwnSyoU~uYv[xoTsjPphNldLkcKldLjcKg_Hc\F`YD]VAZS>XQ<VP<QK8LE4HB1C>.=8*83&2.",((%$!  
+ $$$0//BBBUUUlll‰‰‰¦¦§¸¸¸ÖÖÖëëìñññ÷÷÷úúúûûûüüüüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýüüüùùùîîîèèçââáËÊȽ»¸³±­£ ›™—‰†~nk`eaTc_Q[WHRM<NH6LF5LF4LE4LF4NI6QK7RL8SL:UN:WP;XQ=YR>ZS>_WAc[Ed\Ee]Ff_HjbJjbJlcKphOvnS{sW}tX~uXuX{rV{rV~uXuYvYƒy\‚x[uY{rVypUzqU}sWuYuY~uY|sWzqU|sWuY€vZ‰a“ˆh…fˆ~`‡}_„e—lšn›‘ož“q¦šv¨œw§›w£˜tœ‘o—Œk˜l˜l–‹k›n¢—tªžz¦›w •r›o–‹k“‰i—Œkšn™Žm“‰i”Šjž•s¢™w¤›y¦z –t™m›n˜Žl”‰i—Œk™Žn˜m™o™o”Ši—Œk’pŸ”r£—u¦šv¤˜uŸ”q›o˜Žm•Šj†f‘†g’ˆi’‡hŠbwZuY}sWypUulRskPrjPnfMiaJf^Ge^Gc[EZS>\U@aZD\U@UO;RL9QK9NH6KE3HB1E?/B=-@;,>9*83'40#1-!-)'$$!   ++,:::MMM```uuvŒŒŒ³³³ÐÐÐáááöööûûûýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþüüüöööååäååäÜÜÛÑÐÎÈÇŶµ±©§¡¦¥Ÿ‘ˆnkaYUGPL>LG8HC3GA2GB2HB2HB1GB2IC2KD3KE3LF4MG5OI6QK7RL8SL9UN:YS=\U?^WA_XBaYBd\EiaJldLldLhaIh`HmeLjbJh`HofNqhOqhOphOldKh`HldKphOqhOulRskQiaIkbJpgNriPwnT}tXw[€vZ|sX~uYx\…|^‰€aŽ„d”‰i–‹j”‰iŽƒd‹b‹‚bŠ€aŠa‚c‘‡g–Šj—Œl—Œk“ˆhŠ€a†|^…{]†|^‡}_‡}_ƒy]„{]ƒd“‰i—l’qšn”‰iŽ„e‰a†|^†|^„{]x[€w[‚y\†|^Š€bŽ…e’‡g…fŒ‚b‰`‡}_„{]y\uZ|sWxoUvmSulRsjPqhOpgOkcJe]FbZD_XB^WA]VAYR>SL9RK9OI7HC1HC1KE4IC3D?.>9*<7(84&40#4/#4/#2.!/+ -))&&##    $#$434GGH__`yyz———³³´ÈÈÈ×××ååæûûûþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþúúúòòòððïééèÖÖÓÊÊǾ¾»¢¡œ„‚{oldb_VVRHPL@NJ>LG<JE8FB5E@2E?1D>/C>.D>.D?.D?.E@/FA0GA1JD2MG5OI7PJ7QJ7SL9TM:UN;VO;WP<XR>[T?YS>XR=]U@^WA_XBc\Ec\D_XB_WB^WA^WBaYDb[D`XB^WB_XBd]Fd]Fd\FjbJldLkcKjcJleLnfMphOtlR}tWvY~uY{rWzqV|sW{qV{qV}tXvZw[w[x[~uYtlQqiNqiOqhNtkQyoTxoTxoU|sXvZx\…{^‡}`„{^zqUsjPriOqhOogNmeLleLogNxoT{rW{rWypUypUyoTskPmdLiaIkcJibId]FaYC_XB^WA^WA]VA]VAZS>VO;QK7KE3JD2IC2FA0B=-A<-?:,:6(73&72&51$1-!-)*'($&"&"%"$!#!$"$!" ///BBBRRRbbb€   ÂÂÂÜÜÜììì÷÷÷ûûûþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýùùøóóóîîîßÞÝÄñ°¬£¢žŒŠ…}w}{uurkjg_c`X]ZRURIOLAJF:GC7E@3B=0@;.?;-?:,?:+B<-D>.D?.E@/F@0E@/E@0GA0IC2JD3IC2HC2ID3KE3LF4MG5RL8TN:RL9QK9PJ7OI6OI7RL9UN:RK8NI6SM:QK8NG5QL8VO<XQ=XQ=YR=ZS>ZS>\U?aZDe]Ff^Ge^Gf_Hg_Hg_Ig_Hh_Hh`Ii`IiaIiaJg_H`XB^WA^WA^VAaZCf^Gg_HiaJjbJjaJiaIiaJmdLmeLc\E^WA^WA^WA\U@[S?\T?_XBf^Fg_He]F`YCaYCc[E_XBWQ=SM9UO;UO;PI7MG5MG5MG4KE3ID2HC1GA0D>/>9*94'73%51#2.!1-!/+ .*+'(%&#$!"!!"$"&$(&!)'#,*&10,762;97;976530/-10/?>=MLKWWWrrr£££¹¹¹ÈÈÈØØØðððúúúþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüõôôñññïïïåååÔÓÒÓÒÑËËÉ»º¸±°­©¨¥—–’Šˆ„€{wuoif_^[SVSKQNDMI?GC8C?4B>1?;.>9,?:,@;,@;-@;,?;+>9*<7);6(;6(=8*>9*>9*@:+?:+>9+C>/GB0C>.FA0IC2F@/B=,@;+?;+>9*<7)=8)A<,E@0GA0GA1HC2ID3HC1E@0IC2NG5NH5NH6OI7PI7PI7PJ7QK8QK8QJ7QJ7QJ7OI7OI6OI7OI7PJ7QJ8QK8SM:XR=VO;RL8RL9TM:SM9QK8PJ8OJ7OI7LF4IC2KE3OI7PJ7PI7PJ7OI7KE3ID2LF4JD2D?.C>.C>-A<,>9*>9)=8(:4'72%51$2/"/+ ,()&&$#!"  #"('"/.*984CB?KJHRQOYXVba`pom€~ŒŒ‹’’‘‘‘‰ˆ‡‰‰‰¢¢¢¹¹¹¾¾¿ÔÔÕôôõþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþýýýýýýýýýüüüöööðïïîííåääØØ×ÑÐÏÈÈÆ´³±¥¤¢›š—‹†‚€{utnigab_XWTLMJAKG=JF;EA5?;.=9,<8+95)61&40%62%61%50$51$51$51$84';6(94&<7)?9+95'72%61$2."1-!0,!0, 2."50$61%51$61%72&83%51$72&;6(=8)=8*>9*?:+@;+@;,A;,A<,B=-@;,@;,@;,A;,B=-B=-B=-B=-A<,B=-FA0F@/C=-A<-B=-C>.C=.B=-@;-@;,>9*<7)=9*?:,?:+>9*?:+?:+;6(94&<7);6(72%51$50$2."/+ .*.*+'($&#%"" ! #!$#'&"+*&/-*542?><KJGZYWlljxxw‚ŽŒ•••››š¤££®®­»»ºÍÍÍØØØÜÜÜâââïïïùùùùùùûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþûûûúúúøøøòòñëëêèèçààßÖÖÕÍÍ˽¼»¬«©œ˜ŒŠ†€zyvpfc[VSKSPGRPGKG?A>5?<3>;3=91:7.:7.:7-95+84+85+84*74(51%2.#0,"-*(%&"($)'+(+(+'+(+(,(-) -* -* .*0-"2.#2-#3.#50$51$51$61$61%50$4/#3/#50$51$61$61$62$51$50$62$72$51$3/#51$72$51$40#4/#3/#2."2."2."2."1,!0,!1,!1,!.* -)/+ .**')&(%%"#""  !#"('$32/;:7=<:CB?KJHSRQYYXfedxxv„„‚———···ÃÃÂËËËÕÕÔÛÛÚßßßåååìììòòòøøøûûûýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþüüüüüüûûû÷÷÷ììëãããÚÙÙÈÇŸ·µ§¦£š™—•“‘Œ…ƒ€|}|yvtqqplrqmomigeab`\`_Y[YTMJCCA:A?8;81.,$%""'$42,9712/)1.'75.85.31)52*96.63+2/'30)63*41)3/&41(52)3/'2.&40'3/&1.%1-$1.%1.%1-$0-#0-$/,#.+".+!/+".+",)-) .+",(+(-* -*!+(+(,)!,) *'*'*'+')&(%)&'$# " " !!#!$"$"'% +)%+*&-,):96KJIRQP\[Zwvuˆˆ‡ˆ‡‡¥¥¤ªª©²²±ÄÄÃÐÐÏÖÖÖëëëøøøúúúúúúüüüýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþúúúññððïïìëëâááããâååäååäääãâááßßÞßßÞÛÛÚÒÒÑÊÊÉÅÅÄ»º¹››™ˆˆ……„wvr^]YONJKJGNNKfecsrocb_]\Ykjflkfa`\a_\ihdec_][W][Wa`[^\WYWSZXS[ZUXVQUSOVTPVTOTRNSQLSRMSQLQPKQOJPOJPOJONINLHNMHNMHMKFMKFMKGLKFLJEMKGMKGLJFLJFMKGMKGKIEKIELJFKJEIGCGE@DC>?=8:83971861973><9GFBLKHMLISRP`_]ba`gge‚‚©¨¨³³²½½½ÙÙÙááàâââìììóóòóóóöööüüüýýýþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûùùùûûûüüüýýýþþþþþþþþþüüüùùùøøø÷÷÷÷÷÷íííáààÝÝÜÖÖÖÍÍÍÆÆÅÄÄÃÄÄÄÓÒÒÏÏÏËÊÊÉÉÈÏÏÎÍÌÌÉÈÈËËÊÌËËÊÉÉÇÇÆÉÈÈÈÈÇÇÇÆÅÅÄÇÆÅÆÆÅÅÅÄÄÄÃÄÄÃÄÄÃÄÃÂÄÃÃÃÃÂÃÃÂÃÂÂÃÃÂÃÂÁÃÂÂÂÂÁÂÂÁÂÂÁÂÂÁÁÁÀÂÁÁÂÂÁÁÁÀÂÁÁÂÁÀÂÂÁÁÁÀÁÁÁÂÁÁÂÂÁÁÁÀÁÁÀÁÁÀ¿¾¾ºº¹µµ´­¬« Ÿ–•“‘‘‘Ž““‘ž­­¬´³³³³³ºººÆÆÆÊÊÉÎÎÍáááïïïóóó÷÷÷ûûûüüüýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýüüüúúúöööññðíííííííììííìðððöööøøøøøøúúúüüüüüüüüüþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþþþþþþþþþþþþþþþþþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ×××µµµ´´µ´´µ´´µ´´µ´´µ´´µ´´µ´´µ´´µ´´µ´´µ´´µ´´µ···ûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ×××µµµ´´µ´´µ´´µ´´µ´´µ´´µ´´µÅÅÅÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÛÛÛjjk99:556556556556556556556556556556556556556BBC¢¢£ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÛÛÛjjk99:556556556556556556556VVWÁÁÂÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÒYYZ''(  667ŒŒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÉÉÉ??@ 
+
+ IIJ±±±ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇÇÈddd 
+<<=ˆˆ‰ùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÉÉÊCCDHHI¬¬­ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÌÌÌMMN&&'
+==>ˆˆ‰ììíÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèèé‚‚ƒ;;<EEF£££ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÃÃÃMMN  €€ïïïÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿªªªPPQAAB¤¤¤÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿËËÌ///>>>îîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÊÊËJJK OOP®®¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüêêêÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÝÝÝîîîÿÿÿÿÿÿÿÿÿÿÿÿäääæææÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿçççÜÜÝÞÞßõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùÝÝÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜèèèÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿäääÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜèèèÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿìììÜÜÝÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜàààÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿXXX
+
+  NNOgghgghgghgghgghgghgghgghgghgghgghTTT !!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''( 223ÊÊÊÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿééé~~99:AAB®®®ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ¼¼¼SST ! //0eef×××ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðð𧧧BBC;;<--.MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÏÏÐ……†CCD,,-””•õõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóóæææÄÄÄEEF //0cccÎÎÎùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÎÎÏaaa(()  ==>ÈÈÉÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÎÎÎVVW \\\âââÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèèèttu<<=556667//0!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ™™š223  ···ÿÿÿÿÿÿÿÿÿÿÿÿëë놆‡778EEF¤¤¤ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÃÃÃRRR !
+ **+yyzÙÙÙÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûû»»»µµµrrs))* MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî„??@''(gghÕÕÖþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùù„„…778
+
+  ,,-rrsÈÈÈ÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÎÎÏXXYFFGÊÊÊÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÓÓÓ]]^XXYÜÜÜÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿààබ¶´´µ´´´‹‹Œ<<=!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿææædde  ···ÿÿÿÿÿÿÿÿÿûûû{{|667HHI£££÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÚÚaab
+ (()oopæææÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÙÙÙ__`//0
+
+ MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ£££==>778‹‹‹÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÅÅÅJJK 223mmnÂÂÃüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghDDE““”òòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþîîî¡¡¡!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿããã 
+IIJßßßÿÿÿîîî{{{778FFG¬¬­ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÈÈCCD CCDÙÙÙÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÏÏÏjjk//0MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôôômmnLLM×××ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÕÕÕLLM 
+
+ //0[[\½½¾òòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿggh‚üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿçççQQR!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿëëë%%& ''(zzzèèè……†445GGH©©ªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡¡¡--. CCDÛÛÜÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÏÏÏyyz001
+
+ MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÂÂÂ
+ BBC¸¸¸ùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÔÔÔGGH 
+
+  %%&DDD™™šØØØ÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîîîmmn !**+ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðððMMNffg€€889FFG££¤úúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡¡¡--. AABÑÑÒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüÑÑÑbbc MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿßßßttu  
+##$__`ÏÏÐÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓCCD  001//0  445__`››œíííþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÅÅÅQQRIIJ[[\ÖÖÖÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòò__`%%& GGH::;DDE¦¦§øøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡¡¡--.
+
+ 445……†ùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÁÁÁ""#MMNðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûü±±²::; zzz‹‹‹""#llmÑÑÒýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓBBC MMNYYZ--. HHIœœêêëþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûçççæææéééÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÝÝEEEKKL­­®ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡¡¡--. --.††‡îîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîîîTTU001QQRðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿçççggg JJKÑÑÑÞÞßUUV !!"^^_ÝÝÞÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÒAAB YYZÙÙÙˆˆ‰556 ??@––—ïïðÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòòÕÕÕôôôÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿxxxDDE££¤ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¤¤¤--.::;ˆˆ‰åååÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý¦¦§mmnžøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ§§§000 $$$íííööö¨¨©KKL ))*¹¹ºÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÒAAB YYZÿÿÿÝÝÝwww../ BBCžžŸòòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøø•••QQR››œýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœœœ++,556¢¢£÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÈÉHHI !99:……†µµµÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷àààöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøøaab@@@×××ÿÿÿÿÿÿëëë‚‚‚(() llmïïïÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÒAAB YYZÿÿÿüüüÔÔÔyyz))* IIJ£££ñññÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðððPPQ))*TTUúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ««¬445 445¸¸¹ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöööçççææçææççççøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüªª«;;<
+&&&  ¡ØØØæææçççöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïïïææçææçææçêêëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ÌÌÌ%%&‰‰‰ýýýÿÿÿÿÿÿþþþ±±±667112«««üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþòòòææçææçéééøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿþþþáááoop112 BBC™™šìììþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿììíçççææçòòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÞÞÞJJK!!"PPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÍÍÍ``a
+
+  ———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿöööNNOIIJIIJOOP¤¤¤úúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷??@ GGHNNOöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿíí톆†GGHIIJIIJccdÚÚÚÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúËËËiij!!"bbcÀÀÀÿÿÿÿÿÿÿÿÿÿÿÿÝÝÝffg$$% aaaëëëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿììì••–IIJIIJ\\]½½¾úúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿüüüØØØ€112 IIIœœææçþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓÓÓhhiIIJIIJzz{ËËÌùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÚÚbbc,,.PPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑÑÑ889bbcîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿçççNNOGGH©©ªÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòòššš<<=  ))*ŽŽ¢¢£ÒÒÓÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ´´´AAB **+qqrØØØÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÛÛÛrrs334 ]]]ÉÉÉÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùù···==>###¹¹¹øøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡¡¡::; kklàààÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿûûûÓÓÓqqr&&' IIJ’’“îîîþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÍÍÍggh""#XXYÎÎÎþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(hhi¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢¡¡¢ppp**+
+
+ PPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüüWWX//0||}ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÚÚ GGH¯¯¯ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóóœœJJJ
+))*223aab×××úúúüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÒKKK--.gghäääÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõõvvw..0---¬¬¬øøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþßßßJJK
+
+ PPPÚÚÚþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÓÓÓUUV
+
+ 99:ÁÁÁþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü×××ggh//0
+
+ AAB——˜êêëþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿâââvvw,,-
+
+ ""#ttuçççÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''( %%&--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.&&'PPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿëëë||} GGHÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ××× ''(———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÖÖÖmmmBBBNNO‹‹Œðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿµµµ##$ EEFÜÜÜÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿààà+++""#oopòòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûüBBC___ÞÞÞÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõõxxy(()
+DDF×××ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÜÜÜ„„…556FFG‘‘’ààáúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÚÚSST 113ÃÃÄþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(PPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿéé醆‡667ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ×××  112™™šÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿßßß···ppq556  (((ggh­­­ÊÊËÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿººº++,LLMÝÝÝÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôôô››œ
+ <<=¯¯¯ùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿííí——˜==>
+
+ ~~~îîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿééésss//1}}}ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèèé‘334 222WWW´´´ìììÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÖÖ×UUV 99:³³³þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(PPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõõ€778ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿááâ667 //0eefàààÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòò¤¤¥TTU  001\\]ÈÈÈÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÞÞÞllm##$EEFœœœõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¾¾¿MMN tttìììÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿìì샃„<<<ÈÈÈûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÛÛÛCCD EEFÏÏÏÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿìììxxy--. AAB‡‡ˆÕÕÕþþþÿÿÿÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóó’’“??@##$êêêÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(??@LLMLLMLLMLLMLLMLLMLLMLLMLLMLLMLLMLLMLLMLLMLLM@@APPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóó||}99: ‘õõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêêêccd**+,,-eefçççÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúððñÚÚÚVVW,,- ! &&'ZZ[ÆÆÆýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý­­®@@A @@A¡¡¢ùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ŒŒ(()¾¾¿ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑÑÑ///yyzèèèþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿrrs001 &&'OOPŸŸŸùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿìì쀀335  ,,-ZZ[ÄÄÅýýýÿÿÿÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷))* //0±±²ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''( !‡‡ˆððððððððððððððððððððððððððððððððððððððððððððð¡¡¡@@APPQúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿéé郃„223 --.222>>?­­®ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÚÚqqr--.001uuvàààÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿåå匌Œnnn&&& 
+
+ 
+
+  OOPÈÈÈÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïïï••–??@%%&EEF¡¡¢ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûÎÎÏ889JJK³³³ÃÃÃÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÉÂÂÂXXY::;šš›óóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿììì~~667''(hhiÍÍÎþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿää䌌Œ<<<   ""#]]^ÍÍÍöööÿÿÿgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÝÞƒƒ„??@%%&@@Açççÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¡¡¢EEF''(TTUúúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿííí‚‚ƒ99: ,,-ffgppp 222«««ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ××ØgghnnnÜÜÜÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùù©©ªPPQ""# %%'VVWÈÈÈÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýêêê¡¡¢SSTœœœùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÚÚÚ€%%&
+
+ ''(==>==>==>==>==>==>==>==>==>==>==>==>==>==>,,- SST­­®ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿäää{{{ZZ[ÏÏÏÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿííí¸¸¸………EEF! ))*ggh¾¾¾øøøgghƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿððñŽŽSSTµµ¶üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùœœœSST¢¢£ýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÝÝÝHHI $$%UUVààබ¶112  ƒƒƒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿäääæææÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúÞÞÞÍÍÍbbc//1
+++-˜˜˜ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ÝÝÞôôõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòòzz{<<=  ""#""#""#""#""#""#""#""#""#""#""#""#""#""# !\\]ïïïÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿêêêßßàÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùÞÞÞ¢¢£VVW --.eee‚MMNƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðððÝÝÞûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôôõÝÝÞ÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ®®® //0nnnáááÿÿÿ¿¿À==> xxxÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóóßßßùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùž^^^''(———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýžžž//0 001kkl‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒ‚‚ƒrrs778 ¨¨¨úúúÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþööö¿¿À``a ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÌÌÌDDE../jjk×××ÿÿÿÿÿÿÜÜÜppq xxxÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõõõ––—TTUºº»ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþåååfff ''(———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþíííccc //0ttuØØÙÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿâââvvw ]]^ÔÔÕþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¹¹ºQQR$$% ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÈÈdde !%%&bbbÛÛÛÿÿÿÿÿÿÿÿÿÿÿÿÞÞÞ"""IIJàààÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿçççMMN**+oopÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûººº==>''(———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðð𬬬 $$%kklÖÖ×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüýÆÆÆ((( 556žøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüüü¯¯°JJK ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøø››œ——˜››œùùùÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÈÈÈWWX%%&--/aabÞÞÞÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ***(((hhióóóÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæææIIJ""#YYZøøøÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôôô„„…99: ''(———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóó󨨩SSTCCDÊÊÊýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúúxxyXXYèèèþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿúúú´´µTTUƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýêê댌667''(778ŒŒŒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÆÆÆOOP%%'//0jjkÛÛÛÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿAAA IIJðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæææIIJ112’’’åååþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿááá444''(———ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¹¹¹UUV%%' ##$ŸŸŸûûûÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¿¿À==> œœœõõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûÉÉÉXXY(()ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûû××ׄ„…??@uuvÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÈÈÉZZ[!!"%%&nno×××ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿyyz%%&
+
+  ëëëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæææIIJ 889……†åååÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿžžž  223™™šÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûû!!# PPQÏÏÏþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùrrs  112µµµÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÓAAB YYZÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÄÄÅrrsDDD**+ ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ———''(!!"ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýý××ׂ‚ƒ==>
+
+ %%&{{|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÊÊË\\]&&',,-UUVáááÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ×××DDE 
+
+  >>?««¬ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûŒŒŒ
+
+  001€åååÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæææIIJ 555ccc®®®ÈÈÈÔÔÕíííÿÿÿÿÿÿÿÿÿÿÿÿýýýßßß»»»„„„444  223zz{ãããÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþÙÙÙ¦¦¦‹‹‹AAB nno¿¿ÀÁÁÂ÷÷÷ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿáááUUV JJK³³³üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÙÙÙÀÀÀ£££;;<
+
+ PPQ¿¿ÀÁÁÁìììÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïïï———??@ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿøøø———$$$ __`¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¿¿À¶¶¶PPQ$$&GGHÒÒÒÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿððñ‚AAB  !DDE¶¶·ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ«««::;778|||ëëëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿæææIIJ 777CCDYYZ’’“ÜÜÜùùùþþþ÷÷÷¿¿¿kkl889 113rrsààáÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÏÏÏnno667223 //0::;EEFºººÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿááâWWXLLM´´µÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÙÙÙkkl<<=667
+
+ ''(::;BBC‡‡‡öööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿèèè‚446ƒƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¼¼¼CCD ::;::;::;::;::;::;::;::;::;::;::;::;::;::;::;::;889##$
+DDEŒŒŒéééÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿææçKKL VVW³³³üüüÿÿÿÿÿÿÿÿÿÿÿÿààà{{|vvwOOP889mmnxxy³³³üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿéééZZ[%%&   ! !!!"##$%%&$$% !++,---dddwwwllm//0 !##$!!" ! !--/eefíííÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ­­­GGH%%&%%&""# " ! !!!"$$%%%&445~~ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿàààTTU%%' ! ! ! ! ! ! ! !!!"##$445xxyñññÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÅÅÅOOP))*%%&##$!!" ! !!!"$$%%%&001``aòòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïïïuuv223 223ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ““”667##$!!" ! ! ! ! ! ! !""#%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&%%&##$!!" ! ! ! !667òòòþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿææçLLM ""#NNOËËËÿÿÿÿÿÿÿÿÿÿÿÿdde001""# !!"''(NNOËËËÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÖÖÖkkl++,../mmnŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒ||}FFF+++
+
+
+!!" !##$bbcŒŒŒŒŒŒŒŒŒŒŒŒêêëÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¦¦¦ŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒñññÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýýýÄÄĈˆ‰ŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒ‘âââðððÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ»»»ŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŽŽÝÝÝÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿñññŽŽ„„…ŽŽÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‘ŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒŒ——˜ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóóŽŽŽGGHAABAABAABAABAABAABAABAABDDE{{|åååÿÿÿÿÿÿÿÿÿÿÿÿ¢¢£JJKAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABAABDDE{{|åååÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÒÒÒccciijÖÖ×ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÍÍÍ[[\AABAABAABAABAABAABTTUÈÈÈÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïïïÒÒÒÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒææçÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ÒÒÓÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÒÒÒææçÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÜÜÜÞÞßÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÙÙÙÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÖÖÖÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿôôôòòòÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùùùýýýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿóóóÍÍÍÂÂÂÂÂÂÛÛÛüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûûãããÅÅŲ²²±±±×××üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðððüüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿàààjjjÍÍÍÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ°°°]]]111$$$???½½½üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿòòòJJJ(((§§§üüüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷ŠŠŠ666···þþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¬¬¬ cccÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿñññvvvöööÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþììì]]]OOOãããÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûûû………,,,ÂÂÂÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ×××
+
+
+
+
+
+
+
+
+GGGÔÔÔþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷÷÷FFF
+
+
+
+
+
+áááÿÿÿÿÿÿÿÿÿÿÿÿººº
+
+
+~~~öööÿÿÿÿÿÿÿÿÿÿÿÿººº
+
+
+
+
+
+øøøÃÃÃDDD---»»»õõõÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþþþ{{{”””ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿëëëYYY
+
+
+´´´ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ¢¢¢ fffîîîÿÿÿÿÿÿëëë<<<
+
+
+
+
+
+
diff --git a/src/xsane-style.rc b/src/xsane-style.rc
new file mode 100644
index 0000000..de6662d
--- /dev/null
+++ b/src/xsane-style.rc
@@ -0,0 +1,34 @@
+# style <name> [= <name>]
+# {
+# <option>
+# }
+#
+# widget <widget_set> style <style_name>
+# widget_class <widget_class_set> style <style_name>
+# accelerator <widget_name> <accelerator>
+
+style "progressbar"
+{
+ bg[PRELIGHT] = { 22500, 53280, 22500 } # green
+}
+
+style "curve"
+{
+ fg[NORMAL] = { 58000, 0, 0 } # red
+}
+
+style "font"
+{
+ font = "-*-helvetica-medium-r-*-*-10-*-*-*-*-*-*-*"
+}
+
+style "fixed font"
+{
+ font = "-misc-fixed-medium-r-semicondensed--13-*-*-*-*-*-*-*"
+}
+
+widget "*GtkCurve" style "curve"
+widget "*GtkProgressBar" style "progressbar"
+# widget "*" style "font"
+widget "*GtkRadioButton*" style "fixed font"
+
diff --git a/src/xsane-text.h b/src/xsane-text.h
new file mode 100644
index 0000000..1ca47ad
--- /dev/null
+++ b/src/xsane-text.h
@@ -0,0 +1,701 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-text.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ------------------------------------------------------------------------ */
+
+#ifndef XSANE_TEXT_H
+#define XSANE_TEXT_H
+
+/* Please translate this to the correct directory name (eg. german=>de) */
+#define XSANE_LANGUAGE_DIR _("language_dir")
+
+#define XSANE_STRSTATUS(status) _(sane_strstatus(status))
+#define _BGT(text) dgettext(xsane.backend, text)
+
+#define XSANE_COPYRIGHT_SIGN _("(c)") /* can be translated with \251 */
+
+#define WINDOW_ABOUT_XSANE _("About")
+#define WINDOW_ABOUT_TRANSLATION _("About translation")
+#define WINDOW_AUTHORIZE _("authorization")
+#define WINDOW_LICENSE _("license")
+#define WINDOW_INFO _("info")
+#define WINDOW_BATCH_SCAN _("batch scan")
+#define WINDOW_FAX_PROJECT _("fax project")
+#define WINDOW_FAX_RENAME _("rename fax page")
+#define WINDOW_FAX_INSERT _("insert ps-file into fax")
+#define WINDOW_MAIL_PROJECT _("mail project")
+#define WINDOW_MAIL_RENAME _("rename mail image")
+#define WINDOW_MAIL_INSERT _("insert file into mail")
+#define WINDOW_PRESET_AREA_RENAME _("rename preset area")
+#define WINDOW_SETUP _("setup")
+#define WINDOW_HISTOGRAM _("Histogram")
+#define WINDOW_GAMMA _("Gamma curve")
+#define WINDOW_STANDARD_OPTIONS _("Standard options")
+#define WINDOW_ADVANCED_OPTIONS _("Advanced options")
+#define WINDOW_DEVICE_SELECTION _("device selection")
+#define WINDOW_PREVIEW _("Preview")
+#define WINDOW_VIEWER _("Viewer")
+#define WINDOW_VIEWER_OUTPUT_FILENAME _("Viewer: select output filename")
+#define WINDOW_OCR_OUTPUT_FILENAME _("Select output filename for OCR text file")
+#define WINDOW_OUTPUT_FILENAME _("select output filename")
+#define WINDOW_SAVE_SETTINGS _("save device settings")
+#define WINDOW_LOAD_SETTINGS _("load device settings")
+#define WINDOW_CHANGE_WORKING_DIR _("change working directory")
+#define WINDOW_TMP_PATH _("select temporary directory")
+#define WINDOW_SCALE _("Scale image")
+#define WINDOW_DESPECKLE _("Despeckle image")
+#define WINDOW_BLUR _("Blur image")
+#define WINDOW_STORE_MEDIUM _("Store medium definition")
+
+#define MENU_FILE _("File")
+#define MENU_PREFERENCES _("Preferences")
+#define MENU_VIEW _("View")
+#define MENU_HELP _("Help")
+#define MENU_FILTERS _("Filters")
+
+#define MENU_ITEM_ABOUT_XSANE _("About XSane")
+#define MENU_ITEM_ABOUT_TRANSLATION _("About translation")
+#define MENU_ITEM_INFO _("Info")
+#define MENU_ITEM_QUIT _("Quit")
+
+#define MENU_ITEM_SAVE_IMAGE _("Save image")
+#define MENU_ITEM_CLOSE _("Close")
+
+#define MENU_ITEM_CLONE _("Clone")
+#define MENU_ITEM_SCALE _("Scale")
+#define MENU_ITEM_DESPECKLE _("Despeckle")
+#define MENU_ITEM_BLUR _("Blur")
+
+#define FRAME_RAW_IMAGE _("Raw image")
+#define FRAME_ENHANCED_IMAGE _("Enhanced image")
+
+#define BUTTON_START _("Start")
+#define BUTTON_OK _("Ok")
+#define BUTTON_ACCEPT _("Accept")
+#define BUTTON_NOT_ACCEPT _("Not accept")
+#define BUTTON_APPLY _("Apply")
+#define BUTTON_CANCEL _("Cancel")
+#define BUTTON_REDUCE _("Reduce")
+#define BUTTON_CONT_AT_OWN_RISK _("Continue at your own risk")
+#define BUTTON_BROWSE _("Browse")
+#define BUTTON_CLOSE _("Close")
+#define BUTTON_OVERWRITE _("Overwrite")
+#define BUTTON_ADD_AREA _("Add area")
+#define BUTTON_PAGE_DELETE _("Delete page")
+#define BUTTON_PAGE_SHOW _("Show page")
+#define BUTTON_PAGE_RENAME _("Rename page")
+#define BUTTON_IMAGE_DELETE _("Delete image")
+#define BUTTON_IMAGE_SHOW _("Show image")
+#define BUTTON_IMAGE_RENAME _("Rename image")
+#define BUTTON_FILE_INSERT _("Insert file")
+#define BUTTON_CREATE_PROJECT _("Create project")
+#define BUTTON_SEND_PROJECT _("Send project")
+#define BUTTON_DELETE_PROJECT _("Delete project")
+#define BUTTON_ADD_PRINTER _("Add printer")
+#define BUTTON_DELETE_PRINTER _("Delete printer")
+#define BUTTON_PREVIEW_ACQUIRE _("Acquire preview")
+#define BUTTON_PREVIEW_CANCEL _("Cancel preview")
+#define BUTTON_DISCARD_IMAGE _("Discard image")
+#define BUTTON_DISCARD_ALL_IMAGES _("Discard all images")
+#define BUTTON_DO_NOT_CLOSE _("Do not close")
+#define BUTTON_SCALE_BIND _("Bind scale")
+
+#define RADIO_BUTTON_FINE_MODE _("Fine mode")
+#define RADIO_BUTTON_HTML_MAIL _("HTML mail")
+#define RADIO_BUTTON_SAVE_DEVPREFS_AT_EXIT _("Save device preferences at exit")
+#define RADIO_BUTTON_OVERWRITE_WARNING _("Overwrite warning")
+#define RADIO_BUTTON_SKIP_EXISTING_NRS _("Skip existing filenames")
+#define RADIO_BUTTON_REDUCE_16BIT_TO_8BIT _("Reduce 16 bit image to 8 bit")
+#define RADIO_BUTTON_WINDOW_FIXED _("Main window size fixed")
+#define RADIO_BUTTON_DISABLE_GIMP_PREVIEW_GAMMA _("Disable gimp preview gamma")
+#define RADIO_BUTTON_PRIVATE_COLORMAP _("Use private colormap")
+#define RADIO_BUTTON_AUTOENHANCE_GAMMA _("Autoenhance gamma")
+#define RADIO_BUTTON_PRESELECT_SCANAREA _("Preselect scanarea")
+#define RADIO_BUTTON_AUTOCORRECT_COLORS _("Autocorrect colors")
+#define RADIO_BUTTON_POP3_AUTHENTIFICATION _("POP3 authentification")
+
+#define TEXT_SCANNING_DEVICES _("scanning for devices")
+#define TEXT_AVAILABLE_DEVICES _("Available devices:")
+#define TEXT_XSANE_OPTIONS _("XSane options")
+#define TEXT_XSANE_MODE _("XSane mode")
+#define TEXT_FILENAME_COUNTER_STEP _("Step")
+#define TEXT_FILETYPE _("Type")
+#define TEXT_SCANNER_BACKEND _("Scanner and backend:")
+#define TEXT_VENDOR _("Vendor:")
+#define TEXT_MODEL _("Model:")
+#define TEXT_TYPE _("Type:")
+#define TEXT_DEVICE _("Device:")
+#define TEXT_LOADED_BACKEND _("Loaded backend:")
+#define TEXT_SANE_VERSION _("Sane version:")
+#define TEXT_RECENT_VALUES _("Recent values:")
+#define TEXT_GAMMA_CORR_BY _("Gamma correction by:")
+#define TEXT_SCANNER _("scanner")
+#define TEXT_SOFTWARE_XSANE _("software (XSane)")
+#define TEXT_NONE _("none")
+#define TEXT_GAMMA_INPUT_DEPTH _("Gamma input depth:")
+#define TEXT_GAMMA_OUTPUT_DEPTH _("Gamma output depth:")
+#define TEXT_SCANNER_OUTPUT_DEPTH _("Scanner output depth:")
+#define TEXT_OUTPUT_FORMATS _("XSane output formats:")
+#define TEXT_8BIT_FORMATS _("8 bit output formats:")
+#define TEXT_16BIT_FORMATS _("16 bit output formats:")
+#define TEXT_GIMP_REDUCE_16BIT_TO_8BIT _("Gimp does not support depth 16 bits/color.\n" \
+ "Do you want to reduce the depth to 8 bits/color?")
+#define TEXT_REDUCE_16BIT_TO_8BIT _("Bit depth 16 bits/color is not supported for this output format.\n" \
+ "Do you want to reduce the depth to 8 bits/color?")
+#define TEXT_AUTHORIZATION_REQ _("Authorization required for")
+#define TEXT_AUTHORIZATION_SECURE _("Password transmission is secure")
+#define TEXT_AUTHORIZATION_INSECURE _("Backend requests plain-text password")
+#define TEXT_USERNAME _("Username :")
+#define TEXT_PASSWORD _("Password :")
+#define TEXT_INVALID_PARAMS _("Invalid parameters.")
+#define TEXT_VERSION _("version:")
+#define TEXT_PACKAGE _("package")
+#define TEXT_WITH_GIMP_SUPPORT _("with GIMP support")
+#define TEXT_WITHOUT_GIMP_SUPPORT _("without GIMP support")
+#define TEXT_GTK_VERSION _("compiled with GTK-")
+#define TEXT_GIMP_VERSION _("compiled with GIMP-")
+#define TEXT_UNKNOWN _("unknown")
+#define TEXT_GPL _("XSane is distributed under the terms of the GNU General Public License\n" \
+ "as published by the Free Software Foundation; either version 2 of the\n" \
+ "License, or (at your option) any later version.\n" \
+ "\n" \
+ "This program is distributed in the hope that it will be useful, but\n" \
+ "WITHOUT ANY WARRANTY; without even the implied warranty of\n" \
+ "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n")
+#define TEXT_EMAIL _("Email:")
+#define TEXT_HOMEPAGE _("Homepage:")
+#define TEXT_FILE _("File:")
+#define TEXT_TRANSLATION _("Translation:")
+
+/* Please translate this to something like */
+/* translation to YOUR LANGUAGE\n */
+/* by YOUR NAME\n */
+/* Email: your.name@yourdomain.com\n */
+#define TEXT_TRANSLATION_INFO _("untranslated original english text\n" \
+ "by Oliver Rauch\n" \
+ "Email: Oliver.Rauch@rauch-domain.de\n")
+
+#define TEXT_INFO_BOX _("0x0: 0KB")
+
+#define TEXT_ADF_PAGES_SCANNED _("Scanned pages: ")
+
+#define TEXT_MAIL_TEXT _("Email text:")
+#define TEXT_ATTACHMENTS _("Attachments:")
+#define TEXT_MAIL_STATUS _("Project status:")
+
+#define TEXT_MEDIUM_DEFINITION_NAME _("Medium Name:")
+
+#define TEXT_VIEWER_IMAGE_INFO _("Size %d x %d pixel, %d bit/color, %d colors, %1.0f dpi x %1.0f dpi, %1.1f %s")
+#define TEXT_X_SCALE_FACTOR _("X-Scale factor:")
+#define TEXT_Y_SCALE_FACTOR _("Y-Scale factor:")
+#define TEXT_DESPECKLE_RADIUS _("Despeckle radius:")
+#define TEXT_BLUR_RADIUS _("Blur radius:")
+
+#define TEXT_SETUP_PRINTER_SEL _("Printer selection:")
+#define TEXT_SETUP_PRINTER_NAME _("Name:")
+#define TEXT_SETUP_PRINTER_CMD _("Command:")
+#define TEXT_SETUP_COPY_NR_OPT _("Copy number option:")
+#define TEXT_SETUP_PRINTER_LINEART_RES _("Lineart resolution (dpi):")
+#define TEXT_SETUP_PRINTER_GRAYSCALE_RES _("Grayscale resolution (dpi):")
+#define TEXT_SETUP_PRINTER_COLOR_RES _("Color resolution (dpi):")
+#define TEXT_SETUP_PRINTER_WIDTH _("Width")
+#define TEXT_SETUP_PRINTER_HEIGHT _("Height")
+#define TEXT_SETUP_PRINTER_LEFT _("Left offset")
+#define TEXT_SETUP_PRINTER_BOTTOM _("Bottom offset")
+#define TEXT_SETUP_PRINTER_GAMMA _("Printer gamma value:")
+#define TEXT_SETUP_PRINTER_GAMMA_RED _("Printer gamma red:")
+#define TEXT_SETUP_PRINTER_GAMMA_GREEN _("Printer gamma green:")
+#define TEXT_SETUP_PRINTER_GAMMA_BLUE _("Printer gamma blue:")
+#define TEXT_SETUP_TMP_PATH _("Temporary directory")
+#define TEXT_SETUP_IMAGE_PERMISSION _("Image-file permissions")
+#define TEXT_SETUP_DIR_PERMISSION _("Directory permissions")
+#define TEXT_SETUP_JPEG_QUALITY _("JPEG image quality")
+#define TEXT_SETUP_PNG_COMPRESSION _("PNG image compression")
+#define TEXT_SETUP_FILENAME_COUNTER_LEN _("Filename counter length")
+#define TEXT_SETUP_TIFF_COMPRESSION_16 _("TIFF 16 bit image compression")
+#define TEXT_SETUP_TIFF_COMPRESSION_8 _("TIFF 8 bit image compression")
+#define TEXT_SETUP_TIFF_COMPRESSION_1 _("TIFF lineart image compression")
+#define TEXT_SETUP_PREVIEW_OVERSAMPLING _("Preview oversampling:")
+#define TEXT_SETUP_PREVIEW_GAMMA _("Preview gamma:")
+#define TEXT_SETUP_PREVIEW_GAMMA_RED _("Preview gamma red:")
+#define TEXT_SETUP_PREVIEW_GAMMA_GREEN _("Preview gamma green:")
+#define TEXT_SETUP_PREVIEW_GAMMA_BLUE _("Preview gamma blue:")
+#define TEXT_SETUP_LINEART_MODE _("Threshold option:")
+#define TEXT_SETUP_ADF_MODE _("Automatic Document Feeder Modus:")
+#define TEXT_SETUP_PREVIEW_PIPETTE_RANGE _("Preview pipette range")
+#define TEXT_SETUP_THRESHOLD_MIN _("Threshold minimum:")
+#define TEXT_SETUP_THRESHOLD_MAX _("Threshold maximum:")
+#define TEXT_SETUP_THRESHOLD_MUL _("Threshold multiplier:")
+#define TEXT_SETUP_THRESHOLD_OFF _("Threshold offset:")
+#define TEXT_SETUP_GRAYSCALE_SCANMODE _("Name of grayscale scanmode:")
+#define TEXT_SETUP_HELPFILE_VIEWER _("Helpfile viewer (HTML):")
+#define TEXT_SETUP_FAX_COMMAND _("Command:")
+#define TEXT_SETUP_FAX_RECEIVER_OPTION _("Receiver option:")
+#define TEXT_SETUP_FAX_POSTSCRIPT_OPT _("Postscriptfile option:")
+#define TEXT_SETUP_FAX_NORMAL_MODE_OPT _("Normal mode option:")
+#define TEXT_SETUP_FAX_FINE_MODE_OPT _("Fine mode option:")
+#define TEXT_SETUP_FAX_VIEWER _("Viewer (Postscript):")
+#define TEXT_SETUP_FAX_WIDTH _("Width")
+#define TEXT_SETUP_FAX_HEIGHT _("Height")
+#define TEXT_SETUP_FAX_LEFT _("Left offset")
+#define TEXT_SETUP_FAX_BOTTOM _("Bottom offset")
+#define TEXT_SETUP_SMTP_SERVER _("SMTP server:")
+#define TEXT_SETUP_SMTP_PORT _("SMTP port:")
+#define TEXT_SETUP_MAIL_FROM _("From:")
+#define TEXT_SETUP_MAIL_REPLY_TO _("Reply to:")
+#define TEXT_SETUP_POP3_SERVER _("POP3 server:")
+#define TEXT_SETUP_POP3_PORT _("POP3 port:")
+#define TEXT_SETUP_POP3_USER _("POP3 user:")
+#define TEXT_SETUP_POP3_PASS _("POP3 password:")
+#define TEXT_SETUP_MAIL_VIEWER _("Viewer (png):")
+#define TEXT_SETUP_OCR_COMMAND _("OCR Command:")
+#define TEXT_SETUP_OCR_INPUTFILE_OPT _("Inputfile option:")
+#define TEXT_SETUP_OCR_OUTPUTFILE_OPT _("Outputfile option:")
+#define TEXT_SETUP_PERMISSION_USER _("user")
+#define TEXT_SETUP_PERMISSION_GROUP _("group")
+#define TEXT_SETUP_PERMISSION_ALL _("all")
+
+#define NOTEBOOK_SAVING_OPTIONS _("Save")
+#define NOTEBOOK_IMAGE_OPTIONS _("Image")
+#define NOTEBOOK_COPY_OPTIONS _("Copy")
+#define NOTEBOOK_FAX_OPTIONS _("Fax")
+#define NOTEBOOK_MAIL_OPTIONS _("Mail")
+#define NOTEBOOK_OCR_OPTIONS _("OCR")
+#define NOTEBOOK_DISPLAY_OPTIONS _("Display")
+#define NOTEBOOK_ENHANCE_OPTIONS _("Enhancement")
+
+#define MENU_ITEM_SAVE _("Save")
+#define MENU_ITEM_VIEWER _("Viewer")
+#define MENU_ITEM_COPY _("Copy")
+#define MENU_ITEM_FAX _("Fax")
+#define MENU_ITEM_MAIL _("Email")
+
+#define MENU_ITEM_SHOW_TOOLTIPS _("Show tooltips")
+#define MENU_ITEM_SHOW_PREVIEW _("Show preview")
+#define MENU_ITEM_SHOW_HISTOGRAM _("Show histogram")
+#define MENU_ITEM_SHOW_GAMMA _("Show gamma curve")
+#define MENU_ITEM_SHOW_STANDARDOPTIONS _("Show standard options")
+#define MENU_ITEM_SHOW_ADVANCEDOPTIONS _("Show advanced options")
+
+#define MENU_ITEM_SETUP _("Setup")
+#define MENU_ITEM_LENGTH_UNIT _("Length unit")
+#define SUBMENU_ITEM_LENGTH_MILLIMETERS _("millimeters")
+#define SUBMENU_ITEM_LENGTH_CENTIMETERS _("centimeters")
+#define SUBMENU_ITEM_LENGTH_INCHES _("inches")
+#define MENU_ITEM_UPDATE_POLICY _("Update policy")
+#define SUBMENU_ITEM_POLICY_CONTINUOUS _("continuous")
+#define SUBMENU_ITEM_POLICY_DISCONTINU _("discontinuous")
+#define SUBMENU_ITEM_POLICY_DELAYED _("delayed")
+#define MENU_ITEM_SHOW_RESOLUTIONLIST _("Show resolution list")
+#define MENU_ITEM_PAGE_ROTATE _("Rotate postscript")
+#define MENU_ITEM_SAVE_DEVICE_SETTINGS _("Save device settings")
+#define MENU_ITEM_LOAD_DEVICE_SETTINGS _("Load device settings")
+#define MENU_ITEM_CHANGE_WORKING_DIR _("Change directory")
+
+#define MENU_ITEM_XSANE_LICENSE _("License")
+#define MENU_ITEM_XSANE_DOC _("XSane doc")
+#define MENU_ITEM_BACKEND_DOC _("Backend doc")
+#define MENU_ITEM_AVAILABLE_BACKENDS _("Available backends")
+#define MENU_ITEM_SCANTIPS _("Scantips")
+#define MENU_ITEM_PROBLEMS _("Problems?")
+
+#define MENU_ITEM_COUNTER_LEN_INACTIVE _("inactive")
+#define MENU_ITEM_TIFF_COMP_NONE _("no compression")
+#define MENU_ITEM_TIFF_COMP_CCITTRLE _("CCITT 1D Huffman compression")
+#define MENU_ITEM_TIFF_COMP_CCITFAX3 _("CCITT Group 3 Fax compression")
+#define MENU_ITEM_TIFF_COMP_CCITFAX4 _("CCITT Group 4 Fax compression")
+#define MENU_ITEM_TIFF_COMP_JPEG _("JPEG DCT compression")
+#define MENU_ITEM_TIFF_COMP_PACKBITS _("pack bits")
+
+#define MENU_ITEM_LINEART_MODE_STANDARD _("Standard options window (lineart)")
+#define MENU_ITEM_LINEART_MODE_XSANE _("XSane main window (lineart)")
+#define MENU_ITEM_LINEART_MODE_GRAY _("XSane main window (grayscale->lineart)")
+#define MENU_ITEM_SELECTION_NONE _("(none)")
+
+#define MENU_ITEM_FILETYPE_BY_EXT _("by ext")
+
+#define MENU_ITEM_PRESET_AREA_ADD_SEL _("Add selection to list")
+#define MENU_ITEM_PRESET_AREA_RENAME _("Rename definiton")
+#define MENU_ITEM_PRESET_AREA_DELETE _("Delete definition")
+#define MENU_OTEM_PRESET_AREA_MOVE_UP _("Move up")
+#define MENU_OTEM_PRESET_AREA_MOVE_DWN _("Move down")
+
+#define PROGRESS_SCANNING _("Scanning")
+#define PROGRESS_RECEIVING_FRAME_DATA _("Receiving %s data")
+
+#define PROGRESS_TRANSFERING_DATA _("Transfering image")
+#define PROGRESS_ROTATING_DATA _("Rotating image")
+#define PROGRESS_MIRRORING_DATA _("Mirroring image")
+#define PROGRESS_PACKING_DATA _("Packing image")
+#define PROGRESS_CONVERTING_DATA _("Converting image")
+#define PROGRESS_SAVING_DATA _("Saving image")
+#define PROGRESS_CLONING_DATA _("Cloning image")
+#define PROGRESS_SCALING_DATA _("Scaling image")
+#define PROGRESS_DESPECKLING_DATA _("Despeckling image")
+#define PROGRESS_BLURING_DATA _("Bluring image")
+
+#define DESC_SCAN_START _("Start scan <Ctrl-Enter>")
+#define DESC_SCAN_CANCEL _("Cancel scan <ESC>")
+#define DESC_PREVIEW_ACQUIRE _("Acquire preview scan <Alt-p>")
+#define DESC_PREVIEW_CANCEL _("Cancel preview scan <Alt-ESC>")
+#define DESC_XSANE_MODE _("save-<Ctrl-s>, view-<Ctrl-v>, photocopy-<Ctrl-c>, " \
+ "fax-<Ctrl-f> or mail-<Ctrl-m>")
+#define DESC_XSANE_MEDIUM _("Select source medium type")
+
+#define DESC_FILENAME_COUNTER_STEP _("Value that is added to filenamecounter after scan")
+#define DESC_BROWSE_FILENAME _("Browse for image filename")
+#define DESC_FILENAME _("Filename for scanned image")
+#define DESC_FILETYPE _("Type of image format, the suitable filename extension is automatically added to the filename")
+#define DESC_FAXPROJECT _("Enter name of fax project")
+#define DESC_FAXPAGENAME _("Enter new name for faxpage")
+#define DESC_FAXRECEIVER _("Enter receiver phone number or address")
+#define DESC_MAILPROJECT _("Enter name of mail project")
+#define DESC_MAILIMAGENAME _("Enter new name for mail image")
+#define DESC_MAILRECEIVER _("Enter email address")
+#define DESC_MAILSUBJECT _("Enter subject of email")
+#define DESC_PRESET_AREA_NAME _("Enter new name for preset area")
+
+#define DESC_PRINTER_SELECT _("Select printerdefinition <Shift-F1/F2/...>")
+
+#define DESC_RESOLUTION _("Set scan resolution")
+#define DESC_RESOLUTION_X _("Set scan resolution for x direction")
+#define DESC_RESOLUTION_Y _("Set scan resolution for y direction")
+#define DESC_ZOOM _("Set zoomfactor")
+#define DESC_ZOOM_X _("Set zoomfactor for x direction")
+#define DESC_ZOOM_Y _("Set zoomfactor for y direction")
+#define DESC_COPY_NUMBER _("Set number of copies")
+
+#define DESC_NEGATIVE _("Negative: Invert colors for scanning negatives <Shift-n>")
+
+#define DESC_GAMMA _("Set gamma value")
+#define DESC_GAMMA_R _("Set gamma value for red component")
+#define DESC_GAMMA_G _("Set gamma value for green component")
+#define DESC_GAMMA_B _("Set gamma value for blue component")
+
+#define DESC_BRIGHTNESS _("Set brightness")
+#define DESC_BRIGHTNESS_R _("Set brightness for red component")
+#define DESC_BRIGHTNESS_G _("Set brightness for green component")
+#define DESC_BRIGHTNESS_B _("Set brightness for blue component")
+
+#define DESC_CONTRAST _("Set contrast")
+#define DESC_CONTRAST_R _("Set contrast for red component")
+#define DESC_CONTRAST_G _("Set contrast for green component")
+#define DESC_CONTRAST_B _("Set contrast for blue component")
+
+#define DESC_THRESHOLD _("Set threshold")
+
+#define DESC_RGB_DEFAULT _("RGB default: Set enhancement values for red, " \
+ "green and blue to default values <Shift-b>:\n" \
+ " gamma = 1.0\n" \
+ " brightness = 0\n" \
+ " contrast = 0")
+
+#define DESC_ENH_AUTO _("Autoadjust gamma, brightness and contrast <Shift-e>")
+#define DESC_ENH_DEFAULT _("Set default enhancement values <Shift-d>:\n" \
+ "gamma = 1.0\n" \
+ "brightness = 0\n" \
+ "contrast = 0")
+#define DESC_ENH_RESTORE _("Restore enhancement values from preferences <Shift-r>")
+#define DESC_ENH_STORE _("Store active enhancement values to preferences <Shift-m>")
+
+#define DESC_HIST_INTENSITY _("Show histogram of intensity/gray <Alt-i>")
+#define DESC_HIST_RED _("Show histogram of red component <Alt-r>")
+#define DESC_HIST_GREEN _("Show histogram of green component <Alt-g>")
+#define DESC_HIST_BLUE _("Show histogram of blue component <Alt-b>")
+#define DESC_HIST_PIXEL _("Display mode: show histogram with lines instead of pixels <Alt-m>")
+#define DESC_HIST_LOG _("Show logarithm of pixelcount <Alt-l>")
+
+#define DESC_PRINTER_SETUP _("Select definition to change")
+#define DESC_PRINTER_NAME _("Define a name for the selection of this definition")
+#define DESC_PRINTER_COMMAND _("Enter command to be executed in copy mode (e.g. \"lpr\")")
+#define DESC_COPY_NUMBER_OPTION _("Enter option for copy numbers")
+#define DESC_PRINTER_LINEART_RESOLUTION _("Resolution with which lineart images are printed and saved in postscript")
+#define DESC_PRINTER_GRAYSCALE_RESOLUTION _("Resolution with which grayscale images are printed and saved in postscript")
+#define DESC_PRINTER_COLOR_RESOLUTION _("Resolution with which color images are printed and saved in postscript")
+#define DESC_PRINTER_WIDTH _("Width of printable area")
+#define DESC_PRINTER_HEIGHT _("Height of printable area")
+#define DESC_PRINTER_LEFTOFFSET _("Left offset from the edge of the paper to the printable area")
+#define DESC_PRINTER_BOTTOMOFFSET _("Bottom offset from the edge of the paper to the printable area")
+#define DESC_PRINTER_GAMMA _("Additional gamma value for photocopy")
+#define DESC_PRINTER_GAMMA_RED _("Additional gamma value for red component for photocopy")
+#define DESC_PRINTER_GAMMA_GREEN _("Additional gamma value for green component for photocopy")
+#define DESC_PRINTER_GAMMA_BLUE _("Additional gamma value for blue component for photocopy")
+#define DESC_TMP_PATH _("Path to temp directory")
+#define DESC_BUTTON_TMP_PATH_BROWSE _("Browse for temporary directory")
+#define DESC_JPEG_QUALITY _("Quality in percent if image is saved as jpeg or tiff with jpeg compression")
+#define DESC_PNG_COMPRESSION _("Compression if image is saved as png")
+#define DESC_FILENAME_COUNTER_LEN _("Minimum length of counter in filename")
+#define DESC_TIFF_COMPRESSION_16 _("Compression type if 16 bit image is saved as tiff")
+#define DESC_TIFF_COMPRESSION_8 _("Compression type if 8 bit image is saved as tiff")
+#define DESC_TIFF_COMPRESSION_1 _("Compression type if lineart image is saved as tiff")
+#define DESC_SAVE_DEVPREFS_AT_EXIT _("Save device dependant preferences in default file at exit of xsane")
+#define DESC_OVERWRITE_WARNING _("Warn before overwriting an existing file")
+#define DESC_SKIP_EXISTING _("If filename counter is automatically increased, used numbers are skipped")
+#define DESC_REDUCE_16BIT_TO_8BIT _("If scanner sends image with 16 bits/color save image with 8 bits/color")
+#define DESC_PSFILE_WIDTH _("Width of paper for postscript files")
+#define DESC_PSFILE_HEIGHT _("Height of paper for postscript files")
+#define DESC_PSFILE_LEFTOFFSET _("Left offset from the edge of the paper to the usable area for postscript files")
+#define DESC_PSFILE_BOTTOMOFFSET _("Bottom offset from the edge of the paper to the usable area for postscript files")
+#define DESC_MAIN_WINDOW_FIXED _("Use fixed main window size or scrolled, resizable main window")
+#define DESC_DISABLE_GIMP_PREVIEW_GAMMA _("Disable preview gamma when XSane runs as gimp plugin")
+#define DESC_PREVIEW_COLORMAP _("Use an own colormap for preview if display depth is 8 bpp")
+#define DESC_PREVIEW_OVERSAMPLING _("Value with that the calculated preview resolution is multiplied")
+#define DESC_PREVIEW_GAMMA _("Set gamma correction value for preview image")
+#define DESC_PREVIEW_GAMMA_RED _("Set gamma correction value for red component of preview image")
+#define DESC_PREVIEW_GAMMA_GREEN _("Set gamma correction value for green component of preview image")
+#define DESC_PREVIEW_GAMMA_BLUE _("Set gamma correction value for blue component of preview image")
+#define DESC_LINEART_MODE _("Define the way XSane shall handle the threshold option")
+#define DESC_GRAYSCALE_SCANMODE _("Select grayscale scanmode. " \
+ "This scanmode is used for lineart preview scan when transformation " \
+ "from grayscale to lineart is enabled")
+#define DESC_PREVIEW_THRESHOLD_MIN _("The scanner's minimum threshold level in %")
+#define DESC_PREVIEW_THRESHOLD_MAX _("The scanner's maximum threshold level in %")
+#define DESC_PREVIEW_THRESHOLD_MUL _("Multiplier to make XSane threshold range and scanner threshold range the same")
+#define DESC_PREVIEW_THRESHOLD_OFF _("Offset to make XSane threshold range and scanner threshold range the same")
+#define DESC_ADF_MODE _("Select scansource for Automatic Document feeder. " \
+ "If this scansource is selected XSane scans until \"out of paper\" or error.")
+#define DESC_PREVIEW_PIPETTE_RANGE _("dimension of square that is used to average color for pipette function")
+#define DESC_DOC_VIEWER _("Enter command to be executed to display helpfiles, must be a html-viewer!")
+#define DESC_AUTOENHANCE_GAMMA _("Change gamma value when autoenhancement button is pressed")
+#define DESC_PRESELECT_SCANAREA _("Select scanarea after preview scan has finished")
+#define DESC_AUTOCORRECT_COLORS _("Do color correction after preview scan has finished")
+
+#define DESC_FAX_COMMAND _("Enter command to be executed in fax mode")
+#define DESC_FAX_RECEIVER_OPT _("Enter option to specify receiver")
+#define DESC_FAX_POSTSCRIPT_OPT _("Enter option to specify postscript files following")
+#define DESC_FAX_NORMAL_OPT _("Enter option to specify normal mode (low resolution)")
+#define DESC_FAX_FINE_OPT _("Enter option to specify fine mode (high resolution)")
+#define DESC_FAX_VIEWER _("Enter command to be executed to view a fax")
+#define DESC_FAX_FINE_MODE _("Send fax with high vertical resolution (196 lpi instead of 98 lpi)")
+#define DESC_FAX_WIDTH _("Width of printable area")
+#define DESC_FAX_HEIGHT _("Height of printable area")
+#define DESC_FAX_LEFTOFFSET _("Left offset from the edge of the paper to the printable area")
+#define DESC_FAX_BOTTOMOFFSET _("Bottom offset from the edge of the paper to the printable area")
+#define DESC_SMTP_SERVER _("IP Address or Domain name of SMTP server")
+#define DESC_SMTP_PORT _("port to connect to SMTP server")
+#define DESC_MAIL_FROM _("enter your email address")
+#define DESC_MAIL_REPLY_TO _("enter email address for replied emails")
+#define DESC_POP3_AUTHENTIFICATION _("Authentificate at POP3 server before sending mail")
+#define DESC_POP3_SERVER _("IP Address or Domain name of POP3 server")
+#define DESC_POP3_PORT _("port to connect to POP3 server")
+#define DESC_POP3_USER _("user name for POP3 server")
+#define DESC_POP3_PASS _("password for POP3 server")
+#define DESC_MAIL_VIEWER _("Enter command to be executed to view a mail image")
+#define DESC_HTML_MAIL _("Mail is sent in html mode, images are displayed directly")
+#define DESC_OCR_COMMAND _("Enter command to start ocr program")
+#define DESC_OCR_INPUTFILE_OPT _("Enter option of the ocr program to define input file")
+#define DESC_OCR_OUTPUTFILE_OPT _("Enter option of the ocr program to define output file")
+
+#define DESC_PERMISSION_READ _("read")
+#define DESC_PERMISSION_WRITE _("write")
+#define DESC_PERMISSION_EXECUTE _("execute")
+
+#define DESC_PIPETTE_WHITE _("Pick white point")
+#define DESC_PIPETTE_GRAY _("Pick gray point")
+#define DESC_PIPETTE_BLACK _("Pick black point")
+
+#define DESC_ZOOM_FULL _("Use full scanarea")
+#define DESC_ZOOM_OUT _("Zoom 20% out")
+#define DESC_ZOOM_IN _("Zoom into selected area")
+#define DESC_ZOOM_UNDO _("Undo last zoom")
+
+#define DESC_FULL_PREVIEW_AREA _("Select visible area")
+#define DESC_AUTOSELECT_SCANAREA _("Autoselect scanarea")
+#define DESC_DELETE_IMAGES _("Delete preview image cache")
+
+#define DESC_PRESET_AREA _("Preset area")
+#define DESC_ROTATION _("Rotate preview and scan")
+
+#define DESC_VIEWER_SAVE _("Save image")
+#define DESC_VIEWER_OCR _("Optical Character Recognition")
+#define DESC_VIEWER_CLONE _("Clone image")
+#define DESC_VIEWER_SCALE _("Scale image")
+#define DESC_VIEWER_DESPECKLE _("Despeckle image")
+#define DESC_VIEWER_BLUR _("Blur image")
+#define DESC_VIEWER_ROTATE90 _("Rotate image 90 degree")
+#define DESC_VIEWER_ROTATE180 _("Rotate image 180 degree")
+#define DESC_VIEWER_ROTATE270 _("Rotate image 270 degree")
+#define DESC_VIEWER_MIRROR_X _("Mirror image at vertical axis")
+#define DESC_VIEWER_MIRROR_Y _("Mirror image at horizontal axis")
+#define DESC_VIEWER_ZOOM _("Zoom image")
+#define DESC_STORE_MEDIUM _("Store medium")
+#define DESC_DELETE_MEDIUM _("Delete active medium")
+
+#define ERR_HOME_DIR _("Failed to determine home directory:")
+#define ERR_CHANGE_WORKING_DIR _("Failed to change working directory to")
+#define ERR_FILENAME_TOO_LONG _("Filename too long")
+#define ERR_CREATE_TEMP_FILE _("Could not create temporary file")
+#define ERR_SET_OPTION _("Failed to set value of option")
+#define ERR_GET_OPTION _("Failed to obtain value of option")
+#define ERR_OPTION_COUNT _("Error obtaining option count")
+#define ERR_DEVICE_OPEN_FAILED _("Failed to open device")
+#define ERR_NO_DEVICES _("no devices available")
+#define ERR_DURING_READ _("Error during read:")
+#define ERR_DURING_SAVE _("Error during save:")
+#define ERR_BAD_DEPTH _("Can't handle depth")
+#define ERR_GIMP_BAD_DEPTH _("GIMP can't handle depth %d bits/color")
+#define ERR_UNKNOWN_SAVING_FORMAT _("Unknown file format for saving")
+#define ERR_OPEN_FAILED _("Failed to open")
+#define ERR_CREATE_SECURE_FILE _("Could not create secure file (may be a link does exist):")
+#define ERR_FAILED_PRINTER_PIPE _("Failed to open pipe for executing printercommand")
+#define ERR_FAILED_EXEC_PRINTER_CMD _("Failed to execute printercommand:")
+#define ERR_FAILED_START_SCANNER _("Failed to start scanner:")
+#define ERR_FAILED_GET_PARAMS _("Failed to get parameters:")
+#define ERR_NO_OUTPUT_FORMAT _("No output format given")
+#define ERR_NO_MEM _("out of memory")
+#define ERR_TOO_MUCH_DATA _("Backend sends more image data than it defined in parameters")
+#define ERR_LIBTIFF _("LIBTIFF reports error")
+#define ERR_LIBPNG _("LIBPNG reports error")
+#define ERR_UNKNOWN_TYPE _("unknown type")
+#define ERR_UNKNOWN_CONSTRAINT_TYPE _("unknown constraint type")
+#define ERR_FAILED_EXEC_DOC_VIEWER _("Failed to execute documentation viewer:")
+#define ERR_FAILED_EXEC_FAX_VIEWER _("Failed to execute fax viewer:")
+#define ERR_FAILED_EXEC_FAX_CMD _("Failed to execute fax command:")
+#define ERR_FAILED_EXEC_MAIL_VIEWER _("Failed to execute mail image viewer:")
+#define ERR_FAILED_EXEC_OCR_CMD _("Failed to execute ocr command:")
+#define ERR_BAD_FRAME_FORMAT _("bad frame format")
+#define ERR_FAILED_SET_RESOLUTION _("unable to set resolution")
+#define ERR_PASSWORD_FILE_INSECURE _("Password file (%s) is insecure, use permission x00\n")
+
+#define ERR_ERROR _("error")
+#define ERR_MAJOR_VERSION_NR_CONFLICT _("Sane major version number mismatch!")
+#define ERR_XSANE_MAJOR_VERSION _("XSane major version =")
+#define ERR_BACKEND_MAJOR_VERSION _("backend major version =")
+#define ERR_PROGRAM_ABORTED _("*** PROGRAM ABORTED ***")
+
+#define ERR_FAILED_ALLOCATE_IMAGE _("Failed to allocate image memory:")
+#define ERR_PREVIEW_BAD_DEPTH _("Preview cannot handle bit depth")
+#define ERR_GIMP_SUPPORT_MISSING _("GIMP support missing")
+
+#define ERR_CREATE_PREVIEW_FILE _("Could not create temporary preview files")
+#define ERR_CREATE_PREVIEW_FILENAME _("Could not create filenames for preview files")
+
+#define ERR_CREATE_FAX_PROJECT _("Could not create faxproject")
+
+#define WARN_COUNTER_UNDERRUN _("Filename counter underrun")
+#define WARN_NO_VALUE_CONSTRAINT _("warning: option has no value constraint")
+#define WARN_XSANE_AS_ROOT _("You try to run XSane as ROOT, that really is DANGEROUS!\n\n\
+Do not send any bug reports when you\n\
+have any problem while running XSane as root:\n\
+YOU ARE ALONE!\
+")
+
+#define ERR_HEADER_ERROR _("Error")
+#define ERR_HEADER_WARNING _("Warning")
+#define ERR_HEADER_INFO _("Information")
+
+#define ERR_FAILED_CREATE_FILE _("Failed to create file:")
+#define ERR_LOAD_DEVICE_SETTINGS _("Error while loading device settings:")
+#define ERR_NO_DRC_FILE _("is not a device-rc-file !!!")
+#define ERR_NETSCAPE_EXECUTE_FAIL _("Failed to execute netscape!")
+#define ERR_SENDFAX_RECEIVER_MISSING _("Send fax: no receiver defined")
+
+#define ERR_CREATED_FOR_DEVICE _("has been created for device")
+#define ERR_USED_FOR_DEVICE _("you want to use it for device")
+#define ERR_MAY_CAUSE_PROBLEMS _("this may cause problems!")
+
+#define WARN_UNSAVED_IMAGES _("There are %d unsaved images")
+#define WARN_FILE_EXISTS _("File %s already exists")
+#define ERR_FILE_NOT_EXISTS _("File %s does not exist")
+#define ERR_FILE_NOT_POSTSCRIPT _("File %s is not a postscript file")
+#define ERR_UNSUPPORTED_OUTPUT_FORMAT _("Unsupported %d-bit output format: %s")
+
+#define WARN_VIEWER_IMAGE_NOT_SAVED _("viewer image is not saved")
+
+#define TEXT_USAGE _("Usage:")
+#define TEXT_USAGE_OPTIONS _("[OPTION]... [DEVICE]")
+#define TEXT_HELP _(\
+"Start up graphical user interface to access SANE (Scanner Access Now Easy) devices.\n\
+\n\
+The format of [DEVICE] is backendname:devicefile (e.g. umax:/dev/scanner).\n\
+[OPTION]... can be a combination of the following items:\n\
+ -h, --help display this help message and exit\n\
+ -v, --version print version information\n\
+ -l, --license print license information\n\
+\n\
+ -d, --device-settings file load device settings from file (without \".drc\")\n\
+\n\
+ -V, --viewer start with viewer-mode active (default)\n\
+ -s, --save start with save-mode active\n\
+ -c, --copy start with copy-mode active\n\
+ -f, --fax start with fax-mode active\n\
+ -m, --mail start with mail-mode active\n\
+ -n, --no-mode-selection disable menu for XSane mode selection\n\
+\n\
+ -M, --Medium-calibration enable medium calibration mode\n\
+\n\
+ -F, --Fixed fixed main window size (overwrite preferences value)\n\
+ -R, --Resizeable resizable, scrolled main window (overwrite preferences value)\n\
+\n\
+ -p, --print-filenames print image filenames created by XSane\n\
+ -N, --force-filename name force filename and disable user filename selection\n\
+\n\
+ --display X11-display redirect output to X11-display\n\
+ --no-xshm do not use shared memory images\n\
+ --sync request a synchronous connection with the X11 server\
+")
+
+/* strings for gimp plugin */
+
+#define XSANE_GIMP_INSTALL_BLURB _("Front-end to the SANE interface")
+#define XSANE_GIMP_INSTALL_HELP _("This function provides access to scanners and other image acquisition devices through the SANE (Scanner Access Now Easy) interface.")
+
+/* Menu path must not be translated, this is done by the gimp. Only translate the text behind the last "/" */
+#define XSANE_GIMP_MENU_DIALOG _("<Toolbox>/File/Acquire/XSane: Device dialog...")
+#define XSANE_GIMP_MENU _("<Toolbox>/File/Acquire/XSane: ")
+#define XSANE_GIMP_MENU_DIALOG_OLD _("<Toolbox>/Xtns/XSane/Device dialog...")
+#define XSANE_GIMP_MENU_OLD _("<Toolbox>/Xtns/XSane/")
+
+/* strings that are used in structures, so it is not allowed to use _()/gettext() here */
+/* gettext_noop does mark these texts but does not change the string */
+
+#define MENU_ITEM_SURFACE_FULL_SIZE N_("full size")
+#define MENU_ITEM_SURFACE_DIN_A3P N_("DIN A3 port.")
+#define MENU_ITEM_SURFACE_DIN_A3L N_("DIN A3 land.")
+#define MENU_ITEM_SURFACE_DIN_A4P N_("DIN A4 port.")
+#define MENU_ITEM_SURFACE_DIN_A4L N_("DIN A4 land.")
+#define MENU_ITEM_SURFACE_DIN_A5P N_("DIN A5 port.")
+#define MENU_ITEM_SURFACE_DIN_A5L N_("DIN A5 land.")
+#define MENU_ITEM_SURFACE_13cmx18cm N_("13cm x 18cm")
+#define MENU_ITEM_SURFACE_18cmx13cm N_("18cm x 13cm")
+#define MENU_ITEM_SURFACE_10cmx15cm N_("10cm x 15cm")
+#define MENU_ITEM_SURFACE_15cmx10cm N_("15cm x 10cm")
+#define MENU_ITEM_SURFACE_9cmx13cm N_("9cm x 13cm")
+#define MENU_ITEM_SURFACE_13cmx9cm N_("13cm x 9cm")
+#define MENU_ITEM_SURFACE_legal_P N_("legal port.")
+#define MENU_ITEM_SURFACE_legal_L N_("legal land.")
+#define MENU_ITEM_SURFACE_letter_P N_("letter port.")
+#define MENU_ITEM_SURFACE_letter_L N_("letter land.")
+
+#define MENU_ITEM_MEDIUM_FULL_RANGE N_("Full range")
+#define MENU_ITEM_MEDIUM_SLIDE N_("Slide")
+#define MENU_ITEM_MEDIUM_STANDARD_NEG N_("Standard negative")
+#define MENU_ITEM_MEDIUM_AGFA_NEG N_("Agfa negative")
+#define MENU_ITEM_MEDIUM_AGFA_NEG_XRG200_4 N_("Agfa negative XRG 200-4")
+#define MENU_ITEM_MEDIUM_AGFA_NEG_HDC_100 N_("Agfa negative HDC 100")
+#define MENU_ITEM_MEDIUM_FUJI_NEG N_("Fuji negative")
+#define MENU_ITEM_MEDIUM_KODAK_NEG N_("Kodak negative")
+#define MENU_ITEM_MEDIUM_KONICA_NEG N_("Konica negative")
+#define MENU_ITEM_MEDIUM_KONICA_NEG_VX_100 N_("Konica negative VX 100")
+#define MENU_ITEM_MEDIUM_ROSSMANN_NEG_HR_100 N_("Rossmann negative HR 100")
+
+#endif
diff --git a/src/xsane-viewer.c b/src/xsane-viewer.c
new file mode 100644
index 0000000..e9a8dd9
--- /dev/null
+++ b/src/xsane-viewer.c
@@ -0,0 +1,1448 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-viewer.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+/* #include <sys/param.h> */
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preferences.h"
+#include "xsane-viewer.h"
+#include "xsane-gamma.h"
+#include "xsane-icons.h"
+#include "xsane-save.h"
+#include <gdk/gdkkeysyms.h>
+#include <sys/wait.h>
+
+
+#ifndef PATH_MAX
+# define PATH_MAX 1024
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_viewer_zoom[] = {35, 50, 71, 100, 141, 200, 282, 400 };
+#define XSANE_VIEWER_ZOOM_ITEMS 8
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_viewer_close_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_dialog_cancel(GtkWidget *window, gpointer data);
+static void xsane_viewer_save_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_ocr_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_clone_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_despeckle_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_blur_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_scale_image(GtkWidget *window, gpointer data);
+static void xsane_viewer_despeckle_image(GtkWidget *window, gpointer data);
+static void xsane_viewer_blur_image(GtkWidget *window, gpointer data);
+static void xsane_viewer_rotate(Viewer *v, int rotation);
+static void xsane_viewer_rotate90_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_rotate180_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_rotate270_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_mirror_x_callback(GtkWidget *window, gpointer data);
+static void xsane_viewer_mirror_y_callback(GtkWidget *window, gpointer data);
+static GtkWidget *xsane_viewer_files_build_menu(Viewer *v);
+static GtkWidget *xsane_viewer_filters_build_menu(Viewer *v);
+static int xsane_viewer_read_image(Viewer *v);
+Viewer *xsane_viewer_new(char *filename, int reduce_to_lineart, char *output_filename);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_viewer_close_callback(GtkWidget *widget, gpointer data)
+{
+ Viewer *v, *list, **prev_list;
+
+ v = (Viewer*) gtk_object_get_data(GTK_OBJECT(widget), "Viewer");
+
+ DBG(DBG_proc, "xsane_viewer_close_callback\n");
+
+ if (!v->image_saved)
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), WARN_VIEWER_IMAGE_NOT_SAVED);
+ if (xsane_back_gtk_decision(ERR_HEADER_WARNING, (gchar **) warning_xpm, buf, BUTTON_DO_NOT_CLOSE, BUTTON_DISCARD_IMAGE, TRUE /* wait */))
+ {
+ return TRUE;
+ }
+ }
+
+ remove(v->filename);
+
+ gtk_widget_destroy(v->top);
+
+
+ list = xsane.viewer_list;
+ prev_list = &xsane.viewer_list;
+
+ while (list)
+ {
+ if (list == v)
+ {
+ DBG(DBG_info, "removing viewer from viewer list\n");
+ *prev_list = list->next_viewer;
+ break;
+ }
+
+ prev_list = &list->next_viewer;
+ list = list->next_viewer;
+ }
+
+ free(v);
+
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_dialog_cancel(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_save_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ char outputfilename[1024];
+ char *inputfilename;
+ char windowname[256];
+ int output_format;
+
+ DBG(DBG_proc, "xsane_viewer_save_callback\n");
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ if (v->output_filename)
+ {
+ strncpy(outputfilename, v->output_filename, sizeof(outputfilename));
+ }
+ else
+ {
+ int abort = 0;
+
+ strcpy(outputfilename, preferences.filename);
+
+ snprintf(windowname, sizeof(windowname), "%s %s %s", xsane.prog_name, WINDOW_VIEWER_OUTPUT_FILENAME, xsane.device_text);
+
+ umask((mode_t) preferences.directory_umask); /* define new file permissions */
+ abort = xsane_back_gtk_get_filename(windowname, outputfilename, sizeof(outputfilename), outputfilename, TRUE, TRUE, FALSE);
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+
+ if (abort)
+ {
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+ return;
+ }
+ }
+
+ if (preferences.overwrite_warning) /* test if filename already used */
+ {
+ FILE *testfile;
+
+ testfile = fopen(outputfilename, "rb"); /* read binary (b for win32) */
+ if (testfile) /* filename used: skip */
+ {
+ char buf[256];
+
+ fclose(testfile);
+ snprintf(buf, sizeof(buf), WARN_FILE_EXISTS, outputfilename);
+ if (xsane_back_gtk_decision(ERR_HEADER_WARNING, (gchar **) warning_xpm, buf, BUTTON_OVERWRITE, BUTTON_CANCEL, TRUE /* wait */) == FALSE)
+ {
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+ return;
+ }
+ }
+ }
+
+ inputfilename = strdup(v->filename);
+
+ output_format = xsane_identify_output_format(outputfilename, 0);
+
+ if (v->reduce_to_lineart) /* reduce grayscale image to lineart before saving */
+ {
+ char dummyfilename[1024];
+
+ if (output_format != XSANE_PNM)
+ {
+ xsane_back_gtk_make_path(sizeof(dummyfilename), dummyfilename, 0, 0, "xsane-viewer-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+ }
+ else /* pbm: no further conversion, we save to destination filename */
+ {
+ snprintf(dummyfilename, sizeof(dummyfilename), "%s", outputfilename);
+ if (xsane_create_secure_file(dummyfilename)) /* remove possibly existing symbolic links for security */
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, dummyfilename);
+ xsane_back_gtk_error(buf, TRUE);
+ return; /* error */
+ }
+ }
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_PACKING_DATA);
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ /* the outputfile always is a temporary file, so we do not have to care about symlinks here */
+ xsane_save_image_as_lineart(v->filename, dummyfilename, v->progress_bar, &v->cancel_save);
+
+ free(inputfilename);
+ inputfilename = strdup(dummyfilename);
+ }
+
+
+ if ((!v->reduce_to_lineart) || (output_format != XSANE_PNM)) /* pbm already is saved above, otherwise save now */
+ {
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_SAVING_DATA);
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ xsane_save_image_as(inputfilename, outputfilename, output_format, v->progress_bar, &v->cancel_save);
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+ }
+
+ free(inputfilename);
+
+ v->image_saved = TRUE;
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_ocr_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ char outputfilename[1024];
+ char *extensionptr;
+ char windowname[256];
+ char *arg[1000];
+ int argnr;
+ pid_t pid;
+ int abort = 0;
+ int i;
+
+ DBG(DBG_proc, "xsane_viewer_ocr_callback\n");
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ strncpy(outputfilename, preferences.filename, sizeof(outputfilename)-5);
+
+ extensionptr = strchr(outputfilename, '.');
+ if (!extensionptr)
+ {
+ extensionptr=outputfilename + strlen(outputfilename);
+ }
+ strcpy(extensionptr, ".txt");
+
+ snprintf(windowname, sizeof(windowname), "%s %s %s", xsane.prog_name, WINDOW_OCR_OUTPUT_FILENAME, xsane.device_text);
+
+ umask((mode_t) preferences.directory_umask); /* define new file permissions */
+ abort = xsane_back_gtk_get_filename(windowname, outputfilename, sizeof(outputfilename), outputfilename, TRUE, TRUE, FALSE);
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+
+ if (abort)
+ {
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+ return;
+ }
+
+ argnr = xsane_parse_options(preferences.ocr_command, arg);
+
+ arg[argnr++] = strdup(preferences.ocr_inputfile_option);
+ arg[argnr++] = strdup(v->filename);
+
+ arg[argnr++] = strdup(preferences.ocr_outputfile_option);
+ arg[argnr++] = strdup(outputfilename);
+
+ arg[argnr] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_OCR_CMD, preferences.ocr_command);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+
+ for (i=0; i<argnr; i++)
+ {
+ free(arg[i]);
+ }
+
+ while (pid)
+ {
+ int status = 0;
+ pid_t pid_status = waitpid(pid, &status, WNOHANG);
+
+ if (pid == pid_status)
+ {
+ pid = 0; /* ok, child process has terminated */
+ }
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_clone_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ FILE *outfile;
+ FILE *infile;
+ char outfilename[256];
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_viewer_clone_callback\n");
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ infile = fopen(v->filename, "rb");
+ if (!infile)
+ {
+ DBG(DBG_error, "could not load file %s\n", v->filename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ DBG(DBG_info, "cloning image %s with geometry: %d x %d x %d, %d colors\n", v->filename, image_info.image_width, image_info.image_height, image_info.depth, image_info.colors);
+
+ xsane_back_gtk_make_path(sizeof(outfilename), outfilename, 0, 0, "xsane-viewer-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+
+ outfile = fopen(outfilename, "wb");
+ if (!outfile)
+ {
+ DBG(DBG_error, "could not save file %s\n", outfilename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_CLONING_DATA);
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ xsane_save_rotate_image(outfile, infile, &image_info, 0, v->progress_bar, &v->cancel_save);
+
+ fclose(infile);
+ fclose(outfile);
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ xsane_viewer_new(outfilename, v->reduce_to_lineart, NULL);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_spinbutton_float_changed(GtkWidget *spinbutton, gpointer data)
+{
+ float *val = (float *) data;
+
+ *val = gtk_spin_button_get_value_as_float((GtkSpinButton *) spinbutton);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_spinbutton_int_changed(GtkWidget *spinbutton, gpointer data)
+{
+ int *val = (int *) data;
+
+ *val = gtk_spin_button_get_value_as_int((GtkSpinButton *) spinbutton);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_scale_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ GtkWidget *selection_dialog;
+ GtkWidget *hbox, *vbox;
+ GtkWidget *label, *spinbutton, *button;
+ GtkAdjustment *adjustment;
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_viewer_scale_callback\n");
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ if (v->output_filename)
+ {
+ snprintf(buf, sizeof(buf), "%s: %s", WINDOW_SCALE, v->output_filename);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), WINDOW_SCALE);
+ }
+
+ selection_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(selection_dialog), GTK_WIN_POS_MOUSE);
+ gtk_window_set_title(GTK_WINDOW(selection_dialog), buf);
+ xsane_set_window_icon(selection_dialog, 0);
+
+ v->active_dialog = selection_dialog;
+
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_container_add(GTK_CONTAINER(selection_dialog), vbox);
+ gtk_widget_show(vbox);
+
+#if 0
+ /* bind scale */
+
+ button = gtk_check_button_new_with_label(BUTTON_SCALE_BIND);
+ gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 5);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE);
+ gtk_widget_show(button);
+#endif
+
+ /* x_scale factor: <-> */
+
+ v->x_scale_factor = 1.0;
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_X_SCALE_FACTOR);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10);
+ gtk_widget_show(label);
+
+ adjustment = (GtkAdjustment *) gtk_adjustment_new(1.0, 0.01, 2.0, 0.01, 0.1, 0.0);
+ spinbutton = gtk_spin_button_new(adjustment, 0, 2);
+ gtk_signal_connect(GTK_OBJECT(spinbutton), "changed", (GtkSignalFunc) xsane_viewer_spinbutton_float_changed, (void *) &v->x_scale_factor);
+ gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(spinbutton), TRUE);
+ gtk_spin_button_set_shadow_type(GTK_SPIN_BUTTON(spinbutton), GTK_SHADOW_OUT);
+ gtk_box_pack_end(GTK_BOX(hbox), spinbutton, FALSE, FALSE, 10);
+ gtk_widget_show(spinbutton);
+
+ /* y_scale factor: <-> */
+
+ v->y_scale_factor = 1.0;
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_Y_SCALE_FACTOR);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10);
+ gtk_widget_show(label);
+
+ adjustment = (GtkAdjustment *) gtk_adjustment_new(1.0, 0.01, 2.0, 0.01, 0.1, 0.0);
+ spinbutton = gtk_spin_button_new(adjustment, 0, 2);
+ gtk_signal_connect(GTK_OBJECT(spinbutton), "changed", (GtkSignalFunc) xsane_viewer_spinbutton_float_changed, (void *) &v->y_scale_factor);
+ gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(spinbutton), TRUE);
+ gtk_spin_button_set_shadow_type(GTK_SPIN_BUTTON(spinbutton), GTK_SHADOW_OUT);
+ gtk_box_pack_end(GTK_BOX(hbox), spinbutton, FALSE, FALSE, 10);
+ gtk_widget_show(spinbutton);
+
+ /* Apply Cancel */
+
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_viewer_scale_image, (void *) v);
+ gtk_signal_connect_object(GTK_OBJECT(button), "clicked", (GtkSignalFunc) gtk_widget_destroy, (GtkObject *) selection_dialog);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_viewer_dialog_cancel, (void *) v);
+ gtk_signal_connect_object(GTK_OBJECT(button), "clicked", (GtkSignalFunc) gtk_widget_destroy, (GtkObject *) selection_dialog);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_show(button);
+
+ gtk_widget_show(selection_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_despeckle_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ GtkWidget *selection_dialog;
+ GtkWidget *hbox, *vbox;
+ GtkWidget *label, *spinbutton, *button;
+ GtkAdjustment *adjustment;
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_viewer_despeckle_callback\n");
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ if (v->output_filename)
+ {
+ snprintf(buf, sizeof(buf), "%s: %s", WINDOW_DESPECKLE, v->output_filename);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), WINDOW_DESPECKLE);
+ }
+
+ selection_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(selection_dialog), GTK_WIN_POS_MOUSE);
+ gtk_window_set_title(GTK_WINDOW(selection_dialog), buf);
+ xsane_set_window_icon(selection_dialog, 0);
+
+ v->active_dialog = selection_dialog;
+
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_container_add(GTK_CONTAINER(selection_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* Despeckle radius: <-> */
+
+ v->filter_radius = 2;
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_DESPECKLE_RADIUS);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10);
+ gtk_widget_show(label);
+
+ adjustment = (GtkAdjustment *) gtk_adjustment_new(2.0, 2.0, 10.0, 1.0, 5.0, 0.0);
+ spinbutton = gtk_spin_button_new(adjustment, 0, 0);
+ gtk_signal_connect(GTK_OBJECT(spinbutton), "changed", (GtkSignalFunc) xsane_viewer_spinbutton_int_changed, (void *) &v->filter_radius);
+ gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(spinbutton), TRUE);
+ gtk_spin_button_set_shadow_type(GTK_SPIN_BUTTON(spinbutton), GTK_SHADOW_OUT);
+ gtk_box_pack_end(GTK_BOX(hbox), spinbutton, FALSE, FALSE, 10);
+ gtk_widget_show(spinbutton);
+
+ /* Apply Cancel */
+
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_viewer_despeckle_image, (void *) v);
+ gtk_signal_connect_object(GTK_OBJECT(button), "clicked", (GtkSignalFunc) gtk_widget_destroy, (GtkObject *) selection_dialog);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_viewer_dialog_cancel, (void *) v);
+ gtk_signal_connect_object(GTK_OBJECT(button), "clicked", (GtkSignalFunc) gtk_widget_destroy, (GtkObject *) selection_dialog);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_show(button);
+
+ gtk_widget_show(selection_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_blur_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ GtkWidget *selection_dialog;
+ GtkWidget *hbox, *vbox;
+ GtkWidget *label, *spinbutton, *button;
+ GtkAdjustment *adjustment;
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_viewer_blur_callback\n");
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ if (v->output_filename)
+ {
+ snprintf(buf, sizeof(buf), "%s: %s", WINDOW_BLUR, v->output_filename);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), WINDOW_BLUR);
+ }
+
+ selection_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(selection_dialog), GTK_WIN_POS_MOUSE);
+ gtk_window_set_title(GTK_WINDOW(selection_dialog), buf);
+ xsane_set_window_icon(selection_dialog, 0);
+
+ v->active_dialog = selection_dialog;
+
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 4);
+ gtk_container_add(GTK_CONTAINER(selection_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* Blur radius: <-> */
+
+ v->filter_radius = 2;
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_BLUR_RADIUS);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 10);
+ gtk_widget_show(label);
+
+ adjustment = (GtkAdjustment *) gtk_adjustment_new(2.0, 2.0, 20.0, 1.0, 5.0, 0.0);
+ spinbutton = gtk_spin_button_new(adjustment, 0, 0);
+ gtk_signal_connect(GTK_OBJECT(spinbutton), "changed", (GtkSignalFunc) xsane_viewer_spinbutton_int_changed, (void *) &v->filter_radius);
+ gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(spinbutton), TRUE);
+ gtk_spin_button_set_shadow_type(GTK_SPIN_BUTTON(spinbutton), GTK_SHADOW_OUT);
+ gtk_box_pack_end(GTK_BOX(hbox), spinbutton, FALSE, FALSE, 10);
+ gtk_widget_show(spinbutton);
+
+ /* Apply Cancel */
+
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ button = gtk_button_new_with_label(BUTTON_APPLY);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_viewer_blur_image, (void *) v);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_viewer_dialog_cancel, (void *) v);
+ gtk_signal_connect_object(GTK_OBJECT(button), "clicked", (GtkSignalFunc) gtk_widget_destroy, (GtkObject *) selection_dialog);
+ gtk_container_add(GTK_CONTAINER(hbox), button);
+ gtk_widget_show(button);
+
+ gtk_widget_show(selection_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_scale_image(GtkWidget *window, gpointer data)
+{
+ FILE *outfile;
+ FILE *infile;
+ char outfilename[256];
+ Viewer *v = (Viewer *) data;
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_viewer_scale_image\n");
+
+ gtk_widget_destroy(v->active_dialog);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ infile = fopen(v->filename, "rb");
+ if (!infile)
+ {
+ DBG(DBG_error, "could not load file %s\n", v->filename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ DBG(DBG_info, "scaling image %s with geometry: %d x %d x %d, %d colors\n", v->filename, image_info.image_width, image_info.image_height, image_info.depth, image_info.colors);
+
+ xsane_back_gtk_make_path(sizeof(outfilename), outfilename, 0, 0, "xsane-viewer-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+
+ outfile = fopen(outfilename, "wb");
+ if (!outfile)
+ {
+ DBG(DBG_error, "could not save file %s\n", outfilename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_SCALING_DATA);
+
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ xsane_save_scaled_image(outfile, infile, &image_info, v->x_scale_factor, v->y_scale_factor, v->progress_bar, &v->cancel_save);
+
+ fclose(infile);
+ fclose(outfile);
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ DBG(DBG_info, "removing file %s\n", v->filename);
+ remove(v->filename);
+ free(v->filename);
+
+ v->filename = strdup(outfilename);
+ v->image_saved = FALSE;
+
+ xsane_viewer_read_image(v);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_despeckle_image(GtkWidget *window, gpointer data)
+{
+ FILE *outfile;
+ FILE *infile;
+ char outfilename[256];
+ Viewer *v = (Viewer *) data;
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_viewer_despeckle_image\n");
+
+ gtk_widget_destroy(v->active_dialog);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ infile = fopen(v->filename, "rb");
+ if (!infile)
+ {
+ DBG(DBG_error, "could not load file %s\n", v->filename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ DBG(DBG_info, "despeckling image %s with geometry: %d x %d x %d, %d colors\n", v->filename, image_info.image_width, image_info.image_height, image_info.depth, image_info.colors);
+
+ xsane_back_gtk_make_path(sizeof(outfilename), outfilename, 0, 0, "xsane-viewer-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+
+ outfile = fopen(outfilename, "wb");
+ if (!outfile)
+ {
+ DBG(DBG_error, "could not save file %s\n", outfilename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_DESPECKLING_DATA);
+
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ xsane_save_despeckle_image(outfile, infile, &image_info, v->filter_radius, v->progress_bar, &v->cancel_save);
+
+ fclose(infile);
+ fclose(outfile);
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ DBG(DBG_info, "removing file %s\n", v->filename);
+ remove(v->filename);
+ free(v->filename);
+
+ v->filename = strdup(outfilename);
+ v->image_saved = FALSE;
+
+ xsane_viewer_read_image(v);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_blur_image(GtkWidget *window, gpointer data)
+{
+ FILE *outfile;
+ FILE *infile;
+ char outfilename[256];
+ Viewer *v = (Viewer *) data;
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_viewer_blur_image\n");
+
+ gtk_widget_destroy(v->active_dialog);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ infile = fopen(v->filename, "rb");
+ if (!infile)
+ {
+ DBG(DBG_error, "could not load file %s\n", v->filename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ DBG(DBG_info, "bluring image %s with geometry: %d x %d x %d, %d colors\n", v->filename, image_info.image_width, image_info.image_height, image_info.depth, image_info.colors);
+
+ xsane_back_gtk_make_path(sizeof(outfilename), outfilename, 0, 0, "xsane-viewer-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+
+ outfile = fopen(outfilename, "wb");
+ if (!outfile)
+ {
+ DBG(DBG_error, "could not save file %s\n", outfilename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_BLURING_DATA);
+
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ xsane_save_blur_image(outfile, infile, &image_info, v->filter_radius, v->progress_bar, &v->cancel_save);
+
+ fclose(infile);
+ fclose(outfile);
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ DBG(DBG_info, "removing file %s\n", v->filename);
+ remove(v->filename);
+ free(v->filename);
+
+ v->filename = strdup(outfilename);
+ v->image_saved = FALSE;
+
+ xsane_viewer_read_image(v);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_rotate(Viewer *v, int rotation)
+{
+ FILE *outfile;
+ FILE *infile;
+ char outfilename[256];
+ Image_info image_info;
+
+ DBG(DBG_proc, "xsane_viewer_rotate(%d)\n", rotation);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), FALSE);
+
+ infile = fopen(v->filename, "rb");
+ if (!infile)
+ {
+ DBG(DBG_error, "could not load file %s\n", v->filename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ DBG(DBG_info, "rotating image %s with geometry: %d x %d x %d, %d colors\n", v->filename, image_info.image_width, image_info.image_height, image_info.depth, image_info.colors);
+
+ xsane_back_gtk_make_path(sizeof(outfilename), outfilename, 0, 0, "xsane-viewer-", xsane.dev_name, ".ppm", XSANE_PATH_TMP);
+
+ outfile = fopen(outfilename, "wb");
+ if (!outfile)
+ {
+ DBG(DBG_error, "could not save file %s\n", outfilename);
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+
+ return;
+ }
+
+ if (rotation <4)
+ {
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_ROTATING_DATA);
+ }
+ else
+ {
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), PROGRESS_MIRRORING_DATA);
+ }
+
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ xsane_save_rotate_image(outfile, infile, &image_info, rotation, v->progress_bar, &v->cancel_save);
+
+ fclose(infile);
+ fclose(outfile);
+
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_progress_bar_update(GTK_PROGRESS_BAR(v->progress_bar), 0.0);
+
+ DBG(DBG_info, "removing file %s\n", v->filename);
+ remove(v->filename);
+ free(v->filename);
+
+ v->filename = strdup(outfilename);
+ v->image_saved = FALSE;
+
+ xsane_viewer_read_image(v);
+
+ gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_rotate90_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+
+ DBG(DBG_proc, "xsane_viewer_rotate90_callback\n");
+ xsane_viewer_rotate(v, 1);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_rotate180_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+
+ DBG(DBG_proc, "xsane_viewer_rotate180_callback\n");
+ xsane_viewer_rotate(v, 2);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_rotate270_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+
+ DBG(DBG_proc, "xsane_viewer_rotate270_callback\n");
+ xsane_viewer_rotate(v, 3);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_mirror_x_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+
+ DBG(DBG_proc, "xsane_viewer_mirror_x_callback\n");
+ xsane_viewer_rotate(v, 4);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_mirror_y_callback(GtkWidget *window, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+
+ DBG(DBG_proc, "xsane_viewer_mirror_y_callback\n");
+ xsane_viewer_rotate(v, 6);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_viewer_zoom_callback(GtkWidget *widget, gpointer data)
+{
+ Viewer *v = (Viewer *) data;
+ int val;
+
+ DBG(DBG_proc, "xsane_viewer_zoom_callback\n");
+
+ val = (int) gtk_object_get_data(GTK_OBJECT(widget), "Selection");
+ v->zoom = (float) val / 100;
+ DBG(DBG_info, "setting zoom factor to %f\n", v->zoom);
+ xsane_viewer_read_image(v);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *xsane_viewer_files_build_menu(Viewer *v)
+{
+ GtkWidget *menu, *item;
+
+ DBG(DBG_proc, "xsane_viewer_files_build_menu\n");
+
+ menu = gtk_menu_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(menu));
+
+ /* XSane save dialog */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_SAVE_IMAGE);
+#if 0
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_I, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+#endif
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_viewer_save_callback, v);
+ gtk_widget_show(item);
+
+
+ /* Clone */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_CLONE);
+#if 0
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_I, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+#endif
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_viewer_clone_callback, v);
+ gtk_widget_show(item);
+
+
+ /* Scale */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_SCALE);
+#if 0
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_I, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+#endif
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_viewer_scale_callback, v);
+ gtk_widget_show(item);
+
+
+ /* Close */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_CLOSE);
+#if 0
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_Q, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+#endif
+ gtk_container_add(GTK_CONTAINER(menu), item);
+ gtk_object_set_data(GTK_OBJECT(item), "Viewer", (void *) v);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_viewer_close_callback, v);
+ gtk_widget_show(item);
+
+ return menu;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *xsane_viewer_filters_build_menu(Viewer *v)
+{
+ GtkWidget *menu, *item;
+
+ DBG(DBG_proc, "xsane_viewer_filters_build_menu\n");
+
+ menu = gtk_menu_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(menu));
+
+ /* Despeckle */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_DESPECKLE);
+#if 0
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_I, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+#endif
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_viewer_despeckle_callback, v);
+ gtk_widget_show(item);
+
+
+ /* Blur */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_BLUR);
+#if 0
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_Q, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+#endif
+ gtk_container_add(GTK_CONTAINER(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_viewer_blur_callback, v);
+ gtk_widget_show(item);
+
+ return menu;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_viewer_read_image(Viewer *v)
+{
+ unsigned char *row, *src_row;
+ int x, y;
+ int last_y;
+ int nread;
+ int pos0;
+ FILE *infile;
+ Image_info image_info;
+ char buf[256];
+ float size;
+ char *size_unit;
+ int width, height;
+
+ infile = fopen(v->filename, "rb");
+ if (!infile)
+ {
+ DBG(DBG_error, "could not load file %s\n", v->filename);
+ return -1;
+ }
+
+ xsane_read_pnm_header(infile, &image_info);
+
+ pos0 = ftell(infile);
+
+ if (!image_info.colors) /* == 0 (grayscale) ? */
+ {
+ image_info.colors = 1; /* we have one color component */
+ }
+
+ DBG(DBG_info, "reading image %s with geometry: %d x %d x %d, %d colors\n", v->filename,
+ image_info.image_width, image_info.image_height, image_info.depth, image_info.colors);
+ /* open infile */
+
+ if (v->window) /* we already have an existing viewer preview window? */
+ {
+ gtk_widget_destroy(v->window);
+ }
+
+ /* the preview area */
+ if (image_info.colors == 3) /* RGB */
+ {
+ v->window = gtk_preview_new(GTK_PREVIEW_COLOR);
+ }
+ else /* grayscale */
+ {
+ v->window = gtk_preview_new(GTK_PREVIEW_GRAYSCALE);
+ }
+
+ gtk_preview_size(GTK_PREVIEW(v->window), image_info.image_width * v->zoom, image_info.image_height * v->zoom);
+ gtk_container_add(GTK_CONTAINER(v->viewport), v->window);
+ gtk_widget_show(v->window);
+
+
+
+ /* get memory for one row of the image */
+ src_row = malloc(image_info.image_width * image_info.colors * image_info.depth / 8);
+ row = malloc(((int) image_info.image_width * v->zoom) * image_info.colors);
+
+ if (!row || !src_row)
+ {
+ if (src_row)
+ {
+ free(src_row);
+ }
+
+ if (row)
+ {
+ free(row);
+ }
+
+ fclose(infile);
+ DBG(DBG_error, "could not allocate memory\n");
+ return -1;
+ }
+
+
+ last_y = -99999;
+
+ /* read the image from file */
+ for (y = 0; y < (int) (image_info.image_height * v->zoom); y++)
+ {
+ if ((int) (last_y / v->zoom) != (int) (y / v->zoom))
+ {
+ last_y = y;
+
+ if (image_info.depth == 8) /* 8 bits/pixel */
+ {
+ fseek(infile, pos0 + (((int) (y / v->zoom)) * image_info.image_width) * image_info.colors, SEEK_SET);
+ nread = fread(src_row, image_info.colors, image_info.image_width, infile);
+
+ if (image_info.colors > 1)
+ {
+ for (x=0; x < (int) (image_info.image_width * v->zoom); x++)
+ {
+ int xoff = ((int) (x / v->zoom)) * image_info.colors;
+
+ row[3*x+0] = src_row[xoff + 0];
+ row[3*x+1] = src_row[xoff + 1];
+ row[3*x+2] = src_row[xoff + 2];
+ }
+ }
+ else
+ {
+ for (x=0; x < (int) (image_info.image_width * v->zoom); x++)
+ {
+ row[x] = src_row[((int) (x / v->zoom))];
+ }
+ }
+ }
+ else /* 16 bits/pixel => reduce to 8 bits/pixel */
+ {
+ guint16 *src_row16 = (guint16 *) src_row;
+
+ fseek(infile, pos0 + (((int) (y / v->zoom)) * image_info.image_width) * image_info.colors * 2, SEEK_SET);
+ nread = fread(src_row, 2 * image_info.colors, image_info.image_width, infile);
+
+ if (image_info.colors > 1)
+ {
+ for (x=0; x < (int) (image_info.image_width * v->zoom); x++)
+ {
+ int xoff = ((int) (x / v->zoom)) * image_info.colors;
+
+ row[3*x+0] = (unsigned char) (src_row16[xoff + 0] / 256);
+ row[3*x+1] = (unsigned char) (src_row16[xoff + 1] / 256);
+ row[3*x+2] = (unsigned char) (src_row16[xoff + 2] / 256);
+ }
+ }
+ else
+ {
+ for (x=0; x < (int) (image_info.image_width * v->zoom); x++)
+ {
+ row[x] = (unsigned char) (src_row16[(int) (x / v->zoom)] / 256);
+ }
+ }
+ }
+ }
+
+ gtk_preview_draw_row(GTK_PREVIEW(v->window), row, 0, y, image_info.image_width * v->zoom);
+ }
+
+ gtk_preview_put(GTK_PREVIEW(v->window), v->window->window, v->window->style->black_gc, 0, 0, 0, 0,
+ image_info.image_width * v->zoom, image_info.image_height * v->zoom);
+
+ size = (float) image_info.image_width * image_info.image_height * image_info.colors;
+ if (image_info.depth == 16)
+ {
+ size *= 2.0;
+ }
+
+ size_unit = "B";
+
+ if (size >= 1024 * 1024)
+ {
+ size /= (1024.0 * 1024.0);
+ size_unit = "MB";
+ }
+ else if (size >= 1024)
+ {
+ size /= 1024.0;
+ size_unit = "KB";
+ }
+
+ if (v->reduce_to_lineart)
+ {
+ snprintf(buf, sizeof(buf), TEXT_VIEWER_IMAGE_INFO, image_info.image_width, image_info.image_height, 1, image_info.colors,
+ image_info.resolution_x, image_info.resolution_y, size, size_unit);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), TEXT_VIEWER_IMAGE_INFO, image_info.image_width, image_info.image_height, image_info.depth, image_info.colors,
+ image_info.resolution_x, image_info.resolution_y, size, size_unit);
+ }
+ gtk_label_set(GTK_LABEL(v->image_info_label), buf);
+
+ width = image_info.image_width + 26;
+ height = image_info.image_height + 136;
+
+ if (width > gdk_screen_width())
+ {
+ width = gdk_screen_width();
+ }
+
+ if (height > gdk_screen_height())
+ {
+ height = gdk_screen_height();
+ }
+
+ gtk_window_set_default_size(GTK_WINDOW(v->top), width, height);
+
+ free(row);
+ free(src_row);
+ fclose(infile);
+
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+Viewer *xsane_viewer_new(char *filename, int reduce_to_lineart, char *output_filename)
+{
+ char buf[256];
+ Viewer *v;
+ GtkWidget *vbox, *hbox;
+ GtkWidget *menubar, *menubar_item;
+ GtkWidget *scrolled_window;
+ GtkWidget *zoom_option_menu, *zoom_menu, *zoom_menu_item;
+ int i, selection;
+
+ DBG(DBG_proc, "viewer_new(%s)\n", filename);
+
+ /* create viewer structure v */
+ v = malloc(sizeof(*v));
+ if (!v)
+ {
+ DBG(DBG_error, "could not allocate memory\n");
+ return 0;
+ }
+ memset(v, 0, sizeof(*v));
+
+ v->filename = strdup(filename);
+ v->reduce_to_lineart = reduce_to_lineart;
+ v->zoom = 1.0;
+ v->image_saved = FALSE;
+ v->next_viewer = xsane.viewer_list;
+ xsane.viewer_list = v;
+
+ if (output_filename)
+ {
+ v->output_filename = strdup(output_filename);
+ snprintf(buf, sizeof(buf), "%s %s - %s", WINDOW_VIEWER, v->output_filename, xsane.device_text);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "%s %s", WINDOW_VIEWER, xsane.device_text);
+ }
+
+ v->top = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title(GTK_WINDOW(v->top), buf);
+ xsane_set_window_icon(v->top, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(v->top));
+ gtk_object_set_data(GTK_OBJECT(v->top), "Viewer", (void *) v);
+ gtk_signal_connect(GTK_OBJECT(v->top), "delete_event", GTK_SIGNAL_FUNC(xsane_viewer_close_callback), NULL);
+
+ /* set the main vbox */
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
+ gtk_container_add(GTK_CONTAINER(v->top), vbox);
+ gtk_widget_show(vbox);
+
+
+ /* create the menubar */
+ menubar = gtk_menu_bar_new();
+ gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0);
+
+ /* "Files" submenu: */
+ menubar_item = gtk_menu_item_new_with_label(MENU_FILE);
+ gtk_container_add(GTK_CONTAINER(menubar), menubar_item);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menubar_item), xsane_viewer_files_build_menu(v));
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_F, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(menubar_item);
+
+ /* "Filters" submenu: */
+ menubar_item = gtk_menu_item_new_with_label(MENU_FILTERS);
+ gtk_container_add(GTK_CONTAINER(menubar), menubar_item);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menubar_item), xsane_viewer_filters_build_menu(v));
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_F, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(menubar_item);
+
+ gtk_widget_show(menubar);
+
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+
+ /* top hbox for icons */
+ v->button_box = gtk_hbox_new(FALSE, 1);
+ gtk_container_set_border_width(GTK_CONTAINER(v->button_box), 1);
+ gtk_box_pack_start(GTK_BOX(vbox), v->button_box, FALSE, FALSE, 0);
+ gtk_widget_show(v->button_box);
+
+ v->save = xsane_button_new_with_pixmap(v->top->window, v->button_box, file_xpm, DESC_VIEWER_SAVE, (GtkSignalFunc) xsane_viewer_save_callback, v);
+ v->ocr = xsane_button_new_with_pixmap(v->top->window, v->button_box, ocr_xpm, DESC_VIEWER_OCR, (GtkSignalFunc) xsane_viewer_ocr_callback, v);
+ v->clone = xsane_button_new_with_pixmap(v->top->window, v->button_box, clone_xpm, DESC_VIEWER_CLONE, (GtkSignalFunc) xsane_viewer_clone_callback, v);
+ v->scale = xsane_button_new_with_pixmap(v->top->window, v->button_box, scale_xpm, DESC_VIEWER_SCALE, (GtkSignalFunc) xsane_viewer_scale_callback, v);
+ v->despeckle = xsane_button_new_with_pixmap(v->top->window, v->button_box, despeckle_xpm, DESC_VIEWER_DESPECKLE, (GtkSignalFunc) xsane_viewer_despeckle_callback, v);
+ v->blur = xsane_button_new_with_pixmap(v->top->window, v->button_box, blur_xpm, DESC_VIEWER_BLUR, (GtkSignalFunc) xsane_viewer_blur_callback, v);
+ v->rotate90 = xsane_button_new_with_pixmap(v->top->window, v->button_box, rotate90_xpm, DESC_VIEWER_ROTATE90, (GtkSignalFunc) xsane_viewer_rotate90_callback, v);
+ v->rotate180 = xsane_button_new_with_pixmap(v->top->window, v->button_box, rotate180_xpm, DESC_VIEWER_ROTATE180, (GtkSignalFunc) xsane_viewer_rotate180_callback, v);
+ v->rotate270 = xsane_button_new_with_pixmap(v->top->window, v->button_box, rotate270_xpm, DESC_VIEWER_ROTATE270, (GtkSignalFunc) xsane_viewer_rotate270_callback, v);
+ v->mirror_x = xsane_button_new_with_pixmap(v->top->window, v->button_box, mirror_x_xpm, DESC_VIEWER_MIRROR_X, (GtkSignalFunc) xsane_viewer_mirror_x_callback, v);
+ v->mirror_y = xsane_button_new_with_pixmap(v->top->window, v->button_box, mirror_y_xpm, DESC_VIEWER_MIRROR_Y, (GtkSignalFunc) xsane_viewer_mirror_y_callback, v);
+
+
+ /* "Zoom" submenu: */
+ zoom_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, zoom_option_menu, DESC_VIEWER_ZOOM);
+ gtk_box_pack_start(GTK_BOX(v->button_box), zoom_option_menu, FALSE, FALSE, 0);
+ gtk_widget_show(zoom_option_menu);
+
+ zoom_menu = gtk_menu_new();
+ selection = 0;
+ for (i = 0; i < XSANE_VIEWER_ZOOM_ITEMS; i++)
+ {
+ snprintf(buf, sizeof(buf), "%d %%", xsane_viewer_zoom[i]);
+ zoom_menu_item = gtk_menu_item_new_with_label(buf);
+ gtk_menu_append(GTK_MENU(zoom_menu), zoom_menu_item);
+ gtk_signal_connect(GTK_OBJECT(zoom_menu_item), "activate", (GtkSignalFunc) xsane_viewer_zoom_callback, v);
+ gtk_object_set_data(GTK_OBJECT(zoom_menu_item), "Selection", (void *) xsane_viewer_zoom[i]);
+ gtk_widget_show(zoom_menu_item);
+ if (v->zoom*100 == xsane_viewer_zoom[i])
+ {
+ selection = i;
+ }
+ }
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(zoom_option_menu), zoom_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(zoom_option_menu), selection);
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_F, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(zoom_menu);
+
+
+
+ scrolled_window = gtk_scrolled_window_new(NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ gtk_box_pack_start(GTK_BOX(vbox), scrolled_window, TRUE, TRUE, 0);
+ gtk_widget_show(scrolled_window);
+
+
+ /* the viewport */
+ v->viewport = gtk_frame_new(/* label */ 0);
+ gtk_frame_set_shadow_type(GTK_FRAME(v->viewport), GTK_SHADOW_IN);
+ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled_window), v->viewport);
+ gtk_widget_show(v->viewport);
+
+
+ /* image info label */
+ hbox = gtk_hbox_new(FALSE, 1);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 1);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+ gtk_widget_show(hbox);
+ v->image_info_label = gtk_label_new("");
+ gtk_box_pack_start(GTK_BOX(hbox), v->image_info_label, FALSE, FALSE, 2);
+ gtk_widget_show(v->image_info_label);
+
+ gtk_widget_show(v->top);
+
+ if (xsane_viewer_read_image(v)) /* read image and add preview to the viewport */
+ {
+ /* error */
+ }
+
+ v->progress_bar = (GtkProgressBar *) gtk_progress_bar_new();
+#if 0
+ gtk_widget_set_usize(v->progress_bar, 0, 25);
+#endif
+ gtk_box_pack_start(GTK_BOX(vbox), (GtkWidget *) v->progress_bar, FALSE, FALSE, 0);
+ gtk_progress_set_show_text(GTK_PROGRESS(v->progress_bar), TRUE);
+ gtk_progress_set_format_string(GTK_PROGRESS(v->progress_bar), "");
+ gtk_widget_show(GTK_WIDGET(v->progress_bar));
+
+ return v;
+}
+
+
diff --git a/src/xsane-viewer.h b/src/xsane-viewer.h
new file mode 100644
index 0000000..885466b
--- /dev/null
+++ b/src/xsane-viewer.h
@@ -0,0 +1,79 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane-viewer.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 2001-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef XSANE_VIEWER_H
+#define XSANE_VIEWER_H
+
+#include <gdk/gdkkeysyms.h>
+#include <gdk/gdk.h>
+#include <gtk/gtk.h>
+
+typedef struct Viewer
+{
+ struct Viewer *next_viewer;
+
+ char *filename;
+ char *output_filename;
+
+ int reduce_to_lineart;
+ float zoom;
+ int image_saved;
+ int cancel_save;
+
+ int filter_radius;
+ float x_scale_factor;
+ float y_scale_factor;
+
+ GtkWidget *top;
+ GtkWidget *button_box;
+
+ GtkWidget *viewport;
+ GtkWidget *window;
+
+ GtkWidget *save;
+ GtkWidget *ocr;
+ GtkWidget *clone;
+ GtkWidget *scale;
+
+ GtkWidget *despeckle;
+ GtkWidget *blur;
+
+ GtkWidget *rotate90;
+ GtkWidget *rotate180;
+ GtkWidget *rotate270;
+
+ GtkWidget *mirror_x;
+ GtkWidget *mirror_y;
+
+ GtkWidget *image_info_label;
+
+ GtkProgressBar *progress_bar;
+
+ GtkWidget *active_dialog;
+}
+Viewer;
+
+extern Viewer *xsane_viewer_new(char *filename, int reduce_to_lineart, char *output_filename);
+
+#endif
diff --git a/src/xsane.c b/src/xsane.c
new file mode 100644
index 0000000..ae07b8c
--- /dev/null
+++ b/src/xsane.c
@@ -0,0 +1,7972 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane.c
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#include "xsane.h"
+#include "xsane-back-gtk.h"
+#include "xsane-front-gtk.h"
+#include "xsane-preview.h"
+#include "xsane-save.h"
+#include "xsane-gamma.h"
+#include "xsane-setup.h"
+#include "xsane-scan.h"
+#include "xsane-rc-io.h"
+#include "xsane-device-preferences.h"
+#include "xsane-preferences.h"
+#include "xsane-icons.h"
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+#include <png.h>
+#include <zlib.h>
+#endif
+#endif
+
+#include <sys/types.h>
+#include <sys/wait.h>
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+struct option long_options[] =
+{
+ {"help", no_argument, 0, 'h'},
+ {"version", no_argument, 0, 'v'},
+ {"license", no_argument, 0, 'l'},
+ {"device-settings", required_argument, 0, 'd'},
+ {"save", no_argument, 0, 's'},
+ {"viewer", no_argument, 0, 'V'},
+ {"copy", no_argument, 0, 'c'},
+ {"fax", no_argument, 0, 'f'},
+#ifdef XSANE_ACTIVATE_MAIL
+ {"mail", no_argument, 0, 'm'},
+#endif
+ {"no-mode-selection", no_argument, 0, 'n'},
+ {"Fixed", no_argument, 0, 'F'},
+ {"Resizeable", no_argument, 0, 'R'},
+ {"print-filenames", no_argument, 0, 'p'},
+ {"force-filename", required_argument, 0, 'N'},
+ {"Medium-calibration", no_argument, 0, 'M'},
+ {0, }
+};
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static const pref_default_preset_area_t pref_default_preset_area[] =
+{
+ { MENU_ITEM_SURFACE_FULL_SIZE, 0, 0, INF, INF },
+ { MENU_ITEM_SURFACE_DIN_A3P, 0, 0, 296.98, 420.0 },
+ { MENU_ITEM_SURFACE_DIN_A3L, 0, 0, 420.0, 296.98 },
+ { MENU_ITEM_SURFACE_DIN_A4P, 0, 0, 210.0, 296.98 },
+ { MENU_ITEM_SURFACE_DIN_A4L, 0, 0, 296.98, 210.0 },
+ { MENU_ITEM_SURFACE_DIN_A5P, 0, 0, 148.5, 210.0 },
+ { MENU_ITEM_SURFACE_DIN_A5L, 0, 0, 210.0, 148.5 },
+ { MENU_ITEM_SURFACE_13cmx18cm, 0, 0, 130.0, 180.0 },
+ { MENU_ITEM_SURFACE_18cmx13cm, 0, 0, 180.0, 130.0 },
+ { MENU_ITEM_SURFACE_10cmx15cm, 0, 0, 100.0, 150.0 },
+ { MENU_ITEM_SURFACE_15cmx10cm, 0, 0, 150.0, 100.0 },
+ { MENU_ITEM_SURFACE_9cmx13cm, 0, 0, 90.0, 130.0 },
+ { MENU_ITEM_SURFACE_13cmx9cm, 0, 0, 130.0, 90.0 },
+ { MENU_ITEM_SURFACE_legal_P, 0, 0, 215.9, 355.6 },
+ { MENU_ITEM_SURFACE_legal_L, 0, 0, 355.6, 215.9 },
+ { MENU_ITEM_SURFACE_letter_P, 0, 0, 215.9, 279.4 },
+ { MENU_ITEM_SURFACE_letter_L, 0, 0, 279.4, 215.9 },
+};
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static const Preferences_medium_t pref_default_medium[]=
+{
+/* medium shadow highlight gamma negative */
+/* name gray red green blue gray red green blue gray red gren blue */
+ { MENU_ITEM_MEDIUM_FULL_RANGE, 0.0, 0.0, 0.0, 0.0, 100.0,100.0,100.0,100.0, 1.00, 1.00, 1.00, 1.00 , 0},
+ { MENU_ITEM_MEDIUM_SLIDE, 0.0, 0.0, 0.0, 0.0, 30.0, 30.0, 30.0, 30.0, 1.00, 1.00, 1.00, 1.00 , 0},
+ { MENU_ITEM_MEDIUM_STANDARD_NEG, 0.0, 7.0, 1.0, 0.0, 66.0, 66.0, 33.0, 16.0, 1.00, 1.00, 1.00, 1.00 , 1},
+ { MENU_ITEM_MEDIUM_AGFA_NEG, 0.0, 6.0, 2.0, 0.0, 31.0, 61.0, 24.0, 13.0, 1.00, 1.00, 1.00, 1.00 , 1},
+ { MENU_ITEM_MEDIUM_AGFA_NEG_XRG200_4, 0.0, 12.0, 2.0, 1.6, 35.0, 61.5, 21.5, 14.5, 1.00, 0.80, 0.67, 0.60 , 1},
+ { MENU_ITEM_MEDIUM_AGFA_NEG_HDC_100, 0.0, 3.5, 1.0, 0.5, 26.5, 53.5, 22.0, 17.0, 1.00, 0.79, 0.65, 0.60 , 1},
+ { MENU_ITEM_MEDIUM_FUJI_NEG, 0.0, 7.0, 1.0, 0.0, 32.0, 64.0, 33.0, 16.0, 1.00, 1.00, 1.00, 1.00 , 1},
+ { MENU_ITEM_MEDIUM_KODAK_NEG, 0.0, 9.0, 2.0, 0.0, 27.0, 54.0, 18.0, 12.0, 1.00, 1.00, 1.00, 1.00 , 1},
+ { MENU_ITEM_MEDIUM_KONICA_NEG, 0.0, 3.0, 0.0, 0.0, 25.0, 38.0, 21.0, 14.0, 1.00, 1.00, 1.00, 1.00 , 1},
+ { MENU_ITEM_MEDIUM_KONICA_NEG_VX_100, 0.0, 2.0, 0.0, 0.0, 25.0, 46.0, 22.0, 13.5, 1.00, 0.74, 0.56, 0.53 , 1},
+ { MENU_ITEM_MEDIUM_ROSSMANN_NEG_HR_100, 0.0, 7.0, 1.0, 1.6, 26.5, 58.0, 25.5, 19.0, 1.00, 0.54, 0.43, 0.41 , 1}
+};
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int DBG_LEVEL = 0;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+struct Xsane xsane; /* most xsane dependant values */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_scanmode_number[] = { XSANE_VIEWER, XSANE_SAVE, XSANE_COPY, XSANE_FAX, XSANE_MAIL };
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define XSANE_GTK_NAME_RESOLUTION "GtkMenuResolution"
+#define XSANE_GTK_NAME_X_RESOLUTION "GtkMenuXResolution"
+#define XSANE_GTK_NAME_Y_RESOLUTION "GtkMenuYResolution"
+
+#define XSANE_GTK_NAME_ZOOM "GtkMenuZoom"
+#define XSANE_GTK_NAME_X_ZOOM "GtkMenuXZoom"
+#define XSANE_GTK_NAME_Y_ZOOM "GtkMenuYZoom"
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* forward declarations: */
+
+static int xsane_option_defined(char *string);
+static void xsane_zoom_update(GtkAdjustment *adj_data, double *val);
+static void xsane_resolution_scale_update(GtkAdjustment *adj_data, double *val);
+static void xsane_threshold_changed(void);
+static void xsane_gamma_changed(GtkAdjustment *adj_data, double *val);
+static void xsane_set_modus_defaults(void);
+static void xsane_modus_callback(GtkWidget *xsane_parent, int *num);
+static void xsane_filename_counter_step_callback(GtkWidget *widget, gpointer data);
+static void xsane_filetype_callback(GtkWidget *widget, gpointer data);
+static void xsane_outputfilename_changed_callback(GtkWidget *widget, gpointer data);
+static void xsane_browse_filename_callback(GtkWidget *widget, gpointer data);
+static void xsane_outputfilename_new(GtkWidget *vbox);
+static void xsane_enhancement_rgb_default_callback(GtkWidget *widget);
+static void xsane_enhancement_negative_callback(GtkWidget *widget);
+static void xsane_auto_enhancement_callback(GtkWidget *widget);
+static void xsane_show_standard_options_callback(GtkWidget *widget);
+static void xsane_show_advanced_options_callback(GtkWidget *widget);
+static void xsane_show_histogram_callback(GtkWidget *widget);
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+static void xsane_show_gamma_callback(GtkWidget *widget);
+#endif
+static void xsane_printer_callback(GtkWidget *widget, gpointer data);
+void xsane_pref_save(void);
+static int xsane_pref_restore(void);
+static RETSIGTYPE xsane_quit_handler(int signal);
+static void xsane_quit(void);
+static void xsane_exit(void);
+static gint xsane_standard_option_win_delete(GtkWidget *widget, gpointer data);
+static gint xsane_advanced_option_win_delete(GtkWidget *widget, gpointer data);
+static gint xsane_scan_win_delete(GtkWidget *w, gpointer data);
+static gint xsane_preview_window_destroyed(GtkWidget *widget, gpointer call_data);
+static void xsane_show_preview_callback(GtkWidget * widget, gpointer call_data);
+static GtkWidget *xsane_files_build_menu(void);
+static void xsane_set_medium_callback(GtkWidget *widget, gpointer data);
+static void xsane_set_pref_unit_callback(GtkWidget *widget, gpointer data);
+static void xsane_set_update_policy_callback(GtkWidget *widget, gpointer data);
+static gint xsane_close_info_callback(GtkWidget *widget, gpointer data);
+static void xsane_info_dialog(GtkWidget *widget, gpointer data);
+static void xsane_about_dialog(GtkWidget *widget, gpointer data);
+static void xsane_about_translation_dialog(GtkWidget *widget, gpointer data);
+static SANE_Status xsane_get_area_value(int option, float *val, SANE_Int *unit);
+#ifdef XSANE_TEST
+static void xsane_batch_scan_delete_callback(GtkWidget *widget, gpointer list);
+static void xsane_batch_scan_add_callback(GtkWidget *widget, gpointer list);
+static void xsane_batch_scan_dialog(GtkWidget *widget, gpointer data);
+#endif
+static void xsane_fax_dialog(void);
+static void xsane_fax_dialog_close(void);
+static void xsane_fax_receiver_changed_callback(GtkWidget *widget, gpointer data);
+static void xsane_fax_project_changed_callback(GtkWidget *widget, gpointer data);
+static void xsane_fax_fine_mode_callback(GtkWidget *widget);
+void xsane_fax_project_save(void);
+static void xsane_fax_project_load(void);
+static void xsane_fax_project_delete(void);
+static void xsane_fax_project_create(void);
+static void xsane_list_entrys_swap(GtkWidget *list_item_1, GtkWidget *list_item_2);
+static void xsane_fax_entry_move_up_callback(GtkWidget *widget, gpointer list);
+static void xsane_fax_entry_move_down_callback(GtkWidget *widget, gpointer list);
+static void xsane_fax_entry_rename_callback(GtkWidget *widget, gpointer list);
+static void xsane_fax_entry_insert_callback(GtkWidget *widget, gpointer list);
+static void xsane_fax_entry_delete_callback(GtkWidget *widget, gpointer list);
+static void xsane_fax_show_callback(GtkWidget *widget, gpointer data);
+static void xsane_fax_send(void);
+#ifdef XSANE_ACTIVATE_MAIL
+static void xsane_mail_dialog(void);
+static void xsane_mail_dialog_close(void);
+static void xsane_mail_receiver_changed_callback(GtkWidget *widget, gpointer data);
+static void xsane_mail_subject_changed_callback(GtkWidget *widget, gpointer data);
+static void xsane_mail_project_changed_callback(GtkWidget *widget, gpointer data);
+static void xsane_mail_html_mode_callback(GtkWidget *widget);
+void xsane_mail_project_save(void);
+static void xsane_mail_project_load(void);
+static void xsane_mail_project_delete(void);
+static void xsane_mail_project_create(void);
+static void xsane_mail_entry_move_up_callback(GtkWidget *widget, gpointer list);
+static void xsane_mail_entry_move_down_callback(GtkWidget *widget, gpointer list);
+static void xsane_mail_entry_rename_callback(GtkWidget *widget, gpointer list);
+static void xsane_mail_entry_delete_callback(GtkWidget *widget, gpointer list);
+static void xsane_mail_show_callback(GtkWidget *widget, gpointer data);
+static void xsane_mail_send(void);
+#endif
+static void xsane_pref_toggle_tooltips(GtkWidget *widget, gpointer data);
+static void xsane_mail_send_process(void);
+static void xsane_mail_send(void);
+static void xsane_show_license(GtkWidget *widget, gpointer data);
+static void xsane_show_doc(GtkWidget *widget, gpointer data);
+static GtkWidget *xsane_view_build_menu(void);
+static GtkWidget *xsane_pref_build_menu(void);
+static GtkWidget *xsane_help_build_menu(void);
+static void xsane_device_dialog(void);
+static void xsane_choose_dialog_ok_callback(void);
+static void xsane_select_device_by_key_callback(GtkWidget * widget, gpointer data);
+static void xsane_select_device_by_mouse_callback(GtkWidget * widget, GdkEventButton *event, gpointer data);
+static void xsane_choose_device(void);
+static void xsane_usage(void);
+static int xsane_init(int argc, char **argv);
+void xsane_interface(int argc, char **argv);
+int main(int argc, char ** argv);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef __GNUC__
+void xsane_debug_message(int level, const char *fmt, ...)
+{
+ if (DBG_LEVEL >= level)
+ {
+ va_list ap;
+ fprintf(stderr, "[xsane] ");
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+ }
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_add_medium_definition(char *definition_name)
+{
+ int i;
+
+ DBG(DBG_proc, "xsane_add_new_medium_definition\n");
+
+ i = preferences.medium_definitions;
+
+ preferences.medium_definitions++;
+ preferences.medium = realloc( preferences.medium, preferences.medium_definitions * sizeof(void *));
+
+ if (xsane.negative == xsane.medium_negative) /* result is positive */
+ {
+ preferences.medium[i] = calloc(sizeof(Preferences_medium_t), 1);
+ preferences.medium[i]->name = strdup(definition_name);
+ preferences.medium[i]->shadow_gray = xsane.medium_shadow_gray + (xsane.medium_highlight_gray - xsane.medium_shadow_gray) * xsane.slider_gray.value[0] / 100.0;
+ preferences.medium[i]->shadow_red = xsane.medium_shadow_red + (xsane.medium_highlight_red - xsane.medium_shadow_red) * xsane.slider_red.value[0] / 100.0;
+ preferences.medium[i]->shadow_green = xsane.medium_shadow_green + (xsane.medium_highlight_green - xsane.medium_shadow_green) * xsane.slider_green.value[0] / 100.0;
+ preferences.medium[i]->shadow_blue = xsane.medium_shadow_blue + (xsane.medium_highlight_blue - xsane.medium_shadow_blue) * xsane.slider_blue.value[0] / 100.0;
+ preferences.medium[i]->highlight_gray = xsane.medium_shadow_gray + (xsane.medium_highlight_gray - xsane.medium_shadow_gray) * xsane.slider_gray.value[2] / 100.0;
+ preferences.medium[i]->highlight_red = xsane.medium_shadow_red + (xsane.medium_highlight_red - xsane.medium_shadow_red) * xsane.slider_red.value[2] / 100.0;
+ preferences.medium[i]->highlight_green = xsane.medium_shadow_green + (xsane.medium_highlight_green - xsane.medium_shadow_green) * xsane.slider_green.value[2] / 100.0;
+ preferences.medium[i]->highlight_blue = xsane.medium_shadow_blue + (xsane.medium_highlight_blue - xsane.medium_shadow_blue) * xsane.slider_blue.value[2] / 100.0;
+ preferences.medium[i]->gamma_gray = xsane.gamma;
+ preferences.medium[i]->gamma_red = xsane.gamma * xsane.gamma_red * xsane.medium_gamma_red;
+ preferences.medium[i]->gamma_green = xsane.gamma * xsane.gamma_green * xsane.medium_gamma_green;
+ preferences.medium[i]->gamma_blue = xsane.gamma * xsane.gamma_blue * xsane.medium_gamma_blue;
+ preferences.medium[i]->negative = 0;
+ }
+ else /* result is negative */
+ {
+ preferences.medium[i] = calloc(sizeof(Preferences_medium_t), 1);
+ preferences.medium[i]->name = strdup(definition_name);
+ preferences.medium[i]->shadow_gray = xsane.medium_shadow_gray + (xsane.medium_highlight_gray - xsane.medium_shadow_gray) * (1.0 - xsane.slider_gray.value[2] / 100.0);
+ preferences.medium[i]->shadow_red = xsane.medium_shadow_red + (xsane.medium_highlight_red - xsane.medium_shadow_red) * (1.0 - xsane.slider_red.value[2] / 100.0);
+ preferences.medium[i]->shadow_green = xsane.medium_shadow_green + (xsane.medium_highlight_green - xsane.medium_shadow_green) * (1.0 - xsane.slider_green.value[2] / 100.0);
+ preferences.medium[i]->shadow_blue = xsane.medium_shadow_blue + (xsane.medium_highlight_blue - xsane.medium_shadow_blue) * (1.0 - xsane.slider_blue.value[2] / 100.0);
+ preferences.medium[i]->highlight_gray = xsane.medium_shadow_gray + (xsane.medium_highlight_gray - xsane.medium_shadow_gray) * (1.0 - xsane.slider_gray.value[0] / 100.0);
+ preferences.medium[i]->highlight_red = xsane.medium_shadow_red + (xsane.medium_highlight_red - xsane.medium_shadow_red) * (1.0 - xsane.slider_red.value[0] / 100.0);
+ preferences.medium[i]->highlight_green = xsane.medium_shadow_green + (xsane.medium_highlight_green - xsane.medium_shadow_green) * (1.0 - xsane.slider_green.value[0] / 100.0);
+ preferences.medium[i]->highlight_blue = xsane.medium_shadow_blue + (xsane.medium_highlight_blue - xsane.medium_shadow_blue) * (1.0 - xsane.slider_blue.value[0] / 100.0);
+ preferences.medium[i]->gamma_gray = xsane.gamma;
+ preferences.medium[i]->gamma_red = xsane.gamma * xsane.gamma_red * xsane.medium_gamma_red;
+ preferences.medium[i]->gamma_green = xsane.gamma * xsane.gamma_green * xsane.medium_gamma_green;
+ preferences.medium[i]->gamma_blue = xsane.gamma * xsane.gamma_blue * xsane.medium_gamma_blue;
+ preferences.medium[i]->negative = 1;
+ }
+
+ xsane_back_gtk_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_add_medium_definition_flag;
+
+static void xsane_add_medium_definition_button_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_add_medium_definiton_button_callback\n");
+
+ xsane_add_medium_definition_flag = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_add_medium_definition_callback()
+{
+ GtkWidget *add_medium_dialog;
+ GtkWidget *hbox, *vbox, *button, *text, *label;
+
+ xsane_set_sensitivity(FALSE);
+
+ /* set add medium dialog */
+ add_medium_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(add_medium_dialog), GTK_WIN_POS_MOUSE);
+ gtk_window_set_title(GTK_WINDOW(add_medium_dialog), WINDOW_STORE_MEDIUM);
+ xsane_set_window_icon(add_medium_dialog, 0);
+ gtk_signal_connect_object(GTK_OBJECT(add_medium_dialog), "delete_event", (GtkSignalFunc) xsane_add_medium_definition_button_callback, (GtkObject *) -1);
+
+ /* set the main vbox */
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
+ gtk_container_add(GTK_CONTAINER(add_medium_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(vbox, 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_MEDIUM_DEFINITION_NAME);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ text = gtk_entry_new_with_max_length(64);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_PRESET_AREA_NAME);
+ gtk_entry_set_text(GTK_ENTRY(text), "");
+ gtk_widget_set_usize(text, 300, 0);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_widget_show(text);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(vbox, 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_MEDIUM_DEFINITION_NAME);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 2);
+
+
+ button = gtk_button_new_with_label("OK");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_add_medium_definition_button_callback, (void *) 1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label("Cancel");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_add_medium_definition_button_callback, (void *) -1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(add_medium_dialog);
+
+ xsane_add_medium_definition_flag = 0;
+
+ while (xsane_add_medium_definition_flag == 0)
+ {
+ while (gtk_events_pending())
+ {
+ DBG(DBG_info, "xsane_add_medium_definition_callback: calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+ }
+
+ if (xsane_add_medium_definition_flag == 1)
+ {
+ xsane_add_medium_definition(gtk_entry_get_text(GTK_ENTRY(text)));
+ }
+
+ gtk_widget_destroy(add_medium_dialog);
+
+ xsane_set_sensitivity(TRUE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_delete_medium_definition_callback()
+{
+ int i;
+
+ if (xsane.medium_nr == 0) /* do not allow to delete "full range" */
+ {
+ return;
+ }
+
+ free(preferences.medium[xsane.medium_nr]);
+
+ preferences.medium_definitions--;
+
+ for (i = xsane.medium_nr; i < preferences.medium_definitions; i++)
+ {
+ preferences.medium[i] = preferences.medium[i+1];
+ }
+
+ if (xsane.medium_nr > 0)
+ {
+ xsane.medium_nr--;
+ }
+
+ xsane.medium_changed = TRUE;
+
+ xsane_set_medium(preferences.medium[xsane.medium_nr]);
+
+ xsane_update_gamma_curve(TRUE); /* if necessary update preview gamma */
+
+ preview_display_valid(xsane.preview); /* update valid status of preview image */
+ /* the valid status depends on gamma handling an medium change */
+
+ xsane_back_gtk_refresh_dialog(); /* update menu */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_option_defined(char *string)
+{
+ if (string)
+ {
+ while (*string == ' ') /* skip spaces */
+ {
+ string++;
+ }
+ if (*string != 0)
+ {
+ return 1;
+ }
+ }
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_threshold_changed()
+{
+ DBG(DBG_proc, "xsane_threshold_changed\n");
+
+ if (xsane.param.depth == 1) /* lineart mode */
+ {
+ if ( (xsane.lineart_mode == XSANE_LINEART_GRAYSCALE) || (xsane.lineart_mode == XSANE_LINEART_XSANE) )
+ {
+ const SANE_Option_Descriptor *opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.threshold);
+
+ if (opt)
+ {
+ SANE_Word threshold_value;
+ double threshold = xsane.threshold * xsane.threshold_mul + xsane.threshold_off;
+
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ threshold_value = SANE_FIX(threshold);
+ }
+ else
+ {
+ threshold_value = (int) threshold;
+ }
+
+ xsane_back_gtk_set_option(xsane.well_known.threshold, &threshold_value, SANE_ACTION_SET_VALUE);
+ }
+ }
+ }
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_gamma_changed(GtkAdjustment *adj_data, double *val)
+{
+ DBG(DBG_proc, "xsane_gamma_changed\n");
+
+ *val = adj_data->value;
+ xsane_enhancement_by_gamma();
+
+ xsane_threshold_changed();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_set_modus_defaults(void)
+{
+ DBG(DBG_proc, "xsane_set_modus_defaults\n");
+
+ switch(xsane.xsane_mode)
+ {
+ case XSANE_VIEWER:
+ xsane_define_maximum_output_size();
+ break;
+
+ case XSANE_SAVE:
+ xsane_define_maximum_output_size();
+ break;
+
+ case XSANE_COPY: /* set zoomfactor to 1.0 and select full preview area */
+ {
+ int printer_resolution;
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+ xsane.zoom = 1.0;
+ xsane.zoom_x = 1.0;
+ xsane.zoom_y = 1.0;
+
+ xsane.resolution = xsane.zoom * printer_resolution;
+ xsane.resolution_x = xsane.zoom_x * printer_resolution;
+ xsane.resolution_y = xsane.zoom_y * printer_resolution;
+
+ xsane_set_all_resolutions();
+ xsane_define_maximum_output_size(); /* must come before select_full_preview_area */
+ preview_select_full_preview_area(xsane.preview);
+ }
+ break;
+
+ case XSANE_FAX:
+ /* select full preview area */
+ xsane_define_maximum_output_size(); /* must come before select_full_preview_area */
+ preview_select_full_preview_area(xsane.preview);
+ break;
+
+ case XSANE_MAIL:
+ xsane_define_maximum_output_size();
+ break;
+
+ default:
+ xsane_define_maximum_output_size();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_modus_callback(GtkWidget *xsane_parent, int *num)
+{
+ DBG(DBG_proc, "xsane_modus_callback\n");
+
+ if (xsane.filetype) /* add extension to filename */
+ {
+ char buffer[256];
+
+ snprintf(buffer, sizeof(buffer), "%s%s", preferences.filename, xsane.filetype);
+ free(preferences.filename);
+ free(xsane.filetype);
+ xsane.filetype = NULL;
+ preferences.filename = strdup(buffer);
+ }
+
+ xsane.xsane_mode = *num;
+
+ xsane_set_modus_defaults(); /* set defaults and maximum output size */
+ xsane_refresh_dialog();
+
+ if ((xsane.xsane_mode == XSANE_SAVE) || (xsane.xsane_mode == XSANE_VIEWER) || (xsane.xsane_mode == XSANE_COPY))
+ {
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), TRUE);
+ }
+
+ if (xsane.xsane_mode != XSANE_FAX)
+ {
+ xsane_fax_dialog_close();
+ }
+
+#ifdef XSANE_ACTIVATE_MAIL
+ if (xsane.xsane_mode != XSANE_MAIL)
+ {
+ if (xsane.mail_project_save)
+ {
+ xsane.mail_project_save = 0;
+ xsane_mail_project_save();
+ }
+
+ xsane_mail_dialog_close();
+ }
+#endif
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_filename_counter_step_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_filename_counter_step_callback\n");
+
+ preferences.filename_counter_step = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_filetype_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_filetype_callback\n");
+
+ if (data)
+ {
+ char *extension, *filename;
+
+ extension = strrchr(preferences.filename, '.');
+
+ if ((extension) && (extension != preferences.filename))
+ {
+ if ( (!strcasecmp(extension, ".pnm")) || (!strcasecmp(extension, ".raw"))
+ || (!strcasecmp(extension, ".png")) || (!strcasecmp(extension, ".ps"))
+ || (!strcasecmp(extension, ".rgba"))
+ || (!strcasecmp(extension, ".tiff")) || (!strcasecmp(extension, ".tif"))
+ || (!strcasecmp(extension, ".jpg")) || (!strcasecmp(extension, ".jpeg"))
+ ) /* remove filetype extension */
+ {
+ filename = preferences.filename;
+ *extension = 0; /* remove extension */
+ preferences.filename = strdup(filename); /* filename without extension */
+ free(filename); /* free unused memory */
+ }
+ }
+ }
+ else if (xsane.filetype)
+ {
+ char buffer[256];
+
+ snprintf(buffer, sizeof(buffer), "%s%s", preferences.filename, xsane.filetype);
+ free(preferences.filename);
+ free(xsane.filetype);
+ xsane.filetype = NULL;
+ preferences.filename = strdup(buffer);
+ }
+
+ if (data)
+ {
+ xsane.filetype = strdup((char *) data); /* set extension for filename */
+ }
+
+ /* correct length of filename counter if it is shorter than minimum length */
+ xsane_update_counter_in_filename(&preferences.filename, FALSE, 0, preferences.filename_counter_len);
+ gtk_entry_set_text(GTK_ENTRY(xsane.outputfilename_entry), preferences.filename);
+ xsane_define_maximum_output_size(); /* is necessary in postscript mode */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_outputfilename_changed_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_outputfilename_changed_callback\n");
+
+ if (preferences.filename)
+ {
+ free((void *) preferences.filename);
+ }
+ preferences.filename = strdup(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+ xsane_define_maximum_output_size(); /* is necessary in postscript mode */
+}
+
+/* ----------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_browse_filename_callback(GtkWidget *widget, gpointer data)
+{
+ char filename[1024];
+ char windowname[256];
+
+ DBG(DBG_proc, "xsane_browse_filename_callback\n");
+
+ xsane_set_sensitivity(FALSE);
+
+ if (xsane.filetype) /* set filetype to "by ext." */
+ {
+ char buffer[256];
+
+ snprintf(buffer, sizeof(buffer), "%s%s", preferences.filename, xsane.filetype);
+ free(preferences.filename);
+ free(xsane.filetype);
+ xsane.filetype = NULL;
+ preferences.filename = strdup(buffer);
+ }
+
+ if (preferences.filename) /* make sure a correct filename is defined */
+ {
+ strncpy(filename, preferences.filename, sizeof(filename));
+ filename[sizeof(filename) - 1] = '\0';
+ }
+ else /* no filename given, take standard filename */
+ {
+ strcpy(filename, OUT_FILENAME);
+ }
+
+ snprintf(windowname, sizeof(windowname), "%s %s %s", xsane.prog_name, WINDOW_OUTPUT_FILENAME, xsane.device_text);
+
+ umask((mode_t) preferences.directory_umask); /* define new file permissions */
+ xsane_back_gtk_get_filename(windowname, filename, sizeof(filename), filename, TRUE, TRUE, FALSE);
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+
+ if (preferences.filename)
+ {
+ free((void *) preferences.filename);
+ }
+
+ xsane_set_sensitivity(TRUE);
+
+ preferences.filename = strdup(filename);
+
+ /* correct length of filename counter if it is shorter than minimum length */
+ xsane_update_counter_in_filename(&preferences.filename, FALSE, 0, preferences.filename_counter_len);
+
+ gtk_entry_set_text(GTK_ENTRY(xsane.outputfilename_entry), preferences.filename);
+
+ gtk_option_menu_set_history(GTK_OPTION_MENU(xsane.filetype_option_menu), 0); /* set menu to "by ext" */
+ xsane_define_maximum_output_size(); /* is necessary in postscript mode */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_outputfilename_new(GtkWidget *vbox)
+{
+ GtkWidget *hbox;
+ GtkWidget *text;
+ GtkWidget *button;
+ GtkWidget *xsane_filetype_menu, *xsane_filetype_item;
+ GtkWidget *xsane_filename_counter_step_option_menu;
+ GtkWidget *xsane_filename_counter_step_menu;
+ GtkWidget *xsane_filename_counter_step_item;
+ GtkWidget *xsane_label;
+ gchar buf[200];
+ int i,j;
+ int filetype_nr;
+ int select_item = 0;
+
+ DBG(DBG_proc, "xsane_outputfilename_new\n");
+
+ /* first line: disk icon, filename box */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, hbox, file_xpm, DESC_BROWSE_FILENAME,
+ (GtkSignalFunc) xsane_browse_filename_callback, NULL);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_B, GDK_CONTROL_MASK, GTK_ACCEL_LOCKED);
+
+ text = gtk_entry_new_with_max_length(255);
+ gtk_widget_set_usize(text, 80, 0); /* set minimum size */
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FILENAME);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.filename);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_outputfilename_changed_callback, NULL);
+
+ xsane.outputfilename_entry = text;
+
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+
+
+ /* second line: Step, Type */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 2);
+
+ /* filename counter step */
+
+ xsane_label = gtk_label_new(TEXT_FILENAME_COUNTER_STEP);
+ gtk_box_pack_start(GTK_BOX(hbox), xsane_label, FALSE, FALSE, 2);
+ gtk_widget_show(xsane_label);
+
+ xsane_filename_counter_step_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, xsane_filename_counter_step_option_menu, DESC_FILENAME_COUNTER_STEP);
+ gtk_box_pack_start(GTK_BOX(hbox), xsane_filename_counter_step_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(xsane_filename_counter_step_option_menu);
+ gtk_widget_show(hbox);
+
+ xsane_filename_counter_step_menu = gtk_menu_new();
+
+ select_item = 0;
+ j = -2;
+ for (i=0; i < 5; i++)
+ {
+ snprintf(buf, sizeof(buf), "%+d", j);
+ xsane_filename_counter_step_item = gtk_menu_item_new_with_label(buf);
+ gtk_container_add(GTK_CONTAINER(xsane_filename_counter_step_menu), xsane_filename_counter_step_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filename_counter_step_item), "activate",
+ (GtkSignalFunc) xsane_filename_counter_step_callback, (void *) j);
+ gtk_widget_show(xsane_filename_counter_step_item);
+ if (preferences.filename_counter_step == j++)
+ {
+ select_item = i;
+ }
+ }
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(xsane_filename_counter_step_option_menu), xsane_filename_counter_step_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(xsane_filename_counter_step_option_menu), select_item);
+
+ /* filetype */
+
+ xsane_filetype_menu = gtk_menu_new();
+
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_BY_EXT);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, NULL);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr = 0;
+ select_item = 0;
+
+#ifdef HAVE_LIBJPEG
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_JPEG);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_JPEG);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_JPEG)) )
+ {
+ select_item = filetype_nr;
+ }
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_PNG);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_PNG);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_PNG)) )
+ {
+ select_item = filetype_nr;
+ }
+#endif
+#endif
+
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_PNM);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_PNM);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_PNM)) )
+ {
+ select_item = filetype_nr;
+ }
+
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_PS);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_PS);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_PS)) )
+ {
+ select_item = filetype_nr;
+ }
+
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_RAW);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_RAW);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_RAW)) )
+ {
+ select_item = filetype_nr;
+ }
+
+#ifdef SUPPORT_RGBA
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_RGBA);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_RGBA);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_RGBA)) )
+ {
+ select_item = filetype_nr;
+ }
+#endif
+
+#ifdef HAVE_LIBTIFF
+ xsane_filetype_item = gtk_menu_item_new_with_label(MENU_ITEM_FILETYPE_TIFF);
+ gtk_container_add(GTK_CONTAINER(xsane_filetype_menu), xsane_filetype_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_filetype_item), "activate",
+ (GtkSignalFunc) xsane_filetype_callback, XSANE_FILETYPE_TIFF);
+ gtk_widget_show(xsane_filetype_item);
+ filetype_nr++;
+ if ( (xsane.filetype) && (!strcasecmp(xsane.filetype, XSANE_FILETYPE_TIFF)) )
+ {
+ select_item = filetype_nr;
+ }
+#endif
+
+ xsane.filetype_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, xsane.filetype_option_menu, DESC_FILETYPE);
+ gtk_box_pack_end(GTK_BOX(hbox), xsane.filetype_option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(xsane.filetype_option_menu), xsane_filetype_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(xsane.filetype_option_menu), select_item);
+ gtk_widget_show(xsane.filetype_option_menu);
+
+ xsane_label = gtk_label_new(TEXT_FILETYPE); /* opposite order because of box_pack_end */
+ gtk_box_pack_end(GTK_BOX(hbox), xsane_label, FALSE, FALSE, 2);
+ gtk_widget_show(xsane_label);
+
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_enhancement_rgb_default_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_enhancement_rgb_default_callback\n");
+
+ xsane.enhancement_rgb_default = (GTK_TOGGLE_BUTTON(widget)->active != 0);
+
+ if (xsane.enhancement_rgb_default)
+ {
+ xsane.gamma_red = 1.0;
+ xsane.gamma_green = 1.0;
+ xsane.gamma_blue = 1.0;
+
+ xsane.brightness_red = 0.0;
+ xsane.brightness_green = 0.0;
+ xsane.brightness_blue = 0.0;
+
+ xsane.contrast_red = 0.0;
+ xsane.contrast_green = 0.0;
+ xsane.contrast_blue = 0.0;
+
+ xsane.slider_red.value[0] = 0.0;
+ xsane.slider_red.value[1] = 50.0;
+ xsane.slider_red.value[2] = 100.0;
+
+ xsane.slider_green.value[0] = 0.0;
+ xsane.slider_green.value[1] = 50.0;
+ xsane.slider_green.value[2] = 100.0;
+
+ xsane.slider_blue.value[0] = 0.0;
+ xsane.slider_blue.value[1] = 50.0;
+ xsane.slider_blue.value[2] = 100.0;
+ }
+ else
+ {
+ xsane.slider_red.value[0] = xsane.slider_gray.value[0];
+ xsane.slider_red.value[1] = xsane.slider_gray.value[1];
+ xsane.slider_red.value[2] = xsane.slider_gray.value[2];
+
+ xsane.slider_green.value[0] = xsane.slider_gray.value[0];
+ xsane.slider_green.value[1] = xsane.slider_gray.value[1];
+ xsane.slider_green.value[2] = xsane.slider_gray.value[2];
+
+ xsane.slider_blue.value[0] = xsane.slider_gray.value[0];
+ xsane.slider_blue.value[1] = xsane.slider_gray.value[1];
+ xsane.slider_blue.value[2] = xsane.slider_gray.value[2];
+ }
+
+ xsane_update_sliders();
+ xsane_update_gamma_curve(FALSE);
+ xsane_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_enhancement_negative_callback(GtkWidget * widget)
+{
+ double v0;
+
+ DBG(DBG_proc, "xsane_enhancement_negative_callback\n");
+
+ if (xsane.negative != (GTK_TOGGLE_BUTTON(widget)->active != 0))
+ {
+ v0 = xsane.slider_gray.value[0];
+ xsane.slider_gray.value[0] = 100.0 - xsane.slider_gray.value[2];
+ xsane.slider_gray.value[1] = 100.0 - xsane.slider_gray.value[1];
+ xsane.slider_gray.value[2] = 100.0 - v0;
+
+ if (!xsane.enhancement_rgb_default)
+ {
+ v0 = xsane.slider_red.value[0];
+ xsane.slider_red.value[0] = 100.0 - xsane.slider_red.value[2];
+ xsane.slider_red.value[1] = 100.0 - xsane.slider_red.value[1];
+ xsane.slider_red.value[2] = 100.0 - v0;
+
+ v0 = xsane.slider_green.value[0];
+ xsane.slider_green.value[0] = 100.0 - xsane.slider_green.value[2];
+ xsane.slider_green.value[1] = 100.0 - xsane.slider_green.value[1];
+ xsane.slider_green.value[2] = 100.0 - v0;
+
+ v0 = xsane.slider_blue.value[0];
+ xsane.slider_blue.value[0] = 100.0 - xsane.slider_blue.value[2];
+ xsane.slider_blue.value[1] = 100.0 - xsane.slider_blue.value[1];
+ xsane.slider_blue.value[2] = 100.0 - v0;
+ }
+ }
+
+ xsane.negative = (GTK_TOGGLE_BUTTON(widget)->active != 0);
+
+ xsane_update_sliders();
+ xsane_enhancement_by_histogram(TRUE);
+ xsane_update_gamma_curve(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_auto_enhancement_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_auto_enhancement_callback\n");
+
+ xsane_calculate_raw_histogram();
+
+ xsane_set_auto_enhancement();
+
+ xsane_enhancement_by_histogram(preferences.auto_enhance_gamma);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_standard_options_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_show_standard_options_callback\n");
+
+ preferences.show_standard_options = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ if (preferences.show_standard_options)
+ {
+ gtk_widget_show(xsane.standard_options_shell);
+ }
+ else
+ {
+ gtk_widget_hide(xsane.standard_options_shell);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_advanced_options_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_show_advanced_options_callback\n");
+
+ preferences.show_advanced_options = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ if (preferences.show_advanced_options)
+ {
+ gtk_widget_show(xsane.advanced_options_shell);
+ }
+ else
+ {
+ gtk_widget_hide(xsane.advanced_options_shell);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_resolution_list_callback(GtkWidget *widget)
+{
+ DBG(DBG_proc, "xsane_show_resolution_list_callback\n");
+
+ preferences.show_resolution_list = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ xsane_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_page_rotate_callback(GtkWidget *widget)
+{
+ DBG(DBG_proc, "xsane_page_rotate_callback\n");
+
+ preferences.psrotate = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ xsane_define_maximum_output_size();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_histogram_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_show_histogram_callback\n");
+
+ preferences.show_histogram = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ if (preferences.show_histogram)
+ {
+ xsane_update_histogram(TRUE /* update raw */);
+ gtk_widget_show(xsane.histogram_dialog);
+ }
+ else
+ {
+ gtk_widget_hide(xsane.histogram_dialog);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+static void xsane_show_gamma_callback(GtkWidget *widget)
+{
+ DBG(DBG_proc, "xsane_show_gamma_callback\n");
+
+ preferences.show_gamma = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ if (preferences.show_gamma)
+ {
+ xsane_update_gamma_dialog();
+ gtk_widget_show(xsane.gamma_dialog);
+ }
+ else
+ {
+ gtk_widget_hide(xsane.gamma_dialog);
+ }
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_printer_callback(GtkWidget *widget, gpointer data)
+{
+ int printer_resolution;
+
+ DBG(DBG_proc, "xsane_printer_callback\n");
+
+ preferences.printernr = (int) data;
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ xsane.resolution = xsane.zoom * printer_resolution;
+ xsane.resolution_x = xsane.zoom_x * printer_resolution;
+ xsane.resolution_y = xsane.zoom_y * printer_resolution;
+
+ xsane_set_all_resolutions();
+ xsane_define_maximum_output_size();
+ xsane_back_gtk_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_resolution_scale_update(GtkAdjustment *adj_data, double *val)
+{
+ int printer_resolution;
+
+#if 1
+/* gtk does not make sure that the value is quantisized correct */
+ float diff, old, new, quant;
+
+ DBG(DBG_proc, "xsane_resolution_scale_update\n");
+
+ quant = adj_data->step_increment;
+
+ if (quant != 0)
+ {
+ new = adj_data->value;
+ old = *val;
+ diff = quant*((int) ((new - old)/quant));
+
+ *val = old + diff;
+ adj_data->value = *val;
+ }
+#else
+ DBG(DBG_proc, "xsane_resolution_scale_update\n");
+
+ *val = adj_data->value;
+#endif
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ xsane_set_all_resolutions();
+
+ xsane_update_param(0);
+ xsane.zoom = xsane.resolution / printer_resolution;
+ xsane.zoom_x = xsane.resolution_x / printer_resolution;
+ xsane.zoom_y = xsane.resolution_y / printer_resolution;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_resolution_list_callback(GtkWidget *widget, gpointer data)
+{
+ GSGMenuItem *menu_item = data;
+ SANE_Word val;
+ gchar *name = gtk_widget_get_name(widget->parent);
+ int printer_resolution;
+
+ DBG(DBG_proc, "xsane_resolution_list_callback\n");
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ sscanf(menu_item->label, "%d", &val);
+
+ if (!strcmp(name, XSANE_GTK_NAME_RESOLUTION))
+ {
+ xsane.resolution = val;
+ xsane.resolution_x = val;
+ xsane.resolution_y = val;
+
+ xsane_set_resolution(xsane.well_known.dpi, xsane.resolution);
+ xsane_set_resolution(xsane.well_known.dpi_x, xsane.resolution_x);
+ xsane_set_resolution(xsane.well_known.dpi_y, xsane.resolution_y);
+
+ xsane.zoom = xsane.resolution / printer_resolution;
+ xsane.zoom_x = xsane.resolution_x / printer_resolution;
+ xsane.zoom_y = xsane.resolution_y / printer_resolution;
+ }
+ else if (!strcmp(name, XSANE_GTK_NAME_X_RESOLUTION))
+ {
+ xsane.resolution = val;
+ xsane.resolution_x = val;
+ xsane_set_resolution(xsane.well_known.dpi_x, xsane.resolution_x);
+ xsane.zoom = xsane.resolution / printer_resolution;
+ }
+ else if (!strcmp(name, XSANE_GTK_NAME_Y_RESOLUTION))
+ {
+ xsane.resolution_y = val;
+ xsane_set_resolution(xsane.well_known.dpi_y, xsane.resolution_y);
+ xsane.zoom = xsane.resolution / printer_resolution;
+ }
+
+ xsane_update_param(0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_resolution_widget_new(GtkWidget *parent, int well_known_option, double *resolution, const char *image_xpm[],
+ const gchar *desc, const gchar *widget_name)
+{
+ GtkObject *resolution_widget;
+ const SANE_Option_Descriptor *opt;
+
+ DBG(DBG_proc, "xsane_resolution_widget_new\n");
+
+ opt = xsane_get_option_descriptor(xsane.dev, well_known_option);
+
+ if (!opt)
+ {
+ return -1; /* options does not exist */
+ }
+ else
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_RANGE:
+ {
+ double quant= 0.0;
+ double min = 0.0;
+ double max = 0.0;
+ double val = 0.0;
+ SANE_Word value;
+
+ gtk_widget_set_sensitive(xsane.show_resolution_list_widget, TRUE);
+ xsane_control_option(xsane.dev, well_known_option, SANE_ACTION_GET_VALUE, &value, 0);
+
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ min = opt->constraint.range->min;
+ max = opt->constraint.range->max;
+ quant = opt->constraint.range->quant;
+ val = (int) value;
+ break;
+
+ case SANE_TYPE_FIXED:
+ min = SANE_UNFIX(opt->constraint.range->min);
+ max = SANE_UNFIX(opt->constraint.range->max);
+ quant = SANE_UNFIX(opt->constraint.range->quant);
+ val = SANE_UNFIX(value);
+ break;
+
+ default:
+ DBG(DBG_error, "resolution_widget_new: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ }
+
+ if (quant == 0)
+ {
+ quant = 1.0;
+ }
+
+ *resolution = val; /* set backend predefined value */
+
+ if (!preferences.show_resolution_list) /* user wants slider */
+ {
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(parent), image_xpm, desc,
+ min, max, quant, quant*10, 0, 0, resolution, &resolution_widget,
+ well_known_option, xsane_resolution_scale_update, SANE_OPTION_IS_SETTABLE(opt->cap));
+ }
+ else /* user wants list instead of slider */
+ {
+ SANE_Int max_items = 20;
+ char **str_list;
+ char str[16];
+ int i;
+ int j = 0;
+ SANE_Word wanted_res;
+ SANE_Word val = max;
+ int res = max;
+ double mul;
+
+ xsane_control_option(xsane.dev, well_known_option, SANE_ACTION_GET_VALUE, &wanted_res, 0);
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ wanted_res = (int) SANE_UNFIX(wanted_res);
+ }
+
+ str_list = malloc((max_items + 1) * sizeof(str_list[0]));
+
+ sprintf(str, "%d", (int) max);
+ str_list[j++] = strdup(str);
+
+ i=9;
+ while ((j < max_items) && (res > 50) && (res > min) && (i > 0))
+ {
+ mul = ((double) i) / (i+1);
+ res = (int) (max * mul);
+ if (res/mul == max)
+ {
+ res = xsane_find_best_resolution(well_known_option, res);
+ sprintf(str, "%d", res);
+ str_list[j++] = strdup(str);
+ if (res >= wanted_res)
+ {
+ val = res;
+ }
+ }
+ i--;
+ }
+
+ i = 3;
+ while ((j < max_items) && (res > 50) && (res > min))
+ {
+ mul = 1.0/i;
+ res = max * mul;
+ if (res/mul == max)
+ {
+ res = xsane_find_best_resolution(well_known_option, res);
+ sprintf(str, "%d", res);
+ str_list[j++] = strdup(str);
+ if (res >= wanted_res)
+ {
+ val = res;
+ }
+ }
+ i++;
+ }
+
+ str_list[j] = 0;
+ sprintf(str, "%d", (int) val);
+
+ xsane_option_menu_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(parent), image_xpm, desc, str_list, str, &resolution_widget, well_known_option,
+ xsane_resolution_list_callback, SANE_OPTION_IS_SETTABLE(opt->cap), widget_name);
+
+ free(str_list);
+ *resolution = val;
+ xsane_set_resolution(well_known_option, *resolution);
+ }
+ }
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ {
+ /* use a "list-selection" widget */
+ SANE_Int items;
+ char **str_list;
+ char str[16];
+ int j;
+ SANE_Word val=0;
+
+ gtk_widget_set_sensitive(xsane.show_resolution_list_widget, FALSE);
+
+ items = opt->constraint.word_list[0];
+ str_list = malloc((items + 1) * sizeof(str_list[0]));
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ for (j = 0; j < items; ++j)
+ {
+ sprintf(str, "%d", opt->constraint.word_list[j + 1]);
+ str_list[j] = strdup(str);
+ }
+ str_list[j] = 0;
+ xsane_control_option(xsane.dev, well_known_option, SANE_ACTION_GET_VALUE, &val, 0);
+ sprintf(str, "%d", (int) val);
+ break;
+
+ case SANE_TYPE_FIXED:
+ for (j = 0; j < items; ++j)
+ {
+ sprintf(str, "%d", (int) SANE_UNFIX(opt->constraint.word_list[j + 1]));
+ str_list[j] = strdup(str);
+ }
+ str_list[j] = 0;
+ xsane_control_option(xsane.dev, well_known_option, SANE_ACTION_GET_VALUE, &val, 0);
+ sprintf(str, "%d", (int) SANE_UNFIX(val));
+ break;
+
+ default:
+ DBG(DBG_error, "resolution_word_list_creation: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ }
+
+
+ xsane_option_menu_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(parent), image_xpm, desc,
+ str_list, str, &resolution_widget, well_known_option,
+ xsane_resolution_list_callback, SANE_OPTION_IS_SETTABLE(opt->cap), widget_name);
+ free(str_list);
+ }
+ break;
+
+ default:
+ break;
+ } /* constraint type */
+
+ return 0; /* everything is ok */
+
+ } /* if resolution option active */
+
+ return 1; /* not active */
+
+ } /* if (opt) */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_zoom_update(GtkAdjustment *adj_data, double *val)
+{
+ int printer_resolution;
+
+ DBG(DBG_proc, "xsane_zoom_update\n");
+
+ *val=adj_data->value;
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ /* update all resolutions */
+ xsane.resolution = xsane.zoom * printer_resolution;
+ xsane.resolution_x = xsane.zoom_x * printer_resolution;
+ xsane.resolution_y = xsane.zoom_y * printer_resolution;
+
+ xsane_set_all_resolutions();
+
+ xsane_update_param(0);
+
+ xsane_define_maximum_output_size();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_zoom_widget_new(GtkWidget *parent, int well_known_option, double *zoom, double resolution,
+ const char *image_xpm[], const gchar *desc)
+{
+ const SANE_Option_Descriptor *opt;
+ int printer_resolution;
+
+ DBG(DBG_proc, "xsane_zoom_widget_new\n");
+
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ opt = xsane_get_option_descriptor(xsane.dev, well_known_option);
+ if (!opt)
+ {
+ return -1; /* option not available */
+ }
+ else
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ double min = 0.0;
+ double max = 0.0;
+ SANE_Word val = 0.0;
+
+ xsane_control_option(xsane.dev, well_known_option, SANE_ACTION_GET_VALUE, &val, 0);
+
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_RANGE:
+ switch (opt->type)
+ {
+ case SANE_TYPE_INT:
+ min = ((double) opt->constraint.range->min) / printer_resolution;
+ max = ((double) opt->constraint.range->max) / printer_resolution;
+ break;
+
+ case SANE_TYPE_FIXED:
+ min = SANE_UNFIX(opt->constraint.range->min) / printer_resolution;
+ max = SANE_UNFIX(opt->constraint.range->max) / printer_resolution;
+ val = SANE_UNFIX(val);
+ break;
+
+ default:
+ DBG(DBG_error, "zoom_scale_update: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ }
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ xsane_get_bounds(opt, &min, &max);
+ min = min / printer_resolution;
+ max = max / printer_resolution;
+ break;
+
+ default:
+ DBG(DBG_error, "zoom_scale_update: %s %d\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ }
+
+ if (resolution == 0) /* no prefered value */
+ {
+ resolution = val; /* set backend predefined value */
+ }
+
+ *zoom = resolution / printer_resolution;
+
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(parent), image_xpm, desc, min, max, 0.01, 0.1, 0.1, 2,
+ zoom, &xsane.zoom_widget, well_known_option, xsane_zoom_update,
+ SANE_OPTION_IS_SETTABLE(opt->cap));
+
+ return 0; /* everything is ok */
+ }
+ return 1; /* option not active */
+ }
+}
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_scanmode_menu_callback(GtkWidget *widget, gpointer data)
+{
+ GSGMenuItem *menu_item = data;
+ GSGDialogElement *elem = menu_item->elem;
+ const SANE_Option_Descriptor *opt;
+ int opt_num;
+ int printer_resolution;
+ double zoom, zoom_x, zoom_y;
+
+ DBG(DBG_proc, "xsane_scanmode_menu_callback\n");
+
+ zoom = xsane.zoom;
+ zoom_x = xsane.zoom_x;
+ zoom_y = xsane.zoom_y;
+
+ opt_num = elem - xsane.element;
+ opt = xsane_get_option_descriptor(xsane.dev, opt_num);
+ xsane_back_gtk_set_option(opt_num, menu_item->label, SANE_ACTION_SET_VALUE);
+
+ if (xsane.xsane_mode == XSANE_COPY)
+ {
+ switch (xsane.param.format)
+ {
+ case SANE_FRAME_GRAY:
+ if (xsane.param.depth == 1)
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->lineart_resolution;
+ }
+ else
+ {
+ printer_resolution = preferences.printer[preferences.printernr]->grayscale_resolution;
+ }
+ break;
+
+ case SANE_FRAME_RGB:
+ case SANE_FRAME_RED:
+ case SANE_FRAME_GREEN:
+ case SANE_FRAME_BLUE:
+ default:
+ printer_resolution = preferences.printer[preferences.printernr]->color_resolution;
+ break;
+ }
+
+ xsane.resolution = xsane_find_best_resolution(xsane.well_known.dpi, zoom * printer_resolution);
+ xsane.resolution_x = xsane_find_best_resolution(xsane.well_known.dpi_x, zoom_x * printer_resolution);
+ xsane.resolution_y = xsane_find_best_resolution(xsane.well_known.dpi_y, zoom_y * printer_resolution);
+
+ xsane_set_all_resolutions(); /* make sure resolution, resolution_x and resolution_y are up to date */
+ xsane_back_gtk_refresh_dialog(); /* update resolution - a bit overkill, any better idea? */
+ xsane_define_maximum_output_size(); /* draw maximum output frame in preview window if necessary */
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+GtkWidget *xsane_update_xsane_callback() /* creates the XSane option window */
+{
+ GtkWidget *xsane_vbox, *xsane_hbox;
+ GtkWidget *xsane_modus_menu;
+ GtkWidget *xsane_modus_item;
+ GtkWidget *xsane_modus_option_menu;
+ GtkWidget *xsane_vbox_xsane_modus;
+ GtkWidget *xsane_hbox_xsane_modus;
+ GtkWidget *xsane_label;
+ GtkWidget *xsane_text;
+ GtkWidget *xsane_hbox_xsane_enhancement;
+ GtkWidget *xsane_frame;
+ GtkWidget *button;
+ gchar buf[200];
+
+ DBG(DBG_proc, "xsane_update_xsane_callback\n");
+
+ /* xsane main options */
+
+ xsane_hbox = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(xsane_hbox);
+ xsane_vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_widget_show(xsane_vbox);
+/* gtk_box_pack_start(GTK_BOX(xsane_hbox), xsane_vbox, FALSE, FALSE, 0); */ /* make scales fixed */
+ gtk_box_pack_start(GTK_BOX(xsane_hbox), xsane_vbox, TRUE, TRUE, 0); /* make scales sizeable */
+
+ /* XSane Frame */
+
+ xsane_frame = gtk_frame_new(TEXT_XSANE_OPTIONS);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_frame), 4);
+ gtk_frame_set_shadow_type(GTK_FRAME(xsane_frame), GTK_SHADOW_ETCHED_IN);
+/* gtk_box_pack_start(GTK_BOX(xsane_vbox), xsane_frame, FALSE, FALSE, 0); */ /* fixed frameheight */
+ gtk_box_pack_start(GTK_BOX(xsane_vbox), xsane_frame, TRUE, TRUE, 0); /* sizeable framehight */
+ gtk_widget_show(xsane_frame);
+
+/* xsane_vbox_xsane_modus = gtk_vbox_new(FALSE, 5); */
+ xsane_vbox_xsane_modus = gtk_vbox_new(FALSE, 1);
+ gtk_container_add(GTK_CONTAINER(xsane_frame), xsane_vbox_xsane_modus);
+ gtk_widget_show(xsane_vbox_xsane_modus);
+
+/* scan copy fax selection */
+
+ if ( (xsane.mode == XSANE_STANDALONE) && (xsane.mode_selection) ) /* display xsane mode selection menu */
+ {
+ xsane_hbox_xsane_modus = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_hbox_xsane_modus), 2);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_xsane_modus), xsane_hbox_xsane_modus, FALSE, FALSE, 0);
+
+ xsane_label = gtk_label_new(TEXT_XSANE_MODE);
+ gtk_box_pack_start(GTK_BOX(xsane_hbox_xsane_modus), xsane_label, FALSE, FALSE, 2);
+ gtk_widget_show(xsane_label);
+
+
+ xsane_modus_menu = gtk_menu_new();
+ gtk_menu_set_accel_group(GTK_MENU(xsane_modus_menu), xsane.accelerator_group);
+
+
+ xsane_modus_item = gtk_menu_item_new_with_label(MENU_ITEM_VIEWER);
+ gtk_widget_add_accelerator(xsane_modus_item, "activate", xsane.accelerator_group, GDK_V, GDK_CONTROL_MASK, GTK_ACCEL_LOCKED);
+ gtk_widget_lock_accelerators(xsane_modus_item);
+ gtk_widget_set_usize(xsane_modus_item, 60, 0);
+ gtk_container_add(GTK_CONTAINER(xsane_modus_menu), xsane_modus_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_modus_item), "activate",
+ (GtkSignalFunc) xsane_modus_callback, &xsane_scanmode_number[XSANE_VIEWER]);
+ gtk_widget_show(xsane_modus_item);
+
+ xsane_modus_item = gtk_menu_item_new_with_label(MENU_ITEM_SAVE);
+ gtk_widget_add_accelerator(xsane_modus_item, "activate", xsane.accelerator_group, GDK_S, GDK_CONTROL_MASK, GTK_ACCEL_LOCKED);
+ gtk_container_add(GTK_CONTAINER(xsane_modus_menu), xsane_modus_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_modus_item), "activate",
+ (GtkSignalFunc) xsane_modus_callback, &xsane_scanmode_number[XSANE_SAVE]);
+ gtk_widget_show(xsane_modus_item);
+
+ xsane_modus_item = gtk_menu_item_new_with_label(MENU_ITEM_COPY);
+ gtk_widget_add_accelerator(xsane_modus_item, "activate", xsane.accelerator_group, GDK_C, GDK_CONTROL_MASK, GTK_ACCEL_LOCKED);
+ gtk_container_add(GTK_CONTAINER(xsane_modus_menu), xsane_modus_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_modus_item), "activate",
+ (GtkSignalFunc) xsane_modus_callback, &xsane_scanmode_number[XSANE_COPY]);
+ gtk_widget_show(xsane_modus_item);
+
+ xsane_modus_item = gtk_menu_item_new_with_label(MENU_ITEM_FAX);
+ gtk_widget_add_accelerator(xsane_modus_item, "activate", xsane.accelerator_group, GDK_F, GDK_CONTROL_MASK, GTK_ACCEL_LOCKED);
+ gtk_container_add(GTK_CONTAINER(xsane_modus_menu), xsane_modus_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_modus_item), "activate",
+ (GtkSignalFunc) xsane_modus_callback, &xsane_scanmode_number[XSANE_FAX]);
+ gtk_widget_show(xsane_modus_item);
+
+#ifdef XSANE_ACTIVATE_MAIL
+ xsane_modus_item = gtk_menu_item_new_with_label(MENU_ITEM_MAIL);
+ gtk_widget_add_accelerator(xsane_modus_item, "activate", xsane.accelerator_group, GDK_M, GDK_CONTROL_MASK, GTK_ACCEL_LOCKED);
+ gtk_container_add(GTK_CONTAINER(xsane_modus_menu), xsane_modus_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_modus_item), "activate",
+ (GtkSignalFunc) xsane_modus_callback, &xsane_scanmode_number[XSANE_MAIL]);
+ gtk_widget_show(xsane_modus_item);
+#endif
+
+ xsane_modus_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, xsane_modus_option_menu, DESC_XSANE_MODE);
+ gtk_box_pack_end(GTK_BOX(xsane_hbox_xsane_modus), xsane_modus_option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(xsane_modus_option_menu), xsane_modus_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(xsane_modus_option_menu), xsane.xsane_mode);
+ gtk_widget_show(xsane_modus_option_menu);
+ gtk_widget_show(xsane_hbox_xsane_modus);
+
+ xsane.xsanemode_widget = xsane_modus_option_menu;
+ }
+
+ {
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+ GtkWidget *hbox;
+ GtkWidget *xsane_medium_option_menu, *xsane_medium_menu, *xsane_medium_item;
+ const SANE_Option_Descriptor *opt;
+ int i;
+
+
+ /* scanmode */
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.scanmode);
+ if (opt)
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_xsane_modus), hbox, FALSE, FALSE, 2);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(xsane.histogram_dialog->window, &mask, xsane.bg_trans, (gchar **) colormode_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+ gtk_widget_show(pixmapwidget);
+
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_STRING_LIST:
+ {
+ char *set;
+ SANE_Status status;
+
+ /* use a "list-selection" widget */
+ set = malloc(opt->size);
+ status = xsane_control_option(xsane.dev, xsane.well_known.scanmode, SANE_ACTION_GET_VALUE, set, 0);
+
+ xsane_option_menu_new(hbox, (char **) opt->constraint.string_list, set, xsane.well_known.scanmode,
+ _BGT(opt->desc), xsane_scanmode_menu_callback, SANE_OPTION_IS_SETTABLE(opt->cap), 0);
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "scanmode_selection: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ }
+ gtk_widget_show(hbox);
+ }
+ }
+
+
+ /* input selection */
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.scansource);
+ if (opt)
+ {
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_xsane_modus), hbox, FALSE, FALSE, 2);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(xsane.histogram_dialog->window, &mask, xsane.bg_trans, (gchar **) scanner_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+ gtk_widget_show(pixmapwidget);
+
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_STRING_LIST:
+ {
+ char *set;
+ SANE_Status status;
+
+ /* use a "list-selection" widget */
+ set = malloc(opt->size);
+ status = xsane_control_option(xsane.dev, xsane.well_known.scansource, SANE_ACTION_GET_VALUE, set, 0);
+
+ xsane_option_menu_new(hbox, (char **) opt->constraint.string_list, set, xsane.well_known.scansource,
+ _BGT(opt->desc), 0, SANE_OPTION_IS_SETTABLE(opt->cap), 0);
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "scansource_selection: %s %d\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ }
+ gtk_widget_show(hbox);
+ }
+ }
+
+
+ if (xsane.param.depth != 1) /* show medium selection of not lineart mode */
+ {
+ /* medium selection */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_xsane_modus), hbox, FALSE, FALSE, 2);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(xsane.histogram_dialog->window, &mask, xsane.bg_trans, (gchar **) medium_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+ gtk_widget_show(pixmapwidget);
+
+ xsane_medium_menu = gtk_menu_new();
+
+ for (i=0; i<preferences.medium_definitions; i++)
+ {
+ xsane_medium_item = gtk_menu_item_new_with_label(preferences.medium[i]->name);
+ gtk_menu_append(GTK_MENU(xsane_medium_menu), xsane_medium_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_medium_item), "activate", (GtkSignalFunc) xsane_set_medium_callback, (void *)i);
+ gtk_widget_show(xsane_medium_item);
+ }
+
+ gtk_widget_show(xsane_medium_menu);
+
+ xsane_medium_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, xsane_medium_option_menu, DESC_XSANE_MEDIUM);
+ gtk_box_pack_end(GTK_BOX(hbox), xsane_medium_option_menu, FALSE, FALSE, 2);
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(xsane_medium_option_menu), xsane_medium_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(xsane_medium_option_menu), xsane.medium_nr);
+ gtk_widget_show(xsane_medium_option_menu);
+ gtk_widget_show(hbox);
+
+ xsane.medium_widget = xsane_medium_option_menu;
+
+ xsane_set_medium(preferences.medium[xsane.medium_nr]); /* set selected medium */
+ }
+ else /* no medium selextion for lineart mode: use Full range gamma curve */
+ {
+ xsane_set_medium(preferences.medium[0]); /* make sure Full range is active */
+ }
+ }
+
+
+ if (xsane.xsane_mode == XSANE_SAVE)
+ {
+ xsane.copy_number_entry = NULL;
+
+ if ( (xsane.mode == XSANE_STANDALONE) && (!xsane.force_filename) )
+ {
+ xsane_outputfilename_new(xsane_vbox_xsane_modus); /* create filename box, step and type menu */
+ }
+ }
+
+ if ( (xsane.xsane_mode == XSANE_SAVE) || (xsane.xsane_mode == XSANE_VIEWER) )
+ {
+ /* resolution selection */
+ if (!xsane_resolution_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi_x, &xsane.resolution_x, resolution_x_xpm,
+ DESC_RESOLUTION_X, XSANE_GTK_NAME_X_RESOLUTION)) /* draw x resolution widget if possible */
+ {
+ xsane_resolution_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi_y, &xsane.resolution_y, resolution_y_xpm,
+ DESC_RESOLUTION_Y, XSANE_GTK_NAME_Y_RESOLUTION); /* ok, also draw y resolution widget */
+ }
+ else /* no x resolution, so lets draw common resolution widget */
+ {
+ xsane_resolution_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi, &xsane.resolution, resolution_xpm,
+ DESC_RESOLUTION, XSANE_GTK_NAME_RESOLUTION);
+ }
+ }
+ else if (xsane.xsane_mode == XSANE_COPY)
+ {
+ GtkWidget *pixmapwidget, *hbox, *xsane_printer_option_menu, *xsane_printer_menu, *xsane_printer_item;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+ int i;
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_xsane_modus), hbox, FALSE, FALSE, 2);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(xsane.histogram_dialog->window, &mask, xsane.bg_trans, (gchar **) printer_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+ gtk_widget_show(pixmapwidget);
+
+ xsane_printer_menu = gtk_menu_new();
+
+ for (i=0; i < preferences.printerdefinitions; i++)
+ {
+ xsane_printer_item = gtk_menu_item_new_with_label(preferences.printer[i]->name);
+ if (i<12)
+ {
+ gtk_widget_add_accelerator(xsane_printer_item, "activate", xsane.accelerator_group,
+ GDK_F1+i, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+ }
+ gtk_container_add(GTK_CONTAINER(xsane_printer_menu), xsane_printer_item);
+ gtk_signal_connect(GTK_OBJECT(xsane_printer_item), "activate", (GtkSignalFunc) xsane_printer_callback, (void *) i);
+ gtk_widget_show(xsane_printer_item);
+ }
+
+ xsane_printer_option_menu = gtk_option_menu_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, xsane_printer_option_menu, DESC_PRINTER_SELECT);
+ gtk_box_pack_end(GTK_BOX(hbox), xsane_printer_option_menu, FALSE, FALSE, 2);
+ gtk_widget_show(xsane_printer_option_menu);
+ gtk_widget_show(hbox);
+
+ gtk_option_menu_set_menu(GTK_OPTION_MENU(xsane_printer_option_menu), xsane_printer_menu);
+ gtk_option_menu_set_history(GTK_OPTION_MENU(xsane_printer_option_menu), preferences.printernr);
+
+ /* number of copies */
+ xsane_text = gtk_entry_new();
+ xsane_back_gtk_set_tooltip(xsane.tooltips, xsane_text, DESC_COPY_NUMBER);
+ gtk_widget_set_usize(xsane_text, 25, 0);
+ snprintf(buf, sizeof(buf), "%d", xsane.copy_number);
+ gtk_entry_set_text(GTK_ENTRY(xsane_text), (char *) buf);
+ gtk_box_pack_end(GTK_BOX(hbox), xsane_text, FALSE, FALSE, 10);
+ gtk_widget_show(xsane_text);
+ gtk_widget_show(hbox);
+ xsane.copy_number_entry = xsane_text;
+
+ /* zoom selection */
+ if (!xsane_zoom_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi_x, &xsane.zoom_x,
+ xsane.resolution_x, zoom_x_xpm, DESC_ZOOM_X))
+ {
+ xsane_zoom_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi_y, &xsane.zoom_y,
+ xsane.resolution_y, zoom_y_xpm, DESC_ZOOM_Y);
+ }
+ else
+ {
+ xsane_zoom_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi, &xsane.zoom,
+ xsane.resolution, zoom_xpm, DESC_ZOOM);
+ }
+ }
+ else if (xsane.xsane_mode == XSANE_FAX)
+ {
+ xsane.copy_number_entry = NULL;
+
+ xsane.resolution = 204;
+ xsane.resolution_x = 204;
+ xsane.resolution_y = 196;
+ xsane_set_all_resolutions();
+
+ xsane_fax_dialog();
+ }
+#ifdef XSANE_ACTIVATE_MAIL
+ else if (xsane.xsane_mode == XSANE_MAIL)
+ {
+ xsane.copy_number_entry = NULL;
+
+ /* resolution selection */
+ if (!xsane_resolution_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi_x, &xsane.resolution_x, resolution_x_xpm,
+ DESC_RESOLUTION_X, XSANE_GTK_NAME_X_RESOLUTION)) /* draw x resolution widget if possible */
+ {
+ xsane_resolution_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi_y, &xsane.resolution_y, resolution_y_xpm,
+ DESC_RESOLUTION_Y, XSANE_GTK_NAME_Y_RESOLUTION); /* ok, also draw y resolution widget */
+ }
+ else /* no x resolution, so lets draw common resolution widget */
+ {
+ xsane_resolution_widget_new(xsane_vbox_xsane_modus, xsane.well_known.dpi, &xsane.resolution, resolution_xpm,
+ DESC_RESOLUTION, XSANE_GTK_NAME_RESOLUTION);
+ }
+
+ xsane_mail_dialog();
+ }
+#endif
+
+ /* test if scanner gamma table is selected */
+
+ xsane.scanner_gamma_gray = FALSE;
+ if (xsane.well_known.gamma_vector >0)
+ {
+ const SANE_Option_Descriptor *opt;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector);
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ xsane.scanner_gamma_gray = TRUE;
+ }
+ }
+
+ xsane.scanner_gamma_color = FALSE;
+ if (xsane.well_known.gamma_vector_r >0)
+ {
+ const SANE_Option_Descriptor *opt;
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_r);
+ if (SANE_OPTION_IS_ACTIVE(opt->cap))
+ {
+ xsane.scanner_gamma_color = TRUE;
+ }
+ }
+
+
+
+ /* XSane Frame Enhancement */
+
+ sane_get_parameters(xsane.dev, &xsane.param); /* update xsane.param */
+
+ if (xsane.param.depth == 1)
+ {
+ switch (xsane.lineart_mode)
+ {
+ case XSANE_LINEART_STANDARD:
+ break;
+
+ case XSANE_LINEART_GRAYSCALE:
+ case XSANE_LINEART_XSANE:
+ if (xsane.well_known.threshold > 0)
+ {
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), threshold_xpm, DESC_THRESHOLD,
+ xsane.threshold_min, xsane.threshold_max, 1.0, 10.0, 0.0, 0,
+ &xsane.threshold, &xsane.threshold_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_threshold_changed();
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ return(xsane_hbox);
+ }
+
+ xsane.slider_gray.active = XSANE_SLIDER_ACTIVE; /* mark slider active */
+
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) )
+ {
+ xsane_separator_new(xsane_vbox_xsane_modus, 2);
+ }
+
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), Gamma_xpm, DESC_GAMMA,
+ XSANE_GAMMA_MIN, XSANE_GAMMA_MAX, 0.01, 0.1, 0.0, 2,
+ &xsane.gamma, &xsane.gamma_widget, 0, xsane_gamma_changed, TRUE);
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) )
+ {
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), Gamma_red_xpm, DESC_GAMMA_R,
+ XSANE_GAMMA_MIN, XSANE_GAMMA_MAX, 0.01, 0.1, 0.0, 2,
+ &xsane.gamma_red , &xsane.gamma_red_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), Gamma_green_xpm, DESC_GAMMA_G,
+ XSANE_GAMMA_MIN, XSANE_GAMMA_MAX, 0.01, 0.1, 0.0, 2,
+ &xsane.gamma_green, &xsane.gamma_green_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), Gamma_blue_xpm, DESC_GAMMA_B,
+ XSANE_GAMMA_MIN, XSANE_GAMMA_MAX, 0.01, 0.1, 0.0, 2,
+ &xsane.gamma_blue , &xsane.gamma_blue_widget, 0, xsane_gamma_changed, TRUE);
+
+ xsane_separator_new(xsane_vbox_xsane_modus, 2);
+ }
+
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), brightness_xpm, DESC_BRIGHTNESS,
+ xsane.brightness_min, xsane.brightness_max, 1.0, 10.0, 0.0, 0,
+ &xsane.brightness, &xsane.brightness_widget, 0, xsane_gamma_changed, TRUE);
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) )
+ {
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), brightness_red_xpm, DESC_BRIGHTNESS_R,
+ xsane.brightness_min, xsane.brightness_max, 1.0, 10.0, 0.0, 0,
+ &xsane.brightness_red , &xsane.brightness_red_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), brightness_green_xpm, DESC_BRIGHTNESS_G,
+ xsane.brightness_min, xsane.brightness_max, 1.0, 10.0, 0.0, 0,
+ &xsane.brightness_green, &xsane.brightness_green_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), brightness_blue_xpm, DESC_BRIGHTNESS_B,
+ xsane.brightness_min, xsane.brightness_max, 1.0, 10.0, 0.0, 0,
+ &xsane.brightness_blue, &xsane.brightness_blue_widget, 0, xsane_gamma_changed, TRUE);
+
+ xsane_separator_new(xsane_vbox_xsane_modus, 2);
+ }
+
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), contrast_xpm, DESC_CONTRAST,
+ xsane.contrast_gray_min, xsane.contrast_max, 1.0, 10.0, 0.0, 0,
+ &xsane.contrast, &xsane.contrast_widget, 0, xsane_gamma_changed, TRUE);
+ if ( (xsane.xsane_colors > 1) && (!xsane.enhancement_rgb_default) )
+ {
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), contrast_red_xpm, DESC_CONTRAST_R,
+ xsane.contrast_min, xsane.contrast_max, 1.0, 10.0, 0.0, 0,
+ &xsane.contrast_red , &xsane.contrast_red_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), contrast_green_xpm, DESC_CONTRAST_G,
+ xsane.contrast_min, xsane.contrast_max, 1.0, 10.0, 0.0, 0,
+ &xsane.contrast_green, &xsane.contrast_green_widget, 0, xsane_gamma_changed, TRUE);
+ xsane_scale_new_with_pixmap(xsane.xsane_window->window, GTK_BOX(xsane_vbox_xsane_modus), contrast_blue_xpm, DESC_CONTRAST_B,
+ xsane.contrast_min, xsane.contrast_max, 1.0, 10.0, 0.0, 0,
+ &xsane.contrast_blue, &xsane.contrast_blue_widget, 0, xsane_gamma_changed, TRUE);
+ }
+
+ xsane_separator_new(xsane_vbox_xsane_modus, 2);
+
+ /* create lower button box (rgb default, negative ,... */
+ xsane_hbox_xsane_enhancement = gtk_hbox_new(TRUE, 4);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_hbox_xsane_enhancement), 4);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_xsane_modus), xsane_hbox_xsane_enhancement, FALSE, FALSE, 0);
+ gtk_widget_show(xsane_hbox_xsane_enhancement);
+
+ if (xsane.xsane_colors > 1)
+ {
+ button = xsane_toggle_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, rgb_default_xpm, DESC_RGB_DEFAULT,
+ &xsane.enhancement_rgb_default, xsane_enhancement_rgb_default_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_B, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+ }
+
+ button = xsane_toggle_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, negative_xpm, DESC_NEGATIVE,
+ &xsane.negative, xsane_enhancement_negative_callback);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_N, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, enhance_xpm, DESC_ENH_AUTO,
+ xsane_auto_enhancement_callback, NULL);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_E, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, default_enhancement_xpm, DESC_ENH_DEFAULT,
+ xsane_enhancement_restore_default, NULL);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_D, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, restore_enhancement_xpm, DESC_ENH_RESTORE,
+ xsane_enhancement_restore, NULL);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_R, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, store_enhancement_xpm, DESC_ENH_STORE,
+ xsane_enhancement_store, NULL);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_M, GDK_SHIFT_MASK, GTK_ACCEL_LOCKED);
+
+ if (xsane.medium_calibration) /* are we running in medium calibration mode? */
+ {
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, medium_xpm, DESC_STORE_MEDIUM,
+ xsane_add_medium_definition_callback, NULL);
+
+ button = xsane_button_new_with_pixmap(xsane.xsane_window->window, xsane_hbox_xsane_enhancement, medium_delete_xpm, DESC_DELETE_MEDIUM,
+ xsane_delete_medium_definition_callback, NULL);
+ }
+
+ xsane_update_histogram(TRUE /* update raw */);
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+ xsane_update_gamma_dialog();
+#endif
+
+ return(xsane_hbox);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_pref_save(void)
+{
+ char filename[PATH_MAX];
+ int fd;
+
+ DBG(DBG_proc, "xsane_pref_save\n");
+
+ /* first save xsane-specific preferences: */
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", NULL, "xsane", NULL, ".rc", XSANE_PATH_LOCAL_SANE);
+
+ DBG(DBG_info2, "saving preferences to \"%s\"\n", filename);
+
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+ fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, 0600); /* rw- --- --- */
+
+ if (fd < 0)
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s.", ERR_FAILED_CREATE_FILE, strerror(errno));
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+ preferences_save(fd);
+ close(fd);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_pref_restore(void)
+/* returns true if this is the first time this xsane version is called */
+{
+ char filename[PATH_MAX];
+ int fd;
+ int result = TRUE;
+ int i;
+
+ DBG(DBG_proc, "xsane_pref_restore\n");
+
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", NULL, "xsane", NULL, ".rc", XSANE_PATH_LOCAL_SANE);
+ fd = open(filename, O_RDONLY);
+
+ if (fd >= 0)
+ {
+ preferences_restore(fd);
+ close(fd);
+
+ /* the version test only is done for the local xsane.rc file because each user */
+ /* shall accept (or not) the license for xsane */
+ if (preferences.xsane_version_str)
+ {
+ if (!strcmp(preferences.xsane_version_str, XSANE_VERSION))
+ {
+ result = FALSE; /* this version already has been started */
+ }
+ }
+ }
+ else /* no local sane file, look for system file */
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane", 0, ".rc", XSANE_PATH_SYSTEM);
+ fd = open(filename, O_RDONLY);
+
+ if (fd >= 0)
+ {
+ preferences_restore(fd);
+ close(fd);
+ }
+ }
+
+ if (!preferences.preset_area_definitions)
+ {
+ DBG(DBG_info, "no preset area definitions in preferences file, using predefined list\n");
+
+ preferences.preset_area_definitions = sizeof(pref_default_preset_area)/sizeof(pref_default_preset_area_t);
+ preferences.preset_area = calloc(preferences.preset_area_definitions, sizeof(void *));
+
+ for (i=0; i<preferences.preset_area_definitions; i++)
+ {
+ preferences.preset_area[i] = calloc(sizeof(Preferences_preset_area_t), 1);
+ preferences.preset_area[i]->name = strdup(_(pref_default_preset_area[i].name));
+ preferences.preset_area[i]->xoffset = pref_default_preset_area[i].xoffset;
+ preferences.preset_area[i]->yoffset = pref_default_preset_area[i].yoffset;
+ preferences.preset_area[i]->width = pref_default_preset_area[i].width;
+ preferences.preset_area[i]->height = pref_default_preset_area[i].height;
+ }
+ }
+
+ if (!preferences.medium_definitions)
+ {
+ DBG(DBG_info, "no medium definitions in preferences file, using predefined list\n");
+
+ preferences.medium_definitions = sizeof(pref_default_medium)/sizeof(Preferences_medium_t);
+ preferences.medium = calloc(preferences.medium_definitions, sizeof(void *));
+
+ for (i=0; i<preferences.medium_definitions; i++)
+ {
+ preferences.medium[i] = calloc(sizeof(Preferences_medium_t), 1);
+ preferences.medium[i]->name = strdup(_(pref_default_medium[i].name));
+ preferences.medium[i]->shadow_gray = pref_default_medium[i].shadow_gray;
+ preferences.medium[i]->shadow_red = pref_default_medium[i].shadow_red;
+ preferences.medium[i]->shadow_green = pref_default_medium[i].shadow_green;
+ preferences.medium[i]->shadow_blue = pref_default_medium[i].shadow_blue;
+ preferences.medium[i]->highlight_gray = pref_default_medium[i].highlight_gray;
+ preferences.medium[i]->highlight_red = pref_default_medium[i].highlight_red;
+ preferences.medium[i]->highlight_green = pref_default_medium[i].highlight_green;
+ preferences.medium[i]->highlight_blue = pref_default_medium[i].highlight_blue;
+ preferences.medium[i]->gamma_gray = pref_default_medium[i].gamma_gray;
+ preferences.medium[i]->gamma_red = pref_default_medium[i].gamma_red;
+ preferences.medium[i]->gamma_green = pref_default_medium[i].gamma_green;
+ preferences.medium[i]->gamma_blue = pref_default_medium[i].gamma_blue;
+ preferences.medium[i]->negative = pref_default_medium[i].negative;
+ }
+ }
+
+ if (preferences.xsane_version_str)
+ {
+ free(preferences.xsane_version_str);
+ }
+ preferences.xsane_version_str = strdup(XSANE_VERSION); /* store recent xsane-version */
+
+ if (!preferences.tmp_path)
+ {
+ if (getenv(STRINGIFY(ENVIRONMENT_TEMP_DIR_NAME))) /* if possible get temp path from environment */
+ {
+ preferences.tmp_path = strdup(getenv(STRINGIFY(ENVIRONMENT_TEMP_DIR_NAME)));
+ DBG(DBG_info, "setting temporary directory by environment variable %s: %s\n",
+ STRINGIFY(ENVIRONMENT_TEMP_DIR_NAME), preferences.tmp_path);
+ }
+ else /* otherwise use predefined path */
+ {
+ preferences.tmp_path = strdup(STRINGIFY(TEMP_PATH));
+ DBG(DBG_info, "setting temporary directory to %s\n", preferences.tmp_path);
+ }
+ }
+
+ if (!preferences.filename)
+ {
+ preferences.filename = strdup(OUT_FILENAME);
+ }
+
+ if (preferences.printerdefinitions == 0)
+ {
+ xsane_new_printer();
+ }
+
+ if (!preferences.fax_project)
+ {
+ preferences.fax_project = strdup(FAXPROJECT);
+ }
+
+ if (!preferences.fax_command)
+ {
+ preferences.fax_command = strdup(FAXCOMMAND);
+ }
+
+ if (!preferences.fax_receiver_option)
+ {
+ preferences.fax_receiver_option = strdup(FAXRECEIVEROPT);
+ }
+
+ if (!preferences.fax_postscript_option)
+ {
+ preferences.fax_postscript_option = strdup(FAXPOSTSCRIPTOPT);
+ }
+
+ if (!preferences.fax_normal_option)
+ {
+ preferences.fax_normal_option = strdup(FAXNORMALOPT);
+ }
+
+ if (!preferences.fax_fine_option)
+ {
+ preferences.fax_fine_option = strdup(FAXFINEOPT);
+ }
+
+ if (!preferences.fax_viewer)
+ {
+ preferences.fax_viewer = strdup(FAXVIEWER);
+ }
+
+
+#ifdef XSANE_ACTIVATE_MAIL
+ if (!preferences.mail_smtp_server)
+ {
+ preferences.mail_smtp_server = strdup("");
+ }
+
+ if (!preferences.mail_from)
+ {
+ preferences.mail_from = strdup("");
+ }
+
+ if (!preferences.mail_reply_to)
+ {
+ preferences.mail_reply_to = strdup("");
+ }
+
+ if (!preferences.mail_pop3_server)
+ {
+ preferences.mail_pop3_server = strdup("");
+ }
+
+ if (!preferences.mail_pop3_user)
+ {
+ preferences.mail_pop3_user = strdup("");
+ }
+
+ if (!preferences.mail_pop3_pass)
+ {
+ preferences.mail_pop3_pass = strdup("");
+ }
+
+ if (!preferences.mail_project)
+ {
+ preferences.mail_project = strdup(MAILPROJECT);
+ }
+
+ if (!preferences.mail_viewer)
+ {
+ preferences.mail_viewer = strdup(MAILVIEWER);
+ }
+#endif
+
+ if (!preferences.ocr_command)
+ {
+ preferences.ocr_command = strdup(OCRCOMMAND);
+ }
+
+ if (!preferences.ocr_inputfile_option)
+ {
+ preferences.ocr_inputfile_option = strdup(OCRINPUTFILEOPT);
+ }
+
+ if (!preferences.ocr_outputfile_option)
+ {
+ preferences.ocr_outputfile_option = strdup(OCROUTPUTFILEOPT);
+ }
+
+ if (!preferences.doc_viewer)
+ {
+ preferences.doc_viewer = strdup(DOCVIEWER);
+ }
+
+ return result;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static RETSIGTYPE xsane_quit_handler(int signal)
+{
+ DBG(DBG_proc, "xsane_quit_handler\n");
+
+ xsane_quit();
+}
+
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_quit(void)
+{
+ DBG(DBG_proc, "xsane_quit\n");
+
+ while (xsane.viewer_list) /* remove all viewer images */
+ {
+ Viewer *next_viewer = xsane.viewer_list->next_viewer; /* store pointer to next viewer */
+
+ DBG(DBG_info, "removing viewer image %s\n", xsane.viewer_list->filename);
+ remove(xsane.viewer_list->filename); /* remove image file */
+
+ gtk_widget_destroy(xsane.viewer_list->top); /* destroy the viewer window */
+ free(xsane.viewer_list); /* free memory of struct Viewer */
+
+ xsane.viewer_list = next_viewer;
+ }
+
+ if (xsane.preview)
+ {
+ Preview *preview = xsane.preview;
+ xsane.preview = 0;
+ preview_destroy(preview);
+ }
+
+#ifdef XSANE_ACTIVATE_MAIL
+ if (xsane.mail_project_save)
+ {
+ xsane.mail_project_save = 0;
+ xsane_mail_project_save();
+ }
+#endif
+
+ while (xsane.back_gtk_message_dialog_active)
+ {
+ gtk_main_iteration();
+ }
+
+ if (xsane.dev)
+ {
+ sane_close(xsane.dev);
+ }
+
+ sane_exit();
+ gtk_main_quit();
+
+ if (xsane.preview_gamma_data_red)
+ {
+ free(xsane.preview_gamma_data_red);
+ free(xsane.preview_gamma_data_green);
+ free(xsane.preview_gamma_data_blue);
+
+ xsane.preview_gamma_data_red = 0;
+ xsane.preview_gamma_data_green = 0;
+ xsane.preview_gamma_data_blue = 0;
+ }
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+ if (xsane.mode == XSANE_GIMP_EXTENSION)
+ {
+ gimp_quit();
+ }
+#endif
+
+ if (preferences.printer)
+ {
+ free(preferences.printer);
+ }
+
+ exit(0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_exit(void) /* this is called when xsane exits before gtk_main is called */
+{
+ DBG(DBG_proc, "xsane_exit\n");
+
+ while (xsane.back_gtk_message_dialog_active)
+ {
+ DBG(DBG_info, "calling gtk_main_iteration\n");
+ gtk_main_iteration();
+ }
+
+ sane_exit();
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+ if (xsane.mode == XSANE_GIMP_EXTENSION)
+ {
+ gimp_quit();
+ }
+#endif
+ exit(0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_standard_option_win_delete(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_standard_option_win_delete\n");
+
+ gtk_widget_hide(widget);
+ preferences.show_standard_options = FALSE;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_standard_options_widget), preferences.show_standard_options);
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_advanced_option_win_delete(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_advanced_option_win_delete\n");
+
+ gtk_widget_hide(widget);
+ preferences.show_advanced_options = FALSE;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_advanced_options_widget), preferences.show_advanced_options);
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* Invoked when window manager's "delete" (or "close") function is invoked. */
+static gint xsane_scan_win_delete(GtkWidget *w, gpointer data)
+{
+ int unsaved_images = 0;
+ Viewer *viewer = xsane.viewer_list;
+
+ DBG(DBG_proc, "xsane_scan_win_delete\n");
+
+ xsane_scan_done(-1); /* stop scanner when still scanning */
+
+ while (viewer)
+ {
+ if (!viewer->image_saved)
+ {
+ unsaved_images++;
+ }
+ viewer = viewer->next_viewer;
+ }
+
+ if (unsaved_images)
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), WARN_UNSAVED_IMAGES, unsaved_images);
+ if (!xsane_back_gtk_decision(ERR_HEADER_WARNING, (gchar **) warning_xpm, buf, BUTTON_DO_NOT_CLOSE, BUTTON_DISCARD_ALL_IMAGES, TRUE /* wait */) == FALSE)
+ {
+ return TRUE;
+ }
+ }
+
+ if (xsane.filetype) /* add extension to filename */
+ {
+ char buffer[256];
+
+ snprintf(buffer, sizeof(buffer), "%s%s", preferences.filename, xsane.filetype);
+ free(preferences.filename);
+ free(xsane.filetype);
+ xsane.filetype = 0;
+ preferences.filename = strdup(buffer);
+ }
+
+ xsane_pref_save();
+
+ if (preferences.save_devprefs_at_exit)
+ {
+ xsane_device_preferences_store();
+ }
+
+ xsane_quit();
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_preview_window_destroyed(GtkWidget *widget, gpointer call_data)
+{
+ DBG(DBG_proc, "xsane_preview_window_destroyed\n");
+
+ gtk_widget_hide(widget);
+ xsane.show_preview = FALSE;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_preview_widget), FALSE);
+ return TRUE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_preview_callback(GtkWidget * widget, gpointer call_data)
+{
+ DBG(DBG_proc, "xsane_show_preview_callback\n");
+
+ if (GTK_CHECK_MENU_ITEM(widget)->active)
+ {
+ gtk_widget_show(xsane.preview->top);
+ xsane.show_preview = TRUE;
+ }
+ else
+ {
+ gtk_widget_hide(xsane.preview->top);
+ xsane.show_preview = FALSE;
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *xsane_files_build_menu(void)
+{
+ GtkWidget *menu, *item;
+
+ DBG(DBG_proc, "xsane_files_build_menu\n");
+
+ menu = gtk_menu_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(menu));
+
+ /* XSane info dialog */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_INFO);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_I, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_info_dialog, NULL);
+ gtk_widget_show(item);
+
+
+ /* Quit */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_QUIT);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_Q, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_container_add(GTK_CONTAINER(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_scan_win_delete, NULL);
+ gtk_widget_show(item);
+
+ return menu;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_set_medium_callback(GtkWidget *widget, gpointer data)
+{
+ int medium_nr = (int) data;
+
+ if (medium_nr != xsane.medium_nr)
+ {
+ xsane.medium_changed = TRUE;
+ }
+
+ xsane.medium_nr = medium_nr;
+
+ xsane_set_medium(preferences.medium[medium_nr]);
+
+ xsane_update_gamma_curve(TRUE); /* if necessary update preview gamma */
+
+ preview_display_valid(xsane.preview); /* update valid status of preview image */
+ /* the valid status depends on gamma handling an medium change */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_set_pref_unit_callback(GtkWidget *widget, gpointer data)
+{
+ const char *unit = data;
+ double unit_conversion_factor = 1.0;
+
+ DBG(DBG_proc, "xsane_set_pref_unit_callback\n");
+
+ gtk_signal_handler_block_by_func(GTK_OBJECT(xsane.length_unit_mm), (GtkSignalFunc) xsane_set_pref_unit_callback, "mm");
+ gtk_signal_handler_block_by_func(GTK_OBJECT(xsane.length_unit_cm), (GtkSignalFunc) xsane_set_pref_unit_callback, "cm");
+ gtk_signal_handler_block_by_func(GTK_OBJECT(xsane.length_unit_in), (GtkSignalFunc) xsane_set_pref_unit_callback, "in");
+
+ if (strcmp(unit, "mm") == 0)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_mm), TRUE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_cm), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_in), FALSE);
+ }
+ else if (strcmp(unit, "cm") == 0)
+ {
+ unit_conversion_factor = 10.0;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_mm), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_cm), TRUE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_in), FALSE);
+ }
+ else if (strcmp(unit, "in") == 0)
+ {
+ unit_conversion_factor = 25.4;
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_mm), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_cm), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.length_unit_in), TRUE);
+ }
+
+ gtk_signal_handler_unblock_by_func(GTK_OBJECT(xsane.length_unit_mm), (GtkSignalFunc) xsane_set_pref_unit_callback, "mm");
+ gtk_signal_handler_unblock_by_func(GTK_OBJECT(xsane.length_unit_cm), (GtkSignalFunc) xsane_set_pref_unit_callback, "cm");
+ gtk_signal_handler_unblock_by_func(GTK_OBJECT(xsane.length_unit_in), (GtkSignalFunc) xsane_set_pref_unit_callback, "in");
+
+ preferences.length_unit = unit_conversion_factor;
+
+ xsane_refresh_dialog();
+ if (xsane.preview)
+ {
+ preview_area_resize(xsane.preview); /* redraw rulers */
+ }
+
+ xsane_pref_save();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_set_update_policy_callback(GtkWidget *widget, gpointer data)
+{
+ GtkUpdateType policy = (GtkUpdateType) data;
+
+ DBG(DBG_proc, "xsane_set_update_policy_callback\n");
+
+ gtk_signal_handler_block_by_func(GTK_OBJECT(xsane.update_policy_continu), (GtkSignalFunc) xsane_set_update_policy_callback,
+ (void *) GTK_UPDATE_CONTINUOUS);
+ gtk_signal_handler_block_by_func(GTK_OBJECT(xsane.update_policy_discont), (GtkSignalFunc) xsane_set_update_policy_callback,
+ (void *) GTK_UPDATE_DISCONTINUOUS);
+ gtk_signal_handler_block_by_func(GTK_OBJECT(xsane.update_policy_delayed), (GtkSignalFunc) xsane_set_update_policy_callback,
+ (void *) GTK_UPDATE_DELAYED);
+
+ if (policy == GTK_UPDATE_CONTINUOUS)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_continu), TRUE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_discont), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_delayed), FALSE);
+ }
+ else if (policy == GTK_UPDATE_DISCONTINUOUS)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_continu), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_discont), TRUE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_delayed), FALSE);
+ }
+ else if (policy == GTK_UPDATE_DELAYED)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_continu), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_discont), FALSE);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.update_policy_delayed), TRUE);
+ }
+
+ gtk_signal_handler_unblock_by_func(GTK_OBJECT(xsane.update_policy_continu), (GtkSignalFunc) xsane_set_update_policy_callback,
+ (void *) GTK_UPDATE_CONTINUOUS);
+ gtk_signal_handler_unblock_by_func(GTK_OBJECT(xsane.update_policy_discont), (GtkSignalFunc) xsane_set_update_policy_callback,
+ (void *) GTK_UPDATE_DISCONTINUOUS);
+ gtk_signal_handler_unblock_by_func(GTK_OBJECT(xsane.update_policy_delayed), (GtkSignalFunc) xsane_set_update_policy_callback,
+ (void *) GTK_UPDATE_DELAYED);
+
+ preferences.gtk_update_policy = policy;
+ xsane_pref_save();
+
+ xsane_back_gtk_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static gint xsane_close_info_callback(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *dialog_widget = data;
+
+ DBG(DBG_proc, "xsane_close_info_callback\n");
+
+ gtk_widget_destroy(dialog_widget);
+
+ xsane_set_sensitivity(TRUE);
+
+ xsane_update_histogram(TRUE /* update raw */);
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+ xsane_update_gamma_dialog();
+#endif
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_info_dialog(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *info_dialog, *vbox, *button, *label, *frame, *framebox, *hbox, *table;
+ char buf[256];
+ char *bufptr;
+ GtkAccelGroup *accelerator_group;
+
+ DBG(DBG_proc, "xsane_info_dialog\n");
+
+ sane_get_parameters(xsane.dev, &xsane.param); /* update xsane.param */
+
+ info_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(info_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(info_dialog), FALSE, FALSE, FALSE);
+ gtk_signal_connect(GTK_OBJECT(info_dialog), "destroy", GTK_SIGNAL_FUNC(xsane_close_info_callback), info_dialog);
+ snprintf(buf, sizeof(buf), "%s %s %s", xsane.prog_name, WINDOW_INFO, xsane.device_text);
+ gtk_window_set_title(GTK_WINDOW(info_dialog), buf);
+
+ accelerator_group = gtk_accel_group_new();
+ gtk_accel_group_attach(accelerator_group, GTK_OBJECT(info_dialog));
+
+ xsane_set_window_icon(info_dialog, 0);
+
+ vbox = gtk_vbox_new(/* not homogeneous */ FALSE, 5);
+ gtk_container_add(GTK_CONTAINER(info_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ frame = gtk_frame_new(TEXT_SCANNER_BACKEND);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 5);
+ gtk_widget_show(frame);
+
+ framebox = gtk_vbox_new(/* not homogeneous */ FALSE, 0);
+ gtk_container_add(GTK_CONTAINER(frame), framebox);
+ gtk_widget_show(framebox);
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(framebox), hbox, TRUE, TRUE, 5);
+ gtk_widget_show(hbox);
+
+ table = gtk_table_new(6, 2, FALSE);
+ gtk_box_pack_start(GTK_BOX(hbox), table, FALSE, FALSE, 5);
+ gtk_widget_show(table);
+
+ snprintf(buf, sizeof(buf), TEXT_VENDOR);
+ label = xsane_info_table_text_new(table, buf, 0, 0);
+ snprintf(buf, sizeof(buf), "%s", xsane.devlist[xsane.selected_dev]->vendor);
+ label = xsane_info_table_text_new(table, buf, 1, 0);
+
+ snprintf(buf, sizeof(buf), TEXT_MODEL);
+ label = xsane_info_table_text_new(table, buf, 0, 1);
+ snprintf(buf, sizeof(buf), "%s", xsane.devlist[xsane.selected_dev]->model);
+ label = xsane_info_table_text_new(table, buf, 1, 1);
+
+ snprintf(buf, sizeof(buf), TEXT_TYPE);
+ label = xsane_info_table_text_new(table, buf, 0, 2);
+ snprintf(buf, sizeof(buf), "%s", _(xsane.devlist[xsane.selected_dev]->type));
+ label = xsane_info_table_text_new(table, buf, 1, 2);
+
+ snprintf(buf, sizeof(buf), TEXT_DEVICE);
+ label = xsane_info_table_text_new(table, buf, 0, 3);
+ bufptr = strrchr(xsane.devlist[xsane.selected_dev]->name, ':');
+ if (bufptr)
+ {
+ snprintf(buf, sizeof(buf), "%s", bufptr+1);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), xsane.devlist[xsane.selected_dev]->name);
+ }
+ label = xsane_info_table_text_new(table, buf, 1, 3);
+
+ snprintf(buf, sizeof(buf), "%s", xsane.devlist[xsane.selected_dev]->name);
+ bufptr = strrchr(buf, ':');
+ if (bufptr)
+ {
+ *bufptr = 0;
+ label = xsane_info_table_text_new(table, buf, 1, 4);
+ snprintf(buf, sizeof(buf), TEXT_LOADED_BACKEND);
+ label = xsane_info_table_text_new(table, buf, 0, 4);
+ }
+
+ snprintf(buf, sizeof(buf), TEXT_SANE_VERSION);
+ label = xsane_info_table_text_new(table, buf, 0, 5);
+ snprintf(buf, sizeof(buf), "%d.%d.%d",SANE_VERSION_MAJOR(xsane.sane_backend_versioncode),
+ SANE_VERSION_MINOR(xsane.sane_backend_versioncode),
+ SANE_VERSION_BUILD(xsane.sane_backend_versioncode));
+ label = xsane_info_table_text_new(table, buf, 1, 5);
+
+
+ frame = gtk_frame_new(TEXT_RECENT_VALUES);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 5);
+ gtk_widget_show(frame);
+
+ framebox = gtk_vbox_new(/* not homogeneous */ FALSE, 0);
+ gtk_container_add(GTK_CONTAINER(frame), framebox);
+ gtk_widget_show(framebox);
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(framebox), hbox, TRUE, TRUE, 5);
+ gtk_widget_show(hbox);
+
+ table = gtk_table_new(4, 2, FALSE);
+ gtk_box_pack_start(GTK_BOX(hbox), table, FALSE, FALSE, 5);
+ gtk_widget_show(table);
+
+ if ((xsane.xsane_colors > 1) && (xsane.scanner_gamma_color)) /* color gamma correction by scanner */
+ {
+ const SANE_Option_Descriptor *opt;
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_CORR_BY);
+ label = xsane_info_table_text_new(table, buf, 0, 0);
+ snprintf(buf, sizeof(buf), TEXT_SCANNER);
+ label = xsane_info_table_text_new(table, buf, 1, 0);
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector_r);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_INPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 1);
+ snprintf(buf, sizeof(buf), "%d bit", (int) (0.5 + log((double)opt->size / sizeof(opt->type)) / log(2.0)));
+ label = xsane_info_table_text_new(table, buf, 1, 1);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_OUTPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 2);
+ snprintf(buf, sizeof(buf), "%d bit", (int) (0.5 + log(opt->constraint.range->max+1.0) / log(2.0)));
+ label = xsane_info_table_text_new(table, buf, 1, 2);
+ }
+ else if ((!xsane.xsane_colors > 1) && (xsane.scanner_gamma_gray)) /* gray gamma correction by scanner */
+ {
+ const SANE_Option_Descriptor *opt;
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_CORR_BY);
+ label = xsane_info_table_text_new(table, buf, 0, 0);
+ snprintf(buf, sizeof(buf), TEXT_SCANNER);
+ label = xsane_info_table_text_new(table, buf, 1, 0);
+
+ opt = xsane_get_option_descriptor(xsane.dev, xsane.well_known.gamma_vector);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_INPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 1);
+ snprintf(buf, sizeof(buf), "%d bit", (int) (0.5 + log((double)opt->size / sizeof(opt->type)) / log(2.0)));
+ label = xsane_info_table_text_new(table, buf, 1, 1);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_OUTPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 2);
+ snprintf(buf, sizeof(buf), "%d bit", (int) (0.5 + log(opt->constraint.range->max+1.0) / log(2.0)));
+ label = xsane_info_table_text_new(table, buf, 1, 2);
+ }
+ else if (xsane.param.depth != 1) /* gamma correction by xsane */
+ {
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_CORR_BY);
+ label = xsane_info_table_text_new(table, buf, 0, 0);
+ snprintf(buf, sizeof(buf), TEXT_SOFTWARE_XSANE);
+ label = xsane_info_table_text_new(table, buf, 1, 0);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_INPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 1);
+ snprintf(buf, sizeof(buf), "%d bit", xsane.param.depth);
+ label = xsane_info_table_text_new(table, buf, 1, 1);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_OUTPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 2);
+/* snprintf(buf, sizeof(buf), "%d bit", 8); */
+ snprintf(buf, sizeof(buf), "%d bit", xsane.param.depth);
+ label = xsane_info_table_text_new(table, buf, 1, 2);
+ }
+ else /* no gamma enhancement */
+ {
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_CORR_BY);
+ label = xsane_info_table_text_new(table, buf, 0, 0);
+ snprintf(buf, sizeof(buf), TEXT_NONE);
+ label = xsane_info_table_text_new(table, buf, 1, 0);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_INPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 1);
+ snprintf(buf, sizeof(buf), TEXT_NONE);
+ label = xsane_info_table_text_new(table, buf, 1, 1);
+
+ snprintf(buf, sizeof(buf), TEXT_GAMMA_OUTPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 2);
+ snprintf(buf, sizeof(buf), TEXT_NONE);
+ label = xsane_info_table_text_new(table, buf, 1, 2);
+ }
+
+ snprintf(buf, sizeof(buf), TEXT_SCANNER_OUTPUT_DEPTH);
+ label = xsane_info_table_text_new(table, buf, 0, 3);
+ snprintf(buf, sizeof(buf), "%d bit", xsane.param.depth);
+ label = xsane_info_table_text_new(table, buf, 1, 3);
+
+ frame = gtk_frame_new(TEXT_OUTPUT_FORMATS);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
+ gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, FALSE, 5);
+ gtk_widget_show(frame);
+
+ framebox = gtk_vbox_new(/* not homogeneous */ FALSE, 0);
+ gtk_container_add(GTK_CONTAINER(frame), framebox);
+ gtk_widget_show(framebox);
+
+ hbox = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(framebox), hbox, TRUE, TRUE, 5);
+ gtk_widget_show(hbox);
+
+ table = gtk_table_new(2, 2, FALSE);
+ gtk_box_pack_start(GTK_BOX(hbox), table, FALSE, FALSE, 5);
+ gtk_widget_show(table);
+
+ snprintf(buf, sizeof(buf), TEXT_8BIT_FORMATS);
+ label = xsane_info_table_text_new(table, buf, 0, 0);
+
+ bufptr=buf;
+
+#ifdef HAVE_LIBJPEG
+ sprintf(bufptr, "JPEG, ");
+ bufptr += strlen(bufptr);
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ sprintf(bufptr, "PNG, ");
+ bufptr += strlen(bufptr);
+#endif
+#endif
+
+ sprintf(bufptr, "PNM, ");
+ bufptr += strlen(bufptr);
+
+ sprintf(bufptr, "PS, ");
+ bufptr += strlen(bufptr);
+
+#ifdef SUPPORT_RGBA
+ sprintf(bufptr, "RGBA, ");
+ bufptr += strlen(bufptr);
+#endif
+
+#ifdef HAVE_LIBTIFF
+ sprintf(bufptr, "TIFF, ");
+ bufptr += strlen(bufptr);
+#endif
+
+ bufptr--;
+ bufptr--;
+ *bufptr = 0; /* erase last comma */
+
+ label = xsane_info_table_text_new(table, buf, 1, 0);
+
+ snprintf(buf, sizeof(buf), TEXT_16BIT_FORMATS);
+ label = xsane_info_table_text_new(table, buf, 0, 1);
+
+ bufptr=buf;
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ sprintf(bufptr, "PNG, ");
+ bufptr += strlen(bufptr);
+#endif
+#endif
+
+ sprintf(bufptr, "PNM, ");
+ bufptr += strlen(bufptr);
+
+ sprintf(bufptr, "RAW, ");
+ bufptr += strlen(bufptr);
+
+#ifdef SUPPORT_RGBA
+ sprintf(bufptr, "RGBA, ");
+ bufptr += strlen(bufptr);
+#endif
+
+#ifdef HAVE_LIBTIFF
+ sprintf(bufptr, "TIFF, ");
+ bufptr += strlen(bufptr);
+#endif
+
+ bufptr--;
+ bufptr--;
+ *bufptr = 0; /* erase last comma */
+
+ label = xsane_info_table_text_new(table, buf, 1, 1);
+
+/* gtk_label_set((GtkLabel *)label, "HALLO"); */
+
+ button = gtk_button_new_with_label(BUTTON_CLOSE);
+ gtk_widget_add_accelerator(button, "clicked", accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_close_info_callback, info_dialog);
+ gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ gtk_widget_show(info_dialog);
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+
+ xsane_set_sensitivity(FALSE);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *about_dialog = NULL;
+
+static int xsane_close_about_dialog_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_close_about_dialog_callback\n");
+
+ gtk_widget_destroy(about_dialog);
+ about_dialog = NULL;
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_about_dialog(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *vbox, *hbox, *button, *label;
+ char buf[1024];
+ char filename[PATH_MAX];
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+ GtkStyle *style;
+ GdkColor *bg_trans;
+ GtkAccelGroup *accelerator_group;
+
+ DBG(DBG_proc, "xsane_about_dialog\n");
+
+ if (about_dialog)
+ {
+ return;
+ }
+
+ about_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(about_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(about_dialog), FALSE, FALSE, FALSE);
+ gtk_signal_connect(GTK_OBJECT(about_dialog), "destroy", GTK_SIGNAL_FUNC(xsane_close_about_dialog_callback), NULL);
+ snprintf(buf, sizeof(buf), "%s %s", WINDOW_ABOUT_XSANE, xsane.prog_name);
+ gtk_window_set_title(GTK_WINDOW(about_dialog), buf);
+
+ accelerator_group = gtk_accel_group_new();
+ gtk_accel_group_attach(accelerator_group, GTK_OBJECT(about_dialog));
+
+ xsane_set_window_icon(about_dialog, 0);
+
+ hbox = gtk_hbox_new(/* not homogeneous */ TRUE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_container_add(GTK_CONTAINER(about_dialog), hbox);
+ gtk_widget_show(hbox);
+
+ vbox = gtk_vbox_new(/* not homogeneous */ FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 20);
+ gtk_widget_show(vbox);
+
+ /* xsane logo */
+ gtk_widget_realize(about_dialog);
+
+ style = gtk_widget_get_style(about_dialog);
+ bg_trans = &style->bg[GTK_STATE_NORMAL];
+
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-logo", 0, ".xpm", XSANE_PATH_SYSTEM);
+ pixmap = gdk_pixmap_create_from_xpm(about_dialog->window, &mask, bg_trans, filename);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(vbox), pixmapwidget, FALSE, FALSE, 2);
+ gtk_widget_show(pixmapwidget);
+ gdk_pixmap_unref(pixmap);
+
+
+ xsane_separator_new(vbox, 5);
+
+
+ snprintf(buf, sizeof(buf), "XSane %s %s\n"
+ "%s %s\n"
+ "\n"
+ "%s %s\n"
+ "%s %s\n",
+ TEXT_VERSION, XSANE_VERSION,
+ XSANE_COPYRIGHT_SIGN, XSANE_COPYRIGHT_TXT,
+ TEXT_HOMEPAGE, XSANE_HOMEPAGE,
+ TEXT_EMAIL, XSANE_EMAIL);
+
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
+ gtk_widget_show(label);
+
+
+ button = gtk_button_new_with_label(BUTTON_CLOSE);
+ gtk_widget_add_accelerator(button, "clicked", accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_close_about_dialog_callback, NULL);
+ gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ gtk_widget_show(about_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *about_translation_dialog = NULL;
+
+static int xsane_close_about_translation_dialog_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_close_about_translation_dialog_callback\n");
+
+ gtk_widget_destroy(about_translation_dialog);
+ about_translation_dialog = NULL;
+
+ return FALSE;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_about_translation_dialog(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *vbox, *hbox, *button, *label;
+ char buf[512];
+ char filename[PATH_MAX];
+ GtkWidget *pixmapwidget;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+ GtkStyle *style;
+ GdkColor *bg_trans;
+ GtkAccelGroup *accelerator_group;
+
+ DBG(DBG_proc, "xsane_about_translation_dialog\n");
+
+ if (about_translation_dialog)
+ {
+ return;
+ }
+
+ about_translation_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(about_translation_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(about_translation_dialog), FALSE, FALSE, FALSE);
+ gtk_signal_connect(GTK_OBJECT(about_translation_dialog), "destroy", GTK_SIGNAL_FUNC(xsane_close_about_translation_dialog_callback), NULL);
+ snprintf(buf, sizeof(buf), "%s %s", WINDOW_ABOUT_TRANSLATION, xsane.prog_name);
+ gtk_window_set_title(GTK_WINDOW(about_translation_dialog), buf);
+
+ accelerator_group = gtk_accel_group_new();
+ gtk_accel_group_attach(accelerator_group, GTK_OBJECT(about_translation_dialog));
+
+ xsane_set_window_icon(about_translation_dialog, 0);
+
+ hbox = gtk_hbox_new(/* not homogeneous */ TRUE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_container_add(GTK_CONTAINER(about_translation_dialog), hbox);
+ gtk_widget_show(hbox);
+
+ vbox = gtk_vbox_new(/* not homogeneous */ FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 20);
+ gtk_widget_show(vbox);
+
+ /* xsane logo */
+ gtk_widget_realize(about_translation_dialog);
+
+ style = gtk_widget_get_style(about_translation_dialog);
+ bg_trans = &style->bg[GTK_STATE_NORMAL];
+
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-logo", 0, ".xpm", XSANE_PATH_SYSTEM);
+ pixmap = gdk_pixmap_create_from_xpm(about_translation_dialog->window, &mask, bg_trans, filename);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(vbox), pixmapwidget, FALSE, FALSE, 2);
+ gtk_widget_show(pixmapwidget);
+ gdk_pixmap_unref(pixmap);
+
+
+ xsane_separator_new(vbox, 5);
+
+ snprintf(buf, sizeof(buf), "%s\n"
+ "%s",
+ TEXT_TRANSLATION,
+ TEXT_TRANSLATION_INFO);
+
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
+ gtk_widget_show(label);
+
+
+ button = gtk_button_new_with_label(BUTTON_CLOSE);
+ gtk_widget_add_accelerator(button, "clicked", accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_close_about_translation_dialog_callback, NULL);
+ gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ gtk_widget_show(about_translation_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static SANE_Status xsane_get_area_value(int option, float *val, SANE_Int *unit)
+{
+ const SANE_Option_Descriptor *opt;
+ SANE_Handle dev;
+ SANE_Word word;
+
+ DBG(DBG_proc, "xsane_get_area_value\n");
+
+ if (option <= 0)
+ {
+ return -1;
+ }
+
+ if (xsane_control_option(xsane.dev, option, SANE_ACTION_GET_VALUE, &word, 0) == SANE_STATUS_GOOD)
+ {
+ dev = xsane.dev;
+ opt = xsane_get_option_descriptor(dev, option);
+
+ if (unit)
+ {
+ *unit = opt->unit;
+ }
+
+ if (val)
+ {
+ if (opt->type == SANE_TYPE_FIXED)
+ {
+ *val = (float) word / 65536.0;
+ }
+ else
+ {
+ *val = (float) word;
+ }
+ }
+
+ return 0;
+ }
+ else if (val)
+ {
+ *val = 0;
+ }
+ return -2;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef XSANE_TEST
+static void xsane_batch_scan_delete_callback(GtkWidget *widget, gpointer list)
+{
+ gtk_list_remove_items(GTK_LIST(list), GTK_LIST(list)->selection);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_batch_scan_add_callback(GtkWidget *widget, gpointer list)
+{
+ GtkWidget *list_item;
+ float tlx, tly, brx, bry;
+ SANE_Int unit;
+ char buf[255];
+
+ DBG(DBG_proc, "xsane_batch_scan_add_callback\n");
+
+ xsane_get_area_value(xsane.well_known.coord[0], &tlx, &unit);
+ xsane_get_area_value(xsane.well_known.coord[1], &tly, &unit);
+ xsane_get_area_value(xsane.well_known.coord[2], &brx, &unit);
+ xsane_get_area_value(xsane.well_known.coord[3], &bry, &unit);
+
+ if (unit == SANE_UNIT_MM)
+ {
+ snprintf(buf, sizeof(buf), " top left (%7.2fmm, %7.2fmm), bottom right (%7.2fmm, %7.2fmm)", tlx, tly, brx, bry);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), " top left (%5.0fpx, %5.0fpx), bottom right (%5.0fpx, %5.0fpx)", tlx, tly, brx, bry);
+ }
+
+ list_item = gtk_list_item_new_with_label(buf);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(buf));
+ gtk_container_add(GTK_CONTAINER(list), list_item);
+ gtk_widget_show(list_item);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_batch_scan_dialog(GtkWidget *widget, gpointer data)
+{
+ GtkWidget *batch_scan_dialog, *batch_scan_vbox, *hbox, *button, *scrolled_window, *list;
+ char buf[64];
+
+ DBG(DBG_proc, "xsane_batch_scan_dialog\n");
+
+ batch_scan_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ xsane_set_window_icon(batch_scan_dialog, 0);
+
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_BATCH_SCAN);
+ gtk_window_set_title(GTK_WINDOW(batch_scan_dialog), buf);
+
+ /* set the main vbox */
+ batch_scan_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(batch_scan_vbox), 0);
+ gtk_container_add(GTK_CONTAINER(batch_scan_dialog), batch_scan_vbox);
+ gtk_widget_show(batch_scan_vbox);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(vbox, 2);
+ gtk_box_pack_end(GTK_BOX(batch_scan_vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ scrolled_window = gtk_scrolled_window_new(0, 0);
+ gtk_widget_set_usize(scrolled_window, 400, 200);
+ gtk_container_add(GTK_CONTAINER(batch_scan_vbox), scrolled_window);
+ gtk_widget_show(scrolled_window);
+
+ list = gtk_list_new();
+
+ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled_window), list);
+
+ gtk_widget_show(list);
+
+
+ button = gtk_button_new_with_label(BUTTON_OK);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_close_dialog_callback, batch_scan_dialog);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_ADD_AREA);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_batch_scan_add_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_DELETE);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_batch_scan_delete_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(batch_scan_dialog);
+}
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_dialog_delete()
+{
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_dialog()
+{
+ GtkWidget *fax_dialog, *fax_scan_vbox, *fax_project_vbox, *hbox, *fax_project_exists_hbox, *button;
+ GtkWidget *scrolled_window, *list;
+ char buf[64];
+ GtkWidget *pixmapwidget, *text;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+
+ DBG(DBG_proc, "xsane_fax_dialog\n");
+
+ if (xsane.fax_dialog)
+ {
+ return; /* window already is open */
+ }
+
+ /* GTK_WINDOW_DIALOG looks better but does not place it nice*/
+ fax_dialog = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title(GTK_WINDOW(fax_dialog), buf);
+
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_FAX_PROJECT);
+ gtk_window_set_title(GTK_WINDOW(fax_dialog), buf);
+ gtk_signal_connect(GTK_OBJECT(fax_dialog), "delete_event", (GtkSignalFunc) xsane_fax_dialog_delete, NULL);
+ xsane_set_window_icon(fax_dialog, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(fax_dialog));
+
+ /* set the main vbox */
+ fax_scan_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(fax_scan_vbox), 0);
+ gtk_container_add(GTK_CONTAINER(fax_dialog), fax_scan_vbox);
+ gtk_widget_show(fax_scan_vbox);
+
+ /* fax project */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(fax_scan_vbox), hbox, FALSE, FALSE, 2);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(xsane.shell->window, &mask, xsane.bg_trans, (gchar **) fax_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+
+ text = gtk_entry_new_with_max_length(128);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAXPROJECT);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.fax_project);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_fax_project_changed_callback, NULL);
+
+ xsane.fax_project_entry = text;
+
+ gtk_widget_show(pixmapwidget);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+
+ fax_project_vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(fax_scan_vbox), fax_project_vbox, TRUE, TRUE, 0);
+ gtk_widget_show(fax_project_vbox);
+
+ /* fax receiver */
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(fax_project_vbox), hbox, FALSE, FALSE, 2);
+
+ gtk_widget_realize(fax_dialog);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(fax_dialog->window, &mask, xsane.bg_trans, (gchar **) faxreceiver_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+
+ text = gtk_entry_new_with_max_length(128);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAXRECEIVER);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_fax_receiver_changed_callback, NULL);
+
+ xsane.fax_receiver_entry = text;
+
+ gtk_widget_show(pixmapwidget);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+
+ /* fine mode */
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_FINE_MODE);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_FAX_FINE_MODE);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), xsane.fax_fine_mode);
+ gtk_box_pack_start(GTK_BOX(fax_project_vbox), button, FALSE, FALSE, 2);
+ gtk_widget_show(button);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_fine_mode_callback, NULL);
+
+
+ scrolled_window = gtk_scrolled_window_new(0, 0);
+ gtk_widget_set_usize(scrolled_window, 200, 100);
+ gtk_container_add(GTK_CONTAINER(fax_project_vbox), scrolled_window);
+ gtk_widget_show(scrolled_window);
+
+ list = gtk_list_new();
+/* gtk_list_set_selection_mode(list, GTK_SELECTION_BROWSE); */
+
+ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled_window), list);
+
+ gtk_widget_show(list);
+
+ xsane.fax_list = list;
+
+
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(fax_project_vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_FILE_INSERT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_entry_insert_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_PAGE_SHOW);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_show_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_PAGE_RENAME);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_entry_rename_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_PAGE_DELETE);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_entry_delete_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ xsane_button_new_with_pixmap(fax_dialog->window, hbox, move_up_xpm, 0, (GtkSignalFunc) xsane_fax_entry_move_up_callback, list);
+ xsane_button_new_with_pixmap(fax_dialog->window, hbox, move_down_xpm, 0, (GtkSignalFunc) xsane_fax_entry_move_down_callback, list);
+
+ gtk_widget_show(hbox);
+
+ xsane.fax_project_box = fax_project_vbox;
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(fax_project_vbox, 2);
+ gtk_box_pack_end(GTK_BOX(fax_scan_vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+
+ fax_project_exists_hbox = gtk_hbox_new(FALSE, 2);
+ gtk_box_pack_start(GTK_BOX(hbox), fax_project_exists_hbox, TRUE, TRUE, 0);
+
+ button = gtk_button_new_with_label(BUTTON_SEND_PROJECT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_send, NULL);
+ gtk_box_pack_start(GTK_BOX(fax_project_exists_hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_DELETE_PROJECT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_project_delete, NULL);
+ gtk_box_pack_start(GTK_BOX(fax_project_exists_hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(fax_project_exists_hbox);
+ xsane.fax_project_exists = fax_project_exists_hbox;
+
+ button = gtk_button_new_with_label(BUTTON_CREATE_PROJECT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_project_create, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ xsane.fax_project_not_exists = button;
+
+ xsane.fax_dialog = fax_dialog;
+
+ xsane_fax_project_load();
+
+ gtk_widget_show(fax_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_dialog_close()
+{
+ DBG(DBG_proc, "xsane_fax_dialog_close\n");
+
+ if (xsane.fax_dialog == NULL)
+ {
+ return;
+ }
+
+ gtk_accel_group_detach(xsane.accelerator_group, GTK_OBJECT(xsane.fax_dialog));
+ gtk_widget_destroy(xsane.fax_dialog);
+
+ xsane.fax_dialog = NULL;
+ xsane.fax_list = NULL;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_project_load()
+{
+ FILE *projectfile;
+ char page[256];
+ char buf[256];
+ GtkWidget *list_item;
+ int i;
+ char c;
+
+ DBG(DBG_proc, "xsane_fax_project_load\n");
+
+ gtk_signal_disconnect_by_func(GTK_OBJECT(xsane.fax_receiver_entry), GTK_SIGNAL_FUNC(xsane_fax_receiver_changed_callback), 0);
+ gtk_list_remove_items(GTK_LIST(xsane.fax_list), GTK_LIST(xsane.fax_list)->children);
+
+ snprintf(buf, sizeof(buf), "%s/xsane-fax-list", preferences.fax_project);
+ projectfile = fopen(buf, "rb"); /* read binary (b for win32) */
+
+ if ((!projectfile) || (feof(projectfile)))
+ {
+ snprintf(buf, sizeof(buf), "%s/page-1.ps", preferences.fax_project);
+ xsane.fax_filename=strdup(buf);
+ xsane_update_counter_in_filename(&xsane.fax_filename, FALSE, 0, preferences.filename_counter_len); /* correct counter len */
+
+ xsane.fax_receiver=strdup("");
+ gtk_entry_set_text(GTK_ENTRY(xsane.fax_receiver_entry), (char *) xsane.fax_receiver);
+
+ gtk_widget_set_sensitive(xsane.fax_project_box, FALSE);
+ gtk_widget_hide(xsane.fax_project_exists);
+ gtk_widget_show(xsane.fax_project_not_exists);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), FALSE);
+ }
+ else
+ {
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* first line is receiver phone number or address */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ xsane.fax_receiver=strdup(page);
+ gtk_entry_set_text(GTK_ENTRY(xsane.fax_receiver_entry), (char *) xsane.fax_receiver);
+
+
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* second line is next fax filename */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ snprintf(buf, sizeof(buf), "%s/%s", preferences.fax_project, page);
+ xsane.fax_filename=strdup(buf);
+
+ while (!feof(projectfile))
+ {
+ i=0;
+ c=0;
+
+ while ((i<255) && (c != 10) && (c != EOF))
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1]=0;
+
+ if (c > 1)
+ {
+ list_item = gtk_list_item_new_with_label(page);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(page));
+ gtk_container_add(GTK_CONTAINER(xsane.fax_list), list_item);
+ gtk_widget_show(list_item);
+ }
+ }
+ gtk_widget_set_sensitive(xsane.fax_project_box, TRUE);
+ gtk_widget_show(xsane.fax_project_exists);
+ gtk_widget_hide(xsane.fax_project_not_exists);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), TRUE);
+ }
+
+ if (projectfile)
+ {
+ fclose(projectfile);
+ }
+
+ gtk_signal_connect(GTK_OBJECT(xsane.fax_receiver_entry), "changed", (GtkSignalFunc) xsane_fax_receiver_changed_callback, NULL);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_project_delete()
+{
+ char *page;
+ char file[256];
+ GList *list = (GList *) GTK_LIST(xsane.fax_list)->children;
+ GtkObject *list_item;
+
+ DBG(DBG_proc, "xsane_fax_project_delete\n");
+
+ while (list)
+ {
+ list_item = GTK_OBJECT(list->data);
+ page = strdup((char *) gtk_object_get_data(list_item, "list_item_data"));
+ xsane_convert_text_to_filename(&page);
+ snprintf(file, sizeof(file), "%s/%s.ps", preferences.fax_project, page);
+ free(page);
+ remove(file);
+ list = list->next;
+ }
+ snprintf(file, sizeof(file), "%s/xsane-fax-list", preferences.fax_project);
+ remove(file);
+ snprintf(file, sizeof(file), "%s", preferences.fax_project);
+ rmdir(file);
+
+ xsane_fax_project_load();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_fax_project_save()
+{
+ FILE *projectfile;
+ char *page;
+ char filename[256];
+ GList *list = (GList *) GTK_LIST(xsane.fax_list)->children;
+ GtkObject *list_item;
+
+ DBG(DBG_proc, "xsane_fax_project_save\n");
+
+ umask((mode_t) preferences.directory_umask); /* define new file permissions */
+ mkdir(preferences.fax_project, 0777); /* make sure directory exists */
+
+ snprintf(filename, sizeof(filename), "%s/xsane-fax-list", preferences.fax_project);
+
+ if (xsane_create_secure_file(filename)) /* remove possibly existing symbolic links for security
+*/
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, filename);
+ xsane_back_gtk_error(buf, TRUE);
+ return; /* error */
+ }
+ projectfile = fopen(filename, "wb"); /* write binary (b for win32) */
+
+ if (!projectfile)
+ {
+ xsane_back_gtk_error(ERR_CREATE_FAX_PROJECT, TRUE);
+
+ return;
+ }
+
+ if (xsane.fax_receiver)
+ {
+ fprintf(projectfile, "%s\n", xsane.fax_receiver); /* first line is receiver phone number or address */
+ }
+ else
+ {
+ fprintf(projectfile, "\n");
+ }
+
+ if (xsane.fax_filename)
+ {
+ fprintf(projectfile, "%s\n", strrchr(xsane.fax_filename, '/')+1); /* second line is next fax filename */
+ }
+ else
+ {
+ fprintf(projectfile, "\n");
+ }
+
+
+ while (list)
+ {
+ list_item = GTK_OBJECT(list->data);
+ page = (char *) gtk_object_get_data(list_item, "list_item_data");
+ fprintf(projectfile, "%s\n", page);
+ list = list->next;
+ }
+ fclose(projectfile);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_project_create()
+{
+ DBG(DBG_proc, "xsane_fax_project_create\n");
+
+ if (strlen(preferences.fax_project))
+ {
+ xsane_fax_project_save();
+ xsane_fax_project_load();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_receiver_changed_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_fax_receiver_changed_callback\n");
+
+ if (xsane.fax_receiver)
+ {
+ free((void *) xsane.fax_receiver);
+ }
+ xsane.fax_receiver = strdup(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+ xsane_fax_project_save();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_project_changed_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_fax_project_changed_callback\n");
+
+ if (preferences.fax_project)
+ {
+ free((void *) preferences.fax_project);
+ }
+ preferences.fax_project = strdup(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+ xsane_fax_project_load();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_fine_mode_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_fax_fine_mode_callback\n");
+
+ xsane.fax_fine_mode = (GTK_TOGGLE_BUTTON(widget)->active != 0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_list_entrys_swap(GtkWidget *list_item_1, GtkWidget *list_item_2)
+{
+ char *text1;
+ char *text2;
+
+ DBG(DBG_proc, "xsane_list_entrys_swap\n");
+
+ text1 = (char *) gtk_object_get_data(GTK_OBJECT(list_item_1), "list_item_data");
+ text2 = (char *) gtk_object_get_data(GTK_OBJECT(list_item_2), "list_item_data");
+
+ gtk_label_set(GTK_LABEL(gtk_container_children(GTK_CONTAINER(list_item_1))->data), text2);
+ gtk_label_set(GTK_LABEL(gtk_container_children(GTK_CONTAINER(list_item_2))->data), text1);
+ gtk_object_set_data(GTK_OBJECT(list_item_1), "list_item_data", text2);
+ gtk_object_set_data(GTK_OBJECT(list_item_2), "list_item_data", text1);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_entry_move_up_callback(GtkWidget *widget, gpointer list)
+{
+ GList *select;
+ GList *item = GTK_LIST(list)->children;
+ GtkWidget *list_item_1;
+ GtkWidget *list_item_2;
+ int position;
+ int newpos;
+
+ DBG(DBG_proc, "xsane_fax_entry_move_up\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ list_item_1 = select->data;
+
+ position = gtk_list_child_position(GTK_LIST(list), list_item_1);
+ position--; /* move up */
+ newpos = position;
+
+ if (position >= 0)
+ {
+ while (position>0)
+ {
+ item = item->next;
+ position--;
+ }
+
+ list_item_2 = item->data;
+ if (list_item_2)
+ {
+ xsane_list_entrys_swap(list_item_1, list_item_2);
+ gtk_list_select_item(GTK_LIST(list), newpos);
+ xsane_fax_project_save();
+ }
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_entry_move_down_callback(GtkWidget *widget, gpointer list)
+{
+ GList *select;
+ GList *item = GTK_LIST(list)->children;
+ GtkWidget *list_item_1;
+ GtkWidget *list_item_2;
+ int position;
+ int newpos;
+
+ DBG(DBG_proc, "xsane_fax_entry_move_down\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ list_item_1 = select->data;
+
+ position = gtk_list_child_position(GTK_LIST(list), list_item_1);
+ position++; /* move down */
+ newpos = position;
+
+ while ((position>0) && (item))
+ {
+ item = item->next;
+ position--;
+ }
+
+ if (item)
+ {
+ list_item_2 = item->data;
+ if (list_item_2)
+ {
+ xsane_list_entrys_swap(list_item_1, list_item_2);
+ gtk_list_select_item(GTK_LIST(list), newpos);
+ xsane_fax_project_save();
+ }
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_fax_entry_rename;
+
+static void xsane_fax_entry_rename_button_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_fax_entry_rename\n");
+
+ xsane_fax_entry_rename = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_entry_rename_callback(GtkWidget *widget, gpointer list)
+{
+ GtkWidget *list_item;
+ GList *select;
+ char *oldpage;
+ char *newpage;
+ char oldfile[256];
+ char newfile[256];
+
+ DBG(DBG_proc, "xsane_fax_entry_rename_callback\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ GtkWidget *rename_dialog;
+ GtkWidget *text;
+ GtkWidget *button;
+ GtkWidget *vbox, *hbox;
+ char buf[256];
+
+ list_item = select->data;
+ oldpage = strdup((char *) gtk_object_get_data(GTK_OBJECT(list_item), "list_item_data"));
+
+ xsane_set_sensitivity(FALSE);
+
+ rename_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ xsane_set_window_icon(rename_dialog, 0);
+
+ /* set the main vbox */
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
+ gtk_container_add(GTK_CONTAINER(rename_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(vbox, 2);
+ gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ gtk_window_set_position(GTK_WINDOW(rename_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(rename_dialog), FALSE, FALSE, FALSE);
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_FAX_RENAME);
+ gtk_window_set_title(GTK_WINDOW(rename_dialog), buf);
+ gtk_signal_connect(GTK_OBJECT(rename_dialog), "delete_event", (GtkSignalFunc) xsane_fax_entry_rename_button_callback, (void *) -1);
+ gtk_widget_show(rename_dialog);
+
+ text = gtk_entry_new_with_max_length(64);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_FAXPAGENAME);
+ gtk_entry_set_text(GTK_ENTRY(text), oldpage);
+ gtk_widget_set_usize(text, 300, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), text, TRUE, TRUE, 4);
+ gtk_widget_show(text);
+
+
+ button = gtk_button_new_with_label("OK");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_entry_rename_button_callback, (void *) 1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label("Cancel");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_fax_entry_rename_button_callback, (void *) -1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+
+ xsane_fax_entry_rename = 0;
+
+ while (xsane_fax_entry_rename == 0)
+ {
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ newpage = strdup(gtk_entry_get_text(GTK_ENTRY(text)));
+
+ if (xsane_fax_entry_rename == 1)
+ {
+ gtk_label_set(GTK_LABEL(gtk_container_children(GTK_CONTAINER(list_item))->data), newpage);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(newpage));
+
+ xsane_convert_text_to_filename(&oldpage);
+ xsane_convert_text_to_filename(&newpage);
+ snprintf(oldfile, sizeof(oldfile), "%s/%s.ps", preferences.fax_project, oldpage);
+ snprintf(newfile, sizeof(newfile), "%s/%s.ps", preferences.fax_project, newpage);
+
+ rename(oldfile, newfile);
+
+ xsane_fax_project_save();
+ }
+
+ free(oldpage);
+ free(newpage);
+
+ gtk_widget_destroy(rename_dialog);
+
+ xsane_set_sensitivity(TRUE);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_entry_insert_callback(GtkWidget *widget, gpointer list)
+{
+ GtkWidget *list_item;
+ char filename[1024];
+ char windowname[255];
+
+ DBG(DBG_proc, "xsane_fax_entry_insert_callback\n");
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+
+ xsane_set_sensitivity(FALSE);
+
+ snprintf(windowname, sizeof(windowname), "%s %s %s", xsane.prog_name, WINDOW_FAX_INSERT, preferences.fax_project);
+ filename[0] = 0;
+
+ umask((mode_t) preferences.directory_umask); /* define new file permissions */
+
+ if (!xsane_back_gtk_get_filename(windowname, filename, sizeof(filename), filename, TRUE, FALSE, FALSE)) /* filename is selected */
+ {
+ FILE *sourcefile;
+
+ sourcefile = fopen(filename, "rb"); /* read binary (b for win32) */
+ if (sourcefile) /* file exists */
+ {
+ char buf[1024];
+
+ fgets(buf, 1024, sourcefile);
+
+ if (!strncmp("%!PS", buf, 4))
+ {
+ FILE *destfile;
+
+ /* copy file to project directory */
+ if (xsane_create_secure_file(xsane.fax_filename)) /* remove possibly existing symbolic links for security
+*/
+ {
+ fclose(sourcefile);
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, xsane.fax_filename);
+ xsane_back_gtk_error(buf, TRUE);
+ return; /* error */
+ }
+
+ destfile = fopen(xsane.fax_filename, "wb"); /* write binary (b for win32) */
+
+ if (destfile) /* file is created */
+ {
+ char *extension;
+ char *page;
+
+ fprintf(destfile, "%s\n", buf);
+
+ while (!feof(sourcefile))
+ {
+ fgets(buf, 1024, sourcefile);
+ fprintf(destfile, "%s", buf);
+ }
+
+ fclose(destfile);
+
+
+ /* add filename to fax page list */
+ page = strdup(strrchr(xsane.fax_filename,'/')+1);
+ extension = strrchr(page, '.');
+ if (extension)
+ {
+ *extension = 0;
+ }
+
+ list_item = gtk_list_item_new_with_label(page);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(page));
+ gtk_container_add(GTK_CONTAINER(xsane.fax_list), list_item);
+ gtk_widget_show(list_item);
+
+ xsane_update_counter_in_filename(&xsane.fax_filename, TRUE, 1, preferences.filename_counter_len);
+ xsane_fax_project_save();
+ free(page);
+ }
+ else /* file could not be created */
+ {
+ snprintf(buf, sizeof(buf), "%s %s", ERR_OPEN_FAILED, filename);
+ xsane_back_gtk_decision(ERR_HEADER_ERROR, (gchar **) error_xpm, buf, BUTTON_OK, NULL, TRUE /* wait */);
+ }
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), ERR_FILE_NOT_POSTSCRIPT, filename);
+ xsane_back_gtk_decision(ERR_HEADER_ERROR, (gchar **) error_xpm, buf, BUTTON_OK, NULL, TRUE /* wait */);
+ }
+
+ fclose(sourcefile);
+ }
+ else
+ {
+ char buf[256];
+ snprintf(buf, sizeof(buf), ERR_FILE_NOT_EXISTS, filename);
+ xsane_back_gtk_decision(ERR_HEADER_ERROR, (gchar **) error_xpm, buf, BUTTON_OK, NULL, TRUE /* wait */);
+ }
+ }
+
+ umask(XSANE_DEFAULT_UMASK); /* define new file permissions */
+
+ xsane_set_sensitivity(TRUE);
+ xsane_update_histogram(TRUE /* update raw */);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_entry_delete_callback(GtkWidget *widget, gpointer list)
+{
+ GtkObject *list_item;
+ GList *select;
+ char *page;
+ char file[256];
+
+ DBG(DBG_proc, "xsane_fax_entry_delete_callback\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ list_item = GTK_OBJECT(select->data);
+ page = strdup((char *) gtk_object_get_data(list_item, "list_item_data"));
+ xsane_convert_text_to_filename(&page);
+ snprintf(file, sizeof(file), "%s/%s.ps", preferences.fax_project, page);
+ free(page);
+ remove(file);
+ gtk_widget_destroy(GTK_WIDGET(list_item));
+ xsane_fax_project_save();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_show_callback(GtkWidget *widget, gpointer list)
+{
+ GtkObject *list_item;
+ GList *select;
+ pid_t pid;
+ char *arg[100];
+ char *page;
+ char buf[256];
+ int argnr;
+
+ DBG(DBG_proc, "xsane_fax_entry_show_callback\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ argnr = xsane_parse_options(preferences.fax_viewer, arg);
+
+ list_item = GTK_OBJECT(select->data);
+ page = (char *) gtk_object_get_data(list_item, "list_item_data");
+ page = strdup(page);
+ xsane_convert_text_to_filename(&page);
+ snprintf(buf, sizeof(buf), "%s/%s.ps", preferences.fax_project, page);
+ free(page);
+ arg[argnr++] = buf;
+ arg[argnr] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_FAX_VIEWER, preferences.fax_viewer);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_fax_send()
+{
+ char *page;
+ GList *list = (GList *) GTK_LIST(xsane.fax_list)->children;
+ GtkObject *list_item;
+ pid_t pid;
+ char *arg[1000];
+ char buf[256];
+ int argnr = 0;
+ int i;
+
+ DBG(DBG_proc, "xsane_fax_send\n");
+
+ if (list)
+ {
+ if (!xsane_option_defined(xsane.fax_receiver))
+ {
+ snprintf(buf, sizeof(buf), "%s\n", ERR_SENDFAX_RECEIVER_MISSING);
+ xsane_back_gtk_error(buf, TRUE);
+ return;
+ }
+
+ xsane_clear_histogram(&xsane.histogram_raw);
+ xsane_clear_histogram(&xsane.histogram_enh);
+
+ xsane_set_sensitivity(FALSE);
+
+ argnr = xsane_parse_options(preferences.fax_command, arg);
+
+ if (xsane.fax_fine_mode) /* fine mode */
+ {
+ if (xsane_option_defined(preferences.fax_fine_option))
+ {
+ arg[argnr++] = strdup(preferences.fax_fine_option);
+ }
+ }
+ else /* normal mode */
+ {
+ if (xsane_option_defined(preferences.fax_normal_option))
+ {
+ arg[argnr++] = strdup(preferences.fax_normal_option);
+ }
+ }
+
+ if (xsane_option_defined(preferences.fax_receiver_option))
+ {
+ arg[argnr++] = strdup(preferences.fax_receiver_option);
+ }
+ arg[argnr++] = strdup(xsane.fax_receiver);
+
+ if (xsane_option_defined(preferences.fax_postscript_option))
+ {
+ arg[argnr++] = strdup(preferences.fax_postscript_option);
+ }
+
+ while ((list) && (argnr<999)) /* add pages to options */
+ {
+ list_item = GTK_OBJECT(list->data);
+ page = strdup((char *) gtk_object_get_data(list_item, "list_item_data"));
+ xsane_convert_text_to_filename(&page);
+ snprintf(buf, sizeof(buf), "%s/%s.ps", preferences.fax_project, page);
+ free(page);
+ arg[argnr++] = strdup(buf);
+ list = list->next;
+ }
+
+ arg[argnr] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_FAX_CMD, preferences.fax_command);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+
+ for (i=0; i<argnr; i++)
+ {
+ free(arg[i]);
+ }
+
+ while (pid)
+ {
+ int status = 0;
+ pid_t pid_status = waitpid(pid, &status, WNOHANG);
+
+ if (pid == pid_status)
+ {
+ pid = 0; /* ok, child process has terminated */
+ }
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ xsane_set_sensitivity(TRUE);
+ xsane_update_histogram(TRUE /* update raw */);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#ifdef XSANE_ACTIVATE_MAIL
+
+static void xsane_mail_dialog_delete()
+{
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_dialog()
+{
+ GtkWidget *mail_dialog, *mail_scan_vbox, *mail_project_vbox;
+ GtkWidget *mail_project_exists_hbox, *button;
+ GtkWidget *hbox;
+ GtkWidget *scrolled_window, *list;
+ GtkWidget *pixmapwidget, *text;
+ GtkWidget *vscrollbar;
+ GtkWidget *attachment_frame, *text_frame;
+ GtkWidget *label;
+ GdkPixmap *pixmap;
+ GdkBitmap *mask;
+ char buf[64];
+
+ DBG(DBG_proc, "xsane_mail_dialog\n");
+
+ if (xsane.mail_dialog)
+ {
+ return; /* window already is open */
+ }
+
+ /* GTK_WINDOW_DIALOG looks better but does not place it nice*/
+ mail_dialog = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title(GTK_WINDOW(mail_dialog), buf);
+
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_MAIL_PROJECT);
+ gtk_window_set_title(GTK_WINDOW(mail_dialog), buf);
+ gtk_signal_connect(GTK_OBJECT(mail_dialog), "delete_event", (GtkSignalFunc) xsane_mail_dialog_delete, NULL);
+ xsane_set_window_icon(mail_dialog, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(mail_dialog));
+
+ /* set the main vbox */
+ mail_scan_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(mail_scan_vbox), 0);
+ gtk_container_add(GTK_CONTAINER(mail_dialog), mail_scan_vbox);
+ gtk_widget_show(mail_scan_vbox);
+
+
+ /* mail project */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(mail_scan_vbox), hbox, FALSE, FALSE, 2);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(xsane.shell->window, &mask, xsane.bg_trans, (gchar **) mail_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+
+ text = gtk_entry_new_with_max_length(128);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAILPROJECT);
+ gtk_entry_set_text(GTK_ENTRY(text), (char *) preferences.mail_project);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_mail_project_changed_callback, NULL);
+
+ xsane.mail_project_entry = text;
+
+ gtk_widget_show(pixmapwidget);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+
+ mail_project_vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(mail_scan_vbox), mail_project_vbox, TRUE, TRUE, 0);
+ gtk_widget_show(mail_project_vbox);
+
+
+ /* mail receiver */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(mail_project_vbox), hbox, FALSE, FALSE, 2);
+
+ gtk_widget_realize(mail_dialog);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(mail_dialog->window, &mask, xsane.bg_trans, (gchar **) mailreceiver_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+
+ text = gtk_entry_new_with_max_length(128);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAILRECEIVER);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_mail_receiver_changed_callback, NULL);
+
+ xsane.mail_receiver_entry = text;
+
+ gtk_widget_show(pixmapwidget);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+
+
+ /* subject */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(mail_project_vbox), hbox, FALSE, FALSE, 2);
+
+ gtk_widget_realize(mail_dialog);
+
+ pixmap = gdk_pixmap_create_from_xpm_d(mail_dialog->window, &mask, xsane.bg_trans, (gchar **) subject_xpm);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(hbox), pixmapwidget, FALSE, FALSE, 2);
+ gdk_pixmap_unref(pixmap);
+
+ text = gtk_entry_new_with_max_length(128);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAILSUBJECT);
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 4);
+ gtk_signal_connect(GTK_OBJECT(text), "changed", (GtkSignalFunc) xsane_mail_subject_changed_callback, NULL);
+
+ xsane.mail_subject_entry = text;
+
+ gtk_widget_show(pixmapwidget);
+ gtk_widget_show(text);
+ gtk_widget_show(hbox);
+
+
+ /* email text frame */
+ text_frame = gtk_frame_new(TEXT_MAIL_TEXT);
+ gtk_box_pack_start(GTK_BOX(mail_project_vbox), text_frame, TRUE, TRUE, 2);
+ gtk_widget_show(text_frame);
+
+ /* email text box */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 4);
+ gtk_container_add(GTK_CONTAINER(text_frame), hbox);
+ gtk_widget_show(hbox);
+
+ /* Create the GtkText widget */
+ text = gtk_text_new(NULL, NULL);
+ gtk_text_set_editable(GTK_TEXT(text), TRUE); /* text is editable */
+ gtk_text_set_word_wrap(GTK_TEXT(text), TRUE); /* wrap complete words */
+ gtk_box_pack_start(GTK_BOX(hbox), text, TRUE, TRUE, 0);
+ gtk_widget_show(text);
+ xsane.mail_text_widget = text;
+
+ /* Add a vertical scrollbar to the GtkText widget */
+ vscrollbar = gtk_vscrollbar_new(GTK_TEXT(text)->vadj);
+ gtk_box_pack_start(GTK_BOX(hbox), vscrollbar, FALSE, FALSE, 0);
+ gtk_widget_show(vscrollbar);
+
+
+ /* html mail */
+ button = gtk_check_button_new_with_label(RADIO_BUTTON_HTML_MAIL);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_HTML_MAIL);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), xsane.mail_html_mode);
+ gtk_box_pack_start(GTK_BOX(mail_project_vbox), button, FALSE, FALSE, 2);
+ gtk_widget_show(button);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_html_mode_callback, NULL);
+ xsane.mail_html_mode_widget = button;
+
+ /* attachment frame */
+ attachment_frame = gtk_frame_new(TEXT_ATTACHMENTS);
+ gtk_box_pack_start(GTK_BOX(mail_project_vbox), attachment_frame, FALSE, FALSE, 2);
+ gtk_widget_show(attachment_frame);
+
+ /* attachment list */
+ scrolled_window = gtk_scrolled_window_new(0, 0);
+ gtk_widget_set_usize(scrolled_window, 200, 100);
+ gtk_container_add(GTK_CONTAINER(attachment_frame), scrolled_window);
+ gtk_widget_show(scrolled_window);
+
+ list = gtk_list_new();
+/* gtk_list_set_selection_mode(list, GTK_SELECTION_BROWSE); */
+
+ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled_window), list);
+ gtk_widget_show(list);
+ xsane.mail_list = list;
+
+
+ /* button box, active when project exists */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(mail_project_vbox), hbox, FALSE, FALSE, 2);
+
+ button = gtk_button_new_with_label(BUTTON_IMAGE_SHOW);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_show_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_IMAGE_RENAME);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_entry_rename_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_IMAGE_DELETE);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_entry_delete_callback, list);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ xsane_button_new_with_pixmap(mail_dialog->window, hbox, move_up_xpm, 0, (GtkSignalFunc) xsane_mail_entry_move_up_callback, list);
+ xsane_button_new_with_pixmap(mail_dialog->window, hbox, move_down_xpm, 0, (GtkSignalFunc) xsane_mail_entry_move_down_callback, list);
+
+ gtk_widget_show(hbox);
+
+ xsane.mail_project_box = mail_project_vbox;
+
+
+ /* status info */
+ hbox = gtk_hbox_new(FALSE, 2);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 2);
+ gtk_box_pack_start(GTK_BOX(mail_scan_vbox), hbox, FALSE, FALSE, 2);
+ gtk_widget_show(hbox);
+
+ label = gtk_label_new(TEXT_MAIL_STATUS);
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
+ gtk_widget_show(label);
+
+ label = gtk_label_new("");
+ gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
+ gtk_widget_show(label);
+ xsane.mail_status_label = label;
+
+ xsane_separator_new(mail_scan_vbox, 2);
+
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(mail_project_vbox, 2);
+ gtk_box_pack_end(GTK_BOX(mail_scan_vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+
+ mail_project_exists_hbox = gtk_hbox_new(FALSE, 2);
+ gtk_box_pack_start(GTK_BOX(hbox), mail_project_exists_hbox, TRUE, TRUE, 0);
+
+ button = gtk_button_new_with_label(BUTTON_SEND_PROJECT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_send, NULL);
+ gtk_box_pack_start(GTK_BOX(mail_project_exists_hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label(BUTTON_DELETE_PROJECT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_project_delete, NULL);
+ gtk_box_pack_start(GTK_BOX(mail_project_exists_hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(mail_project_exists_hbox);
+ xsane.mail_project_exists = mail_project_exists_hbox;
+
+ button = gtk_button_new_with_label(BUTTON_CREATE_PROJECT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_project_create, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ xsane.mail_project_not_exists = button;
+
+ xsane.mail_dialog = mail_dialog;
+
+ xsane_mail_project_load();
+
+ gtk_widget_show(mail_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_dialog_close()
+{
+ DBG(DBG_proc, "xsane_mail_dialog_close\n");
+
+ if (xsane.mail_dialog == NULL)
+ {
+ return;
+ }
+
+ gtk_accel_group_detach(xsane.accelerator_group, GTK_OBJECT(xsane.mail_dialog));
+ gtk_widget_destroy(xsane.mail_dialog);
+
+ xsane.mail_dialog = NULL;
+ xsane.mail_list = NULL;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_project_load()
+{
+ FILE *projectfile;
+ char page[256];
+ char buf[256];
+ GtkWidget *list_item;
+ int i;
+ char c;
+
+ DBG(DBG_proc, "xsane_mail_project_load\n");
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ xsane.mail_status = NULL;
+ }
+
+ if (xsane.mail_receiver)
+ {
+ free(xsane.mail_receiver);
+ xsane.mail_receiver = NULL;
+ }
+
+ if (xsane.mail_filename)
+ {
+ free(xsane.mail_filename);
+ xsane.mail_filename = NULL;
+ }
+
+ if (xsane.mail_subject)
+ {
+ free(xsane.mail_subject);
+ xsane.mail_subject = NULL;
+ }
+
+ gtk_signal_disconnect_by_func(GTK_OBJECT(xsane.mail_receiver_entry), GTK_SIGNAL_FUNC(xsane_mail_receiver_changed_callback), 0);
+ gtk_signal_disconnect_by_func(GTK_OBJECT(xsane.mail_subject_entry), GTK_SIGNAL_FUNC(xsane_mail_subject_changed_callback), 0);
+ gtk_signal_disconnect_by_func(GTK_OBJECT(xsane.mail_html_mode_widget), GTK_SIGNAL_FUNC(xsane_mail_html_mode_callback), 0);
+
+ gtk_text_set_point(GTK_TEXT(xsane.mail_text_widget), 0);
+ gtk_text_forward_delete(GTK_TEXT(xsane.mail_text_widget), gtk_text_get_length(GTK_TEXT(xsane.mail_text_widget)));
+ gtk_list_remove_items(GTK_LIST(xsane.mail_list), GTK_LIST(xsane.mail_list)->children);
+
+ snprintf(buf, sizeof(buf), "%s/xsane-mail-list", preferences.mail_project);
+ projectfile = fopen(buf, "rb"); /* read binary (b for win32) */
+
+ if ((!projectfile) || (feof(projectfile)))
+ {
+ snprintf(buf, sizeof(buf), "%s/page-1.png", preferences.mail_project);
+ xsane.mail_filename=strdup(buf);
+ xsane_update_counter_in_filename(&xsane.mail_filename, FALSE, 0, preferences.filename_counter_len); /* correct counter len */
+
+ xsane.mail_status=strdup("not existant");
+ gtk_label_set(GTK_LABEL(xsane.mail_status_label), _(xsane.mail_status));
+
+ xsane.mail_receiver=strdup("");
+ gtk_entry_set_text(GTK_ENTRY(xsane.mail_receiver_entry), (char *) xsane.mail_receiver);
+
+ xsane.mail_subject=strdup("");
+ gtk_entry_set_text(GTK_ENTRY(xsane.mail_subject_entry), (char *) xsane.mail_subject);
+
+ gtk_widget_set_sensitive(xsane.mail_project_box, FALSE);
+ gtk_widget_hide(xsane.mail_project_exists);
+ gtk_widget_show(xsane.mail_project_not_exists);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), FALSE);
+
+ xsane.mail_project_save = 0;
+ }
+ else
+ {
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* first line is mail status */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup(page);
+ gtk_label_set(GTK_LABEL(xsane.mail_status_label), _(xsane.mail_status));
+
+
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* second line is email address */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ xsane.mail_receiver=strdup(page);
+ gtk_entry_set_text(GTK_ENTRY(xsane.mail_receiver_entry), (char *) xsane.mail_receiver);
+
+
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* third line is next mail filename */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ snprintf(buf, sizeof(buf), "%s/%s", preferences.mail_project, page);
+ xsane.mail_filename=strdup(buf);
+
+
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* fourth line is subject */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ xsane.mail_subject=strdup(page);
+ gtk_entry_set_text(GTK_ENTRY(xsane.mail_subject_entry), (char *) xsane.mail_subject);
+
+
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF)) /* fifth line is html/ascii */
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1] = 0;
+
+ if (!strcasecmp("html", page))
+ {
+ xsane.mail_html_mode = 1;
+ }
+ else
+ {
+ xsane.mail_html_mode = 0;
+ }
+
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(xsane.mail_html_mode_widget), xsane.mail_html_mode);
+
+
+ while (!feof(projectfile))
+ {
+ i=0;
+ c=0;
+
+ while ((i<255) && (c != 10) && (c != EOF))
+ {
+ c = fgetc(projectfile);
+ page[i++] = c;
+ }
+ page[i-1]=0;
+
+ if (!strcmp("mailtext:", page))
+ {
+ break; /* mailtext follows */
+ }
+
+ if (c > 1)
+ {
+ list_item = gtk_list_item_new_with_label(page);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(page));
+ gtk_container_add(GTK_CONTAINER(xsane.mail_list), list_item);
+ gtk_widget_show(list_item);
+ }
+ }
+
+ while (!feof(projectfile))
+ {
+ i = fread(buf, 1, sizeof(buf), projectfile);
+ gtk_text_insert(GTK_TEXT(xsane.mail_text_widget), NULL, NULL, NULL, buf, i);
+ }
+
+ if (xsane.mail_status[0] == '*') /* mail project is locked (sending) */
+ {
+ gtk_widget_set_sensitive(xsane.mail_project_box, FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), FALSE);
+ }
+ else
+ {
+ gtk_widget_set_sensitive(xsane.mail_project_box, TRUE);
+ gtk_widget_show(xsane.mail_project_exists);
+ gtk_widget_hide(xsane.mail_project_not_exists);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), TRUE);
+ }
+
+ xsane.mail_project_save = 1;
+ }
+
+ if (projectfile)
+ {
+ fclose(projectfile);
+ }
+
+ gtk_signal_connect(GTK_OBJECT(xsane.mail_html_mode_widget), "clicked", (GtkSignalFunc) xsane_mail_html_mode_callback, NULL);
+ gtk_signal_connect(GTK_OBJECT(xsane.mail_receiver_entry), "changed", (GtkSignalFunc) xsane_mail_receiver_changed_callback, NULL);
+ gtk_signal_connect(GTK_OBJECT(xsane.mail_subject_entry), "changed", (GtkSignalFunc) xsane_mail_subject_changed_callback, NULL);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_project_delete()
+{
+ char *page;
+ char file[256];
+ GList *list = (GList *) GTK_LIST(xsane.mail_list)->children;
+ GtkObject *list_item;
+
+ DBG(DBG_proc, "xsane_mail_project_delete\n");
+
+ while (list)
+ {
+ list_item = GTK_OBJECT(list->data);
+ page = strdup((char *) gtk_object_get_data(list_item, "list_item_data"));
+ xsane_convert_text_to_filename(&page);
+ snprintf(file, sizeof(file), "%s/%s.png", preferences.mail_project, page);
+ free(page);
+ remove(file);
+ list = list->next;
+ }
+ snprintf(file, sizeof(file), "%s/xsane-mail-list", preferences.mail_project);
+ remove(file);
+ snprintf(file, sizeof(file), "%s", preferences.mail_project);
+ rmdir(file);
+
+ xsane_mail_project_load();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_mail_project_update_status()
+{
+ FILE *projectfile;
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s/xsane-mail-list", preferences.mail_project);
+ projectfile = fopen(buf, "r+b"); /* r+ = read and write, position = start of file */
+ snprintf(buf, 32, "%s ", xsane.mail_status); /* fill 32 characters status line */
+ fprintf(projectfile, "%s\n", buf); /* first line is status of mail */
+ fclose(projectfile);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_mail_project_save()
+{
+ FILE *projectfile;
+ GList *list = (GList *) GTK_LIST(xsane.mail_list)->children;
+ GtkObject *list_item;
+ char *image;
+ gchar *mail_text;
+ char filename[256];
+
+ DBG(DBG_proc, "xsane_mail_project_save\n");
+
+ umask((mode_t) preferences.directory_umask); /* define new file permissions */
+ mkdir(preferences.mail_project, 0777); /* make sure directory exists */
+
+ snprintf(filename, sizeof(filename), "%s/xsane-mail-list", preferences.mail_project);
+
+ if (xsane.mail_status)
+ {
+ if (xsane.mail_status[0] == '?')
+ {
+ return;
+ }
+ }
+
+ if (xsane_create_secure_file(filename)) /* remove possibly existing symbolic links for security */
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s %s %s\n", ERR_DURING_SAVE, ERR_CREATE_SECURE_FILE, filename);
+ xsane_back_gtk_error(buf, TRUE);
+ return; /* error */
+ }
+
+ projectfile = fopen(filename, "wb"); /* write binary (b for win32) */
+
+ if (xsane.mail_status)
+ {
+ snprintf(filename, 32, "%s ", xsane.mail_status); /* fill 32 characters status line */
+ fprintf(projectfile, "%s\n", filename); /* first line is status of mail */
+ gtk_label_set(GTK_LABEL(xsane.mail_status_label), _(xsane.mail_status));
+ }
+ else
+ {
+ fprintf(projectfile, " \n"); /* no mail status */
+ gtk_label_set(GTK_LABEL(xsane.mail_status_label), "");
+ }
+
+ if (xsane.mail_receiver)
+ {
+ fprintf(projectfile, "%s\n", xsane.mail_receiver); /* second line is receiver phone number or address */
+ }
+ else
+ {
+ fprintf(projectfile, "\n");
+ }
+
+ if (xsane.mail_filename)
+ {
+ fprintf(projectfile, "%s\n", strrchr(xsane.mail_filename, '/')+1); /* third line is next mail filename */
+ }
+ else
+ {
+ fprintf(projectfile, "\n");
+ }
+
+ if (xsane.mail_subject)
+ {
+ fprintf(projectfile, "%s\n", xsane.mail_subject); /* fourth line is subject */
+ }
+ else
+ {
+ fprintf(projectfile, "\n");
+ }
+
+ if (xsane.mail_html_mode) /* fith line is mode html/ascii */
+ {
+ fprintf(projectfile, "html\n");
+ }
+ else
+ {
+ fprintf(projectfile, "ascii\n");
+ }
+
+
+ while (list)
+ {
+ list_item = GTK_OBJECT(list->data);
+ image = (char *) gtk_object_get_data(list_item, "list_item_data");
+ fprintf(projectfile, "%s\n", image);
+ list = list->next;
+ }
+
+ /* save mail text */
+ fprintf(projectfile, "mailtext:\n");
+ mail_text = gtk_editable_get_chars(GTK_EDITABLE(xsane.mail_text_widget), 0, -1);
+ fprintf(projectfile, "%s", mail_text);
+
+ fclose(projectfile);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_project_create()
+{
+ DBG(DBG_proc, "xsane_mail_project_create\n");
+
+ if (strlen(preferences.mail_project))
+ {
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("created");
+ xsane_mail_project_save();
+ xsane_mail_project_load();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_receiver_changed_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_mail_receiver_changed_callback\n");
+
+ if (xsane.mail_receiver)
+ {
+ free((void *) xsane.mail_receiver);
+ }
+ xsane.mail_receiver = strdup(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_subject_changed_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_mail_subject_changed_callback\n");
+
+ if (xsane.mail_subject)
+ {
+ free((void *) xsane.mail_subject);
+ }
+ xsane.mail_subject = strdup(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_project_changed_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_mail_project_changed_callback\n");
+
+ if (xsane.mail_project_save)
+ {
+ xsane.mail_project_save = 0;
+ xsane_mail_project_save();
+ }
+
+ if (preferences.mail_project)
+ {
+ free((void *) preferences.mail_project);
+ }
+ preferences.mail_project = strdup(gtk_entry_get_text(GTK_ENTRY(widget)));
+
+ xsane_mail_project_load();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_html_mode_callback(GtkWidget * widget)
+{
+ DBG(DBG_proc, "xsane_mail_html_mode_callback\n");
+
+ xsane.mail_html_mode = (GTK_TOGGLE_BUTTON(widget)->active != 0);
+
+ /* we can save it because this routine is only called when the project already exists */
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_entry_move_up_callback(GtkWidget *widget, gpointer list)
+{
+ GList *select;
+ GList *item = GTK_LIST(list)->children;
+ GtkWidget *list_item_1;
+ GtkWidget *list_item_2;
+ int position;
+ int newpos;
+
+ DBG(DBG_proc, "xsane_mail_entry_move_up\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ list_item_1 = select->data;
+
+ position = gtk_list_child_position(GTK_LIST(list), list_item_1);
+ position--; /* move up */
+ newpos = position;
+
+ if (position >= 0)
+ {
+ while (position>0)
+ {
+ item = item->next;
+ position--;
+ }
+
+ list_item_2 = item->data;
+ if (list_item_2)
+ {
+ xsane_list_entrys_swap(list_item_1, list_item_2);
+ gtk_list_select_item(GTK_LIST(list), newpos);
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+ }
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_entry_move_down_callback(GtkWidget *widget, gpointer list)
+{
+ GList *select;
+ GList *item = GTK_LIST(list)->children;
+ GtkWidget *list_item_1;
+ GtkWidget *list_item_2;
+ int position;
+ int newpos;
+
+ DBG(DBG_proc, "xsane_mail_entry_move_down\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ list_item_1 = select->data;
+
+ position = gtk_list_child_position(GTK_LIST(list), list_item_1);
+ position++; /* move down */
+ newpos = position;
+
+ while ((position>0) && (item))
+ {
+ item = item->next;
+ position--;
+ }
+
+ if (item)
+ {
+ list_item_2 = item->data;
+ if (list_item_2)
+ {
+ xsane_list_entrys_swap(list_item_1, list_item_2);
+ gtk_list_select_item(GTK_LIST(list), newpos);
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+ }
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int xsane_mail_entry_rename;
+
+static void xsane_mail_entry_rename_button_callback(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_mail_entry_rename\n");
+
+ xsane_mail_entry_rename = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_entry_rename_callback(GtkWidget *widget, gpointer list)
+{
+ GtkWidget *list_item;
+ GList *select;
+ char *oldpage;
+ char *newpage;
+ char oldfile[256];
+ char newfile[256];
+
+ DBG(DBG_proc, "xsane_mail_entry_rename_callback\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ GtkWidget *rename_dialog;
+ GtkWidget *text;
+ GtkWidget *button;
+ GtkWidget *vbox, *hbox;
+ char buf[256];
+
+ list_item = select->data;
+ oldpage = strdup((char *) gtk_object_get_data(GTK_OBJECT(list_item), "list_item_data"));
+
+ xsane_set_sensitivity(FALSE);
+
+ rename_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ xsane_set_window_icon(rename_dialog, 0);
+
+ /* set the main vbox */
+ vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);
+ gtk_container_add(GTK_CONTAINER(rename_dialog), vbox);
+ gtk_widget_show(vbox);
+
+ /* set the main hbox */
+ hbox = gtk_hbox_new(FALSE, 0);
+ xsane_separator_new(vbox, 2);
+ gtk_box_pack_end(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ gtk_window_set_position(GTK_WINDOW(rename_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(rename_dialog), FALSE, FALSE, FALSE);
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, WINDOW_MAIL_RENAME);
+ gtk_window_set_title(GTK_WINDOW(rename_dialog), buf);
+ gtk_signal_connect(GTK_OBJECT(rename_dialog), "delete_event", (GtkSignalFunc) xsane_mail_entry_rename_button_callback, (void *) -1);
+ gtk_widget_show(rename_dialog);
+
+ text = gtk_entry_new_with_max_length(64);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, text, DESC_MAILIMAGENAME);
+ gtk_entry_set_text(GTK_ENTRY(text), oldpage);
+ gtk_widget_set_usize(text, 300, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), text, TRUE, TRUE, 4);
+ gtk_widget_show(text);
+
+
+ button = gtk_button_new_with_label("OK");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_entry_rename_button_callback, (void *) 1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ button = gtk_button_new_with_label("Cancel");
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_mail_entry_rename_button_callback, (void *) -1);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+
+ xsane_mail_entry_rename = 0;
+
+ while (xsane_mail_entry_rename == 0)
+ {
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+ }
+
+ newpage = strdup(gtk_entry_get_text(GTK_ENTRY(text)));
+
+ if (xsane_mail_entry_rename == 1)
+ {
+ gtk_label_set(GTK_LABEL(gtk_container_children(GTK_CONTAINER(list_item))->data), newpage);
+ gtk_object_set_data(GTK_OBJECT(list_item), "list_item_data", strdup(newpage));
+
+ xsane_convert_text_to_filename(&oldpage);
+ xsane_convert_text_to_filename(&newpage);
+ snprintf(oldfile, sizeof(oldfile), "%s/%s.png", preferences.mail_project, oldpage);
+ snprintf(newfile, sizeof(newfile), "%s/%s.png", preferences.mail_project, newpage);
+
+ rename(oldfile, newfile);
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+ }
+
+ free(oldpage);
+ free(newpage);
+
+ gtk_widget_destroy(rename_dialog);
+
+ xsane_set_sensitivity(TRUE);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_entry_delete_callback(GtkWidget *widget, gpointer list)
+{
+ GtkObject *list_item;
+ GList *select;
+ char *page;
+ char file[256];
+
+ DBG(DBG_proc, "xsane_mail_entry_delete_callback\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ list_item = GTK_OBJECT(select->data);
+ page = strdup((char *) gtk_object_get_data(list_item, "list_item_data"));
+ xsane_convert_text_to_filename(&page);
+ snprintf(file, sizeof(file), "%s/%s.png", preferences.mail_project, page);
+ free(page);
+ remove(file);
+ gtk_widget_destroy(GTK_WIDGET(list_item));
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("changed");
+ xsane_mail_project_save();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_show_callback(GtkWidget *widget, gpointer list)
+{
+ GtkObject *list_item;
+ GList *select;
+ pid_t pid;
+ char *arg[100];
+ char *page;
+ char buf[256];
+ int argnr;
+
+ DBG(DBG_proc, "xsane_mail_entry_show_callback\n");
+
+ select = GTK_LIST(list)->selection;
+ if (select)
+ {
+ argnr = xsane_parse_options(preferences.mail_viewer, arg);
+
+ list_item = GTK_OBJECT(select->data);
+ page = (char *) gtk_object_get_data(list_item, "list_item_data");
+ page = strdup(page);
+ xsane_convert_text_to_filename(&page);
+ snprintf(buf, sizeof(buf), "%s/%s.png", preferences.mail_project, page);
+ free(page);
+ arg[argnr++] = buf;
+ arg[argnr] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_MAIL_VIEWER, preferences.mail_viewer);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_create_mail(int fd)
+{
+ FILE *attachment_file;
+ FILE *projectfile;
+ char *boundary="-----partseparator";
+ char *image_filename;
+ char *mail_text = NULL;
+ char *mail_text_pos = NULL;
+ char **attachment_filename = NULL;
+ char c;
+ char buf[256];
+ char filename[256];
+ char content_id[256];
+ char image[256];
+ int i, j;
+ int attachments = 0;
+ int use_attachment = 0;
+ int mail_text_size = 0;
+
+ snprintf(buf, sizeof(buf), "%s/xsane-mail-list", preferences.mail_project);
+ projectfile = fopen(buf, "rb"); /* read binary (b for win32) */
+
+ if ((!projectfile) || (feof(projectfile)))
+ {
+ DBG(DBG_error, "could not open mail project file %s\n", buf);
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("could not read mailproject");
+ xsane_mail_project_update_status();
+
+ return;
+ }
+
+ for (i=0; i<5; i++) /* skip 5 lines */
+ {
+ j=0;
+ c=0;
+ while ((j<255) && (c != 10) && (c != EOF)) /* first line is mail status */
+ {
+ c = fgetc(projectfile);
+ j++;
+ }
+ }
+
+ DBG(DBG_info, "reading list of attachments:\n");
+ /* read list of attachments */
+ while (!feof(projectfile))
+ {
+ /* read next attachment line */
+ i=0;
+ c=0;
+ while ((i<255) && (c != 10) && (c != EOF))
+ {
+ c = fgetc(projectfile);
+ image[i++] = c;
+ }
+ image[i-1]=0;
+
+ if (strcmp("mailtext:", image) && (c > 1))
+ {
+ DBG(DBG_info, " - %s\n", image);
+ attachment_filename = realloc(attachment_filename, (attachments+1)*sizeof(void *));
+ attachment_filename[attachments++] = strdup(image);
+ }
+ else
+ {
+ break;
+ }
+ }
+
+ /* read mail text */
+ while (!feof(projectfile))
+ {
+ mail_text = realloc(mail_text, mail_text_size+1024); /* increase mail_text by 1KB */
+ mail_text_size += fread(mail_text+mail_text_size, 1, 1024, projectfile); /* read next KB */
+ }
+ DBG(DBG_info, "%d bytes mailtext read\n", mail_text_size);
+
+ mail_text_pos = mail_text;
+
+ if (xsane.mail_html_mode) /* create html mail */
+ {
+ DBG(DBG_info, "sending mail in html format\n");
+
+ write_mail_header(fd, preferences.mail_from, preferences.mail_reply_to, xsane.mail_receiver, xsane.mail_subject, boundary, 1 /* related */);
+ write_mail_mime_html(fd, boundary);
+
+ DBG(DBG_info, "sending mail text\n");
+ while (*mail_text_pos != 0)
+ {
+ if (!strncasecmp("<image>", mail_text_pos, 7)) /* insert image */
+ {
+ mail_text_pos += 6; /* <image> is 7 characters, 6 additional ones */
+
+ if (use_attachment < attachments)
+ {
+ image_filename = strdup(attachment_filename[use_attachment++]);
+ xsane_convert_text_to_filename(&image_filename);
+ DBG(DBG_info, "inserting image cid for %s\n", image_filename);
+ snprintf(content_id, sizeof(content_id), "%s", image_filename); /* content_id */
+ snprintf(buf, sizeof(buf), "<p><img SRC=\"cid:%s\">\n", content_id);
+ write(fd, buf, strlen(buf));
+ free(image_filename);
+ }
+ else /* more images selected than available */
+ {
+ }
+ }
+ else if (*mail_text_pos == 10) /* new line */
+ {
+ snprintf(buf, sizeof(buf), "<br>\n");
+ write(fd, buf, strlen(buf));
+ }
+ else
+ {
+ write(fd, mail_text_pos, 1);
+ }
+ mail_text_pos++;
+ }
+
+ while (use_attachment < attachments) /* append not already referenced images */
+ {
+ image_filename = strdup(attachment_filename[use_attachment++]);
+ xsane_convert_text_to_filename(&image_filename);
+ DBG(DBG_info, "appending image cid for %s\n", image_filename);
+ snprintf(content_id, sizeof(content_id), "%s", image_filename); /* content_id */
+ snprintf(buf, sizeof(buf), "<p><img SRC=\"cid:%s\">\n", content_id);
+ write(fd, buf, strlen(buf));
+ free(image_filename);
+ }
+
+ snprintf(buf, sizeof(buf), "</html>\n");
+ write(fd, buf, strlen(buf));
+
+
+ for (i=0; i<attachments; i++)
+ {
+ image_filename = strdup(attachment_filename[i]);
+ snprintf(filename, sizeof(filename), "%s.png", image_filename);
+
+ xsane_convert_text_to_filename(&image_filename);
+ snprintf(content_id, sizeof(content_id), "%s", image_filename); /* content_id */
+ snprintf(buf, sizeof(buf), "%s/%s.png", preferences.mail_project, image_filename);
+ attachment_file = fopen(buf, "rb"); /* read, b=binary for win32 */
+
+ if (attachment_file)
+ {
+ DBG(DBG_info, "attaching png file \"%s\"\n", image_filename);
+ write_mail_attach_image_png(fd, boundary, content_id, attachment_file, filename);
+ }
+ else /* could not open attachment file */
+ {
+ DBG(DBG_error, "could not oppen attachment png file \"%s\"\n", image_filename);
+ }
+
+ free(image_filename);
+ free(attachment_filename[i]);
+ }
+ free(attachment_filename);
+
+ write_mail_footer(fd, boundary);
+ }
+ else /* ascii mail */
+ {
+ DBG(DBG_info, "sending mail in ascii format\n");
+
+ write_mail_header(fd, preferences.mail_from, preferences.mail_reply_to, xsane.mail_receiver, xsane.mail_subject, boundary, 0 /* not related */);
+ write_mail_mime_ascii(fd, boundary);
+
+ write(fd, mail_text, strlen(mail_text));
+ write(fd, "\n\n", 2);
+
+ for (i=0; i<attachments; i++)
+ {
+ image_filename = strdup(attachment_filename[i]);
+ snprintf(filename, sizeof(filename), "%s.png", image_filename);
+
+ xsane_convert_text_to_filename(&image_filename);
+ snprintf(content_id, sizeof(content_id), "%s", image_filename); /* content_id */
+ snprintf(buf, sizeof(buf), "%s/%s.png", preferences.mail_project, image_filename);
+ attachment_file = fopen(buf, "rb"); /* read, b=binary for win32 */
+
+ if (attachment_file)
+ {
+ DBG(DBG_info, "attaching png file \"%s\"\n", image_filename);
+ write_mail_attach_image_png(fd, boundary, content_id, attachment_file, filename);
+ }
+ else /* could not open attachment file */
+ {
+ DBG(DBG_error, "could not oppen attachment png file \"%s\"\n", image_filename);
+ }
+
+ free(image_filename);
+ free(attachment_filename[i]);
+ }
+ free(attachment_filename);
+
+ write_mail_footer(fd, boundary);
+ }
+
+ free(mail_text);
+
+ if (projectfile)
+ {
+ fclose(projectfile);
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_send_process()
+{
+ int fd_socket;
+ int status;
+
+ DBG(DBG_proc, "xsane_mail_send_process\n");
+
+ /* pop3 authentification */
+ if (preferences.mail_pop3_authentification)
+ {
+ char *password;
+ int i;
+
+ fd_socket = open_socket(preferences.mail_pop3_server, preferences.mail_pop3_port);
+
+ if (fd_socket < 0) /* could not open socket */
+ {
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("pop3 connection failed");
+ xsane_mail_project_update_status();
+
+ return;
+ }
+
+ password = strdup(preferences.mail_pop3_pass);
+
+ for (i=0; i<strlen(password); i++)
+ {
+ password[i] ^= 0x53;
+ }
+
+ status = pop3_login(fd_socket, preferences.mail_pop3_user, password);
+
+ free(password);
+
+ close(fd_socket);
+
+ if (status == -1)
+ {
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("pop3 login failed");
+ xsane_mail_project_update_status();
+
+ return;
+ }
+ }
+
+
+ /* smtp mail */
+ fd_socket = open_socket(preferences.mail_smtp_server, preferences.mail_smtp_port);
+
+ if (fd_socket < 0) /* could not open socket */
+ {
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("smtp connection failed");
+ xsane_mail_project_update_status();
+
+ return;
+ }
+
+ write_smtp_header(fd_socket, preferences.mail_from, xsane.mail_receiver);
+
+ xsane_create_mail(fd_socket); /* create mail and write to socket */
+
+ write_smtp_footer(fd_socket);
+
+ close(fd_socket);
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("sent");
+ xsane_mail_project_update_status();
+ _exit(0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static RETSIGTYPE xsane_mail_send_process_exited()
+{
+ if (xsane.xsane_mode == XSANE_MAIL) /* make sure we still are in email mode */
+ {
+ xsane_mail_project_load(); /* update status of mail project */
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_mail_send()
+{
+ pid_t pid;
+ struct SIGACTION act;
+
+ DBG(DBG_proc, "xsane_mail_send\n");
+
+ gtk_widget_set_sensitive(xsane.mail_project_box, FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(xsane.start_button), FALSE);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("* sending");
+ xsane_mail_project_save();
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ xsane_mail_send_process();
+
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+
+ memset (&act, 0, sizeof (act));
+ act.sa_handler = xsane_mail_send_process_exited;
+ sigaction (SIGCHLD, &act, 0);
+
+ if (xsane.mail_status)
+ {
+ free(xsane.mail_status);
+ }
+ xsane.mail_status = strdup("?");
+}
+
+#endif
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_pref_toggle_tooltips(GtkWidget *widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_pref_toggle_tooltips\n");
+
+ preferences.tooltips_enabled = (GTK_CHECK_MENU_ITEM(widget)->active != 0);
+ xsane_back_gtk_set_tooltips(preferences.tooltips_enabled);
+ xsane_pref_save();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_license(GtkWidget *widget, gpointer data)
+{
+ xsane_display_license(0);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_doc_via_nsr(GtkWidget *widget, gpointer data) /* show via netscape remote */
+{
+ char *name = (char *) data;
+ char buf[256];
+ pid_t pid;
+ char *arg[5];
+ struct stat st;
+ char netscape_lock_path[PATH_MAX];
+
+ DBG(DBG_proc, "xsane_show_doc_via_nsr(%s)\n", name);
+
+ /* at first we have to test if netscape is running */
+ /* a simple way is to take a look at ~/.netscape/lock */
+ /* when this is a link we can assume that netscape is running */
+
+ if (getenv(STRINGIFY(ENVIRONMENT_HOME_DIR_NAME)) != NULL) /* $HOME defined? */
+ {
+ snprintf(netscape_lock_path, sizeof(netscape_lock_path), "%s%c.netscape%clock",
+ getenv(STRINGIFY(ENVIRONMENT_HOME_DIR_NAME)), SLASH, SLASH);
+ }
+ else
+ {
+ *netscape_lock_path = 0; /* empty path */
+ }
+
+#ifdef HAVE_LSTAT
+ if ((strlen(netscape_lock_path) > 0) && (lstat(netscape_lock_path, &st) == 0)) /* netscape is running */
+#else
+ if ((strlen(netscape_lock_path) > 0) && (stat(netscape_lock_path, &st) == 0)) /* netscape is running */
+#endif
+ {
+ DBG(DBG_proc, "xsane_show_doc_via_nsr: netscape is running\n");
+ snprintf(buf, sizeof(buf), "openFile(%s, new-window)", name);
+ arg[0] = "netscape";
+ arg[1] = "-no-about-splash";
+ arg[2] = "-remote";
+ arg[3] = buf;
+ arg[4] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_DOC_VIEWER, preferences.doc_viewer);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+ }
+ else /* netscape not running */
+ {
+ DBG(DBG_proc, "xsane_show_doc_via_nsr: netscape is not running, trying to start netscape\n");
+ arg[0] = "netscape";
+ arg[1] = name;
+ arg[2] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_DOC_VIEWER, preferences.doc_viewer);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+ }
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_show_doc(GtkWidget *widget, gpointer data)
+{
+ char *name = (char *) data;
+ char path[256];
+ pid_t pid;
+ char *arg[3];
+ struct stat st;
+ char *language_dir = NULL;
+
+ DBG(DBG_proc, "xsane_show_doc(%s)\n", name);
+
+ /* translation of language_dir gives the name of the subdirectory in */
+ /* which there may be a translation of a documentation */
+ language_dir = XSANE_LANGUAGE_DIR;
+ snprintf(path, sizeof(path), "%s/%s/%s-doc.html", STRINGIFY(PATH_XSANE_DOC_DIR), language_dir, name);
+ if (stat(path, &st) != 0) /* test if file does exist */
+ {
+ snprintf(path, sizeof(path), "%s/%s-doc.html", STRINGIFY(PATH_XSANE_DOC_DIR), name); /* no, we use original doc */
+ }
+
+ if (!strcmp(preferences.doc_viewer, DOCVIEWER_NETSCAPE))
+ {
+ xsane_show_doc_via_nsr(widget, (void *) path);
+ }
+ else
+ {
+ arg[0] = preferences.doc_viewer;
+ arg[1] = path;
+ arg[2] = 0;
+
+ pid = fork();
+
+ if (pid == 0) /* new process */
+ {
+ DBG(DBG_info, "trying to change user id fo new subprocess:\n");
+ DBG(DBG_info, "old effective uid = %d\n", geteuid());
+ setuid(getuid());
+ DBG(DBG_info, "new effective uid = %d\n", geteuid());
+
+ DBG(DBG_info, "executing %s %s\n", arg[0], arg[1]);
+ execvp(arg[0], arg); /* does not return if successfully */
+ DBG(DBG_error, "%s %s\n", ERR_FAILED_EXEC_DOC_VIEWER, preferences.doc_viewer);
+ _exit(0); /* do not use exit() here! otherwise gtk gets in trouble */
+ }
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *xsane_view_build_menu(void)
+{
+ GtkWidget *menu, *item;
+
+ DBG(DBG_proc, "xsane_view_build_menu\n");
+
+ menu = gtk_menu_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(menu));
+ /* gtk_menu_set_accel_group(GTK_MENU(menu), xsane.accelerator_group); */
+
+ /* show tooltips */
+
+ item = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_TOOLTIPS);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_1, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), preferences.tooltips_enabled);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+ gtk_signal_connect(GTK_OBJECT(item), "toggled", (GtkSignalFunc) xsane_pref_toggle_tooltips, NULL);
+
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* show preview */
+
+ xsane.show_preview_widget = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_PREVIEW);
+ gtk_widget_add_accelerator(xsane.show_preview_widget, "activate", xsane.accelerator_group, GDK_2, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_menu_append(GTK_MENU(menu), xsane.show_preview_widget);
+ gtk_widget_show(xsane.show_preview_widget);
+ gtk_signal_connect(GTK_OBJECT(xsane.show_preview_widget), "toggled", (GtkSignalFunc) xsane_show_preview_callback, NULL);
+
+ /* show histogram */
+
+ xsane.show_histogram_widget = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_HISTOGRAM);
+ gtk_widget_add_accelerator(xsane.show_histogram_widget, "activate", xsane.accelerator_group, GDK_3, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_histogram_widget), preferences.show_histogram);
+ gtk_menu_append(GTK_MENU(menu), xsane.show_histogram_widget);
+ gtk_widget_show(xsane.show_histogram_widget);
+ gtk_signal_connect(GTK_OBJECT(xsane.show_histogram_widget), "toggled", (GtkSignalFunc) xsane_show_histogram_callback, NULL);
+
+
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+ /* show gamma */
+
+ xsane.show_gamma_widget = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_GAMMA);
+ gtk_widget_add_accelerator(xsane.show_gamma_widget, "activate", xsane.accelerator_group, GDK_4, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_gamma_widget), preferences.show_gamma);
+ gtk_menu_append(GTK_MENU(menu), xsane.show_gamma_widget);
+ gtk_widget_show(xsane.show_gamma_widget);
+ gtk_signal_connect(GTK_OBJECT(xsane.show_gamma_widget), "toggled", (GtkSignalFunc) xsane_show_gamma_callback, NULL);
+#endif
+
+
+ /* show standard options */
+
+ xsane.show_standard_options_widget = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_STANDARDOPTIONS);
+ gtk_widget_add_accelerator(xsane.show_standard_options_widget, "activate", xsane.accelerator_group, GDK_5, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_standard_options_widget), preferences.show_standard_options);
+ gtk_menu_append(GTK_MENU(menu), xsane.show_standard_options_widget);
+ gtk_widget_show(xsane.show_standard_options_widget);
+ gtk_signal_connect(GTK_OBJECT(xsane.show_standard_options_widget), "toggled",
+ (GtkSignalFunc) xsane_show_standard_options_callback, NULL);
+
+
+ /* show advanced options */
+
+ xsane.show_advanced_options_widget = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_ADVANCEDOPTIONS);
+ gtk_widget_add_accelerator(xsane.show_advanced_options_widget, "activate", xsane.accelerator_group, GDK_6, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_advanced_options_widget), preferences.show_advanced_options);
+ gtk_menu_append(GTK_MENU(menu), xsane.show_advanced_options_widget);
+ gtk_widget_show(xsane.show_advanced_options_widget);
+ gtk_signal_connect(GTK_OBJECT(xsane.show_advanced_options_widget), "toggled",
+ (GtkSignalFunc) xsane_show_advanced_options_callback, NULL);
+
+ return menu;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *xsane_pref_build_menu(void)
+{
+ GtkWidget *menu, *item, *submenu, *subitem;
+
+ DBG(DBG_proc, "xsane_pref_build_menu\n");
+
+ menu = gtk_menu_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(menu));
+
+
+ /* XSane setup dialog */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_SETUP);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_S, GDK_SHIFT_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_setup_dialog, NULL);
+ gtk_widget_show(item);
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+#ifdef XSANE_TEST
+ /* XSane batch scan dialog */
+
+ item = gtk_menu_item_new_with_label("Batch scan");
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_batch_scan_dialog, NULL);
+ gtk_widget_show(item);
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+#endif
+
+
+ /* length unit */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_LENGTH_UNIT);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+ submenu = gtk_menu_new();
+
+ subitem = gtk_check_menu_item_new_with_label(SUBMENU_ITEM_LENGTH_MILLIMETERS);
+ gtk_menu_append(GTK_MENU(submenu), subitem);
+ if ( (preferences.length_unit > 0.9) && (preferences.length_unit < 1.1))
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(subitem), TRUE);
+ }
+ gtk_signal_connect(GTK_OBJECT(subitem), "activate", (GtkSignalFunc) xsane_set_pref_unit_callback, "mm");
+ gtk_widget_show(subitem);
+ xsane.length_unit_mm = subitem;
+
+ subitem = gtk_check_menu_item_new_with_label(SUBMENU_ITEM_LENGTH_CENTIMETERS);
+ gtk_menu_append(GTK_MENU(submenu), subitem);
+ if ( (preferences.length_unit > 9.9) && (preferences.length_unit < 10.1))
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(subitem), TRUE);
+ }
+ gtk_signal_connect(GTK_OBJECT(subitem), "activate", (GtkSignalFunc) xsane_set_pref_unit_callback, "cm");
+ gtk_widget_show(subitem);
+ xsane.length_unit_cm = subitem;
+
+ subitem = gtk_check_menu_item_new_with_label(SUBMENU_ITEM_LENGTH_INCHES);
+ gtk_menu_append(GTK_MENU(submenu), subitem);
+ if ( (preferences.length_unit > 25.3) && (preferences.length_unit < 25.5))
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(subitem), TRUE);
+ }
+ gtk_signal_connect(GTK_OBJECT(subitem), "activate", (GtkSignalFunc) xsane_set_pref_unit_callback, "in");
+ gtk_widget_show(subitem);
+ xsane.length_unit_in = subitem;
+
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), submenu);
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+ /* update policy */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_UPDATE_POLICY);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+ submenu = gtk_menu_new();
+
+ subitem = gtk_check_menu_item_new_with_label(SUBMENU_ITEM_POLICY_CONTINUOUS);
+ gtk_menu_append(GTK_MENU(submenu), subitem);
+ if (preferences.gtk_update_policy == GTK_UPDATE_CONTINUOUS)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(subitem), TRUE);
+ }
+ gtk_signal_connect(GTK_OBJECT(subitem), "activate", (GtkSignalFunc) xsane_set_update_policy_callback, (void *) GTK_UPDATE_CONTINUOUS);
+ gtk_widget_show(subitem);
+ xsane.update_policy_continu = subitem;
+
+ subitem = gtk_check_menu_item_new_with_label(SUBMENU_ITEM_POLICY_DISCONTINU);
+ gtk_menu_append(GTK_MENU(submenu), subitem);
+ if (preferences.gtk_update_policy == GTK_UPDATE_DISCONTINUOUS)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(subitem), TRUE);
+ }
+ gtk_signal_connect(GTK_OBJECT(subitem), "activate", (GtkSignalFunc) xsane_set_update_policy_callback, (void *) GTK_UPDATE_DISCONTINUOUS);
+ gtk_widget_show(subitem);
+ xsane.update_policy_discont = subitem;
+
+ subitem = gtk_check_menu_item_new_with_label(SUBMENU_ITEM_POLICY_DELAYED);
+ gtk_menu_append(GTK_MENU(submenu), subitem);
+ if (preferences.gtk_update_policy == GTK_UPDATE_DELAYED)
+ {
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(subitem), TRUE);
+ }
+ gtk_signal_connect(GTK_OBJECT(subitem), "activate", (GtkSignalFunc) xsane_set_update_policy_callback, (void *) GTK_UPDATE_DELAYED);
+ gtk_widget_show(subitem);
+ xsane.update_policy_delayed = subitem;
+
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), submenu);
+
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* show resolution list */
+
+ xsane.show_resolution_list_widget = gtk_check_menu_item_new_with_label(MENU_ITEM_SHOW_RESOLUTIONLIST);
+ gtk_widget_add_accelerator(xsane.show_resolution_list_widget, "activate", xsane.accelerator_group, GDK_L, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_resolution_list_widget), preferences.show_resolution_list);
+ gtk_menu_append(GTK_MENU(menu), xsane.show_resolution_list_widget);
+ gtk_widget_show(xsane.show_resolution_list_widget);
+ gtk_signal_connect(GTK_OBJECT(xsane.show_resolution_list_widget), "toggled",
+ (GtkSignalFunc) xsane_show_resolution_list_callback, NULL);
+
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* page orientation */
+
+ item = gtk_check_menu_item_new_with_label(MENU_ITEM_PAGE_ROTATE);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_R, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), preferences.psrotate);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+ gtk_signal_connect(GTK_OBJECT(item), "toggled", (GtkSignalFunc) xsane_page_rotate_callback, NULL);
+
+
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+ /* Save device setting */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_SAVE_DEVICE_SETTINGS);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_P, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_device_preferences_save, NULL);
+ gtk_widget_show(item);
+
+ /* Load device setting */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_LOAD_DEVICE_SETTINGS);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_G, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_device_preferences_load, NULL);
+ gtk_widget_show(item);
+
+ /* insert separator: */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+ /* change working directory */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_CHANGE_WORKING_DIR);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_D, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_change_working_directory, NULL);
+ gtk_widget_show(item);
+
+ return menu;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static GtkWidget *xsane_help_build_menu(void)
+{
+ GtkWidget *menu, *item;
+
+ DBG(DBG_proc, "xsane_help_build_menu\n");
+
+ menu = gtk_menu_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(menu));
+
+
+ /* XSane about dialog */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_ABOUT_XSANE);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_about_dialog, NULL);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F6, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+ /* XSane about translation dialog */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_ABOUT_TRANSLATION);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_about_translation_dialog, NULL);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F7, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+
+ /* separator */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* XSane license */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_XSANE_LICENSE);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_show_license, NULL);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F8, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+
+ /* separator */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* XSane doc -> html viewer */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_XSANE_DOC);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_show_doc, (void *) "sane-xsane");
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F1, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+
+ /* separator */
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* Backend doc -> html viewer */
+
+ if (xsane.backend)
+ {
+ item = gtk_menu_item_new_with_label(MENU_ITEM_BACKEND_DOC);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_show_doc, (void *) xsane.backend);
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F2, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+ }
+
+
+ /* available backends -> html viewer */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_AVAILABLE_BACKENDS);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_show_doc, (void *) "sane-backends");
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F3, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+
+ /* problems -> html viewer */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_PROBLEMS);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_show_doc, (void *) "sane-problems");
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F4, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+ item = gtk_menu_item_new();
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_widget_show(item);
+
+
+ /* scantips -> html viewer */
+
+ item = gtk_menu_item_new_with_label(MENU_ITEM_SCANTIPS);
+ gtk_menu_append(GTK_MENU(menu), item);
+ gtk_signal_connect(GTK_OBJECT(item), "activate", (GtkSignalFunc) xsane_show_doc, (void *) "sane-scantips");
+ gtk_widget_add_accelerator(item, "activate", xsane.accelerator_group, GDK_F5, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_widget_show(item);
+
+ return menu;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_panel_build()
+{
+ GtkWidget *standard_vbox;
+ GtkWidget *advanced_vbox;
+ GtkWidget *parent, *vbox, *button, *label;
+ const SANE_Option_Descriptor *opt;
+ SANE_Handle dev = xsane.dev;
+ double dval, dmin, dmax, dquant;
+ char *buf, str[16], title[256];
+ GSGDialogElement *elem;
+ SANE_Word quant, val;
+ SANE_Status status;
+ SANE_Int num_words;
+ char **str_list;
+ int i, j;
+ int num_vector_opts = 0;
+ int *vector_opts;
+
+ DBG(DBG_proc, "xsane_panel_build\n");
+
+ /* reset well-known options: */
+ xsane.well_known.scanmode = -1;
+ xsane.well_known.scansource = -1;
+ xsane.well_known.preview = -1;
+ xsane.well_known.dpi = -1;
+ xsane.well_known.dpi_x = -1;
+ xsane.well_known.dpi_y = -1;
+ xsane.well_known.coord[xsane_back_gtk_TL_X] = -1;
+ xsane.well_known.coord[xsane_back_gtk_TL_Y] = -1;
+ xsane.well_known.coord[xsane_back_gtk_BR_X] = -1;
+ xsane.well_known.coord[xsane_back_gtk_BR_Y] = -1;
+ xsane.well_known.gamma_vector = -1;
+ xsane.well_known.gamma_vector_r = -1;
+ xsane.well_known.gamma_vector_g = -1;
+ xsane.well_known.gamma_vector_b = -1;
+ xsane.well_known.bit_depth = -1;
+ xsane.well_known.threshold = -1;
+ xsane.well_known.shadow = -1;
+ xsane.well_known.shadow_r = -1;
+ xsane.well_known.shadow_g = -1;
+ xsane.well_known.shadow_b = -1;
+ xsane.well_known.highlight = -1;
+ xsane.well_known.highlight_r = -1;
+ xsane.well_known.highlight_g = -1;
+ xsane.well_known.highlight_b = -1;
+
+
+ /* standard options */
+ xsane.standard_hbox = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(xsane.standard_hbox);
+ standard_vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_widget_show(standard_vbox);
+/* gtk_box_pack_start(GTK_BOX(xsane.standard_hbox), standard_vbox, FALSE, FALSE, 0); */ /* make frame fixed */
+ gtk_box_pack_start(GTK_BOX(xsane.standard_hbox), standard_vbox, TRUE, TRUE, 0); /* make frame sizeable */
+
+ /* advanced options */
+ xsane.advanced_hbox = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(xsane.advanced_hbox);
+ advanced_vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_widget_show(advanced_vbox);
+/* gtk_box_pack_start(GTK_BOX(xsane.advanced_hbox), advanced_vbox, FALSE, FALSE, 0); */ /* make frame fixed */
+ gtk_box_pack_start(GTK_BOX(xsane.advanced_hbox), advanced_vbox, TRUE, TRUE, 0); /* make frame sizeable */
+
+#if 0
+ /* free gamma curve */
+ xsane.gamma_hbox = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(xsane.gamma_hbox);
+ gamma_vbox = gtk_vbox_new(/* homogeneous */ FALSE, 0);
+ gtk_widget_show(gamma_vbox);
+/* gtk_box_pack_start(GTK_BOX(xsane.gamma_hbox), gamma_vbox, FALSE, FALSE, 0); */ /* make frame fixed */
+ gtk_box_pack_start(GTK_BOX(xsane.gamma_hbox), gamma_vbox, TRUE, TRUE, 0); /* make frame sizeable */
+#endif
+
+ vector_opts = alloca(xsane.num_elements * sizeof (int));
+
+ parent = standard_vbox;
+ for (i = 1; i < xsane.num_elements; ++i)
+ {
+ opt = xsane_get_option_descriptor(dev, i);
+ if (!SANE_OPTION_IS_ACTIVE(opt->cap))
+ continue;
+
+ /* pick up well-known options as we go: */
+ if (opt->name)
+ {
+ if (strcmp(opt->name, SANE_NAME_PREVIEW) == 0 && opt->type == SANE_TYPE_BOOL)
+ {
+ xsane.well_known.preview = i;
+ continue;
+ }
+ else if (strcmp(opt->name, SANE_NAME_SCAN_RESOLUTION) == 0
+ && opt->unit == SANE_UNIT_DPI && (opt->type == SANE_TYPE_INT || opt->type == SANE_TYPE_FIXED))
+ xsane.well_known.dpi = i;
+ else if (strcmp(opt->name, SANE_NAME_SCAN_X_RESOLUTION) == 0
+ && opt->unit == SANE_UNIT_DPI && (opt->type == SANE_TYPE_INT || opt->type == SANE_TYPE_FIXED))
+ xsane.well_known.dpi_x = i;
+ else if (strcmp(opt->name, SANE_NAME_SCAN_Y_RESOLUTION) == 0
+ && opt->unit == SANE_UNIT_DPI && (opt->type == SANE_TYPE_INT || opt->type == SANE_TYPE_FIXED))
+ xsane.well_known.dpi_y = i;
+ else if (strcmp (opt->name, SANE_NAME_SCAN_MODE) == 0)
+ xsane.well_known.scanmode = i;
+ else if (strcmp (opt->name, SANE_NAME_SCAN_SOURCE) == 0)
+ xsane.well_known.scansource = i;
+ else if (strcmp (opt->name, SANE_NAME_SCAN_TL_X) == 0)
+ xsane.well_known.coord[xsane_back_gtk_TL_X] = i;
+ else if (strcmp (opt->name, SANE_NAME_SCAN_TL_Y) == 0)
+ xsane.well_known.coord[xsane_back_gtk_TL_Y] = i;
+ else if (strcmp (opt->name, SANE_NAME_SCAN_BR_X) == 0)
+ xsane.well_known.coord[xsane_back_gtk_BR_X] = i;
+ else if (strcmp (opt->name, SANE_NAME_SCAN_BR_Y) == 0)
+ xsane.well_known.coord[xsane_back_gtk_BR_Y] = i;
+ else if (strcmp (opt->name, SANE_NAME_GAMMA_VECTOR) == 0)
+ xsane.well_known.gamma_vector = i;
+ else if (strcmp (opt->name, SANE_NAME_GAMMA_VECTOR_R) == 0)
+ xsane.well_known.gamma_vector_r = i;
+ else if (strcmp (opt->name, SANE_NAME_GAMMA_VECTOR_G) == 0)
+ xsane.well_known.gamma_vector_g = i;
+ else if (strcmp (opt->name, SANE_NAME_GAMMA_VECTOR_B) == 0)
+ xsane.well_known.gamma_vector_b = i;
+ else if (strcmp (opt->name, SANE_NAME_BIT_DEPTH) == 0)
+ xsane.well_known.bit_depth = i;
+ else if (strcmp (opt->name, SANE_NAME_THRESHOLD) == 0)
+ xsane.well_known.threshold = i;
+ else if (strcmp (opt->name, SANE_NAME_HIGHLIGHT) == 0)
+ xsane.well_known.highlight = i;
+ else if (strcmp (opt->name, SANE_NAME_HIGHLIGHT_R) == 0)
+ xsane.well_known.highlight_r = i;
+ else if (strcmp (opt->name, SANE_NAME_HIGHLIGHT_G) == 0)
+ xsane.well_known.highlight_g = i;
+ else if (strcmp (opt->name, SANE_NAME_HIGHLIGHT_B) == 0)
+ xsane.well_known.highlight_b = i;
+ else if (strcmp (opt->name, SANE_NAME_SHADOW) == 0)
+ xsane.well_known.shadow = i;
+ else if (strcmp (opt->name, SANE_NAME_SHADOW_R) == 0)
+ xsane.well_known.shadow_r = i;
+ else if (strcmp (opt->name, SANE_NAME_SHADOW_G) == 0)
+ xsane.well_known.shadow_g = i;
+ else if (strcmp (opt->name, SANE_NAME_SHADOW_B) == 0)
+ xsane.well_known.shadow_b = i;
+ }
+
+ elem = xsane.element + i;
+
+ if (opt->unit == SANE_UNIT_NONE)
+ {
+ snprintf(title, sizeof(title), "%s", _BGT(opt->title));
+ }
+ else
+ {
+ snprintf(title, sizeof(title), "%s [%s]", _BGT(opt->title), xsane_back_gtk_unit_string(opt->unit));
+ }
+
+ switch (opt->type)
+ {
+ case SANE_TYPE_GROUP:
+ /* group a set of options */
+ vbox = standard_vbox;
+ if (opt->cap & SANE_CAP_ADVANCED)
+ {
+ vbox = advanced_vbox;
+ }
+ parent = xsane_back_gtk_group_new(vbox, title);
+ elem->widget = parent;
+ break;
+
+ case SANE_TYPE_BOOL:
+ assert(opt->size == sizeof(SANE_Word));
+ status = xsane_control_option(xsane.dev, i, SANE_ACTION_GET_VALUE, &val, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ goto get_value_failed;
+ }
+ xsane_back_gtk_button_new(parent, title, val, elem, xsane.tooltips, _BGT(opt->desc), SANE_OPTION_IS_SETTABLE(opt->cap));
+ gtk_widget_show(parent->parent);
+ break;
+
+ case SANE_TYPE_INT:
+ if (opt->size != sizeof(SANE_Word))
+ {
+ vector_opts[num_vector_opts++] = i;
+ break;
+ }
+ status = xsane_control_option(xsane.dev, i, SANE_ACTION_GET_VALUE, &val, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ goto get_value_failed;
+ }
+
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_RANGE:
+ if ( (strcmp(opt->name, SANE_NAME_SCAN_RESOLUTION) ) && /* do not show resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_X_RESOLUTION)) && /* do not show x-resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_Y_RESOLUTION)) ) /* do not show y-resolution */
+ {
+ /* use a scale */
+ quant = opt->constraint.range->quant;
+ if (quant == 0)
+ {
+ quant = 1; /* we have integers */
+ }
+
+ xsane_back_gtk_scale_new(parent, title, val, opt->constraint.range->min, opt->constraint.range->max, quant,
+ (opt->cap & SANE_CAP_AUTOMATIC), elem, xsane.tooltips, _BGT(opt->desc), SANE_OPTION_IS_SETTABLE(opt->cap));
+ gtk_widget_show(parent->parent);
+ }
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ if ( (strcmp(opt->name, SANE_NAME_SCAN_RESOLUTION) ) && /* do not show resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_X_RESOLUTION)) && /* do not show x-resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_Y_RESOLUTION)) ) /* do not show y-resolution */
+ {
+ /* use a "list-selection" widget */
+ num_words = opt->constraint.word_list[0];
+ str_list = malloc((num_words + 1) * sizeof(str_list[0]));
+ for (j = 0; j < num_words; ++j)
+ {
+ sprintf(str, "%d", opt->constraint.word_list[j + 1]);
+ str_list[j] = strdup(str);
+ }
+ str_list[j] = 0;
+ sprintf(str, "%d", val);
+ xsane_back_gtk_option_menu_new(parent, title, str_list, str, elem, xsane.tooltips, _BGT(opt->desc),
+ SANE_OPTION_IS_SETTABLE(opt->cap));
+ free(str_list);
+ gtk_widget_show(parent->parent);
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_panel_build: %s %d!\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ break;
+ }
+ break;
+
+ case SANE_TYPE_FIXED:
+ if (opt->size != sizeof (SANE_Word))
+ {
+ vector_opts[num_vector_opts++] = i;
+ break;
+ }
+ status = xsane_control_option(xsane.dev, i, SANE_ACTION_GET_VALUE, &val, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ goto get_value_failed;
+ }
+
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_RANGE:
+ if ( (strcmp(opt->name, SANE_NAME_SCAN_RESOLUTION) ) && /* do not show resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_X_RESOLUTION)) && /* do not show x-resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_Y_RESOLUTION)) && /* do not show y-resolution */
+ ((strcmp(opt->name, SANE_NAME_THRESHOLD) || (xsane.lineart_mode == XSANE_LINEART_STANDARD)))
+ /* do not show threshold if user wants the slider in the xsane main window */
+ )
+ {
+ /* use a scale */
+ dval = SANE_UNFIX(val);
+ dmin = SANE_UNFIX(opt->constraint.range->min);
+ dmax = SANE_UNFIX(opt->constraint.range->max);
+ dquant = SANE_UNFIX(quant = opt->constraint.range->quant);
+
+ if (opt->unit == SANE_UNIT_MM)
+ {
+ dval /= preferences.length_unit;
+ dmin /= preferences.length_unit;
+ dmax /= preferences.length_unit;
+ dquant /= preferences.length_unit;
+ }
+
+ if (dquant == 0) /* no quantization specified */
+ {
+ dquant = 0.01; /* display x.2 digits */
+ }
+
+ xsane_back_gtk_scale_new(parent, title, dval, dmin, dmax, dquant, (opt->cap & SANE_CAP_AUTOMATIC), elem,
+ xsane.tooltips, _BGT(opt->desc), SANE_OPTION_IS_SETTABLE(opt->cap));
+ gtk_widget_show(parent->parent);
+ }
+ break;
+
+ case SANE_CONSTRAINT_WORD_LIST:
+ if ( (strcmp(opt->name, SANE_NAME_SCAN_RESOLUTION) ) && /* do not show resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_X_RESOLUTION)) && /* do not show x-resolution */
+ (strcmp(opt->name, SANE_NAME_SCAN_Y_RESOLUTION)) ) /* do not show y-resolution */
+ {
+ /* use a "list-selection" widget */
+ num_words = opt->constraint.word_list[0];
+ str_list = malloc ((num_words + 1) * sizeof (str_list[0]));
+ for (j = 0; j < num_words; ++j)
+ {
+ sprintf(str, "%g", SANE_UNFIX(opt->constraint.word_list[j + 1]));
+ str_list[j] = strdup(str);
+ }
+ str_list[j] = 0;
+ sprintf(str, "%g", SANE_UNFIX(val));
+ xsane_back_gtk_option_menu_new(parent, title, str_list, str, elem, xsane.tooltips, _BGT(opt->desc), SANE_OPTION_IS_SETTABLE(opt->cap));
+ free (str_list);
+ gtk_widget_show(parent->parent);
+ }
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_panel_build: %s %d!\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ break;
+ }
+ break;
+
+ case SANE_TYPE_STRING:
+ buf = malloc (opt->size);
+ status = xsane_control_option(xsane.dev, i, SANE_ACTION_GET_VALUE, buf, 0);
+ if (status != SANE_STATUS_GOOD)
+ {
+ free (buf);
+ goto get_value_failed;
+ }
+
+ switch (opt->constraint_type)
+ {
+ case SANE_CONSTRAINT_STRING_LIST:
+ if ( (strcmp (opt->name, SANE_NAME_SCAN_MODE) != 0) && /* do not show scanmode */
+ (strcmp (opt->name, SANE_NAME_SCAN_SOURCE) != 0) ) /* do not show scansource */
+ {
+ /* use a "list-selection" widget */
+ xsane_back_gtk_option_menu_new(parent, title, (char **) opt->constraint.string_list, buf,
+ elem, xsane.tooltips, _BGT(opt->desc), SANE_OPTION_IS_SETTABLE(opt->cap));
+ gtk_widget_show (parent->parent);
+ }
+ break;
+
+ case SANE_CONSTRAINT_NONE:
+ xsane_back_gtk_text_entry_new(parent, title, buf, elem, xsane.tooltips, _BGT(opt->desc), SANE_OPTION_IS_SETTABLE(opt->cap));
+ gtk_widget_show (parent->parent);
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_panel_build: %s %d!\n", ERR_UNKNOWN_CONSTRAINT_TYPE, opt->constraint_type);
+ break;
+ }
+ free (buf);
+ break;
+
+ case SANE_TYPE_BUTTON:
+ button = gtk_button_new();
+ gtk_signal_connect(GTK_OBJECT (button), "clicked", (GtkSignalFunc) xsane_back_gtk_push_button_callback, elem);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, _BGT(opt->desc));
+
+ label = gtk_label_new(title);
+ gtk_container_add(GTK_CONTAINER (button), label);
+
+ gtk_box_pack_start(GTK_BOX (parent), button, FALSE, TRUE, 0);
+
+ gtk_widget_show(label);
+ gtk_widget_show(button);
+
+ gtk_widget_set_sensitive(button, SANE_OPTION_IS_SETTABLE(opt->cap));
+
+ elem->widget = button;
+ gtk_widget_show(parent->parent);
+ break;
+
+ default:
+ DBG(DBG_error, "xsane_panel_build: %s %d\n", ERR_UNKNOWN_TYPE, opt->type);
+ break;
+ }
+ continue;
+
+ get_value_failed:
+ {
+ char msg[256];
+
+ sprintf(msg, "%s %s: %s.", ERR_GET_OPTION, opt->name, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(msg, TRUE);
+ }
+ }
+
+ if ((xsane.well_known.dpi_x == -1) && (xsane.well_known.dpi_y != -1))
+ {
+ xsane.well_known.dpi_x = xsane.well_known.dpi;
+ }
+
+ xsane.xsane_hbox = xsane_update_xsane_callback();
+
+ gtk_container_add(GTK_CONTAINER(xsane.xsane_window), xsane.xsane_hbox);
+ gtk_container_add(GTK_CONTAINER(xsane.standard_window), xsane.standard_hbox);
+ gtk_container_add(GTK_CONTAINER(xsane.advanced_window), xsane.advanced_hbox);
+
+ xsane_update_histogram(TRUE /* update raw */);
+ xsane_update_sliders();
+
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+ xsane_update_gamma_dialog();
+#endif
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* connect to backend and create main dialogs:
+ - sane_open
+ - create dialog xsane.shell
+ - build menues
+ - create dialog xsane.standard_options_shell
+ - create dialog xsane.advanced_options_shell
+ - create tooltip style
+ - create dialog xsane.histogram_dialog
+ - create dialog xsane.gamma_dialog
+ - panel_build()
+ - create dialog xsane.preview
+*/
+
+static void xsane_device_dialog(void)
+{
+ GtkWidget *vbox, *hbox, *button, *frame, *infobox;
+ GtkWidget *menubar, *menubar_item;
+ const gchar *devname;
+ char buf[256];
+ char windowname[255];
+ char devicetext[255];
+ char *textptr;
+ GtkWidget *xsane_window;
+ GtkWidget *xsane_vbox_main;
+ GtkWidget *xsane_vbox_standard;
+ GtkWidget *xsane_vbox_advanced;
+ GdkColormap *colormap;
+ SANE_Status status;
+
+ DBG(DBG_proc, "xsane_device_dialog\n");
+
+ devname = xsane.devlist[xsane.selected_dev]->name;
+
+ status = sane_open(devname, (SANE_Handle *) &xsane.dev);
+ if (status != SANE_STATUS_GOOD)
+ {
+ snprintf(buf, sizeof(buf), "%s `%s':\n %s.", ERR_DEVICE_OPEN_FAILED, devname, XSANE_STRSTATUS(status));
+ xsane_back_gtk_error(buf, TRUE);
+ xsane_exit();
+ /* will never come to here */
+ }
+
+ if (xsane_control_option(xsane.dev, 0, SANE_ACTION_GET_VALUE, &xsane.num_elements, 0) != SANE_STATUS_GOOD)
+ {
+ xsane_back_gtk_error(ERR_OPTION_COUNT, TRUE);
+ sane_close(xsane.dev);
+ xsane_exit();
+ /* will never come to here */
+ }
+
+ snprintf(buf, sizeof(buf), "%s", xsane.devlist[xsane.selected_dev]->name); /* generate "sane-BACKENDNAME" */
+ textptr = strrchr(buf, ':'); /* format is midend:midend:midend:backend:device or backend:device */
+ if (textptr)
+ {
+ *textptr = 0; /* erase ":device" at end of text */
+ textptr = strrchr(buf, ':');
+ if (textptr) /* midend:backend:device */
+ {
+ textptr++;
+ }
+ else /* backend:device */
+ {
+ textptr = buf;
+ }
+
+ xsane.backend = malloc(strlen(textptr)+6);
+ sprintf(xsane.backend, "sane-%s", textptr); /* add "sane-" */
+
+ DBG(DBG_info, "Setting backend \"%s\" localedir: %s\n", xsane.backend, STRINGIFY(LOCALEDIR));
+ bindtextdomain(xsane.backend, STRINGIFY(LOCALEDIR)); /* set path for backend translation texts */
+ }
+
+ /* create device-text for window titles */
+
+ snprintf(devicetext, sizeof(devicetext), "%s", xsane.devlist[xsane.selected_dev]->model);
+ textptr = devicetext + strlen(devicetext);
+ while (*(textptr-1) == ' ') /* erase spaces at end of text */
+ {
+ textptr--;
+ }
+
+ *textptr = ':';
+ textptr++;
+ *textptr = 0;
+
+ if (!strncmp(devname, "net:", 4)) /* network device ? */
+ {
+ sprintf(textptr, "net:");
+ textptr = devicetext + strlen(devicetext);
+ }
+
+ snprintf(buf, sizeof(buf), ":%s", devname);
+ snprintf(buf, sizeof(buf), "/%s", (strrchr(buf, ':')+1));
+ sprintf(textptr, (strrchr(buf, '/')+1));
+
+ xsane.device_text = strdup(devicetext);
+
+
+ /* if no preferences filename is given on commandline create one from devicenaname */
+
+ if (!xsane.device_set_filename)
+ {
+ if (!strcmp(xsane.devlist[xsane.selected_dev]->vendor, TEXT_UNKNOWN))
+ {
+ snprintf(buf, sizeof(buf), "%s", xsane.devlist[xsane.selected_dev]->name);
+ }
+ else
+ {
+ snprintf(buf, sizeof(buf), "%s:%s", xsane.devlist[xsane.selected_dev]->vendor, xsane.devlist[xsane.selected_dev]->model);
+ }
+ xsane.device_set_filename = strdup(buf); /* set preferences filename */
+ }
+
+ if (xsane.main_window_fixed == -1) /* no command line option given */
+ {
+ xsane.main_window_fixed = preferences.main_window_fixed;
+ }
+
+
+ /* create the xsane dialog box */
+
+ xsane.shell = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_widget_set_uposition(xsane.shell, XSANE_SHELL_POS_X, XSANE_SHELL_POS_Y);
+ sprintf(windowname, "%s %s %s", xsane.prog_name, XSANE_VERSION, xsane.device_text);
+ gtk_window_set_title(GTK_WINDOW(xsane.shell), (char *) windowname);
+ gtk_signal_connect(GTK_OBJECT(xsane.shell), "delete_event", GTK_SIGNAL_FUNC(xsane_scan_win_delete), NULL);
+
+ xsane_set_window_icon(xsane.shell, 0);
+
+ /* create the xsane main window accelerator table */
+ xsane.accelerator_group = gtk_accel_group_new();
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(xsane.shell));
+
+
+ /* set the main vbox */
+ xsane_window = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_window), 0);
+ gtk_container_add(GTK_CONTAINER(xsane.shell), xsane_window);
+ gtk_widget_show(xsane_window);
+
+ /* create the menubar */
+ menubar = gtk_menu_bar_new();
+ gtk_box_pack_start(GTK_BOX(xsane_window), menubar, FALSE, FALSE, 0);
+
+ /* "Files" submenu: */
+ menubar_item = gtk_menu_item_new_with_label(MENU_FILE);
+ gtk_container_add(GTK_CONTAINER(menubar), menubar_item);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menubar_item), xsane_files_build_menu());
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_F, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(menubar_item);
+
+ /* "Preferences" submenu: */
+ menubar_item = gtk_menu_item_new_with_label(MENU_PREFERENCES);
+ gtk_container_add(GTK_CONTAINER(menubar), menubar_item);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menubar_item), xsane_pref_build_menu());
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_P, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(menubar_item);
+
+ /* "View" submenu: */
+ menubar_item = gtk_menu_item_new_with_label(MENU_VIEW);
+ gtk_container_add(GTK_CONTAINER(menubar), menubar_item);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menubar_item), xsane_view_build_menu());
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_V, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(menubar_item);
+
+
+ /* "Help" submenu: */
+ menubar_item = gtk_menu_item_new_with_label(MENU_HELP);
+ gtk_container_add(GTK_CONTAINER(menubar), menubar_item);
+ gtk_menu_item_right_justify((GtkMenuItem *) menubar_item);
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(menubar_item), xsane_help_build_menu());
+/* gtk_widget_add_accelerator(menubar_item, "select", xsane.accelerator_group, GDK_H, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED); */
+ gtk_widget_show(menubar_item);
+
+ gtk_widget_show(menubar);
+ xsane.menubar = menubar;
+
+
+ if (xsane.main_window_fixed) /* fixed window: use it like it is */
+ {
+ /* shrink grow auto_shrink */
+ gtk_window_set_policy(GTK_WINDOW(xsane.shell), FALSE, FALSE, TRUE); /* auto size */
+
+ xsane_vbox_main = gtk_vbox_new(TRUE, 5); /* we need this to set the wanted borders */
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_vbox_main), 5);
+ gtk_container_add(GTK_CONTAINER(xsane_window), xsane_vbox_main);
+ }
+ else /* scrolled window: create a scrolled window and put it into the xsane dialog box */
+ {
+ gtk_window_set_default_size(GTK_WINDOW(xsane.shell), XSANE_SHELL_WIDTH, XSANE_SHELL_HEIGHT); /* set default size */
+
+ /* shrink grow auto_shrink */
+ gtk_window_set_policy(GTK_WINDOW(xsane.shell), TRUE, TRUE, FALSE); /* allow resizing */
+
+ xsane.main_dialog_scrolled = gtk_scrolled_window_new(0, 0);
+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(xsane.main_dialog_scrolled),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+
+ gtk_container_add(GTK_CONTAINER(xsane_window), xsane.main_dialog_scrolled);
+ gtk_widget_show(xsane.main_dialog_scrolled);
+
+ xsane_vbox_main = gtk_vbox_new(TRUE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_vbox_main), 5);
+ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(xsane.main_dialog_scrolled), xsane_vbox_main);
+ }
+
+ /* create a subwindow so the main dialog keeps its position on rebuilds: */
+ xsane.xsane_window = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_main), xsane.xsane_window, TRUE, TRUE, 0);
+ gtk_widget_show(xsane.xsane_window);
+
+ gtk_widget_show(xsane_vbox_main);
+
+#if 0
+ /* add vendor´s logo */
+ xsane_vendor_pixmap_new(xsane.shell->window, xsane_window);
+#endif
+
+
+ /* create the scanner standard options dialog box */
+
+ xsane.standard_options_shell = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_widget_set_uposition(xsane.standard_options_shell, XSANE_STD_OPTIONS_POS_X, XSANE_STD_OPTIONS_POS_Y);
+ sprintf(windowname, "%s %s", WINDOW_STANDARD_OPTIONS, xsane.device_text);
+ gtk_window_set_title(GTK_WINDOW(xsane.standard_options_shell), (char *) windowname);
+
+ /* shrink grow auto_shrink */
+ gtk_window_set_policy(GTK_WINDOW(xsane.standard_options_shell), FALSE, FALSE, TRUE);
+ gtk_signal_connect(GTK_OBJECT(xsane.standard_options_shell), "delete_event",
+ GTK_SIGNAL_FUNC(xsane_standard_option_win_delete), NULL);
+
+ xsane_set_window_icon(xsane.standard_options_shell, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(xsane.standard_options_shell));
+
+ xsane_vbox_standard = gtk_vbox_new(FALSE, 5); /* has been TRUE before I added backend pixmap */
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_vbox_standard), 5);
+ gtk_container_add(GTK_CONTAINER(xsane.standard_options_shell), xsane_vbox_standard);
+ gtk_widget_show(xsane_vbox_standard);
+
+ /* add vendor´s logo */
+ xsane_vendor_pixmap_new(xsane.standard_options_shell->window, xsane_vbox_standard);
+
+ /* create a subwindow so the standard dialog keeps its position on rebuilds: */
+ xsane.standard_window = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_standard), xsane.standard_window, TRUE, TRUE, 0);
+ gtk_widget_show(xsane.standard_window);
+
+
+ /* create the scanner advanced options dialog box */
+
+ xsane.advanced_options_shell = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_widget_set_uposition(xsane.advanced_options_shell, XSANE_ADV_OPTIONS_POS_X, XSANE_ADV_OPTIONS_POS_Y);
+ sprintf(windowname, "%s %s",WINDOW_ADVANCED_OPTIONS, xsane.device_text);
+ gtk_window_set_title(GTK_WINDOW(xsane.advanced_options_shell), (char *) windowname);
+
+ /* shrink grow auto_shrink */
+ gtk_window_set_policy(GTK_WINDOW(xsane.advanced_options_shell), FALSE, FALSE, TRUE);
+ gtk_signal_connect(GTK_OBJECT(xsane.advanced_options_shell), "delete_event",
+ GTK_SIGNAL_FUNC(xsane_advanced_option_win_delete), NULL);
+
+ xsane_set_window_icon(xsane.advanced_options_shell, 0);
+ gtk_accel_group_attach(xsane.accelerator_group, GTK_OBJECT(xsane.advanced_options_shell));
+
+ xsane_vbox_advanced = gtk_vbox_new(FALSE, 5); /* has been TRUE before I added backend pixmap */
+ gtk_container_set_border_width(GTK_CONTAINER(xsane_vbox_advanced), 5);
+ gtk_container_add(GTK_CONTAINER(xsane.advanced_options_shell), xsane_vbox_advanced);
+ gtk_widget_show(xsane_vbox_advanced);
+
+ /* add vendor´s logo */
+ xsane_vendor_pixmap_new(xsane.advanced_options_shell->window, xsane_vbox_advanced);
+
+ /* create a subwindow so the advanced dialog keeps its position on rebuilds: */
+ xsane.advanced_window = gtk_hbox_new(/* homogeneous */ FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(xsane_vbox_advanced), xsane.advanced_window, TRUE, TRUE, 0);
+ gtk_widget_show(xsane.advanced_window);
+
+
+ /* fill in dialog structure */
+
+ xsane.dev_name = strdup(devname);
+ xsane.element = malloc(xsane.num_elements * sizeof(xsane.element[0]));
+ memset(xsane.element, 0, xsane.num_elements * sizeof(xsane.element[0]));
+
+
+ /* realize xsane main dialog */
+ /* normally a realize should be ok, but then
+ the default size of the scrollwed window is ignored
+ so we use a widget_show in that case */
+
+ if (xsane.main_window_fixed)
+ {
+ gtk_widget_realize(xsane.shell);
+ }
+ else
+ {
+ gtk_widget_show(xsane.shell);
+ /* the disadavantage of this is that the main window does
+ not have the focus when every window is shown */
+ }
+
+
+
+ /* define tooltips colors */
+
+ xsane.tooltips = gtk_tooltips_new();
+ colormap = gdk_window_get_colormap(xsane.shell->window);
+
+/* I don`t know why the following does not work with gtk-1.2.x */
+/* but the gimp has the same problems ;-) */
+ /* use black as foreground: */
+ xsane.tooltips_fg.red = 0;
+ xsane.tooltips_fg.green = 0;
+ xsane.tooltips_fg.blue = 0;
+ gdk_color_alloc(colormap, &xsane.tooltips_fg);
+
+ /* postit yellow (khaki) as background: */
+ xsane.tooltips_bg.red = 61669;
+ xsane.tooltips_bg.green = 59113;
+ xsane.tooltips_bg.blue = 35979;
+ gdk_color_alloc(colormap, &xsane.tooltips_bg);
+
+/* as long as gtk_tooltips_set_colors() does not work : */
+#ifdef BUGGY_GTK_TOOLTIPS_SET_COLORS
+ gtk_tooltips_force_window(xsane.tooltips);
+ {
+ GtkStyle *current_style = gtk_style_copy(gtk_widget_get_style(xsane.tooltips->tip_window));
+
+ current_style->bg[GTK_STATE_NORMAL] = xsane.tooltips_bg;
+ current_style->fg[GTK_STATE_NORMAL] = xsane.tooltips_fg;
+ gtk_widget_set_style(xsane.tooltips->tip_window, current_style);
+ }
+#else
+ gtk_tooltips_set_colors(xsane.tooltips, &xsane.tooltips_bg, &xsane.tooltips_fg);
+#endif
+ xsane_back_gtk_set_tooltips(preferences.tooltips_enabled);
+
+
+
+ /* create histogram dialog and set colors */
+ xsane_create_histogram_dialog(xsane.device_text); /* create the histogram dialog */
+
+#ifdef HAVE_WORKING_GTK_GAMMACURVE
+ /* create gamma dialog and set colors */
+ xsane_create_gamma_dialog(xsane.device_text); /* create the free gamma curve dialog */
+#endif
+
+ /* The bottom area: info frame, progress bar, start and cancel button */
+ xsane_separator_new(xsane_window, 2);
+ hbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_end(GTK_BOX(xsane_window), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+
+ /* vertical box for info frame and progress bar */
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 0);
+ gtk_widget_show(vbox);
+
+
+ /* Info frame */
+ frame = gtk_frame_new(0);
+ gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
+ gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
+ gtk_widget_show(frame);
+
+ infobox = gtk_hbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(infobox), 2);
+ gtk_container_add(GTK_CONTAINER(frame), infobox);
+ gtk_widget_show(infobox);
+
+ xsane.info_label = gtk_label_new(TEXT_INFO_BOX);
+ gtk_box_pack_start(GTK_BOX(infobox), xsane.info_label, TRUE, TRUE, 0);
+ gtk_widget_show(xsane.info_label);
+
+ /* progress bar */
+ xsane.progress_bar = (GtkProgressBar *) gtk_progress_bar_new();
+ gtk_box_pack_start(GTK_BOX(vbox), (GtkWidget *) xsane.progress_bar, TRUE, TRUE, 0);
+ gtk_progress_set_show_text(GTK_PROGRESS(xsane.progress_bar), TRUE);
+ gtk_progress_set_format_string(GTK_PROGRESS(xsane.progress_bar), "");
+ gtk_widget_show(GTK_WIDGET(xsane.progress_bar));
+
+
+ /* vertical box for scan and cancel button */
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 0);
+ gtk_widget_show(vbox);
+
+ /* The Scan button */
+ button = gtk_button_new_with_label(BUTTON_START);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_SCAN_START);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_Return, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_scan_dialog, NULL);
+ gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0);
+ gtk_widget_show(button);
+ xsane.start_button = GTK_OBJECT(button);
+
+ /* The Cancel button */
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ xsane_back_gtk_set_tooltip(xsane.tooltips, button, DESC_SCAN_CANCEL);
+ gtk_widget_add_accelerator(button, "clicked", xsane.accelerator_group, GDK_Escape, 0, GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
+ gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0);
+ gtk_widget_show(button);
+ gtk_widget_set_sensitive(GTK_WIDGET(button), FALSE);
+ xsane.cancel_button = GTK_OBJECT(button);
+
+
+ /* create backend dependend options */
+ xsane_panel_build();
+
+
+ /* create preview dialog */
+ xsane.preview = preview_new();
+ gtk_signal_connect(GTK_OBJECT(xsane.preview->top), "delete_event", GTK_SIGNAL_FUNC(xsane_preview_window_destroyed), NULL);
+
+ xsane_device_preferences_restore(); /* restore device-settings */
+ xsane_set_modus_defaults();
+ xsane_update_param(0);
+ xsane_update_gamma_curve(TRUE);
+
+ gtk_widget_realize(xsane.standard_options_shell); /* is needed for saving window geometry */
+ gtk_widget_realize(xsane.advanced_options_shell);
+
+ if (preferences.show_standard_options)
+ {
+ gtk_widget_show(xsane.standard_options_shell);
+ }
+
+ if (preferences.show_advanced_options)
+ {
+ gtk_widget_show(xsane.advanced_options_shell);
+ }
+
+ gtk_widget_show(xsane.shell); /* call as last so focus is on it */
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ xsane_update_sliders();
+
+ if (xsane.show_preview)
+ {
+ gtk_widget_show(xsane.preview->top);
+ }
+ else
+ {
+ gtk_widget_hide(xsane.preview->top);
+ }
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(xsane.show_preview_widget), xsane.show_preview);
+
+ xsane_set_all_resolutions(); /* make sure resolution, resolution_x and resolution_y are up to date */
+ xsane_define_maximum_output_size(); /* draw maximum output frame in preview window if necessary */
+ xsane_refresh_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_choose_dialog_ok_callback(void)
+{
+ DBG(DBG_proc, "xsane_choose_dialog_ok_callback\n");
+
+ gtk_signal_disconnect_by_func(GTK_OBJECT(xsane.choose_device_dialog), GTK_SIGNAL_FUNC(xsane_exit), 0);
+ gtk_widget_destroy(xsane.choose_device_dialog);
+ xsane_device_dialog();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_select_device_by_key_callback(GtkWidget * widget, gpointer data)
+{
+ DBG(DBG_proc, "xsane_select_device_by_key_callback\n");
+
+ xsane.selected_dev = (int) data;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_select_device_by_mouse_callback(GtkWidget * widget, GdkEventButton *event, gpointer data)
+{
+ DBG(DBG_proc, "xsane_select_device_by_mouse_callback\n");
+
+ xsane.selected_dev = (int) data;
+ if (event->type == GDK_2BUTTON_PRESS && event->button == 1)
+ {
+ xsane_choose_dialog_ok_callback();
+ }
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_choose_device(void)
+{
+ GtkWidget *main_vbox, *vbox, *hbox, *button, *device_frame, *device_vbox, *pixmapwidget, *label;
+ GdkBitmap *mask;
+ GdkPixmap *pixmap;
+ GtkStyle *style;
+ GdkColor *bg_trans;
+ GSList *owner;
+ GtkAccelGroup *device_selection_accelerator_group;
+ gint i;
+ const SANE_Device *adev;
+ char buf[256];
+ char vendor[9];
+ char model[17];
+ char type[20];
+ char filename[PATH_MAX];
+ int j;
+ char *xsane_default_device = NULL;
+ int ndevs;
+
+#define TEXT_NO_VENDOR "no vendor\0"
+#define TEXT_NO_MODEL "no model\0"
+#define TEXT_NO_TYPE "no type\0"
+
+ DBG(DBG_proc, "xsane_choose_device\n");
+
+ xsane_default_device = getenv(XSANE_DEFAULT_DEVICE);
+ if (xsane_default_device)
+ {
+ for (ndevs = 0; xsane.devlist[ndevs]; ++ndevs)
+ {
+ if (!strncmp(xsane.devlist[ndevs]->name, xsane_default_device, strlen(xsane_default_device)))
+ {
+ xsane.selected_dev = ndevs;
+ break;
+ }
+ }
+ }
+
+ xsane.choose_device_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(xsane.choose_device_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(xsane.choose_device_dialog), FALSE, FALSE, FALSE);
+ gtk_signal_connect(GTK_OBJECT(xsane.choose_device_dialog), "destroy", GTK_SIGNAL_FUNC(xsane_exit), NULL);
+ snprintf(buf, sizeof(buf), "%s %s %s", xsane.prog_name, XSANE_VERSION, WINDOW_DEVICE_SELECTION);
+ gtk_window_set_title(GTK_WINDOW(xsane.choose_device_dialog), buf);
+
+ device_selection_accelerator_group = gtk_accel_group_new(); /* do we have to delete it when dialog is closed ? */
+ gtk_accel_group_attach(device_selection_accelerator_group, GTK_OBJECT(xsane.choose_device_dialog));
+
+ main_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 0);
+ gtk_container_add(GTK_CONTAINER(xsane.choose_device_dialog), main_vbox);
+ gtk_widget_show(main_vbox);
+
+ vbox = gtk_vbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(vbox), 3);
+ gtk_box_pack_start(GTK_BOX(main_vbox), vbox, TRUE, TRUE, 0);
+ gtk_widget_show(vbox);
+
+ /* xsane logo */
+ gtk_widget_realize(xsane.choose_device_dialog);
+
+ style = gtk_widget_get_style(xsane.choose_device_dialog);
+ bg_trans = &style->bg[GTK_STATE_NORMAL];
+
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-logo", 0, ".xpm", XSANE_PATH_SYSTEM);
+ pixmap = gdk_pixmap_create_from_xpm(xsane.choose_device_dialog->window, &mask, bg_trans, filename);
+ pixmapwidget = gtk_pixmap_new(pixmap, mask);
+ gtk_box_pack_start(GTK_BOX(vbox), pixmapwidget, FALSE, FALSE, 2);
+ gtk_widget_show(pixmapwidget);
+ gdk_pixmap_unref(pixmap);
+
+ xsane_set_window_icon(xsane.choose_device_dialog, (gchar **) 0);
+
+ snprintf(buf, sizeof(buf), "%s %s\n", XSANE_COPYRIGHT_SIGN, XSANE_COPYRIGHT_TXT);
+ label = gtk_label_new(buf);
+ gtk_widget_show(label);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 2);
+
+ xsane_separator_new(vbox, 5);
+
+
+ /* list the drivers with radiobuttons */
+ device_frame = gtk_frame_new(TEXT_AVAILABLE_DEVICES);
+ gtk_box_pack_start(GTK_BOX(vbox), device_frame, FALSE, FALSE, 2);
+ gtk_widget_show(device_frame);
+
+ device_vbox = gtk_vbox_new(FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(device_vbox), 3);
+ gtk_container_add(GTK_CONTAINER(device_frame), device_vbox);
+
+ owner = 0;
+ for (i = 0; i < xsane.num_of_devs; i++)
+ {
+ adev = xsane.devlist[i];
+
+ if (adev->vendor)
+ {
+ strncpy(vendor, adev->vendor, sizeof(vendor)-1);
+ }
+ else
+ {
+ strncpy(vendor, TEXT_NO_VENDOR, sizeof(vendor)-1);
+ }
+
+ vendor[sizeof(vendor)-1] = 0;
+ for (j = strlen(vendor); j < sizeof(vendor)-1; j++)
+ {
+ vendor[j] = ' ';
+ }
+
+ if (adev->model)
+ {
+ strncpy(model, adev->model, sizeof(model)-1);
+ }
+ else
+ {
+ strncpy(model, TEXT_NO_MODEL, sizeof(model)-1);
+ }
+
+ model[sizeof(model)-1] = 0;
+ for (j = strlen(model); j < sizeof(model)-1; j++)
+ {
+ model[j] = ' ';
+ }
+
+ if (adev->type)
+ {
+ strncpy(type, _(adev->type), sizeof(type)-1); /* allow translation of device type */
+ }
+ else
+ {
+ strncpy(type, TEXT_NO_TYPE, sizeof(type)-1);
+ }
+
+ type[sizeof(type)-1] = 0;
+ for (j = strlen(type); j < sizeof(type)-1; j++)
+ {
+ type[j] = ' ';
+ }
+
+ snprintf(buf, sizeof(buf), "%s %s %s [%s]", vendor, model, type, adev->name);
+ button = gtk_radio_button_new_with_label(owner, (char *) buf);
+
+ if (i<12)
+ {
+ gtk_widget_add_accelerator(button, "clicked", device_selection_accelerator_group, GDK_F1+i, 0, GTK_ACCEL_LOCKED);
+ }
+
+ gtk_signal_connect(GTK_OBJECT(button), "button_press_event",
+ (GtkSignalFunc) xsane_select_device_by_mouse_callback, (void *) (long) i);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked",
+ (GtkSignalFunc) xsane_select_device_by_key_callback, (void *) (long) i);
+ gtk_box_pack_start(GTK_BOX(device_vbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+ owner = gtk_radio_button_group(GTK_RADIO_BUTTON(button));;
+
+ if (i == xsane.selected_dev)
+ {
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (button), TRUE);
+ }
+ }
+ gtk_widget_show(device_vbox);
+
+ /* The bottom row of buttons */
+ hbox = gtk_hbox_new(FALSE, 5);
+ xsane_separator_new(main_vbox, 5);
+ gtk_box_pack_end(GTK_BOX(main_vbox), hbox, FALSE, FALSE, 5);
+ gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
+ gtk_widget_show(hbox);
+
+ /* The OK button */
+ button = gtk_button_new_with_label(BUTTON_OK);
+ GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_choose_dialog_ok_callback, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_grab_default(button);
+ gtk_widget_show(button);
+
+ /* The Cancel button */
+ button = gtk_button_new_with_label(BUTTON_CANCEL);
+ gtk_widget_add_accelerator(button, "clicked", device_selection_accelerator_group, GDK_Escape, 0, GTK_ACCEL_LOCKED);
+ gtk_signal_connect(GTK_OBJECT(button), "clicked", (GtkSignalFunc) xsane_exit, NULL);
+ gtk_box_pack_start(GTK_BOX(hbox), button, TRUE, TRUE, 0);
+ gtk_widget_show(button);
+
+ gtk_widget_show(xsane.choose_device_dialog);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static void xsane_usage(void)
+{
+ printf("XSane %s %s\n", TEXT_VERSION, XSANE_VERSION);
+ printf("%s %s\n\n", XSANE_COPYRIGHT_SIGN, XSANE_COPYRIGHT_TXT);
+ printf("%s %s %s\n\n", TEXT_USAGE, xsane.prog_name, TEXT_USAGE_OPTIONS);
+ printf("%s\n\n", TEXT_HELP);
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+static int xsane_init(int argc, char **argv)
+/* returns 0 - if ok
+ 1 - if license was not accepted
+ 2 - if canceld because xsane was started as root
+ 3 - if wrong sane major version was found */
+{
+ GtkWidget *device_scanning_dialog;
+ GtkWidget *main_vbox;
+ GtkWidget *label;
+ struct stat st;
+ char filename[PATH_MAX];
+ char buf[256];
+
+ DBG(DBG_proc, "xsane_init\n");
+
+#ifndef _WIN32
+ gtk_set_locale();
+#endif
+ gtk_init(&argc, &argv);
+ setlocale(LC_NUMERIC, "C");
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+ gtk_rc_parse(gimp_gtkrc());
+
+ gdk_set_use_xshm(gimp_use_xshm());
+#endif
+
+ /* before we open any windows we have to read the style file */
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-style", 0, ".rc", XSANE_PATH_LOCAL_SANE);
+ if (stat(filename, &st) >= 0)
+ {
+ DBG(DBG_info, "loading %s\n", filename);
+ gtk_rc_parse(filename);
+ }
+ else /* no local xsane-style.rc, look for system file */
+ {
+ xsane_back_gtk_make_path(sizeof(filename), filename, "xsane", 0, "xsane-style", 0, ".rc", XSANE_PATH_SYSTEM);
+ if (stat(filename, &st) >= 0)
+ {
+ DBG(DBG_info, "loading %s\n", filename);
+ gtk_rc_parse(filename);
+ }
+ }
+
+ if (argc > 1)
+ {
+ int ch;
+
+ while((ch = getopt_long(argc, argv, "cd:fghlmnpsvFMN:RV", long_options, 0)) != EOF)
+ {
+ switch(ch)
+ {
+ case 'g': /* This options is set when xsane is called from the */
+ /* GIMP. If xsane is compiled without GIMP support */
+ /* then you get the error message when GIMP does */
+ /* query or tries to start the xsane plugin! */
+#ifndef HAVE_LIBGIMP_GIMP_H
+ printf("%s: %s\n", argv[0], ERR_GIMP_SUPPORT_MISSING);
+ exit(0);
+#endif
+ break;
+
+ case 'v': /* --version */
+ printf("%s-%s %s %s\n", xsane.prog_name, XSANE_VERSION, XSANE_COPYRIGHT_SIGN, XSANE_COPYRIGHT_TXT);
+ printf(" %s %s\n", TEXT_EMAIL, XSANE_EMAIL);
+ printf(" %s %s\n", TEXT_PACKAGE, PACKAGE_VERSION);
+ printf(" %s%d.%d.%d\n", TEXT_GTK_VERSION, GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+ printf(" %s, %s%s\n", TEXT_WITH_GIMP_SUPPORT, TEXT_GIMP_VERSION, GIMP_VERSION);
+#else
+ printf(" %s\n", TEXT_WITHOUT_GIMP_SUPPORT);
+#endif
+
+ printf(" %s ", TEXT_OUTPUT_FORMATS);
+
+#ifdef HAVE_LIBJPEG
+ printf("jpeg, ");
+#endif
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+ printf("png, ");
+#endif
+#endif
+
+ printf("pnm, ");
+ printf("ps, ");
+ printf("raw");
+
+#ifdef SUPPORT_RGBA
+ printf(", rgba");
+#endif
+
+#ifdef HAVE_LIBTIFF
+ printf(", tiff");
+#endif
+ printf("\n");
+ exit(0);
+ break;
+
+ case 'l': /* --license */
+ printf("%s-%s %s %s\n\n", xsane.prog_name, XSANE_VERSION, XSANE_COPYRIGHT_SIGN, XSANE_COPYRIGHT_TXT);
+ printf("%s\n", TEXT_GPL);
+ exit(0);
+ break;
+
+ case 'd': /* --device-settings */
+ xsane.device_set_filename = strdup(optarg);
+ break;
+
+ case 'V': /* --viewer, default */
+ xsane.xsane_mode = XSANE_VIEWER;
+ break;
+
+ case 's': /* --save */
+ xsane.xsane_mode = XSANE_SAVE;
+ break;
+
+ case 'c': /* --copy */
+ xsane.xsane_mode = XSANE_COPY;
+ break;
+
+ case 'f': /* --fax */
+ xsane.xsane_mode = XSANE_FAX;
+ break;
+
+ case 'm': /* --mail */
+ xsane.xsane_mode = XSANE_MAIL;
+ break;
+
+ case 'n': /* --No-mode-selection */
+ xsane.mode_selection = 0;
+ break;
+
+ case 'F': /* --Fixed */
+ xsane.main_window_fixed = 1;
+ break;
+
+ case 'R': /* --Resizeable */
+ xsane.main_window_fixed = 0;
+ break;
+
+ case 'N': /* --No-filenameselection filename */
+ xsane.force_filename = TRUE;
+ xsane.external_filename = strdup(optarg);
+ break;
+
+ case 'p': /* --print-filenames */
+ xsane.print_filenames = TRUE;
+ break;
+
+ case 'M': /* --Medium-calibration */
+ xsane.medium_calibration = TRUE;
+ xsane.no_preview_medium_gamma = TRUE;
+
+ xsane.brightness_min = XSANE_MEDIUM_CALIB_BRIGHTNESS_MIN;
+ xsane.brightness_max = XSANE_MEDIUM_CALIB_BRIGHTNESS_MAX;
+ xsane.contrast_gray_min = XSANE_MEDIUM_CALIB_CONTRAST_MIN;
+ xsane.contrast_min = XSANE_MEDIUM_CALIB_CONTRAST_MIN;
+ xsane.contrast_max = XSANE_MEDIUM_CALIB_CONTRAST_MAX;
+ break;
+
+ case 'h': /* --help */
+ default:
+ xsane_usage();
+ exit(0);
+ }
+ }
+ }
+
+ if (xsane_pref_restore()) /* restore preferences, returns TRUE if license is not accpted yet */
+ {
+ if (xsane_display_license(1)) /* show license and ask for accept/not accept */
+ {
+ DBG(DBG_info, "user did not accept license, we abort\n");
+ return 1; /* User did not accept license */
+ }
+ }
+
+#ifndef HAVE_OS2_H
+ if (!getuid()) /* root ? */
+ {
+ if (xsane_back_gtk_decision(ERR_HEADER_WARNING, (gchar **) warning_xpm, WARN_XSANE_AS_ROOT,
+ BUTTON_CANCEL, BUTTON_CONT_AT_OWN_RISK, TRUE /* wait */) == TRUE)
+ {
+ return 2; /* User selected CANCEL */
+ }
+ }
+#endif
+
+ sane_init(&xsane.sane_backend_versioncode, (void *) xsane_authorization_callback);
+
+ if (SANE_VERSION_MAJOR(xsane.sane_backend_versioncode) != SANE_V_MAJOR)
+ {
+ DBG(DBG_error0, "\n\n"
+ "%s %s:\n"
+ " %s\n"
+ " %s %d\n"
+ " %s %d\n"
+ "%s\n\n",
+ xsane.prog_name, ERR_ERROR,
+ ERR_MAJOR_VERSION_NR_CONFLICT,
+ ERR_XSANE_MAJOR_VERSION, SANE_V_MAJOR,
+ ERR_BACKEND_MAJOR_VERSION, SANE_VERSION_MAJOR(xsane.sane_backend_versioncode),
+ ERR_PROGRAM_ABORTED);
+ return 3;
+ }
+
+ device_scanning_dialog = gtk_window_new(GTK_WINDOW_DIALOG);
+ gtk_window_set_position(GTK_WINDOW(device_scanning_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_policy(GTK_WINDOW(device_scanning_dialog), FALSE, FALSE, FALSE);
+ snprintf(buf, sizeof(buf), "%s %s", xsane.prog_name, XSANE_VERSION);
+ gtk_window_set_title(GTK_WINDOW(device_scanning_dialog), buf);
+
+
+ main_vbox = gtk_vbox_new(FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(main_vbox), 20);
+ gtk_container_add(GTK_CONTAINER(device_scanning_dialog), main_vbox);
+ gtk_widget_show(main_vbox);
+
+ snprintf(buf, sizeof(buf), " %s ", TEXT_SCANNING_DEVICES);
+ label = gtk_label_new(buf);
+ gtk_box_pack_start(GTK_BOX(main_vbox), label, FALSE, FALSE, 2);
+ gtk_widget_show(label);
+
+ xsane_set_window_icon(device_scanning_dialog, 0);
+
+ gtk_widget_show(device_scanning_dialog);
+
+ xsane_widget_test_uposition(device_scanning_dialog);
+
+ /* wait 100 ms to make sure window is displayed */
+ usleep(100000); /* this makes sure that the text "scanning for devices" is displayed */
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ sane_get_devices(&xsane.devlist, SANE_FALSE /* local and network devices */);
+
+
+ gtk_widget_destroy(device_scanning_dialog);
+
+ while (gtk_events_pending())
+ {
+ gtk_main_iteration();
+ }
+
+ /* if devicename is given try to identify it, if not found, open device list */
+ if (optind < argc)
+ {
+ int ndevs;
+
+ for (ndevs = 0; xsane.devlist[ndevs]; ++ndevs)
+ {
+ if (!strncmp(xsane.devlist[ndevs]->name, argv[argc - 1], strlen(argv[argc - 1])))
+ {
+ xsane.selected_dev = ndevs;
+ break;
+ }
+ }
+
+ if ((xsane.selected_dev < 0) && (argc > 1))
+ {
+ static SANE_Device dev;
+ static const SANE_Device *device_list[] = { &dev, 0 };
+
+ memset(&dev, 0, sizeof(dev));
+ dev.name = argv[argc - 1];
+ dev.vendor = TEXT_UNKNOWN;
+ dev.type = TEXT_UNKNOWN;
+ dev.model = TEXT_UNKNOWN;
+
+ xsane.devlist = device_list;
+ xsane.selected_dev = 0;
+ }
+ }
+
+ return 0; /* everything is ok */
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+void xsane_interface(int argc, char **argv)
+{
+ struct SIGACTION act;
+
+ DBG(DBG_proc, "xsane_interface\n");
+
+ xsane.info_label = NULL;
+
+ if (xsane_init(argc, argv)) /* initialize xsane variables if command line option is given, set xsane.selected_dev */
+ {
+ return; /* we have to abort (license not accepted, aborted because xsane runs as root) */
+ }
+
+ for (xsane.num_of_devs = 0; xsane.devlist[xsane.num_of_devs]; ++xsane.num_of_devs); /* count available devices */
+
+ if (xsane.selected_dev >= 0) /* device name is given on cammand line */
+ {
+ xsane_device_dialog(); /* open device xsane.selected_dev */
+ }
+ else /* no device name given on command line */
+ {
+ if (xsane.num_of_devs > 0) /* devices available */
+ {
+ xsane.selected_dev = 0;
+ if (xsane.num_of_devs == 1)
+ {
+ xsane_device_dialog(); /* open device xsane.selected_dev */
+ }
+ else
+ {
+ xsane_choose_device(); /* open device selection window and get device */
+ }
+ }
+ else /* xsane.num_of_devs == 0, no devices available */
+ {
+ char buf[256];
+
+ snprintf(buf, sizeof(buf), "%s: %s\n", xsane.prog_name, ERR_NO_DEVICES);
+ xsane_back_gtk_error(buf, TRUE);
+ xsane_exit();
+ }
+ }
+
+ /* define SIGTERM-handler to make sure that e.g. all temporary files are deleted */
+ /* when xsane gets a SIGTERM signal */
+ memset(&act, 0, sizeof(act));
+ act.sa_handler = xsane_quit_handler;
+ sigaction(SIGTERM, &act, 0);
+
+ gtk_main();
+ sane_exit();
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+int main(int argc, char **argv)
+{
+ DBG_init();
+
+ DBG(DBG_error, "This is xsane version %s\n", XSANE_VERSION);
+
+ memset(&xsane, 0, sizeof(xsane)); /* set all values in xsane to 0 */
+
+ umask(XSANE_DEFAULT_UMASK); /* define permissions of new files */
+
+ xsane.selected_dev = -1; /* no selected device */
+
+ xsane.sensitivity = TRUE;
+
+ xsane.main_window_fixed = -1; /* no command line option given, use preferences or fixed */
+
+ xsane.get_deskrelative_origin = 0;
+
+ xsane.mode = XSANE_STANDALONE;
+ xsane.xsane_mode = XSANE_VIEWER;
+ xsane.lineart_mode = XSANE_LINEART_STANDARD;
+ xsane.xsane_output_format = XSANE_PNM;
+ xsane.mode_selection = 1; /* enable selection of xsane mode */
+
+ xsane.input_tag = -1; /* no input tag */
+
+ xsane.histogram_lines = 1;
+
+ xsane.zoom = 1.0;
+ xsane.zoom_x = 1.0;
+ xsane.zoom_y = 1.0;
+ xsane.resolution = 72.0;
+ xsane.resolution_x = 72.0;
+ xsane.resolution_y = 72.0;
+ xsane.copy_number = 1;
+
+ xsane.medium_shadow_gray = 0.0;
+ xsane.medium_shadow_red = 0.0;
+ xsane.medium_shadow_green = 0.0;
+ xsane.medium_shadow_blue = 0.0;
+ xsane.medium_highlight_gray = 100.0;
+ xsane.medium_highlight_red = 100.0;
+ xsane.medium_highlight_green = 100.0;
+ xsane.medium_highlight_blue = 100.0;
+ xsane.medium_gamma_gray = 1.0;
+ xsane.medium_gamma_red = 1.0;
+ xsane.medium_gamma_green = 1.0;
+ xsane.medium_gamma_blue = 1.0;
+ xsane.medium_negative = 0;
+ xsane.medium_changed = FALSE;
+
+ xsane.brightness_min = XSANE_BRIGHTNESS_MIN;
+ xsane.brightness_max = XSANE_BRIGHTNESS_MAX;
+ xsane.contrast_gray_min = XSANE_CONTRAST_GRAY_MIN;
+ xsane.contrast_min = XSANE_CONTRAST_MIN;
+ xsane.contrast_max = XSANE_CONTRAST_MAX;
+
+ xsane.gamma = 1.0;
+ xsane.gamma_red = 1.0;
+ xsane.gamma_green = 1.0;
+ xsane.gamma_blue = 1.0;
+ xsane.brightness = 0.0;
+ xsane.brightness_red = 0.0;
+ xsane.brightness_green = 0.0;
+ xsane.brightness_blue = 0.0;
+ xsane.contrast = 0.0;
+ xsane.contrast_red = 0.0;
+ xsane.contrast_green = 0.0;
+ xsane.contrast_blue = 0.0;
+ xsane.threshold = 50.0;
+
+ xsane.slider_gray.value[2] = 100.0;
+ xsane.slider_gray.value[1] = 50.0;
+ xsane.slider_gray.value[0] = 0.0;
+ xsane.slider_red.value[2] = 100.0;
+ xsane.slider_red.value[1] = 50.0;
+ xsane.slider_red.value[0] = 0.0;
+ xsane.slider_green.value[2] = 100.0;
+ xsane.slider_green.value[1] = 50.0;
+ xsane.slider_green.value[0] = 0.0;
+ xsane.slider_blue.value[2] = 100.0;
+ xsane.slider_blue.value[1] = 50.0;
+ xsane.slider_blue.value[0] = 0.0;
+
+ xsane.auto_white = 100.0;
+ xsane.auto_gray = 50.0;
+ xsane.auto_black = 0.0;
+
+ xsane.histogram_red = 1;
+ xsane.histogram_green = 1;
+ xsane.histogram_blue = 1;
+ xsane.histogram_int = 1;
+ xsane.histogram_log = 1;
+
+ xsane.xsane_colors = -1; /* unused value to make sure that change of this vlaue is detected */
+ xsane.scanner_gamma_color = FALSE;
+ xsane.scanner_gamma_gray = FALSE;
+ xsane.enhancement_rgb_default = TRUE;
+
+ xsane.adf_page_counter = 0;
+ xsane.print_filenames = FALSE;
+ xsane.force_filename = FALSE;
+
+ xsane.prog_name = strrchr(argv[0], '/');
+ if (xsane.prog_name)
+ {
+ ++xsane.prog_name;
+ }
+ else
+ {
+ xsane.prog_name = argv[0];
+ }
+
+#if 0
+ bindtextdomain(PACKAGE, STRINGIFY(LOCALEDIR));
+ textdomain(PACKAGE);
+#else
+ DBG(DBG_info, "Setting xsane localedir: %s\n", STRINGIFY(LOCALEDIR));
+ bindtextdomain(xsane.prog_name, STRINGIFY(LOCALEDIR));
+ textdomain(xsane.prog_name);
+#endif
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+ {
+ GPrintFunc old_print_func;
+ GPrintFunc old_printerr_func;
+ int result;
+
+ /* Temporarily install a print function that discards all output.
+ This is to avoid annoying "you must run this program under
+ gimp" messages when xsane gets invoked in stand-alone
+ mode. */
+ old_print_func = g_set_print_handler((GPrintFunc) null_print_func);
+ old_printerr_func = g_set_printerr_handler((GPrintFunc) null_print_func);
+
+#ifdef _WIN32
+ /* don`t know why, but win32 does need this */
+ set_gimp_PLUG_IN_INFO_PTR(&PLUG_IN_INFO);
+#endif
+
+#ifdef HAVE_OS2_H
+ /* don`t know why, but os2 does need this one, a bit different to WIN32 */
+ set_gimp_PLUG_IN_INFO(&PLUG_IN_INFO);
+#endif
+ /* gimp_main() returns 1 if xsane wasn't invoked by GIMP */
+ result = gimp_main(argc, argv);
+
+#if 0
+ /* this is the old version that seems to use the compatibility functions */
+ g_set_message_handler(old_print_func);
+ g_set_error_handler(old_printerr_func);
+#else
+ /* this is the new version that I think is the one that should be used */
+ g_set_print_handler(old_print_func);
+ g_set_printerr_handler(old_printerr_func);
+#endif
+
+ if (result)
+ {
+ xsane_interface(argc, argv);
+ }
+ }
+#else
+ xsane_interface(argc, argv);
+#endif
+ return 0;
+}
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
diff --git a/src/xsane.h b/src/xsane.h
new file mode 100644
index 0000000..579bb0c
--- /dev/null
+++ b/src/xsane.h
@@ -0,0 +1,867 @@
+/* xsane -- a graphical (X11, gtk) scanner-oriented SANE frontend
+
+ xsane.h
+
+ Oliver Rauch <Oliver.Rauch@rauch-domain.de>
+ Copyright (C) 1998-2002 Oliver Rauch
+ This file is part of the XSANE package.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef XSANE_H
+#define XSANE_H
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* #define XSANE_TEST */
+/* #define SUPPORT_RGBA */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define XSANE_VERSION "0.84"
+#define XSANE_AUTHOR "Oliver Rauch"
+#define XSANE_COPYRIGHT "Oliver Rauch"
+#define XSANE_DATE "1998-2002"
+#define XSANE_EMAIL "Oliver.Rauch@xsane.org"
+#define XSANE_HOMEPAGE "http://www.xsane.org"
+#define XSANE_COPYRIGHT_TXT XSANE_DATE " " XSANE_COPYRIGHT
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define XSANE_DEBUG_ENVIRONMENT "XSANE_DEBUG"
+
+#define XSANE_DEFAULT_UMASK 0007
+#define XSANE_HOLD_TIME 200
+#define XSANE_CONTINUOUS_HOLD_TIME 10
+#define XSANE_DEFAULT_DEVICE "SANE_DEFAULT_DEVICE"
+
+#ifndef SLASH
+# define SLASH '/'
+#endif
+
+#ifndef XSANE_FIXED_HOME_PATH
+# define XSANE_FIXED_HOME_PATH /tmp
+#endif
+
+#ifndef ENVIRONMENT_HOME_DIR_NAME
+# define ENVIRONMENT_HOME_DIR_NAME HOME
+#endif
+
+#ifndef ENVIRONMENT_TEMP_DIR_NAME
+# define ENVIRONMENT_TEMP_DIR_NAME TMP
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+/* needed for most of the xsane sources: */
+
+#ifdef _AIX
+# include <lalloca.h>
+#endif
+
+#ifdef __hpux
+# include <alloca.h>
+#endif
+
+#include <assert.h>
+#include <errno.h>
+#include <memory.h>
+#include <pwd.h>
+#include <fcntl.h>
+#include <getopt.h>
+#include <math.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <signal.h>
+#include <getopt.h>
+#include <time.h>
+
+#include <sys/stat.h>
+#include <sys/types.h>
+
+#include <locale.h>
+
+#include <sane/sane.h>
+#include <sane/saneopts.h>
+
+#include "../include/config.h"
+#include "../include/sanei_signal.h"
+
+#include "xsane-text.h"
+#include "xsane-fixedtext.h"
+#include "xsane-icons.h"
+#include "xsane-viewer.h"
+
+#include <gdk/gdkkeysyms.h>
+#include <gdk/gdk.h>
+#include <gtk/gtk.h>
+
+#ifdef ENABLE_NLS
+# include <libintl.h>
+# define _(String) gettext (String)
+# ifdef gettext_noop
+# define N_(String) gettext_noop (String)
+# else
+# define N_(String) (String)
+# endif
+#else
+/* Stubs that do something close enough. */
+# define textdomain(String) (String)
+# define gettext(String) (String)
+# define dgettext(Domain,Message) (Message)
+# define dcgettext(Domain,Message,Type) (Message)
+# define bindtextdomain(Domain,Directory) (Domain)
+# define _(String) (String)
+# define N_(String) (String)
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBPNG
+#ifdef HAVE_LIBZ
+# define XSANE_ACTIVATE_MAIL
+#endif
+#endif
+
+#ifdef _WIN32
+# define BUGGY_GTK_TOOLTIPS_SET_COLORS
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+enum
+{
+ XSANE_PATH_LOCAL_SANE = 0,
+ XSANE_PATH_SYSTEM,
+ XSANE_PATH_TMP
+};
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct
+{
+ char *name;
+ float xoffset;
+ float yoffset;
+ float width;
+ float height;
+} pref_default_preset_area_t;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+typedef struct
+ {
+ /* The option number of the well-known options. Each of these may
+ be -1 in case the backend doesn't define the respective option. */
+ int scanmode;
+ int scansource;
+ int preview;
+ int dpi;
+ int dpi_x;
+ int dpi_y;
+ int coord[4];
+ int gamma_vector;
+ int gamma_vector_r;
+ int gamma_vector_g;
+ int gamma_vector_b;
+ int bit_depth;
+ int threshold;
+ int highlight;
+ int highlight_r;
+ int highlight_g;
+ int highlight_b;
+ int shadow;
+ int shadow_r;
+ int shadow_g;
+ int shadow_b;
+ }
+GSGWellKnownOptions;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct
+ {
+ gchar *label;
+ struct GSGDialogElement *elem;
+ gint index;
+ }
+GSGMenuItem;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct GSGDialogElement
+ {
+ GtkWidget *automatic; /* auto button for options that support this */
+ GtkWidget *widget;
+ GtkObject *data;
+ int menu_size; /* # of items in menu (if any) */
+ GSGMenuItem *menu;
+ }
+GSGDialogElement;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct Image_info
+ {
+ int image_width;
+ int image_height;
+
+ int depth;
+ int colors;
+
+ double resolution_x;
+ double resolution_y;
+
+ double gamma;
+ double gamma_red;
+ double gamma_green;
+ double gamma_blue;
+
+ double brightness;
+ double brightness_red;
+ double brightness_green;
+ double brightness_blue;
+
+ double contrast;
+ double contrast_red;
+ double contrast_green;
+ double contrast_blue;
+
+ double threshold;
+ }
+Image_info;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#include "xsane-preferences.h"
+#include "xsane-preview.h"
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifdef HAVE_LIBGIMP_GIMP_H
+# include <libgimp/gimp.h>
+
+# ifdef HAVE_LIBGIMP_GIMPFEATURES_H
+# include <libgimp/gimpfeatures.h>
+# else
+# define GIMP_CHECK_VERSION(major, minor, micro) 0
+# endif /* HAVE_LIBGIMP_GIMPFEATURES_H */
+
+# ifdef GIMP_CHECK_VERSION
+# if GIMP_CHECK_VERSION(1,1,25)
+/* ok, we have the new gimp interface */
+# else
+/* we have the old gimp interface and need the compatibility header file */
+# include "xsane-gimp-1_0-compat.h"
+# endif
+# else
+/* we have the old gimp interface and need the compatibility header file */
+# include "xsane-gimp-1_0-compat.h"
+# endif
+
+ extern GimpPlugInInfo PLUG_IN_INFO; /* needed for win32 */
+
+#endif /* HAVE_LIBGIMP_GIMP_H */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+enum { XSANE_VIEWER, XSANE_SAVE, XSANE_COPY, XSANE_FAX, XSANE_MAIL };
+enum { XSANE_LINEART_STANDARD, XSANE_LINEART_XSANE, XSANE_LINEART_GRAYSCALE };
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern void xsane_pref_save(void);
+extern void xsane_interface(int argc, char **argv);
+extern void xsane_fax_project_save(void);
+extern void xsane_mail_project_save(void);
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#ifndef PATH_MAX
+# define PATH_MAX 1024
+#endif
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+#ifndef TEMP_PATH
+# define TEMP_PATH /tmp/
+#endif
+
+#define OUT_FILENAME "out.pnm"
+#define PRINTERNAME "new printer"
+#define PRINTERCOMMAND "lpr"
+#define PRINTERCOPYNUMBEROPTION "-#"
+#define FAXPROJECT "faxproject"
+#define FAXCOMMAND "sendfax"
+#define FAXRECEIVEROPT "-d"
+#define FAXPOSTSCRIPTOPT ""
+#define FAXNORMALOPT "-l"
+#define FAXFINEOPT "-m"
+#define FAXVIEWER "gv"
+#define MAILPROJECT "mailproject"
+#define MAILCOMMAND "sendmail"
+#define MAILVIEWER "xv"
+#define OCRCOMMAND "gocr"
+#define OCRINPUTFILEOPT "-i"
+#define OCROUTPUTFILEOPT "-o"
+#define DOCVIEWER_NETSCAPE "netscape"
+#define DOCVIEWER DOCVIEWER_NETSCAPE
+
+#define XSANE_MEDIUM_CALIB_BRIGHTNESS_MIN -1000.0
+#define XSANE_MEDIUM_CALIB_BRIGHTNESS_MAX 1000.0
+#define XSANE_MEDIUM_CALIB_CONTRAST_MIN 0.0
+#define XSANE_MEDIUM_CALIB_CONTRAST_MAX 1000.0
+
+#define XSANE_BRIGHTNESS_MIN -100.0
+#define XSANE_BRIGHTNESS_MAX 100.0
+#define XSANE_CONTRAST_GRAY_MIN -100.0
+#define XSANE_CONTRAST_MIN -100.0
+#define XSANE_CONTRAST_MAX 100.0
+
+#define XSANE_GAMMA_MIN 0.3
+#define XSANE_GAMMA_MAX 3.0
+
+#define HIST_WIDTH 256
+#define HIST_HEIGHT 100
+#define XSANE_SHELL_WIDTH 296
+#define XSANE_SHELL_HEIGHT 451
+#define XSANE_SHELL_POS_X 1
+#define XSANE_SHELL_POS_Y 50
+#define XSANE_HISTOGRAM_POS_X 280
+#define XSANE_HISTOGRAM_POS_Y 50
+#define XSANE_GAMMA_POS_X 280
+#define XSANE_GAMMA_POS_Y 420
+#define XSANE_STD_OPTIONS_POS_X 1
+#define XSANE_STD_OPTIONS_POS_Y 400
+#define XSANE_ADV_OPTIONS_POS_X 280
+#define XSANE_ADV_OPTIONS_POS_Y 420
+#define XSANE_PREVIEW_POS_X 560
+#define XSANE_PREVIEW_POS_Y 50
+#define XSANE_PREVIEW_WIDTH 100
+#define XSANE_PREVIEW_HEIGHT 100
+
+#define XSANE_SLIDER_ACTIVE 0
+#define XSANE_SLIDER_INACTIVE 4
+#define XSANE_SLIDER_WIDTH 260
+#define XSANE_SLIDER_HEIGHT 10
+#define XSANE_SLIDER_OFFSET 2
+#define XSANE_SLIDER_EVENTS GDK_EXPOSURE_MASK | GDK_ENTER_NOTIFY_MASK | \
+ GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | \
+ GDK_BUTTON1_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK
+#define INF 5.0e9
+#define MM_PER_INCH 25.4
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#define STRINGIFY1(x) #x
+#define STRINGIFY(x) STRINGIFY1(x)
+
+#define NELEMS(a) ((int)(sizeof (a) / sizeof (a[0])))
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+enum
+{
+ XSANE_UNKNOWN, XSANE_PNM, XSANE_JPEG, XSANE_PNG, XSANE_PS, XSANE_TIFF, XSANE_RGBA,
+ XSANE_RAW16, XSANE_PNM16
+};
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+enum
+{
+ XSANE_STANDALONE, XSANE_GIMP_EXTENSION
+};
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct XsanePixmap
+{
+ GtkWidget *frame;
+ GdkPixmap *pixmap;
+ GtkWidget *pixmapwid;
+} XsanePixmap;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct XsaneSlider
+{
+ int position[3];
+ double value[3];
+ double min, max;
+ int active;
+ GtkWidget *preview;
+ int r, g, b;
+} XsaneSlider;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct Xsane
+{
+ SANE_Int sane_backend_versioncode;
+ char *backend;
+ char *device_set_filename;
+ char *filetype;
+ char *output_filename;
+ char *dummy_filename;
+
+ SANE_Int sensitivity;
+
+ GtkWidget *xsane_window;
+ GtkWidget *standard_window;
+ GtkWidget *advanced_window;
+ GtkWidget *gamma_window;
+ GtkWidget *xsane_hbox;
+ GtkWidget *standard_hbox;
+ GtkWidget *advanced_hbox;
+ GtkWidget *xsanemode_widget;
+
+ GtkAccelGroup *accelerator_group;
+ GtkTooltips *tooltips;
+ GdkColor tooltips_fg;
+ GdkColor tooltips_bg;
+
+ SANE_Handle *dev;
+ const char *dev_name;
+ GSGWellKnownOptions well_known;
+ int num_elements;
+ GSGDialogElement *element;
+ u_int rebuild : 1;
+ int pixelcolor;
+ int scanning;
+ int reading_data;
+ int cancel_scan;
+
+/* free gamma curve widgets */
+ GtkWidget *gamma_curve_gray;
+ GtkWidget *gamma_curve_red;
+ GtkWidget *gamma_curve_green;
+ GtkWidget *gamma_curve_blue;
+
+/* previous global stand alone varaibales */
+ const char *prog_name; /* name of this program, normally "xsane" */
+ const char *device_text; /* name of the selected device */
+ GtkWidget *choose_device_dialog; /* the widget of the device selection dialog */
+ const SANE_Device **devlist; /* the list of available devices */
+ int selected_dev; /* the selected device */
+ int num_of_devs;
+ int back_gtk_message_dialog_active;
+
+
+ /* dialogs */
+ GtkWidget *shell;
+ GtkWidget *menubar;
+ GtkWidget *standard_options_shell;
+ GtkWidget *advanced_options_shell;
+ GtkWidget *main_dialog_scrolled;
+ GtkWidget *histogram_dialog;
+ GtkWidget *gamma_dialog;
+
+ GtkWidget *fax_dialog;
+ GtkWidget *fax_list;
+ GtkWidget *fax_project_box;
+ GtkWidget *fax_project_exists;
+ GtkWidget *fax_project_not_exists;
+ GtkWidget *fax_project_entry;
+ GtkWidget *fax_receiver_entry;
+
+ GtkWidget *mail_dialog;
+ GtkWidget *mail_list;
+ GtkWidget *mail_project_box;
+ GtkWidget *mail_project_exists;
+ GtkWidget *mail_project_not_exists;
+ GtkWidget *mail_project_entry;
+ GtkWidget *mail_receiver_entry;
+ GtkWidget *mail_subject_entry;
+ GtkWidget *mail_text_widget;
+ GtkWidget *mail_html_mode_widget;
+ GtkWidget *mail_status_label;
+
+ GdkPixmap *window_icon_pixmap;
+ GdkBitmap *window_icon_mask;
+
+ GtkWidget *hruler;
+ GtkWidget *vruler;
+ GtkWidget *info_label;
+ GtkObject *start_button;
+ GtkObject *cancel_button;
+ GtkSignalFunc cancel_callback;
+ Viewer *viewer_list;
+ Preview *preview;
+ int preview_gamma_size;
+ int mode;
+ int medium_nr;
+
+ int main_window_fixed;
+ int mode_selection;
+
+ int get_deskrelative_origin;
+
+ /* various scanning related state: */
+ SANE_Int depth;
+ size_t num_bytes;
+ size_t bytes_read;
+ GtkProgressBar *progress_bar;
+ int input_tag;
+ SANE_Parameters param;
+ int adf_page_counter;
+
+ /* for standalone mode: */
+ GtkWidget *filename_entry;
+ GtkWidget *filetype_option_menu;
+
+ /* saving and transformation values: */
+ FILE *out;
+ int xsane_mode;
+ int xsane_output_format;
+ long header_size;
+ int expand_lineart_to_grayscale;
+ int reduce_16bit_to_8bit;
+
+ /* histogram window */
+ struct XsanePixmap histogram_raw;
+ struct XsanePixmap histogram_enh;
+
+ struct XsaneSlider slider_gray;
+ struct XsaneSlider slider_red;
+ struct XsaneSlider slider_green;
+ struct XsaneSlider slider_blue;
+ guint slider_timer; /* has to be guint */
+ int slider_timer_restart;
+
+ double auto_white;
+ double auto_gray;
+ double auto_black;
+ double auto_white_red;
+ double auto_gray_red;
+ double auto_black_red;
+ double auto_white_green;
+ double auto_gray_green;
+ double auto_black_green;
+ double auto_white_blue;
+ double auto_gray_blue;
+ double auto_black_blue;
+
+ int histogram_red;
+ int histogram_green;
+ int histogram_blue;
+ int histogram_int;
+ int histogram_lines;
+ int histogram_log;
+
+ int no_preview_medium_gamma; /* disable preview medium gamma */
+ int medium_calibration; /* enable calibration mode for medium */
+ int brightness_min;
+ int brightness_max;
+ int contrast_gray_min;
+ int contrast_min;
+ int contrast_max;
+
+ /* colors */
+ GdkGC *gc_red;
+ GdkGC *gc_green;
+ GdkGC *gc_blue;
+ GdkGC *gc_black;
+ GdkGC *gc_trans;
+ GdkGC *gc_backg;
+ GdkColor *bg_trans;
+
+ int copy_number;
+ double zoom;
+ double zoom_x;
+ double zoom_y;
+ double resolution;
+ double resolution_x;
+ double resolution_y;
+
+ GtkWidget *medium_widget;
+ GtkWidget *length_unit_mm;
+ GtkWidget *length_unit_cm;
+ GtkWidget *length_unit_in;
+ GtkWidget *update_policy_continu;
+ GtkWidget *update_policy_discont;
+ GtkWidget *update_policy_delayed;
+ GtkWidget *show_preview_widget;
+ GtkWidget *show_histogram_widget;
+ GtkWidget *show_gamma_widget;
+ GtkWidget *show_standard_options_widget;
+ GtkWidget *show_advanced_options_widget;
+ GtkWidget *show_resolution_list_widget;
+ GtkObject *zoom_widget;
+ GtkObject *gamma_widget;
+ GtkObject *gamma_red_widget;
+ GtkObject *gamma_green_widget;
+ GtkObject *gamma_blue_widget;
+ GtkObject *brightness_widget;
+ GtkObject *brightness_red_widget;
+ GtkObject *brightness_green_widget;
+ GtkObject *brightness_blue_widget;
+ GtkObject *contrast_widget;
+ GtkObject *contrast_red_widget;
+ GtkObject *contrast_green_widget;
+ GtkObject *contrast_blue_widget;
+ GtkObject *threshold_widget;
+
+ SANE_Int xsane_colors;
+ SANE_Bool scanner_gamma_color;
+ SANE_Bool scanner_gamma_gray;
+
+ int fax_fine_mode;
+ int mail_project_save;
+ int mail_html_mode;
+
+ GtkWidget *outputfilename_entry;
+ GtkWidget *copy_number_entry;
+
+ gfloat *free_gamma_data, *free_gamma_data_red, *free_gamma_data_green, *free_gamma_data_blue;
+ SANE_Int *gamma_data, *gamma_data_red, *gamma_data_green, *gamma_data_blue;
+ u_char *preview_gamma_data_red, *preview_gamma_data_green, *preview_gamma_data_blue;
+ u_char *histogram_gamma_data_red, *histogram_gamma_data_green, *histogram_gamma_data_blue;
+ u_char *histogram_medium_gamma_data_red, *histogram_medium_gamma_data_green, *histogram_medium_gamma_data_blue;
+
+ char *fax_filename;
+ char *fax_receiver;
+
+ char *mail_status;
+ char *mail_filename;
+ char *mail_receiver;
+ char *mail_subject;
+
+ int block_update_param;
+
+ int broken_pipe; /* for printercommand pipe */
+
+ int cancel_save;
+
+/* -------------------------------------------------- */
+
+/* device preferences: */
+
+/* we have to use double and int here, gint or SANE_Word
+ is not allowed because we need a defined size for
+ rc_io-routintes that are based on double, int, ... */
+
+ /* window position and geometry */
+ int shell_posx;
+ int shell_posy;
+ int shell_height;
+ int shell_width;
+ int standard_options_shell_posx;
+ int standard_options_shell_posy;
+ int advanced_options_shell_posx;
+ int advanced_options_shell_posy;
+ int histogram_dialog_posx;
+ int histogram_dialog_posy;
+ int gamma_dialog_posx;
+ int gamma_dialog_posy;
+ int preview_dialog_posx;
+ int preview_dialog_posy;
+ int preview_dialog_width;
+ int preview_dialog_height;
+
+ double medium_gamma_gray;
+ double medium_gamma_red;
+ double medium_gamma_green;
+ double medium_gamma_blue;
+
+ double medium_shadow_gray;
+ double medium_shadow_red;
+ double medium_shadow_green;
+ double medium_shadow_blue;
+
+ double medium_highlight_gray;
+ double medium_highlight_red;
+ double medium_highlight_green;
+ double medium_highlight_blue;
+
+ int medium_negative;
+
+ int medium_changed;
+
+ double gamma;
+ double gamma_red;
+ double gamma_green;
+ double gamma_blue;
+
+ double brightness;
+ double brightness_red;
+ double brightness_green;
+ double brightness_blue;
+
+ double contrast;
+ double contrast_red;
+ double contrast_green;
+ double contrast_blue;
+
+ int lineart_mode;
+ double threshold;
+ double threshold_min;
+ double threshold_max;
+ double threshold_mul;
+ double threshold_off;
+ char *grayscale_scanmode;
+
+ int enhancement_rgb_default;
+ int negative;
+ int show_preview;
+ int print_filenames;
+ int force_filename;
+ char *external_filename;
+ char *adf_scansource;
+
+/* -------------------------------------------------- */
+
+} Xsane;
+
+extern struct Xsane xsane;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+typedef struct XsaneSetup
+{
+ GtkWidget *printer_name_entry;
+ GtkWidget *printer_command_entry;
+ GtkWidget *printer_copy_number_option_entry;
+ GtkWidget *printer_lineart_resolution_entry;
+ GtkWidget *printer_grayscale_resolution_entry;
+ GtkWidget *printer_color_resolution_entry;
+ GtkWidget *printer_leftoffset_entry;
+ GtkWidget *printer_bottomoffset_entry;
+ GtkWidget *printer_gamma_entry;
+ GtkWidget *printer_gamma_red_entry;
+ GtkWidget *printer_gamma_green_entry;
+ GtkWidget *printer_gamma_blue_entry;
+ GtkWidget *printer_width_entry;
+ GtkWidget *printer_height_entry;
+
+ GtkWidget *jpeg_image_quality_scale;
+ GtkWidget *pnm_image_compression_scale;
+ GtkWidget *save_devprefs_at_exit_button;
+ GtkWidget *overwrite_warning_button;
+ GtkWidget *increase_filename_counter_button;
+ GtkWidget *skip_existing_numbers_button;
+ GtkWidget *reduce_16bit_to_8bit_button;
+
+ GtkWidget *main_window_fixed_button;
+
+ GtkWidget *preview_gamma_entry;
+ GtkWidget *preview_gamma_red_entry;
+ GtkWidget *preview_gamma_green_entry;
+ GtkWidget *preview_gamma_blue_entry;
+ GtkWidget *preview_lineart_mode_entry;
+ GtkWidget *preview_grayscale_scanmode_widget;
+ GtkWidget *preview_threshold_min_entry;
+ GtkWidget *preview_threshold_max_entry;
+ GtkWidget *preview_threshold_mul_entry;
+ GtkWidget *preview_threshold_off_entry;
+ GtkWidget *auto_enhance_gamma_button;
+ GtkWidget *preselect_scanarea_button;
+ GtkWidget *auto_correct_colors_button;
+ GtkWidget *disable_gimp_preview_gamma_button;
+ GtkWidget *preview_oversampling_entry;
+ GtkWidget *preview_own_cmap_button;
+ GtkWidget *doc_viewer_entry;
+
+ GtkWidget *fax_command_entry;
+ GtkWidget *fax_receiver_option_entry;
+ GtkWidget *fax_postscript_option_entry;
+ GtkWidget *fax_normal_option_entry;
+ GtkWidget *fax_fine_option_entry;
+ GtkWidget *fax_viewer_entry;
+ GtkWidget *fax_width_entry;
+ GtkWidget *fax_leftoffset_entry;
+ GtkWidget *fax_bottomoffset_entry;
+ GtkWidget *fax_height_entry;
+ GtkWidget *tmp_path_entry;
+
+ GtkWidget *mail_smtp_server_entry;
+ GtkWidget *mail_smtp_port_entry;
+ GtkWidget *mail_from_entry;
+ GtkWidget *mail_reply_to_entry;
+ GtkWidget *mail_pop3_authentification_entry;
+ GtkWidget *mail_pop3_server_entry;
+ GtkWidget *mail_pop3_port_entry;
+ GtkWidget *mail_pop3_user_entry;
+ GtkWidget *mail_pop3_pass_entry;
+ GtkWidget *mail_viewer_entry;
+
+ GtkWidget *ocr_command_entry;
+ GtkWidget *ocr_inputfile_option_entry;
+ GtkWidget *ocr_outputfile_option_entry;
+
+ int filename_counter_len;
+
+ int tiff_compression16_nr;
+ int tiff_compression8_nr;
+ int tiff_compression1_nr;
+
+ int lineart_mode;
+
+ int image_permissions;
+ int directory_permissions;
+
+ int preview_pipette_range;
+
+ char *grayscale_scanmode;
+ char *adf_scansource;
+
+} XsaneSetup;
+
+extern struct XsaneSetup xsane_setup;
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+extern int DBG_LEVEL;
+
+#ifdef __GNUC__
+# define DBG(level, msg, args...) \
+ { \
+ if (DBG_LEVEL >= (level)) \
+ { \
+ fprintf (stderr, "[xsane] " msg, ##args); \
+ fflush(stderr); \
+ } \
+ }
+#else
+ extern void xsane_debug_message(int level, const char *fmt, ...);
+# define DBG xsane_debug_message
+#endif
+
+# define DBG_init() \
+ { \
+ char *dbg_level_string = getenv(XSANE_DEBUG_ENVIRONMENT); \
+ \
+ if (dbg_level_string) \
+ { \
+ DBG_LEVEL = atoi(dbg_level_string); \
+ DBG(1, "Setting debug level to %d\n", DBG_LEVEL); \
+ } \
+ }
+
+#define DBG_error0 0
+#define DBG_error 1
+#define DBG_warning 2
+#define DBG_info 3
+#define DBG_info2 4
+#define DBG_proc 5
+#define DBG_proc2 50
+#define DBG_optdesc 70 /* xsane_get_option_descriptor */
+#define DBG_proc3 100 /* for routines that are called very very often */
+#define DBG_wire 100 /* rc_io_w routines */
+
+/* ---------------------------------------------------------------------------------------------------------------------- */
+
+#endif
diff --git a/src/xsane.ico b/src/xsane.ico
new file mode 100644
index 0000000..4408721
--- /dev/null
+++ b/src/xsane.ico
Binary files differ